////////////////////////////////////////////////////////////////////////////////////////// // // // SCRIPT NAME : ped_component_data.sch // // AUTHOR : Kenneth Ross // // DESCRIPTION : This is where we set up all the component information for // // each player model. This includes the variations for each // // item and the items that form player outfits. // // // ////////////////////////////////////////////////////////////////////////////////////////// USING "rage_builtins.sch" USING "globals.sch" USING "commands_extrametadata.sch" USING "commands_network.sch" USING "commands_ped.sch" USING "net_stat_system.sch" USING "reward_unlocks.sch" USING "net_car_club_rep_rewards.sch" USING "casino_decoration_common.sch" USING "dlc_ped_component_names.sch" #IF IS_DEBUG_BUILD FUNC STRING GET_PED_COMP_DEBUG_ID() SWITCH g_iPedComponentNest CASE 0 RETURN "[CLOTHES_DBG]" BREAK CASE 1 RETURN "[CLOTHES_DBG] *" BREAK CASE 2 RETURN "[CLOTHES_DBG] **" BREAK CASE 3 RETURN "[CLOTHES_DBG] ***" BREAK CASE 4 RETURN "[CLOTHES_DBG] ****" BREAK CASE 5 RETURN "[CLOTHES_DBG] *****" BREAK ENDSWITCH RETURN "*" ENDFUNC /// PURPOSE: returns string of ped prop position that can be used in debug prints FUNC STRING GET_PROP_POSITION_STRING(PED_PROP_POSITION ePosition) SWITCH ePosition CASE ANCHOR_HEAD RETURN "ANCHOR_HEAD" BREAK CASE ANCHOR_EYES RETURN "ANCHOR_EYES" BREAK CASE ANCHOR_EARS RETURN "ANCHOR_EARS" BREAK CASE ANCHOR_MOUTH RETURN "ANCHOR_MOUTH" BREAK CASE ANCHOR_LEFT_HAND RETURN "ANCHOR_LEFT_HAND" BREAK CASE ANCHOR_RIGHT_HAND RETURN "ANCHOR_RIGHT_HAND" BREAK CASE ANCHOR_LEFT_WRIST RETURN "ANCHOR_LEFT_WRIST" BREAK CASE ANCHOR_RIGHT_WRIST RETURN "ANCHOR_RIGHT_WRIST" BREAK CASE ANCHOR_HIP RETURN "ANCHOR_HIP" BREAK ENDSWITCH RETURN "" ENDFUNC /// PURPOSE: returns string of ped prop position that can be used in debug prints FUNC STRING GET_PROP_POSITION_NAME_STRING(PED_PROP_POSITION ePosition) SWITCH ePosition CASE ANCHOR_HEAD RETURN "PHEAD" BREAK CASE ANCHOR_EYES RETURN "PEYES" BREAK CASE ANCHOR_EARS RETURN "PEARS" BREAK CASE ANCHOR_MOUTH RETURN "PMOUTH" BREAK CASE ANCHOR_LEFT_HAND RETURN "PLEFT_HAND" BREAK CASE ANCHOR_RIGHT_HAND RETURN "PRIGHT_HAND" BREAK CASE ANCHOR_LEFT_WRIST RETURN "PLEFT_WRIST" BREAK CASE ANCHOR_RIGHT_WRIST RETURN "PRIGHT_WRIST" BREAK CASE ANCHOR_HIP RETURN "PHIP" BREAK ENDSWITCH RETURN "" ENDFUNC FUNC STRING GET_COMP_VARIATION_TYPE_STRING(PED_COMPONENT eType) SWITCH eType CASE PED_COMP_HEAD RETURN "PED_COMP_HEAD" BREAK CASE PED_COMP_BERD RETURN "PED_COMP_BERD" BREAK CASE PED_COMP_HAIR RETURN "PED_COMP_HAIR" BREAK CASE PED_COMP_TORSO RETURN "PED_COMP_TORSO" BREAK CASE PED_COMP_LEG RETURN "PED_COMP_LEG" BREAK CASE PED_COMP_HAND RETURN "PED_COMP_HAND" BREAK CASE PED_COMP_FEET RETURN "PED_COMP_FEET" BREAK CASE PED_COMP_TEETH RETURN "PED_COMP_TEETH" BREAK CASE PED_COMP_SPECIAL RETURN "PED_COMP_SPECIAL" BREAK CASE PED_COMP_SPECIAL2 RETURN "PED_COMP_SPECIAL2" BREAK CASE PED_COMP_DECL RETURN "PED_COMP_DECL" BREAK CASE PED_COMP_JBIB RETURN "PED_COMP_JBIB" BREAK ENDSWITCH RETURN "" ENDFUNC /// PURPOSE: returns string of ped comp type that can be used in debug prints FUNC STRING GET_PED_COMP_TYPE_STRING(PED_COMP_TYPE_ENUM eType) SWITCH eType CASE COMP_TYPE_HEAD RETURN "COMP_TYPE_HEAD" BREAK CASE COMP_TYPE_HAIR RETURN "COMP_TYPE_HAIR" BREAK CASE COMP_TYPE_TORSO RETURN "COMP_TYPE_TORSO" BREAK CASE COMP_TYPE_LEGS RETURN "COMP_TYPE_LEGS" BREAK CASE COMP_TYPE_FEET RETURN "COMP_TYPE_FEET" BREAK CASE COMP_TYPE_HAND RETURN "COMP_TYPE_HAND" BREAK CASE COMP_TYPE_OUTFIT RETURN "COMP_TYPE_OUTFIT" BREAK CASE COMP_TYPE_PROPS RETURN "COMP_TYPE_PROPS" BREAK CASE COMP_TYPE_PROPGROUP RETURN "COMP_TYPE_PROPGROUP" BREAK CASE COMP_TYPE_SPECIAL RETURN "COMP_TYPE_SPECIAL" BREAK CASE COMP_TYPE_SPECIAL2 RETURN "COMP_TYPE_SPECIAL2" BREAK CASE COMP_TYPE_DECL RETURN "COMP_TYPE_DECL" BREAK CASE COMP_TYPE_JBIB RETURN "COMP_TYPE_JBIB" BREAK CASE COMP_TYPE_BERD RETURN "COMP_TYPE_BERD" BREAK CASE COMP_TYPE_TEETH RETURN "COMP_TYPE_TEETH" BREAK ENDSWITCH RETURN "" ENDFUNC FUNC STRING GET_PED_COMP_NAME_STRING(PED_COMP_TYPE_ENUM eType) SWITCH eType CASE COMP_TYPE_HEAD RETURN "HEAD" BREAK CASE COMP_TYPE_HAIR RETURN "HAIR" BREAK CASE COMP_TYPE_TORSO RETURN "TORSO" BREAK CASE COMP_TYPE_LEGS RETURN "LEGS" BREAK CASE COMP_TYPE_FEET RETURN "FEET" BREAK CASE COMP_TYPE_HAND RETURN "HAND" BREAK CASE COMP_TYPE_SPECIAL RETURN "SPECIAL" BREAK CASE COMP_TYPE_SPECIAL2 RETURN "SPECIAL2" BREAK CASE COMP_TYPE_DECL RETURN "DECL" BREAK CASE COMP_TYPE_BERD RETURN "BERD" BREAK CASE COMP_TYPE_JBIB RETURN "JBIB" BREAK CASE COMP_TYPE_TEETH RETURN "TEETH" BREAK CASE COMP_TYPE_OUTFIT RETURN "OUTFIT" BREAK CASE COMP_TYPE_PROPS RETURN "PROPS" BREAK CASE COMP_TYPE_PROPGROUP RETURN "PROPGROUP" BREAK ENDSWITCH RETURN "" ENDFUNC FUNC STRING GET_PED_COMP_DLC_STRING(PED_COMP_TYPE_ENUM eType) SWITCH eType CASE COMP_TYPE_HEAD RETURN "PV_COMP_HEAD" BREAK CASE COMP_TYPE_HAIR RETURN "PV_COMP_HAIR" BREAK CASE COMP_TYPE_TORSO RETURN "PV_COMP_UPPR" BREAK CASE COMP_TYPE_LEGS RETURN "PV_COMP_LOWR" BREAK CASE COMP_TYPE_FEET RETURN "PV_COMP_FEET" BREAK CASE COMP_TYPE_HAND RETURN "PV_COMP_HAND" BREAK CASE COMP_TYPE_SPECIAL RETURN "PV_COMP_ACCS" BREAK CASE COMP_TYPE_SPECIAL2 RETURN "PV_COMP_TASK" BREAK CASE COMP_TYPE_DECL RETURN "PV_COMP_DECL" BREAK CASE COMP_TYPE_BERD RETURN "PV_COMP_BERD" BREAK CASE COMP_TYPE_JBIB RETURN "PV_COMP_JBIB" BREAK CASE COMP_TYPE_TEETH RETURN "PV_COMP_TEEF" BREAK ENDSWITCH RETURN "" ENDFUNC #ENDIF FUNC BOOL GET_CG_PED_COMP_ENUM_VALUE_FOR_MP_PED_PROP(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem, INT &iItem) iItem = -1 IF eModel = MP_M_FREEMODE_01 SWITCH eItem CASE PROPS_FMM_EARDEFENDERS_0_0 iItem = 10 BREAK CASE PROPS_FMM_EARDEFENDERS_0_1 iItem = 11 BREAK CASE PROPS_FMM_EARDEFENDERS_0_2 iItem = 12 BREAK CASE PROPS_FMM_EARDEFENDERS_0_3 iItem = 13 BREAK CASE PROPS_FMM_EARDEFENDERS_0_4 iItem = 14 BREAK CASE PROPS_FMM_EARDEFENDERS_0_5 iItem = 15 BREAK CASE PROPS_FMM_EARDEFENDERS_0_6 iItem = 16 BREAK CASE PROPS_FMM_EARDEFENDERS_0_7 iItem = 17 BREAK CASE PROPS_FMM_DUNCE_HAT_1_0 iItem = 18 BREAK CASE PROPS_FMM_HAT_2_0 iItem = 19 BREAK CASE PROPS_FMM_HAT_2_1 iItem = 20 BREAK CASE PROPS_FMM_HAT_2_2 iItem = 21 BREAK CASE PROPS_FMM_HAT_2_3 iItem = 22 BREAK CASE PROPS_FMM_HAT_2_4 iItem = 23 BREAK CASE PROPS_FMM_HAT_2_5 iItem = 24 BREAK CASE PROPS_FMM_HAT_2_6 iItem = 25 BREAK CASE PROPS_FMM_HAT_2_7 iItem = 26 BREAK CASE PROPS_FMM_HAT_3_0 iItem = 27 BREAK CASE PROPS_FMM_HAT_3_1 iItem = 28 BREAK CASE PROPS_FMM_HAT_3_2 iItem = 29 BREAK CASE PROPS_FMM_HAT_3_3 iItem = 30 BREAK CASE PROPS_FMM_HAT_3_4 iItem = 31 BREAK CASE PROPS_FMM_HAT_3_5 iItem = 32 BREAK CASE PROPS_FMM_HAT_3_6 iItem = 33 BREAK CASE PROPS_FMM_HAT_3_7 iItem = 34 BREAK CASE PROPS_FMM_HAT_4_0 iItem = 35 BREAK CASE PROPS_FMM_HAT_4_1 iItem = 36 BREAK CASE PROPS_FMM_HAT_4_2 iItem = 37 BREAK CASE PROPS_FMM_HAT_4_3 iItem = 38 BREAK CASE PROPS_FMM_HAT_4_4 iItem = 39 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_HAT_4_5 iItem = 40 BREAK CASE PROPS_FMM_HAT_4_6 iItem = 41 BREAK CASE PROPS_FMM_HAT_4_7 iItem = 42 BREAK CASE PROPS_FMM_HAT_5_0 iItem = 43 BREAK CASE PROPS_FMM_HAT_5_1 iItem = 44 BREAK CASE PROPS_FMM_HAT_5_2 iItem = 45 BREAK CASE PROPS_FMM_HAT_5_3 iItem = 46 BREAK CASE PROPS_FMM_HAT_5_4 iItem = 47 BREAK CASE PROPS_FMM_HAT_5_5 iItem = 48 BREAK CASE PROPS_FMM_HAT_5_6 iItem = 49 BREAK CASE PROPS_FMM_HAT_5_7 iItem = 50 BREAK CASE PROPS_FMM_HAT_6_0 iItem = 51 BREAK CASE PROPS_FMM_HAT_6_1 iItem = 52 BREAK CASE PROPS_FMM_HAT_6_2 iItem = 53 BREAK CASE PROPS_FMM_HAT_6_3 iItem = 54 BREAK CASE PROPS_FMM_HAT_6_4 iItem = 55 BREAK CASE PROPS_FMM_HAT_6_5 iItem = 56 BREAK CASE PROPS_FMM_HAT_6_6 iItem = 57 BREAK CASE PROPS_FMM_HAT_6_7 iItem = 58 BREAK CASE PROPS_FMM_HAT_7_0 iItem = 59 BREAK CASE PROPS_FMM_HAT_7_1 iItem = 60 BREAK CASE PROPS_FMM_HAT_7_2 iItem = 61 BREAK CASE PROPS_FMM_HAT_7_3 iItem = 62 BREAK CASE PROPS_FMM_HAT_7_4 iItem = 63 BREAK CASE PROPS_FMM_HAT_7_5 iItem = 64 BREAK CASE PROPS_FMM_HAT_7_6 iItem = 65 BREAK CASE PROPS_FMM_HAT_7_7 iItem = 66 BREAK CASE PROPS_FMM_HAT_8_0 iItem = 67 BREAK CASE PROPS_FMM_HAT_8_1 iItem = 68 BREAK CASE PROPS_FMM_HAT_8_2 iItem = 69 BREAK CASE PROPS_FMM_HAT_8_3 iItem = 70 BREAK CASE PROPS_FMM_HAT_8_4 iItem = 71 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_HAT_8_5 iItem = 72 BREAK CASE PROPS_FMM_HAT_8_6 iItem = 73 BREAK CASE PROPS_FMM_HAT_8_7 iItem = 74 BREAK CASE PROPS_FMM_HAT_9_0 iItem = 75 BREAK CASE PROPS_FMM_HAT_9_1 iItem = 76 BREAK CASE PROPS_FMM_HAT_9_2 iItem = 77 BREAK CASE PROPS_FMM_HAT_9_3 iItem = 78 BREAK CASE PROPS_FMM_HAT_9_4 iItem = 79 BREAK CASE PROPS_FMM_HAT_9_5 iItem = 80 BREAK CASE PROPS_FMM_HAT_9_6 iItem = 81 BREAK CASE PROPS_FMM_HAT_9_7 iItem = 82 BREAK CASE PROPS_FMM_HAT_10_0 iItem = 83 BREAK CASE PROPS_FMM_HAT_10_1 iItem = 84 BREAK CASE PROPS_FMM_HAT_10_2 iItem = 85 BREAK CASE PROPS_FMM_HAT_10_3 iItem = 86 BREAK CASE PROPS_FMM_HAT_10_4 iItem = 87 BREAK CASE PROPS_FMM_HAT_10_5 iItem = 88 BREAK CASE PROPS_FMM_HAT_10_6 iItem = 89 BREAK CASE PROPS_FMM_HAT_10_7 iItem = 90 BREAK CASE PROPS_FMM_HAT_11_0 iItem = 91 BREAK CASE PROPS_FMM_HAT_11_1 iItem = 92 BREAK CASE PROPS_FMM_HAT_11_2 iItem = 93 BREAK CASE PROPS_FMM_HAT_11_3 iItem = 94 BREAK CASE PROPS_FMM_HAT_11_4 iItem = 95 BREAK CASE PROPS_FMM_HAT_11_5 iItem = 96 BREAK CASE PROPS_FMM_HAT_11_6 iItem = 97 BREAK CASE PROPS_FMM_HAT_11_7 iItem = 98 BREAK CASE PROPS_FMM_HAT_12_0 iItem = 99 BREAK CASE PROPS_FMM_HAT_12_1 iItem = 100 BREAK CASE PROPS_FMM_HAT_12_2 iItem = 101 BREAK CASE PROPS_FMM_HAT_12_3 iItem = 102 BREAK CASE PROPS_FMM_HAT_12_4 iItem = 103 BREAK CASE PROPS_FMM_HAT_12_5 iItem = 104 BREAK CASE PROPS_FMM_HAT_12_6 iItem = 105 BREAK CASE PROPS_FMM_HAT_12_7 iItem = 106 BREAK CASE PROPS_FMM_HAT_13_0 iItem = 107 BREAK CASE PROPS_FMM_HAT_13_1 iItem = 108 BREAK CASE PROPS_FMM_HAT_13_2 iItem = 109 BREAK CASE PROPS_FMM_HAT_13_3 iItem = 110 BREAK CASE PROPS_FMM_HAT_13_4 iItem = 111 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_HAT_13_5 iItem = 112 BREAK CASE PROPS_FMM_HAT_13_6 iItem = 113 BREAK CASE PROPS_FMM_HAT_13_7 iItem = 114 BREAK CASE PROPS_FMM_HAT_14_0 iItem = 115 BREAK CASE PROPS_FMM_HAT_14_1 iItem = 116 BREAK CASE PROPS_FMM_HAT_14_2 iItem = 117 BREAK CASE PROPS_FMM_HAT_14_3 iItem = 118 BREAK CASE PROPS_FMM_HAT_14_4 iItem = 119 BREAK CASE PROPS_FMM_HAT_14_5 iItem = 120 BREAK CASE PROPS_FMM_HAT_14_6 iItem = 121 BREAK CASE PROPS_FMM_HAT_14_7 iItem = 122 BREAK CASE PROPS_FMM_HAT_15_0 iItem = 123 BREAK CASE PROPS_FMM_HAT_15_1 iItem = 124 BREAK CASE PROPS_FMM_HAT_15_2 iItem = 125 BREAK CASE PROPS_FMM_HAT_15_3 iItem = 126 BREAK CASE PROPS_FMM_HAT_15_4 iItem = 127 BREAK CASE PROPS_FMM_HAT_15_5 iItem = 128 BREAK CASE PROPS_FMM_HAT_15_6 iItem = 129 BREAK CASE PROPS_FMM_HAT_15_7 iItem = 130 BREAK CASE PROPS_FMM_HELMET_16_0 iItem = 131 BREAK CASE PROPS_FMM_HELMET_16_1 iItem = 132 BREAK CASE PROPS_FMM_HELMET_16_2 iItem = 133 BREAK CASE PROPS_FMM_HELMET_16_3 iItem = 134 BREAK CASE PROPS_FMM_HELMET_16_4 iItem = 135 BREAK CASE PROPS_FMM_HELMET_16_5 iItem = 136 BREAK CASE PROPS_FMM_HELMET_16_6 iItem = 137 BREAK CASE PROPS_FMM_HELMET_16_7 iItem = 138 BREAK CASE PROPS_FMM_HELMET_17_0 iItem = 139 BREAK CASE PROPS_FMM_HELMET_17_1 iItem = 140 BREAK CASE PROPS_FMM_HELMET_17_2 iItem = 141 BREAK CASE PROPS_FMM_HELMET_17_3 iItem = 142 BREAK CASE PROPS_FMM_HELMET_17_4 iItem = 143 BREAK CASE PROPS_FMM_HELMET_17_5 iItem = 144 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_HELMET_17_6 iItem = 145 BREAK CASE PROPS_FMM_HELMET_17_7 iItem = 146 BREAK CASE PROPS_FMM_HELMET_18_0 iItem = 147 BREAK CASE PROPS_FMM_HELMET_18_1 iItem = 148 BREAK CASE PROPS_FMM_HELMET_18_2 iItem = 149 BREAK CASE PROPS_FMM_HELMET_18_3 iItem = 150 BREAK CASE PROPS_FMM_HELMET_18_4 iItem = 151 BREAK CASE PROPS_FMM_HELMET_18_5 iItem = 152 BREAK CASE PROPS_FMM_HELMET_18_6 iItem = 153 BREAK CASE PROPS_FMM_HELMET_18_7 iItem = 154 BREAK CASE PROPS_FMM_GLASSES_0_0 iItem = 155 BREAK CASE PROPS_FMM_GLASSES_0_1 iItem = 156 BREAK CASE PROPS_FMM_GLASSES_0_2 iItem = 157 BREAK CASE PROPS_FMM_GLASSES_0_3 iItem = 158 BREAK CASE PROPS_FMM_GLASSES_0_4 iItem = 159 BREAK CASE PROPS_FMM_GLASSES_0_5 iItem = 160 BREAK CASE PROPS_FMM_GLASSES_0_6 iItem = 161 BREAK CASE PROPS_FMM_GLASSES_0_7 iItem = 162 BREAK CASE PROPS_FMM_GLASSES_1_0 iItem = 163 BREAK CASE PROPS_FMM_GLASSES_1_1 iItem = 164 BREAK CASE PROPS_FMM_GLASSES_1_2 iItem = 165 BREAK CASE PROPS_FMM_GLASSES_1_3 iItem = 166 BREAK CASE PROPS_FMM_GLASSES_1_4 iItem = 167 BREAK CASE PROPS_FMM_GLASSES_1_5 iItem = 168 BREAK CASE PROPS_FMM_GLASSES_1_6 iItem = 169 BREAK CASE PROPS_FMM_GLASSES_1_7 iItem = 170 BREAK CASE PROPS_FMM_GLASSES_2_0 iItem = 171 BREAK CASE PROPS_FMM_GLASSES_2_1 iItem = 172 BREAK CASE PROPS_FMM_GLASSES_2_2 iItem = 173 BREAK CASE PROPS_FMM_GLASSES_2_3 iItem = 174 BREAK CASE PROPS_FMM_GLASSES_2_4 iItem = 175 BREAK CASE PROPS_FMM_GLASSES_2_5 iItem = 176 BREAK CASE PROPS_FMM_GLASSES_2_6 iItem = 177 BREAK CASE PROPS_FMM_GLASSES_2_7 iItem = 178 BREAK CASE PROPS_FMM_GLASSES_3_0 iItem = 179 BREAK CASE PROPS_FMM_GLASSES_3_1 iItem = 180 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_GLASSES_3_2 iItem = 181 BREAK CASE PROPS_FMM_GLASSES_3_3 iItem = 182 BREAK CASE PROPS_FMM_GLASSES_3_4 iItem = 183 BREAK CASE PROPS_FMM_GLASSES_3_5 iItem = 184 BREAK CASE PROPS_FMM_GLASSES_3_6 iItem = 185 BREAK CASE PROPS_FMM_GLASSES_3_7 iItem = 186 BREAK CASE PROPS_FMM_GLASSES_4_0 iItem = 187 BREAK CASE PROPS_FMM_GLASSES_4_1 iItem = 188 BREAK CASE PROPS_FMM_GLASSES_4_2 iItem = 189 BREAK CASE PROPS_FMM_GLASSES_4_3 iItem = 190 BREAK CASE PROPS_FMM_GLASSES_4_4 iItem = 191 BREAK CASE PROPS_FMM_GLASSES_4_5 iItem = 192 BREAK CASE PROPS_FMM_GLASSES_4_6 iItem = 193 BREAK CASE PROPS_FMM_GLASSES_4_7 iItem = 194 BREAK CASE PROPS_FMM_GLASSES_5_0 iItem = 195 BREAK CASE PROPS_FMM_GLASSES_5_1 iItem = 196 BREAK CASE PROPS_FMM_GLASSES_5_2 iItem = 197 BREAK CASE PROPS_FMM_GLASSES_5_3 iItem = 198 BREAK CASE PROPS_FMM_GLASSES_5_4 iItem = 199 BREAK CASE PROPS_FMM_GLASSES_5_5 iItem = 200 BREAK CASE PROPS_FMM_GLASSES_5_6 iItem = 201 BREAK CASE PROPS_FMM_GLASSES_5_7 iItem = 202 BREAK CASE PROPS_FMM_GLASSES_6_0 iItem = 203 BREAK CASE PROPS_FMM_GLASSES_6_1 iItem = 204 BREAK CASE PROPS_FMM_GLASSES_6_2 iItem = 205 BREAK CASE PROPS_FMM_GLASSES_6_3 iItem = 206 BREAK CASE PROPS_FMM_GLASSES_6_4 iItem = 207 BREAK CASE PROPS_FMM_GLASSES_6_5 iItem = 208 BREAK CASE PROPS_FMM_GLASSES_6_6 iItem = 209 BREAK CASE PROPS_FMM_GLASSES_6_7 iItem = 210 BREAK CASE PROPS_FMM_GLASSES_7_0 iItem = 211 BREAK CASE PROPS_FMM_GLASSES_7_1 iItem = 212 BREAK CASE PROPS_FMM_GLASSES_7_2 iItem = 213 BREAK CASE PROPS_FMM_GLASSES_7_3 iItem = 214 BREAK CASE PROPS_FMM_GLASSES_7_4 iItem = 215 BREAK CASE PROPS_FMM_GLASSES_7_5 iItem = 216 BREAK CASE PROPS_FMM_GLASSES_7_6 iItem = 217 BREAK CASE PROPS_FMM_GLASSES_7_7 iItem = 218 BREAK CASE PROPS_FMM_GLASSES_8_0 iItem = 219 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_GLASSES_8_1 iItem = 220 BREAK CASE PROPS_FMM_GLASSES_8_2 iItem = 221 BREAK CASE PROPS_FMM_GLASSES_8_3 iItem = 222 BREAK CASE PROPS_FMM_GLASSES_8_4 iItem = 223 BREAK CASE PROPS_FMM_GLASSES_8_5 iItem = 224 BREAK CASE PROPS_FMM_GLASSES_8_6 iItem = 225 BREAK CASE PROPS_FMM_GLASSES_8_7 iItem = 226 BREAK CASE PROPS_FMM_GLASSES_9_0 iItem = 227 BREAK CASE PROPS_FMM_GLASSES_9_1 iItem = 228 BREAK CASE PROPS_FMM_GLASSES_9_2 iItem = 229 BREAK CASE PROPS_FMM_GLASSES_9_3 iItem = 230 BREAK CASE PROPS_FMM_GLASSES_9_4 iItem = 231 BREAK CASE PROPS_FMM_GLASSES_9_5 iItem = 232 BREAK CASE PROPS_FMM_GLASSES_9_6 iItem = 233 BREAK CASE PROPS_FMM_GLASSES_9_7 iItem = 234 BREAK CASE PROPS_FMM_GLASSES_10_0 iItem = 235 BREAK CASE PROPS_FMM_GLASSES_10_1 iItem = 236 BREAK CASE PROPS_FMM_GLASSES_10_2 iItem = 237 BREAK CASE PROPS_FMM_GLASSES_10_3 iItem = 238 BREAK CASE PROPS_FMM_GLASSES_10_4 iItem = 239 BREAK CASE PROPS_FMM_GLASSES_10_5 iItem = 240 BREAK CASE PROPS_FMM_GLASSES_10_6 iItem = 241 BREAK CASE PROPS_FMM_GLASSES_10_7 iItem = 242 BREAK CASE PROPS_FMM_GLASSES_11_0 iItem = 243 BREAK CASE PROPS_FMM_GLASSES_11_1 iItem = 244 BREAK CASE PROPS_FMM_GLASSES_11_2 iItem = 245 BREAK CASE PROPS_FMM_GLASSES_11_3 iItem = 246 BREAK CASE PROPS_FMM_GLASSES_11_4 iItem = 247 BREAK CASE PROPS_FMM_GLASSES_11_5 iItem = 248 BREAK CASE PROPS_FMM_GLASSES_11_6 iItem = 249 BREAK CASE PROPS_FMM_GLASSES_11_7 iItem = 250 BREAK CASE PROPS_FMM_GLASSES_12_0 iItem = 251 BREAK CASE PROPS_FMM_GLASSES_12_1 iItem = 252 BREAK CASE PROPS_FMM_GLASSES_12_2 iItem = 253 BREAK CASE PROPS_FMM_GLASSES_12_3 iItem = 254 BREAK CASE PROPS_FMM_GLASSES_12_4 iItem = 255 BREAK CASE PROPS_FMM_GLASSES_12_5 iItem = 256 BREAK CASE PROPS_FMM_GLASSES_12_6 iItem = 257 BREAK CASE PROPS_FMM_GLASSES_12_7 iItem = 258 BREAK CASE PROPS_FMM_GLASSES_13_0 iItem = 259 BREAK CASE PROPS_FMM_GLASSES_13_1 iItem = 260 BREAK CASE PROPS_FMM_GLASSES_13_2 iItem = 261 BREAK CASE PROPS_FMM_GLASSES_13_3 iItem = 262 BREAK CASE PROPS_FMM_GLASSES_13_4 iItem = 263 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_GLASSES_13_5 iItem = 264 BREAK CASE PROPS_FMM_GLASSES_13_6 iItem = 265 BREAK CASE PROPS_FMM_GLASSES_13_7 iItem = 266 BREAK CASE PROPS_FMM_GLASSES_14_0 iItem = 267 BREAK CASE PROPS_FMM_GLASSES_14_1 iItem = 268 BREAK CASE PROPS_FMM_GLASSES_14_2 iItem = 269 BREAK CASE PROPS_FMM_GLASSES_14_3 iItem = 270 BREAK CASE PROPS_FMM_GLASSES_14_4 iItem = 271 BREAK CASE PROPS_FMM_GLASSES_14_5 iItem = 272 BREAK CASE PROPS_FMM_GLASSES_14_6 iItem = 273 BREAK CASE PROPS_FMM_GLASSES_14_7 iItem = 274 BREAK CASE PROPS_FMM_GLASSES_15_0 iItem = 275 BREAK CASE PROPS_FMM_GLASSES_15_1 iItem = 276 BREAK CASE PROPS_FMM_GLASSES_15_2 iItem = 277 BREAK CASE PROPS_FMM_GLASSES_15_3 iItem = 278 BREAK CASE PROPS_FMM_GLASSES_15_4 iItem = 279 BREAK CASE PROPS_FMM_GLASSES_15_5 iItem = 280 BREAK CASE PROPS_FMM_GLASSES_15_6 iItem = 281 BREAK CASE PROPS_FMM_GLASSES_15_7 iItem = 282 BREAK CASE PROPS_FMM_WATCH_0_0 iItem = 283 BREAK CASE PROPS_FMM_WATCH_0_1 iItem = 284 BREAK CASE PROPS_FMM_WATCH_0_2 iItem = 285 BREAK CASE PROPS_FMM_WATCH_0_3 iItem = 286 BREAK CASE PROPS_FMM_WATCH_0_4 iItem = 287 BREAK CASE PROPS_FMM_WATCH_1_0 iItem = 288 BREAK CASE PROPS_FMM_WATCH_1_1 iItem = 289 BREAK CASE PROPS_FMM_WATCH_1_2 iItem = 290 BREAK ENDSWITCH ELIF eModel = MP_F_FREEMODE_01 SWITCH eItem CASE PROPS_FMF_EARDEFENDERS_0_0 iItem = 10 BREAK CASE PROPS_FMF_EARDEFENDERS_0_1 iItem = 11 BREAK CASE PROPS_FMF_EARDEFENDERS_0_2 iItem = 12 BREAK CASE PROPS_FMF_EARDEFENDERS_0_3 iItem = 13 BREAK CASE PROPS_FMF_EARDEFENDERS_0_4 iItem = 14 BREAK CASE PROPS_FMF_EARDEFENDERS_0_5 iItem = 15 BREAK CASE PROPS_FMF_EARDEFENDERS_0_6 iItem = 16 BREAK CASE PROPS_FMF_EARDEFENDERS_0_7 iItem = 17 BREAK CASE PROPS_FMF_DUNCE_HAT_1_0 iItem = 18 BREAK CASE PROPS_FMF_HAT_2_0 iItem = 19 BREAK CASE PROPS_FMF_HAT_2_1 iItem = 20 BREAK CASE PROPS_FMF_HAT_2_2 iItem = 21 BREAK CASE PROPS_FMF_HAT_2_3 iItem = 22 BREAK CASE PROPS_FMF_HAT_2_4 iItem = 23 BREAK CASE PROPS_FMF_HAT_2_5 iItem = 24 BREAK CASE PROPS_FMF_HAT_2_6 iItem = 25 BREAK CASE PROPS_FMF_HAT_2_7 iItem = 26 BREAK CASE PROPS_FMF_HAT_3_0 iItem = 27 BREAK CASE PROPS_FMF_HAT_3_1 iItem = 28 BREAK CASE PROPS_FMF_HAT_3_2 iItem = 29 BREAK CASE PROPS_FMF_HAT_3_3 iItem = 30 BREAK CASE PROPS_FMF_HAT_3_4 iItem = 31 BREAK CASE PROPS_FMF_HAT_3_5 iItem = 32 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HAT_3_6 iItem = 33 BREAK CASE PROPS_FMF_HAT_3_7 iItem = 34 BREAK CASE PROPS_FMF_HAT_4_0 iItem = 35 BREAK CASE PROPS_FMF_HAT_4_1 iItem = 36 BREAK CASE PROPS_FMF_HAT_4_2 iItem = 37 BREAK CASE PROPS_FMF_HAT_4_3 iItem = 38 BREAK CASE PROPS_FMF_HAT_4_4 iItem = 39 BREAK CASE PROPS_FMF_HAT_4_5 iItem = 40 BREAK CASE PROPS_FMF_HAT_4_6 iItem = 41 BREAK CASE PROPS_FMF_HAT_4_7 iItem = 42 BREAK CASE PROPS_FMF_HAT_5_0 iItem = 43 BREAK CASE PROPS_FMF_HAT_5_1 iItem = 44 BREAK CASE PROPS_FMF_HAT_5_2 iItem = 45 BREAK CASE PROPS_FMF_HAT_5_3 iItem = 46 BREAK CASE PROPS_FMF_HAT_5_4 iItem = 47 BREAK CASE PROPS_FMF_HAT_5_5 iItem = 48 BREAK CASE PROPS_FMF_HAT_5_6 iItem = 49 BREAK CASE PROPS_FMF_HAT_5_7 iItem = 50 BREAK CASE PROPS_FMF_HAT_6_0 iItem = 51 BREAK CASE PROPS_FMF_HAT_6_1 iItem = 52 BREAK CASE PROPS_FMF_HAT_6_2 iItem = 53 BREAK CASE PROPS_FMF_HAT_6_3 iItem = 54 BREAK CASE PROPS_FMF_HAT_6_4 iItem = 55 BREAK CASE PROPS_FMF_HAT_6_5 iItem = 56 BREAK CASE PROPS_FMF_HAT_6_6 iItem = 57 BREAK CASE PROPS_FMF_HAT_6_7 iItem = 58 BREAK CASE PROPS_FMF_HAT_7_0 iItem = 59 BREAK CASE PROPS_FMF_HAT_7_1 iItem = 60 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HAT_7_2 iItem = 61 BREAK CASE PROPS_FMF_HAT_7_3 iItem = 62 BREAK CASE PROPS_FMF_HAT_7_4 iItem = 63 BREAK CASE PROPS_FMF_HAT_7_5 iItem = 64 BREAK CASE PROPS_FMF_HAT_7_6 iItem = 65 BREAK CASE PROPS_FMF_HAT_7_7 iItem = 66 BREAK CASE PROPS_FMF_HAT_8_0 iItem = 67 BREAK CASE PROPS_FMF_HAT_8_1 iItem = 68 BREAK CASE PROPS_FMF_HAT_8_2 iItem = 69 BREAK CASE PROPS_FMF_HAT_8_3 iItem = 70 BREAK CASE PROPS_FMF_HAT_8_4 iItem = 71 BREAK CASE PROPS_FMF_HAT_8_5 iItem = 72 BREAK CASE PROPS_FMF_HAT_8_6 iItem = 73 BREAK CASE PROPS_FMF_HAT_8_7 iItem = 74 BREAK CASE PROPS_FMF_HAT_9_0 iItem = 75 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HAT_9_1 iItem = 76 BREAK CASE PROPS_FMF_HAT_9_2 iItem = 77 BREAK CASE PROPS_FMF_HAT_9_3 iItem = 78 BREAK CASE PROPS_FMF_HAT_9_4 iItem = 79 BREAK CASE PROPS_FMF_HAT_9_5 iItem = 80 BREAK CASE PROPS_FMF_HAT_9_6 iItem = 81 BREAK CASE PROPS_FMF_HAT_9_7 iItem = 82 BREAK CASE PROPS_FMF_HAT_10_0 iItem = 83 BREAK CASE PROPS_FMF_HAT_10_1 iItem = 84 BREAK CASE PROPS_FMF_HAT_10_2 iItem = 85 BREAK CASE PROPS_FMF_HAT_10_3 iItem = 86 BREAK CASE PROPS_FMF_HAT_10_4 iItem = 87 BREAK CASE PROPS_FMF_HAT_10_5 iItem = 88 BREAK CASE PROPS_FMF_HAT_10_6 iItem = 89 BREAK CASE PROPS_FMF_HAT_10_7 iItem = 90 BREAK CASE PROPS_FMF_HAT_11_0 iItem = 91 BREAK CASE PROPS_FMF_HAT_11_1 iItem = 92 BREAK CASE PROPS_FMF_HAT_11_2 iItem = 93 BREAK CASE PROPS_FMF_HAT_11_3 iItem = 94 BREAK CASE PROPS_FMF_HAT_11_4 iItem = 95 BREAK CASE PROPS_FMF_HAT_11_5 iItem = 96 BREAK CASE PROPS_FMF_HAT_11_6 iItem = 97 BREAK CASE PROPS_FMF_HAT_11_7 iItem = 98 BREAK CASE PROPS_FMF_HAT_12_0 iItem = 99 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HAT_12_1 iItem = 100 BREAK CASE PROPS_FMF_HAT_12_2 iItem = 101 BREAK CASE PROPS_FMF_HAT_12_3 iItem = 102 BREAK CASE PROPS_FMF_HAT_12_4 iItem = 103 BREAK CASE PROPS_FMF_HAT_12_5 iItem = 104 BREAK CASE PROPS_FMF_HAT_12_6 iItem = 105 BREAK CASE PROPS_FMF_HAT_12_7 iItem = 106 BREAK CASE PROPS_FMF_HAT_13_0 iItem = 107 BREAK CASE PROPS_FMF_HAT_13_1 iItem = 108 BREAK CASE PROPS_FMF_HAT_13_2 iItem = 109 BREAK CASE PROPS_FMF_HAT_13_3 iItem = 110 BREAK CASE PROPS_FMF_HAT_13_4 iItem = 111 BREAK CASE PROPS_FMF_HAT_13_5 iItem = 112 BREAK CASE PROPS_FMF_HAT_13_6 iItem = 113 BREAK CASE PROPS_FMF_HAT_13_7 iItem = 114 BREAK CASE PROPS_FMF_HAT_14_0 iItem = 115 BREAK CASE PROPS_FMF_HAT_14_1 iItem = 116 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HAT_14_2 iItem = 117 BREAK CASE PROPS_FMF_HAT_14_3 iItem = 118 BREAK CASE PROPS_FMF_HAT_14_4 iItem = 119 BREAK CASE PROPS_FMF_HAT_14_5 iItem = 120 BREAK CASE PROPS_FMF_HAT_14_6 iItem = 121 BREAK CASE PROPS_FMF_HAT_14_7 iItem = 122 BREAK CASE PROPS_FMF_HAT_15_0 iItem = 123 BREAK CASE PROPS_FMF_HAT_15_1 iItem = 124 BREAK CASE PROPS_FMF_HAT_15_2 iItem = 125 BREAK CASE PROPS_FMF_HAT_15_3 iItem = 126 BREAK CASE PROPS_FMF_HAT_15_4 iItem = 127 BREAK CASE PROPS_FMF_HAT_15_5 iItem = 128 BREAK CASE PROPS_FMF_HAT_15_6 iItem = 129 BREAK CASE PROPS_FMF_HAT_15_7 iItem = 130 BREAK CASE PROPS_FMF_HELMET_16_0 iItem = 131 BREAK CASE PROPS_FMF_HELMET_16_1 iItem = 132 BREAK CASE PROPS_FMF_HELMET_16_2 iItem = 133 BREAK CASE PROPS_FMF_HELMET_16_3 iItem = 134 BREAK CASE PROPS_FMF_HELMET_16_4 iItem = 135 BREAK CASE PROPS_FMF_HELMET_16_5 iItem = 136 BREAK CASE PROPS_FMF_HELMET_16_6 iItem = 137 BREAK CASE PROPS_FMF_HELMET_16_7 iItem = 138 BREAK CASE PROPS_FMF_HELMET_17_0 iItem = 139 BREAK CASE PROPS_FMF_HELMET_17_1 iItem = 140 BREAK CASE PROPS_FMF_HELMET_17_2 iItem = 141 BREAK CASE PROPS_FMF_HELMET_17_3 iItem = 142 BREAK CASE PROPS_FMF_HELMET_17_4 iItem = 143 BREAK CASE PROPS_FMF_HELMET_17_5 iItem = 144 BREAK CASE PROPS_FMF_HELMET_17_6 iItem = 145 BREAK CASE PROPS_FMF_HELMET_17_7 iItem = 146 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HELMET_18_0 iItem = 147 BREAK CASE PROPS_FMF_HELMET_18_1 iItem = 148 BREAK CASE PROPS_FMF_HELMET_18_2 iItem = 149 BREAK CASE PROPS_FMF_HELMET_18_3 iItem = 150 BREAK CASE PROPS_FMF_HELMET_18_4 iItem = 151 BREAK CASE PROPS_FMF_HELMET_18_5 iItem = 152 BREAK CASE PROPS_FMF_HELMET_18_6 iItem = 153 BREAK CASE PROPS_FMF_HELMET_18_7 iItem = 154 BREAK CASE PROPS_FMF_GLASSES_0_0 iItem = 155 BREAK CASE PROPS_FMF_GLASSES_0_1 iItem = 156 BREAK CASE PROPS_FMF_GLASSES_0_2 iItem = 157 BREAK CASE PROPS_FMF_GLASSES_0_3 iItem = 158 BREAK CASE PROPS_FMF_GLASSES_0_4 iItem = 159 BREAK CASE PROPS_FMF_GLASSES_0_5 iItem = 160 BREAK CASE PROPS_FMF_GLASSES_0_6 iItem = 161 BREAK CASE PROPS_FMF_GLASSES_0_7 iItem = 162 BREAK CASE PROPS_FMF_GLASSES_1_0 iItem = 163 BREAK CASE PROPS_FMF_GLASSES_1_1 iItem = 164 BREAK CASE PROPS_FMF_GLASSES_1_2 iItem = 165 BREAK CASE PROPS_FMF_GLASSES_1_3 iItem = 166 BREAK CASE PROPS_FMF_GLASSES_1_4 iItem = 167 BREAK CASE PROPS_FMF_GLASSES_1_5 iItem = 168 BREAK CASE PROPS_FMF_GLASSES_1_6 iItem = 169 BREAK CASE PROPS_FMF_GLASSES_1_7 iItem = 170 BREAK CASE PROPS_FMF_GLASSES_2_0 iItem = 171 BREAK CASE PROPS_FMF_GLASSES_2_1 iItem = 172 BREAK CASE PROPS_FMF_GLASSES_2_2 iItem = 173 BREAK CASE PROPS_FMF_GLASSES_2_3 iItem = 174 BREAK CASE PROPS_FMF_GLASSES_2_4 iItem = 175 BREAK CASE PROPS_FMF_GLASSES_2_5 iItem = 176 BREAK CASE PROPS_FMF_GLASSES_2_6 iItem = 177 BREAK CASE PROPS_FMF_GLASSES_2_7 iItem = 178 BREAK CASE PROPS_FMF_GLASSES_3_0 iItem = 179 BREAK CASE PROPS_FMF_GLASSES_3_1 iItem = 180 BREAK CASE PROPS_FMF_GLASSES_3_2 iItem = 181 BREAK CASE PROPS_FMF_GLASSES_3_3 iItem = 182 BREAK CASE PROPS_FMF_GLASSES_3_4 iItem = 183 BREAK CASE PROPS_FMF_GLASSES_3_5 iItem = 184 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_GLASSES_3_6 iItem = 185 BREAK CASE PROPS_FMF_GLASSES_3_7 iItem = 186 BREAK CASE PROPS_FMF_GLASSES_4_0 iItem = 187 BREAK CASE PROPS_FMF_GLASSES_4_1 iItem = 188 BREAK CASE PROPS_FMF_GLASSES_4_2 iItem = 189 BREAK CASE PROPS_FMF_GLASSES_4_3 iItem = 190 BREAK CASE PROPS_FMF_GLASSES_4_4 iItem = 191 BREAK CASE PROPS_FMF_GLASSES_4_5 iItem = 192 BREAK CASE PROPS_FMF_GLASSES_4_6 iItem = 193 BREAK CASE PROPS_FMF_GLASSES_4_7 iItem = 194 BREAK CASE PROPS_FMF_GLASSES_5_0 iItem = 195 BREAK CASE PROPS_FMF_GLASSES_5_1 iItem = 196 BREAK CASE PROPS_FMF_GLASSES_5_2 iItem = 197 BREAK CASE PROPS_FMF_GLASSES_5_3 iItem = 198 BREAK CASE PROPS_FMF_GLASSES_5_4 iItem = 199 BREAK CASE PROPS_FMF_GLASSES_5_5 iItem = 200 BREAK CASE PROPS_FMF_GLASSES_5_6 iItem = 201 BREAK CASE PROPS_FMF_GLASSES_5_7 iItem = 202 BREAK CASE PROPS_FMF_GLASSES_6_0 iItem = 203 BREAK CASE PROPS_FMF_GLASSES_6_1 iItem = 204 BREAK CASE PROPS_FMF_GLASSES_6_2 iItem = 205 BREAK CASE PROPS_FMF_GLASSES_6_3 iItem = 206 BREAK CASE PROPS_FMF_GLASSES_6_4 iItem = 207 BREAK CASE PROPS_FMF_GLASSES_6_5 iItem = 208 BREAK CASE PROPS_FMF_GLASSES_6_6 iItem = 209 BREAK CASE PROPS_FMF_GLASSES_6_7 iItem = 210 BREAK CASE PROPS_FMF_GLASSES_7_0 iItem = 211 BREAK CASE PROPS_FMF_GLASSES_7_1 iItem = 212 BREAK CASE PROPS_FMF_GLASSES_7_2 iItem = 213 BREAK CASE PROPS_FMF_GLASSES_7_3 iItem = 214 BREAK CASE PROPS_FMF_GLASSES_7_4 iItem = 215 BREAK CASE PROPS_FMF_GLASSES_7_5 iItem = 216 BREAK CASE PROPS_FMF_GLASSES_7_6 iItem = 217 BREAK CASE PROPS_FMF_GLASSES_7_7 iItem = 218 BREAK CASE PROPS_FMF_GLASSES_8_0 iItem = 219 BREAK CASE PROPS_FMF_GLASSES_8_1 iItem = 220 BREAK CASE PROPS_FMF_GLASSES_8_2 iItem = 221 BREAK CASE PROPS_FMF_GLASSES_8_3 iItem = 222 BREAK CASE PROPS_FMF_GLASSES_8_4 iItem = 223 BREAK CASE PROPS_FMF_GLASSES_8_5 iItem = 224 BREAK CASE PROPS_FMF_GLASSES_8_6 iItem = 225 BREAK CASE PROPS_FMF_GLASSES_8_7 iItem = 226 BREAK CASE PROPS_FMF_GLASSES_9_0 iItem = 227 BREAK CASE PROPS_FMF_GLASSES_9_1 iItem = 228 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_GLASSES_9_2 iItem = 229 BREAK CASE PROPS_FMF_GLASSES_9_3 iItem = 230 BREAK CASE PROPS_FMF_GLASSES_9_4 iItem = 231 BREAK CASE PROPS_FMF_GLASSES_9_5 iItem = 232 BREAK CASE PROPS_FMF_GLASSES_9_6 iItem = 233 BREAK CASE PROPS_FMF_GLASSES_9_7 iItem = 234 BREAK CASE PROPS_FMF_GLASSES_10_0 iItem = 235 BREAK CASE PROPS_FMF_GLASSES_10_1 iItem = 236 BREAK CASE PROPS_FMF_GLASSES_10_2 iItem = 237 BREAK CASE PROPS_FMF_GLASSES_10_3 iItem = 238 BREAK CASE PROPS_FMF_GLASSES_10_4 iItem = 239 BREAK CASE PROPS_FMF_GLASSES_10_5 iItem = 240 BREAK CASE PROPS_FMF_GLASSES_10_6 iItem = 241 BREAK CASE PROPS_FMF_GLASSES_10_7 iItem = 242 BREAK CASE PROPS_FMF_GLASSES_11_0 iItem = 243 BREAK CASE PROPS_FMF_GLASSES_11_1 iItem = 244 BREAK CASE PROPS_FMF_GLASSES_11_2 iItem = 245 BREAK CASE PROPS_FMF_GLASSES_11_3 iItem = 246 BREAK CASE PROPS_FMF_GLASSES_11_4 iItem = 247 BREAK CASE PROPS_FMF_GLASSES_11_5 iItem = 248 BREAK CASE PROPS_FMF_GLASSES_11_6 iItem = 249 BREAK CASE PROPS_FMF_GLASSES_11_7 iItem = 250 BREAK CASE PROPS_FMF_GLASSES_12_0 iItem = 251 BREAK CASE PROPS_FMF_GLASSES_12_1 iItem = 252 BREAK CASE PROPS_FMF_GLASSES_12_2 iItem = 253 BREAK CASE PROPS_FMF_GLASSES_12_3 iItem = 254 BREAK CASE PROPS_FMF_GLASSES_12_4 iItem = 255 BREAK CASE PROPS_FMF_GLASSES_12_5 iItem = 256 BREAK CASE PROPS_FMF_GLASSES_12_6 iItem = 257 BREAK CASE PROPS_FMF_GLASSES_12_7 iItem = 258 BREAK CASE PROPS_FMF_GLASSES_13_0 iItem = 259 BREAK CASE PROPS_FMF_GLASSES_13_1 iItem = 260 BREAK CASE PROPS_FMF_GLASSES_13_2 iItem = 261 BREAK CASE PROPS_FMF_GLASSES_13_3 iItem = 262 BREAK CASE PROPS_FMF_GLASSES_13_4 iItem = 263 BREAK CASE PROPS_FMF_GLASSES_13_5 iItem = 264 BREAK CASE PROPS_FMF_GLASSES_13_6 iItem = 265 BREAK CASE PROPS_FMF_GLASSES_13_7 iItem = 266 BREAK CASE PROPS_FMF_GLASSES_14_0 iItem = 267 BREAK CASE PROPS_FMF_GLASSES_14_1 iItem = 268 BREAK CASE PROPS_FMF_GLASSES_14_2 iItem = 269 BREAK CASE PROPS_FMF_GLASSES_14_3 iItem = 270 BREAK CASE PROPS_FMF_GLASSES_14_4 iItem = 271 BREAK CASE PROPS_FMF_GLASSES_14_5 iItem = 272 BREAK CASE PROPS_FMF_GLASSES_14_6 iItem = 273 BREAK CASE PROPS_FMF_GLASSES_14_7 iItem = 274 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_GLASSES_15_0 iItem = 275 BREAK CASE PROPS_FMF_GLASSES_15_1 iItem = 276 BREAK CASE PROPS_FMF_GLASSES_15_2 iItem = 277 BREAK CASE PROPS_FMF_GLASSES_15_3 iItem = 278 BREAK CASE PROPS_FMF_GLASSES_15_4 iItem = 279 BREAK CASE PROPS_FMF_GLASSES_15_5 iItem = 280 BREAK CASE PROPS_FMF_GLASSES_15_6 iItem = 281 BREAK CASE PROPS_FMF_GLASSES_15_7 iItem = 282 BREAK CASE PROPS_FMF_WATCH_0_0 iItem = 283 BREAK CASE PROPS_FMF_WATCH_0_1 iItem = 284 BREAK CASE PROPS_FMF_WATCH_0_2 iItem = 285 BREAK CASE PROPS_FMF_WATCH_0_3 iItem = 286 BREAK CASE PROPS_FMF_WATCH_0_4 iItem = 287 BREAK CASE PROPS_FMF_WATCH_1_0 iItem = 288 BREAK CASE PROPS_FMF_WATCH_1_1 iItem = 289 BREAK CASE PROPS_FMF_WATCH_1_2 iItem = 290 BREAK ENDSWITCH ENDIF RETURN (iItem != -1) ENDFUNC FUNC BOOL GET_SHOP_PED_APPAREL_SAVE_DATA(INT nameHash, INT bitFlag, MP_INT_STATS &eStat, INT &iBit, BOOL bCurrentPlayer = TRUE, BOOL bIsMale = TRUE) #IF USE_SP_DLC UNUSED_PARAMETER(nameHash) UNUSED_PARAMETER(bitFlag) UNUSED_PARAMETER(eStat) UNUSED_PARAMETER(iBit) UNUSED_PARAMETER(bCurrentPlayer) UNUSED_PARAMETER(bIsMale) RETURN FALSE #ENDIF #IF NOT USE_SP_DLC eStat = MAX_NUM_MP_INT_STATS // Patched content checks. IF (bCurrentPlayer AND g_bPedComponentGenderIsMale) OR (NOT bCurrentPlayer AND bIsMale) SWITCH bitFlag CASE PED_COMPONENT_ACQUIRED_SLOT SWITCH namehash CASE HASH("DLC_MP_STUNT_M_PHEAD_15_0") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_0") /*PROPS_FMM_HELMET_18_0*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 19 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_1") /*PROPS_FMM_HELMET_18_1*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 20 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_2") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_2") /*PROPS_FMM_HELMET_18_2*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 21 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_3") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_3") /*PROPS_FMM_HELMET_18_3*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 22 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_4") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_4") /*PROPS_FMM_HELMET_18_4*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 23 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_5") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_5") /*PROPS_FMM_HELMET_18_5*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 24 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_6") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_6") /*PROPS_FMM_HELMET_18_6*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 25 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_7") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_7") /*PROPS_FMM_HELMET_18_7*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 26 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_0") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_0") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_0") /*JBIB_FMM_0_0*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 0 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_1") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_1") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_1") /*JBIB_FMM_0_1*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 1 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_2") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_2") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_2") /*JBIB_FMM_0_2*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 2 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_3") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_3") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_3") /*JBIB_FMM_0_3*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 3 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_4") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_4") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_4") /*JBIB_FMM_0_4*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 4 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_5") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_5") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_5") /*JBIB_FMM_0_5*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 5 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_7") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_7") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_7") /*JBIB_FMM_0_7*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 7 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_8") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_8") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_8") /*JBIB_FMM_0_8*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 8 RETURN TRUE BREAK CASE HASH("DLC_MP_BIKER_M_SPECIAL_0_11") CASE HASH("DLC_MP_BIKER_M_SPECIAL_2_11") CASE HASH("DLC_MP_BIKER_M_SPECIAL_4_11") /*JBIB_FMM_0_11*/ eStat = MP_STAT_CLTHS_ACQUIRED_JBIB iBit = 11 RETURN TRUE BREAK ENDSWITCH BREAK CASE PED_COMPONENT_USED_SLOT SWITCH namehash CASE HASH("DLC_MP_STUNT_M_PHEAD_15_0") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_0") /*PROPS_FMM_HELMET_18_0*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 19 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_1") /*PROPS_FMM_HELMET_18_1*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 20 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_2") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_2") /*PROPS_FMM_HELMET_18_2*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 21 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_3") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_3") /*PROPS_FMM_HELMET_18_3*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 22 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_4") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_4") /*PROPS_FMM_HELMET_18_4*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 23 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_5") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_5") /*PROPS_FMM_HELMET_18_5*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 24 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_6") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_6") /*PROPS_FMM_HELMET_18_6*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 25 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_M_PHEAD_15_7") CASE HASH("DLC_MP_STUNT_M_PHEAD_0_7") /*PROPS_FMM_HELMET_18_7*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 26 RETURN TRUE BREAK ENDSWITCH BREAK ENDSWITCH ELSE SWITCH bitFlag CASE PED_COMPONENT_ACQUIRED_SLOT SWITCH namehash CASE HASH("DLC_MP_STUNT_F_PHEAD_15_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_0") /*PROPS_FMF_HELMET_18_0*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 19 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_1") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_1") /*PROPS_FMF_HELMET_18_1*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 20 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_2") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_2") /*PROPS_FMF_HELMET_18_2*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 21 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_3") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_3") /*PROPS_FMF_HELMET_18_3*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 22 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_4") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_4") /*PROPS_FMF_HELMET_18_4*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 23 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_5") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_5") /*PROPS_FMF_HELMET_18_5*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 24 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_6") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_6") /*PROPS_FMF_HELMET_18_6*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 25 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_7") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_7") /*PROPS_FMF_HELMET_18_7*/ eStat = MP_STAT_CLTHS_ACQUIRED_PROPS_4 iBit = 26 RETURN TRUE BREAK ENDSWITCH BREAK CASE PED_COMPONENT_USED_SLOT SWITCH namehash CASE HASH("DLC_MP_STUNT_F_PHEAD_15_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_0") /*PROPS_FMF_HELMET_18_0*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 19 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_1") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_1") /*PROPS_FMF_HELMET_18_1*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 20 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_2") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_2") /*PROPS_FMF_HELMET_18_2*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 21 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_3") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_3") /*PROPS_FMF_HELMET_18_3*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 22 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_4") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_4") /*PROPS_FMF_HELMET_18_4*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 23 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_5") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_5") /*PROPS_FMF_HELMET_18_5*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 24 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_6") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_6") /*PROPS_FMF_HELMET_18_6*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 25 RETURN TRUE BREAK CASE HASH("DLC_MP_STUNT_F_PHEAD_15_7") CASE HASH("DLC_MP_STUNT_F_PHEAD_0_7") /*PROPS_FMF_HELMET_18_7*/ eStat = MP_STAT_CLTHS_USED_PROPS_4 iBit = 26 RETURN TRUE BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Grab the index for each item INT iDLCIndex = -1 IF bCurrentPlayer IF g_bPedComponentGenderIsMale iDLCIndex = GET_FM_MALE_SHOP_PED_APPAREL_ITEM_INDEX(nameHash) ELSE iDLCIndex = GET_FM_FEMALE_SHOP_PED_APPAREL_ITEM_INDEX(nameHash) ENDIF ELSE IF bIsMale iDLCIndex = GET_FM_MALE_SHOP_PED_APPAREL_ITEM_INDEX(nameHash) ELSE iDLCIndex = GET_FM_FEMALE_SHOP_PED_APPAREL_ITEM_INDEX(nameHash) ENDIF ENDIF IF iDLCIndex = -1 RETURN FALSE ENDIF // Determine which stat to use SWITCH bitFlag CASE PED_COMPONENT_ACQUIRED_SLOT SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 0 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_0 BREAK CASE 1 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_1 BREAK CASE 2 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_2 BREAK CASE 3 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_3 BREAK CASE 4 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_4 BREAK CASE 5 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_5 BREAK CASE 6 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_6 BREAK CASE 7 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_7 BREAK CASE 8 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_8 BREAK CASE 9 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_9 BREAK CASE 10 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_10 BREAK CASE 11 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_11 BREAK CASE 12 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_12 BREAK CASE 13 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_13 BREAK CASE 14 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_14 BREAK CASE 15 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_15 BREAK CASE 16 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_16 BREAK CASE 17 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_17 BREAK CASE 18 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_18 BREAK CASE 19 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_19 BREAK CASE 20 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_20 BREAK CASE 21 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_21 BREAK CASE 22 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_22 BREAK CASE 23 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_23 BREAK CASE 24 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_24 BREAK CASE 25 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_25 BREAK CASE 26 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_26 BREAK CASE 27 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_27 BREAK CASE 28 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_28 BREAK CASE 29 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_29 BREAK CASE 30 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_30 BREAK CASE 31 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_31 BREAK CASE 32 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_32 BREAK CASE 33 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_33 BREAK CASE 34 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_34 BREAK CASE 35 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_35 BREAK CASE 36 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_36 BREAK CASE 37 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_37 BREAK CASE 38 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_38 BREAK CASE 39 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_39 BREAK CASE 40 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_40 BREAK CASE 41 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_41 BREAK CASE 42 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_42 BREAK CASE 43 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_43 BREAK CASE 44 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_44 BREAK CASE 45 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_45 BREAK CASE 46 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_46 BREAK CASE 47 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_47 BREAK CASE 48 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_48 BREAK CASE 49 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_49 BREAK CASE 50 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_50 BREAK CASE 51 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_51 BREAK CASE 52 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_52 BREAK CASE 53 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_53 BREAK CASE 54 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_54 BREAK CASE 55 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_55 BREAK CASE 56 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_56 BREAK CASE 57 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_57 BREAK CASE 58 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_58 BREAK CASE 59 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_59 BREAK CASE 60 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_60 BREAK CASE 61 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_61 BREAK CASE 62 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_62 BREAK CASE 63 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_63 BREAK CASE 64 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_64 BREAK CASE 65 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_65 BREAK CASE 66 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_66 BREAK CASE 67 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_67 BREAK CASE 68 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_68 BREAK CASE 69 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_69 BREAK CASE 70 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_70 BREAK CASE 71 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_71 BREAK CASE 72 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_72 BREAK CASE 73 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_73 BREAK CASE 74 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_74 BREAK CASE 75 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_75 BREAK CASE 76 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_76 BREAK CASE 77 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_77 BREAK CASE 78 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_78 BREAK CASE 79 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_79 BREAK CASE 80 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_80 BREAK CASE 81 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_81 BREAK CASE 82 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_82 BREAK CASE 83 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_83 BREAK CASE 84 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_84 BREAK CASE 85 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_85 BREAK CASE 86 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_86 BREAK CASE 87 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_87 BREAK CASE 88 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_88 BREAK CASE 89 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_89 BREAK CASE 90 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_90 BREAK CASE 91 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_91 BREAK CASE 92 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_92 BREAK CASE 93 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_93 BREAK CASE 94 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_94 BREAK CASE 95 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_95 BREAK CASE 96 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_96 BREAK CASE 97 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_97 BREAK CASE 98 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_98 BREAK CASE 99 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_99 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 100 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_100 BREAK CASE 101 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_101 BREAK CASE 102 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_102 BREAK CASE 103 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_103 BREAK CASE 104 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_104 BREAK CASE 105 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_105 BREAK CASE 106 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_106 BREAK CASE 107 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_107 BREAK CASE 108 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_108 BREAK CASE 109 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_109 BREAK CASE 110 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_110 BREAK CASE 111 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_111 BREAK CASE 112 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_112 BREAK CASE 113 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_113 BREAK CASE 114 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_114 BREAK CASE 115 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_115 BREAK CASE 116 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_116 BREAK CASE 117 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_117 BREAK CASE 118 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_118 BREAK CASE 119 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_119 BREAK CASE 120 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_120 BREAK CASE 121 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_121 BREAK CASE 122 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_122 BREAK CASE 123 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_123 BREAK CASE 124 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_124 BREAK CASE 125 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_125 BREAK CASE 126 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_126 BREAK CASE 127 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_127 BREAK CASE 128 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_128 BREAK CASE 129 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_129 BREAK CASE 130 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_130 BREAK CASE 131 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_131 BREAK CASE 132 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_132 BREAK CASE 133 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_133 BREAK CASE 134 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_134 BREAK CASE 135 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_135 BREAK CASE 136 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_136 BREAK CASE 137 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_137 BREAK CASE 138 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_138 BREAK CASE 139 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_139 BREAK CASE 140 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_140 BREAK CASE 141 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_141 BREAK CASE 142 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_142 BREAK CASE 143 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_143 BREAK CASE 144 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_144 BREAK CASE 145 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_145 BREAK CASE 146 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_146 BREAK CASE 147 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_147 BREAK CASE 148 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_148 BREAK CASE 149 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_149 BREAK CASE 150 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_150 BREAK CASE 151 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_151 BREAK CASE 152 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_152 BREAK CASE 153 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_153 BREAK CASE 154 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_154 BREAK CASE 155 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_155 BREAK CASE 156 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_156 BREAK CASE 157 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_157 BREAK CASE 158 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_158 BREAK CASE 159 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_159 BREAK CASE 160 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_160 BREAK CASE 161 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_161 BREAK CASE 162 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_162 BREAK CASE 163 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_163 BREAK CASE 164 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_164 BREAK CASE 165 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_165 BREAK CASE 166 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_166 BREAK CASE 167 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_167 BREAK CASE 168 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_168 BREAK CASE 169 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_169 BREAK CASE 170 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_170 BREAK CASE 171 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_171 BREAK CASE 172 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_172 BREAK CASE 173 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_173 BREAK CASE 174 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_174 BREAK CASE 175 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_175 BREAK CASE 176 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_176 BREAK CASE 177 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_177 BREAK CASE 178 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_178 BREAK CASE 179 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_179 BREAK CASE 180 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_180 BREAK CASE 181 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_181 BREAK CASE 182 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_182 BREAK CASE 183 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_183 BREAK CASE 184 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_184 BREAK CASE 185 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_185 BREAK CASE 186 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_186 BREAK CASE 187 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_187 BREAK CASE 188 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_188 BREAK CASE 189 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_189 BREAK CASE 190 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_190 BREAK CASE 191 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_191 BREAK CASE 192 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_192 BREAK CASE 193 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_193 BREAK CASE 194 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_194 BREAK CASE 195 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_195 BREAK CASE 196 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_196 BREAK CASE 197 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_197 BREAK CASE 198 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_198 BREAK CASE 199 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_199 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 200 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_200 BREAK CASE 201 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_201 BREAK CASE 202 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_202 BREAK CASE 203 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_203 BREAK CASE 204 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_204 BREAK CASE 205 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_205 BREAK CASE 206 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_206 BREAK CASE 207 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_207 BREAK CASE 208 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_208 BREAK CASE 209 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_209 BREAK CASE 210 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_210 BREAK CASE 211 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_211 BREAK CASE 212 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_212 BREAK CASE 213 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_213 BREAK CASE 214 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_214 BREAK CASE 215 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_215 BREAK CASE 216 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_216 BREAK CASE 217 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_217 BREAK CASE 218 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_218 BREAK CASE 219 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_219 BREAK CASE 220 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_220 BREAK CASE 221 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_221 BREAK CASE 222 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_222 BREAK CASE 223 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_223 BREAK CASE 224 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_224 BREAK CASE 225 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_225 BREAK CASE 226 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_226 BREAK CASE 227 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_227 BREAK CASE 228 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_228 BREAK CASE 229 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_229 BREAK CASE 230 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_230 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 231 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_231 BREAK CASE 232 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_232 BREAK CASE 233 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_233 BREAK CASE 234 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_234 BREAK CASE 235 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_235 BREAK CASE 236 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_236 BREAK CASE 237 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_237 BREAK CASE 238 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_238 BREAK CASE 239 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_239 BREAK CASE 240 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_240 BREAK CASE 241 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_241 BREAK CASE 242 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_242 BREAK CASE 243 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_243 BREAK CASE 244 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_244 BREAK CASE 245 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_245 BREAK CASE 246 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_246 BREAK CASE 247 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_247 BREAK CASE 248 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_248 BREAK CASE 249 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_249 BREAK CASE 250 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_250 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 251 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_251 BREAK CASE 252 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_252 BREAK CASE 253 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_253 BREAK CASE 254 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_254 BREAK CASE 255 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_255 BREAK CASE 256 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_256 BREAK CASE 257 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_257 BREAK CASE 258 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_258 BREAK CASE 259 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_259 BREAK CASE 260 eStat = MP_STAT_DLC_APPAREL_ACQUIRED_260 BREAK ENDSWITCH BREAK CASE PED_COMPONENT_USED_SLOT SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 0 eStat = MP_STAT_DLC_APPAREL_USED_0 BREAK CASE 1 eStat = MP_STAT_DLC_APPAREL_USED_1 BREAK CASE 2 eStat = MP_STAT_DLC_APPAREL_USED_2 BREAK CASE 3 eStat = MP_STAT_DLC_APPAREL_USED_3 BREAK CASE 4 eStat = MP_STAT_DLC_APPAREL_USED_4 BREAK CASE 5 eStat = MP_STAT_DLC_APPAREL_USED_5 BREAK CASE 6 eStat = MP_STAT_DLC_APPAREL_USED_6 BREAK CASE 7 eStat = MP_STAT_DLC_APPAREL_USED_7 BREAK CASE 8 eStat = MP_STAT_DLC_APPAREL_USED_8 BREAK CASE 9 eStat = MP_STAT_DLC_APPAREL_USED_9 BREAK CASE 10 eStat = MP_STAT_DLC_APPAREL_USED_10 BREAK CASE 11 eStat = MP_STAT_DLC_APPAREL_USED_11 BREAK CASE 12 eStat = MP_STAT_DLC_APPAREL_USED_12 BREAK CASE 13 eStat = MP_STAT_DLC_APPAREL_USED_13 BREAK CASE 14 eStat = MP_STAT_DLC_APPAREL_USED_14 BREAK CASE 15 eStat = MP_STAT_DLC_APPAREL_USED_15 BREAK CASE 16 eStat = MP_STAT_DLC_APPAREL_USED_16 BREAK CASE 17 eStat = MP_STAT_DLC_APPAREL_USED_17 BREAK CASE 18 eStat = MP_STAT_DLC_APPAREL_USED_18 BREAK CASE 19 eStat = MP_STAT_DLC_APPAREL_USED_19 BREAK CASE 20 eStat = MP_STAT_DLC_APPAREL_USED_20 BREAK CASE 21 eStat = MP_STAT_DLC_APPAREL_USED_21 BREAK CASE 22 eStat = MP_STAT_DLC_APPAREL_USED_22 BREAK CASE 23 eStat = MP_STAT_DLC_APPAREL_USED_23 BREAK CASE 24 eStat = MP_STAT_DLC_APPAREL_USED_24 BREAK CASE 25 eStat = MP_STAT_DLC_APPAREL_USED_25 BREAK CASE 26 eStat = MP_STAT_DLC_APPAREL_USED_26 BREAK CASE 27 eStat = MP_STAT_DLC_APPAREL_USED_27 BREAK CASE 28 eStat = MP_STAT_DLC_APPAREL_USED_28 BREAK CASE 29 eStat = MP_STAT_DLC_APPAREL_USED_29 BREAK CASE 30 eStat = MP_STAT_DLC_APPAREL_USED_30 BREAK CASE 31 eStat = MP_STAT_DLC_APPAREL_USED_31 BREAK CASE 32 eStat = MP_STAT_DLC_APPAREL_USED_32 BREAK CASE 33 eStat = MP_STAT_DLC_APPAREL_USED_33 BREAK CASE 34 eStat = MP_STAT_DLC_APPAREL_USED_34 BREAK CASE 35 eStat = MP_STAT_DLC_APPAREL_USED_35 BREAK CASE 36 eStat = MP_STAT_DLC_APPAREL_USED_36 BREAK CASE 37 eStat = MP_STAT_DLC_APPAREL_USED_37 BREAK CASE 38 eStat = MP_STAT_DLC_APPAREL_USED_38 BREAK CASE 39 eStat = MP_STAT_DLC_APPAREL_USED_39 BREAK CASE 40 eStat = MP_STAT_DLC_APPAREL_USED_40 BREAK CASE 41 eStat = MP_STAT_DLC_APPAREL_USED_41 BREAK CASE 42 eStat = MP_STAT_DLC_APPAREL_USED_42 BREAK CASE 43 eStat = MP_STAT_DLC_APPAREL_USED_43 BREAK CASE 44 eStat = MP_STAT_DLC_APPAREL_USED_44 BREAK CASE 45 eStat = MP_STAT_DLC_APPAREL_USED_45 BREAK CASE 46 eStat = MP_STAT_DLC_APPAREL_USED_46 BREAK CASE 47 eStat = MP_STAT_DLC_APPAREL_USED_47 BREAK CASE 48 eStat = MP_STAT_DLC_APPAREL_USED_48 BREAK CASE 49 eStat = MP_STAT_DLC_APPAREL_USED_49 BREAK CASE 50 eStat = MP_STAT_DLC_APPAREL_USED_50 BREAK CASE 51 eStat = MP_STAT_DLC_APPAREL_USED_51 BREAK CASE 52 eStat = MP_STAT_DLC_APPAREL_USED_52 BREAK CASE 53 eStat = MP_STAT_DLC_APPAREL_USED_53 BREAK CASE 54 eStat = MP_STAT_DLC_APPAREL_USED_54 BREAK CASE 55 eStat = MP_STAT_DLC_APPAREL_USED_55 BREAK CASE 56 eStat = MP_STAT_DLC_APPAREL_USED_56 BREAK CASE 57 eStat = MP_STAT_DLC_APPAREL_USED_57 BREAK CASE 58 eStat = MP_STAT_DLC_APPAREL_USED_58 BREAK CASE 59 eStat = MP_STAT_DLC_APPAREL_USED_59 BREAK CASE 60 eStat = MP_STAT_DLC_APPAREL_USED_60 BREAK CASE 61 eStat = MP_STAT_DLC_APPAREL_USED_61 BREAK CASE 62 eStat = MP_STAT_DLC_APPAREL_USED_62 BREAK CASE 63 eStat = MP_STAT_DLC_APPAREL_USED_63 BREAK CASE 64 eStat = MP_STAT_DLC_APPAREL_USED_64 BREAK CASE 65 eStat = MP_STAT_DLC_APPAREL_USED_65 BREAK CASE 66 eStat = MP_STAT_DLC_APPAREL_USED_66 BREAK CASE 67 eStat = MP_STAT_DLC_APPAREL_USED_67 BREAK CASE 68 eStat = MP_STAT_DLC_APPAREL_USED_68 BREAK CASE 69 eStat = MP_STAT_DLC_APPAREL_USED_69 BREAK CASE 70 eStat = MP_STAT_DLC_APPAREL_USED_70 BREAK CASE 71 eStat = MP_STAT_DLC_APPAREL_USED_71 BREAK CASE 72 eStat = MP_STAT_DLC_APPAREL_USED_72 BREAK CASE 73 eStat = MP_STAT_DLC_APPAREL_USED_73 BREAK CASE 74 eStat = MP_STAT_DLC_APPAREL_USED_74 BREAK CASE 75 eStat = MP_STAT_DLC_APPAREL_USED_75 BREAK CASE 76 eStat = MP_STAT_DLC_APPAREL_USED_76 BREAK CASE 77 eStat = MP_STAT_DLC_APPAREL_USED_77 BREAK CASE 78 eStat = MP_STAT_DLC_APPAREL_USED_78 BREAK CASE 79 eStat = MP_STAT_DLC_APPAREL_USED_79 BREAK CASE 80 eStat = MP_STAT_DLC_APPAREL_USED_80 BREAK CASE 81 eStat = MP_STAT_DLC_APPAREL_USED_81 BREAK CASE 82 eStat = MP_STAT_DLC_APPAREL_USED_82 BREAK CASE 83 eStat = MP_STAT_DLC_APPAREL_USED_83 BREAK CASE 84 eStat = MP_STAT_DLC_APPAREL_USED_84 BREAK CASE 85 eStat = MP_STAT_DLC_APPAREL_USED_85 BREAK CASE 86 eStat = MP_STAT_DLC_APPAREL_USED_86 BREAK CASE 87 eStat = MP_STAT_DLC_APPAREL_USED_87 BREAK CASE 88 eStat = MP_STAT_DLC_APPAREL_USED_88 BREAK CASE 89 eStat = MP_STAT_DLC_APPAREL_USED_89 BREAK CASE 90 eStat = MP_STAT_DLC_APPAREL_USED_90 BREAK CASE 91 eStat = MP_STAT_DLC_APPAREL_USED_91 BREAK CASE 92 eStat = MP_STAT_DLC_APPAREL_USED_92 BREAK CASE 93 eStat = MP_STAT_DLC_APPAREL_USED_93 BREAK CASE 94 eStat = MP_STAT_DLC_APPAREL_USED_94 BREAK CASE 95 eStat = MP_STAT_DLC_APPAREL_USED_95 BREAK CASE 96 eStat = MP_STAT_DLC_APPAREL_USED_96 BREAK CASE 97 eStat = MP_STAT_DLC_APPAREL_USED_97 BREAK CASE 98 eStat = MP_STAT_DLC_APPAREL_USED_98 BREAK CASE 99 eStat = MP_STAT_DLC_APPAREL_USED_99 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 100 eStat = MP_STAT_DLC_APPAREL_USED_100 BREAK CASE 101 eStat = MP_STAT_DLC_APPAREL_USED_101 BREAK CASE 102 eStat = MP_STAT_DLC_APPAREL_USED_102 BREAK CASE 103 eStat = MP_STAT_DLC_APPAREL_USED_103 BREAK CASE 104 eStat = MP_STAT_DLC_APPAREL_USED_104 BREAK CASE 105 eStat = MP_STAT_DLC_APPAREL_USED_105 BREAK CASE 106 eStat = MP_STAT_DLC_APPAREL_USED_106 BREAK CASE 107 eStat = MP_STAT_DLC_APPAREL_USED_107 BREAK CASE 108 eStat = MP_STAT_DLC_APPAREL_USED_108 BREAK CASE 109 eStat = MP_STAT_DLC_APPAREL_USED_109 BREAK CASE 110 eStat = MP_STAT_DLC_APPAREL_USED_110 BREAK CASE 111 eStat = MP_STAT_DLC_APPAREL_USED_111 BREAK CASE 112 eStat = MP_STAT_DLC_APPAREL_USED_112 BREAK CASE 113 eStat = MP_STAT_DLC_APPAREL_USED_113 BREAK CASE 114 eStat = MP_STAT_DLC_APPAREL_USED_114 BREAK CASE 115 eStat = MP_STAT_DLC_APPAREL_USED_115 BREAK CASE 116 eStat = MP_STAT_DLC_APPAREL_USED_116 BREAK CASE 117 eStat = MP_STAT_DLC_APPAREL_USED_117 BREAK CASE 118 eStat = MP_STAT_DLC_APPAREL_USED_118 BREAK CASE 119 eStat = MP_STAT_DLC_APPAREL_USED_119 BREAK CASE 120 eStat = MP_STAT_DLC_APPAREL_USED_120 BREAK CASE 121 eStat = MP_STAT_DLC_APPAREL_USED_121 BREAK CASE 122 eStat = MP_STAT_DLC_APPAREL_USED_122 BREAK CASE 123 eStat = MP_STAT_DLC_APPAREL_USED_123 BREAK CASE 124 eStat = MP_STAT_DLC_APPAREL_USED_124 BREAK CASE 125 eStat = MP_STAT_DLC_APPAREL_USED_125 BREAK CASE 126 eStat = MP_STAT_DLC_APPAREL_USED_126 BREAK CASE 127 eStat = MP_STAT_DLC_APPAREL_USED_127 BREAK CASE 128 eStat = MP_STAT_DLC_APPAREL_USED_128 BREAK CASE 129 eStat = MP_STAT_DLC_APPAREL_USED_129 BREAK CASE 130 eStat = MP_STAT_DLC_APPAREL_USED_130 BREAK CASE 131 eStat = MP_STAT_DLC_APPAREL_USED_131 BREAK CASE 132 eStat = MP_STAT_DLC_APPAREL_USED_132 BREAK CASE 133 eStat = MP_STAT_DLC_APPAREL_USED_133 BREAK CASE 134 eStat = MP_STAT_DLC_APPAREL_USED_134 BREAK CASE 135 eStat = MP_STAT_DLC_APPAREL_USED_135 BREAK CASE 136 eStat = MP_STAT_DLC_APPAREL_USED_136 BREAK CASE 137 eStat = MP_STAT_DLC_APPAREL_USED_137 BREAK CASE 138 eStat = MP_STAT_DLC_APPAREL_USED_138 BREAK CASE 139 eStat = MP_STAT_DLC_APPAREL_USED_139 BREAK CASE 140 eStat = MP_STAT_DLC_APPAREL_USED_140 BREAK CASE 141 eStat = MP_STAT_DLC_APPAREL_USED_141 BREAK CASE 142 eStat = MP_STAT_DLC_APPAREL_USED_142 BREAK CASE 143 eStat = MP_STAT_DLC_APPAREL_USED_143 BREAK CASE 144 eStat = MP_STAT_DLC_APPAREL_USED_144 BREAK CASE 145 eStat = MP_STAT_DLC_APPAREL_USED_145 BREAK CASE 146 eStat = MP_STAT_DLC_APPAREL_USED_146 BREAK CASE 147 eStat = MP_STAT_DLC_APPAREL_USED_147 BREAK CASE 148 eStat = MP_STAT_DLC_APPAREL_USED_148 BREAK CASE 149 eStat = MP_STAT_DLC_APPAREL_USED_149 BREAK CASE 150 eStat = MP_STAT_DLC_APPAREL_USED_150 BREAK CASE 151 eStat = MP_STAT_DLC_APPAREL_USED_151 BREAK CASE 152 eStat = MP_STAT_DLC_APPAREL_USED_152 BREAK CASE 153 eStat = MP_STAT_DLC_APPAREL_USED_153 BREAK CASE 154 eStat = MP_STAT_DLC_APPAREL_USED_154 BREAK CASE 155 eStat = MP_STAT_DLC_APPAREL_USED_155 BREAK CASE 156 eStat = MP_STAT_DLC_APPAREL_USED_156 BREAK CASE 157 eStat = MP_STAT_DLC_APPAREL_USED_157 BREAK CASE 158 eStat = MP_STAT_DLC_APPAREL_USED_158 BREAK CASE 159 eStat = MP_STAT_DLC_APPAREL_USED_159 BREAK CASE 160 eStat = MP_STAT_DLC_APPAREL_USED_160 BREAK CASE 161 eStat = MP_STAT_DLC_APPAREL_USED_161 BREAK CASE 162 eStat = MP_STAT_DLC_APPAREL_USED_162 BREAK CASE 163 eStat = MP_STAT_DLC_APPAREL_USED_163 BREAK CASE 164 eStat = MP_STAT_DLC_APPAREL_USED_164 BREAK CASE 165 eStat = MP_STAT_DLC_APPAREL_USED_165 BREAK CASE 166 eStat = MP_STAT_DLC_APPAREL_USED_166 BREAK CASE 167 eStat = MP_STAT_DLC_APPAREL_USED_167 BREAK CASE 168 eStat = MP_STAT_DLC_APPAREL_USED_168 BREAK CASE 169 eStat = MP_STAT_DLC_APPAREL_USED_169 BREAK CASE 170 eStat = MP_STAT_DLC_APPAREL_USED_170 BREAK CASE 171 eStat = MP_STAT_DLC_APPAREL_USED_171 BREAK CASE 172 eStat = MP_STAT_DLC_APPAREL_USED_172 BREAK CASE 173 eStat = MP_STAT_DLC_APPAREL_USED_173 BREAK CASE 174 eStat = MP_STAT_DLC_APPAREL_USED_174 BREAK CASE 175 eStat = MP_STAT_DLC_APPAREL_USED_175 BREAK CASE 176 eStat = MP_STAT_DLC_APPAREL_USED_176 BREAK CASE 177 eStat = MP_STAT_DLC_APPAREL_USED_177 BREAK CASE 178 eStat = MP_STAT_DLC_APPAREL_USED_178 BREAK CASE 179 eStat = MP_STAT_DLC_APPAREL_USED_179 BREAK CASE 180 eStat = MP_STAT_DLC_APPAREL_USED_180 BREAK CASE 181 eStat = MP_STAT_DLC_APPAREL_USED_181 BREAK CASE 182 eStat = MP_STAT_DLC_APPAREL_USED_182 BREAK CASE 183 eStat = MP_STAT_DLC_APPAREL_USED_183 BREAK CASE 184 eStat = MP_STAT_DLC_APPAREL_USED_184 BREAK CASE 185 eStat = MP_STAT_DLC_APPAREL_USED_185 BREAK CASE 186 eStat = MP_STAT_DLC_APPAREL_USED_186 BREAK CASE 187 eStat = MP_STAT_DLC_APPAREL_USED_187 BREAK CASE 188 eStat = MP_STAT_DLC_APPAREL_USED_188 BREAK CASE 189 eStat = MP_STAT_DLC_APPAREL_USED_189 BREAK CASE 190 eStat = MP_STAT_DLC_APPAREL_USED_190 BREAK CASE 191 eStat = MP_STAT_DLC_APPAREL_USED_191 BREAK CASE 192 eStat = MP_STAT_DLC_APPAREL_USED_192 BREAK CASE 193 eStat = MP_STAT_DLC_APPAREL_USED_193 BREAK CASE 194 eStat = MP_STAT_DLC_APPAREL_USED_194 BREAK CASE 195 eStat = MP_STAT_DLC_APPAREL_USED_195 BREAK CASE 196 eStat = MP_STAT_DLC_APPAREL_USED_196 BREAK CASE 197 eStat = MP_STAT_DLC_APPAREL_USED_197 BREAK CASE 198 eStat = MP_STAT_DLC_APPAREL_USED_198 BREAK CASE 199 eStat = MP_STAT_DLC_APPAREL_USED_199 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 200 eStat = MP_STAT_DLC_APPAREL_USED_200 BREAK CASE 201 eStat = MP_STAT_DLC_APPAREL_USED_201 BREAK CASE 202 eStat = MP_STAT_DLC_APPAREL_USED_202 BREAK CASE 203 eStat = MP_STAT_DLC_APPAREL_USED_203 BREAK CASE 204 eStat = MP_STAT_DLC_APPAREL_USED_204 BREAK CASE 205 eStat = MP_STAT_DLC_APPAREL_USED_205 BREAK CASE 206 eStat = MP_STAT_DLC_APPAREL_USED_206 BREAK CASE 207 eStat = MP_STAT_DLC_APPAREL_USED_207 BREAK CASE 208 eStat = MP_STAT_DLC_APPAREL_USED_208 BREAK CASE 209 eStat = MP_STAT_DLC_APPAREL_USED_209 BREAK CASE 210 eStat = MP_STAT_DLC_APPAREL_USED_210 BREAK CASE 211 eStat = MP_STAT_DLC_APPAREL_USED_211 BREAK CASE 212 eStat = MP_STAT_DLC_APPAREL_USED_212 BREAK CASE 213 eStat = MP_STAT_DLC_APPAREL_USED_213 BREAK CASE 214 eStat = MP_STAT_DLC_APPAREL_USED_214 BREAK CASE 215 eStat = MP_STAT_DLC_APPAREL_USED_215 BREAK CASE 216 eStat = MP_STAT_DLC_APPAREL_USED_216 BREAK CASE 217 eStat = MP_STAT_DLC_APPAREL_USED_217 BREAK CASE 218 eStat = MP_STAT_DLC_APPAREL_USED_218 BREAK CASE 219 eStat = MP_STAT_DLC_APPAREL_USED_219 BREAK CASE 220 eStat = MP_STAT_DLC_APPAREL_USED_220 BREAK CASE 221 eStat = MP_STAT_DLC_APPAREL_USED_221 BREAK CASE 222 eStat = MP_STAT_DLC_APPAREL_USED_222 BREAK CASE 223 eStat = MP_STAT_DLC_APPAREL_USED_223 BREAK CASE 224 eStat = MP_STAT_DLC_APPAREL_USED_224 BREAK CASE 225 eStat = MP_STAT_DLC_APPAREL_USED_225 BREAK CASE 226 eStat = MP_STAT_DLC_APPAREL_USED_226 BREAK CASE 227 eStat = MP_STAT_DLC_APPAREL_USED_227 BREAK CASE 228 eStat = MP_STAT_DLC_APPAREL_USED_228 BREAK CASE 229 eStat = MP_STAT_DLC_APPAREL_USED_229 BREAK CASE 230 eStat = MP_STAT_DLC_APPAREL_USED_230 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 231 eStat = MP_STAT_DLC_APPAREL_USED_231 BREAK CASE 232 eStat = MP_STAT_DLC_APPAREL_USED_232 BREAK CASE 233 eStat = MP_STAT_DLC_APPAREL_USED_233 BREAK CASE 234 eStat = MP_STAT_DLC_APPAREL_USED_234 BREAK CASE 235 eStat = MP_STAT_DLC_APPAREL_USED_235 BREAK CASE 236 eStat = MP_STAT_DLC_APPAREL_USED_236 BREAK CASE 237 eStat = MP_STAT_DLC_APPAREL_USED_237 BREAK CASE 238 eStat = MP_STAT_DLC_APPAREL_USED_238 BREAK CASE 239 eStat = MP_STAT_DLC_APPAREL_USED_239 BREAK CASE 240 eStat = MP_STAT_DLC_APPAREL_USED_240 BREAK CASE 241 eStat = MP_STAT_DLC_APPAREL_USED_241 BREAK CASE 242 eStat = MP_STAT_DLC_APPAREL_USED_242 BREAK CASE 243 eStat = MP_STAT_DLC_APPAREL_USED_243 BREAK CASE 244 eStat = MP_STAT_DLC_APPAREL_USED_244 BREAK CASE 245 eStat = MP_STAT_DLC_APPAREL_USED_245 BREAK CASE 246 eStat = MP_STAT_DLC_APPAREL_USED_246 BREAK CASE 247 eStat = MP_STAT_DLC_APPAREL_USED_247 BREAK CASE 248 eStat = MP_STAT_DLC_APPAREL_USED_248 BREAK CASE 249 eStat = MP_STAT_DLC_APPAREL_USED_249 BREAK CASE 250 eStat = MP_STAT_DLC_APPAREL_USED_250 BREAK ENDSWITCH SWITCH (FLOOR(TO_FLOAT(iDLCIndex)/32)) CASE 251 eStat = MP_STAT_DLC_APPAREL_USED_251 BREAK CASE 252 eStat = MP_STAT_DLC_APPAREL_USED_252 BREAK CASE 253 eStat = MP_STAT_DLC_APPAREL_USED_253 BREAK CASE 254 eStat = MP_STAT_DLC_APPAREL_USED_254 BREAK CASE 255 eStat = MP_STAT_DLC_APPAREL_USED_255 BREAK CASE 256 eStat = MP_STAT_DLC_APPAREL_USED_256 BREAK CASE 257 eStat = MP_STAT_DLC_APPAREL_USED_257 BREAK CASE 258 eStat = MP_STAT_DLC_APPAREL_USED_258 BREAK CASE 259 eStat = MP_STAT_DLC_APPAREL_USED_259 BREAK CASE 260 eStat = MP_STAT_DLC_APPAREL_USED_230 BREAK ENDSWITCH BREAK ENDSWITCH iBit = iDLCIndex%32 RETURN (eStat != MAX_NUM_MP_INT_STATS) #ENDIF ENDFUNC PROC SET_BIT_SHOP_PED_APPAREL_SCRIPT(INT nameHash, INT bitFlag, BOOL bCurrentPlayer = TRUE, BOOL bIsMale = TRUE, INT iSlot = -1) INT iStatSlot = g_iPedComponentSlot IF iSlot != -1 iStatSlot = iSlot ENDIF INT iBit MP_INT_STATS eStat IF GET_SHOP_PED_APPAREL_SAVE_DATA(nameHash, bitFlag, eStat, iBit, bCurrentPlayer, bIsMale) INT iStatValue = GET_MP_INT_CHARACTER_STAT(eStat, iStatSlot) SET_BIT(iStatValue, iBit) SET_MP_INT_CHARACTER_STAT(eStat, iStatValue, iStatSlot) ENDIF ENDPROC PROC CLEAR_BIT_SHOP_PED_APPAREL_SCRIPT(INT nameHash, INT bitFlag, BOOL bCurrentPlayer = TRUE, BOOL bIsMale = TRUE, INT iSlot = -1) INT iStatSlot = g_iPedComponentSlot IF iSlot != -1 iStatSlot = iSlot ENDIF INT iBit MP_INT_STATS eStat IF GET_SHOP_PED_APPAREL_SAVE_DATA(nameHash, bitFlag, eStat, iBit, bCurrentPlayer, bIsMale) INT iStatValue = GET_MP_INT_CHARACTER_STAT(eStat, iStatSlot) CLEAR_BIT(iStatValue, iBit) SET_MP_INT_CHARACTER_STAT(eStat, iStatValue, iStatSlot) ENDIF ENDPROC FUNC BOOL IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(INT nameHash, INT bitFlag, BOOL bCurrentPlayer = TRUE, BOOL bIsMale = TRUE, INT iSlot = -1) #IF IS_DEBUG_BUILD IF g_bAllClothesAcquired RETURN TRUE ENDIF #ENDIF INT iStatSlot = g_iPedComponentSlot IF iSlot != -1 iStatSlot = iSlot ENDIF INT iBit MP_INT_STATS eStat IF GET_SHOP_PED_APPAREL_SAVE_DATA(nameHash, bitFlag, eStat, iBit, bCurrentPlayer, bIsMale) INT iStatValue = GET_MP_INT_CHARACTER_STAT(eStat, iStatSlot) RETURN (IS_BIT_SET(iStatValue, iBit)) ENDIF RETURN FALSE ENDFUNC FUNC BOOL DOES_SHOP_PED_APPAREL_HAVE_ACQUIRED_SAVE_DATA(INT nameHash) INT iBit MP_INT_STATS eStat IF GET_SHOP_PED_APPAREL_SAVE_DATA(nameHash, PED_COMPONENT_ACQUIRED_SLOT, eStat, iBit) RETURN TRUE ENDIF RETURN FALSE ENDFUNC FUNC PED_COMP_TYPE_ENUM GET_FMM_COMP_TYPE_FROM_DLC_LABEL_HASH(INT labelHash) SWITCH labelHash // Beach CASE HASH("CLO_BBM_E_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_E_0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_E_0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_E_0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_E_0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_E_0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_E_0_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_H_1_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBM_F_0_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_2") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_3") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_4") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_5") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_6") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_7") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_8") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_9") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_10") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_F_0_11") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBM_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_0_11") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_1_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_L_2_11") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBM_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_2_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_2_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_2_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_U_2_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_W_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_W_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_W_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_W_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_W_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_T_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_T_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_T_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_T_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_T_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBM_T_2_2") RETURN COMP_TYPE_JBIB BREAK ENDSWITCH SWITCH labelHash // Business CASE HASH("CLO_BUSM_G0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G0_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_G1_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_F_0_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_2") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_3") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_4") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_5") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_6") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_7") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_8") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_9") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_10") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_0_11") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_2") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_3") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_4") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_5") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_6") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_7") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_8") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_9") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_10") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_F_1_11") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSM_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_11") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_0_12") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_11") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSM_L_1_12") RETURN COMP_TYPE_LEGS BREAK ENDSWITCH SWITCH labelHash CASE HASH("CLO_BUSM_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_4") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_5") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_6") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_7") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_8") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_9") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_10") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_11") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_0_12") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_4") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_5") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_6") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_7") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_8") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_9") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_10") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_11") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_12") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_13") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_1_14") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_4") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_5") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_6") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_7") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_8") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_9") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_10") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_11") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_T_2_12") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSM_W0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_W0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_W0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_W0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSM_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_1_12") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_2_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_3_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_0_12") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_12") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_13") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_14") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_S_1_15") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_4_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_4_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_4_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_5_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_5_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSM_U_5_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUS_M_O_0") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_1") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_2") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_3") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_4") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_5") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_6") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_7") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_8") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_9") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_10") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_11") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_12") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_13") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_14") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_15") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_16") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_17") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_18") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_19") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_20") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_21") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_22") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_23") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_M_O_24") RETURN COMP_TYPE_OUTFIT BREAK ENDSWITCH SWITCH labelHash // High-Life CASE HASH("CLO_HILF_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_0_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_0_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_0_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_L_1_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_HILF_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_0_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_1_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_2_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_U_3_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_S_2_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_HILF_O_0") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_1") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_2") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_3") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_4") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_5") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_6") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_28") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_7") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_8") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_9") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_10") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_11") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_12") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_13") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_29") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_14") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_15") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_16") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_17") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_18") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_19") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_20") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_30") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_21") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_22") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_23") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_24") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_25") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_26") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_27") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_HILF_O_31") RETURN COMP_TYPE_OUTFIT BREAK ENDSWITCH SWITCH labelHash // Valentines CASE HASH("CLO_VALM_F_0_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_VALM_F_0_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_VALM_F_1_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_VALM_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALM_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALM_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALM_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALM_L_1_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALM_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALM_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALM_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALM_T_0_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALM_T_0_4") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALM_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_U_2_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_0_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_S_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALM_H_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_VALM_H_0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_VALM_H_0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_VALM_B_0_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_VALM_B_0_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_VALM_B_0_2") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_VALM_B_1_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_VALM_B_1_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_VALM_B_1_2") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_VALM_B_2_0") RETURN COMP_TYPE_BERD BREAK ENDSWITCH SWITCH labelHash // Hipster CASE HASH("CLO_HP_U_0_0") RETURN COMP_TYPE_JBIB BREAK // Gray Striped T-Shirt CASE HASH("CLO_HP_U_1_0") RETURN COMP_TYPE_JBIB BREAK // Love Fist V Neck CASE HASH("CLO_HP_U_1_1") RETURN COMP_TYPE_JBIB BREAK // Blue Striped V Neck CASE HASH("CLO_HP_U_2_0") RETURN COMP_TYPE_JBIB BREAK // White Accent Sports Coat CASE HASH("CLO_HP_U_2_1") RETURN COMP_TYPE_JBIB BREAK // Woodland Camo Sports Coat CASE HASH("CLO_HP_U_2_2") RETURN COMP_TYPE_JBIB BREAK // Sky Blue Sports Coat CASE HASH("CLO_HP_U_2_3") RETURN COMP_TYPE_JBIB BREAK // Pink Sports Coat CASE HASH("CLO_HP_U_2_4") RETURN COMP_TYPE_JBIB BREAK // Leopard Sports Coat CASE HASH("CLO_HP_U_2_5") RETURN COMP_TYPE_JBIB BREAK // Lobster Sports Coat CASE HASH("CLO_HP_U_2_6") RETURN COMP_TYPE_JBIB BREAK // Cream Sports Coat CASE HASH("CLO_HP_U_3_0") RETURN COMP_TYPE_JBIB BREAK // Blue Banded Tank CASE HASH("CLO_HP_U_3_1") RETURN COMP_TYPE_JBIB BREAK // Lavender Tank CASE HASH("CLO_HP_U_3_2") RETURN COMP_TYPE_JBIB BREAK // Hot Pink Tank CASE HASH("CLO_HP_U_3_3") RETURN COMP_TYPE_JBIB BREAK // Camo Tank CASE HASH("CLO_HP_U_3_4") RETURN COMP_TYPE_JBIB BREAK // Yellow Striped Tank CASE HASH("CLO_HP_U_3_5") RETURN COMP_TYPE_JBIB BREAK // Gray Splatter Tank CASE HASH("CLO_HP_U_4_0") RETURN COMP_TYPE_JBIB BREAK // Chestnut Leather Jacket CASE HASH("CLO_HP_U_4_1") RETURN COMP_TYPE_JBIB BREAK // Brown Leather Jacket CASE HASH("CLO_HP_U_4_2") RETURN COMP_TYPE_JBIB BREAK // Russet Leather Jacket CASE HASH("CLO_HP_U_5_0") RETURN COMP_TYPE_JBIB BREAK // Charcoal Two-Tone Tee CASE HASH("CLO_HP_U_5_1") RETURN COMP_TYPE_JBIB BREAK // Camo Tee CASE HASH("CLO_HP_U_5_2") RETURN COMP_TYPE_JBIB BREAK // Pikeys Tee CASE HASH("CLO_HP_U_5_3") RETURN COMP_TYPE_JBIB BREAK // Yellow Tee CASE HASH("CLO_HP_U_5_4") RETURN COMP_TYPE_JBIB BREAK // Flower Fractal Tee CASE HASH("CLO_HP_U_6_0") RETURN COMP_TYPE_JBIB BREAK // Red Two-Tone Polo Shirt CASE HASH("CLO_HP_U_6_1") RETURN COMP_TYPE_JBIB BREAK // Navy Two-Tone Polo Shirt CASE HASH("CLO_HP_U_7_0") RETURN COMP_TYPE_JBIB BREAK // Red Vest CASE HASH("CLO_HP_U_7_1") RETURN COMP_TYPE_JBIB BREAK // Burgundy Vest CASE HASH("CLO_HP_U_8_0") RETURN COMP_TYPE_JBIB BREAK // Red Check Untucked CASE HASH("CLO_HP_U_8_1") RETURN COMP_TYPE_JBIB BREAK // Purple Plaid Untucked CASE HASH("CLO_HP_U_8_2") RETURN COMP_TYPE_JBIB BREAK // Earth Plaid Untucked CASE HASH("CLO_HP_U_8_3") RETURN COMP_TYPE_JBIB BREAK // Fruity Plaid Untucked CASE HASH("CLO_HP_U_9_0") RETURN COMP_TYPE_JBIB BREAK // Denim Shirt & Braces CASE HASH("CLO_HP_L_0_0") RETURN COMP_TYPE_LEGS BREAK // Midnight Camo Fitted CASE HASH("CLO_HP_L_0_1") RETURN COMP_TYPE_LEGS BREAK // Purple Fitted CASE HASH("CLO_HP_L_0_2") RETURN COMP_TYPE_LEGS BREAK // Dark Olive Fitted CASE HASH("CLO_HP_L_0_3") RETURN COMP_TYPE_LEGS BREAK // Green Fitted CASE HASH("CLO_HP_L_0_4") RETURN COMP_TYPE_LEGS BREAK // Blue Splatter Fitted CASE HASH("CLO_HP_L_0_5") RETURN COMP_TYPE_LEGS BREAK // Red Splatter Fitted CASE HASH("CLO_HP_L_0_6") RETURN COMP_TYPE_LEGS BREAK // Light Blue Fitted CASE HASH("CLO_HP_L_0_7") RETURN COMP_TYPE_LEGS BREAK // Mint Fitted CASE HASH("CLO_HP_L_0_8") RETURN COMP_TYPE_LEGS BREAK // Rocker Print Fitted CASE HASH("CLO_HP_L_0_9") RETURN COMP_TYPE_LEGS BREAK // Leopard Fitted CASE HASH("CLO_HP_L_0_10") RETURN COMP_TYPE_LEGS BREAK // Zebra Fitted CASE HASH("CLO_HP_L_0_11") RETURN COMP_TYPE_LEGS BREAK // Tartan Fitted CASE HASH("CLO_HP_L_1_0") RETURN COMP_TYPE_LEGS BREAK // Yellow Chinos CASE HASH("CLO_HP_L_1_1") RETURN COMP_TYPE_LEGS BREAK // Blue Chinos CASE HASH("CLO_HP_L_1_2") RETURN COMP_TYPE_LEGS BREAK // Orange Chinos CASE HASH("CLO_HP_L_1_3") RETURN COMP_TYPE_LEGS BREAK // White Chinos CASE HASH("CLO_HP_L_1_4") RETURN COMP_TYPE_LEGS BREAK // Red Chinos CASE HASH("CLO_HP_L_1_5") RETURN COMP_TYPE_LEGS BREAK // Baby Blue Chinos CASE HASH("CLO_HP_L_1_6") RETURN COMP_TYPE_LEGS BREAK // Fuchsia Chinos CASE HASH("CLO_HP_L_1_7") RETURN COMP_TYPE_LEGS BREAK // Mint Chinos CASE HASH("CLO_HP_L_1_8") RETURN COMP_TYPE_LEGS BREAK // Brown Chinos CASE HASH("CLO_HP_L_1_9") RETURN COMP_TYPE_LEGS BREAK // Dark Teal Chinos CASE HASH("CLO_HP_L_1_10") RETURN COMP_TYPE_LEGS BREAK // Green Chinos CASE HASH("CLO_HP_L_1_11") RETURN COMP_TYPE_LEGS BREAK // Lilac Chinos CASE HASH("CLO_HP_L_2_0") RETURN COMP_TYPE_LEGS BREAK // Black Slim Fit CASE HASH("CLO_HP_L_2_1") RETURN COMP_TYPE_LEGS BREAK // White Stripe Slim Fit CASE HASH("CLO_HP_L_2_2") RETURN COMP_TYPE_LEGS BREAK // Lobster Slim Fit CASE HASH("CLO_HP_L_2_3") RETURN COMP_TYPE_LEGS BREAK // Gray Slim Fit CASE HASH("CLO_HP_L_2_4") RETURN COMP_TYPE_LEGS BREAK // Olive Slim Fit CASE HASH("CLO_HP_L_2_5") RETURN COMP_TYPE_LEGS BREAK // Brown Slim Fit CASE HASH("CLO_HP_L_2_6") RETURN COMP_TYPE_LEGS BREAK // Light Gray Slim Fit CASE HASH("CLO_HP_L_2_7") RETURN COMP_TYPE_LEGS BREAK // Vintage Woven Slim Fit CASE HASH("CLO_HP_L_2_8") RETURN COMP_TYPE_LEGS BREAK // White Slim Fit CASE HASH("CLO_HP_L_2_9") RETURN COMP_TYPE_LEGS BREAK // Purple Slim Fit CASE HASH("CLO_HP_L_2_10") RETURN COMP_TYPE_LEGS BREAK // Slate Slim Fit CASE HASH("CLO_HP_L_2_11") RETURN COMP_TYPE_LEGS BREAK // Navy Slim Fit CASE HASH("CLO_HP_L_2_12") RETURN COMP_TYPE_LEGS BREAK // Leopard Slim Fit CASE HASH("CLO_HP_L_2_13") RETURN COMP_TYPE_LEGS BREAK // Navy Plaid Slim Fit CASE HASH("CLO_HP_L_2_14") RETURN COMP_TYPE_LEGS BREAK // Cream Slim Fit CASE HASH("CLO_HP_L_2_15") RETURN COMP_TYPE_LEGS BREAK // Cream Stripe Slim Fit ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_F_0_0") RETURN COMP_TYPE_FEET BREAK // Sky Blue Canvas Shoes CASE HASH("CLO_HP_F_0_1") RETURN COMP_TYPE_FEET BREAK // Green Canvas Shoes CASE HASH("CLO_HP_F_0_2") RETURN COMP_TYPE_FEET BREAK // Orange Canvas Shoes CASE HASH("CLO_HP_F_0_3") RETURN COMP_TYPE_FEET BREAK // Yellow Canvas Shoes CASE HASH("CLO_HP_F_0_4") RETURN COMP_TYPE_FEET BREAK // Purple Canvas Shoes CASE HASH("CLO_HP_F_0_5") RETURN COMP_TYPE_FEET BREAK // Gray Two-Tone Canvas Shoes CASE HASH("CLO_HP_F_0_6") RETURN COMP_TYPE_FEET BREAK // Checked Canvas Shoes CASE HASH("CLO_HP_F_0_7") RETURN COMP_TYPE_FEET BREAK // Camo Canvas Shoes CASE HASH("CLO_HP_F_0_8") RETURN COMP_TYPE_FEET BREAK // Coffee Canvas Shoes CASE HASH("CLO_HP_F_0_9") RETURN COMP_TYPE_FEET BREAK // Plaid Canvas Shoes CASE HASH("CLO_HP_F_0_10") RETURN COMP_TYPE_FEET BREAK // Green Checked Canvas Shoes CASE HASH("CLO_HP_F_0_11") RETURN COMP_TYPE_FEET BREAK // Tan Canvas Shoes CASE HASH("CLO_HP_F_1_0") RETURN COMP_TYPE_FEET BREAK // Yellow Soled Wingtips CASE HASH("CLO_HP_F_1_1") RETURN COMP_TYPE_FEET BREAK // Navy Wingtips CASE HASH("CLO_HP_F_1_2") RETURN COMP_TYPE_FEET BREAK // Orange Soled Wingtips CASE HASH("CLO_HP_F_1_3") RETURN COMP_TYPE_FEET BREAK // Burgundy Wingtips CASE HASH("CLO_HP_F_1_4") RETURN COMP_TYPE_FEET BREAK // Blue Soled Wingtips CASE HASH("CLO_HP_F_1_5") RETURN COMP_TYPE_FEET BREAK // Woodland Camo Wingtips CASE HASH("CLO_HP_F_1_6") RETURN COMP_TYPE_FEET BREAK // Black Wingtips CASE HASH("CLO_HP_F_1_7") RETURN COMP_TYPE_FEET BREAK // Gentleman Wingtips CASE HASH("CLO_HP_F_1_8") RETURN COMP_TYPE_FEET BREAK // Pink Soled Wingtips CASE HASH("CLO_HP_F_1_9") RETURN COMP_TYPE_FEET BREAK // Brown Wingtips CASE HASH("CLO_HP_F_1_10") RETURN COMP_TYPE_FEET BREAK // Chocolate Wingtips CASE HASH("CLO_HP_F_1_11") RETURN COMP_TYPE_FEET BREAK // Green Soled Wingtips CASE HASH("CLO_HP_F_1_12") RETURN COMP_TYPE_FEET BREAK // Ash Wingtips CASE HASH("CLO_HP_F_1_13") RETURN COMP_TYPE_FEET BREAK // Olive Wingtips CASE HASH("CLO_HP_F_1_14") RETURN COMP_TYPE_FEET BREAK // Gray Wingtips CASE HASH("CLO_HP_F_1_15") RETURN COMP_TYPE_FEET BREAK // Yellow Wingtips CASE HASH("CLO_HP_T_0_0") RETURN COMP_TYPE_TEETH BREAK // White Scarf CASE HASH("CLO_HP_T_0_1") RETURN COMP_TYPE_TEETH BREAK // Gray Scarf CASE HASH("CLO_HP_T_0_2") RETURN COMP_TYPE_TEETH BREAK // Black Scarf CASE HASH("CLO_HP_T_0_3") RETURN COMP_TYPE_TEETH BREAK // Navy Scarf CASE HASH("CLO_HP_T_0_4") RETURN COMP_TYPE_TEETH BREAK // Red Scarf CASE HASH("CLO_HP_T_0_5") RETURN COMP_TYPE_TEETH BREAK // Green Scarf CASE HASH("CLO_HP_W_0_0") RETURN COMP_TYPE_PROPS BREAK // Red LED, White Strap CASE HASH("CLO_HP_W_0_1") RETURN COMP_TYPE_PROPS BREAK // Red LED, Brown Strap CASE HASH("CLO_HP_W_0_2") RETURN COMP_TYPE_PROPS BREAK // White LED, Gold Strap CASE HASH("CLO_HP_W_0_3") RETURN COMP_TYPE_PROPS BREAK // Yellow LED, Yellow Strap CASE HASH("CLO_HP_G_0_0") RETURN COMP_TYPE_PROPS BREAK // Black & Gold Trends CASE HASH("CLO_HP_G_0_1") RETURN COMP_TYPE_PROPS BREAK // Black & Silver Trends CASE HASH("CLO_HP_G_0_2") RETURN COMP_TYPE_PROPS BREAK // Silver Dipped Trends CASE HASH("CLO_HP_G_0_3") RETURN COMP_TYPE_PROPS BREAK // Green Trends CASE HASH("CLO_HP_G_0_4") RETURN COMP_TYPE_PROPS BREAK // Crimson Trends CASE HASH("CLO_HP_G_0_5") RETURN COMP_TYPE_PROPS BREAK // Orange Dipped Trends CASE HASH("CLO_HP_G_0_6") RETURN COMP_TYPE_PROPS BREAK // Gray Trends CASE HASH("CLO_HP_G_0_7") RETURN COMP_TYPE_PROPS BREAK // White & Gold Trends CASE HASH("CLO_HP_G_1_0") RETURN COMP_TYPE_PROPS BREAK // Sunset Docks CASE HASH("CLO_HP_G_1_1") RETURN COMP_TYPE_PROPS BREAK // Brown Docks CASE HASH("CLO_HP_G_1_2") RETURN COMP_TYPE_PROPS BREAK // Black Docks CASE HASH("CLO_HP_G_1_3") RETURN COMP_TYPE_PROPS BREAK // Checked Docks CASE HASH("CLO_HP_G_1_4") RETURN COMP_TYPE_PROPS BREAK // White Docks CASE HASH("CLO_HP_G_1_5") RETURN COMP_TYPE_PROPS BREAK // Red Docks CASE HASH("CLO_HP_G_1_6") RETURN COMP_TYPE_PROPS BREAK // Crimson Docks CASE HASH("CLO_HP_G_1_7") RETURN COMP_TYPE_PROPS BREAK // Yellow Docks CASE HASH("CLO_HP_H_0_0") RETURN COMP_TYPE_PROPS BREAK // Blue Saggy Beanie CASE HASH("CLO_HP_H_0_1") RETURN COMP_TYPE_PROPS BREAK // White Saggy Beanie CASE HASH("CLO_HP_H_0_2") RETURN COMP_TYPE_PROPS BREAK // Red Saggy Beanie CASE HASH("CLO_HP_H_0_3") RETURN COMP_TYPE_PROPS BREAK // Lime Saggy Beanie CASE HASH("CLO_HP_H_0_4") RETURN COMP_TYPE_PROPS BREAK // Purple Saggy Beanie CASE HASH("CLO_HP_H_0_5") RETURN COMP_TYPE_PROPS BREAK // Yellow Saggy Beanie CASE HASH("CLO_HP_H_1_0") RETURN COMP_TYPE_PROPS BREAK // Gray Trilby CASE HASH("CLO_HP_H_1_1") RETURN COMP_TYPE_PROPS BREAK // Black Trilby CASE HASH("CLO_HP_H_1_2") RETURN COMP_TYPE_PROPS BREAK // White Trilby CASE HASH("CLO_HP_H_1_3") RETURN COMP_TYPE_PROPS BREAK // Cream Trilby CASE HASH("CLO_HP_H_1_4") RETURN COMP_TYPE_PROPS BREAK // Red Trilby CASE HASH("CLO_HP_H_1_5") RETURN COMP_TYPE_PROPS BREAK // Black & Red Trilby CASE HASH("CLO_HP_H_1_6") RETURN COMP_TYPE_PROPS BREAK // Brown Trilby CASE HASH("CLO_HP_H_1_7") RETURN COMP_TYPE_PROPS BREAK // Blue Trilby CASE HASH("CLO_HP_H_2_0") RETURN COMP_TYPE_PROPS BREAK // Red Fedora CASE HASH("CLO_HP_H_2_1") RETURN COMP_TYPE_PROPS BREAK // Pink Fedora ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_D_0") RETURN COMP_TYPE_DECL BREAK // Skinny Tie T-Shirt CASE HASH("CLO_HP_D_1") RETURN COMP_TYPE_DECL BREAK // Hipsters Do It Fixed T-Shirt CASE HASH("CLO_HP_D_2") RETURN COMP_TYPE_DECL BREAK // Interlock T-Shirt CASE HASH("CLO_HP_D_3") RETURN COMP_TYPE_DECL BREAK // Dream Catcher T-Shirt CASE HASH("CLO_HP_D_4") RETURN COMP_TYPE_DECL BREAK // Mustache T-Shirt CASE HASH("CLO_HP_D_5") RETURN COMP_TYPE_DECL BREAK // Gentleman T-Shirt CASE HASH("CLO_HP_D_6") RETURN COMP_TYPE_DECL BREAK // Bow & Braces T-Shirt CASE HASH("CLO_HP_D_7") RETURN COMP_TYPE_DECL BREAK // LSSA T-Shirt CASE HASH("CLO_HP_D_8") RETURN COMP_TYPE_DECL BREAK // Rainbow Yeah T-Shirt CASE HASH("CLO_HP_D_9") RETURN COMP_TYPE_DECL BREAK // Waves T-Shirt CASE HASH("CLO_HP_D_10") RETURN COMP_TYPE_DECL BREAK // Cat T-Shirt CASE HASH("CLO_HP_D_11") RETURN COMP_TYPE_DECL BREAK // Scratch T-Shirt CASE HASH("CLO_HP_D_12") RETURN COMP_TYPE_DECL BREAK // Pyramid T-Shirt CASE HASH("CLO_HP_D_13") RETURN COMP_TYPE_DECL BREAK // Hero T-Shirt CASE HASH("CLO_HP_D_14") RETURN COMP_TYPE_DECL BREAK // Oeuf T-Shirt CASE HASH("CLO_HP_D_15") RETURN COMP_TYPE_DECL BREAK // Chimp T-Shirt CASE HASH("CLO_HP_D_16") RETURN COMP_TYPE_DECL BREAK // Monkey T-Shirt CASE HASH("CLO_HP_D_17") RETURN COMP_TYPE_DECL BREAK // Wild Cat T-Shirt CASE HASH("CLO_HP_D_18") RETURN COMP_TYPE_DECL BREAK // Bear T-Shirt CASE HASH("CLO_HP_D_19") RETURN COMP_TYPE_DECL BREAK // Cassette T-Shirt CASE HASH("CLO_HP_D_20") RETURN COMP_TYPE_DECL BREAK // Stag T-Shirt CASE HASH("CLO_HP_D_21") RETURN COMP_TYPE_DECL BREAK // Sunglasses T-Shirt CASE HASH("CLO_HP_D_22") RETURN COMP_TYPE_DECL BREAK // Illusion T-Shirt CASE HASH("CLO_HP_B_0_0") RETURN COMP_TYPE_BERD BREAK // Gray Cat CASE HASH("CLO_HP_B_0_1") RETURN COMP_TYPE_BERD BREAK // Tabby Cat CASE HASH("CLO_HP_B_1_0") RETURN COMP_TYPE_BERD BREAK // Red Fox CASE HASH("CLO_HP_B_1_1") RETURN COMP_TYPE_BERD BREAK // Brown Fox CASE HASH("CLO_HP_B_2_0") RETURN COMP_TYPE_BERD BREAK // Brown Owl CASE HASH("CLO_HP_B_2_1") RETURN COMP_TYPE_BERD BREAK // White Owl CASE HASH("CLO_HP_B_3_0") RETURN COMP_TYPE_BERD BREAK // Gray Racoon CASE HASH("CLO_HP_B_3_1") RETURN COMP_TYPE_BERD BREAK // Black Racoon CASE HASH("CLO_HP_O_0") RETURN COMP_TYPE_OUTFIT BREAK // The Eco CASE HASH("CLO_HP_O_1") RETURN COMP_TYPE_OUTFIT BREAK // The Ironic CASE HASH("CLO_HP_O_2") RETURN COMP_TYPE_OUTFIT BREAK // The Aficionado CASE HASH("CLO_HP_O_3") RETURN COMP_TYPE_OUTFIT BREAK // The Natural CASE HASH("CLO_HP_O_4") RETURN COMP_TYPE_OUTFIT BREAK // The Pop Up CASE HASH("CLO_HP_O_5") RETURN COMP_TYPE_OUTFIT BREAK // The Artist CASE HASH("CLO_HP_O_6") RETURN COMP_TYPE_OUTFIT BREAK // The Elitist CASE HASH("CLO_HP_O_7") RETURN COMP_TYPE_OUTFIT BREAK // The Activist CASE HASH("CLO_HP_O_8") RETURN COMP_TYPE_OUTFIT BREAK // The Urban Hippy CASE HASH("CLO_HP_O_9") RETURN COMP_TYPE_OUTFIT BREAK // The Fitness ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_D_23") RETURN COMP_TYPE_DECL BREAK // Base5 T-Shirt CASE HASH("CLO_HP_D_24") RETURN COMP_TYPE_DECL BREAK // Bitch'n' Dog Food T-Shirt CASE HASH("CLO_HP_D_25") RETURN COMP_TYPE_DECL BREAK // BOBO T-Shirt CASE HASH("CLO_HP_D_26") RETURN COMP_TYPE_DECL BREAK // Crocs Bar T-Shirt CASE HASH("CLO_HP_D_27") RETURN COMP_TYPE_DECL BREAK // Emotion 98.3 T-Shirt CASE HASH("CLO_HP_D_28") RETURN COMP_TYPE_DECL BREAK // Fever 105 T-Shirt CASE HASH("CLO_HP_D_29") RETURN COMP_TYPE_DECL BREAK // Flash FM T-Shirt CASE HASH("CLO_HP_D_30") RETURN COMP_TYPE_DECL BREAK // Vinyl Countdown T-Shirt CASE HASH("CLO_HP_D_31") RETURN COMP_TYPE_DECL BREAK // Homies Sharp T-Shirt CASE HASH("CLO_HP_D_32") RETURN COMP_TYPE_DECL BREAK // KDST T-Shirt CASE HASH("CLO_HP_D_33") RETURN COMP_TYPE_DECL BREAK // Vivisection T-Shirt CASE HASH("CLO_HP_D_34") RETURN COMP_TYPE_DECL BREAK // KJAH Radio T-Shirt CASE HASH("CLO_HP_D_35") RETURN COMP_TYPE_DECL BREAK // Bounce FM T-Shirt CASE HASH("CLO_HP_D_36") RETURN COMP_TYPE_DECL BREAK // K-Rose T-Shirt CASE HASH("CLO_HP_D_37") RETURN COMP_TYPE_DECL BREAK // Green T-Shirt CASE HASH("CLO_HP_D_38") RETURN COMP_TYPE_DECL BREAK // Yellow T-Shirt CASE HASH("CLO_HP_D_39") RETURN COMP_TYPE_DECL BREAK // Lilac T-Shirt CASE HASH("CLO_HP_D_40") RETURN COMP_TYPE_DECL BREAK // Grey T-Shirt CASE HASH("TOURNAMENT_1_P1") RETURN COMP_TYPE_DECL BREAK // Tournament Participant 1 CASE HASH("TOURNAMENT_1_P2") RETURN COMP_TYPE_DECL BREAK // Tournament Participant 2 CASE HASH("TOURNAMENT_1_W1") RETURN COMP_TYPE_DECL BREAK // Tournament Winner 1 CASE HASH("TOURNAMENT_1_W2") RETURN COMP_TYPE_DECL BREAK // Tournament Winner 2 CASE HASH("RSTAR_DEV_0") RETURN COMP_TYPE_DECL BREAK // Rockstar Dev White CASE HASH("RSTAR_DEV_1") RETURN COMP_TYPE_DECL BREAK // Rockstar Dev Black CASE HASH("RSTAR_DEV_2") RETURN COMP_TYPE_DECL BREAK // Rockstar Dev Gray ENDSWITCH // MALE INDEPENDENCE DAY SWITCH labelHash CASE HASH("CLO_INDM_O_0") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDM_O_1") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDM_O_2") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDM_O_3") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDM_O_4") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDM_B_0_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_0_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_1_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_1_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_2_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_2_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_3_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_3_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_4_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_4_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_5_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDM_B_5_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_IND_H_0_0") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_IND_H_0_1") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_IND_H_0_2") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_IND_H_0_3") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_IND_H_0_4") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_INDM_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_INDM_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_INDM_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_INDM_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_INDM_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_INDM_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_INDM_S_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_S_0_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_D_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDM_G_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_G_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_2_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_2_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_3_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_4_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_5_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_6_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_6_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_6_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_6_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_6_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDM_HT_6_5") RETURN COMP_TYPE_PROPS BREAK ENDSWITCH // Decal shirts for Independence Day Special. SWITCH labelHash CASE HASH("CLO_INDM_D_1") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_2") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_3") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_4") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_5") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_6") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_7") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_8") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_9") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_10") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_11") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_12") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_13") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_14") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_15") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_16") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_17") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_18") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_19") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_20") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_21") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_22") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_23") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_24") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_25") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_26") RETURN COMP_TYPE_DECL BREAK ENDSWITCH // Pilot school SWITCH labelHash CASE HASH("CLO_PIM_B_0_0") RETURN COMP_TYPE_BERD BREAK // Flight cap CASE HASH("CLO_PIM_HT_0_0") RETURN COMP_TYPE_PROPS BREAK // Flight Helmet CASE HASH("CLO_PIM_O_0") RETURN COMP_TYPE_OUTFIT BREAK // Flight Suit CASE HASH("CLO_PIM_D_1") RETURN COMP_TYPE_DECL BREAK // Elitas T-shirt ENDSWITCH // LTS CREATOR SWITCH labelHash CASE HASH("CLO_LTSMB_0_0") RETURN COMP_TYPE_BERD BREAK // Black Combat Mask CASE HASH("CLO_LTSMB_0_1") RETURN COMP_TYPE_BERD BREAK // Gray Combat Mask CASE HASH("CLO_LTSMB_0_2") RETURN COMP_TYPE_BERD BREAK // Charcoal Combat Mask CASE HASH("CLO_LTSMB_0_3") RETURN COMP_TYPE_BERD BREAK // Tan Combat Mask CASE HASH("CLO_LTSMB_0_4") RETURN COMP_TYPE_BERD BREAK // Forest Combat Mask CASE HASH("CLO_LTSMB_1_0") RETURN COMP_TYPE_BERD BREAK // Black Skeletal CASE HASH("CLO_LTSMB_1_1") RETURN COMP_TYPE_BERD BREAK // Gray Skeletal CASE HASH("CLO_LTSMB_1_2") RETURN COMP_TYPE_BERD BREAK // Charcoal Skeletal CASE HASH("CLO_LTSMB_1_3") RETURN COMP_TYPE_BERD BREAK // Tan Skeletal CASE HASH("CLO_LTSMB_1_4") RETURN COMP_TYPE_BERD BREAK // Forest Skeletal CASE HASH("CLO_LTSMB_2_0") RETURN COMP_TYPE_BERD BREAK // Please Stop Me Hockey CASE HASH("CLO_LTSMH_0_0") RETURN COMP_TYPE_PROPS BREAK // Black Bulletproof CASE HASH("CLO_LTSMH_0_1") RETURN COMP_TYPE_PROPS BREAK // Gray Bulletproof CASE HASH("CLO_LTSMH_0_2") RETURN COMP_TYPE_PROPS BREAK // Charcoal Bulletproof CASE HASH("CLO_LTSMH_0_3") RETURN COMP_TYPE_PROPS BREAK // Tan Bulletproof CASE HASH("CLO_LTSMH_0_4") RETURN COMP_TYPE_PROPS BREAK // Forest Bulletproof CASE HASH("CLO_LTSML_0_0") RETURN COMP_TYPE_LEGS BREAK // Black Combat Pants CASE HASH("CLO_LTSML_0_1") RETURN COMP_TYPE_LEGS BREAK // Gray Combat Pants CASE HASH("CLO_LTSML_0_2") RETURN COMP_TYPE_LEGS BREAK // Charcoal Combat Pants CASE HASH("CLO_LTSML_0_3") RETURN COMP_TYPE_LEGS BREAK // Tan Combat Pants CASE HASH("CLO_LTSML_0_4") RETURN COMP_TYPE_LEGS BREAK // Forest Combat Pants CASE HASH("CLO_LTSMU_0_0") RETURN COMP_TYPE_JBIB BREAK // Black Combat Top CASE HASH("CLO_LTSMU_0_1") RETURN COMP_TYPE_JBIB BREAK // Gray Combat Top CASE HASH("CLO_LTSMU_0_2") RETURN COMP_TYPE_JBIB BREAK // Charcoal Combat Top CASE HASH("CLO_LTSMU_0_3") RETURN COMP_TYPE_JBIB BREAK // Tan Combat Top CASE HASH("CLO_LTSMU_0_4") RETURN COMP_TYPE_JBIB BREAK // Forest Combat Top CASE HASH("CLO_LTSMT_0_0") RETURN COMP_TYPE_TORSO BREAK // Black Tact Gloves CASE HASH("CLO_LTSMT_0_1") RETURN COMP_TYPE_TORSO BREAK // Gray Tact Gloves CASE HASH("CLO_LTSMT_0_2") RETURN COMP_TYPE_TORSO BREAK // Charcoal Tact Gloves CASE HASH("CLO_LTSMT_0_3") RETURN COMP_TYPE_TORSO BREAK // Tan Tact Gloves CASE HASH("CLO_LTSMT_0_4") RETURN COMP_TYPE_TORSO BREAK // Forest Tact Gloves CASE HASH("CLO_LTSMT_1_0") RETURN COMP_TYPE_TORSO BREAK // Black Wool Gloves CASE HASH("CLO_LTSMT_1_1") RETURN COMP_TYPE_TORSO BREAK // Gray Wool Gloves CASE HASH("CLO_LTSMT_1_2") RETURN COMP_TYPE_TORSO BREAK // Charcoal Wool Gloves CASE HASH("CLO_LTSMT_1_3") RETURN COMP_TYPE_TORSO BREAK // Tan Wool Gloves CASE HASH("CLO_LTSMT_1_4") RETURN COMP_TYPE_TORSO BREAK // Forest Wool Gloves CASE HASH("CLO_LTSM_D_1") RETURN COMP_TYPE_DECL BREAK ENDSWITCH // CHRISTMAS2 SWITCH labelHash CASE HASH("CLO_X2M_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2M_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2M_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2M_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2M_T_0_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2M_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2M_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2M_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2M_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2M_HT_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_0_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_2_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_2_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_2_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_2_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_3_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_3_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_3_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_3_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_4_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_HT_5_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2M_B_0_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2M_B_1_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2M_B_2_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2M_B_3_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2M_B_3_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2M_B_3_2") RETURN COMP_TYPE_BERD BREAK ENDSWITCH // LUXE SWITCH labelHash CASE HASH("CLO_LXM_DEC_29") CASE HASH("CLO_LXM_DEC_30") CASE HASH("CLO_LXM_DEC_31") CASE HASH("CLO_LXM_DEC_32") CASE HASH("CLO_LXM_DEC_33") CASE HASH("CLO_LXM_DEC_34") CASE HASH("CLO_LXM_DEC_35") CASE HASH("CLO_LXM_DEC_36") CASE HASH("CLO_LXM_DEC_37") CASE HASH("CLO_LXM_DEC_38") CASE HASH("CLO_VEM_DEC_39") CASE HASH("CLO_VEM_DEC_40") CASE HASH("CLO_VEM_DEC_41") CASE HASH("CLO_VEM_DEC_42") CASE HASH("CLO_VEM_DEC_43") CASE HASH("CLO_VEM_DEC_44") CASE HASH("CLO_VEM_DEC_45") CASE HASH("CLO_VEM_DEC_46") CASE HASH("CLO_VEM_DEC_47") CASE HASH("CLO_VEM_DEC_48") RETURN COMP_TYPE_DECL BREAK ENDSWITCH //HALLOWEEN SWITCH labelHash CASE HASH("CLO_HALM_D_0") CASE HASH("CLO_HALM_D_1") CASE HASH("CLO_HALM_D_2") CASE HASH("CLO_HALM_D_3") CASE HASH("CLO_HALM_D_4") CASE HASH("CLO_HALM_D_5") CASE HASH("CLO_HALM_D_6") CASE HASH("CLO_HALM_D_7") CASE HASH("CLO_HALM_D_8") CASE HASH("CLO_HALM_D_9") CASE HASH("CLO_HALM_D_10") CASE HASH("CLO_HALM_D_11") CASE HASH("CLO_HALM_D_12") RETURN COMP_TYPE_DECL BREAK ENDSWITCH // LOWRIDER SWITCH labelHash CASE HASH("CLO_S1M_PH_1_0") CASE HASH("CLO_S1M_PH_1_1") CASE HASH("CLO_S1M_PH_1_2") CASE HASH("CLO_S1M_PH_1_3") CASE HASH("CLO_S1M_PH_1_4") CASE HASH("CLO_S1M_PH_1_5") CASE HASH("CLO_S1M_PH_1_6") CASE HASH("CLO_S1M_PH_1_7") CASE HASH("CLO_S1M_PH_1_8") CASE HASH("CLO_S1M_PH_1_9") RETURN COMP_TYPE_PROPS BREAK ENDSWITCH // BIKER SWITCH labelHash CASE HASH("CLO_BIM_DECL_50") CASE HASH("CLO_BIM_DECL_49") CASE HASH("CLO_BIM_DECL_48") CASE HASH("CLO_BIM_DECL_47") CASE HASH("CLO_BIM_DECL_22") CASE HASH("CLO_BIM_DECL_23") CASE HASH("CLO_BIM_DECL_25") CASE HASH("CLO_BIM_DECL_24") CASE HASH("CLO_BIM_DECL_51") CASE HASH("CLO_BIM_DECL_52") CASE HASH("CLO_BIM_DECL_53") CASE HASH("CLO_BIM_DECL_54") CASE HASH("CLO_BIM_DECL_55") CASE HASH("CLO_BIM_DECL_58") CASE HASH("CLO_BIM_DECL_59") CASE HASH("CLO_BIM_DECL_60") CASE HASH("CLO_BIM_DECL_61") CASE HASH("CLO_BIM_DECL_62") CASE HASH("CLO_BIM_DECL_63") CASE HASH("CLO_BIM_DECL_64") CASE HASH("CLO_BIM_DECL_65") CASE HASH("CLO_BIM_DECL_66") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_D_26") CASE HASH("CLO_HP_D_27") CASE HASH("CLO_HP_D_26") CASE HASH("CLO_HP_D_23") CASE HASH("CLO_HP_D_25") CASE HASH("CLO_HP_D_24") CASE HASH("CLO_HP_D_34") CASE HASH("CLO_HP_D_33") CASE HASH("CLO_HP_D_36") CASE HASH("CLO_HP_D_29") CASE HASH("CLO_HP_D_30") CASE HASH("CLO_HP_D_28") CASE HASH("CLO_LTSM_D_1") CASE HASH("CLO_HP_D_32") CASE HASH("CLO_HP_D_35") CASE HASH("CLO_HP_D_31") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDM_HT_6_4") CASE HASH("CLO_INDM_HT_6_2") CASE HASH("CLO_INDM_HT_6_0") CASE HASH("CLO_INDM_HT_6_1") CASE HASH("CLO_INDM_HT_6_3") CASE HASH("CLO_INDM_HT_6_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_LTSMB_2_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_LXM_DEC_37") CASE HASH("CLO_LXM_DEC_35") CASE HASH("CLO_LXM_DEC_29") CASE HASH("CLO_LXM_DEC_34") CASE HASH("CLO_LXM_DEC_32") CASE HASH("CLO_LXM_DEC_30") CASE HASH("CLO_LXM_DEC_33") CASE HASH("CLO_LXM_DEC_38") CASE HASH("CLO_LXM_DEC_31") CASE HASH("CLO_LXM_DEC_36") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_VEM_DEC_40") CASE HASH("CLO_VEM_DEC_39") CASE HASH("CLO_VEM_DEC_41") CASE HASH("CLO_VEM_DEC_42") CASE HASH("CLO_VEM_DEC_43") CASE HASH("CLO_VEM_DEC_44") CASE HASH("CLO_VEM_DEC_45") CASE HASH("CLO_VEM_DEC_46") CASE HASH("CLO_VEM_DEC_47") CASE HASH("CLO_VEM_DEC_48") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_S1M_PH_1_0") CASE HASH("CLO_S1M_PH_1_2") CASE HASH("CLO_S1M_PH_1_4") CASE HASH("CLO_S1M_PH_1_7") CASE HASH("CLO_S1M_PH_1_1") CASE HASH("CLO_S1M_PH_1_8") CASE HASH("CLO_S1M_PH_1_3") CASE HASH("CLO_S1M_PH_1_9") CASE HASH("CLO_S1M_PH_1_5") CASE HASH("CLO_S1M_PH_1_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_HALM_D_12") CASE HASH("CLO_HALM_D_1") CASE HASH("CLO_HALM_D_5") CASE HASH("CLO_HALM_D_0") CASE HASH("CLO_HALM_D_9") CASE HASH("CLO_HALM_D_6") CASE HASH("CLO_HALM_D_3") CASE HASH("CLO_HALM_D_7") CASE HASH("CLO_HALM_D_4") CASE HASH("CLO_HALM_D_10") CASE HASH("CLO_HALM_D_2") CASE HASH("CLO_HALM_D_8") CASE HASH("CLO_HALM_D_11") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_EXM_DECL_2") CASE HASH("CLO_EXM_DECL_3") CASE HASH("CLO_EXM_DECL_4") CASE HASH("CLO_EXM_DECL_5") CASE HASH("CLO_EXM_DECL_6") CASE HASH("CLO_EXM_DECL_7") CASE HASH("CLO_EXM_DECL_8") CASE HASH("CLO_EXM_DECL_9") CASE HASH("CLO_EXM_DECL_10") CASE HASH("CLO_EXM_DECL_11") CASE HASH("CLO_EXM_DECL_12") CASE HASH("CLO_EXM_DECL_13") CASE HASH("CLO_EXM_DECL_14") CASE HASH("CLO_EXM_DECL_15") CASE HASH("CLO_EXM_DECL_16") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_EXM_EU_15_0") CASE HASH("CLO_EXM_EU_15_1") CASE HASH("CLO_EXM_EU_15_2") CASE HASH("CLO_EXM_EU_15_3") CASE HASH("CLO_EXM_EU_15_4") CASE HASH("CLO_EXM_EU_15_5") CASE HASH("CLO_EXM_EU_15_6") CASE HASH("CLO_EXM_EU_15_7") CASE HASH("CLO_EXM_EU_15_8") CASE HASH("CLO_EXM_EU_15_9") CASE HASH("CLO_EXM_EU_1510") CASE HASH("CLO_EXM_EU_1511") CASE HASH("CLO_EXM_EU_1512") CASE HASH("CLO_EXM_EU_1513") CASE HASH("CLO_EXM_EU_16_0") CASE HASH("CLO_EXM_EU_16_1") CASE HASH("CLO_EXM_EU_16_2") CASE HASH("CLO_EXM_EU_16_3") CASE HASH("CLO_EXM_EU_16_4") CASE HASH("CLO_EXM_EU_16_5") CASE HASH("CLO_EXM_EU_16_6") CASE HASH("CLO_EXM_EU_16_7") CASE HASH("CLO_EXM_EU_16_8") CASE HASH("CLO_EXM_EU_16_9") CASE HASH("CLO_EXM_EU_1610") CASE HASH("CLO_EXM_EU_1611") CASE HASH("CLO_EXM_EU_1612") CASE HASH("CLO_EXM_EU_1613") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_STM_O_E_0") CASE HASH("CLO_STM_O_E_1") CASE HASH("CLO_STM_O_E_2") CASE HASH("CLO_STM_O_E_3") CASE HASH("CLO_STM_O_E_4") CASE HASH("CLO_STM_O_E_5") CASE HASH("CLO_STM_O_E_6") RETURN COMP_TYPE_OUTFIT BREAK ENDSWITCH SWITCH labelHash CASE HASH("CLO_GRM_DECL_0") CASE HASH("CLO_GRM_DECL_1") CASE HASH("CLO_GRM_DECL_2") CASE HASH("CLO_GRM_DECL_3") CASE HASH("CLO_GRM_DECL_4") CASE HASH("CLO_GRM_DECL_5") CASE HASH("CLO_GRM_DECL_6") CASE HASH("CLO_GRM_DECL_7") CASE HASH("CLO_GRM_DECL_8") CASE HASH("CLO_GRM_DECL_9") CASE HASH("CLO_GRM_DECL_10") CASE HASH("CLO_GRM_DECL_11") CASE HASH("CLO_GRM_DECL_12") CASE HASH("CLO_GRM_DECL_13") CASE HASH("CLO_GRM_DECL_14") CASE HASH("CLO_GRM_DECL_15") CASE HASH("CLO_GRM_DECL_16") CASE HASH("CLO_GRM_DECL_17") CASE HASH("CLO_GRM_DECL_18") CASE HASH("CLO_GRM_DECL_19") CASE HASH("CLO_GRM_DECL_20") CASE HASH("CLO_GRM_DECL_21") CASE HASH("CLO_GRM_DECL_22") CASE HASH("CLO_GRM_DECL_23") CASE HASH("CLO_GRM_DECL_24") CASE HASH("CLO_GRM_DECL_25") CASE HASH("CLO_GRM_DECL_26") CASE HASH("CLO_GRM_DECL_27") CASE HASH("CLO_GRM_DECL_28") CASE HASH("CLO_GRM_DECL_29") CASE HASH("CLO_GRM_DECL_30") CASE HASH("CLO_GRM_DECL_31") CASE HASH("CLO_GRM_DECL_32") CASE HASH("CLO_GRM_DECL_33") CASE HASH("CLO_GRM_DECL_34") CASE HASH("CLO_GRM_DECL_35") CASE HASH("CLO_GRM_DECL_36") RETURN COMP_TYPE_DECL BREAK ENDSWITCH SWITCH labelHash CASE HASH("CLO_AWM_DECL_0") CASE HASH("CLO_AWM_DECL_1") CASE HASH("CLO_AWM_DECL_2") CASE HASH("CLO_AWM_DECL_3") CASE HASH("CLO_AWM_DECL_4") CASE HASH("CLO_AWM_DECL_5") CASE HASH("CLO_AWM_DECL_6") CASE HASH("CLO_AWM_DECL_7") CASE HASH("CLO_AWM_DECL_8") CASE HASH("CLO_AWM_DECL_9") CASE HASH("CLO_AWM_DECL_10") CASE HASH("CLO_AWM_DECL_11") CASE HASH("CLO_AWM_DECL_12") CASE HASH("CLO_AWM_DECL_13") CASE HASH("CLO_AWM_DECL_14") CASE HASH("CLO_AWM_DECL_15") CASE HASH("CLO_AWM_DECL_16") CASE HASH("CLO_AWM_DECL_17") CASE HASH("CLO_AWM_DECL_18") CASE HASH("CLO_AWM_DECL_19") CASE HASH("CLO_AWM_DECL_20") CASE HASH("CLO_AWM_DECL_21") CASE HASH("CLO_AWM_DECL_22") CASE HASH("CLO_AWM_DECL_23") CASE HASH("CLO_AWM_DECL_24") CASE HASH("CLO_AWM_DECL_25") CASE HASH("CLO_AWM_DECL_26") CASE HASH("CLO_AWM_DECL_27") CASE HASH("CLO_AWM_DECL_28") CASE HASH("CLO_AWM_DECL_29") CASE HASH("CLO_AWM_DECL_30") CASE HASH("CLO_AWM_DECL_31") CASE HASH("CLO_AWM_DECL_32") CASE HASH("CLO_AWM_DECL_33") CASE HASH("CLO_AWM_DECL_34") CASE HASH("CLO_AWM_DECL_35") CASE HASH("CLO_AWM_DECL_36") CASE HASH("CLO_AWM_DECL_37") CASE HASH("CLO_AWM_DECL_38") CASE HASH("CLO_AWM_DECL_39") CASE HASH("CLO_AWM_DECL_40") CASE HASH("CLO_AWM_DECL_41") CASE HASH("CLO_AWM_DECL_42") CASE HASH("CLO_AWM_DECL_43") CASE HASH("CLO_AWM_DECL_44") CASE HASH("CLO_AWM_DECL_45") CASE HASH("CLO_AWM_DECL_46") CASE HASH("CLO_AWM_DECL_47") CASE HASH("CLO_AWM_DECL_48") CASE HASH("CLO_AWM_DECL_49") CASE HASH("CLO_AWM_DECL_50") CASE HASH("CLO_AWM_DECL_51") CASE HASH("CLO_AWM_DECL_52") CASE HASH("CLO_AWM_DECL_53") CASE HASH("CLO_AWM_DECL_54") CASE HASH("CLO_AWM_DECL_55") CASE HASH("CLO_AWM_DECL_56") CASE HASH("CLO_AWM_DECL_57") CASE HASH("CLO_AWM_DECL_58") CASE HASH("CLO_AWM_DECL_59") CASE HASH("CLO_AWM_DECL_60") CASE HASH("CLO_AWM_DECL_61") CASE HASH("CLO_AWM_DECL_62") CASE HASH("CLO_AWM_DECL_63") CASE HASH("CLO_AWM_DECL_64") CASE HASH("CLO_AWM_DECL_65") CASE HASH("CLO_AWM_DECL_66") CASE HASH("CLO_AWM_DECL_67") CASE HASH("CLO_AWM_DECL_68") CASE HASH("CLO_AWM_DECL_69") CASE HASH("CLO_AWM_DECL_70") CASE HASH("CLO_AWM_DECL_71") CASE HASH("CLO_AWM_DECL_72") CASE HASH("CLO_AWM_DECL_73") CASE HASH("CLO_AWM_DECL_74") CASE HASH("CLO_AWM_DECL_75") CASE HASH("CLO_AWM_DECL_76") CASE HASH("CLO_AWM_DECL_77") CASE HASH("CLO_AWM_DECL_78") CASE HASH("CLO_AWM_DECL_79") CASE HASH("CLO_AWM_DECL_80") CASE HASH("CLO_AWM_DECL_81") CASE HASH("CLO_AWM_DECL_82") CASE HASH("CLO_AWM_DECL_83") CASE HASH("CLO_AWM_DECL_84") CASE HASH("CLO_AWM_DECL_85") CASE HASH("CLO_AWM_DECL_86") CASE HASH("CLO_AWM_DECL_87") CASE HASH("CLO_AWM_DECL_88") CASE HASH("CLO_AWM_DECL_89") CASE HASH("CLO_AWM_DECL_90") CASE HASH("CLO_AWM_DECL_91") CASE HASH("CLO_AWM_DECL_92") CASE HASH("CLO_AWM_DECL_93") CASE HASH("CLO_AWM_DECL_94") CASE HASH("CLO_AWM_DECL_95") CASE HASH("CLO_AWM_DECL_96") CASE HASH("CLO_AWM_DECL_97") CASE HASH("CLO_AWM_DECL_98") CASE HASH("CLO_AWM_DECL_99") CASE HASH("CLO_AWM_DECL_100") CASE HASH("CLO_AWM_DECL_101") CASE HASH("CLO_AWM_DECL_102") CASE HASH("CLO_AWM_DECL_103") CASE HASH("CLO_AWM_DECL_104") CASE HASH("CLO_AWM_DECL_105") CASE HASH("CLO_AWM_DECL_106") CASE HASH("CLO_AWM_DECL_107") CASE HASH("CLO_AWM_DECL_108") CASE HASH("CLO_AWM_DECL_109") CASE HASH("CLO_AWM_DECL_110") CASE HASH("CLO_AWM_DECL_111") CASE HASH("CLO_AWM_DECL_112") CASE HASH("CLO_AWM_DECL_113") CASE HASH("CLO_AWM_DECL_114") CASE HASH("CLO_AWM_DECL_115") CASE HASH("CLO_AWM_DECL_116") CASE HASH("CLO_AWM_DECL_117") CASE HASH("CLO_AWM_DECL_118") CASE HASH("CLO_AWM_DECL_119") CASE HASH("CLO_AWM_DECL_120") CASE HASH("CLO_AWM_DECL_121") CASE HASH("CLO_AWM_DECL_122") CASE HASH("CLO_AWM_DECL_123") CASE HASH("CLO_AWM_DECL_124") RETURN COMP_TYPE_DECL BREAK ENDSWITCH RETURN COMP_TYPE_HEAD ENDFUNC FUNC PED_COMP_TYPE_ENUM GET_FMF_COMP_TYPE_FROM_DLC_LABEL_HASH(INT labelHash) SWITCH labelHash // Beach CASE HASH("CLO_BBF_000") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_001") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_002") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_003") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_004") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_005") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_006") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_007") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_008") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_009") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_010") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_011") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_100") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_101") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_102") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_103") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_104") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_105") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_106") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_107") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_108") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_109") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_110") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_111") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BBF_F_000") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_001") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_002") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_003") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_004") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_005") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_006") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_007") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_008") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_009") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_010") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_F_011") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BBF_P0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P0_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P1_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P2_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P3_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_P4_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BBF_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_1_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_1_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_U_3_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BBF_T_1_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_1_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_1_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_1_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_2_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_2_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_2_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BBF_T_2_3") RETURN COMP_TYPE_TEETH BREAK ENDSWITCH SWITCH labelHash // Business CASE HASH("CLO_BUSF_G0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G0_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_G1_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_W0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_W0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_W0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_W0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_BUSF_F_0_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_2") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_3") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_4") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_5") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_6") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_7") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_8") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_9") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_10") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_0_11") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_2") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_3") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_4") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_5") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_6") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_7") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_8") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_9") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_10") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_F_1_11") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_BUSF_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_11") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_0_12") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_5") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_6") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_7") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_8") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_9") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_10") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_11") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_L_1_12") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_BUSF_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSF_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSF_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSF_T_0_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSF_T_0_4") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSF_T_0_5") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_BUSF_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_0_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_1_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_2_12") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_3_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_3_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_3_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_3_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_3_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_3_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_6") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_7") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_8") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_9") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_10") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_11") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_12") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_13") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_14") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUSF_U_4_15") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_BUS_F_O_0") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_1") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_2") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_3") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_4") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_5") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_6") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_7") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_8") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_9") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_10") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_11") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_12") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_13") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_14") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_15") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_16") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_17") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_18") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_19") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_20") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_21") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_22") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_23") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_24") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_BUS_F_O_25") RETURN COMP_TYPE_OUTFIT BREAK ENDSWITCH SWITCH labelHash // Valentines CASE HASH("CLO_VALF_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_0_4") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_1_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_1_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_L_1_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_VALF_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALF_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALF_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_VALF_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_0_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_0_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_0_5") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_1_4") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_2_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_2_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_VALF_U_2_2") RETURN COMP_TYPE_JBIB BREAK ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_F_F_0_0") RETURN COMP_TYPE_FEET BREAK // Ochre Knee High CASE HASH("CLO_HP_F_F_0_1") RETURN COMP_TYPE_FEET BREAK // Chestnut Knee High CASE HASH("CLO_HP_F_F_0_2") RETURN COMP_TYPE_FEET BREAK // Purple Knee High CASE HASH("CLO_HP_F_F_0_3") RETURN COMP_TYPE_FEET BREAK // Burgundy Knee High CASE HASH("CLO_HP_F_F_0_4") RETURN COMP_TYPE_FEET BREAK // Blue Knee High CASE HASH("CLO_HP_F_F_0_5") RETURN COMP_TYPE_FEET BREAK // Red Accent Knee High CASE HASH("CLO_HP_F_F_0_6") RETURN COMP_TYPE_FEET BREAK // Coffee Knee High CASE HASH("CLO_HP_F_F_0_7") RETURN COMP_TYPE_FEET BREAK // Ochre Accent Knee High CASE HASH("CLO_HP_F_F_0_8") RETURN COMP_TYPE_FEET BREAK // Purple Accent Knee High CASE HASH("CLO_HP_F_F_0_9") RETURN COMP_TYPE_FEET BREAK // Gray Accent Knee High CASE HASH("CLO_HP_F_F_1_0") RETURN COMP_TYPE_FEET BREAK // Beige Folded Boots CASE HASH("CLO_HP_F_F_1_1") RETURN COMP_TYPE_FEET BREAK // Black Folded Boots CASE HASH("CLO_HP_F_F_1_2") RETURN COMP_TYPE_FEET BREAK // Coffee Folded Boots CASE HASH("CLO_HP_F_F_1_3") RETURN COMP_TYPE_FEET BREAK // White Folded Boots CASE HASH("CLO_HP_F_F_1_4") RETURN COMP_TYPE_FEET BREAK // Gray Folded Boots CASE HASH("CLO_HP_F_F_1_5") RETURN COMP_TYPE_FEET BREAK // Black & White Folded Boots CASE HASH("CLO_HP_F_F_1_6") RETURN COMP_TYPE_FEET BREAK // Olive Folded Boots CASE HASH("CLO_HP_F_F_1_7") RETURN COMP_TYPE_FEET BREAK // Blue Folded Boots CASE HASH("CLO_HP_F_F_1_8") RETURN COMP_TYPE_FEET BREAK // Tan Folded Boots CASE HASH("CLO_HP_F_F_1_9") RETURN COMP_TYPE_FEET BREAK // Red Accent Folded Boots CASE HASH("CLO_HP_F_F_1_10") RETURN COMP_TYPE_FEET BREAK // Chocolate Folded Boots CASE HASH("CLO_HP_F_F_1_11") RETURN COMP_TYPE_FEET BREAK // Pink Accent Folded Boots CASE HASH("CLO_HP_F_F_1_12") RETURN COMP_TYPE_FEET BREAK // Purple Folded Boots CASE HASH("CLO_HP_F_F_1_13") RETURN COMP_TYPE_FEET BREAK // Copper Folded Boots CASE HASH("CLO_HP_F_F_1_14") RETURN COMP_TYPE_FEET BREAK // Leopard Folded Boots CASE HASH("CLO_HP_F_F_1_15") RETURN COMP_TYPE_FEET BREAK // Gold Studded Folded Boots ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_F_G_0_0") RETURN COMP_TYPE_PROPS BREAK // Black Retro Classics CASE HASH("CLO_HP_F_G_0_1") RETURN COMP_TYPE_PROPS BREAK // Two-Tone Retro Classics CASE HASH("CLO_HP_F_G_0_2") RETURN COMP_TYPE_PROPS BREAK // Red Marble Retro Classics CASE HASH("CLO_HP_F_G_0_3") RETURN COMP_TYPE_PROPS BREAK // Multicolored Retro Classics CASE HASH("CLO_HP_F_G_0_4") RETURN COMP_TYPE_PROPS BREAK // Peach Retro Classics CASE HASH("CLO_HP_F_G_0_5") RETURN COMP_TYPE_PROPS BREAK // Baby Blue Retro Classics CASE HASH("CLO_HP_F_G_0_6") RETURN COMP_TYPE_PROPS BREAK // Red Retro Classics CASE HASH("CLO_HP_F_G_0_7") RETURN COMP_TYPE_PROPS BREAK // Lime Retro Classics CASE HASH("CLO_HP_F_G_1_0") RETURN COMP_TYPE_PROPS BREAK // Black Hipsters CASE HASH("CLO_HP_F_G_1_1") RETURN COMP_TYPE_PROPS BREAK // Blue Hipsters CASE HASH("CLO_HP_F_G_1_2") RETURN COMP_TYPE_PROPS BREAK // Marble Hipsters CASE HASH("CLO_HP_F_G_1_3") RETURN COMP_TYPE_PROPS BREAK // Dipped Hipsters CASE HASH("CLO_HP_F_G_1_4") RETURN COMP_TYPE_PROPS BREAK // Red Hipsters CASE HASH("CLO_HP_F_G_1_5") RETURN COMP_TYPE_PROPS BREAK // Orange Hipsters CASE HASH("CLO_HP_F_G_1_6") RETURN COMP_TYPE_PROPS BREAK // Hot Pink Hipsters CASE HASH("CLO_HP_F_G_1_7") RETURN COMP_TYPE_PROPS BREAK // Brown Hipsters CASE HASH("CLO_HP_F_H_0_0") RETURN COMP_TYPE_PROPS BREAK // Brown Fedora CASE HASH("CLO_HP_F_H_0_1") RETURN COMP_TYPE_PROPS BREAK // Cream Fedora CASE HASH("CLO_HP_F_H_0_2") RETURN COMP_TYPE_PROPS BREAK // White Fedora CASE HASH("CLO_HP_F_H_0_3") RETURN COMP_TYPE_PROPS BREAK // Black Fedora CASE HASH("CLO_HP_F_H_0_4") RETURN COMP_TYPE_PROPS BREAK // Gray Fedora CASE HASH("CLO_HP_F_H_0_5") RETURN COMP_TYPE_PROPS BREAK // Red Plaid Fedora CASE HASH("CLO_HP_F_H_0_6") RETURN COMP_TYPE_PROPS BREAK // Brown Plaid Fedora CASE HASH("CLO_HP_F_H_0_7") RETURN COMP_TYPE_PROPS BREAK // Pink Fedora CASE HASH("CLO_HP_F_H_1_0") RETURN COMP_TYPE_PROPS BREAK // Purple Saggy Beanie CASE HASH("CLO_HP_F_H_1_1") RETURN COMP_TYPE_PROPS BREAK // White Saggy Beanie CASE HASH("CLO_HP_F_H_1_2") RETURN COMP_TYPE_PROPS BREAK // Fuchsia Saggy Beanie CASE HASH("CLO_HP_F_H_1_3") RETURN COMP_TYPE_PROPS BREAK // Red Striped Saggy Beanie CASE HASH("CLO_HP_F_H_1_4") RETURN COMP_TYPE_PROPS BREAK // Gray Striped Saggy Beanie CASE HASH("CLO_HP_F_L_0_0") RETURN COMP_TYPE_LEGS BREAK // Navy Distressed Denim Shorts CASE HASH("CLO_HP_F_L_0_1") RETURN COMP_TYPE_LEGS BREAK // Blue Distressed Denim Shorts CASE HASH("CLO_HP_F_L_0_2") RETURN COMP_TYPE_LEGS BREAK // Blue Denim Shorts CASE HASH("CLO_HP_F_L_0_3") RETURN COMP_TYPE_LEGS BREAK // Black Faded Denim Shorts CASE HASH("CLO_HP_F_L_0_4") RETURN COMP_TYPE_LEGS BREAK // Leopard Denim Shorts CASE HASH("CLO_HP_F_L_0_5") RETURN COMP_TYPE_LEGS BREAK // Snakeskin Denim Shorts CASE HASH("CLO_HP_F_L_0_6") RETURN COMP_TYPE_LEGS BREAK // Black Denim Shorts CASE HASH("CLO_HP_F_L_0_7") RETURN COMP_TYPE_LEGS BREAK // Ash Denim Shorts CASE HASH("CLO_HP_F_L_0_8") RETURN COMP_TYPE_LEGS BREAK // Olive Denim Shorts CASE HASH("CLO_HP_F_L_0_9") RETURN COMP_TYPE_LEGS BREAK // Navy Denim Shorts CASE HASH("CLO_HP_F_L_0_10") RETURN COMP_TYPE_LEGS BREAK // Blue Beaded Denim Shorts CASE HASH("CLO_HP_F_L_0_11") RETURN COMP_TYPE_LEGS BREAK // Lavender Denim Shorts CASE HASH("CLO_HP_F_L_0_12") RETURN COMP_TYPE_LEGS BREAK // Mint Denim Shorts CASE HASH("CLO_HP_F_L_1_0") RETURN COMP_TYPE_LEGS BREAK // Leopard Print Mini CASE HASH("CLO_HP_F_L_2_0") RETURN COMP_TYPE_LEGS BREAK // Black Leggings CASE HASH("CLO_HP_F_L_2_1") RETURN COMP_TYPE_LEGS BREAK // Gray Leggings CASE HASH("CLO_HP_F_L_2_2") RETURN COMP_TYPE_LEGS BREAK // Yellow Leggings CASE HASH("CLO_HP_F_L_2_3") RETURN COMP_TYPE_LEGS BREAK // Dark Brown Leggings CASE HASH("CLO_HP_F_L_2_4") RETURN COMP_TYPE_LEGS BREAK // Red Accent Leggings CASE HASH("CLO_HP_F_L_2_5") RETURN COMP_TYPE_LEGS BREAK // Skeleton Leggings CASE HASH("CLO_HP_F_L_2_6") RETURN COMP_TYPE_LEGS BREAK // Kreppsohle Leggings CASE HASH("CLO_HP_F_L_2_7") RETURN COMP_TYPE_LEGS BREAK // Striped Leggings CASE HASH("CLO_HP_F_L_2_8") RETURN COMP_TYPE_LEGS BREAK // Tiger Leggings CASE HASH("CLO_HP_F_L_2_9") RETURN COMP_TYPE_LEGS BREAK // Leopard Leggings CASE HASH("CLO_HP_F_L_2_10") RETURN COMP_TYPE_LEGS BREAK // Tropical Sunset Leggings CASE HASH("CLO_HP_F_L_2_11") RETURN COMP_TYPE_LEGS BREAK // Princess RB Leggings CASE HASH("CLO_HP_F_L_2_12") RETURN COMP_TYPE_LEGS BREAK // Bright Patterned Leggings CASE HASH("CLO_HP_F_L_2_13") RETURN COMP_TYPE_LEGS BREAK // Navy Leggings CASE HASH("CLO_HP_F_L_2_14") RETURN COMP_TYPE_LEGS BREAK // Sky Blue Leggings CASE HASH("CLO_HP_F_L_2_15") RETURN COMP_TYPE_LEGS BREAK // Black Barlone Leggings ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_F_U_0_0") RETURN COMP_TYPE_JBIB BREAK // Indigo Denim Jacket CASE HASH("CLO_HP_F_U_0_1") RETURN COMP_TYPE_JBIB BREAK // Lime Denim Jacket CASE HASH("CLO_HP_F_U_0_2") RETURN COMP_TYPE_JBIB BREAK // Faded Stars Denim Jacket CASE HASH("CLO_HP_F_U_0_3") RETURN COMP_TYPE_JBIB BREAK // Navy Denim Jacket CASE HASH("CLO_HP_F_U_0_4") RETURN COMP_TYPE_JBIB BREAK // Topaz Denim Jacket CASE HASH("CLO_HP_F_U_0_5") RETURN COMP_TYPE_JBIB BREAK // Bleached Denim Jacket CASE HASH("CLO_HP_F_U_0_6") RETURN COMP_TYPE_JBIB BREAK // Ash Denim Jacket CASE HASH("CLO_HP_F_U_1_0") RETURN COMP_TYPE_JBIB BREAK // Leopard Tank CASE HASH("CLO_HP_F_U_1_1") RETURN COMP_TYPE_JBIB BREAK // Skull Tank CASE HASH("CLO_HP_F_U_1_2") RETURN COMP_TYPE_JBIB BREAK // Two-Tone Striped Tank CASE HASH("CLO_HP_F_U_2_0") RETURN COMP_TYPE_JBIB BREAK // White Cropped Tank CASE HASH("CLO_HP_F_U_2_1") RETURN COMP_TYPE_JBIB BREAK // Zebra Cropped Tank CASE HASH("CLO_HP_F_U_2_2") RETURN COMP_TYPE_JBIB BREAK // Electric Zebra Cropped Tank CASE HASH("CLO_HP_F_U_2_3") RETURN COMP_TYPE_JBIB BREAK // Leopard Cropped Tank CASE HASH("CLO_HP_F_U_2_4") RETURN COMP_TYPE_JBIB BREAK // Parrot Print Cropped Tank CASE HASH("CLO_HP_F_U_2_5") RETURN COMP_TYPE_JBIB BREAK // Santos 13 Cropped Tank CASE HASH("CLO_HP_F_U_2_6") RETURN COMP_TYPE_JBIB BREAK // Princess RB Cropped Tank CASE HASH("CLO_HP_F_U_2_7") RETURN COMP_TYPE_JBIB BREAK // Softly Softly Cropped Tank CASE HASH("CLO_HP_F_U_2_8") RETURN COMP_TYPE_JBIB BREAK // Neon Leopard Cropped Tank CASE HASH("CLO_HP_F_U_3_0") RETURN COMP_TYPE_JBIB BREAK // Camo Blazer CASE HASH("CLO_HP_F_U_4_0") RETURN COMP_TYPE_JBIB BREAK // Yellow Cropped Biker CASE HASH("CLO_HP_F_U_4_1") RETURN COMP_TYPE_JBIB BREAK // Cyan Cropped Biker CASE HASH("CLO_HP_F_U_4_2") RETURN COMP_TYPE_JBIB BREAK // Mustard Cropped Biker CASE HASH("CLO_HP_F_U_4_3") RETURN COMP_TYPE_JBIB BREAK // Pink Cropped Biker CASE HASH("CLO_HP_F_U_4_4") RETURN COMP_TYPE_JBIB BREAK // Dark Brown Cropped Biker CASE HASH("CLO_HP_F_U_4_5") RETURN COMP_TYPE_JBIB BREAK // Red Cropped Biker CASE HASH("CLO_HP_F_U_4_6") RETURN COMP_TYPE_JBIB BREAK // Green Cropped Biker CASE HASH("CLO_HP_F_U_4_7") RETURN COMP_TYPE_JBIB BREAK // Blue Cropped Biker CASE HASH("CLO_HP_F_U_4_8") RETURN COMP_TYPE_JBIB BREAK // Crimson Cropped Biker CASE HASH("CLO_HP_F_U_4_9") RETURN COMP_TYPE_JBIB BREAK // Leopard Cropped Biker CASE HASH("CLO_HP_F_U_4_10") RETURN COMP_TYPE_JBIB BREAK // Silver Cropped Biker CASE HASH("CLO_HP_F_U_4_11") RETURN COMP_TYPE_JBIB BREAK // Studded Cropped Biker CASE HASH("CLO_HP_F_U_5_0") RETURN COMP_TYPE_JBIB BREAK // Love Fist Racerback CASE HASH("CLO_HP_F_U_5_1") RETURN COMP_TYPE_JBIB BREAK // 247 Racerback CASE HASH("CLO_HP_F_U_5_2") RETURN COMP_TYPE_JBIB BREAK // The Barfs Racerback CASE HASH("CLO_HP_F_U_5_3") RETURN COMP_TYPE_JBIB BREAK // Princess RB Racerback CASE HASH("CLO_HP_F_U_5_4") RETURN COMP_TYPE_JBIB BREAK // Prison Bitches Racerback CASE HASH("CLO_HP_F_U_6_0") RETURN COMP_TYPE_JBIB BREAK // Pink Floral Babydoll CASE HASH("CLO_HP_F_U_6_1") RETURN COMP_TYPE_JBIB BREAK // Blue Floral Babydoll CASE HASH("CLO_HP_F_U_6_2") RETURN COMP_TYPE_JBIB BREAK // Yellow Floral Babydoll CASE HASH("CLO_HP_F_U_6_3") RETURN COMP_TYPE_JBIB BREAK // Red Floral Babydoll CASE HASH("CLO_HP_F_U_6_4") RETURN COMP_TYPE_JBIB BREAK // Purple Floral Babydoll CASE HASH("CLO_HP_F_U_6_5") RETURN COMP_TYPE_JBIB BREAK // Hot Pink Floral Babydoll CASE HASH("CLO_HP_F_D_0") RETURN COMP_TYPE_DECL BREAK // Skinny Tie Top CASE HASH("CLO_HP_F_D_1") RETURN COMP_TYPE_DECL BREAK // Hipsters Do It Fixed Top CASE HASH("CLO_HP_F_D_2") RETURN COMP_TYPE_DECL BREAK // Interlock Top CASE HASH("CLO_HP_F_D_3") RETURN COMP_TYPE_DECL BREAK // Dream Catcher Top CASE HASH("CLO_HP_F_D_4") RETURN COMP_TYPE_DECL BREAK // Mustache Top CASE HASH("CLO_HP_F_D_5") RETURN COMP_TYPE_DECL BREAK // Gentleman Top CASE HASH("CLO_HP_F_D_6") RETURN COMP_TYPE_DECL BREAK // Bow & Braces Top CASE HASH("CLO_HP_F_D_7") RETURN COMP_TYPE_DECL BREAK // LSSA Top CASE HASH("CLO_HP_F_D_8") RETURN COMP_TYPE_DECL BREAK // Rainbow Yeah Top CASE HASH("CLO_HP_F_D_9") RETURN COMP_TYPE_DECL BREAK // Waves Top CASE HASH("CLO_HP_F_D_10") RETURN COMP_TYPE_DECL BREAK // Cat Top CASE HASH("CLO_HP_F_D_11") RETURN COMP_TYPE_DECL BREAK // Scratch Top CASE HASH("CLO_HP_F_D_12") RETURN COMP_TYPE_DECL BREAK // Pyramid Top CASE HASH("CLO_HP_F_D_13") RETURN COMP_TYPE_DECL BREAK // Hero Top CASE HASH("CLO_HP_F_D_14") RETURN COMP_TYPE_DECL BREAK // Oeuf Top CASE HASH("CLO_HP_F_D_15") RETURN COMP_TYPE_DECL BREAK // Chimp Top CASE HASH("CLO_HP_F_D_16") RETURN COMP_TYPE_DECL BREAK // Monkey Top CASE HASH("CLO_HP_F_D_17") RETURN COMP_TYPE_DECL BREAK // Wild Cat Top CASE HASH("CLO_HP_F_D_18") RETURN COMP_TYPE_DECL BREAK // Bear Top CASE HASH("CLO_HP_F_D_19") RETURN COMP_TYPE_DECL BREAK // Cassette Top CASE HASH("CLO_HP_F_D_20") RETURN COMP_TYPE_DECL BREAK // Stag Top CASE HASH("CLO_HP_F_D_21") RETURN COMP_TYPE_DECL BREAK // Sunglasses Top CASE HASH("CLO_HP_F_D_22") RETURN COMP_TYPE_DECL BREAK // Illusion Top CASE HASH("CLO_HP_F_T_0_0") RETURN COMP_TYPE_TEETH BREAK // Black & White Leather Straps CASE HASH("CLO_HP_F_T_0_1") RETURN COMP_TYPE_TEETH BREAK // Summer Leather Straps CASE HASH("CLO_HP_F_T_0_2") RETURN COMP_TYPE_TEETH BREAK // Candy Leather Straps CASE HASH("CLO_HP_F_T_0_3") RETURN COMP_TYPE_TEETH BREAK // Pink Check Leather Straps CASE HASH("CLO_HP_F_T_1_0") RETURN COMP_TYPE_TEETH BREAK // Red Tassel Scarf CASE HASH("CLO_HP_F_T_1_1") RETURN COMP_TYPE_TEETH BREAK // Purple Tassel Scarf CASE HASH("CLO_HP_F_T_1_2") RETURN COMP_TYPE_TEETH BREAK // Olive Tassel Scarf CASE HASH("CLO_HP_F_T_1_3") RETURN COMP_TYPE_TEETH BREAK // Pink Tassel Scarf CASE HASH("CLO_HP_F_T_1_4") RETURN COMP_TYPE_TEETH BREAK // Teal Tassel Scarf CASE HASH("CLO_HP_F_B_0_0") RETURN COMP_TYPE_BERD BREAK // Gray Cat CASE HASH("CLO_HP_F_B_0_1") RETURN COMP_TYPE_BERD BREAK // Tabby Cat CASE HASH("CLO_HP_F_B_1_0") RETURN COMP_TYPE_BERD BREAK // Red Fox CASE HASH("CLO_HP_F_B_1_1") RETURN COMP_TYPE_BERD BREAK // Brown Fox CASE HASH("CLO_HP_F_B_2_0") RETURN COMP_TYPE_BERD BREAK // Brown Owl CASE HASH("CLO_HP_F_B_2_1") RETURN COMP_TYPE_BERD BREAK // White Owl CASE HASH("CLO_HP_F_B_3_0") RETURN COMP_TYPE_BERD BREAK // Gray Racoon CASE HASH("CLO_HP_F_B_3_1") RETURN COMP_TYPE_BERD BREAK // Black Racoon ENDSWITCH SWITCH labelHash CASE HASH("CLO_HP_F_O_0") RETURN COMP_TYPE_OUTFIT BREAK // The Yuppie CASE HASH("CLO_HP_F_O_1") RETURN COMP_TYPE_OUTFIT BREAK // The Palms CASE HASH("CLO_HP_F_O_2") RETURN COMP_TYPE_OUTFIT BREAK // The Bubblegum CASE HASH("CLO_HP_F_O_3") RETURN COMP_TYPE_OUTFIT BREAK // The Safari CASE HASH("CLO_HP_F_O_4") RETURN COMP_TYPE_OUTFIT BREAK // The Jungle CASE HASH("CLO_HP_F_O_5") RETURN COMP_TYPE_OUTFIT BREAK // The Vintage CASE HASH("CLO_HP_F_O_6") RETURN COMP_TYPE_OUTFIT BREAK // The Youth CASE HASH("CLO_HP_F_O_7") RETURN COMP_TYPE_OUTFIT BREAK // The Craze CASE HASH("CLO_HP_F_O_8") RETURN COMP_TYPE_OUTFIT BREAK // The Tropics CASE HASH("CLO_HP_F_O_9") RETURN COMP_TYPE_OUTFIT BREAK // The Roar CASE HASH("CLO_HP_F_O_10") RETURN COMP_TYPE_OUTFIT BREAK // The 90s CASE HASH("CLO_HP_F_D_23") RETURN COMP_TYPE_DECL BREAK // Base5 Top CASE HASH("CLO_HP_F_D_24") RETURN COMP_TYPE_DECL BREAK // Bitch'n' Dog Food Top CASE HASH("CLO_HP_F_D_25") RETURN COMP_TYPE_DECL BREAK // BOBO Top CASE HASH("CLO_HP_F_D_26") RETURN COMP_TYPE_DECL BREAK // Crocs Bar Top CASE HASH("CLO_HP_F_D_27") RETURN COMP_TYPE_DECL BREAK // Emotion 98.3 Top CASE HASH("CLO_HP_F_D_28") RETURN COMP_TYPE_DECL BREAK // Fever 105 Top CASE HASH("CLO_HP_F_D_29") RETURN COMP_TYPE_DECL BREAK // Flash FM Top CASE HASH("CLO_HP_F_D_30") RETURN COMP_TYPE_DECL BREAK // Vinyl Countdown Top CASE HASH("CLO_HP_F_D_31") RETURN COMP_TYPE_DECL BREAK // Homies Sharp Top CASE HASH("CLO_HP_F_D_32") RETURN COMP_TYPE_DECL BREAK // KDST Top CASE HASH("CLO_HP_F_D_33") RETURN COMP_TYPE_DECL BREAK // Vivisection Top CASE HASH("CLO_HP_F_D_34") RETURN COMP_TYPE_DECL BREAK // KJAH Radio Top CASE HASH("CLO_HP_F_D_35") RETURN COMP_TYPE_DECL BREAK // Bounce FM Top CASE HASH("CLO_HP_F_D_36") RETURN COMP_TYPE_DECL BREAK // K-Rose Top CASE HASH("TOURNAMENT_1_P1") RETURN COMP_TYPE_DECL BREAK // Tournament Participant 1 CASE HASH("TOURNAMENT_1_P2") RETURN COMP_TYPE_DECL BREAK // Tournament Participant 2 CASE HASH("TOURNAMENT_1_W1") RETURN COMP_TYPE_DECL BREAK // Tournament Winner 1 CASE HASH("TOURNAMENT_1_W2") RETURN COMP_TYPE_DECL BREAK // Tournament Winner 2 CASE HASH("RSTAR_DEV_0") RETURN COMP_TYPE_DECL BREAK // Rockstar Dev White CASE HASH("RSTAR_DEV_1") RETURN COMP_TYPE_DECL BREAK // Rockstar Dev Black CASE HASH("RSTAR_DEV_2") RETURN COMP_TYPE_DECL BREAK // Rockstar Dev Gray ENDSWITCH // FEMALE INDEPENDENCE DAY SWITCH labelHash CASE HASH("CLO_INDF_O_0") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDF_O_1") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDF_O_2") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDF_O_3") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDF_O_4") RETURN COMP_TYPE_OUTFIT BREAK CASE HASH("CLO_INDF_B_0_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_0_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_1_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_1_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_2_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_2_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_3_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_3_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_4_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_4_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_5_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_B_5_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_INDF_H_0_0") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_INDF_H_0_1") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_INDF_H_0_2") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_INDF_H_0_3") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_INDF_H_0_4") RETURN COMP_TYPE_HAIR BREAK CASE HASH("CLO_INDF_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_INDF_F_0_0") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_INDF_F_0_1") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_INDF_F_0_2") RETURN COMP_TYPE_FEET BREAK CASE HASH("CLO_INDF_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDF_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_INDF_G_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_G_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_2_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_2_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_3_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_4_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_5_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_6_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_6_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_6_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_6_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_6_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_INDF_HT_6_5") RETURN COMP_TYPE_PROPS BREAK ENDSWITCH // Decal shirts for Independence Day Special. SWITCH labelHash CASE HASH("CLO_INDF_D_1") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_2") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_3") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_4") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_5") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_6") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_7") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_8") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_9") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_10") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_11") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_12") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_13") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_14") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_15") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_16") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_17") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_18") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_19") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_20") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_21") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_22") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_23") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_24") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_25") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_26") RETURN COMP_TYPE_DECL BREAK ENDSWITCH // Pilot school SWITCH labelHash CASE HASH("CLO_PIF_B_0_0") RETURN COMP_TYPE_BERD BREAK // Flight cap CASE HASH("CLO_PIF_HT_0_0") RETURN COMP_TYPE_PROPS BREAK // Flight Helmet CASE HASH("CLO_PIF_O_0") RETURN COMP_TYPE_OUTFIT BREAK // Flight Suit CASE HASH("CLO_PIF_D_1") RETURN COMP_TYPE_DECL BREAK // Elitas T-shirt ENDSWITCH // LTS CREATOR SWITCH labelHash CASE HASH("CLO_LTSFB_0_0") RETURN COMP_TYPE_BERD BREAK // Black Combat Mask CASE HASH("CLO_LTSFB_0_1") RETURN COMP_TYPE_BERD BREAK // Gray Combat Mask CASE HASH("CLO_LTSFB_0_2") RETURN COMP_TYPE_BERD BREAK // Charcoal Combat Mask CASE HASH("CLO_LTSFB_0_3") RETURN COMP_TYPE_BERD BREAK // Tan Combat Mask CASE HASH("CLO_LTSFB_0_4") RETURN COMP_TYPE_BERD BREAK // Forest Combat Mask CASE HASH("CLO_LTSFB_1_0") RETURN COMP_TYPE_BERD BREAK // Black Skeletal CASE HASH("CLO_LTSFB_1_1") RETURN COMP_TYPE_BERD BREAK // Gray Skeletal CASE HASH("CLO_LTSFB_1_2") RETURN COMP_TYPE_BERD BREAK // Charcoal Skeletal CASE HASH("CLO_LTSFB_1_3") RETURN COMP_TYPE_BERD BREAK // Tan Skeletal CASE HASH("CLO_LTSFB_1_4") RETURN COMP_TYPE_BERD BREAK // Forest Skeletal CASE HASH("CLO_LTSFB_2_0") RETURN COMP_TYPE_BERD BREAK // Please Stop Me Hockey CASE HASH("CLO_LTSFH_0_0") RETURN COMP_TYPE_PROPS BREAK // Black Bulletproof CASE HASH("CLO_LTSFH_0_1") RETURN COMP_TYPE_PROPS BREAK // Gray Bulletproof CASE HASH("CLO_LTSFH_0_2") RETURN COMP_TYPE_PROPS BREAK // Charcoal Bulletproof CASE HASH("CLO_LTSFH_0_3") RETURN COMP_TYPE_PROPS BREAK // Tan Bulletproof CASE HASH("CLO_LTSFH_0_4") RETURN COMP_TYPE_PROPS BREAK // Forest Bulletproof CASE HASH("CLO_LTSFL_0_0") RETURN COMP_TYPE_LEGS BREAK // Black Combat Pants CASE HASH("CLO_LTSFL_0_1") RETURN COMP_TYPE_LEGS BREAK // Gray Combat Pants CASE HASH("CLO_LTSFL_0_2") RETURN COMP_TYPE_LEGS BREAK // Charcoal Combat Pants CASE HASH("CLO_LTSFL_0_3") RETURN COMP_TYPE_LEGS BREAK // Tan Combat Pants CASE HASH("CLO_LTSFL_0_4") RETURN COMP_TYPE_LEGS BREAK // Forest Combat Pants CASE HASH("CLO_LTSFU_0_0") RETURN COMP_TYPE_JBIB BREAK // Black Combat Top CASE HASH("CLO_LTSFU_0_1") RETURN COMP_TYPE_JBIB BREAK // Gray Combat Top CASE HASH("CLO_LTSFU_0_2") RETURN COMP_TYPE_JBIB BREAK // Charcoal Combat Top CASE HASH("CLO_LTSFU_0_3") RETURN COMP_TYPE_JBIB BREAK // Tan Combat Top CASE HASH("CLO_LTSFU_0_4") RETURN COMP_TYPE_JBIB BREAK // Forest Combat Top CASE HASH("CLO_LTSFT_0_0") RETURN COMP_TYPE_TORSO BREAK // Black Tact Gloves CASE HASH("CLO_LTSFT_0_1") RETURN COMP_TYPE_TORSO BREAK // Gray Tact Gloves CASE HASH("CLO_LTSFT_0_2") RETURN COMP_TYPE_TORSO BREAK // Charcoal Tact Gloves CASE HASH("CLO_LTSFT_0_3") RETURN COMP_TYPE_TORSO BREAK // Tan Tact Gloves CASE HASH("CLO_LTSFT_0_4") RETURN COMP_TYPE_TORSO BREAK // Forest Tact Gloves CASE HASH("CLO_LTSFT_1_0") RETURN COMP_TYPE_TORSO BREAK // Black Wool Gloves CASE HASH("CLO_LTSFT_1_1") RETURN COMP_TYPE_TORSO BREAK // Gray Wool Gloves CASE HASH("CLO_LTSFT_1_2") RETURN COMP_TYPE_TORSO BREAK // Charcoal Wool Gloves CASE HASH("CLO_LTSFT_1_3") RETURN COMP_TYPE_TORSO BREAK // Tan Wool Gloves CASE HASH("CLO_LTSFT_1_4") RETURN COMP_TYPE_TORSO BREAK // Forest Wool Gloves CASE HASH("CLO_LTSF_D_1") RETURN COMP_TYPE_DECL BREAK ENDSWITCH // CHRISTMAS2 SWITCH labelHash CASE HASH("CLO_X2F_U_0_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_U_0_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_U_0_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_U_1_0") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_U_1_1") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_U_1_2") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_U_1_3") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_X2F_T_0_0") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2F_T_0_1") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2F_T_0_2") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2F_T_0_3") RETURN COMP_TYPE_TEETH BREAK CASE HASH("CLO_X2F_L_0_0") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2F_L_0_1") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2F_L_0_2") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2F_L_0_3") RETURN COMP_TYPE_LEGS BREAK CASE HASH("CLO_X2F_HT_0_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_0_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_1_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_2_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_2_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_2_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_2_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_3_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_3_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_3_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_3_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_4_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_0") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_1") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_2") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_3") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_4") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_HT_5_7") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_X2F_B_0_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2F_B_1_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2F_B_2_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2F_B_3_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2F_B_3_1") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_X2F_B_3_2") RETURN COMP_TYPE_BERD BREAK ENDSWITCH // LUXE SWITCH labelHash CASE HASH("CLO_LXF_DEC_29") CASE HASH("CLO_LXF_DEC_30") CASE HASH("CLO_LXF_DEC_31") CASE HASH("CLO_LXF_DEC_32") CASE HASH("CLO_LXF_DEC_33") CASE HASH("CLO_LXF_DEC_34") CASE HASH("CLO_LXF_DEC_35") CASE HASH("CLO_LXF_DEC_36") CASE HASH("CLO_LXF_DEC_37") CASE HASH("CLO_LXF_DEC_38") CASE HASH("CLO_VEF_DEC_39") CASE HASH("CLO_VEF_DEC_40") CASE HASH("CLO_VEF_DEC_41") CASE HASH("CLO_VEF_DEC_42") CASE HASH("CLO_VEF_DEC_43") CASE HASH("CLO_VEF_DEC_44") CASE HASH("CLO_VEF_DEC_45") CASE HASH("CLO_VEF_DEC_46") CASE HASH("CLO_VEF_DEC_47") CASE HASH("CLO_VEF_DEC_48") RETURN COMP_TYPE_DECL BREAK ENDSWITCH //HALLOWEEN SWITCH labelHash CASE HASH("CLO_HALF_D_0") CASE HASH("CLO_HALF_D_1") CASE HASH("CLO_HALF_D_2") CASE HASH("CLO_HALF_D_3") CASE HASH("CLO_HALF_D_4") CASE HASH("CLO_HALF_D_5") CASE HASH("CLO_HALF_D_6") CASE HASH("CLO_HALF_D_7") CASE HASH("CLO_HALF_D_8") CASE HASH("CLO_HALF_D_9") CASE HASH("CLO_HALF_D_10") CASE HASH("CLO_HALF_D_11") CASE HASH("CLO_HALF_D_12") RETURN COMP_TYPE_DECL BREAK ENDSWITCH // LOWRIDER SWITCH labelHash CASE HASH("CLO_S1F_PH_1_0") CASE HASH("CLO_S1F_PH_1_1") CASE HASH("CLO_S1F_PH_1_2") CASE HASH("CLO_S1F_PH_1_3") CASE HASH("CLO_S1F_PH_1_4") CASE HASH("CLO_S1F_PH_1_5") CASE HASH("CLO_S1F_PH_1_6") CASE HASH("CLO_S1F_PH_1_7") CASE HASH("CLO_S1F_PH_1_8") CASE HASH("CLO_S1F_PH_1_9") RETURN COMP_TYPE_PROPS BREAK ENDSWITCH // BIKER SWITCH labelHash CASE HASH("CLO_BIF_DECL_50") CASE HASH("CLO_BIF_DECL_49") CASE HASH("CLO_BIF_DECL_48") CASE HASH("CLO_BIF_DECL_47") CASE HASH("CLO_BIF_DECL_22") CASE HASH("CLO_BIF_DECL_23") CASE HASH("CLO_BIF_DECL_25") CASE HASH("CLO_BIF_DECL_24") CASE HASH("CLO_BIF_DECL_51") CASE HASH("CLO_BIF_DECL_52") CASE HASH("CLO_BIF_DECL_53") CASE HASH("CLO_BIF_DECL_54") CASE HASH("CLO_BIF_DECL_55") CASE HASH("CLO_BIF_DECL_58") CASE HASH("CLO_BIF_DECL_59") CASE HASH("CLO_BIF_DECL_60") CASE HASH("CLO_BIF_DECL_61") CASE HASH("CLO_BIF_DECL_62") CASE HASH("CLO_BIF_DECL_63") CASE HASH("CLO_BIF_DECL_64") CASE HASH("CLO_BIF_DECL_65") CASE HASH("CLO_BIF_DECL_66") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_D_26") CASE HASH("CLO_HP_F_D_27") CASE HASH("CLO_HP_F_D_26") CASE HASH("CLO_HP_F_D_23") CASE HASH("CLO_HP_F_D_25") CASE HASH("CLO_HP_F_D_24") CASE HASH("CLO_HP_F_D_34") CASE HASH("CLO_HP_F_D_33") CASE HASH("CLO_HP_F_D_36") CASE HASH("CLO_HP_F_D_29") CASE HASH("CLO_HP_F_D_30") CASE HASH("CLO_HP_F_D_28") CASE HASH("CLO_LTSF_D_1") CASE HASH("CLO_HP_F_D_32") CASE HASH("CLO_HP_F_D_35") CASE HASH("CLO_HP_F_D_31") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_INDF_HT_6_4") CASE HASH("CLO_INDF_HT_6_2") CASE HASH("CLO_INDF_HT_6_0") CASE HASH("CLO_INDF_HT_6_1") CASE HASH("CLO_INDF_HT_6_3") CASE HASH("CLO_INDF_HT_6_5") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_LTSFB_2_0") RETURN COMP_TYPE_BERD BREAK CASE HASH("CLO_LXF_DEC_37") CASE HASH("CLO_LXF_DEC_35") CASE HASH("CLO_LXF_DEC_29") CASE HASH("CLO_LXF_DEC_34") CASE HASH("CLO_LXF_DEC_32") CASE HASH("CLO_LXF_DEC_30") CASE HASH("CLO_LXF_DEC_33") CASE HASH("CLO_LXF_DEC_38") CASE HASH("CLO_LXF_DEC_31") CASE HASH("CLO_LXF_DEC_36") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_VEF_DEC_40") CASE HASH("CLO_VEF_DEC_39") CASE HASH("CLO_VEF_DEC_41") CASE HASH("CLO_VEF_DEC_42") CASE HASH("CLO_VEF_DEC_43") CASE HASH("CLO_VEF_DEC_44") CASE HASH("CLO_VEF_DEC_45") CASE HASH("CLO_VEF_DEC_46") CASE HASH("CLO_VEF_DEC_47") CASE HASH("CLO_VEF_DEC_48") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_S1F_PH_1_0") CASE HASH("CLO_S1F_PH_1_2") CASE HASH("CLO_S1F_PH_1_4") CASE HASH("CLO_S1F_PH_1_7") CASE HASH("CLO_S1F_PH_1_1") CASE HASH("CLO_S1F_PH_1_8") CASE HASH("CLO_S1F_PH_1_3") CASE HASH("CLO_S1F_PH_1_9") CASE HASH("CLO_S1F_PH_1_5") CASE HASH("CLO_S1F_PH_1_6") RETURN COMP_TYPE_PROPS BREAK CASE HASH("CLO_HALF_D_12") CASE HASH("CLO_HALF_D_1") CASE HASH("CLO_HALF_D_5") CASE HASH("CLO_HALF_D_0") CASE HASH("CLO_HALF_D_9") CASE HASH("CLO_HALF_D_6") CASE HASH("CLO_HALF_D_3") CASE HASH("CLO_HALF_D_7") CASE HASH("CLO_HALF_D_4") CASE HASH("CLO_HALF_D_10") CASE HASH("CLO_HALF_D_2") CASE HASH("CLO_HALF_D_8") CASE HASH("CLO_HALF_D_11") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_EXF_DECL_2") CASE HASH("CLO_EXF_DECL_3") CASE HASH("CLO_EXF_DECL_4") CASE HASH("CLO_EXF_DECL_5") CASE HASH("CLO_EXF_DECL_6") CASE HASH("CLO_EXF_DECL_7") CASE HASH("CLO_EXF_DECL_8") CASE HASH("CLO_EXF_DECL_9") CASE HASH("CLO_EXF_DECL_10") CASE HASH("CLO_EXF_DECL_11") CASE HASH("CLO_EXF_DECL_12") CASE HASH("CLO_EXF_DECL_13") CASE HASH("CLO_EXF_DECL_14") CASE HASH("CLO_EXF_DECL_15") CASE HASH("CLO_EXF_DECL_16") RETURN COMP_TYPE_DECL BREAK CASE HASH("CLO_EXF_EU_15_0") CASE HASH("CLO_EXF_EU_15_1") CASE HASH("CLO_EXF_EU_15_2") CASE HASH("CLO_EXF_EU_15_3") CASE HASH("CLO_EXF_EU_15_4") CASE HASH("CLO_EXF_EU_15_5") CASE HASH("CLO_EXF_EU_15_6") CASE HASH("CLO_EXF_EU_15_7") CASE HASH("CLO_EXF_EU_15_8") CASE HASH("CLO_EXF_EU_15_9") CASE HASH("CLO_EXF_EU_1510") CASE HASH("CLO_EXF_EU_1511") CASE HASH("CLO_EXF_EU_1512") CASE HASH("CLO_EXF_EU_1513") CASE HASH("CLO_EXF_EU_16_0") CASE HASH("CLO_EXF_EU_16_1") CASE HASH("CLO_EXF_EU_16_2") CASE HASH("CLO_EXF_EU_16_3") CASE HASH("CLO_EXF_EU_16_4") CASE HASH("CLO_EXF_EU_16_5") CASE HASH("CLO_EXF_EU_16_6") CASE HASH("CLO_EXF_EU_16_7") CASE HASH("CLO_EXF_EU_16_8") CASE HASH("CLO_EXF_EU_16_9") CASE HASH("CLO_EXF_EU_1610") CASE HASH("CLO_EXF_EU_1611") CASE HASH("CLO_EXF_EU_1612") CASE HASH("CLO_EXF_EU_1613") RETURN COMP_TYPE_JBIB BREAK CASE HASH("CLO_STF_O_E_0") CASE HASH("CLO_STF_O_E_1") CASE HASH("CLO_STF_O_E_2") CASE HASH("CLO_STF_O_E_3") CASE HASH("CLO_STF_O_E_4") CASE HASH("CLO_STF_O_E_5") CASE HASH("CLO_STF_O_E_6") RETURN COMP_TYPE_OUTFIT BREAK ENDSWITCH SWITCH labelHash CASE HASH("CLO_GRF_DECL_0") CASE HASH("CLO_GRF_DECL_1") CASE HASH("CLO_GRF_DECL_2") CASE HASH("CLO_GRF_DECL_3") CASE HASH("CLO_GRF_DECL_4") CASE HASH("CLO_GRF_DECL_5") CASE HASH("CLO_GRF_DECL_6") CASE HASH("CLO_GRF_DECL_7") CASE HASH("CLO_GRF_DECL_8") CASE HASH("CLO_GRF_DECL_9") CASE HASH("CLO_GRF_DECL_10") CASE HASH("CLO_GRF_DECL_11") CASE HASH("CLO_GRF_DECL_12") CASE HASH("CLO_GRF_DECL_13") CASE HASH("CLO_GRF_DECL_14") CASE HASH("CLO_GRF_DECL_15") CASE HASH("CLO_GRF_DECL_16") CASE HASH("CLO_GRF_DECL_17") CASE HASH("CLO_GRF_DECL_18") CASE HASH("CLO_GRF_DECL_19") CASE HASH("CLO_GRF_DECL_20") CASE HASH("CLO_GRF_DECL_21") CASE HASH("CLO_GRF_DECL_22") CASE HASH("CLO_GRF_DECL_23") CASE HASH("CLO_GRF_DECL_24") CASE HASH("CLO_GRF_DECL_25") CASE HASH("CLO_GRF_DECL_26") CASE HASH("CLO_GRF_DECL_27") CASE HASH("CLO_GRF_DECL_28") CASE HASH("CLO_GRF_DECL_29") CASE HASH("CLO_GRF_DECL_30") CASE HASH("CLO_GRF_DECL_31") CASE HASH("CLO_GRF_DECL_32") CASE HASH("CLO_GRF_DECL_33") CASE HASH("CLO_GRF_DECL_34") CASE HASH("CLO_GRF_DECL_35") CASE HASH("CLO_GRF_DECL_36") RETURN COMP_TYPE_DECL BREAK ENDSWITCH SWITCH labelHash CASE HASH("CLO_AWF_DECL_0") CASE HASH("CLO_AWF_DECL_1") CASE HASH("CLO_AWF_DECL_2") CASE HASH("CLO_AWF_DECL_3") CASE HASH("CLO_AWF_DECL_4") CASE HASH("CLO_AWF_DECL_5") CASE HASH("CLO_AWF_DECL_6") CASE HASH("CLO_AWF_DECL_7") CASE HASH("CLO_AWF_DECL_8") CASE HASH("CLO_AWF_DECL_9") CASE HASH("CLO_AWF_DECL_10") CASE HASH("CLO_AWF_DECL_11") CASE HASH("CLO_AWF_DECL_12") CASE HASH("CLO_AWF_DECL_13") CASE HASH("CLO_AWF_DECL_14") CASE HASH("CLO_AWF_DECL_15") CASE HASH("CLO_AWF_DECL_16") CASE HASH("CLO_AWF_DECL_17") CASE HASH("CLO_AWF_DECL_18") CASE HASH("CLO_AWF_DECL_19") CASE HASH("CLO_AWF_DECL_20") CASE HASH("CLO_AWF_DECL_21") CASE HASH("CLO_AWF_DECL_22") CASE HASH("CLO_AWF_DECL_23") CASE HASH("CLO_AWF_DECL_24") CASE HASH("CLO_AWF_DECL_25") CASE HASH("CLO_AWF_DECL_26") CASE HASH("CLO_AWF_DECL_27") CASE HASH("CLO_AWF_DECL_28") CASE HASH("CLO_AWF_DECL_29") CASE HASH("CLO_AWF_DECL_30") CASE HASH("CLO_AWF_DECL_31") CASE HASH("CLO_AWF_DECL_32") CASE HASH("CLO_AWF_DECL_33") CASE HASH("CLO_AWF_DECL_34") CASE HASH("CLO_AWF_DECL_35") CASE HASH("CLO_AWF_DECL_36") CASE HASH("CLO_AWF_DECL_37") CASE HASH("CLO_AWF_DECL_38") CASE HASH("CLO_AWF_DECL_39") CASE HASH("CLO_AWF_DECL_40") CASE HASH("CLO_AWF_DECL_41") CASE HASH("CLO_AWF_DECL_42") CASE HASH("CLO_AWF_DECL_43") CASE HASH("CLO_AWF_DECL_44") CASE HASH("CLO_AWF_DECL_45") CASE HASH("CLO_AWF_DECL_46") CASE HASH("CLO_AWF_DECL_47") CASE HASH("CLO_AWF_DECL_48") CASE HASH("CLO_AWF_DECL_49") CASE HASH("CLO_AWF_DECL_50") CASE HASH("CLO_AWF_DECL_51") CASE HASH("CLO_AWF_DECL_52") CASE HASH("CLO_AWF_DECL_53") CASE HASH("CLO_AWF_DECL_54") CASE HASH("CLO_AWF_DECL_55") CASE HASH("CLO_AWF_DECL_56") CASE HASH("CLO_AWF_DECL_57") CASE HASH("CLO_AWF_DECL_58") CASE HASH("CLO_AWF_DECL_59") CASE HASH("CLO_AWF_DECL_60") CASE HASH("CLO_AWF_DECL_61") CASE HASH("CLO_AWF_DECL_62") CASE HASH("CLO_AWF_DECL_63") CASE HASH("CLO_AWF_DECL_64") CASE HASH("CLO_AWF_DECL_65") CASE HASH("CLO_AWF_DECL_66") CASE HASH("CLO_AWF_DECL_67") CASE HASH("CLO_AWF_DECL_68") CASE HASH("CLO_AWF_DECL_69") CASE HASH("CLO_AWF_DECL_70") CASE HASH("CLO_AWF_DECL_71") CASE HASH("CLO_AWF_DECL_72") CASE HASH("CLO_AWF_DECL_73") CASE HASH("CLO_AWF_DECL_74") CASE HASH("CLO_AWF_DECL_75") CASE HASH("CLO_AWF_DECL_76") CASE HASH("CLO_AWF_DECL_77") CASE HASH("CLO_AWF_DECL_78") CASE HASH("CLO_AWF_DECL_79") CASE HASH("CLO_AWF_DECL_80") CASE HASH("CLO_AWF_DECL_81") CASE HASH("CLO_AWF_DECL_82") CASE HASH("CLO_AWF_DECL_83") CASE HASH("CLO_AWF_DECL_84") CASE HASH("CLO_AWF_DECL_85") CASE HASH("CLO_AWF_DECL_86") CASE HASH("CLO_AWF_DECL_87") CASE HASH("CLO_AWF_DECL_88") CASE HASH("CLO_AWF_DECL_89") CASE HASH("CLO_AWF_DECL_90") CASE HASH("CLO_AWF_DECL_91") CASE HASH("CLO_AWF_DECL_92") CASE HASH("CLO_AWF_DECL_93") CASE HASH("CLO_AWF_DECL_94") CASE HASH("CLO_AWF_DECL_95") CASE HASH("CLO_AWF_DECL_96") CASE HASH("CLO_AWF_DECL_97") CASE HASH("CLO_AWF_DECL_98") CASE HASH("CLO_AWF_DECL_99") CASE HASH("CLO_AWF_DECL_100") CASE HASH("CLO_AWF_DECL_101") CASE HASH("CLO_AWF_DECL_102") CASE HASH("CLO_AWF_DECL_103") CASE HASH("CLO_AWF_DECL_104") CASE HASH("CLO_AWF_DECL_105") CASE HASH("CLO_AWF_DECL_106") CASE HASH("CLO_AWF_DECL_107") CASE HASH("CLO_AWF_DECL_108") CASE HASH("CLO_AWF_DECL_109") CASE HASH("CLO_AWF_DECL_110") CASE HASH("CLO_AWF_DECL_111") CASE HASH("CLO_AWF_DECL_112") CASE HASH("CLO_AWF_DECL_113") CASE HASH("CLO_AWF_DECL_114") CASE HASH("CLO_AWF_DECL_115") CASE HASH("CLO_AWF_DECL_116") CASE HASH("CLO_AWF_DECL_117") CASE HASH("CLO_AWF_DECL_118") CASE HASH("CLO_AWF_DECL_119") CASE HASH("CLO_AWF_DECL_120") CASE HASH("CLO_AWF_DECL_121") CASE HASH("CLO_AWF_DECL_122") CASE HASH("CLO_AWF_DECL_123") CASE HASH("CLO_AWF_DECL_124") RETURN COMP_TYPE_DECL BREAK ENDSWITCH RETURN COMP_TYPE_HEAD ENDFUNC FUNC BOOL IS_CLOTHING_ITEM_PART_OF_CRIMINAL_ENTERPRISE_STARTER_PACK(INT iLabelHash, BOOL bCheckStarterPackExists = TRUE) IF bCheckStarterPackExists AND NOT HAS_MP_CRIMINAL_ENTERPRISE_PREMIUM_OR_STARTER_ACCESS() RETURN FALSE ENDIF // Stunt Outfits // Import/Export Outfits // Male SWITCH iLabelHash CASE HASH("CLO_IEM_O_3") // The Plain Sight CASE HASH("CLO_IEM_O_4") // The Smolder CASE HASH("CLO_IEM_O_5") // The Dealership CASE HASH("CLO_IEM_O_6") // The Bigness CASE HASH("CLO_IEM_O_7") // The New Skool CASE HASH("CLO_IEM_O_8") // The Hip-Hop CASE HASH("CLO_IEM_O_9") // The Gunshow CASE HASH("CLO_IEM_O_10") // The Patchwork CASE HASH("CLO_IEM_O_11") // The Puff CASE HASH("CLO_IEM_O_12") // The Anorak CASE HASH("CLO_STM_O_0") // Navy Racing Suit CASE HASH("CLO_STM_O_1") // Gray Racing Suit CASE HASH("CLO_STM_O_2") // Red Racing Suit CASE HASH("CLO_STM_O_3") // Black Racing Suit CASE HASH("CLO_STM_O_4") // Green Racing Suit CASE HASH("CLO_STM_O_5") // White Racing Suit CASE HASH("CLO_STM_O_6") // Green Biker Suit CASE HASH("CLO_STM_O_7") // Red Biker Suit CASE HASH("CLO_STM_O_8") // Italian Biker Suit CASE HASH("CLO_STM_O_9") // Black Biker Suit CASE HASH("CLO_STM_O_10") // French Biker Suit CASE HASH("CLO_STM_O_11") // Yellow Biker Suit CASE HASH("CLO_STM_O_12") // Pink Biker Suit CASE HASH("CLO_STM_O_13") // Blue Biker Suit CASE HASH("CLO_STM_O_14") // White Stuntman Suit CASE HASH("CLO_STM_O_15") // Blue Stuntman Suit CASE HASH("CLO_STM_O_16") // Red Stuntman Suit CASE HASH("CLO_STM_O_17") // Black Stuntman Suit CASE HASH("CLO_STM_O_18") // Pink Stuntman Suit CASE HASH("CLO_STM_O_19") // Gold Stuntman Suit CASE HASH("CLO_STM_O_20") // Silver Stuntman Suit RETURN TRUE BREAK ENDSWITCH // Female SWITCH iLabelHash CASE HASH("CLO_IEF_O_3") // The Plain Sight CASE HASH("CLO_IEF_O_4") // The Smolder CASE HASH("CLO_IEF_O_5") // The Dealership CASE HASH("CLO_IEF_O_6") // The Bigness CASE HASH("CLO_IEF_O_7") // The New Skool CASE HASH("CLO_IEF_O_8") // The Hip-Hop CASE HASH("CLO_IEF_O_9") // The Gunshow CASE HASH("CLO_IEF_O_10") // The Patchwork CASE HASH("CLO_IEF_O_11") // The Puff CASE HASH("CLO_IEF_O_12") // The Anorak CASE HASH("CLO_STF_O_0") // Navy Racing Suit CASE HASH("CLO_STF_O_1") // Gray Racing Suit CASE HASH("CLO_STF_O_2") // Red Racing Suit CASE HASH("CLO_STF_O_3") // Black Racing Suit CASE HASH("CLO_STF_O_4") // Green Racing Suit CASE HASH("CLO_STF_O_5") // White Racing Suit CASE HASH("CLO_STF_O_6") // Green Biker Suit CASE HASH("CLO_STF_O_7") // Red Biker Suit CASE HASH("CLO_STF_O_8") // Italian Biker Suit CASE HASH("CLO_STF_O_9") // Black Biker Suit CASE HASH("CLO_STF_O_10") // French Biker Suit CASE HASH("CLO_STF_O_11") // Yellow Biker Suit CASE HASH("CLO_STF_O_12") // Pink Biker Suit CASE HASH("CLO_STF_O_13") // Blue Biker Suit CASE HASH("CLO_STF_O_14") // White Stuntman Suit CASE HASH("CLO_STF_O_15") // Blue Stuntman Suit CASE HASH("CLO_STF_O_16") // Red Stuntman Suit CASE HASH("CLO_STF_O_17") // Black Stuntman Suit CASE HASH("CLO_STF_O_18") // Pink Stuntman Suit CASE HASH("CLO_STF_O_19") // Gold Stuntman Suit CASE HASH("CLO_STF_O_20") // Silver Stuntman Suit RETURN TRUE BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_FROM_LABEL(TEXT_LABEL_15 tlLabel) SWITCH GET_HASH_KEY(tlLabel) CASE HASH("CLO_IEM_O_3") FALLTHRU // The Plain Sight CASE HASH("CLO_IEF_O_3") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PLAIN_SIGHT) BREAK CASE HASH("CLO_IEM_O_4") FALLTHRU // The Smolder CASE HASH("CLO_IEF_O_4") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_SMOLDER) BREAK CASE HASH("CLO_IEM_O_5") FALLTHRU // The Dealership CASE HASH("CLO_IEF_O_5") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_DEALERSHIP) BREAK CASE HASH("CLO_IEM_O_6") FALLTHRU // The Bigness CASE HASH("CLO_IEF_O_6") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_BIGNESS) BREAK CASE HASH("CLO_IEM_O_7") FALLTHRU // The New Skool CASE HASH("CLO_IEF_O_7") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_NEW_SKOOL) BREAK CASE HASH("CLO_IEM_O_8") FALLTHRU // The Hip-Hop CASE HASH("CLO_IEF_O_8") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_HIP_HOP) BREAK CASE HASH("CLO_IEM_O_9") FALLTHRU // The Gunshow CASE HASH("CLO_IEF_O_9") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_GUNSHOW) BREAK CASE HASH("CLO_IEM_O_10") FALLTHRU // The Patchwork CASE HASH("CLO_IEF_O_10") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PATCHWORK) BREAK CASE HASH("CLO_IEM_O_11") FALLTHRU // The Puff CASE HASH("CLO_IEF_O_11") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PUFF) BREAK CASE HASH("CLO_IEM_O_12") FALLTHRU // The Anorak CASE HASH("CLO_IEF_O_12") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_ANORAK) BREAK CASE HASH("CLO_STM_O_0") FALLTHRU // Navy Racing Suit CASE HASH("CLO_STF_O_0") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_NAVY_RACING_SUIT) BREAK CASE HASH("CLO_STM_O_1") FALLTHRU // Gray Racing Suit CASE HASH("CLO_STF_O_1") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GRAY_RACING_SUIT) BREAK CASE HASH("CLO_STM_O_2") FALLTHRU // Red Racing Suit CASE HASH("CLO_STF_O_2") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_RACING_SUIT) BREAK CASE HASH("CLO_STM_O_3") FALLTHRU // Black Racing Suit CASE HASH("CLO_STF_O_3") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_RACING_SUIT) BREAK CASE HASH("CLO_STM_O_4") FALLTHRU // Green Racing Suit CASE HASH("CLO_STF_O_4") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GREEN_RACING_SUIT) BREAK CASE HASH("CLO_STM_O_5") FALLTHRU // White Racing Suit CASE HASH("CLO_STF_O_5") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_WHITE_RACING_SUIT) BREAK CASE HASH("CLO_STM_O_6") FALLTHRU // Green Biker Suit CASE HASH("CLO_STF_O_6") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GREEN_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_7") FALLTHRU // Red Biker Suit CASE HASH("CLO_STF_O_7") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_8") FALLTHRU // Italian Biker Suit CASE HASH("CLO_STF_O_8") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_ITALIAN_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_9") FALLTHRU // Black Biker Suit CASE HASH("CLO_STF_O_9") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_10") FALLTHRU // French Biker Suit CASE HASH("CLO_STF_O_10") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_FRENCH_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_11") FALLTHRU // Yellow Biker Suit CASE HASH("CLO_STF_O_11") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_YELLOW_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_12") FALLTHRU // Pink Biker Suit CASE HASH("CLO_STF_O_12") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_PINK_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_13") FALLTHRU // Blue Biker Suit CASE HASH("CLO_STF_O_13") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLUE_BIKER_SUIT) BREAK CASE HASH("CLO_STM_O_14") FALLTHRU // White Stuntman Suit CASE HASH("CLO_STF_O_14") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_WHITE_STUNTMAN_SUIT) BREAK CASE HASH("CLO_STM_O_15") FALLTHRU // Blue Stuntman Suit CASE HASH("CLO_STF_O_15") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLUE_STUNTMAN_SUIT) BREAK CASE HASH("CLO_STM_O_16") FALLTHRU // Red Stuntman Suit CASE HASH("CLO_STF_O_16") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_STUNTMAN_SUIT) BREAK CASE HASH("CLO_STM_O_17") FALLTHRU // Black Stuntman Suit CASE HASH("CLO_STF_O_17") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_STUNTMAN_SUIT) BREAK CASE HASH("CLO_STM_O_18") FALLTHRU // Pink Stuntman Suit CASE HASH("CLO_STF_O_18") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_PINK_STUNTMAN_SUIT) BREAK CASE HASH("CLO_STM_O_19") FALLTHRU // Gold Stuntman Suit CASE HASH("CLO_STF_O_19") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GOLD_STUNTMAN_SUIT) BREAK CASE HASH("CLO_STM_O_20") FALLTHRU // Silver Stuntman Suit CASE HASH("CLO_STF_O_20") RETURN (CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_SILVER_STUNTMAN_SUIT) BREAK ENDSWITCH CASSERTLN(DEBUG_SHOPS, "GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_FROM_LABEL unknown starter pack unlock for criminal enterprise clothing item \"", tlLabel, "\"") RETURN CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_END ENDFUNC FUNC STRING GET_NAMEHASH_FROM_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT eContent, MODEL_NAMES eModel) IF eModel = MP_M_FREEMODE_01 SWITCH eContent CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PLAIN_SIGHT RETURN "DLC_MP_IE_M_OUTFIT_3" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_SMOLDER RETURN "DLC_MP_IE_M_OUTFIT_4" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_DEALERSHIP RETURN "DLC_MP_IE_M_OUTFIT_5" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_BIGNESS RETURN "DLC_MP_IE_M_OUTFIT_6" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_NEW_SKOOL RETURN "DLC_MP_IE_M_OUTFIT_7" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_HIP_HOP RETURN "DLC_MP_IE_M_OUTFIT_8" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_GUNSHOW RETURN "DLC_MP_IE_M_OUTFIT_9" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PATCHWORK RETURN "DLC_MP_IE_M_OUTFIT_10" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PUFF RETURN "DLC_MP_IE_M_OUTFIT_11" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_ANORAK RETURN "DLC_MP_IE_M_OUTFIT_12" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_NAVY_RACING_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_0" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GRAY_RACING_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_1" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_RACING_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_2" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_RACING_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_3" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GREEN_RACING_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_4" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_WHITE_RACING_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_5" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GREEN_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_6" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_7" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_ITALIAN_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_8" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_9" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_FRENCH_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_10" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_YELLOW_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_11" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_PINK_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_12" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLUE_BIKER_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_13" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_WHITE_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_14" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLUE_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_15" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_16" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_17" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_PINK_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_18" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GOLD_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_19" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_SILVER_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_M_OUTFIT_20" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DEMON_RIDER RETURN "MP_MP_Biker_Tat_000_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BOTH_BARRELS RETURN "MP_MP_Biker_Tat_001_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_ROSE_TRIBUTE RETURN "MP_MP_Biker_Tat_002_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WEB_RIDER RETURN "MP_MP_Biker_Tat_003_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DRAGONS_FURY RETURN "MP_MP_Biker_Tat_004_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MADE_IN_AMERICA RETURN "MP_MP_Biker_Tat_005_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CHOPPER_FREEDOM RETURN "MP_MP_Biker_Tat_006_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SWOOPING_EAGLE RETURN "MP_MP_Biker_Tat_007_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FREEMOM_WHEELS RETURN "MP_MP_Biker_Tat_008_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MORBID_ARACHNID RETURN "MP_MP_Biker_Tat_009_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SKULL_OF_TAURUS RETURN "MP_MP_Biker_Tat_010_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIP_MY_BROTHERS RETURN "MP_MP_Biker_Tat_011_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_URBAN_STUNTER RETURN "MP_MP_Biker_Tat_012_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DEMON_CROSSBONES RETURN "MP_MP_Biker_Tat_013_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_LADY_MORTALITY RETURN "MP_MP_Biker_Tat_014_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_OR_DIE RETURN "MP_MP_Biker_Tat_015_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MACABRE_TREE RETURN "MP_MP_Biker_Tat_016_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CLAWED_BEAST RETURN "MP_MP_Biker_Tat_017_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SKELETAL_CHOPPER RETURN "MP_MP_Biker_Tat_018_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GRUESOME_TALONS RETURN "MP_MP_Biker_Tat_019_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CRANIAL_ROSE RETURN "MP_MP_Biker_Tat_020_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FLAMING_REAPER RETURN "MP_MP_Biker_Tat_021_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_INSIGNIA RETURN "MP_MP_Biker_Tat_022_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_MC RETURN "MP_MP_Biker_Tat_023_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_LIVE_TO_RIDE RETURN "MP_MP_Biker_Tat_024_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GOOD_LUCK RETURN "MP_MP_Biker_Tat_025_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_AMERICAN_DREAM RETURN "MP_MP_Biker_Tat_026_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BAD_LUCK RETURN "MP_MP_Biker_Tat_027_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DUSK_RIDER RETURN "MP_MP_Biker_Tat_028_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BONE_WRENCH RETURN "MP_MP_Biker_Tat_029_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BROTHERS_FOR_LIFE RETURN "MP_MP_Biker_Tat_030_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GEAR_HEAD RETURN "MP_MP_Biker_Tat_031_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_EAGLE RETURN "MP_MP_Biker_Tat_032_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_EAGLE_EMBLEM RETURN "MP_MP_Biker_Tat_033_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BROTHERHOOD_OF_BIKES RETURN "MP_MP_Biker_Tat_034_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CHAIN_FIST RETURN "MP_MP_Biker_Tat_035_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_ENGULFED_SKULL RETURN "MP_MP_Biker_Tat_036_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SCORCHED_SOUL RETURN "MP_MP_Biker_Tat_037_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FTW RETURN "MP_MP_Biker_Tat_038_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GAS_GUZZLER RETURN "MP_MP_Biker_Tat_039_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_AMERICAN_MADE RETURN "MP_MP_Biker_Tat_040_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_NO_REGRETS RETURN "MP_MP_Biker_Tat_041_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GRIM_RIDER RETURN "MP_MP_Biker_Tat_042_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_FOREVER RETURN "MP_MP_Biker_Tat_043_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_FREE RETURN "MP_MP_Biker_Tat_044_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_HARD_DIE_FAST RETURN "MP_MP_Biker_Tat_045_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SKULL_CHAIN RETURN "MP_MP_Biker_Tat_046_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SNAKE_BIKE RETURN "MP_MP_Biker_Tat_047_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_STFU RETURN "MP_MP_Biker_Tat_048_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_THESE_COLOURS_DONT_RUN RETURN "MP_MP_Biker_Tat_049_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_UNFORGIVEN RETURN "MP_MP_Biker_Tat_050_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_STYLIZED RETURN "MP_MP_Biker_Tat_051_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BIKER_MOUNT RETURN "MP_MP_Biker_Tat_052_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MUFFLER_HELMET RETURN "MP_MP_Biker_Tat_053_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MUM RETURN "MP_MP_Biker_Tat_054_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_POISON_SCORPION RETURN "MP_MP_Biker_Tat_055_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BONE_CRUISER RETURN "MP_MP_Biker_Tat_056_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_LAUGHING_SKULL RETURN "MP_MP_Biker_Tat_057_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_REAPER_VULTURE RETURN "MP_MP_Biker_Tat_058_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FAGGIO RETURN "MP_MP_Biker_Tat_059_M" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WE_ARE_THE_MODS RETURN "MP_MP_Biker_Tat_060_M" BREAK ENDSWITCH CASSERTLN(DEBUG_SHOPS, "GET_NAMEHASH_FROM_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT unknown starter pack unlock for male criminal enterprise clothing item ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(eContent), " ") RETURN "" ELIF eModel = MP_F_FREEMODE_01 SWITCH eContent CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PLAIN_SIGHT RETURN "DLC_MP_IE_F_OUTFIT_3" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_SMOLDER RETURN "DLC_MP_IE_F_OUTFIT_4" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_DEALERSHIP RETURN "DLC_MP_IE_F_OUTFIT_5" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_BIGNESS RETURN "DLC_MP_IE_F_OUTFIT_6" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_NEW_SKOOL RETURN "DLC_MP_IE_F_OUTFIT_7" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_HIP_HOP RETURN "DLC_MP_IE_F_OUTFIT_8" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_GUNSHOW RETURN "DLC_MP_IE_F_OUTFIT_9" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PATCHWORK RETURN "DLC_MP_IE_F_OUTFIT_10" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_PUFF RETURN "DLC_MP_IE_F_OUTFIT_11" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_ANORAK RETURN "DLC_MP_IE_F_OUTFIT_12" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_NAVY_RACING_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_0" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GRAY_RACING_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_1" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_RACING_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_2" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_RACING_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_3" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GREEN_RACING_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_4" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_WHITE_RACING_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_5" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GREEN_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_6" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_7" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_ITALIAN_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_8" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_9" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_FRENCH_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_10" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_YELLOW_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_11" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_PINK_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_12" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLUE_BIKER_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_13" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_WHITE_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_14" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLUE_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_15" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_RED_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_16" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_BLACK_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_17" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_PINK_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_18" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_GOLD_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_19" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_SILVER_STUNTMAN_SUIT RETURN "DLC_MP_STUNT_F_OUTFIT_20" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DEMON_RIDER RETURN "MP_MP_Biker_Tat_000_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BOTH_BARRELS RETURN "MP_MP_Biker_Tat_001_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_ROSE_TRIBUTE RETURN "MP_MP_Biker_Tat_002_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WEB_RIDER RETURN "MP_MP_Biker_Tat_003_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DRAGONS_FURY RETURN "MP_MP_Biker_Tat_004_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MADE_IN_AMERICA RETURN "MP_MP_Biker_Tat_005_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CHOPPER_FREEDOM RETURN "MP_MP_Biker_Tat_006_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SWOOPING_EAGLE RETURN "MP_MP_Biker_Tat_007_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FREEMOM_WHEELS RETURN "MP_MP_Biker_Tat_008_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MORBID_ARACHNID RETURN "MP_MP_Biker_Tat_009_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SKULL_OF_TAURUS RETURN "MP_MP_Biker_Tat_010_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIP_MY_BROTHERS RETURN "MP_MP_Biker_Tat_011_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_URBAN_STUNTER RETURN "MP_MP_Biker_Tat_012_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DEMON_CROSSBONES RETURN "MP_MP_Biker_Tat_013_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_LADY_MORTALITY RETURN "MP_MP_Biker_Tat_014_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_OR_DIE RETURN "MP_MP_Biker_Tat_015_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MACABRE_TREE RETURN "MP_MP_Biker_Tat_016_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CLAWED_BEAST RETURN "MP_MP_Biker_Tat_017_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SKELETAL_CHOPPER RETURN "MP_MP_Biker_Tat_018_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GRUESOME_TALONS RETURN "MP_MP_Biker_Tat_019_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CRANIAL_ROSE RETURN "MP_MP_Biker_Tat_020_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FLAMING_REAPER RETURN "MP_MP_Biker_Tat_021_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_INSIGNIA RETURN "MP_MP_Biker_Tat_022_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_MC RETURN "MP_MP_Biker_Tat_023_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_LIVE_TO_RIDE RETURN "MP_MP_Biker_Tat_024_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GOOD_LUCK RETURN "MP_MP_Biker_Tat_025_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_AMERICAN_DREAM RETURN "MP_MP_Biker_Tat_026_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BAD_LUCK RETURN "MP_MP_Biker_Tat_027_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DUSK_RIDER RETURN "MP_MP_Biker_Tat_028_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BONE_WRENCH RETURN "MP_MP_Biker_Tat_029_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BROTHERS_FOR_LIFE RETURN "MP_MP_Biker_Tat_030_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GEAR_HEAD RETURN "MP_MP_Biker_Tat_031_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_EAGLE RETURN "MP_MP_Biker_Tat_032_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_EAGLE_EMBLEM RETURN "MP_MP_Biker_Tat_033_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BROTHERHOOD_OF_BIKES RETURN "MP_MP_Biker_Tat_034_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_CHAIN_FIST RETURN "MP_MP_Biker_Tat_035_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_ENGULFED_SKULL RETURN "MP_MP_Biker_Tat_036_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SCORCHED_SOUL RETURN "MP_MP_Biker_Tat_037_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FTW RETURN "MP_MP_Biker_Tat_038_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GAS_GUZZLER RETURN "MP_MP_Biker_Tat_039_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_AMERICAN_MADE RETURN "MP_MP_Biker_Tat_040_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_NO_REGRETS RETURN "MP_MP_Biker_Tat_041_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_GRIM_RIDER RETURN "MP_MP_Biker_Tat_042_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_FOREVER RETURN "MP_MP_Biker_Tat_043_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_FREE RETURN "MP_MP_Biker_Tat_044_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_HARD_DIE_FAST RETURN "MP_MP_Biker_Tat_045_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SKULL_CHAIN RETURN "MP_MP_Biker_Tat_046_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_SNAKE_BIKE RETURN "MP_MP_Biker_Tat_047_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_STFU RETURN "MP_MP_Biker_Tat_048_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_THESE_COLOURS_DONT_RUN RETURN "MP_MP_Biker_Tat_049_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_UNFORGIVEN RETURN "MP_MP_Biker_Tat_050_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WESTERN_STYLIZED RETURN "MP_MP_Biker_Tat_051_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BIKER_MOUNT RETURN "MP_MP_Biker_Tat_052_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MUFFLER_HELMET RETURN "MP_MP_Biker_Tat_053_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_MUM RETURN "MP_MP_Biker_Tat_054_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_POISON_SCORPION RETURN "MP_MP_Biker_Tat_055_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_BONE_CRUISER RETURN "MP_MP_Biker_Tat_056_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_LAUGHING_SKULL RETURN "MP_MP_Biker_Tat_057_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_REAPER_VULTURE RETURN "MP_MP_Biker_Tat_058_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_FAGGIO RETURN "MP_MP_Biker_Tat_059_F" BREAK CASE CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_WE_ARE_THE_MODS RETURN "MP_MP_Biker_Tat_060_F" BREAK ENDSWITCH CASSERTLN(DEBUG_SHOPS, "GET_NAMEHASH_FROM_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT unknown starter pack unlock for female criminal enterprise clothing item ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(eContent), " ") RETURN "" ENDIF CASSERTLN(DEBUG_SHOPS, "GET_NAMEHASH_FROM_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT unknown starter pack unlock for \"", GET_MODEL_NAME_FOR_DEBUG(eModel), "\" criminal enterprise clothing item ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(eContent), " ") RETURN "" ENDFUNC PROC UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_OUTFITS() IF NOT NETWORK_IS_GAME_IN_PROGRESS() EXIT ENDIF IF IS_TRANSITION_ACTIVE() EXIT ENDIF IF IS_PLAYER_AN_ANIMAL(PLAYER_ID()) EXIT ENDIF MODEL_NAMES ePlayerModel = GET_ENTITY_MODEL(PLAYER_PED_ID()) IF ePlayerModel = MP_M_FREEMODE_01 OR ePlayerModel = MP_F_FREEMODE_01 // ELSE EXIT ENDIF CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT tempContent STRING sTempContentName INT iStartLoop = ENUM_TO_INT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_NAVY_RACING_SUIT) INT iMaxLoop = ENUM_TO_INT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_OUTFIT_THE_SMOLDER) INT iLoop FOR iLoop = iStartLoop TO iMaxLoop STEP 1 tempContent = INT_TO_ENUM(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT, iLoop) sTempContentName = GET_NAMEHASH_FROM_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(tempContent, ePlayerModel) IF NOT HAS_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(tempContent) IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(GET_HASH_KEY(sTempContentName), PED_COMPONENT_ACQUIRED_SLOT) SET_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(tempContent) CPRINTLN(DEBUG_SHOPS, "UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_OUTFITS set ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(tempContent), " for \"", sTempContentName, "\"") ENDIF ENDIF ENDFOR ENDPROC PROC UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_TATTOOS() IF IS_TRANSITION_ACTIVE() EXIT ENDIF IF IS_PLAYER_AN_ANIMAL(PLAYER_ID()) EXIT ENDIF MODEL_NAMES ePlayerModel = GET_ENTITY_MODEL(PLAYER_PED_ID()) TATTOO_FACTION_ENUM eFaction IF ePlayerModel = MP_M_FREEMODE_01 eFaction = TATTOO_MP_FM ELIF ePlayerModel = MP_F_FREEMODE_01 eFaction = TATTOO_MP_FM_F ELSE EXIT ENDIF CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT tempContent STRING sTempContentName TATTOO_NAME_ENUM aTattoo INT iStartLoop = ENUM_TO_INT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_RIDE_FOREVER) INT iMaxLoop = ENUM_TO_INT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_TATTOO_DRAGONS_FURY) INT iLoop FOR iLoop = iStartLoop TO iMaxLoop STEP 1 tempContent = INT_TO_ENUM(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT, iLoop) sTempContentName = GET_NAMEHASH_FROM_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(tempContent, ePlayerModel) aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(GET_HASH_KEY(sTempContentName), eFaction) IF NOT HAS_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(tempContent) IF IS_MP_TATTOO_PURCHASED(aTattoo) SET_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(tempContent) CPRINTLN(DEBUG_SHOPS, "UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_TATTOOS set ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(tempContent), " for \"", sTempContentName, "\"") ENDIF ENDIF ENDFOR ENDPROC PROC UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_WEAPONS() IF IS_TRANSITION_ACTIVE() EXIT ENDIF IF IS_PLAYER_AN_ANIMAL(PLAYER_ID()) EXIT ENDIF IF NOT HAS_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_MARKSMAN_RIFLE) IF IS_MP_WEAPON_PURCHASED(WEAPONTYPE_DLC_MARKSMANRIFLE) SET_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_MARKSMAN_RIFLE) CPRINTLN(DEBUG_SHOPS, "UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_TATTOOS set ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_MARKSMAN_RIFLE)) ENDIF ENDIF IF NOT HAS_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_COMPACT_RIFLE) IF IS_MP_WEAPON_PURCHASED(WEAPONTYPE_DLC_COMPACTRIFLE) SET_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_COMPACT_RIFLE) CPRINTLN(DEBUG_SHOPS, "UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_TATTOOS set ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_COMPACT_RIFLE)) ENDIF ENDIF IF NOT HAS_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_COMPACT_GRENADE_LAUNCHER) IF IS_MP_WEAPON_PURCHASED(WEAPONTYPE_DLC_COMPACTLAUNCHER) SET_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_COMPACT_GRENADE_LAUNCHER) CPRINTLN(DEBUG_SHOPS, "UPDATE_PLAYER_PURCHASED_CRIMINAL_ENTERPRISE_STARTER_PACK_TATTOOS set ", GET_CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_NAME_FOR_DEBUG(CRIMINAL_ENTERPRISE_STARTER_PACK_CONTENT_WEAPON_COMPACT_GRENADE_LAUNCHER)) ENDIF ENDIF ENDPROC FUNC BOOL IS_UNLOCK_DLC_CLOTHING_ITEM(INT iItemHash) // R* Tops SWITCH iItemHash // Blue R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_0") CASE HASH("DLC_MP_GR_F_JBIB_25_0") CASE HASH("CLO_GRM_U_19_0") CASE HASH("CLO_GRF_U_25_0") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_BLUE) BREAK // Red R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_1") CASE HASH("DLC_MP_GR_F_JBIB_25_1") CASE HASH("CLO_GRM_U_19_1") CASE HASH("CLO_GRF_U_25_1") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_RED) BREAK // R* Thug Pocket Tee CASE HASH("DLC_MP_GR_M_JBIB_20_0") CASE HASH("DLC_MP_GR_F_JBIB_26_0") CASE HASH("CLO_GRM_U_20_0") CASE HASH("CLO_GRF_U_26_0") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_PATTERN_POCKET) BREAK ENDSWITCH SWITCH iItemHash // White Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_0") CASE HASH("DLC_MP_GR_F_DECL_5_0") CASE HASH("CLO_GRM_DECL_19") CASE HASH("CLO_GRF_DECL_19") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_HOODIE) BREAK // Black Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_1") CASE HASH("DLC_MP_GR_F_DECL_5_1") CASE HASH("CLO_GRM_DECL_20") CASE HASH("CLO_GRF_DECL_20") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_HOODIE) BREAK // White Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_2") CASE HASH("DLC_MP_GR_F_DECL_5_2") CASE HASH("CLO_GRM_DECL_21") CASE HASH("CLO_GRF_DECL_21") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_HOODIE) BREAK // Black Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_3") CASE HASH("DLC_MP_GR_F_DECL_5_3") CASE HASH("CLO_GRM_DECL_22") CASE HASH("CLO_GRF_DECL_22") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_SHREWSBURY_HOODIE) BREAK // White Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_4") CASE HASH("DLC_MP_GR_F_DECL_5_4") CASE HASH("CLO_GRM_DECL_23") CASE HASH("CLO_GRF_DECL_23") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_HOODIE) BREAK // Black Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_5") CASE HASH("DLC_MP_GR_F_DECL_5_5") CASE HASH("CLO_GRM_DECL_24") CASE HASH("CLO_GRF_DECL_24") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // White Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_6") CASE HASH("DLC_MP_GR_F_DECL_5_6") CASE HASH("CLO_GRM_DECL_25") CASE HASH("CLO_GRF_DECL_25") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_HOODIE) BREAK // Black Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_7") CASE HASH("DLC_MP_GR_F_DECL_5_7") CASE HASH("CLO_GRM_DECL_26") CASE HASH("CLO_GRF_DECL_26") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // Black Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_8") CASE HASH("DLC_MP_GR_F_DECL_5_8") CASE HASH("CLO_GRM_DECL_27") CASE HASH("CLO_GRF_DECL_27") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_HOODIE) BREAK // White Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_9") CASE HASH("DLC_MP_GR_F_DECL_5_9") CASE HASH("CLO_GRM_DECL_28") CASE HASH("CLO_GRF_DECL_28") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // Black Warstock Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_10") CASE HASH("DLC_MP_GR_F_DECL_5_10") CASE HASH("CLO_GRM_DECL_29") CASE HASH("CLO_GRF_DECL_29") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_WARSTOCK_HOODIE) BREAK ENDSWITCH // Gunrunning reward hats SWITCH iItemHash // Red Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_0") CASE HASH("DLC_MP_GR_F_PHEAD_6_0") CASE HASH("DLC_MP_GR_M_PHEAD_7_0") CASE HASH("DLC_MP_GR_F_PHEAD_7_0") CASE HASH("CLO_GRM_PH_6_0") CASE HASH("CLO_GRF_PH_6_0") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAWK_AND_LITTLE_CAP) BREAK // Black Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_1") CASE HASH("DLC_MP_GR_F_PHEAD_6_1") CASE HASH("DLC_MP_GR_M_PHEAD_7_1") CASE HASH("DLC_MP_GR_F_PHEAD_7_1") CASE HASH("CLO_GRM_PH_6_1") CASE HASH("CLO_GRF_PH_6_1") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // White Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_2") CASE HASH("DLC_MP_GR_F_PHEAD_6_2") CASE HASH("DLC_MP_GR_M_PHEAD_7_2") CASE HASH("DLC_MP_GR_F_PHEAD_7_2") CASE HASH("CLO_GRM_PH_6_2") CASE HASH("CLO_GRF_PH_6_2") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_CAP) BREAK // Black Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_3") CASE HASH("DLC_MP_GR_F_PHEAD_6_3") CASE HASH("DLC_MP_GR_M_PHEAD_7_3") CASE HASH("DLC_MP_GR_F_PHEAD_7_3") CASE HASH("CLO_GRM_PH_6_3") CASE HASH("CLO_GRF_PH_6_3") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // White Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_4") CASE HASH("DLC_MP_GR_F_PHEAD_6_4") CASE HASH("DLC_MP_GR_M_PHEAD_7_4") CASE HASH("DLC_MP_GR_F_PHEAD_7_4") CASE HASH("CLO_GRM_PH_6_4") CASE HASH("CLO_GRF_PH_6_4") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_CAP) BREAK // Black Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_5") CASE HASH("DLC_MP_GR_F_PHEAD_6_5") CASE HASH("DLC_MP_GR_M_PHEAD_7_5") CASE HASH("DLC_MP_GR_F_PHEAD_7_5") CASE HASH("CLO_GRM_PH_6_5") CASE HASH("CLO_GRF_PH_6_5") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_VOM_FEUER_CAP) BREAK // Wine Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_6") CASE HASH("DLC_MP_GR_F_PHEAD_6_6") CASE HASH("DLC_MP_GR_M_PHEAD_7_6") CASE HASH("DLC_MP_GR_F_PHEAD_7_6") CASE HASH("CLO_GRM_PH_6_6") CASE HASH("CLO_GRF_PH_6_6") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WINE_COIL_CAP) BREAK // Black Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_7") CASE HASH("DLC_MP_GR_F_PHEAD_6_7") CASE HASH("DLC_MP_GR_M_PHEAD_7_7") CASE HASH("DLC_MP_GR_F_PHEAD_7_7") CASE HASH("CLO_GRM_PH_6_7") CASE HASH("CLO_GRF_PH_6_7") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_CAP) BREAK // Black Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_8") CASE HASH("DLC_MP_GR_F_PHEAD_6_8") CASE HASH("DLC_MP_GR_M_PHEAD_7_8") CASE HASH("DLC_MP_GR_F_PHEAD_7_8") CASE HASH("CLO_GRM_PH_6_8") CASE HASH("CLO_GRF_PH_6_8") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_CAP) BREAK // Red Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_9") CASE HASH("DLC_MP_GR_F_PHEAD_6_9") CASE HASH("DLC_MP_GR_M_PHEAD_7_9") CASE HASH("DLC_MP_GR_F_PHEAD_7_9") CASE HASH("CLO_GRM_PH_6_9") CASE HASH("CLO_GRF_PH_6_9") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // Warstock Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_10") CASE HASH("DLC_MP_GR_F_PHEAD_6_10") CASE HASH("DLC_MP_GR_M_PHEAD_7_10") CASE HASH("DLC_MP_GR_F_PHEAD_7_10") CASE HASH("CLO_GRM_PH_6_10") CASE HASH("CLO_GRF_PH_6_10") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WARSTOCK_CAP) BREAK ENDSWITCH SWITCH iItemHash // Black Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_000_M") CASE HASH("MP_Gunrunning_Award_000_F") CASE HASH("CLO_GRM_DECL_0") CASE HASH("CLO_GRF_DECL_0") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_LOGO_TEE) BREAK // White Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_001_M") CASE HASH("MP_Gunrunning_Award_001_F") CASE HASH("CLO_GRM_DECL_1") CASE HASH("CLO_GRF_DECL_1") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // White Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_002_M") CASE HASH("MP_Gunrunning_Award_002_F") CASE HASH("CLO_GRM_DECL_2") CASE HASH("CLO_GRF_DECL_2") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_TEE) BREAK // Black Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_003_M") CASE HASH("MP_Gunrunning_Award_003_F") CASE HASH("CLO_GRM_DECL_3") CASE HASH("CLO_GRF_DECL_3") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_TEE) BREAK // Yellow Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_004_M") CASE HASH("MP_Gunrunning_Award_004_F") CASE HASH("CLO_GRM_DECL_4") CASE HASH("CLO_GRF_DECL_4") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // White Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_005_M") CASE HASH("MP_Gunrunning_Award_005_F") CASE HASH("CLO_GRM_DECL_5") CASE HASH("CLO_GRF_DECL_5") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_LOGO_TEE) BREAK // White Shrewbury Tee CASE HASH("MP_Gunrunning_Award_006_M") CASE HASH("MP_Gunrunning_Award_006_F") CASE HASH("CLO_GRM_DECL_6") CASE HASH("CLO_GRF_DECL_6") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWBURY_TEE) BREAK // Black Shrewsbury Tee CASE HASH("MP_Gunrunning_Award_007_M") CASE HASH("MP_Gunrunning_Award_007_F") CASE HASH("CLO_GRM_DECL_7") CASE HASH("CLO_GRF_DECL_7") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // Green Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_008_M") CASE HASH("MP_Gunrunning_Award_008_F") CASE HASH("CLO_GRM_DECL_8") CASE HASH("CLO_GRF_DECL_8") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // Yellow Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_009_M") CASE HASH("MP_Gunrunning_Award_009_F") CASE HASH("CLO_GRM_DECL_9") CASE HASH("CLO_GRF_DECL_9") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_LOGO_TEE) BREAK // Yellow Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_010_M") CASE HASH("MP_Gunrunning_Award_010_F") CASE HASH("CLO_GRM_DECL_10") CASE HASH("CLO_GRF_DECL_10") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_TEE) BREAK // Green Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_011_M") CASE HASH("MP_Gunrunning_Award_011_F") CASE HASH("CLO_GRM_DECL_11") CASE HASH("CLO_GRF_DECL_11") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_VOM_FEUER_TEE) BREAK // White Coil Tee CASE HASH("MP_Gunrunning_Award_012_M") CASE HASH("MP_Gunrunning_Award_012_F") CASE HASH("CLO_GRM_DECL_12") CASE HASH("CLO_GRF_DECL_12") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_TEE) BREAK // Red Coil Tee CASE HASH("MP_Gunrunning_Award_013_M") CASE HASH("MP_Gunrunning_Award_013_F") CASE HASH("CLO_GRM_DECL_13") CASE HASH("CLO_GRF_DECL_13") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK // Black Coil Tee CASE HASH("MP_Gunrunning_Award_014_M") CASE HASH("MP_Gunrunning_Award_014_F") CASE HASH("CLO_GRM_DECL_14") CASE HASH("CLO_GRF_DECL_14") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_TEE) BREAK // Black Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_015_M") CASE HASH("MP_Gunrunning_Award_015_F") CASE HASH("CLO_GRM_DECL_15") CASE HASH("CLO_GRF_DECL_15") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_TEE) BREAK // White Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_016_M") CASE HASH("MP_Gunrunning_Award_016_F") CASE HASH("CLO_GRM_DECL_16") CASE HASH("CLO_GRF_DECL_16") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_AMMUNATION_TEE) BREAK // Yellow Warstock Tee CASE HASH("MP_Gunrunning_Award_017_M") CASE HASH("MP_Gunrunning_Award_017_F") CASE HASH("CLO_GRM_DECL_17") CASE HASH("CLO_GRF_DECL_17") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_WARSTOCK_TEE) BREAK // Green Warstock Tee CASE HASH("MP_Gunrunning_Award_018_M") CASE HASH("MP_Gunrunning_Award_018_F") CASE HASH("CLO_GRM_DECL_18") CASE HASH("CLO_GRF_DECL_18") RETURN GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) BREAK ENDSWITCH SWITCH iItemHash // R* Black Logo Tee CASE HASH("MP_Gunrunning_Award_019_M") CASE HASH("MP_Gunrunning_Award_025_F")//CASE HASH("MP_Gunrunning_Award_019_F") CASE HASH("CLO_GRM_DECL_30") CASE HASH("CLO_GRF_DECL_30") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_BLACK) BREAK // R* Black Weed Camo Tee CASE HASH("MP_Gunrunning_Award_020_M") CASE HASH("MP_Gunrunning_Award_020_F") CASE HASH("CLO_GRM_DECL_31") CASE HASH("CLO_GRF_DECL_31") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_GREY) BREAK // R* White Weed Camo Tee CASE HASH("MP_Gunrunning_Award_020_M_ALT") CASE HASH("MP_Gunrunning_Award_020_F_ALT") CASE HASH("CLO_GRM_DECL_32") CASE HASH("CLO_GRF_DECL_32") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_WHITE) BREAK // R* Razor Tee CASE HASH("MP_Gunrunning_Award_021_M") CASE HASH("MP_Gunrunning_Award_021_F") CASE HASH("CLO_GRM_DECL_33") CASE HASH("CLO_GRF_DECL_33") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_PINK_BLADE) BREAK // R* White Logo Tee CASE HASH("MP_Gunrunning_Award_022_M") CASE HASH("MP_Gunrunning_Award_026_F")//CASE HASH("MP_Gunrunning_Award_022_F") CASE HASH("CLO_GRM_DECL_34") CASE HASH("CLO_GRF_DECL_34") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_WHITE) BREAK // R* Glitch Logo Tee CASE HASH("MP_Gunrunning_Award_023_M") CASE HASH("MP_Gunrunning_Award_023_F") CASE HASH("CLO_GRM_DECL_35") CASE HASH("CLO_GRF_DECL_35") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_INTERFERENCE) BREAK // R* Glitch Tee CASE HASH("MP_Gunrunning_Award_024_M") CASE HASH("MP_Gunrunning_Award_024_F") CASE HASH("CLO_GRM_DECL_36") CASE HASH("CLO_GRF_DECL_36") RETURN GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_GAMES_INTERFERENCE) BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL UNLOCK_DLC_CLOTHING_ITEM(INT iItemHash) // R* Tops SWITCH iItemHash // Blue R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_0") CASE HASH("DLC_MP_GR_F_JBIB_25_0") CASE HASH("CLO_GRM_U_19_0") CASE HASH("CLO_GRF_U_25_0") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_BLUE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_BLUE, TRUE) RETURN TRUE ENDIF BREAK // Red R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_1") CASE HASH("DLC_MP_GR_F_JBIB_25_1") CASE HASH("CLO_GRM_U_19_1") CASE HASH("CLO_GRF_U_25_1") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_RED) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_RED, TRUE) RETURN TRUE ENDIF BREAK // R* Thug Pocket Tee CASE HASH("DLC_MP_GR_M_JBIB_20_0") CASE HASH("DLC_MP_GR_F_JBIB_26_0") CASE HASH("CLO_GRM_U_20_0") CASE HASH("CLO_GRF_U_26_0") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_PATTERN_POCKET) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_PATTERN_POCKET, TRUE) RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iItemHash // White Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_0") CASE HASH("DLC_MP_GR_F_DECL_5_0") CASE HASH("CLO_GRM_DECL_19") CASE HASH("CLO_GRF_DECL_19") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // Black Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_1") CASE HASH("DLC_MP_GR_F_DECL_5_1") CASE HASH("CLO_GRM_DECL_20") CASE HASH("CLO_GRF_DECL_20") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // White Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_2") CASE HASH("DLC_MP_GR_F_DECL_5_2") CASE HASH("CLO_GRM_DECL_21") CASE HASH("CLO_GRF_DECL_21") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // Black Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_3") CASE HASH("DLC_MP_GR_F_DECL_5_3") CASE HASH("CLO_GRM_DECL_22") CASE HASH("CLO_GRF_DECL_22") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_SHREWSBURY_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_SHREWSBURY_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // White Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_4") CASE HASH("DLC_MP_GR_F_DECL_5_4") CASE HASH("CLO_GRM_DECL_23") CASE HASH("CLO_GRF_DECL_23") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // Black Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_5") CASE HASH("DLC_MP_GR_F_DECL_5_5") CASE HASH("CLO_GRM_DECL_24") CASE HASH("CLO_GRF_DECL_24") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // White Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_6") CASE HASH("DLC_MP_GR_F_DECL_5_6") CASE HASH("CLO_GRM_DECL_25") CASE HASH("CLO_GRF_DECL_25") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // Black Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_7") CASE HASH("DLC_MP_GR_F_DECL_5_7") CASE HASH("CLO_GRM_DECL_26") CASE HASH("CLO_GRF_DECL_26") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // Black Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_8") CASE HASH("DLC_MP_GR_F_DECL_5_8") CASE HASH("CLO_GRM_DECL_27") CASE HASH("CLO_GRF_DECL_27") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_HOODIE, TRUE) RETURN TRUE ENDIF BREAK // White Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_9") CASE HASH("DLC_MP_GR_F_DECL_5_9") CASE HASH("CLO_GRM_DECL_28") CASE HASH("CLO_GRF_DECL_28") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // Black Warstock Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_10") CASE HASH("DLC_MP_GR_F_DECL_5_10") CASE HASH("CLO_GRM_DECL_29") CASE HASH("CLO_GRF_DECL_29") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_WARSTOCK_HOODIE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_WARSTOCK_HOODIE, TRUE) RETURN TRUE ENDIF BREAK ENDSWITCH // Gunrunning reward hats SWITCH iItemHash // Red Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_0") CASE HASH("DLC_MP_GR_F_PHEAD_6_0") CASE HASH("DLC_MP_GR_M_PHEAD_7_0") CASE HASH("DLC_MP_GR_F_PHEAD_7_0") CASE HASH("CLO_GRM_PH_6_0") CASE HASH("CLO_GRF_PH_6_0") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAWK_AND_LITTLE_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAWK_AND_LITTLE_CAP, TRUE) RETURN TRUE ENDIF BREAK // Black Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_1") CASE HASH("DLC_MP_GR_F_PHEAD_6_1") CASE HASH("DLC_MP_GR_M_PHEAD_7_1") CASE HASH("DLC_MP_GR_F_PHEAD_7_1") CASE HASH("CLO_GRM_PH_6_1") CASE HASH("CLO_GRF_PH_6_1") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // White Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_2") CASE HASH("DLC_MP_GR_F_PHEAD_6_2") CASE HASH("DLC_MP_GR_M_PHEAD_7_2") CASE HASH("DLC_MP_GR_F_PHEAD_7_2") CASE HASH("CLO_GRM_PH_6_2") CASE HASH("CLO_GRF_PH_6_2") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_CAP, TRUE) RETURN TRUE ENDIF BREAK // Black Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_3") CASE HASH("DLC_MP_GR_F_PHEAD_6_3") CASE HASH("DLC_MP_GR_M_PHEAD_7_3") CASE HASH("DLC_MP_GR_F_PHEAD_7_3") CASE HASH("CLO_GRM_PH_6_3") CASE HASH("CLO_GRF_PH_6_3") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // White Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_4") CASE HASH("DLC_MP_GR_F_PHEAD_6_4") CASE HASH("DLC_MP_GR_M_PHEAD_7_4") CASE HASH("DLC_MP_GR_F_PHEAD_7_4") CASE HASH("CLO_GRM_PH_6_4") CASE HASH("CLO_GRF_PH_6_4") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_CAP, TRUE) RETURN TRUE ENDIF BREAK // Black Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_5") CASE HASH("DLC_MP_GR_F_PHEAD_6_5") CASE HASH("DLC_MP_GR_M_PHEAD_7_5") CASE HASH("DLC_MP_GR_F_PHEAD_7_5") CASE HASH("CLO_GRM_PH_6_5") CASE HASH("CLO_GRF_PH_6_5") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_VOM_FEUER_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_VOM_FEUER_CAP, TRUE) RETURN TRUE ENDIF BREAK // Wine Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_6") CASE HASH("DLC_MP_GR_F_PHEAD_6_6") CASE HASH("DLC_MP_GR_M_PHEAD_7_6") CASE HASH("DLC_MP_GR_F_PHEAD_7_6") CASE HASH("CLO_GRM_PH_6_6") CASE HASH("CLO_GRF_PH_6_6") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WINE_COIL_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WINE_COIL_CAP, TRUE) RETURN TRUE ENDIF BREAK // Black Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_7") CASE HASH("DLC_MP_GR_F_PHEAD_6_7") CASE HASH("DLC_MP_GR_M_PHEAD_7_7") CASE HASH("DLC_MP_GR_F_PHEAD_7_7") CASE HASH("CLO_GRM_PH_6_7") CASE HASH("CLO_GRF_PH_6_7") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_CAP, TRUE) RETURN TRUE ENDIF BREAK // Black Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_8") CASE HASH("DLC_MP_GR_F_PHEAD_6_8") CASE HASH("DLC_MP_GR_M_PHEAD_7_8") CASE HASH("DLC_MP_GR_F_PHEAD_7_8") CASE HASH("CLO_GRM_PH_6_8") CASE HASH("CLO_GRF_PH_6_8") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_CAP, TRUE) RETURN TRUE ENDIF BREAK // Red Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_9") CASE HASH("DLC_MP_GR_F_PHEAD_6_9") CASE HASH("DLC_MP_GR_M_PHEAD_7_9") CASE HASH("DLC_MP_GR_F_PHEAD_7_9") CASE HASH("CLO_GRM_PH_6_9") CASE HASH("CLO_GRF_PH_6_9") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // Warstock Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_10") CASE HASH("DLC_MP_GR_F_PHEAD_6_10") CASE HASH("DLC_MP_GR_M_PHEAD_7_10") CASE HASH("DLC_MP_GR_F_PHEAD_7_10") CASE HASH("CLO_GRM_PH_6_10") CASE HASH("CLO_GRF_PH_6_10") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WARSTOCK_CAP) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WARSTOCK_CAP, TRUE) RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iItemHash // Black Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_000_M") CASE HASH("MP_Gunrunning_Award_000_F") CASE HASH("CLO_GRM_DECL_0") CASE HASH("CLO_GRF_DECL_0") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_LOGO_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_LOGO_TEE, TRUE) RETURN TRUE ENDIF BREAK // White Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_001_M") CASE HASH("MP_Gunrunning_Award_001_F") CASE HASH("CLO_GRM_DECL_1") CASE HASH("CLO_GRF_DECL_1") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // White Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_002_M") CASE HASH("MP_Gunrunning_Award_002_F") CASE HASH("CLO_GRM_DECL_2") CASE HASH("CLO_GRF_DECL_2") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_TEE, TRUE) RETURN TRUE ENDIF BREAK // Black Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_003_M") CASE HASH("MP_Gunrunning_Award_003_F") CASE HASH("CLO_GRM_DECL_3") CASE HASH("CLO_GRF_DECL_3") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_TEE, TRUE) RETURN TRUE ENDIF BREAK // Yellow Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_004_M") CASE HASH("MP_Gunrunning_Award_004_F") CASE HASH("CLO_GRM_DECL_4") CASE HASH("CLO_GRF_DECL_4") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // White Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_005_M") CASE HASH("MP_Gunrunning_Award_005_F") CASE HASH("CLO_GRM_DECL_5") CASE HASH("CLO_GRF_DECL_5") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_LOGO_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_LOGO_TEE, TRUE) RETURN TRUE ENDIF BREAK // White Shrewbury Tee CASE HASH("MP_Gunrunning_Award_006_M") CASE HASH("MP_Gunrunning_Award_006_F") CASE HASH("CLO_GRM_DECL_6") CASE HASH("CLO_GRF_DECL_6") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWBURY_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWBURY_TEE, TRUE) RETURN TRUE ENDIF BREAK // Black Shrewsbury Tee CASE HASH("MP_Gunrunning_Award_007_M") CASE HASH("MP_Gunrunning_Award_007_F") CASE HASH("CLO_GRM_DECL_7") CASE HASH("CLO_GRF_DECL_7") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // Green Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_008_M") CASE HASH("MP_Gunrunning_Award_008_F") CASE HASH("CLO_GRM_DECL_8") CASE HASH("CLO_GRF_DECL_8") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // Yellow Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_009_M") CASE HASH("MP_Gunrunning_Award_009_F") CASE HASH("CLO_GRM_DECL_9") CASE HASH("CLO_GRF_DECL_9") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_LOGO_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_LOGO_TEE, TRUE) RETURN TRUE ENDIF BREAK // Yellow Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_010_M") CASE HASH("MP_Gunrunning_Award_010_F") CASE HASH("CLO_GRM_DECL_10") CASE HASH("CLO_GRF_DECL_10") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_TEE, TRUE) RETURN TRUE ENDIF BREAK // Green Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_011_M") CASE HASH("MP_Gunrunning_Award_011_F") CASE HASH("CLO_GRM_DECL_11") CASE HASH("CLO_GRF_DECL_11") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_VOM_FEUER_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_VOM_FEUER_TEE, TRUE) RETURN TRUE ENDIF BREAK // White Coil Tee CASE HASH("MP_Gunrunning_Award_012_M") CASE HASH("MP_Gunrunning_Award_012_F") CASE HASH("CLO_GRM_DECL_12") CASE HASH("CLO_GRF_DECL_12") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_TEE, TRUE) RETURN TRUE ENDIF BREAK // Red Coil Tee CASE HASH("MP_Gunrunning_Award_013_M") CASE HASH("MP_Gunrunning_Award_013_F") CASE HASH("CLO_GRM_DECL_13") CASE HASH("CLO_GRF_DECL_13") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK // Black Coil Tee CASE HASH("MP_Gunrunning_Award_014_M") CASE HASH("MP_Gunrunning_Award_014_F") CASE HASH("CLO_GRM_DECL_14") CASE HASH("CLO_GRF_DECL_14") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_TEE, TRUE) RETURN TRUE ENDIF BREAK // Black Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_015_M") CASE HASH("MP_Gunrunning_Award_015_F") CASE HASH("CLO_GRM_DECL_15") CASE HASH("CLO_GRF_DECL_15") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_TEE, TRUE) RETURN TRUE ENDIF BREAK // White Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_016_M") CASE HASH("MP_Gunrunning_Award_016_F") CASE HASH("CLO_GRM_DECL_16") CASE HASH("CLO_GRF_DECL_16") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_AMMUNATION_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_AMMUNATION_TEE, TRUE) RETURN TRUE ENDIF BREAK // Yellow Warstock Tee CASE HASH("MP_Gunrunning_Award_017_M") CASE HASH("MP_Gunrunning_Award_017_F") CASE HASH("CLO_GRM_DECL_17") CASE HASH("CLO_GRF_DECL_17") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_WARSTOCK_TEE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_WARSTOCK_TEE, TRUE) RETURN TRUE ENDIF BREAK // Green Warstock Tee CASE HASH("MP_Gunrunning_Award_018_M") CASE HASH("MP_Gunrunning_Award_018_F") CASE HASH("CLO_GRM_DECL_18") CASE HASH("CLO_GRF_DECL_18") IF NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) SET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD, TRUE) RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iItemHash // R* Black Logo Tee CASE HASH("MP_Gunrunning_Award_019_M") CASE HASH("MP_Gunrunning_Award_025_F")//CASE HASH("MP_Gunrunning_Award_019_F") CASE HASH("CLO_GRM_DECL_30") CASE HASH("CLO_GRF_DECL_30") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_BLACK) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_BLACK, TRUE) RETURN TRUE ENDIF BREAK // R* Black Weed Camo Tee CASE HASH("MP_Gunrunning_Award_020_M") CASE HASH("MP_Gunrunning_Award_020_F") CASE HASH("CLO_GRM_DECL_31") CASE HASH("CLO_GRF_DECL_31") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_GREY) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_GREY, TRUE) RETURN TRUE ENDIF BREAK // R* White Weed Camo Tee CASE HASH("MP_Gunrunning_Award_020_M_ALT") CASE HASH("MP_Gunrunning_Award_020_F_ALT") CASE HASH("CLO_GRM_DECL_32") CASE HASH("CLO_GRF_DECL_32") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_WHITE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_WHITE, TRUE) RETURN TRUE ENDIF BREAK // R* Razor Tee CASE HASH("MP_Gunrunning_Award_021_M") CASE HASH("MP_Gunrunning_Award_021_F") CASE HASH("CLO_GRM_DECL_33") CASE HASH("CLO_GRF_DECL_33") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_PINK_BLADE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_PINK_BLADE, TRUE) RETURN TRUE ENDIF BREAK // R* White Logo Tee CASE HASH("MP_Gunrunning_Award_022_M") CASE HASH("MP_Gunrunning_Award_026_F")//CASE HASH("MP_Gunrunning_Award_022_F") CASE HASH("CLO_GRM_DECL_34") CASE HASH("CLO_GRF_DECL_34") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_WHITE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_WHITE, TRUE) RETURN TRUE ENDIF BREAK // R* Glitch Logo Tee CASE HASH("MP_Gunrunning_Award_023_M") CASE HASH("MP_Gunrunning_Award_023_F") CASE HASH("CLO_GRM_DECL_35") CASE HASH("CLO_GRF_DECL_35") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_INTERFERENCE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_INTERFERENCE, TRUE) RETURN TRUE ENDIF BREAK // R* Glitch Tee CASE HASH("MP_Gunrunning_Award_024_M") CASE HASH("MP_Gunrunning_Award_024_F") CASE HASH("CLO_GRM_DECL_36") CASE HASH("CLO_GRF_DECL_36") IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_GAMES_INTERFERENCE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_GAMES_INTERFERENCE, TRUE) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC STATS_PACKED GET_CASINO_REWARD_CLOTHING_STAT_FROM_TEXT_LABEL(INT iNameHash) SWITCH iNameHash CASE HASH("CLO_H2F_O_S_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_1 CASE HASH("CLO_ARF_O_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_2 CASE HASH("CLO_IEF_O_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_3 CASE HASH("CLO_H2F_S_6_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_4 CASE HASH("CLO_BIF_O_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_5 CASE HASH("CLO_STF_O_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_6 CASE HASH("CLO_SMF_O_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_7 CASE HASH("CLO_STF_O_E_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_8 CASE HASH("CLO_STF_O_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_9 CASE HASH("CLO_HSTF_O_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_10 CASE HASH("CLO_HSTM_O_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_10 CASE HASH("CLO_H2F_S_4_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_11 CASE HASH("CLO_H2F_O_G_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_12 CASE HASH("CLO_GRF_O_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_13 CASE HASH("CLO_LXF_U_3_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_14 CASE HASH("CLO_H2F_S_9_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_15 CASE HASH("CLO_H2F_S_9_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_16 CASE HASH("CLO_HSTF_S_1_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_17 CASE HASH("CLO_IEF_O_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_18 CASE HASH("CLO_BIF_U_23_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_19 CASE HASH("CLO_BHF_U_11_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_20 CASE HASH("CLO_EXF_OB_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_21 CASE HASH("CLO_H2F_U_3_25") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_22 CASE HASH("CLO_BHF_U_6_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_23 CASE HASH("CLO_L2F_U_7_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_24 CASE HASH("CLO_BHF_U_14_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_25 CASE HASH("CLO_L2F_U_7_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_26 CASE HASH("CLO_L2F_U_7_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_27 CASE HASH("CLO_STF_U_7_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_28 CASE HASH("CLO_IEF_U_3_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_29 CASE HASH("CLO_L2F_U_7_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_30 CASE HASH("CLO_EXF_OA_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_31 CASE HASH("CLO_HSTM_O_G_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_32 CASE HASH("CLO_HSTF_O_G_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_32 CASE HASH("CLO_BHF_U_5_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_33 CASE HASH("CLO_BHF_U_5_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_34 CASE HASH("CLO_BHF_U_2_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_35 CASE HASH("CLO_STF_U_5_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_36 CASE HASH("CLO_BHF_U_5_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_37 CASE HASH("CLO_BHF_U_13_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_38 CASE HASH("CLO_STF_U_5_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_39 CASE HASH("CLO_BHF_U_4_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_40 CASE HASH("CLO_HSTF_O_J_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_41 CASE HASH("CLO_HSTM_O_J_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_41 CASE HASH("CLO_STF_U_5_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_42 CASE HASH("CLO_GRF_U_21_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_43 CASE HASH("CLO_BHF_U_4_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_44 CASE HASH("CLO_GRF_U_21_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_45 CASE HASH("CLO_BHF_U_7_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_46 CASE HASH("CLO_SMF_U_2_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_47 CASE HASH("CLO_IEF_U_14_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_48 CASE HASH("CLO_IEF_U_14_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_49 CASE HASH("CLO_IEF_U_14_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_50 CASE HASH("CLO_BHF_U_7_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_51 CASE HASH("CLO_BIF_U_31_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_52 CASE HASH("CLO_SMF_U_2_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_53 CASE HASH("CLO_BHF_U_7_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_54 CASE HASH("CLO_SMF_U_2_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_55 CASE HASH("CLO_STF_U_5_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_56 CASE HASH("CLO_SMF_U_2_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_57 CASE HASH("CLO_STF_U_6_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_58 CASE HASH("CLO_IEF_U_14_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_59 CASE HASH("CLO_EXF_EU_5_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_60 CASE HASH("CLO_IEF_U_14_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_61 CASE HASH("CLO_BHF_U_4_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_62 CASE HASH("CLO_BHF_U_0_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_63 CASE HASH("CLO_LXF_U_5_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_64 CASE HASH("CLO_IEF_U_4_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_65 CASE HASH("CLO_HSTF_O_L_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_66 CASE HASH("CLO_HSTM_O_L_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_66 CASE HASH("CLO_HSTF_S_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_67 CASE HASH("CLO_GRF_U_20_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_68 CASE HASH("CLO_BHF_U_0_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_69 CASE HASH("CLO_IEF_U_1_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_70 CASE HASH("CLO_LTSFU_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_71 CASE HASH("CLO_S2F_U_3_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_72 CASE HASH("CLO_IEF_U_4_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_73 CASE HASH("CLO_GRF_U_20_24") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_74 CASE HASH("CLO_SMF_U_3_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_75 CASE HASH("CLO_IEF_U_4_22") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_76 CASE HASH("CLO_GRF_U_19_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_77 CASE HASH("CLO_HSTF_U_0_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_78 CASE HASH("CLO_HSTF_U_16_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_79 CASE HASH("CLO_SMF_U_3_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_80 CASE HASH("CLO_SMF_U_3_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_81 CASE HASH("CLO_LXF_U_6_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_82 CASE HASH("CLO_S2F_D_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_83 CASE HASH("CLO_GRF_U_19_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_84 CASE HASH("CLO_GRF_U_0_13") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_85 CASE HASH("CLO_S2F_D_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_86 CASE HASH("CLO_EXF_EU_4_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_87 CASE HASH("CLO_HP_F_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_88 CASE HASH("CLO_LXF_U_6_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_89 CASE HASH("CLO_IEF_U_7_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_90 CASE HASH("CLO_BIF_DECL_67") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_91 CASE HASH("CLO_BHF_U_16_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_92 CASE HASH("CLO_S1F_U_3_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_93 CASE HASH("CLO_IEF_U_7_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_94 CASE HASH("CLO_GRF_U_15_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_95 CASE HASH("CLO_GRF_U_2_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_96 CASE HASH("CLO_IEF_U_7_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_97 CASE HASH("CLO_SMF_DECL_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_98 CASE HASH("CLO_S1F_DEC_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_99 CASE HASH("CLO_SMF_DECL_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_100 CASE HASH("CLO_BIF_DECL_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_101 CASE HASH("CLO_SMF_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_102 CASE HASH("CLO_HP_F_D_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_103 CASE HASH("CLO_EXF_EU_9_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_104 CASE HASH("CLO_S2F_D_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_105 CASE HASH("CLO_SMF_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_106 CASE HASH("CLO_BIF_DECL_63") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_107 CASE HASH("CLO_AWF_DECL_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_108 CASE HASH("CLO_BIF_DECL_49") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_109 CASE HASH("CLO_HALF_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_110 CASE HASH("CLO_GRF_DECL_27") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_111 CASE HASH("CLO_LXF_DEC_35") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_112 CASE HASH("CLO_HST_F_A_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_113 CASE HASH("CLO_HST_F_A_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_114 CASE HASH("CLO_BHF_DECL_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_115 CASE HASH("CLO_INDF_HT_6_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_116 CASE HASH("CLO_EXF_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_117 CASE HASH("CLO_X4F_B_7_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_118 CASE HASH("CLO_X2F_B_2_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_119 CASE HASH("CLO_VWF_U_13_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_120 CASE HASH("CLO_VWF_U_13_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_121 CASE HASH("CLO_VWF_U_13_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_122 CASE HASH("CLO_VWF_U_13_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_123 CASE HASH("CLO_VWF_U_13_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_124 CASE HASH("CLO_VWF_U_13_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_125 CASE HASH("CLO_VWF_U_13_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_126 CASE HASH("CLO_VWF_U_18_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_127 CASE HASH("CLO_VWF_PH_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_128 CASE HASH("CLO_VWF_PH_0_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_129 CASE HASH("CLO_VWF_PH_0_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_130 CASE HASH("CLO_VWF_PH_0_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_131 CASE HASH("CLO_VWF_PH_0_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_132 CASE HASH("CLO_VWF_PH_0_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_133 CASE HASH("CLO_VWF_PH_0_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_134 CASE HASH("CLO_VWF_PH_0_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_135 CASE HASH("CLO_VWF_PH_0_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_136 CASE HASH("CLO_VWF_PH_0_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_137 CASE HASH("CLO_VWF_PH_0_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_138 CASE HASH("CLO_VWF_DECL_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_139 CASE HASH("CLO_VWF_DECL_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_140 CASE HASH("CLO_VWF_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_141 CASE HASH("CLO_VWF_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_142 CASE HASH("CLO_VWF_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_143 CASE HASH("CLO_VWF_DECL_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_144 CASE HASH("CLO_VWF_DECL_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_145 ENDSWITCH SWITCH iNameHash CASE HASH("CLO_H2M_O_S_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_1 CASE HASH("CLO_ARM_O_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_2 CASE HASH("CLO_IEM_O_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_3 CASE HASH("CLO_H2M_S_6_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_4 CASE HASH("CLO_BIM_O_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_5 CASE HASH("CLO_STM_O_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_6 CASE HASH("CLO_SMM_O_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_7 CASE HASH("CLO_STM_O_E_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_8 CASE HASH("CLO_STM_O_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_9 CASE HASH("CLO_H2M_S_4_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_11 CASE HASH("CLO_H2M_O_G_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_12 CASE HASH("CLO_GRM_O_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_13 CASE HASH("CLO_H2M_S_9_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_14 CASE HASH("CLO_LXM_U_0_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_15 CASE HASH("CLO_H2M_S_9_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_16 CASE HASH("CLO_HSTM_S_1_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_17 CASE HASH("CLO_IEM_O_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_18 CASE HASH("CLO_BIM_U_18_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_19 CASE HASH("CLO_BHM_U_11_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_20 CASE HASH("CLO_H2M_U_3_25") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_21 CASE HASH("CLO_BHM_U_6_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_22 CASE HASH("CLO_L2M_U_6_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_23 CASE HASH("CLO_BHM_U_14_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_24 CASE HASH("CLO_L2M_U_6_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_25 CASE HASH("CLO_L2M_U_6_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_26 CASE HASH("CLO_EXM_OB_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_28 CASE HASH("CLO_STM_U_7_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_29 CASE HASH("CLO_IEM_U_3_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_30 CASE HASH("CLO_L2M_U_6_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_31 CASE HASH("CLO_EXM_OA_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_45 CASE HASH("CLO_BHM_U_5_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_33 CASE HASH("CLO_BHM_U_5_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_34 CASE HASH("CLO_BHM_U_2_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_35 CASE HASH("CLO_STM_U_5_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_36 CASE HASH("CLO_BHM_U_5_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_37 CASE HASH("CLO_BHM_U_13_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_38 CASE HASH("CLO_STM_U_5_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_39 CASE HASH("CLO_BHM_U_4_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_40 CASE HASH("CLO_STM_U_5_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_27 CASE HASH("CLO_GRM_U_15_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_42 CASE HASH("CLO_BHM_U_4_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_43 CASE HASH("CLO_GRM_U_15_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_44 CASE HASH("CLO_BHM_U_7_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_46 CASE HASH("CLO_SMM_U_2_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_48 CASE HASH("CLO_IEM_U_17_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_49 CASE HASH("CLO_IEM_U_17_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_50 CASE HASH("CLO_IEM_U_17_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_51 CASE HASH("CLO_BHM_U_7_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_52 CASE HASH("CLO_BIM_U_26_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_53 CASE HASH("CLO_SMM_U_2_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_54 CASE HASH("CLO_BHM_U_7_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_55 CASE HASH("CLO_SMM_U_2_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_56 CASE HASH("CLO_STM_U_5_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_57 CASE HASH("CLO_SMM_U_2_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_58 CASE HASH("CLO_STM_U_6_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_59 CASE HASH("CLO_IEM_U_17_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_60 CASE HASH("CLO_EXM_EU_6_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_61 CASE HASH("CLO_IEM_U_17_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_62 CASE HASH("CLO_HSTM_S_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_63 CASE HASH("CLO_BHM_U_4_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_64 CASE HASH("CLO_BHM_U_0_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_65 CASE HASH("CLO_LXM_U_1_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_47 CASE HASH("CLO_IEM_U_4_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_67 CASE HASH("CLO_HSTM_U_15_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_68 CASE HASH("CLO_GRM_U_14_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_69 CASE HASH("CLO_BHM_U_0_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_70 CASE HASH("CLO_LTSMU_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_71 CASE HASH("CLO_IEM_U_18_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_72 CASE HASH("CLO_S2M_U_5_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_73 CASE HASH("CLO_IEM_U_4_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_74 CASE HASH("CLO_GRM_U_14_24") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_75 CASE HASH("CLO_SMM_U_3_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_76 CASE HASH("CLO_IEM_U_4_22") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_77 CASE HASH("CLO_GRM_U_13_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_78 CASE HASH("CLO_HSTM_U_0_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_79 CASE HASH("CLO_SMM_U_3_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_80 CASE HASH("CLO_SMM_U_3_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_81 CASE HASH("CLO_LXM_U_5_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_82 CASE HASH("CLO_S2M_D_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_83 CASE HASH("CLO_GRM_U_13_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_84 CASE HASH("CLO_GRM_U_0_13") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_85 CASE HASH("CLO_S2M_D_27") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_86 CASE HASH("CLO_EXM_EU_5_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_87 CASE HASH("CLO_HP_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_88 CASE HASH("CLO_LXM_U_5_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_89 CASE HASH("CLO_IEM_U_7_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_90 CASE HASH("CLO_IEM_U_7_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_91 CASE HASH("CLO_BIM_DECL_67") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_92 CASE HASH("CLO_BHM_U_16_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_93 CASE HASH("CLO_S1M_U_3_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_94 CASE HASH("CLO_SMM_U_7_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_95 CASE HASH("CLO_GRM_U_2_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_96 CASE HASH("CLO_IEM_U_7_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_97 CASE HASH("CLO_SMM_DECL_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_98 CASE HASH("CLO_S1M_DEC_25") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_99 CASE HASH("CLO_SMM_DECL_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_100 CASE HASH("CLO_BIM_DECL_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_101 CASE HASH("CLO_SMM_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_102 CASE HASH("CLO_HP_D_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_103 CASE HASH("CLO_EXM_EU_10_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_104 CASE HASH("CLO_S2M_D_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_105 CASE HASH("CLO_SMM_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_106 CASE HASH("CLO_BIM_DECL_63") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_107 CASE HASH("CLO_AWM_DECL_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_108 CASE HASH("CLO_BIM_DECL_49") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_109 CASE HASH("CLO_HALM_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_110 CASE HASH("CLO_GRM_DECL_27") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_111 CASE HASH("CLO_LXM_DEC_35") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_112 CASE HASH("CLO_HST_A_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_113 CASE HASH("CLO_EXM_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_114 CASE HASH("CLO_HST_A_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_115 CASE HASH("CLO_BHM_DECL_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_116 CASE HASH("CLO_INDM_HT_6_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_117 CASE HASH("CLO_X4M_B_7_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_118 CASE HASH("CLO_X2M_B_2_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_119 CASE HASH("CLO_VWM_U_15_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_120 CASE HASH("CLO_VWM_U_15_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_121 CASE HASH("CLO_VWM_U_15_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_122 CASE HASH("CLO_VWM_U_15_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_123 CASE HASH("CLO_VWM_U_15_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_124 CASE HASH("CLO_VWM_U_15_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_125 CASE HASH("CLO_VWM_U_15_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_126 CASE HASH("CLO_VWM_U_20_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_127 CASE HASH("CLO_VWM_PH_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_128 CASE HASH("CLO_VWM_PH_0_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_129 CASE HASH("CLO_VWM_PH_0_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_130 CASE HASH("CLO_VWM_PH_0_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_131 CASE HASH("CLO_VWM_PH_0_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_132 CASE HASH("CLO_VWM_PH_0_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_133 CASE HASH("CLO_VWM_PH_0_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_134 CASE HASH("CLO_VWM_PH_0_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_135 CASE HASH("CLO_VWM_PH_0_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_136 CASE HASH("CLO_VWM_PH_0_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_137 CASE HASH("CLO_VWM_PH_0_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_138 CASE HASH("CLO_VWM_DECL_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_139 CASE HASH("CLO_VWM_DECL_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_140 CASE HASH("CLO_VWM_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_141 CASE HASH("CLO_VWM_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_142 CASE HASH("CLO_VWM_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_143 CASE HASH("CLO_VWM_DECL_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_144 CASE HASH("CLO_VWM_DECL_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_145 ENDSWITCH PRINTLN("[LUCKY_WHEEL] GET_CASINO_REWARD_CLOTHING_STAT_FROM_TEXT_LABEL invalid hash: ", iNameHash) RETURN START_MP_CHAR_BOOL_PACKED ENDFUNC FUNC STATS_PACKED GET_CASINO_REWARD_CLOTHING_STAT_FROM_ITEM_HASH(INT iNameHash) SWITCH iNameHash CASE HASH("DLC_MP_X17_F_OUTFIT_SCUBA_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_1 CASE HASH("DLC_MP_AR_F_OUTFIT_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_2 CASE HASH("DLC_MP_IE_F_OUTFIT_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_3 CASE -419712771 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_4 CASE HASH("DLC_MP_BIKER_F_OUTFIT_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_5 CASE HASH("DLC_MP_STUNT_F_OUTFIT_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_6 CASE HASH("DLC_MP_SMUG_F_OUTFIT_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_7 CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_1") CASE HASH("DLC_MP_STUNT_F_JBIB_2_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_8 CASE HASH("DLC_MP_STUNT_F_OUTFIT_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_9 CASE HASH("DLC_MP_HEIST_M_OUTFIT_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_10 CASE HASH("DLC_MP_HEIST_F_OUTFIT_20") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_10 CASE 1831602209 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_11 CASE HASH("DLC_MP_X17_F_OUTFIT_GORKA_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_12 CASE HASH("CLO_GRF_O_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_13 CASE -1213640051 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_14 CASE 1367227 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_15 CASE 2091570669 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_16 CASE -1399700046 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_17 CASE HASH("DLC_MP_IE_F_OUTFIT_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_18 CASE -2140126204 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_19 CASE HASH("DLC_MP_BH_F_JBIB_11_17") CASE HASH("DLC_MP_BH_F_JBIB_10_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_20 CASE HASH("DLC_MP_EXEC_F_OUTFIT_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_21 CASE 1606142294 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_22 CASE HASH("DLC_MP_BH_F_JBIB_6_1") CASE HASH("DLC_MP_BH_F_JBIB_1_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_23 CASE -2040497502 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_24 CASE -2081332912 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_25 CASE 1992678253 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_26 CASE -1420278639 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_27 CASE 205876385 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_28 CASE HASH("DLC_MP_IE_F_JBIB_3_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_29 CASE -641250090 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_30 CASE HASH("DLC_MP_JAN_F_OUTFIT_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_31 CASE HASH("DLC_MP_HEIST_F_OUTFIT_G_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_32 CASE HASH("DLC_MP_HEIST_M_OUTFIT_G_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_32 CASE 184978850 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_33 CASE -1693537132 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_34 CASE 1172448402 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_35 CASE 1169688951 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_36 CASE 954928611 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_37 CASE HASH("DLC_MP_BH_F_JBIB_12_0") CASE HASH("DLC_MP_BH_F_JBIB_13_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_38 CASE -674026069 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_39 CASE 1235497796 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_40 CASE HASH("DLC_MP_HEIST_F_OUTFIT_J_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_41 CASE HASH("DLC_MP_HEIST_M_OUTFIT_J_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_41 CASE 1935434943 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_42 CASE 1448859660 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_43 CASE 2136514220 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_44 CASE 829852962 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_45 CASE -871887777 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_46 CASE 2131877799 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_46 CASE 1478637983 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_47 CASE HASH("DLC_MP_IE_F_JBIB_17_4") CASE HASH("DLC_MP_IE_F_JBIB_14_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_48 CASE HASH("DLC_MP_IE_F_JBIB_14_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_49 CASE HASH("DLC_MP_IE_F_JBIB_17_9") CASE HASH("DLC_MP_IE_F_JBIB_14_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_50 CASE -604737588 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_51 CASE 1579529603 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_51 CASE 954988791 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_52 CASE -623009799 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_53 CASE -968851244 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_54 CASE -343426927 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_54 CASE 214602361 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_55 CASE -1669539745 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_56 CASE -2099802355 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_57 CASE 2035899026 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_58 CASE HASH("DLC_MP_IE_F_JBIB_17_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_59 CASE -2033335859 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_60 CASE HASH("DLC_MP_IE_F_JBIB_17_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_61 CASE -927267244 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_62 CASE 833007640 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_63 CASE HASH("DLC_MP_LUXE_F_JBIB_3_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_64 CASE -1880249442 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_65 CASE HASH("DLC_MP_HEIST_F_OUTFIT_L_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_66 CASE HASH("DLC_MP_HEIST_M_OUTFIT_L_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_66 CASE -1865640992 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_67 CASE 196706437 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_68 CASE -1917913340 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_69 CASE HASH("DLC_MP_IE_F_JBIB_1_9") CASE HASH("DLC_MP_IE_F_JBIB_18_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_70 // hood up / down CASE -285001146 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_71 CASE -2002886916 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_72 CASE -523186841 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_73 CASE -334904210 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_74 CASE HASH("DLC_MP_SMUG_F_JBIB_3_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_75 CASE -853180478 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_76 CASE 690406961 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_77 CASE 1116979674 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_78 CASE -1270318971 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_79 CASE -1926898788 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_79 CASE HASH("DLC_MP_SMUG_F_JBIB_3_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_80 CASE HASH("DLC_MP_SMUG_F_JBIB_3_6") CASE HASH("DLC_MP_SMUG_F_SPECIAL_0_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_81 CASE HASH("DLC_MP_LUXE_F_JBIB_4_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_82 CASE HASH("CLO_S2F_D_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_83 CASE -954632752 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_84 CASE HASH("DLC_MP_GR_F_JBIB_0_13") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_85 CASE HASH("DLC_MP_GR_F_JBIB_1_13") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_85 CASE HASH("CLO_S2F_D_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_86 CASE -1054705682 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_87 CASE HASH("CLO_HP_F_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_88 CASE HASH("DLC_MP_LUXE_F_JBIB_4_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_89 CASE HASH("DLC_MP_IE_F_JBIB_7_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_90 CASE HASH("CLO_BIF_DECL_67") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_91 CASE HASH("DLC_MP_BH_F_JBIB_16_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_92 CASE -779459739 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_93 CASE HASH("DLC_MP_IE_F_JBIB_7_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_94 CASE HASH("DLC_MP_GR_F_JBIB_15_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_95 CASE HASH("DLC_MP_GR_F_JBIB_16_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_95 CASE HASH("DLC_MP_GR_F_JBIB_14_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_96 //CASE HASH("DLC_MP_IE_F_JBIB_17_12") CASE HASH("DLC_MP_HEIST_F_SPECIAL2_1_0") CASE HASH("DLC_MP_IE_F_JBIB_7_12") CASE HASH("DLC_MP_IE_F_TORSO_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_97 CASE HASH("CLO_SMF_DECL_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_98 CASE HASH("CLO_S1F_DEC_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_99 CASE HASH("CLO_SMF_DECL_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_100 CASE HASH("CLO_BIF_DECL_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_101 CASE HASH("CLO_SMF_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_102 CASE HASH("CLO_HP_F_D_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_103 CASE HASH("DLC_MP_EXEC_F_JBIB_9_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_104 CASE HASH("CLO_S2F_D_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_105 CASE HASH("CLO_SMF_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_106 CASE HASH("DLC_MP_BIKER_F_DECL_0_5") CASE HASH("DLC_MP_BIKER_F_JBIB_18_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_107 CASE HASH("CLO_AWF_DECL_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_108 CASE HASH("CLO_BIF_DECL_49") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_109 CASE HASH("CLO_HALF_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_110 CASE HASH("DLC_MP_GR_F_DECL_5_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_111 CASE HASH("CLO_LXF_DEC_35") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_112 CASE HASH("CLO_HST_F_A_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_113 CASE HASH("CLO_HST_F_A_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_114 CASE HASH("CLO_BHF_DECL_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_115 CASE HASH("DLC_MP_IND_F_PHEAD_6_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_116 CASE HASH("CLO_EXF_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_117 CASE -1082902180 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_118 CASE 128289157 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_119 CASE HASH("DLC_MP_VWD_F_JBIB_14_0") CASE HASH("DLC_MP_VWD_F_JBIB_13_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_120 CASE HASH("DLC_MP_VWD_F_JBIB_13_1") CASE HASH("DLC_MP_VWD_F_JBIB_14_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_121 CASE HASH("DLC_MP_VWD_F_JBIB_13_2") CASE HASH("DLC_MP_VWD_F_JBIB_14_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_122 CASE HASH("DLC_MP_VWD_F_JBIB_13_3") CASE HASH("DLC_MP_VWD_F_JBIB_14_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_123 CASE HASH("DLC_MP_VWD_F_JBIB_13_4") CASE HASH("DLC_MP_VWD_F_JBIB_14_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_124 CASE HASH("DLC_MP_VWD_F_JBIB_13_5") CASE HASH("DLC_MP_VWD_F_JBIB_14_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_125 CASE HASH("DLC_MP_VWD_F_JBIB_13_6") CASE HASH("DLC_MP_VWD_F_JBIB_14_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_126 CASE HASH("DLC_MP_VWD_F_JBIB_18_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_127 CASE HASH("DLC_MP_VWD_F_PHEAD_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_128 CASE HASH("DLC_MP_VWD_F_PHEAD_0_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_129 CASE HASH("DLC_MP_VWD_F_PHEAD_0_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_130 CASE HASH("DLC_MP_VWD_F_PHEAD_0_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_131 CASE HASH("DLC_MP_VWD_F_PHEAD_0_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_132 CASE HASH("DLC_MP_VWD_F_PHEAD_0_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_133 CASE HASH("DLC_MP_VWD_F_PHEAD_0_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_134 CASE HASH("DLC_MP_VWD_F_PHEAD_0_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_135 CASE HASH("DLC_MP_VWD_F_PHEAD_0_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_136 CASE HASH("DLC_MP_VWD_F_PHEAD_0_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_137 CASE HASH("DLC_MP_VWD_F_PHEAD_0_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_138 CASE HASH("CLO_VWF_DECL_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_140 CASE HASH("CLO_VWF_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_141 CASE HASH("CLO_VWF_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_142 CASE HASH("CLO_VWF_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_143 CASE HASH("CLO_VWF_DECL_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_144 CASE HASH("CLO_VWF_DECL_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_145 ENDSWITCH SWITCH iNameHash CASE HASH("DLC_MP_X17_M_OUTFIT_SCUBA_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_1 CASE HASH("DLC_MP_AR_M_OUTFIT_12") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_2 CASE HASH("DLC_MP_IE_M_OUTFIT_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_3 CASE -1485010039 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_4 CASE HASH("DLC_MP_BIKER_M_OUTFIT_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_5 CASE HASH("DLC_MP_STUNT_M_OUTFIT_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_6 CASE HASH("DLC_MP_SMUG_M_OUTFIT_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_7 CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_8 CASE HASH("DLC_MP_STUNT_M_OUTFIT_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_9 CASE -1322899173 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_11 CASE HASH("DLC_MP_X17_M_OUTFIT_GORKA_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_12 CASE HASH("DLC_MP_GR_M_OUTFIT_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_13 CASE HASH("DLC_MP_X17_M_SPECIAL_9_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_14 CASE -1988475023 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_15 CASE -1805383330 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_16 CASE 1055184365 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_17 CASE HASH("DLC_MP_IE_M_OUTFIT_11") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_18 CASE -410692609 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_19 CASE HASH("DLC_MP_BH_M_JBIB_11_17") CASE HASH("DLC_MP_BH_M_JBIB_10_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_20 CASE -558382360 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_21 CASE -1213538146 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_22 CASE -928126505 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_23 CASE 43038447 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_24 CASE -1774680851 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_25 CASE -1874167591 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_26 CASE HASH("DLC_MP_EXEC_M_OUTFIT_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_28 CASE HASH("DLC_MP_STUNT_M_JBIB_7_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_29 CASE HASH("DLC_MP_IE_M_JBIB_3_7") CASE HASH("DLC_MP_IE_M_JBIB_2_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_30 CASE HASH("DLC_MP_LUXE2_M_JBIB_2_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_31 CASE HASH("DLC_MP_JAN_M_OUTFIT_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_45 CASE HASH("DLC_MP_BH_M_JBIB_5_18") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_33 CASE -1291157170 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_34 CASE 1583328203 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_35 CASE -1564509154 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_36 CASE 1962652839 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_37 CASE HASH("DLC_MP_BH_M_JBIB_13_0") CASE HASH("DLC_MP_BH_M_JBIB_12_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_38 CASE -1547658012 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_39 CASE -1703996143 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_40 CASE -645338704 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_27 CASE -153047263 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_42 CASE -817660231 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_43 CASE -408613502 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_44 CASE HASH("DLC_MP_BH_M_JBIB_7_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_46 CASE HASH("DLC_MP_BH_M_JBIB_8_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_46 CASE 968627630 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_48 CASE HASH("DLC_MP_IE_M_JBIB_14_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_49 CASE HASH("DLC_MP_IE_M_JBIB_17_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_49 CASE HASH("DLC_MP_IE_M_JBIB_17_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_50 CASE HASH("DLC_MP_IE_M_JBIB_14_21") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_50 CASE HASH("DLC_MP_IE_M_JBIB_14_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_51 CASE HASH("DLC_MP_IE_M_JBIB_17_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_51 CASE HASH("DLC_MP_BH_M_JBIB_7_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_52 CASE HASH("DLC_MP_BH_M_JBIB_8_14") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_52 CASE -1803097812 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_53 CASE -735739507 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_54 CASE HASH("DLC_MP_BH_M_JBIB_7_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_55 CASE HASH("DLC_MP_BH_M_JBIB_8_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_55 CASE -892156939 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_56 CASE 1417235391 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_57 CASE -1596988460 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_58 CASE 1186842100 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_59 CASE HASH("DLC_MP_IE_M_JBIB_14_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_60 CASE HASH("DLC_MP_IE_M_JBIB_17_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_60 CASE 612971431 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_61 CASE HASH("DLC_MP_IE_M_JBIB_14_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_62 CASE HASH("DLC_MP_IE_M_JBIB_17_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_62 CASE -219704607 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_63 CASE -1268442920 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_64 CASE 557071493 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_65 CASE HASH("DLC_MP_LUXE_M_JBIB_1_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_47 CASE -1128455195 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_67 CASE HASH("DLC_MP_HEIST_M_JBIB_15_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_68 CASE HASH("DLC_MP_HEIST_M_JBIB_16_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_68 CASE 1173774854 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_69 CASE 1291377893 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_70 CASE -156446322 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_71 CASE HASH("DLC_MP_IE_M_JBIB_1_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_72 CASE HASH("DLC_MP_IE_M_JBIB_18_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_72 CASE -609850580 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_73 CASE 659749147 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_74 CASE 795259911 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_75 CASE HASH("DLC_MP_SMUG_M_JBIB_3_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_76 CASE -1397513709 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_77 CASE 492871283 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_78 CASE 1293912036 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_79 CASE HASH("DLC_MP_SMUG_M_JBIB_3_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_80 CASE HASH("DLC_MP_SMUG_M_SPECIAL_0_6") CASE HASH("DLC_MP_SMUG_M_JBIB_3_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_81 CASE HASH("DLC_MP_LUXE_M_JBIB_3_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_82 CASE HASH("CLO_S2M_D_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_83 CASE 1842986496 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_84 CASE HASH("DLC_MP_BIKER_M_TORSO_2_0") CASE HASH("DLC_MP_GR_M_JBIB_0_13") CASE HASH("DLC_MP_GR_M_JBIB_1_13") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_85 CASE HASH("CLO_S2M_D_27") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_86 CASE -291342892 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_87 CASE HASH("CLO_HP_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_88 CASE HASH("DLC_MP_LUXE_M_JBIB_3_17") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_89 CASE 79571336 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_90 CASE 1786797089 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_91 CASE HASH("CLO_BIM_DECL_67") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_92 CASE HASH("DLC_MP_BH_M_JBIB_16_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_93 CASE 1977083785 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_94 CASE HASH("DLC_MP_SMUG_M_JBIB_7_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_95 CASE HASH("DLC_MP_GR_M_JBIB_2_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_96 CASE 491110541 RETURN PACKED_MP_CASINO_CLOTHES_REWARD_97 CASE HASH("CLO_SMM_DECL_16") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_98 CASE HASH("CLO_S1M_DEC_25") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_99 CASE HASH("CLO_SMM_DECL_15") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_100 CASE HASH("CLO_BIM_DECL_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_101 CASE HASH("CLO_SMM_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_102 CASE HASH("CLO_HP_D_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_103 CASE HASH("DLC_MP_EXEC_M_JBIB_10_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_104 CASE HASH("CLO_S2M_D_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_105 CASE HASH("CLO_SMM_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_106 CASE HASH("DLC_MP_BIKER_M_DECL_0_5") CASE HASH("DLC_MP_BIKER_M_JBIB_14_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_107 CASE HASH("CLO_AWM_DECL_23") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_108 CASE HASH("CLO_BIM_DECL_49") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_109 CASE HASH("CLO_HALM_D_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_110 CASE HASH("DLC_MP_GR_M_DECL_5_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_111 CASE HASH("CLO_LXM_DEC_35") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_112 CASE HASH("CLO_HST_A_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_113 CASE HASH("CLO_EXM_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_114 CASE HASH("CLO_HST_A_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_115 CASE HASH("CLO_BHM_DECL_19") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_116 CASE HASH("DLC_MP_IND_M_PHEAD_6_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_117 CASE HASH("DLC_MP_IE_M_BERD_7_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_118 CASE HASH("DLC_MP_XMAS2_M_BERD_2_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_119 CASE HASH("DLC_MP_VWD_M_JBIB_15_0") CASE HASH("DLC_MP_VWD_M_JBIB_16_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_120 CASE HASH("DLC_MP_VWD_M_JBIB_15_1") CASE HASH("DLC_MP_VWD_M_JBIB_16_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_121 CASE HASH("DLC_MP_VWD_M_JBIB_15_2") CASE HASH("DLC_MP_VWD_M_JBIB_16_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_122 CASE HASH("DLC_MP_VWD_M_JBIB_15_3") CASE HASH("DLC_MP_VWD_M_JBIB_16_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_123 CASE HASH("DLC_MP_VWD_M_JBIB_16_4") CASE HASH("DLC_MP_VWD_M_JBIB_15_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_124 CASE HASH("DLC_MP_VWD_M_JBIB_16_5") CASE HASH("DLC_MP_VWD_M_JBIB_15_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_125 CASE HASH("DLC_MP_VWD_M_JBIB_16_6") CASE HASH("DLC_MP_VWD_M_JBIB_15_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_126 CASE HASH("DLC_MP_VWD_M_JBIB_20_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_127 CASE HASH("DLC_MP_VWD_M_PHEAD_0_0") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_128 CASE HASH("DLC_MP_VWD_M_PHEAD_0_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_129 CASE HASH("DLC_MP_VWD_M_PHEAD_0_2") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_130 CASE HASH("DLC_MP_VWD_M_PHEAD_0_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_131 CASE HASH("DLC_MP_VWD_M_PHEAD_0_4") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_132 CASE HASH("DLC_MP_VWD_M_PHEAD_0_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_133 CASE HASH("DLC_MP_VWD_M_PHEAD_0_6") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_134 CASE HASH("DLC_MP_VWD_M_PHEAD_0_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_135 CASE HASH("DLC_MP_VWD_M_PHEAD_0_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_136 CASE HASH("DLC_MP_VWD_M_PHEAD_0_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_137 CASE HASH("DLC_MP_VWD_M_PHEAD_0_10") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_138 CASE HASH("CLO_VWM_DECL_1") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_140 CASE HASH("CLO_VWM_DECL_3") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_141 CASE HASH("CLO_VWM_DECL_5") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_142 CASE HASH("CLO_VWM_DECL_7") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_143 CASE HASH("CLO_VWM_DECL_8") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_144 CASE HASH("CLO_VWM_DECL_9") RETURN PACKED_MP_CASINO_CLOTHES_REWARD_145 ENDSWITCH PRINTLN("[LUCKY_WHEEL] GET_CASINO_REWARD_CLOTHING_STAT_FROM_ITEM_HASH invalid hash: ", iNameHash, " string: ", GET_STRING_FROM_HASH_KEY(iNameHash)) RETURN START_MP_CHAR_BOOL_PACKED ENDFUNC FUNC BOOL IS_CLOTHES_ITEM_CASINO_REWARD_ITEM(INT iHash, INT iCollection = -1, INT iPreset = -1) SWITCH iHash CASE HASH("DLC_MP_X17_F_OUTFIT_SCUBA_16") CASE HASH("DLC_MP_AR_F_OUTFIT_12") CASE HASH("DLC_MP_IE_F_OUTFIT_2") CASE -419712771 CASE HASH("DLC_MP_BIKER_F_OUTFIT_11") CASE HASH("DLC_MP_STUNT_F_OUTFIT_5") CASE HASH("DLC_MP_SMUG_F_OUTFIT_1") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_1") CASE HASH("DLC_MP_STUNT_F_JBIB_2_1") CASE HASH("DLC_MP_STUNT_F_OUTFIT_8") CASE HASH("DLC_MP_HEIST_M_OUTFIT_20") CASE HASH("DLC_MP_HEIST_F_OUTFIT_20") CASE 1831602209 CASE HASH("DLC_MP_X17_F_OUTFIT_GORKA_21") CASE HASH("CLO_GRF_O_1") CASE -1213640051 CASE 1367227 CASE 2091570669 CASE -1399700046 CASE HASH("DLC_MP_IE_F_OUTFIT_11") CASE -2140126204 CASE HASH("DLC_MP_BH_F_JBIB_11_17") CASE HASH("DLC_MP_BH_F_JBIB_10_17") CASE HASH("DLC_MP_EXEC_F_OUTFIT_14") CASE 1606142294 CASE HASH("DLC_MP_BH_F_JBIB_6_1") CASE HASH("DLC_MP_BH_F_JBIB_1_1") CASE -2040497502 CASE -2081332912 CASE 1992678253 CASE -1420278639 CASE 205876385 CASE HASH("DLC_MP_IE_F_JBIB_3_7") CASE -641250090 CASE HASH("DLC_MP_JAN_F_OUTFIT_0") CASE HASH("DLC_MP_HEIST_F_OUTFIT_G_3") CASE HASH("DLC_MP_HEIST_M_OUTFIT_G_3") CASE 184978850 CASE -1693537132 CASE 1172448402 CASE 1169688951 CASE 954928611 CASE HASH("DLC_MP_BH_F_JBIB_12_0") CASE HASH("DLC_MP_BH_F_JBIB_13_0") CASE -674026069 CASE 1235497796 CASE HASH("DLC_MP_HEIST_F_OUTFIT_J_2") CASE HASH("DLC_MP_HEIST_M_OUTFIT_J_2") CASE 1935434943 CASE 1448859660 CASE 2136514220 CASE 829852962 CASE -871887777 CASE 2131877799 CASE 1478637983 CASE HASH("DLC_MP_IE_F_JBIB_17_4") CASE HASH("DLC_MP_IE_F_JBIB_14_4") CASE HASH("DLC_MP_IE_F_JBIB_14_21") CASE HASH("DLC_MP_IE_F_JBIB_17_9") CASE HASH("DLC_MP_IE_F_JBIB_14_9") CASE -604737588 CASE 1579529603 CASE 954988791 CASE -623009799 CASE -968851244 CASE -343426927 CASE 214602361 CASE -1669539745 CASE -2099802355 CASE 2035899026 CASE HASH("DLC_MP_IE_F_JBIB_17_0") CASE -2033335859 CASE HASH("DLC_MP_IE_F_JBIB_17_7") CASE -927267244 CASE 833007640 CASE HASH("DLC_MP_LUXE_F_JBIB_3_0") CASE -1880249442 CASE HASH("DLC_MP_HEIST_F_OUTFIT_L_0") CASE HASH("DLC_MP_HEIST_M_OUTFIT_L_0") CASE -1865640992 CASE 196706437 CASE -1917913340 CASE HASH("DLC_MP_IE_F_JBIB_1_9") // hood up CASE HASH("DLC_MP_IE_F_JBIB_18_9") // hood down CASE -285001146 CASE -2002886916 CASE -523186841 CASE -334904210 CASE HASH("DLC_MP_SMUG_F_JBIB_3_8") CASE -853180478 CASE 690406961 CASE 1116979674 CASE -1270318971 CASE -1926898788 CASE HASH("DLC_MP_SMUG_F_JBIB_3_5") CASE HASH("DLC_MP_SMUG_F_JBIB_3_6") CASE HASH("DLC_MP_SMUG_F_SPECIAL_0_6") CASE HASH("DLC_MP_LUXE_F_JBIB_4_3") CASE HASH("CLO_S2F_D_7") CASE -954632752 CASE HASH("DLC_MP_GR_F_JBIB_0_13") CASE HASH("DLC_MP_GR_F_JBIB_1_13") CASE HASH("CLO_S2F_D_18") CASE -1054705682 CASE HASH("CLO_HP_F_D_10") CASE HASH("DLC_MP_LUXE_F_JBIB_4_18") CASE HASH("DLC_MP_IE_F_JBIB_7_5") CASE HASH("CLO_BIF_DECL_67") CASE HASH("DLC_MP_BH_F_JBIB_16_1") CASE -779459739 CASE HASH("DLC_MP_IE_F_JBIB_7_14") CASE HASH("DLC_MP_GR_F_JBIB_15_10") CASE HASH("DLC_MP_GR_F_JBIB_16_10") CASE HASH("DLC_MP_GR_F_JBIB_14_6") //CASE HASH("DLC_MP_IE_F_JBIB_17_12") CASE HASH("DLC_MP_HEIST_F_SPECIAL2_1_0") CASE HASH("DLC_MP_IE_F_JBIB_7_12") CASE HASH("DLC_MP_IE_F_TORSO_0_0") CASE HASH("CLO_SMF_DECL_16") CASE HASH("CLO_S1F_DEC_23") CASE HASH("CLO_SMF_DECL_15") CASE HASH("CLO_BIF_DECL_2") CASE HASH("CLO_SMF_DECL_7") CASE HASH("CLO_HP_F_D_9") CASE HASH("DLC_MP_EXEC_F_JBIB_9_5") CASE HASH("CLO_S2F_D_23") CASE HASH("CLO_SMF_DECL_5") CASE HASH("DLC_MP_BIKER_F_DECL_0_5") CASE HASH("DLC_MP_BIKER_F_JBIB_18_1") CASE HASH("CLO_AWF_DECL_23") CASE HASH("CLO_BIF_DECL_49") CASE HASH("CLO_HALF_D_10") CASE HASH("DLC_MP_GR_F_DECL_5_8") CASE HASH("CLO_LXF_DEC_35") CASE HASH("CLO_HST_F_A_0") CASE HASH("CLO_HST_F_A_9") CASE HASH("CLO_BHF_DECL_19") CASE HASH("DLC_MP_IND_F_PHEAD_6_2") CASE HASH("CLO_EXF_DECL_3") CASE -1082902180 CASE 128289157 CASE HASH("DLC_MP_VWD_F_JBIB_14_0") CASE HASH("DLC_MP_VWD_F_JBIB_13_0") CASE HASH("DLC_MP_VWD_F_JBIB_13_1") CASE HASH("DLC_MP_VWD_F_JBIB_14_1") CASE HASH("DLC_MP_VWD_F_JBIB_13_2") CASE HASH("DLC_MP_VWD_F_JBIB_14_2") CASE HASH("DLC_MP_VWD_F_JBIB_13_3") CASE HASH("DLC_MP_VWD_F_JBIB_14_3") CASE HASH("DLC_MP_VWD_F_JBIB_13_4") CASE HASH("DLC_MP_VWD_F_JBIB_14_4") CASE HASH("DLC_MP_VWD_F_JBIB_13_5") CASE HASH("DLC_MP_VWD_F_JBIB_14_5") CASE HASH("DLC_MP_VWD_F_JBIB_13_6") CASE HASH("DLC_MP_VWD_F_JBIB_14_6") CASE HASH("DLC_MP_VWD_F_JBIB_18_5") CASE HASH("DLC_MP_VWD_F_PHEAD_0_0") CASE HASH("DLC_MP_VWD_F_PHEAD_0_1") CASE HASH("DLC_MP_VWD_F_PHEAD_0_2") CASE HASH("DLC_MP_VWD_F_PHEAD_0_3") CASE HASH("DLC_MP_VWD_F_PHEAD_0_4") CASE HASH("DLC_MP_VWD_F_PHEAD_0_5") CASE HASH("DLC_MP_VWD_F_PHEAD_0_6") CASE HASH("DLC_MP_VWD_F_PHEAD_0_7") CASE HASH("DLC_MP_VWD_F_PHEAD_0_8") CASE HASH("DLC_MP_VWD_F_PHEAD_0_9") CASE HASH("DLC_MP_VWD_F_PHEAD_0_10") CASE HASH("CLO_VWF_DECL_1") CASE HASH("CLO_VWF_DECL_3") CASE HASH("CLO_VWF_DECL_5") CASE HASH("CLO_VWF_DECL_7") CASE HASH("CLO_VWF_DECL_8") CASE HASH("CLO_VWF_DECL_9") RETURN TRUE ENDSWITCH SWITCH iHash CASE HASH("DLC_MP_X17_M_OUTFIT_SCUBA_16") CASE HASH("DLC_MP_AR_M_OUTFIT_12") CASE HASH("DLC_MP_IE_M_OUTFIT_1") CASE -1485010039 CASE HASH("DLC_MP_BIKER_M_OUTFIT_11") CASE HASH("DLC_MP_STUNT_M_OUTFIT_5") CASE HASH("DLC_MP_SMUG_M_OUTFIT_1") CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_1") CASE HASH("DLC_MP_STUNT_M_OUTFIT_8") CASE -1322899173 CASE HASH("DLC_MP_X17_M_OUTFIT_GORKA_21") CASE HASH("DLC_MP_GR_M_OUTFIT_1") CASE HASH("DLC_MP_X17_M_SPECIAL_9_0") CASE -1988475023 CASE -1805383330 CASE 1055184365 CASE HASH("DLC_MP_IE_M_OUTFIT_11") CASE -410692609 CASE HASH("DLC_MP_BH_M_JBIB_11_17") CASE HASH("DLC_MP_BH_M_JBIB_10_17") CASE -558382360 CASE -1213538146 CASE -928126505 CASE 43038447 CASE -1774680851 CASE -1874167591 CASE HASH("DLC_MP_EXEC_M_OUTFIT_14") CASE HASH("DLC_MP_STUNT_M_JBIB_7_4") CASE HASH("DLC_MP_IE_M_JBIB_3_7") CASE HASH("DLC_MP_IE_M_JBIB_2_7") CASE HASH("DLC_MP_LUXE2_M_JBIB_2_1") CASE HASH("DLC_MP_JAN_M_OUTFIT_0") CASE HASH("DLC_MP_BH_M_JBIB_5_18") CASE -1291157170 CASE 1583328203 CASE -1564509154 CASE 1962652839 CASE HASH("DLC_MP_BH_M_JBIB_13_0") CASE HASH("DLC_MP_BH_M_JBIB_12_0") CASE -1547658012 CASE -1703996143 CASE -645338704 CASE -153047263 CASE -817660231 CASE -408613502 CASE HASH("DLC_MP_BH_M_JBIB_7_1") CASE HASH("DLC_MP_BH_M_JBIB_8_1") CASE 968627630 CASE HASH("DLC_MP_IE_M_JBIB_14_4") CASE HASH("DLC_MP_IE_M_JBIB_17_4") CASE HASH("DLC_MP_IE_M_JBIB_17_21") CASE HASH("DLC_MP_IE_M_JBIB_14_21") CASE HASH("DLC_MP_IE_M_JBIB_14_9") CASE HASH("DLC_MP_IE_M_JBIB_17_9") CASE HASH("DLC_MP_BH_M_JBIB_7_14") CASE HASH("DLC_MP_BH_M_JBIB_8_14") CASE -1803097812 CASE -735739507 CASE HASH("DLC_MP_BH_M_JBIB_7_7") CASE HASH("DLC_MP_BH_M_JBIB_8_7") CASE -892156939 CASE 1417235391 CASE -1596988460 CASE 1186842100 CASE HASH("DLC_MP_IE_M_JBIB_14_0") CASE HASH("DLC_MP_IE_M_JBIB_17_0") CASE 612971431 CASE HASH("DLC_MP_IE_M_JBIB_14_7") CASE HASH("DLC_MP_IE_M_JBIB_17_7") CASE -219704607 CASE -1268442920 CASE 557071493 CASE HASH("DLC_MP_LUXE_M_JBIB_1_0") CASE -1128455195 CASE HASH("DLC_MP_HEIST_M_JBIB_15_5") CASE HASH("DLC_MP_HEIST_M_JBIB_16_5") CASE 1173774854 CASE 1291377893 CASE -156446322 CASE HASH("DLC_MP_IE_M_JBIB_1_9") CASE HASH("DLC_MP_IE_M_JBIB_18_9") CASE -609850580 CASE 659749147 CASE 795259911 CASE HASH("DLC_MP_SMUG_M_JBIB_3_8") CASE -1397513709 CASE 492871283 CASE 1293912036 CASE HASH("DLC_MP_SMUG_M_JBIB_3_5") CASE HASH("DLC_MP_SMUG_M_SPECIAL_0_6") CASE HASH("DLC_MP_SMUG_M_JBIB_3_6") CASE HASH("DLC_MP_LUXE_M_JBIB_3_3") CASE HASH("CLO_S2M_D_16") CASE 1842986496 CASE HASH("DLC_MP_GR_M_JBIB_0_13") CASE HASH("DLC_MP_GR_M_JBIB_1_13") CASE HASH("DLC_MP_BIKER_M_TORSO_2_0") CASE HASH("CLO_S2M_D_27") CASE -291342892 CASE HASH("CLO_HP_D_10") CASE HASH("DLC_MP_LUXE_M_JBIB_3_17") CASE 79571336 CASE 1786797089 CASE HASH("CLO_BIM_DECL_67") CASE HASH("DLC_MP_BH_M_JBIB_16_1") CASE 1977083785 CASE HASH("DLC_MP_SMUG_M_JBIB_7_10") CASE HASH("DLC_MP_GR_M_JBIB_2_6") CASE 491110541 CASE HASH("CLO_SMM_DECL_16") CASE HASH("CLO_S1M_DEC_25") CASE HASH("CLO_SMM_DECL_15") CASE HASH("CLO_BIM_DECL_2") CASE HASH("CLO_SMM_DECL_7") CASE HASH("CLO_HP_D_9") CASE HASH("DLC_MP_EXEC_M_JBIB_10_5") CASE HASH("CLO_S2M_D_4") CASE HASH("CLO_SMM_DECL_5") CASE HASH("DLC_MP_BIKER_M_DECL_0_5") CASE HASH("DLC_MP_BIKER_M_JBIB_14_1") CASE HASH("CLO_AWM_DECL_23") CASE HASH("CLO_BIM_DECL_49") CASE HASH("CLO_HALM_D_10") CASE HASH("DLC_MP_GR_M_DECL_5_8") CASE HASH("CLO_LXM_DEC_35") CASE HASH("CLO_HST_A_0") CASE HASH("CLO_EXM_DECL_3") CASE HASH("CLO_HST_A_9") CASE HASH("CLO_BHM_DECL_19") CASE HASH("DLC_MP_IND_M_PHEAD_6_2") CASE HASH("DLC_MP_IE_M_BERD_7_0") CASE HASH("DLC_MP_XMAS2_M_BERD_2_0") CASE HASH("DLC_MP_VWD_M_JBIB_15_0") CASE HASH("DLC_MP_VWD_M_JBIB_16_0") CASE HASH("DLC_MP_VWD_M_JBIB_15_1") CASE HASH("DLC_MP_VWD_M_JBIB_16_1") CASE HASH("DLC_MP_VWD_M_JBIB_15_2") CASE HASH("DLC_MP_VWD_M_JBIB_16_2") CASE HASH("DLC_MP_VWD_M_JBIB_15_3") CASE HASH("DLC_MP_VWD_M_JBIB_16_3") CASE HASH("DLC_MP_VWD_M_JBIB_16_4") CASE HASH("DLC_MP_VWD_M_JBIB_15_4") CASE HASH("DLC_MP_VWD_M_JBIB_16_5") CASE HASH("DLC_MP_VWD_M_JBIB_15_5") CASE HASH("DLC_MP_VWD_M_JBIB_16_6") CASE HASH("DLC_MP_VWD_M_JBIB_15_6") CASE HASH("DLC_MP_VWD_M_JBIB_20_5") CASE HASH("DLC_MP_VWD_M_PHEAD_0_0") CASE HASH("DLC_MP_VWD_M_PHEAD_0_1") CASE HASH("DLC_MP_VWD_M_PHEAD_0_2") CASE HASH("DLC_MP_VWD_M_PHEAD_0_3") CASE HASH("DLC_MP_VWD_M_PHEAD_0_4") CASE HASH("DLC_MP_VWD_M_PHEAD_0_5") CASE HASH("DLC_MP_VWD_M_PHEAD_0_6") CASE HASH("DLC_MP_VWD_M_PHEAD_0_7") CASE HASH("DLC_MP_VWD_M_PHEAD_0_8") CASE HASH("DLC_MP_VWD_M_PHEAD_0_9") CASE HASH("DLC_MP_VWD_M_PHEAD_0_10") CASE HASH("CLO_VWM_DECL_1") CASE HASH("CLO_VWM_DECL_3") CASE HASH("CLO_VWM_DECL_5") CASE HASH("CLO_VWM_DECL_7") CASE HASH("CLO_VWM_DECL_8") CASE HASH("CLO_VWM_DECL_9") RETURN TRUE ENDSWITCH SWITCH iCollection CASE HASH("mpChristmas2018_overlays") SWITCH iPreset CASE HASH("MP_Christmas2018_Tee_023_F") CASE HASH("MP_Christmas2018_Tee_023_M") RETURN TRUE BREAK ENDSWITCH BREAK CASE HASH("mpLowrider_overlays") SWITCH iPreset CASE HASH("MP_Bennys_001_F") CASE HASH("MP_Bennys_001_M") RETURN TRUE BREAK ENDSWITCH BREAK CASE HASH("mpHeist_overlays") SWITCH iPreset // Award shirts CASE HASH("MP_Award_M_Tshirt_004") CASE HASH("MP_Award_M_Tshirt_013") RETURN TRUE BREAK ENDSWITCH BREAK CASE HASH("mpVinewood_overlays") SWITCH iPreset // Award shirts CASE HASH("CasinoTop_M_1") CASE HASH("CasinoTop_M_3") CASE HASH("CasinoTop_M_5") CASE HASH("CasinoTop_M_7") CASE HASH("CasinoTop_M_8") CASE HASH("CasinoTop_M_9") CASE HASH("CasinoTop_F_1") CASE HASH("CasinoTop_F_3") CASE HASH("CasinoTop_F_5") CASE HASH("CasinoTop_F_7") CASE HASH("CasinoTop_F_8") CASE HASH("CasinoTop_F_9") RETURN TRUE BREAK ENDSWITCH BREAK CASE HASH("mpBattle_overlays") SWITCH iPreset CASE HASH("MP_Battle_Clothing_020_F") RETURN TRUE BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL GIVE_DLC_CLOTHING_ITEM_FOR_FREE_CASINO_HEIST(INT iNameHash = -1, INT iCollection = -1, INT iPreset = -1) /************************/ /* HELD BACK */ /************************/ SWITCH iNameHash // RACE AND CHASE - SIGNS CASE HASH("DLC_MP_H3_F_JBIB_10_22") CASE HASH("DLC_MP_H3_M_JBIB_9_22") RETURN FALSE BREAK // RACE AND CHASE - FALGS CASE HASH("DLC_MP_H3_F_JBIB_10_24") CASE HASH("DLC_MP_H3_M_JBIB_9_24") RETURN FALSE BREAK ENDSWITCH /************************/ /* PREP OUTFITS */ /************************/ SWITCH iNameHash CASE HASH("DLC_MP_X17_M_OUTFIT_SCUBA_0") // [CLO_H2M_O_S_0] Black Scuba CASE HASH("DLC_MP_X17_F_OUTFIT_SCUBA_0") // [CLO_H2F_O_S_0] Black Scuba IF GET_PACKED_STAT_BOOL(PACKED_STAT_BLACK_SCUBA_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_H3_M_OUTFIT_PRP_1") // [CLO_H3M_O_PRP_1] The Pickup CASE HASH("DLC_MP_H3_M_OUTFIT_PRP_2") // [CLO_H3M_O_PRP_2] The Remover CASE HASH("DLC_MP_H3_F_OUTFIT_PRP_1") // [CLO_H3F_O_PRP_1] The Pickup CASE HASH("DLC_MP_H3_F_OUTFIT_PRP_2") // [CLO_H3F_O_PRP_2] The Remover IF GET_PACKED_STAT_BOOL(PACKED_STAT_TRASH_COLLECTOR_OUTFITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_H3_M_OUTFIT_UND_1") // [CLO_H3M_O_UND_1] The Ominous CASE HASH("DLC_MP_H3_F_OUTFIT_UND_1") // [CLO_H3F_O_UND_1] The Ominous IF GET_PACKED_STAT_BOOL(PACKED_STAT_UNDERTAKER_OUTFITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_H3_M_OUTFIT_VAL_1") // [CLO_H3M_O_VAL_1] Valet CASE HASH("DLC_MP_H3_F_OUTFIT_VAL_1") // [CLO_H3F_O_VAL_1] Valet IF GET_PACKED_STAT_BOOL(PACKED_STAT_VALET_OUTFITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_H3_M_OUTFIT_PR_1") // [CLO_H3M_O_PR_1] The Steadfast CASE HASH("DLC_MP_H3_M_OUTFIT_PR_4") // [CLO_H3M_O_PR_4] The Exacting CASE HASH("DLC_MP_H3_M_OUTFIT_PR_2") // [CLO_H3M_O_PR_2] The No-Nonsense CASE HASH("DLC_MP_H3_M_OUTFIT_PR_3") // [CLO_H3M_O_PR_3] The Austere CASE HASH("DLC_MP_H3_F_OUTFIT_PR_1") // [CLO_H3F_O_PR_1] The Steadfast CASE HASH("DLC_MP_H3_F_OUTFIT_PR_4") // [CLO_H3F_O_PR_4] The Exacting CASE HASH("DLC_MP_H3_F_OUTFIT_PR_2") // [CLO_H3F_O_PR_2] The No-Nonsense CASE HASH("DLC_MP_H3_F_OUTFIT_PR_3") // [CLO_H3F_O_PR_3] The Austere IF GET_PACKED_STAT_BOOL(PACKED_STAT_PRISON_GUARD_OUTFITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_H3_M_OUTFIT_FIB_1") // [CLO_H3M_O_FIB_1] The Negotiator CASE HASH("DLC_MP_H3_M_OUTFIT_FIB_2") // [CLO_H3M_O_FIB_2] The Mediator CASE HASH("DLC_MP_H3_M_OUTFIT_FIB_3") // [CLO_H3M_O_FIB_3] The Facilitator CASE HASH("DLC_MP_H3_M_OUTFIT_FIB_4") // [CLO_H3M_O_FIB_4] The Arbitrator CASE HASH("DLC_MP_H3_F_OUTFIT_FIB_1") // [CLO_H3F_O_FIB_1] The Negotiator CASE HASH("DLC_MP_H3_F_OUTFIT_FIB_2") // [CLO_H3F_O_FIB_2] The Mediator CASE HASH("DLC_MP_H3_F_OUTFIT_FIB_3") // [CLO_H3F_O_FIB_3] The Facilitator CASE HASH("DLC_MP_H3_F_OUTFIT_FIB_4") // [CLO_H3F_O_FIB_4] The Arbitrator IF GET_PACKED_STAT_BOOL(PACKED_STAT_FIB_SUIT_OUTFITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /************************/ /* YELLOW DOG */ /************************/ SWITCH iNameHash CASE HASH("DLC_MP_H3_F_JBIB_10_0") CASE HASH("DLC_MP_H3_F_JBIB_10_1") CASE HASH("DLC_MP_H3_M_JBIB_9_0") CASE HASH("DLC_MP_H3_M_JBIB_9_1") CASE HASH("DLC_MP_H3_F_FEET_0_0") CASE HASH("DLC_MP_H3_F_TEETH_1_0") CASE HASH("DLC_MP_H3_F_TEETH_2_0") CASE HASH("DLC_MP_H3_M_FEET_0_0") CASE HASH("DLC_MP_H3_M_TEETH_1_0") CASE HASH("DLC_MP_H3_M_TEETH_2_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_DOG_WITH_CONE_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /************************/ /* CHRISTMAS PRESENT */ /************************/ SWITCH iNameHash // MINIGUN SWEATER CASE HASH("DLC_MP_H3_F_JBIB_16_0") CASE HASH("DLC_MP_H3_M_JBIB_12_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_MINIGUN_SWEATER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // GREEN REINDEER LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_2") CASE HASH("DLC_MP_ARENA_M_BERD_0_18") CASE HASH("DLC_MP_ARENA_M_LEGS_4_18") CASE HASH("DLC_MP_ARENA_M_FEET_6_18") CASE HASH("DLC_MP_ARENA_M_JBIB_2_18") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_2") CASE HASH("DLC_MP_ARENA_F_BERD_0_18") CASE HASH("DLC_MP_ARENA_F_LEGS_4_18") CASE HASH("DLC_MP_ARENA_F_FEET_6_18") CASE HASH("DLC_MP_ARENA_F_JBIB_2_18") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_GREEN_REINDEER_LIGHTS_BODYSUIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // TRADITIONAL FESTIVE LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_1") CASE HASH("DLC_MP_ARENA_M_BERD_0_17") CASE HASH("DLC_MP_ARENA_M_LEGS_4_17") CASE HASH("DLC_MP_ARENA_M_FEET_6_17") CASE HASH("DLC_MP_ARENA_M_JBIB_2_17") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_1") CASE HASH("DLC_MP_ARENA_F_BERD_0_17") CASE HASH("DLC_MP_ARENA_F_LEGS_4_17") CASE HASH("DLC_MP_ARENA_F_FEET_6_17") CASE HASH("DLC_MP_ARENA_F_JBIB_2_17") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_TRADITIONAL_FESTIVE_LIGHTS_BODYSUIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // YELLOW REINDEER LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_0") CASE HASH("DLC_MP_ARENA_M_BERD_0_16") CASE HASH("DLC_MP_ARENA_M_LEGS_4_16") CASE HASH("DLC_MP_ARENA_M_FEET_6_16") CASE HASH("DLC_MP_ARENA_M_JBIB_2_16") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_0") CASE HASH("DLC_MP_ARENA_F_BERD_0_16") CASE HASH("DLC_MP_ARENA_F_LEGS_4_16") CASE HASH("DLC_MP_ARENA_F_FEET_6_16") CASE HASH("DLC_MP_ARENA_F_JBIB_2_16") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_YELLOW_REINDEER_LIGHTS_BODYSUIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // NEON FESTIVE LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_3") CASE HASH("DLC_MP_ARENA_M_BERD_0_19") CASE HASH("DLC_MP_ARENA_M_LEGS_4_19") CASE HASH("DLC_MP_ARENA_M_FEET_6_19") CASE HASH("DLC_MP_ARENA_M_JBIB_2_19") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_3") CASE HASH("DLC_MP_ARENA_F_BERD_0_19") CASE HASH("DLC_MP_ARENA_F_LEGS_4_19") CASE HASH("DLC_MP_ARENA_F_FEET_6_19") CASE HASH("DLC_MP_ARENA_F_JBIB_2_19") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_NEON_FESTIVE_LIGHTS_BODYSUIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /************************/ /* BADLANDS REVENGE II */ /************************/ SWITCH iNameHash // DEADEYE CASE HASH("DLC_MP_H3_F_JBIB_10_18") CASE HASH("DLC_MP_H3_M_JBIB_9_18") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_DEADEYE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK //SHARPSHOOTER CASE HASH("DLC_MP_H3_F_JBIB_10_15") CASE HASH("DLC_MP_H3_M_JBIB_9_15") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_SHARPSHOOTER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_16") CASE HASH("DLC_MP_H3_F_JBIB_10_17") CASE HASH("DLC_MP_H3_F_JBIB_10_19") CASE HASH("DLC_MP_H3_M_JBIB_9_16") CASE HASH("DLC_MP_H3_M_JBIB_9_17") CASE HASH("DLC_MP_H3_M_JBIB_9_19") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // PISTOLS AT DAWN CASE HASH("mpHeist3_Tee_001_F") CASE HASH("mpHeist3_Tee_001_M") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_PISTOLS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("mpHeist3_Tee_000_F") CASE HASH("mpHeist3_Tee_000_M") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* RACE AND CHASE */ /************************/ SWITCH iNameHash // RACE CHAMPION CASE HASH("DLC_MP_H3_F_JBIB_10_23") CASE HASH("DLC_MP_H3_M_JBIB_9_23") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_RACECHAMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_RACECHAMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_RACE_CHAMP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK //BEAT THE TRAFFIC CASE HASH("DLC_MP_H3_F_JBIB_10_21") CASE HASH("DLC_MP_H3_M_JBIB_9_21") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAFFICAVOI) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_BEAT_TRAFFIC) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK //ALL WHEELS CASE HASH("DLC_MP_H3_F_JBIB_10_20") CASE HASH("DLC_MP_H3_M_JBIB_9_20") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_CANTCATCHBRA) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_ALL_WHEELS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_007_F") CASE HASH("mpHeist3_Tee_008_F") CASE HASH("mpHeist3_Tee_009_F") CASE HASH("mpHeist3_Tee_007_M") CASE HASH("mpHeist3_Tee_008_M") CASE HASH("mpHeist3_Tee_009_M") IF (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_RACECHAMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_RACECHAMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAFFICAVOI) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_CANTCATCHBRA)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* THE WIZARDS RUIN */ /************************/ SWITCH iNameHash // COIN PURSE CASE HASH("DLC_MP_H3_F_JBIB_10_7") CASE HASH("DLC_MP_H3_M_JBIB_9_7") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_COINPURSE) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_COINPURSE, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_COIN_PURSE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_8") CASE HASH("DLC_MP_H3_F_JBIB_10_9") CASE HASH("DLC_MP_H3_F_JBIB_10_10") CASE HASH("DLC_MP_H3_M_JBIB_9_8") CASE HASH("DLC_MP_H3_M_JBIB_9_9") CASE HASH("DLC_MP_H3_M_JBIB_9_10") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_WIZHARD) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_BATSWORD) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_BATSWORD, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_COINPURSE) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_COINPURSE, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // FEELIN’ GROGGY CASE HASH("mpHeist3_Tee_004_F") CASE HASH("mpHeist3_Tee_004_M") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_WIZHARD) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_FEELINGROGGY) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // PLATINUM SWORD CASE HASH("mpHeist3_Tee_005_F") CASE HASH("mpHeist3_Tee_005_M") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_BATSWORD) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_BATSWORD, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_PLATINUM_SWORD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* SPACE MONKEY 3 */ /************************/ SWITCH iNameHash // APE ESCAPE CASE HASH("DLC_MP_H3_F_JBIB_10_2") CASE HASH("DLC_MP_H3_M_JBIB_9_2") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_APEESCAPE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_APE_ESCAPE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // MONKEY MIND CASE HASH("DLC_MP_H3_F_JBIB_10_5") CASE HASH("DLC_MP_H3_M_JBIB_9_5") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEYKIND) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_MONKEY_MIND) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // ASTROCHIMP CASE HASH("DLC_MP_H3_F_JBIB_10_3") CASE HASH("DLC_MP_H3_M_JBIB_9_3") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_ASTROCHIMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_ASTROCHIMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_ASTRO_CHIMP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_4") CASE HASH("DLC_MP_H3_F_JBIB_10_6") CASE HASH("DLC_MP_H3_M_JBIB_9_4") CASE HASH("DLC_MP_H3_M_JBIB_9_6") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_APEESCAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEYKIND) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_ASTROCHIMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_ASTROCHIMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_006_F") CASE HASH("mpHeist3_Tee_006_M") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /**************************/ /* DEFENDERS OF THE EARTH */ /**************************/ SWITCH iNameHash // AQUATIC APE CASE HASH("DLC_MP_H3_F_JBIB_10_11") CASE HASH("DLC_MP_H3_M_JBIB_9_11") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_AQUATIC_APE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // KEEPING THE FAITH CASE HASH("DLC_MP_H3_F_JBIB_10_12") CASE HASH("DLC_MP_H3_M_JBIB_9_12") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_KEEPING_FAITH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // MASTERFUL CASE HASH("DLC_MP_H3_F_JBIB_10_14") CASE HASH("DLC_MP_H3_M_JBIB_9_14") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_MASTERFUL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_13") CASE HASH("DLC_MP_H3_M_JBIB_9_13") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /**************************/ /* GLITCHED */ /**************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_002_F") CASE HASH("mpHeist3_Tee_002_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_GLITCHED_DEGENATRON_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* LOVE PROFESSOR */ /************************/ SWITCH iNameHash // TRUE LOVE CASE HASH("DLC_MP_H3_F_JBIB_13_11") CASE HASH("DLC_MP_H3_F_JBIB_13_12") CASE HASH("DLC_MP_H3_M_JBIB_11_19") CASE HASH("DLC_MP_H3_M_JBIB_11_20") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) OR GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRUELOVE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_TRUELOVE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // NEMESIS CASE HASH("DLC_MP_H3_F_JBIB_13_14") CASE HASH("DLC_MP_H3_M_JBIB_11_22") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) OR GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_NEMESIS) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_NEMESIS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // FRIENDZONED CASE HASH("DLC_MP_H3_F_JBIB_13_13") CASE HASH("DLC_MP_H3_M_JBIB_11_21") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) OR GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_FRIENDZONED) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_FRIENDZONED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_13_10") CASE HASH("DLC_MP_H3_M_JBIB_11_18") CASE HASH("DLC_MP_H3_F_JBIB_13_15") CASE HASH("DLC_MP_H3_M_JBIB_11_23") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) OR (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRUELOVE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_NEMESIS) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_FRIENDZONED)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /************************/ /* KITTY CLAW */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // PRINCESS ROBOT CASE HASH("mpHeist3_Tee_013_F") CASE HASH("mpHeist3_Tee_013_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PRINCESS_ROBOT_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // WASABI CASE HASH("mpHeist3_Tee_014_F") CASE HASH("mpHeist3_Tee_014_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_SHINY_WASABI_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // MASTER CASE HASH("mpHeist3_Tee_015_F") CASE HASH("mpHeist3_Tee_015_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_MASTER_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // GREEN CASE HASH("mpHeist3_Tee_016_F") CASE HASH("mpHeist3_Tee_016_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_GREEN_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // PURPLE CASE HASH("mpHeist3_Tee_017_F") CASE HASH("mpHeist3_Tee_017_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PURPLE_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BLUE CASE HASH("mpHeist3_Tee_018_F") CASE HASH("mpHeist3_Tee_018_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BLUE_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // RED CASE HASH("mpHeist3_Tee_019_F") CASE HASH("mpHeist3_Tee_019_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_RED_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BROWN CASE HASH("mpHeist3_Tee_020_F") CASE HASH("mpHeist3_Tee_020_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BROWN_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // YELLOW CASE HASH("mpHeist3_Tee_021_F") CASE HASH("mpHeist3_Tee_021_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_YELLOW_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // BONUS CASE HASH("mpHeist3_Tee_022_F") CASE HASH("mpHeist3_Tee_022_M") IF (GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_RED_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BLUE_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PURPLE_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_YELLOW_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BROWN_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_GREEN_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_SHINY_WASABI_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PRINCESS_ROBOT_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_MASTER_PLUSH)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* MADAM NAZAR */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_023_F") CASE HASH("mpHeist3_Tee_023_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_NAZAR_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* ARCADE PROPERTY */ /************************/ SWITCH iNameHash // PIXEL PETE'S CASE HASH("DLC_MP_H3_F_JBIB_12_2") CASE HASH("DLC_MP_H3_M_JBIB_11_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_PIXEL_PETES) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // EIGHT-BIT CASE HASH("DLC_MP_H3_F_JBIB_12_3") CASE HASH("DLC_MP_H3_M_JBIB_11_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_EIGHT_BIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // WONDERLAND CASE HASH("DLC_MP_H3_F_JBIB_12_4") CASE HASH("DLC_MP_H3_M_JBIB_11_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_WONDERLAND) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // WAREHOUSE CASE HASH("DLC_MP_H3_F_JBIB_12_5") CASE HASH("DLC_MP_H3_M_JBIB_11_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_WAREHOUSE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // VIDEOGEGGON CASE HASH("mpHeist3_Tee_011_F") CASE HASH("mpHeist3_Tee_011_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_VIDEOGEDDON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // INSERT COIN CASE HASH("mpHeist3_Tee_012_F") CASE HASH("mpHeist3_Tee_012_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_INSERT_COIN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* ARCADE CABINETS */ /************************/ SWITCH iNameHash // OWN ALL CASE HASH("DLC_MP_H3_F_JBIB_12_0") // Pixtro CASE HASH("DLC_MP_H3_F_JBIB_12_1") // Akedo CASE HASH("DLC_MP_H3_M_JBIB_11_0") CASE HASH("DLC_MP_H3_M_JBIB_11_1") IF HAS_PLAYER_PURCHASED_ALL_ARCADE_MACHINES_IN_ARCADE_PROPERTY(FALSE, TRUE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CABS_TSHIRT_OWN_ALL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // OWN ALL CASE HASH("mpHeist3_Tee_003_F") CASE HASH("mpHeist3_Tee_003_M") IF HAS_PLAYER_PURCHASED_ALL_ARCADE_MACHINES_IN_ARCADE_PROPERTY(FALSE, TRUE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CABS_TSHIRT_OWN_ALL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* TROPHY CABINET */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // GOLD TROPHY CASE HASH("mpHeist3_Tee_010_F") CASE HASH("mpHeist3_Tee_010_M") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_RACECHAMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_RACECHAMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAFFICAVOI) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_CANTCATCHBRA) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_WIZHARD) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_BATSWORD) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_BATSWORD, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_COINPURSE) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_COINPURSE, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_APEESCAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEYKIND) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_ASTROCHIMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_ASTROCHIMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRUELOVE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_NEMESIS) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_FRIENDZONED)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_TROPHY_TSHIRT_ALL_AWARDS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL GIVE_DLC_CLOTHING_ITEM_FOR_FREE(INT iNameHash = -1, INT iCollection = -1, INT iPreset = -1) // Overlays need to use the iPreset switch!!! // ADD NEW ITEMS TO: // FUNC STATS_PACKED GET_EVENT_ITEM_PACKED_STAT(INT iHash) // in net_common_functions.sch #IF FEATURE_DLC_1_2022 SWITCH iCollection CASE HASH("mpSum2_overlays") SWITCH iPreset CASE HASH("MP_Sum2_Tee_000_M") // Black LD Organics Tee CASE HASH("MP_Sum2_Tee_000_F") // Black LD Organics Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_LD_ORGANICS_TSHIRT_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Sum2_Tee_001_M") // White LD Organics Tee CASE HASH("MP_Sum2_Tee_001_F") // White LD Organics Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_LD_ORGANICS_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH SWITCH iNameHash CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_0_0") // Gray Cracked Puppet CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_0_0") // Gray Cracked Puppet IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_02_MASK_A) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_0_1") // Blushed Cracked Puppet CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_0_1") // Blushed Cracked Puppet IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_02_MASK_B) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_1_0") // Grimy Stitched CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_1_0") // Grimy Stitched IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_01_MASK_A) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_1_1") // Pale Stitched CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_1_1") // Pale Stitched IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_01_MASK_B) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_4_0") // Green Emissive Lady Liberty CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_4_1") // Blue Emissive Lady Liberty CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_4_0") // Green Emissive Lady Liberty CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_4_1") // Blue Emissive Lady Liberty IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_JULY_4TH_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_2_0") // President CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_2_0") // President IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PRESIDENT_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash CASE HASH("DLC_MP_SUM2_G9EC_M_OUTFIT_MUMMY") // Mummy CASE HASH("DLC_MP_SUM2_G9EC_F_OUTFIT_MUMMY") // Mummy IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MUMMY_COSTUME) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_LEGS_0_0") // Apricot Perseus Track Pants CASE HASH("DLC_MP_SUM2_G9EC_F_LEGS_0_0") // Apricot Perseus Track Pants IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PERSEUS_TRACK_PANTS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_LEGS_0_1") // Manor Geo Track Pants CASE HASH("DLC_MP_SUM2_G9EC_F_LEGS_0_1") // Manor Geo Track Pants IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MANOR_TRACK_PANTS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_0_0") // Pumpkin Hoodie CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_1_0") // Halloween Hoodie (Hood Up) CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_1_0") // Pumpkin Hoodie CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_2_0") // Halloween Hoodie (Hood Up) IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_PULLOVER_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_0_1") // Manor Geo Hoodie CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_1_1") // Manor Geo Hoodie (Hood Up) CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_1_1") // Manor Geo Hoodie CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_2_1") // Manor Geo Hoodie (Hood Up) IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MANOR_PULLOVER_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_2_0") // Hand-Drawn Biker Bomber CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_3_0") // Hand-Drawn Biker Bomber (Hood Up) CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_3_0") // Hand-Drawn Biker Bomber CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_4_0") // Hand-Drawn Biker Bomber (Hood Up) IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_BIKER_BOMBER_JACKET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_6_0") // Still Slipping Tie-dye Tee CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_8_0") // Still Slipping Tie-dye Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_STILL_SLIPPING_CREWNECK_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_7_0") // LS Smoking Jacket CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_5_0") // LS Smoking Jacket IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_LS_BLAZER_JACKET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_0_0") // Apricot Perseus Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_1_0") // Apricot Perseus Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_0_0") // Apricot Perseus Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_1_0") // Apricot Perseus Backwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PERSEUS_BASEBALL_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_2_0") // Bigness Hand-drawn Dome CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_2_0") // Bigness Hand-drawn Dome IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_BIGNESS_MOTOR_HELMET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_3_0") // Manor Geo Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_4_0") // Manor Geo Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_3_0") // Manor Geo Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_4_0") // Manor Geo Backwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MANOR_BASEBALL_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_6_0") // Still Slipping Tie-dye Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_7_0") // Still Slipping Tie-dye Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_6_0") // Still Slipping Tie-dye Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_7_0") // Still Slipping Tie-dye Forwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_STILL_SLIPPING_BASEBALL_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_0") // Lemon Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_0") // Lemon Festive Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_LEMON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_1") // Green Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_1") // Green Festive Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_GREEN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_2") // Red Snowflake Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_2") // Red Snowflake Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_RED_SNOWFLAKE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_3") // Blue Snowflake Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_3") // Blue Snowflake Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_BLUE_SNOWFLAKE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_4") // Red Holly Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_4") // Red Holly Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_RED_HOLLY) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_7") // Red Reindeer Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_7") // Red Reindeer Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_RED_REINDEER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_8") // Borfmas Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_8") // Borfmas Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_BORFMAS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_5") // Pisswasser Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_5") // Pisswasser Festive Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_PISSWASSER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_6") // Blarneys Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_6") // Blarneys Festive Beer Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_BLARNEYS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PEARS_0_0") // Gold Beat Off Earphones CASE HASH("DLC_MP_SUM2_G9EC_F_PEARS_0_0") // Gold Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HEADPHONES_MEMBERSHIP_COLORWAY) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PLEFT_WRIST_0_0") // White Spiked Gauntlet (L) CASE HASH("DLC_MP_SUM2_G9EC_M_PRIGHT_WRIST_0_0") // White Spiked Gauntlet (R) CASE HASH("DLC_MP_SUM2_G9EC_F_PLEFT_WRIST_0_0") // White Spiked Gauntlet (L) CASE HASH("DLC_MP_SUM2_G9EC_F_PRIGHT_WRIST_0_0") // White Spiked Gauntlet (R) IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_SPIKED_BRACELET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_DECL_0_0") // Have You Seen Me? Sweater CASE HASH("DLC_MP_SUM2_G9EC_F_DECL_0_0") // Have You Seen Me? Sweater IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FESTIVE_CREWNECK_SWEATSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash CASE HASH("DLC_MP_SUM2_M_BERD_5_0") // Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_0") // Painted Tiger IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_5_1") // Gray Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_1") // Gray Painted Tiger IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_5_2") // Gold Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_2") // Gold Painted Tiger IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_5_3") // Ornate Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_3") // Ornate Painted Tiger IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_6_0") // Pale Vintage Mummy CASE HASH("DLC_MP_SUM2_F_BERD_6_0") // Pale Vintage Mummy IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_MUMMY_MASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_6_1") // Green Vintage Mummy CASE HASH("DLC_MP_SUM2_F_BERD_6_1") // Green Vintage Mummy IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_MUMMY_MASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_6_2") // Weathered Vintage Mummy CASE HASH("DLC_MP_SUM2_F_BERD_6_2") // Weathered Vintage Mummy IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_MUMMY_MASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_7_0") // Horror Pumpkin CASE HASH("DLC_MP_SUM2_F_BERD_7_0") // Horror Pumpkin IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_PUMPKINHEAD_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_8_0") // Conquest CASE HASH("DLC_MP_SUM2_F_BERD_8_0") // Conquest IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_CONQUEST_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_9_0") // Green Vintage Frank CASE HASH("DLC_MP_SUM2_F_BERD_9_0") // Green Vintage Frank IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_FRANK_MONSTER_MASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_9_1") // Brown Vintage Frank CASE HASH("DLC_MP_SUM2_F_BERD_9_1") // Brown Vintage Frank IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_FRANK_MONSTER_MASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_9_2") // Gray Vintage Frank CASE HASH("DLC_MP_SUM2_F_BERD_9_2") // Gray Vintage Frank IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_FRANK_MONSTER_MASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_0") // Black Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_0") // Black Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_1") // Gray Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_1") // Gray Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_2") // White Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_2") // White Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_3") // Green Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_3") // Green Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_4") // Orange Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_4") // Orange Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_5") // Purple Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_5") // Purple Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_6") // Pink Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_6") // Pink Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_7") // Red Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_7") // Red Detail Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_8") // Blue Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_8") // Blue Detail Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_9") // Yellow Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_9") // Yellow Detail Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_10") // Green Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_10") // Green Detail Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_11") // Pink Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_11") // Pink Detail Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_12") // Red & Gray Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_12") // Red & Gray Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_13") // Red Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_13") // Red Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_14) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_14") // Camo Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_14") // Camo Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_15) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_15") // Aqua Camo Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_15") // Aqua Camo Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_16) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_16") // Brown Digital Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_16") // Brown Digital Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_17) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_17") // Gold Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_17") // Gold Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_18) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_18") // Red & Cream Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_18") // Red & Cream Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_19) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_19") // Green & Yellow Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_19") // Green & Yellow Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_20) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_20") // Pink Floral Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_20") // Pink Floral Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_21) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_21") // Black & Green Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_21") // Black & Green Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_22) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_22") // White & Red Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_22") // White & Red Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_23) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_23") // Carbon Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_23") // Carbon Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_24) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_24") // Carbon Teal Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_24") // Carbon Teal Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_25) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_25") // Black & White Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_25") // Black & White Tech Demon IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_26) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_0_0") // Famine CASE HASH("DLC_MP_SUM2_F_BERD_0_0") // Famine IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_FAMINE_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_1_0") // White Vintage Vampire CASE HASH("DLC_MP_SUM2_F_BERD_1_0") // White Vintage Vampire IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_HORROR_VAMPIRE_MASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_1_1") // Dark Green Vintage Vampire CASE HASH("DLC_MP_SUM2_F_BERD_1_1") // Dark Green Vintage Vampire IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_HORROR_VAMPIRE_MASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_1_2") // Light Green Vintage Vampire CASE HASH("DLC_MP_SUM2_F_BERD_1_2") // Light Green Vintage Vampire IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_HORROR_VAMPIRE_MASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_3_0") // War CASE HASH("DLC_MP_SUM2_F_BERD_3_0") // War IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_WAR_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_4_0") // Death CASE HASH("DLC_MP_SUM2_F_BERD_4_0") // Death IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_DEATH_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash CASE HASH("DLC_MP_SUM2_M_OUTFIT_SASQUATCH") // Sasquatch CASE HASH("DLC_MP_SUM2_F_OUTFIT_SASQUATCH") // Sasquatch IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_SASQUATCH_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_LEGS_2_0") // Green UFO Boxer Shorts CASE HASH("DLC_MP_SUM2_F_LEGS_0_0") // Green UFO Boxer Shorts IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_GREEN_UFO_BOXERS_SHORTS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_LEGS_2_1") // White UFO Boxer Shorts CASE HASH("DLC_MP_SUM2_F_LEGS_0_1") // Green UFO Boxer Shorts IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_WHITE_UFO_BOXERS_SHORTS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_13_0") // Pumpkin Tee CASE HASH("DLC_MP_SUM2_F_JBIB_15_0") // Pumpkin Tee CASE HASH("DLC_MP_SUM2_F_JBIB_16_0") // Pumpkin Tee Tucked IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_PUMPKIN_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_14_0") // Sinsimito Cuban Shirt CASE HASH("DLC_MP_SUM2_F_JBIB_19_0") // Sinsimito Cuban Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CAYO_SINSIMITO_TEQUILA_CUBAN_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_15_0") // Cliffford Varsity CASE HASH("DLC_MP_SUM2_M_JBIB_16_0") // Cliffford Varsity (Open) CASE HASH("DLC_MP_SUM2_F_JBIB_20_0") // Cliffford Varsity IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DOOMSDAY_HEIST_CLIF_VARSITY_JACKET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_15_1") // Pacific Standard Varsity CASE HASH("DLC_MP_SUM2_M_JBIB_16_1") // Pacific Standard Varsity (Open) CASE HASH("DLC_MP_SUM2_F_JBIB_20_1") // Pacific Standard Varsity IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PACIFIC_STAND_HEIST_VARISTY_JACKET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_15_2") // The Diamond Casino Varsity CASE HASH("DLC_MP_SUM2_M_JBIB_16_2") // The Diamond Casino Varsity (Open) CASE HASH("DLC_MP_SUM2_F_JBIB_20_2") // The Diamond Casino Varsity IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DAIMOND_CAS_HEIST_VARSITY_JACKET_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_17_0") // Pacific Standard Sweater CASE HASH("DLC_MP_SUM2_F_JBIB_8_0") // Pacific Standard Sweater IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PACIFIC_STAND_HEIST_LS_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_7_0") // Cliffford Hoodie CASE HASH("DLC_MP_SUM2_M_JBIB_8_0") // Cliffford Hoodie (Hood Up) CASE HASH("DLC_MP_SUM2_F_JBIB_24_0") // Cliffford Hoodie CASE HASH("DLC_MP_SUM2_F_JBIB_21_0") // Cliffford Hoodie (Hood Up) IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DOOMSDAY_HEIST_CLIF_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_0") // Gray Yeti Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_0") // Gray Yeti Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_1") // Woodland Yeti Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_1") // Woodland Yeti Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_2") // Green FB Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_2") // Green FB Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_3") // Blue FB Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_3") // Blue FB Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_4") // Grey Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_4") // Grey Lézard Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_5") // Green Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_5") // Green Lézard Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_6") // Light Plaid Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_6") // Light Plaid Lézard Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_7") // Dark Plaid Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_7") // Dark Plaid Lézard Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_8") // White Striped Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_8") // White Striped Lézard Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_9") // Red Striped Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_9") // Red Striped Lézard Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_10") // Brown Crevis Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_10") // Brown Crevis Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_11") // Gray Crevis Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_11") // Gray Crevis Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_12") // Black Broker Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_12") // Black Broker Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_13") // Burgundy Broker Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_13") // Burgundy Broker Flat Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_14) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_0_0") // Black LD Organics Backwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_1_0") // Black LD Organics Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_0_0") // Black LD Organics Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_1_0") // Black LD Organics Forwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_LD_ORGANICS_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_2_0") // Gray Believe Forwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_4_0") // Gray Believe Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_2_0") // Gray Believe Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_4_0") // Gray Believe Backwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_UFO_CAP_GRAY) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_2_1") // Black Believe Forwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_4_1") // Black Believe Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_2_1") // Black Believe Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_4_1") // Black Believe Backwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_UFO_CAP_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_3_0") // Glow Believe Forwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_7_0") // Glow Believe Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_3_0") // Glow Believe Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_7_0") // Glow Believe Backwards Cap IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_UFO_CAP_GLOW) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_8_0") // Strickler Hat CASE HASH("DLC_MP_SUM2_F_PHEAD_8_0") // Strickler Hat IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CAYO_STRICKLER_HAT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_0") // White Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_0") // White Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_1") // Yellow Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_1") // Yellow Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_2") // Salmon Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_2") // Salmon Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_3") // Orange Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_3") // Orange Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_4") // Purple Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_4") // Purple Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_5") // Pink Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_5") // Pink Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_6") // Turquoise Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_6") // Turquoise Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_7") // Blue Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_7") // Blue Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_8") // Black Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_8") // Black Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_9") // Gray Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_9") // Gray Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_10") // Teal Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_10") // Teal Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_11") // Red Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_11") // Red Beat Off Earphones IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_SPECIAL_1_0") // The Diamond Strike Vest CASE HASH("DLC_MP_SUM2_F_SPECIAL_1_0") // The Diamond Strike Vest IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DAIMOND_CAS_HEIST_BODY_ARMOR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_0") // Wild Striped Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_0") // Wild Striped Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_1") // Neon Striped Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_1") // Neon Striped Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_2") // Black SC Coin Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_2") // Black SC Coin Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_3") // White SC Coin Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_3") // White SC Coin Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_4") // Black SC Pattern Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_4") // Black SC Pattern Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_5") // Pink SC Pattern Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_5") // Pink SC Pattern Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_6") // Blue SC Pattern Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_6") // Blue SC Pattern Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_7") // Camo Yeti Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_7") // Camo Yeti Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_8") // Gray Camo Yeti Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_8") // Gray Camo Yeti Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_0") // Black Bigness Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_0") // Black Bigness Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_1") // Purple Bigness Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_1") // Purple Bigness Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_2") // Camo Bigness Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_2") // Camo Bigness Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_3") // Black Blagueurs Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_3") // Black Blagueurs Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_4") // White Blagueurs Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_4") // White Blagueurs Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_14) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_5") // Pink Blagueurs Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_5") // Pink Blagueurs Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_15) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_6") // Gray Cimicino Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_6") // Gray Cimicino Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_16) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_7") // Rouge Cimicino Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_7") // Rouge Cimicino Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_17) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_8") // Navy DS Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_8") // Navy DS Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_18) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_9") // Red DS Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_9") // Red DS Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_19) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_10") // Floral Güffy Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_10") // Floral Güffy Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_20) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_11") // Green Güffy Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_11") // Green Güffy Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_21) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_12") // White Güffy Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_12") // White Güffy Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_22) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_13") // Blue Heat Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_13") // Blue Heat Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_23) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_14") // Red Prolaps Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_14") // Red Prolaps Pool Sliders IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_24) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH #ENDIF #IF FEATURE_GEN9_EXCLUSIVE SWITCH iNameHash // Migration Reward - Race suit CASE HASH("DLC_MP_G9EC_M_OUTFIT_RACE_6") CASE HASH("DLC_MP_G9EC_F_OUTFIT_RACE_6") IF IS_GEN_8_PLAYER() OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_HSW_RACING_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGen9EXContentItems #ENDIF RETURN TRUE ENDIF BREAK // Intro Reward - Hao T-Shirt CASE HASH("DLC_MP_G9EC_M_DECL_0_2") CASE HASH("DLC_MP_G9EC_F_DECL_0_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HSW_RACE_HELP_DONE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_HSW_RACING_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGen9EXContentItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH #ENDIF #IF FEATURE_FIXER SWITCH iNameHash CASE HASH("DLC_MP_FIXER_M_BERD_0_0") // Orange Goldfish CASE HASH("DLC_MP_FIXER_F_BERD_0_0") // Orange Goldfish IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_0_1") // Purple Goldfish CASE HASH("DLC_MP_FIXER_F_BERD_0_1") // Purple Goldfish IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_0_2") // Bronze Goldfish CASE HASH("DLC_MP_FIXER_F_BERD_0_2") // Bronze Goldfish IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_0_3") // Clownfish CASE HASH("DLC_MP_FIXER_F_BERD_0_3") // Clownfish IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_0") // Juvenile Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_0") // Juvenile Gull IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_1") // Sooty Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_1") // Sooty Gull IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_2") // Black-headed Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_2") // Black-headed Gull IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_3") // Herring Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_3") // Herring Gull IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_0") // Brown Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_0") // Brown Sea Lion IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_1") // Spotted Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_1") // Spotted Sea Lion IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_2") // Dark Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_2") // Dark Sea Lion IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_3") // Gray Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_3") // Gray Sea Lion IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_1") // The Drive CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_1") // The Drive IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_2") // The Putt CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_2") // The Putt IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_3") // The Chip CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_3") // The Chip IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_4") // The Birdie CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_4") // The Birdie IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_0_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_1_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_2_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_3_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_4_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_0_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_1_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_2_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_3_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_4_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_5_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_6_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_7_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_8_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_9_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_10_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_11_0") // Green Festive Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FESTIVE_TEE_GREEN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_0_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_1_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_2_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_3_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_4_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_0_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_1_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_2_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_3_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_4_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_5_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_6_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_7_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_8_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_9_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_10_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_11_1") // Red Festive Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FESTIVE_TEE_RED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_2") // Orange DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_2") // Orange DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_2") // Orange DJ Pooh Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_DJ_POOH_ORANGE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_3") // White WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_3") // White WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_3") // White WCC DJ Pooh Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_DJ_POOH_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_4") // Blue WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_4") // Blue WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_4") // Blue WCC DJ Pooh Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_DJ_POOH_BLUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_HEIST_M_OUTFIT_11") // Navy Coveralls CASE HASH("DLC_MP_HEIST_M_OUTFIT_13") // Gray Coveralls CASE HASH("DLC_MP_HEIST_F_OUTFIT_11") // Navy Coveralls CASE HASH("DLC_MP_HEIST_F_OUTFIT_13") // Gray Coveralls IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_HEIST_BOILER_SUITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_DECL_8_0") // Marathon Hoodie CASE HASH("DLC_MP_FIXER_M_DECL_9_0") // Marathon Hoodie CASE HASH("DLC_MP_FIXER_F_DECL_10_0") // Marathon Hoodie CASE HASH("DLC_MP_FIXER_F_DECL_11_0") // Marathon Hoodie IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_MARATHON_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockFixerRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH #ENDIF #IF FEATURE_TUNER SWITCH iNameHash // Frontier Outfit CASE HASH("DLC_MP_TUNER_M_OUTFIT_FRONTIER") CASE HASH("DLC_MP_TUNER_M_PHEAD_0_0") CASE HASH("DLC_MP_TUNER_F_OUTFIT_FRONTIER") CASE HASH("DLC_MP_TUNER_F_PHEAD_0_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_FRONTIER_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Boilersuit - Prisoner CASE HASH("DLC_MP_TUNER_M_OUTFIT_BOILER_0") CASE HASH("DLC_MP_TUNER_M_JBIB_1_2") CASE HASH("DLC_MP_TUNER_M_LEGS_1_2") CASE HASH("DLC_MP_TUNER_F_OUTFIT_BOILER_0") CASE HASH("DLC_MP_TUNER_F_JBIB_1_2") CASE HASH("DLC_MP_TUNER_F_LEGS_1_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_OUTFIT_1_PRISONER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Boilersuit - LSC CASE HASH("DLC_MP_TUNER_M_OUTFIT_BOILER_1") CASE HASH("DLC_MP_TUNER_M_JBIB_1_3") CASE HASH("DLC_MP_TUNER_M_LEGS_1_3") CASE HASH("DLC_MP_TUNER_F_OUTFIT_BOILER_1") CASE HASH("DLC_MP_TUNER_F_JBIB_1_3") CASE HASH("DLC_MP_TUNER_F_LEGS_1_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_OUTFIT_2_LSC) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Morpsuit - eCola CASE HASH("DLC_MP_TUNER_M_OUTFIT_MORPH_0") CASE HASH("DLC_MP_TUNER_F_OUTFIT_MORPH_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_MORPH_0_ECOLA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Morpsuit - Sprunk CASE HASH("DLC_MP_TUNER_M_OUTFIT_MORPH_1") CASE HASH("DLC_MP_TUNER_F_OUTFIT_MORPH_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_MORPH_1_SPRUNK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Lost MC CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_1") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_1") CASE HASH("DLC_MP_TUNER_M_JBIB_6_0") CASE HASH("DLC_MP_TUNER_F_JBIB_6_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_2") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_2") CASE HASH("DLC_MP_TUNER_M_JBIB_4_0") CASE HASH("DLC_MP_TUNER_F_JBIB_4_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_3") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_3") CASE HASH("DLC_MP_TUNER_M_JBIB_5_4") CASE HASH("DLC_MP_TUNER_F_JBIB_5_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_4") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_4") CASE HASH("DLC_MP_TUNER_M_JBIB_3_1") CASE HASH("DLC_MP_TUNER_F_JBIB_3_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dock Worker CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_1") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_2") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_3") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_4") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Circoloco - Black CASE HASH("DLC_MP_TUNER_M_DECL_39_0") CASE HASH("DLC_MP_TUNER_F_DECL_38_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_CIRCOLOCO_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Born x Raised Tee - White CASE HASH("DLC_MP_TUNER_M_DECL_30_1") CASE HASH("DLC_MP_TUNER_F_DECL_29_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_BORNXRAISED_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Bomber Jacket - eCola CASE HASH("DLC_MP_TUNER_M_JBIB_13_1") CASE HASH("DLC_MP_TUNER_M_JBIB_14_1") CASE HASH("DLC_MP_TUNER_F_JBIB_13_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_BOMBER_1_ECOLA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Bomber Jacket - Sprunk CASE HASH("DLC_MP_TUNER_M_JBIB_13_0") CASE HASH("DLC_MP_TUNER_M_JBIB_14_0") CASE HASH("DLC_MP_TUNER_F_JBIB_13_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_BOMBER_2_SPRUNK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Bomber Jacket - LSC CASE HASH("DLC_MP_TUNER_M_JBIB_13_2") CASE HASH("DLC_MP_TUNER_M_JBIB_14_2") CASE HASH("DLC_MP_TUNER_F_JBIB_13_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_BOMBER_3_LSC) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tour Jacket - LSC CASE HASH("DLC_MP_TUNER_M_JBIB_9_15") CASE HASH("DLC_MP_TUNER_F_JBIB_9_15") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TOUR_1_LSC) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Hoodie - Banshee CASE HASH("DLC_MP_TUNER_M_JBIB_11_0") CASE HASH("DLC_MP_TUNER_M_JBIB_12_0") CASE HASH("DLC_MP_TUNER_F_JBIB_11_0") CASE HASH("DLC_MP_TUNER_F_JBIB_12_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_HOODIE_1_BANSHEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Mask - Bearsy CASE HASH("DLC_MP_TUNER_M_BERD_3_0") CASE HASH("DLC_MP_TUNER_F_BERD_4_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_BEARSY_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Event Hat - Sprunk CASE HASH("DLC_MP_TUNER_M_PHEAD_1_0") CASE HASH("DLC_MP_TUNER_M_PHEAD_2_0") CASE HASH("DLC_MP_TUNER_F_PHEAD_1_0") CASE HASH("DLC_MP_TUNER_F_PHEAD_2_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_HAT_1_SPRUNK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Event Hat - eCola CASE HASH("DLC_MP_TUNER_M_PHEAD_1_1") CASE HASH("DLC_MP_TUNER_M_PHEAD_2_1") CASE HASH("DLC_MP_TUNER_F_PHEAD_1_1") CASE HASH("DLC_MP_TUNER_F_PHEAD_2_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_HAT_2_ECOLA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpTuner_overlays") SWITCH iPreset CASE HASH("MP_Tuner_Tee_000_M") CASE HASH("MP_Tuner_Tee_000_F") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_FACES_OF_DEATH) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_FACES_OF_DEATH, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_FACES_OF_DEATH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_002_M") CASE HASH("MP_Tuner_Tee_002_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_STRAIGHT_TO_VIDEO) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_STRAIGHT_TO_VIDEO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_003_M") CASE HASH("MP_Tuner_Tee_003_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEY_C_MONKEY_DO) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_MONKEY_C_MONKEY_DO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_005_M") CASE HASH("MP_Tuner_Tee_005_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAINED_TO_KILL) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_TRAINED_TO_KILL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_006_M") CASE HASH("MP_Tuner_Tee_006_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DIRECTOR) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_DIRECTOR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_008_M") CASE HASH("MP_Tuner_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_1_BANSHEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_010_M") CASE HASH("MP_Tuner_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_2_BANSHEE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_011_M") CASE HASH("MP_Tuner_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_3_LSC) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_012_M") CASE HASH("MP_Tuner_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_4_RSG) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_013_M") CASE HASH("MP_Tuner_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_5_WASTED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_014_M") CASE HASH("MP_Tuner_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_6_BAT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_015_M") CASE HASH("MP_Tuner_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_7_KNUCKLE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Tuner_Tee_016_M") CASE HASH("MP_Tuner_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_8_RAMPAGE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // Island Heist SWITCH iCollection CASE HASH("mpHeist4_overlays") SWITCH iPreset CASE HASH("MP_Heist4_Tee_030_M") CASE HASH("MP_Heist4_Tee_030_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KJAH_RADIO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_032_M") CASE HASH("MP_Heist4_Tee_032_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KROSE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_028_M") CASE HASH("MP_Heist4_Tee_028_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_EMOTION_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_029_M") CASE HASH("MP_Heist4_Tee_029_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KDST_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_031_M") CASE HASH("MP_Heist4_Tee_031_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BOUNCE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_022_M") CASE HASH("MP_Heist4_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_FAKE_VAPID_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_023_M") CASE HASH("MP_Heist4_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_I_MARRIED_MY_DAD_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_020_M") CASE HASH("MP_Heist4_Tee_020_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_TOESHOES_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_021_M") CASE HASH("MP_Heist4_Tee_021_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VANILLA_UNICORN_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_003_M") CASE HASH("MP_Heist4_Tee_003_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_STEEL_HORSE_SOLID_LOGO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_004_M") CASE HASH("MP_Heist4_Tee_004_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WESTERN_BLACK_LOGO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_005_M") CASE HASH("MP_Heist4_Tee_005_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WHITE_NAGASAKI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_006_M") CASE HASH("MP_Heist4_Tee_006_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_PRINCIPE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_027_M") CASE HASH("MP_Heist4_Tee_027_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_RS_NOISE_LOGO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_026_M") CASE HASH("MP_Heist4_Tee_026_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_RS_NOISE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_025_M") CASE HASH("MP_Heist4_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_RS_RAZOR_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_024_M") CASE HASH("MP_Heist4_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WHITE_RS_CAMO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_002_M") CASE HASH("MP_Heist4_Tee_002_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_LSUR_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_001_M") CASE HASH("MP_Heist4_Tee_001_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_REBEL_RADIO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_000_M") CASE HASH("MP_Heist4_Tee_000_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_CHANNEL_X_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_007_M") CASE HASH("MP_Heist4_Tee_007_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_ALBANY_VINTAGE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_008_M") CASE HASH("MP_Heist4_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BENEFACTOR_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_009_M") CASE HASH("MP_Heist4_Tee_009_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BRAVADO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_010_M") CASE HASH("MP_Heist4_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_DECLASSE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_011_M") CASE HASH("MP_Heist4_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_DINKA_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_012_M") CASE HASH("MP_Heist4_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_GROTTI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_013_M") CASE HASH("MP_Heist4_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_LAPADATI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_014_M") CASE HASH("MP_Heist4_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_OCELOT_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_015_M") CASE HASH("MP_Heist4_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_OVERFLOD_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_016_M") CASE HASH("MP_Heist4_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_PEGASSI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_017_M") CASE HASH("MP_Heist4_Tee_017_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_PFISTER_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_018_M") CASE HASH("MP_Heist4_Tee_018_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VAPID_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_019_M") CASE HASH("MP_Heist4_Tee_019_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WEENY_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Heist4_Tee_033_M") CASE HASH("MP_Heist4_Tee_033_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BLUE_DIAMOND_RESORT_LS_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 9 // [CLO_H4M_DECL_45] Rockstar Logo CASE HASH("MP_Heist4_Tee_045_M") CASE HASH("MP_Heist4_Tee_045_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 11 // [CLO_H4M_DECL_46] X720 CASE HASH("MP_Heist4_Tee_046_M") CASE HASH("MP_Heist4_Tee_046_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Still Slipping Wavy T-Shirt // [CLO_H4M_DECL_48] Warped Smile CASE HASH("MP_Heist4_Tee_048_M") CASE HASH("MP_Heist4_Tee_048_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_STILL_SLIPPING_WAVY_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Still Slipping T-Shirt // [CLO_H4M_DECL_47] Smile CASE HASH("MP_Heist4_Tee_047_M") CASE HASH("MP_Heist4_Tee_047_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_STILL_SLIPPING_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_49] Keinemusik White CASE HASH("MP_Heist4_Tee_049_M") CASE HASH("MP_Heist4_Tee_049_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_KEINEMUSIK_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_51] Keinemusik Blue CASE HASH("MP_Heist4_Tee_051_M") CASE HASH("MP_Heist4_Tee_051_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_KEINEMUSIK_BLUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_53] Moodyman CASE HASH("MP_Heist4_Tee_053_M") CASE HASH("MP_Heist4_Tee_053_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_MOODYMAN_ORANGE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_54] Palms Trax CASE HASH("MP_Heist4_Tee_054_M") CASE HASH("MP_Heist4_Tee_054_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_PALMS_TRAX_PURPLE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_55] Still Slipping Blarneys Tee CASE HASH("MP_Heist4_Tee_055_M") CASE HASH("MP_Heist4_Tee_055_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_STILL_SLIPPING_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_57] Still Slipping Friend Tee CASE HASH("MP_Heist4_Tee_057_M") CASE HASH("MP_Heist4_Tee_057_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_STILL_SLIPPING_EVENT_TEE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_59] Moodymann Whatupdoe Tee CASE HASH("MP_Heist4_Tee_059_M") CASE HASH("MP_Heist4_Tee_059_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MOODYMANN_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_61] Moodymann Big D Tee CASE HASH("MP_Heist4_Tee_061_M") CASE HASH("MP_Heist4_Tee_061_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MOODYMANN_EVENT_TEE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_63] Keinemusik Cayo Perico Tee CASE HASH("MP_Heist4_Tee_063_M") CASE HASH("MP_Heist4_Tee_063_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_KEINEMUSIK_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_DECL_65] Palms Trax LS Tee CASE HASH("MP_Heist4_Tee_065_M") CASE HASH("MP_Heist4_Tee_065_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PALMS_TRAX_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // Island Heist SWITCH iNameHash // Tops - Island Heist Event Jacket 1 // [CLO_H4F_U_8_0] Bomber Jacket CASE HASH("DLC_MP_H4_F_JBIB_8_0") CASE HASH("DLC_MP_H4_F_JBIB_9_0") CASE HASH("DLC_MP_H4_M_JBIB_8_0") CASE HASH("DLC_MP_H4_M_JBIB_9_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_JACKET_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Jacket 2 // [CLO_H4F_U_10_0] Bomber Jacket Panther CASE HASH("DLC_MP_H4_F_JBIB_10_0") CASE HASH("DLC_MP_H4_M_JBIB_10_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_JACKET_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Vest 1 // [CLO_H4F_U_5_0] Basketball Top 1 CASE HASH("DLC_MP_H4_F_JBIB_5_0") CASE HASH("DLC_MP_H4_M_JBIB_6_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_VEST_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Vest 2 // [CLO_H4F_U_5_1] Basketball Top 2 CASE HASH("DLC_MP_H4_F_JBIB_5_1") CASE HASH("DLC_MP_H4_M_JBIB_6_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_VEST_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Manor x Princess Robot Bubblegum T-Shirt //[CLO_H4F_U_7_5] T-Shirt 5 CASE HASH("DLC_MP_H4_F_JBIB_7_5") CASE HASH("DLC_MP_H4_M_JBIB_0_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_MANOR_X_PRINCESS_ROBOT_BUBBLEGUM_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Manor Tie-Dye T-Shirt // [CLO_H4F_U_7_4] T-Shirt 4 CASE HASH("DLC_MP_H4_F_JBIB_7_4") CASE HASH("DLC_MP_H4_M_JBIB_0_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_MANOR_TIE_DYE_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Santo Capra Collage Sweatshirt // [CLO_H4F_U_6_4] Sweater 5 CASE HASH("DLC_MP_H4_F_JBIB_6_4") CASE HASH("DLC_MP_H4_M_JBIB_7_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_SANTO_CAPRA_COLLAGE_SWEATSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Rockstar Games Sweatshirt // [CLO_H4F_U_6_4] Sweater 4 CASE HASH("DLC_MP_H4_F_JBIB_6_3") CASE HASH("DLC_MP_H4_M_JBIB_7_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ROCKSTAR_GAMES_SWEATSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Bigness x Jackal Racing Sweatshirt // [CLO_H4F_U_6_4] Sweater 3 CASE HASH("DLC_MP_H4_F_JBIB_6_2") CASE HASH("DLC_MP_H4_M_JBIB_7_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_BIGNESS_X_JACKAL_RACING_SWEATSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Bigness Tie Dye Sweatshirt // [CLO_H4F_U_6_4] Sweater 2 CASE HASH("DLC_MP_H4_F_JBIB_6_1") CASE HASH("DLC_MP_H4_M_JBIB_7_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_BIGNESS_TIE_DYE_SWEATSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Bigness Faces Sweatshirt // [CLO_H4F_U_6_4] Sweater 1 CASE HASH("DLC_MP_H4_F_JBIB_6_0") CASE HASH("DLC_MP_H4_M_JBIB_7_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_BIGNESS_FACES_SWEATSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Pants - Island Heist Event Shorts 1 // [CLO_H4F_L_1_0] Shorts 1 CASE HASH("DLC_MP_H4_F_LEGS_1_0") CASE HASH("DLC_MP_H4_M_LEGS_1_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_ISLAND_HEIST_EVENT_SHORTS_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Pants - Island Heist Event Shorts 2 // [CLO_H4F_L_1_1] Shorts 2 CASE HASH("DLC_MP_H4_F_LEGS_1_1") CASE HASH("DLC_MP_H4_M_LEGS_1_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_ISLAND_HEIST_EVENT_SHORTS_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Pants - Island Heist Event Shorts 3 // [CLO_H4F_L_1_2] Shorts 3 CASE HASH("DLC_MP_H4_F_LEGS_1_2") CASE HASH("DLC_MP_H4_M_LEGS_1_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_ISLAND_HEIST_EVENT_SHORTS_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Pants - Bigness Tie Dye Sweat Pants // [CLO_H4F_L_0_0] Sweatpants CASE HASH("DLC_MP_H4_F_LEGS_0_0") CASE HASH("DLC_MP_H4_M_LEGS_0_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_BIGNESS_TIE_DYE_SWEAT_PANTS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Hats - Island Heist Event Hat 1 // [CLO_H4F_PH_1_0] Cap 1 CASE HASH("DLC_MP_H4_F_PHEAD_1_0") CASE HASH("DLC_MP_H4_M_PHEAD_1_0") CASE HASH("DLC_MP_H4_F_PHEAD_2_0") CASE HASH("DLC_MP_H4_M_PHEAD_2_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Hats - Island Heist Event Hat 2 // [CLO_H4F_PH_1_1] Cap 2 CASE HASH("DLC_MP_H4_F_PHEAD_1_1") CASE HASH("DLC_MP_H4_M_PHEAD_1_1") CASE HASH("DLC_MP_H4_F_PHEAD_2_1") CASE HASH("DLC_MP_H4_M_PHEAD_2_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Hats - Island Heist Event Hat 3 // [CLO_H4F_PH_1_2] Cap 3 CASE HASH("DLC_MP_H4_F_PHEAD_1_2") CASE HASH("DLC_MP_H4_M_PHEAD_1_2") CASE HASH("DLC_MP_H4_F_PHEAD_2_2") CASE HASH("DLC_MP_H4_M_PHEAD_2_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Hats - Island Heist Event Hat 4 // [CLO_H4F_PH_1_3] Cap 4 CASE HASH("DLC_MP_H4_F_PHEAD_1_3") CASE HASH("DLC_MP_H4_M_PHEAD_1_3") CASE HASH("DLC_MP_H4_F_PHEAD_2_3") CASE HASH("DLC_MP_H4_M_PHEAD_2_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Hats - Island Heist Event Hat 5 // [CLO_H4F_PH_1_4] Cap 5 CASE HASH("DLC_MP_H4_F_PHEAD_1_4") CASE HASH("DLC_MP_H4_M_PHEAD_1_4") CASE HASH("DLC_MP_H4_F_PHEAD_2_4") CASE HASH("DLC_MP_H4_M_PHEAD_2_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash // Accessories - Glow Bracelet x12 // [CLO_H4F_PLW_0_0] Glow Bangle 1 (L) // [CLO_H4F_PRW_0_0] Glow Bangle 1 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_0") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_0") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_0") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_1] Glow Bangle 2 (L) // [CLO_H4F_PRW_0_1] Glow Bangle 2 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_1") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_1") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_1") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_2] Glow Bangle 3 (L) // [CLO_H4F_PRW_0_2] Glow Bangle 3 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_2") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_2") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_2") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_3] Glow Bangle 4 (L) // [CLO_H4F_PRW_0_3] Glow Bangle 4 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_3") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_3") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_3") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_4] Glow Bangle 5 (L) // [CLO_H4F_PRW_0_4] Glow Bangle 5 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_4") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_4") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_4") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_5] Glow Bangle 6 (L) // [CLO_H4F_PRW_0_5] Glow Bangle 6 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_5") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_5") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_5") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_6] Glow Bangle 7 (L) // [CLO_H4F_PRW_0_6] Glow Bangle 7 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_6") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_6") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_6") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_7] Glow Bangle 8 (L) // [CLO_H4F_PRW_0_7] Glow Bangle 8 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_7") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_7") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_7") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_8] Glow Bangle 9 (L) // [CLO_H4F_PRW_0_8] Glow Bangle 9 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_8") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_8") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_8") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_0_9] Glow Bangle 10 (L) // [CLO_H4F_PRW_0_9] Glow Bangle 10 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_9") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_9") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_9") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_010] Glow Bangle 11 (L) // [CLO_H4F_PRW_010] Glow Bangle 11 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_10") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_10") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_10") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PLW_011] Glow Bangle 12 (L) // [CLO_H4F_PRW_011] Glow Bangle 12 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_11") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_11") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_11") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Accessories - Glow Sunglasses x12 // [CLO_H4F_PEY_0_0] Glasses 1 CASE HASH("DLC_MP_H4_F_PEYES_0_0") CASE HASH("DLC_MP_H4_M_PEYES_0_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_1] Glasses 2 CASE HASH("DLC_MP_H4_F_PEYES_0_1") CASE HASH("DLC_MP_H4_M_PEYES_0_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_2] Glasses 3 CASE HASH("DLC_MP_H4_F_PEYES_0_2") CASE HASH("DLC_MP_H4_M_PEYES_0_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_3] Glasses 4 CASE HASH("DLC_MP_H4_F_PEYES_0_3") CASE HASH("DLC_MP_H4_M_PEYES_0_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_4] Glasses 5 CASE HASH("DLC_MP_H4_F_PEYES_0_4") CASE HASH("DLC_MP_H4_M_PEYES_0_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_5] Glasses 6 CASE HASH("DLC_MP_H4_F_PEYES_0_5") CASE HASH("DLC_MP_H4_M_PEYES_0_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_6] Glasses 7 CASE HASH("DLC_MP_H4_F_PEYES_0_6") CASE HASH("DLC_MP_H4_M_PEYES_0_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_7] Glasses 8 CASE HASH("DLC_MP_H4_F_PEYES_0_7") CASE HASH("DLC_MP_H4_M_PEYES_0_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_8] Glasses 9 CASE HASH("DLC_MP_H4_F_PEYES_0_8") CASE HASH("DLC_MP_H4_M_PEYES_0_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_0_9] Glasses 10 CASE HASH("DLC_MP_H4_F_PEYES_0_9") CASE HASH("DLC_MP_H4_M_PEYES_0_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_010] Glasses 11 CASE HASH("DLC_MP_H4_F_PEYES_0_10") CASE HASH("DLC_MP_H4_M_PEYES_0_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_PEY_011] Glasses 12 CASE HASH("DLC_MP_H4_F_PEYES_0_11") CASE HASH("DLC_MP_H4_M_PEYES_0_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Accessories - Glow Necklace x16 // [CLO_H4F_T_13_0] Glow Necklace 1 CASE HASH("DLC_MP_H4_F_TEETH_13_0") CASE HASH("DLC_MP_H4_M_TEETH_13_0") CASE HASH("DLC_MP_H4_F_TEETH_14_0") CASE HASH("DLC_MP_H4_M_TEETH_14_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_1] Glow Necklace 2 CASE HASH("DLC_MP_H4_F_TEETH_13_1") CASE HASH("DLC_MP_H4_M_TEETH_13_1") CASE HASH("DLC_MP_H4_F_TEETH_14_1") CASE HASH("DLC_MP_H4_M_TEETH_14_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_2] Glow Necklace 3 CASE HASH("DLC_MP_H4_F_TEETH_13_2") CASE HASH("DLC_MP_H4_M_TEETH_13_2") CASE HASH("DLC_MP_H4_F_TEETH_14_2") CASE HASH("DLC_MP_H4_M_TEETH_14_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_3] Glow Necklace 4 CASE HASH("DLC_MP_H4_F_TEETH_13_3") CASE HASH("DLC_MP_H4_M_TEETH_13_3") CASE HASH("DLC_MP_H4_F_TEETH_14_3") CASE HASH("DLC_MP_H4_M_TEETH_14_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_4] Glow Necklace 5 CASE HASH("DLC_MP_H4_F_TEETH_13_4") CASE HASH("DLC_MP_H4_M_TEETH_13_4") CASE HASH("DLC_MP_H4_F_TEETH_14_4") CASE HASH("DLC_MP_H4_M_TEETH_14_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_5] Glow Necklace 6 CASE HASH("DLC_MP_H4_F_TEETH_13_5") CASE HASH("DLC_MP_H4_M_TEETH_13_5") CASE HASH("DLC_MP_H4_F_TEETH_14_5") CASE HASH("DLC_MP_H4_M_TEETH_14_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_6] Glow Necklace 7 CASE HASH("DLC_MP_H4_F_TEETH_13_6") CASE HASH("DLC_MP_H4_M_TEETH_13_6") CASE HASH("DLC_MP_H4_F_TEETH_14_6") CASE HASH("DLC_MP_H4_M_TEETH_14_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_7] Glow Necklace 8 CASE HASH("DLC_MP_H4_F_TEETH_13_7") CASE HASH("DLC_MP_H4_M_TEETH_13_7") CASE HASH("DLC_MP_H4_F_TEETH_14_7") CASE HASH("DLC_MP_H4_M_TEETH_14_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_8] Glow Necklace 9 CASE HASH("DLC_MP_H4_F_TEETH_13_8") CASE HASH("DLC_MP_H4_M_TEETH_13_8") CASE HASH("DLC_MP_H4_F_TEETH_14_8") CASE HASH("DLC_MP_H4_M_TEETH_14_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_9] Glow Necklace 10 CASE HASH("DLC_MP_H4_F_TEETH_13_9") CASE HASH("DLC_MP_H4_M_TEETH_13_9") CASE HASH("DLC_MP_H4_F_TEETH_14_9") CASE HASH("DLC_MP_H4_M_TEETH_14_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_10] Glow Necklace 11 CASE HASH("DLC_MP_H4_F_TEETH_13_10") CASE HASH("DLC_MP_H4_M_TEETH_13_10") CASE HASH("DLC_MP_H4_F_TEETH_14_10") CASE HASH("DLC_MP_H4_M_TEETH_14_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_11] Glow Necklace 12 CASE HASH("DLC_MP_H4_F_TEETH_13_11") CASE HASH("DLC_MP_H4_M_TEETH_13_11") CASE HASH("DLC_MP_H4_F_TEETH_14_11") CASE HASH("DLC_MP_H4_M_TEETH_14_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_12] Glow Necklace 13 CASE HASH("DLC_MP_H4_F_TEETH_13_12") CASE HASH("DLC_MP_H4_M_TEETH_13_12") CASE HASH("DLC_MP_H4_F_TEETH_14_12") CASE HASH("DLC_MP_H4_M_TEETH_14_12") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_13] Glow Necklace 14 CASE HASH("DLC_MP_H4_F_TEETH_13_13") CASE HASH("DLC_MP_H4_M_TEETH_13_13") CASE HASH("DLC_MP_H4_F_TEETH_14_13") CASE HASH("DLC_MP_H4_M_TEETH_14_13") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_14) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_14] Glow Necklace 15 CASE HASH("DLC_MP_H4_F_TEETH_13_14") CASE HASH("DLC_MP_H4_M_TEETH_13_14") CASE HASH("DLC_MP_H4_F_TEETH_14_14") CASE HASH("DLC_MP_H4_M_TEETH_14_14") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_15) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4F_T_13_15] Glow Necklace 16 CASE HASH("DLC_MP_H4_F_TEETH_13_15") CASE HASH("DLC_MP_H4_M_TEETH_13_15") CASE HASH("DLC_MP_H4_F_TEETH_14_15") CASE HASH("DLC_MP_H4_M_TEETH_14_15") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_16) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 7 // [CLO_H4F_D_0_0] Redwood CASE HASH("DLC_MP_H4_M_DECL_0_0") CASE HASH("DLC_MP_H4_F_DECL_0_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 8 // [CLO_H4F_U_7_1] T-Shirt 1 CASE HASH("DLC_MP_H4_M_JBIB_0_5") CASE HASH("DLC_MP_H4_F_JBIB_7_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 10 // [CLO_H4F_U_7_2] T-Shirt 2 CASE HASH("DLC_MP_H4_M_JBIB_0_6") CASE HASH("DLC_MP_H4_F_JBIB_7_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 11 // [CLO_H4F_U_7_3] T-Shirt 3 CASE HASH("DLC_MP_H4_M_JBIB_0_7") CASE HASH("DLC_MP_H4_F_JBIB_7_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tops - Island Heist Event Tee 12 // [CLO_H4F_U_4_0] Rockstar Baseball Tee CASE HASH("DLC_MP_H4_M_JBIB_5_0") CASE HASH("DLC_MP_H4_F_JBIB_4_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash // [CLO_H4M_PEY_1_0] Midnight Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_0") CASE HASH("DLC_MP_H4_F_PEYES_1_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_1] Sunset Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_1") CASE HASH("DLC_MP_H4_F_PEYES_1_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_2] Black Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_2") CASE HASH("DLC_MP_H4_F_PEYES_1_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_3] Blue Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_3") CASE HASH("DLC_MP_H4_F_PEYES_1_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_4] Gold Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_4") CASE HASH("DLC_MP_H4_F_PEYES_1_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_5] Green Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_5") CASE HASH("DLC_MP_H4_F_PEYES_1_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_6] Orange Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_6") CASE HASH("DLC_MP_H4_F_PEYES_1_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_7] Red Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_7") CASE HASH("DLC_MP_H4_F_PEYES_1_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_8] Pink Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_8") CASE HASH("DLC_MP_H4_F_PEYES_1_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_1_9] Yellow Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_9") CASE HASH("DLC_MP_H4_F_PEYES_1_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_110] Lemon Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_10") CASE HASH("DLC_MP_H4_F_PEYES_1_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_111] Gold Rimmed Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_11") CASE HASH("DLC_MP_H4_F_PEYES_1_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_0] White Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_0") CASE HASH("DLC_MP_H4_F_PEYES_2_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_1] Pink Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_1") CASE HASH("DLC_MP_H4_F_PEYES_2_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_2] Yellow Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_2") CASE HASH("DLC_MP_H4_F_PEYES_2_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_3] Red Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_3") CASE HASH("DLC_MP_H4_F_PEYES_2_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_4] White Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_4") CASE HASH("DLC_MP_H4_F_PEYES_2_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_5] Black Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_5") CASE HASH("DLC_MP_H4_F_PEYES_2_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_6] Pink Tinted Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_6") CASE HASH("DLC_MP_H4_F_PEYES_2_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_7] Blue Tinted Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_7") CASE HASH("DLC_MP_H4_F_PEYES_2_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_8] Green Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_8") CASE HASH("DLC_MP_H4_F_PEYES_2_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_2_9] Blue Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_9") CASE HASH("DLC_MP_H4_F_PEYES_2_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_210] Orange Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_10") CASE HASH("DLC_MP_H4_F_PEYES_2_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_211] Green Tinted Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_11") CASE HASH("DLC_MP_H4_F_PEYES_2_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_0] Brown Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_0") CASE HASH("DLC_MP_H4_F_PEYES_3_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_1] Yellow Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_1") CASE HASH("DLC_MP_H4_F_PEYES_3_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_2] Black Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_2") CASE HASH("DLC_MP_H4_F_PEYES_3_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_3] Tortoiseshell Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_3") CASE HASH("DLC_MP_H4_F_PEYES_3_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_4] Green Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_4") CASE HASH("DLC_MP_H4_F_PEYES_3_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_5] Red Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_5") CASE HASH("DLC_MP_H4_F_PEYES_3_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_6] Pink Tinted Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_6") CASE HASH("DLC_MP_H4_F_PEYES_3_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_7] Blue Tinted Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_7") CASE HASH("DLC_MP_H4_F_PEYES_3_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_8] White Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_8") CASE HASH("DLC_MP_H4_F_PEYES_3_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_3_9] Pink Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_9") CASE HASH("DLC_MP_H4_F_PEYES_3_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_310] All White Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_10") CASE HASH("DLC_MP_H4_F_PEYES_3_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_PEY_311] Mono Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_11") CASE HASH("DLC_MP_H4_F_PEYES_3_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash // [CLO_H4M_B_4_0] Green Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_0") CASE HASH("DLC_MP_H4_F_BERD_4_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_0) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_1] Navy Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_1") CASE HASH("DLC_MP_H4_F_BERD_4_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_2] Cherry Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_2") CASE HASH("DLC_MP_H4_F_BERD_4_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_3] Orange Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_3") CASE HASH("DLC_MP_H4_F_BERD_4_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_4] Purple Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_4") CASE HASH("DLC_MP_H4_F_BERD_4_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_5] Dark Blue Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_5") CASE HASH("DLC_MP_H4_F_BERD_4_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_6] Lavender Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_6") CASE HASH("DLC_MP_H4_F_BERD_4_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_7] Yellow Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_7") CASE HASH("DLC_MP_H4_F_BERD_4_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_8] Pink Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_8") CASE HASH("DLC_MP_H4_F_BERD_4_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_9] Neon Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_9") CASE HASH("DLC_MP_H4_F_BERD_4_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_10] Vibrant Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_10") CASE HASH("DLC_MP_H4_F_BERD_4_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_10) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_11] Pink Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_11") CASE HASH("DLC_MP_H4_F_BERD_4_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_11) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_12] Blue Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_12") CASE HASH("DLC_MP_H4_F_BERD_4_12") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_12) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_13] Neon Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_13") CASE HASH("DLC_MP_H4_F_BERD_4_13") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_14] Vibrant Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_14") CASE HASH("DLC_MP_H4_F_BERD_4_14") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_14) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_15] Pink Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_15") CASE HASH("DLC_MP_H4_F_BERD_4_15") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_15) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_16] Orange Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_16") CASE HASH("DLC_MP_H4_F_BERD_4_16") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_16) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_17] Dark X-Ray Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_17") CASE HASH("DLC_MP_H4_F_BERD_4_17") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_17) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_18] Bright X-Ray Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_18") CASE HASH("DLC_MP_H4_F_BERD_4_18") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_18) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_H4M_B_4_19] Purple X-Ray Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_19") CASE HASH("DLC_MP_H4_F_BERD_4_19") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_19) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iNameHash // Smuggler outfits CASE HASH("DLC_MP_H4_M_OUTFIT_SM_M1") CASE HASH("DLC_MP_H4_M_OUTFIT_SM_M2") CASE HASH("DLC_MP_H4_M_OUTFIT_SM_M3") CASE HASH("DLC_MP_H4_M_OUTFIT_SM_M4") CASE HASH("DLC_MP_H4_F_OUTFIT_SM_F1") CASE HASH("DLC_MP_H4_F_OUTFIT_SM_F2") CASE HASH("DLC_MP_H4_F_OUTFIT_SM_F3") CASE HASH("DLC_MP_H4_F_OUTFIT_SM_F4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_FINALE_SMUGGLER_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Summer 2020 SWITCH iNameHash #IF FEATURE_COPS_N_CROOKS // NOOSE CASE HASH("DLC_MP_SUM_M_OUTFIT_0") CASE HASH("DLC_MP_HEIST_M_BERD_17_0") CASE HASH("DLC_MP_LTS_M_UPPR_0_0") CASE HASH("DLC_MP_H3_M_LEGS_1_0") CASE HASH("DLC_MP_PILOT_M_FEET_0_0") CASE HASH("DLC_MP_H3_M_DECL_6_1") CASE HASH("DLC_MP_H3_M_JBIB_6_0") CASE HASH("DLC_MP_H3_M_PHEAD_4_0") CASE HASH("DLC_MP_SUM_F_OUTFIT_0") CASE HASH("DLC_MP_HEIST_F_BERD_17_0") CASE HASH("DLC_MP_LTS_F_UPPR_0_0") CASE HASH("DLC_MP_H3_F_LEGS_1_0") CASE HASH("DLC_MP_PILOT_F_FEET_0_0") CASE HASH("DLC_MP_H3_F_DECL_6_1") CASE HASH("DLC_MP_H3_F_JBIB_6_0") CASE HASH("DLC_MP_H3_F_PHEAD_4_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_NOOSE_AWARD_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCnCRewardItems #ENDIF RETURN TRUE ENDIF BREAK #ENDIF // ALIEN CASE HASH("DLC_MP_SUM_M_OUTFIT_1") CASE HASH("DLC_MP_SUM_F_OUTFIT_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_ALIEN_AWARD_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // CAPTAIN CASE HASH("DLC_MP_SUM_M_OUTFIT_2") CASE HASH("DLC_MP_SUM_M_PHEAD_0_0") CASE HASH("DLC_MP_SUM_F_OUTFIT_2") CASE HASH("DLC_MP_SUM_F_PHEAD_0_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YACHT_AWARD_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUM_B_3_4] Green Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_4") CASE HASH("DLC_MP_SUM_F_BERD_3_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_GREEN_DOT_HACKER_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUM_B_3_5] Orange Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_5") CASE HASH("DLC_MP_SUM_F_BERD_3_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_ORANGE_DOT_HACKER_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUM_B_3_6] Blue Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_6") CASE HASH("DLC_MP_SUM_F_BERD_3_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_BLUE_DOT_HACKER_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUM_B_3_7] Pink Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_7") CASE HASH("DLC_MP_SUM_F_BERD_3_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_PINK_DOT_HACKER_MASK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // Lemon Sports Track Pants CASE HASH("DLC_MP_SUM_M_LEGS_1_25") CASE HASH("DLC_MP_SUM_F_LEGS_2_25") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LEMON_SPORTS_TRACK_PANTS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // Lemon Sports Track Top CASE HASH("DLC_MP_SUM_M_JBIB_0_25") CASE HASH("DLC_MP_SUM_F_JBIB_0_25") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LEMON_SPORTS_TRACK_TOP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpSum_overlays") SWITCH iPreset // [CLO_SUF_DECL_0] BCTR Aged Tee CASE HASH("mpSum_Tee_000_M") CASE HASH("mpSum_Tee_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_BCTR_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_1] BCTR Tee CASE HASH("mpSum_Tee_001_M") CASE HASH("mpSum_Tee_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_BCTR_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_2] Cultstoppers Aged Tee CASE HASH("mpSum_Tee_002_M") CASE HASH("mpSum_Tee_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_CULTSTOPPERS_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_3] Cultstoppers Tee CASE HASH("mpSum_Tee_003_M") CASE HASH("mpSum_Tee_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_CULTSTOPPERS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_4] Daily Globe Aged Tee CASE HASH("mpSum_Tee_004_M") CASE HASH("mpSum_Tee_004_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_DAILY_GLOBE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_5] Daily Globe Tee CASE HASH("mpSum_Tee_005_M") CASE HASH("mpSum_Tee_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_DAILY_GLOBE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_6] Eyefind Aged Tee CASE HASH("mpSum_Tee_006_M") CASE HASH("mpSum_Tee_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_EYEFIND_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_7] Eyefind Tee CASE HASH("mpSum_Tee_007_M") CASE HASH("mpSum_Tee_007_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_EYEFIND_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_8] Facade Aged Tee CASE HASH("mpSum_Tee_008_M") CASE HASH("mpSum_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FACADE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_9] Facade Tee CASE HASH("mpSum_Tee_009_M") CASE HASH("mpSum_Tee_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FACADE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_10] Fruit Aged Tee CASE HASH("mpSum_Tee_010_M") CASE HASH("mpSum_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FRUIT_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_11] Fruit Tee CASE HASH("mpSum_Tee_011_M") CASE HASH("mpSum_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FRUIT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_12] LSHH Aged Tee CASE HASH("mpSum_Tee_012_M") CASE HASH("mpSum_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LSHH_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_13] LSHH Tee CASE HASH("mpSum_Tee_013_M") CASE HASH("mpSum_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LSHH_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_14] MyRoom Aged Tee CASE HASH("mpSum_Tee_014_M") CASE HASH("mpSum_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_MYROOM_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_15] MyRoom Tee CASE HASH("mpSum_Tee_015_M") CASE HASH("mpSum_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_MYROOM_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_16] Rebel Aged Tee CASE HASH("mpSum_Tee_016_M") CASE HASH("mpSum_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_REBEL_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_17] Rebel Tee CASE HASH("mpSum_Tee_017_M") CASE HASH("mpSum_Tee_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_REBEL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_18] Six Figure Aged Tee CASE HASH("mpSum_Tee_018_M") CASE HASH("mpSum_Tee_018_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_SIX_FIGURE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_19] Six Figure Tee CASE HASH("mpSum_Tee_019_M") CASE HASH("mpSum_Tee_019_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_SIX_FIGURE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_20] Trash Or Treasure Aged Tee CASE HASH("mpSum_Tee_020_M") CASE HASH("mpSum_Tee_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TRASH_OR_TREASURE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_21] Trash Or Treasure Tee CASE HASH("mpSum_Tee_021_M") CASE HASH("mpSum_Tee_021_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TRASH_OR_TREASURE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_22] Tw@ Logo Aged Tee CASE HASH("mpSum_Tee_022_M") CASE HASH("mpSum_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TWT_LOGO_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_23] Tw@ Logo Tee CASE HASH("mpSum_Tee_023_M") CASE HASH("mpSum_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TWT_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_24] Vapers Den Aged Tee CASE HASH("mpSum_Tee_024_M") CASE HASH("mpSum_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_VAPERS_DEN_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_25] Vapers Den Tee CASE HASH("mpSum_Tee_025_M") CASE HASH("mpSum_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_VAPERS_DEN_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_26] WingIt Aged Tee CASE HASH("mpSum_Tee_026_M") CASE HASH("mpSum_Tee_026_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_WINGIT_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_27] WingIt Tee CASE HASH("mpSum_Tee_027_M") CASE HASH("mpSum_Tee_027_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_WINGIT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_28] ZiT Aged Tee CASE HASH("mpSum_Tee_028_M") CASE HASH("mpSum_Tee_028_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_ZIT_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // [CLO_SUF_DECL_29] ZiT Tee CASE HASH("mpSum_Tee_029_M") CASE HASH("mpSum_Tee_029_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_ZIT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* AXE OF FURY */ /************************/ SWITCH iNameHash // AXE MASTER CASE HASH("DLC_MP_SUM_F_JBIB_22_0") CASE HASH("DLC_MP_SUM_M_JBIB_13_8") IF (GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_ELEVEN_ELEVEN_TSHIRT) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_CRANK_IT_TO_ELEVEN_TSHIRT)) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // CRANK IT TO 11 CASE HASH("DLC_MP_SUM_F_JBIB_22_2") CASE HASH("DLC_MP_SUM_M_JBIB_13_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_CRANK_IT_TO_ELEVEN_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /************************/ /* QUB3D */ /************************/ SWITCH iNameHash // QUBITS CASE HASH("DLC_MP_SUM_F_JBIB_22_1") CASE HASH("DLC_MP_SUM_M_JBIB_13_9") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUIBITS) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_QUBITS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH /************************/ /* AXE OF FURY */ /************************/ SWITCH iCollection CASE HASH("mpSum_overlays") SWITCH iPreset // ELEVEN ELEVEN CASE HASH("mpSum_Tee_030_M") CASE HASH("mpSum_Tee_030_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_ELEVEN_ELEVEN_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* QUB3D */ /************************/ SWITCH iCollection CASE HASH("mpSum_overlays") SWITCH iPreset // KING OF QUB3D CASE HASH("mpSum_Tee_031_M") CASE HASH("mpSum_Tee_031_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KINGOFQUB3D) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_KING_OF_QUB3D) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // QUBISM CASE HASH("mpSum_Tee_032_M") CASE HASH("mpSum_Tee_032_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUBISM) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_QUBISM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // GOD OF QUB3D CASE HASH("mpSum_Tee_033_M") CASE HASH("mpSum_Tee_033_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_GODOFQUB3D) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_GOD_OF_QUB3D) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK // QUB3D CASE HASH("mpSum_Tee_034_M") CASE HASH("mpSum_Tee_034_F") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KINGOFQUB3D) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUBISM) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_GODOFQUB3D) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUIBITS)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_QUB3D) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // Casino heist rewards IF GIVE_DLC_CLOTHING_ITEM_FOR_FREE_CASINO_HEIST(iNameHash, iCollection, iPreset) RETURN TRUE ENDIF // Casino rewards IF IS_CLOTHES_ITEM_CASINO_REWARD_ITEM(iNameHash) IF GET_PACKED_STAT_BOOL(GET_CASINO_REWARD_CLOTHING_STAT_FROM_ITEM_HASH(iNameHash)) RETURN TRUE ENDIF ENDIF SWITCH iCollection CASE HASH("mpLuxe_overlays") SWITCH iPreset CASE HASH("MP_FAKE_SC_000_F") CASE HASH("MP_FAKE_SC_000_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_112) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpVinewood_overlays") SWITCH iPreset // Logging on gifts CASE HASH("CasinoTop_M_21") CASE HASH("CasinoTop_F_21") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_CLASSIC_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_23") CASE HASH("CasinoTop_F_23") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_VINTAGE_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_2") CASE HASH("CasinoTop_F_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_LS_RED_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_4") CASE HASH("CasinoTop_F_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_RESORT_LS_BLUE_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_6") CASE HASH("CasinoTop_F_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_RESORT_RED_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_10") CASE HASH("CasinoTop_F_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_D_CASINO_BLUE_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_22") CASE HASH("CasinoTop_F_22") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_CLASSIC_RED_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Reward Items CASE HASH("CasinoTop_M_1") CASE HASH("CasinoTop_F_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_140) RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_3") CASE HASH("CasinoTop_F_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_141) RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_5") CASE HASH("CasinoTop_F_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_142) RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_7") CASE HASH("CasinoTop_F_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_143) RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_8") CASE HASH("CasinoTop_F_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_144) RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_9") CASE HASH("CasinoTop_F_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_145) RETURN TRUE ENDIF BREAK // Fame or Shame Slots Prizes CASE HASH("CasinoTop_M_27") CASE HASH("CasinoTop_F_27") IF GET_PACKED_STAT_BOOL(PACKED_MP_IVE_BEEN_SHAMED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_28") CASE HASH("CasinoTop_F_28") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_IVE_BEEN_SHAMED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_33") CASE HASH("CasinoTop_F_33") IF GET_PACKED_STAT_BOOL(PACKED_MP_FAME_OR_SHAME_STARS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_34") CASE HASH("CasinoTop_F_34") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_FAME_OR_SHAME_STARS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_35") CASE HASH("CasinoTop_F_35") IF GET_PACKED_STAT_BOOL(PACKED_MP_NO_TALENT_REQUIRED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_36") CASE HASH("CasinoTop_F_36") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_NO_TALENT_REQUIRED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_37") CASE HASH("CasinoTop_F_37") IF GET_PACKED_STAT_BOOL(PACKED_MP_TEAM_TRACEY_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_38") CASE HASH("CasinoTop_F_38") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_TEAM_TRACEY_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_39") CASE HASH("CasinoTop_F_39") IF GET_PACKED_STAT_BOOL(PACKED_MP_MONKEY_BUSINESS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_40") CASE HASH("CasinoTop_F_40") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_MONKEY_BUSINESS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_41") CASE HASH("CasinoTop_F_41") IF GET_PACKED_STAT_BOOL(PACKED_MP_FAME_OR_SHAME_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_42") CASE HASH("CasinoTop_F_42") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_FAME_OR_SHAME_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_24") CASE HASH("CasinoTop_F_24") IF GET_PACKED_STAT_BOOL(PACKED_MP_AMERICA_LOVES_YOU_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_25") CASE HASH("CasinoTop_F_25") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_AMERICA_LOVES_YOU_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_26") CASE HASH("CasinoTop_F_26") IF GET_PACKED_STAT_BOOL(PACKED_MP_FAME_OR_SHAME_NO_EVIL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_29") CASE HASH("CasinoTop_F_29") IF GET_PACKED_STAT_BOOL(PACKED_MP_YOURE_SO_ORIGINAL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_30") CASE HASH("CasinoTop_F_30") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_YOURE_SO_ORIGINAL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_31") CASE HASH("CasinoTop_F_31") IF GET_PACKED_STAT_BOOL(PACKED_MP_OH_NO_HE_DIDNT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_32") CASE HASH("CasinoTop_F_32") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_OH_NO_HE_DIDNT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_43") CASE HASH("CasinoTop_F_43") IF GET_PACKED_STAT_BOOL(PACKED_MP_YOURE_AWFUL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("CasinoTop_M_44") CASE HASH("CasinoTop_F_44") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_YOURE_AWFUL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpExecutive_overlays") SWITCH iPreset CASE HASH("MP_exec_prizes_001_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_114) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH SWITCH iNameHash // Impotent Rage CASE HASH("DLC_MP_VWD_M_OUTFIT_IMPRAGE_0") CASE HASH("DLC_MP_VWD_M_HAIR_0_0") CASE HASH("DLC_MP_VWD_M_BERD_0_0") CASE HASH("DLC_MP_VWD_F_OUTFIT_IMPRAGE_0") CASE HASH("DLC_MP_VWD_F_HAIR_0_0") CASE HASH("DLC_MP_VWD_F_BERD_0_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_IMPOTANT_RAGE_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // High Roller CASE HASH("DLC_MP_VWD_M_OUTFIT_HIGHROLL_0") CASE HASH("DLC_MP_VWD_M_JBIB_2_2") CASE HASH("DLC_MP_VWD_M_JBIB_3_2") CASE HASH("DLC_MP_VWD_M_LEGS_1_1") CASE HASH("DLC_MP_VWD_M_SPECIAL_2_2") CASE HASH("DLC_MP_VWD_M_SPECIAL_3_2") CASE HASH("DLC_MP_VWD_M_SPECIAL_4_2") CASE HASH("DLC_MP_VWD_M_SPECIAL_5_2") CASE HASH("DLC_MP_VWD_F_OUTFIT_HIGHROLL_0") CASE HASH("DLC_MP_VWD_F_JBIB_19_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_HIGHROLLER_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Highland High Roller Shirt CASE HASH("DLC_MP_VWD_M_SPECIAL_6_2") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_0"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_2"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_4"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_11"), PED_COMPONENT_ACQUIRED_SLOT) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_HIGHROLLER_OUTFIT) // Shirt comes with outfit. RETURN TRUE ENDIF BREAK // Crisp High Roller Shirt CASE HASH("DLC_MP_VWD_M_SPECIAL_6_5") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_5"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_6"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_7"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_8"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_9"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_VWD_M_SPECIAL_2_12"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE ENDIF BREAK // Fame or Shame gifts CASE HASH("DLC_MP_VWD_M_JBIB_20_6") CASE HASH("DLC_MP_VWD_F_JBIB_18_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_STARS_FAME_OR_SHAME_SILK_ROBE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_JBIB_20_7") CASE HASH("DLC_MP_VWD_F_JBIB_18_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLACK_FAME_OR_SHAME_SILK_ROBE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_JBIB_20_8") CASE HASH("DLC_MP_VWD_F_JBIB_18_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_STARS_FAME_OR_SHAME_SILK_ROBE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_JBIB_20_9") CASE HASH("DLC_MP_VWD_F_JBIB_18_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_FAME_OR_SHAME_SILK_ROBE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_JBIB_20_10") CASE HASH("DLC_MP_VWD_F_JBIB_18_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_WHITE_FAME_OR_SHAME_SILK_ROBE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PEYES_1_16") CASE HASH("DLC_MP_VWD_F_PEYES_1_16") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLACK_FAME_OR_SHAME_DEEP_SHADES) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PEYES_1_17") CASE HASH("DLC_MP_VWD_F_PEYES_1_17") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_FAME_OR_SHAME_DEEP_SHADES) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PEYES_1_18") CASE HASH("DLC_MP_VWD_F_PEYES_1_18") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_FAME_OR_SHAME_DEEP_SHADES) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PEYES_1_19") CASE HASH("DLC_MP_VWD_F_PEYES_1_19") IF GET_PACKED_STAT_BOOL(PACKED_MP_WHITE_FAME_OR_SHAME_DEEP_SHADES) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PEARS_0_0") CASE HASH("DLC_MP_VWD_F_PEARS_0_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_GOLD_FAME_OR_SHAME_MICS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PEARS_0_1") CASE HASH("DLC_MP_VWD_F_PEARS_0_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_SILVER_FAME_OR_SHAME_MICS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PLEFT_WRIST_2_6") CASE HASH("DLC_MP_VWD_F_PLEFT_WRIST_2_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_RED_FAME_OR_SHAME_KRONOS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PLEFT_WRIST_2_7") CASE HASH("DLC_MP_VWD_F_PLEFT_WRIST_2_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_GREEN_FAME_OR_SHAME_KRONOS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PLEFT_WRIST_2_8") CASE HASH("DLC_MP_VWD_F_PLEFT_WRIST_2_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLUE_FAME_OR_SHAME_KRONOS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_VWD_M_PLEFT_WRIST_2_9") CASE HASH("DLC_MP_VWD_F_PLEFT_WRIST_2_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLACK_FAME_OR_SHAME_KRONOS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Casino Purchase - Silk Robes CASE HASH("DLC_MP_VWD_M_JBIB_20_4") CASE HASH("DLC_MP_VWD_F_JBIB_18_4") IF DOES_PLAYER_OWN_A_CASINO_APARTMENT(PLAYER_ID()) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK //Street Crimes Boxart Tee CASE HASH("DLC_MP_VWD_M_DECL_1_0") CASE HASH("DLC_MP_VWD_F_DECL_1_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_BOXART_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Action Tee CASE HASH("DLC_MP_VWD_M_DECL_1_1") CASE HASH("DLC_MP_VWD_F_DECL_1_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_UNTOUCHABLE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Bikers Tee CASE HASH("DLC_MP_VWD_M_DECL_1_2") CASE HASH("DLC_MP_VWD_F_DECL_1_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_THE_BIKERS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Hoods Tee CASE HASH("DLC_MP_VWD_M_DECL_1_3") CASE HASH("DLC_MP_VWD_F_DECL_1_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_THE_HOODS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Punks Tee CASE HASH("DLC_MP_VWD_M_DECL_1_4") CASE HASH("DLC_MP_VWD_F_DECL_1_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_THE_PUNKS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Yokels Tee CASE HASH("DLC_MP_VWD_M_DECL_1_5") CASE HASH("DLC_MP_VWD_F_DECL_1_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_THE_YOKELS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Logo Tee CASE HASH("DLC_MP_VWD_M_DECL_1_6") CASE HASH("DLC_MP_VWD_F_DECL_1_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Claim What's Yours Tee CASE HASH("DLC_MP_VWD_M_DECL_1_7") CASE HASH("DLC_MP_VWD_F_DECL_1_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_CLAIM_WHATS_YOURS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Choose Your Side Tee CASE HASH("DLC_MP_VWD_M_DECL_1_8") CASE HASH("DLC_MP_VWD_F_DECL_1_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_CHOOSE_YOUR_SIDE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade RON Tee CASE HASH("DLC_MP_VWD_M_DECL_1_9") CASE HASH("DLC_MP_VWD_F_DECL_1_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_HE_WHO_CONTROLS_THE_OIL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Tour Tee CASE HASH("DLC_MP_VWD_M_DECL_1_10") CASE HASH("DLC_MP_VWD_F_DECL_1_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_FULL_MOON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Logo Tee CASE HASH("DLC_MP_VWD_M_DECL_1_11") CASE HASH("DLC_MP_VWD_F_DECL_1_11") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Mission I Tee CASE HASH("DLC_MP_VWD_M_DECL_1_12") CASE HASH("DLC_MP_VWD_F_DECL_1_12") IF GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_I_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Mission II Tee CASE HASH("DLC_MP_VWD_M_DECL_1_13") CASE HASH("DLC_MP_VWD_F_DECL_1_13") IF GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_II_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Mission IV Tee CASE HASH("DLC_MP_VWD_M_DECL_1_14") CASE HASH("DLC_MP_VWD_F_DECL_1_14") IF GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_IV_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Mission III Tee CASE HASH("DLC_MP_VWD_M_DECL_1_15") CASE HASH("DLC_MP_VWD_F_DECL_1_15") IF GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_III_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Boxart Tee CASE HASH("DLC_MP_VWD_M_DECL_1_16") CASE HASH("DLC_MP_VWD_F_DECL_1_16") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_BOXART_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Invader Tee CASE HASH("DLC_MP_VWD_M_DECL_1_17") CASE HASH("DLC_MP_VWD_F_DECL_1_17") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_INVADER_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Suck Tee CASE HASH("DLC_MP_VWD_M_DECL_1_18") CASE HASH("DLC_MP_VWD_F_DECL_1_18") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_SUCK_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Jets Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_0") CASE HASH("DLC_MP_VWD_F_JBIB_21_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_JETS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Enemies Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_1") CASE HASH("DLC_MP_VWD_F_JBIB_21_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_UNNATURAL_SELECTION) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Gold Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_2") CASE HASH("DLC_MP_VWD_F_JBIB_21_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_GOLD_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Oil Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_3") CASE HASH("DLC_MP_VWD_F_JBIB_21_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_ENDLESS_OIL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Hero Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_4") CASE HASH("DLC_MP_VWD_F_JBIB_21_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_HERO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Color Gangs Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_5") CASE HASH("DLC_MP_VWD_F_JBIB_21_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_COLOR_GANGS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Green Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_6") CASE HASH("DLC_MP_VWD_F_JBIB_21_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_LIFE_SAVER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Invade and Persuade Barrels Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_7") CASE HASH("DLC_MP_VWD_F_JBIB_21_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_BARRELS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Street Crimes Red Gangs Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_8") CASE HASH("DLC_MP_VWD_F_JBIB_21_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_RED_GANGS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Street Crimes Icons Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_9") CASE HASH("DLC_MP_VWD_F_JBIB_21_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_WHITE_STREET_CRIMES_ICONS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Street Crimes Icons Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_10") CASE HASH("DLC_MP_VWD_F_JBIB_21_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_BLACK_STREET_CRIMES_ICONS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Peter race suit SWITCH iNameHash CASE HASH("DLC_MP_ARENA_M_OUTFIT_CHARACTERS_A_0") CASE HASH("DLC_MP_ARENA_F_OUTFIT_CHARACTERS_A_0") IF HAS_LOCAL_PLAYER_VIEWED_ARENA_MOCAP_SCENE_2() #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Gifted Xmas sweaters SWITCH iNameHash CASE HASH("DLC_MP_ARENA_F_JBIB_16_0") CASE HASH("DLC_MP_ARENA_M_JBIB_16_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_AIMING_RETICULE_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_1") CASE HASH("DLC_MP_ARENA_M_JBIB_16_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_BLEEDER_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_2") CASE HASH("DLC_MP_ARENA_M_JBIB_16_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_BLEEDER_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_3") CASE HASH("DLC_MP_ARENA_M_JBIB_16_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_CLUCKING_BELL_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_4") CASE HASH("DLC_MP_ARENA_M_JBIB_16_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_CLUCKING_BELL_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_5") CASE HASH("DLC_MP_ARENA_M_JBIB_16_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_SLAYING_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_6") CASE HASH("DLC_MP_ARENA_M_JBIB_16_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_SLAYING_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_7") CASE HASH("DLC_MP_ARENA_M_JBIB_16_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_CHRISTMAS_DAY_GIFT_AWARDED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_8") CASE HASH("DLC_MP_ARENA_M_JBIB_16_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAIL_SANTA_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_9") CASE HASH("DLC_MP_ARENA_M_JBIB_16_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_NEW_YEARS_DAY_GIFT_AWARDED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_10") CASE HASH("DLC_MP_ARENA_M_JBIB_16_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_CHRISTMAS_EVE_GIFT_AWARDED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_11") CASE HASH("DLC_MP_ARENA_M_JBIB_16_11") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_NEW_YEARS_EVE_GIFT_AWARDED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_12") CASE HASH("DLC_MP_ARENA_M_JBIB_16_12") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_MERRY_SPUNKMAS_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_13") CASE HASH("DLC_MP_ARENA_M_JBIB_16_13") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_ICE_COLD_JUMPER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Epsilon rewards SWITCH iNameHash CASE HASH("DLC_MP_ARENA_M_OUTFIT_EPSILON_0") CASE HASH("DLC_MP_ARENA_F_OUTFIT_EPSILON_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BEARING_TRUTH_TOILET_TIP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_ARENA_M_TEETH_0_0") CASE HASH("DLC_MP_ARENA_F_TEETH_0_0") CASE HASH("DLC_MP_ARENA_M_TEETH_1_0") CASE HASH("DLC_MP_ARENA_F_TEETH_1_0") CASE HASH("DLC_MP_ARENA_M_TEETH_2_0") CASE HASH("DLC_MP_ARENA_F_TEETH_2_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHASING_TRUTH_TOILET_TIP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH //Casino items SWITCH iPreset CASE HASH("Blank_Hoody_F_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_91) RETURN TRUE ENDIF BREAK CASE HASH("F_TankTop_Smug_5_4_a") CASE HASH("M_TankTop_Smug_5_4_a") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_98) RETURN TRUE ENDIF BREAK CASE HASH("F_TankTop_Smug_5_7_a") CASE HASH("M_TankTop_Smug_5_7_a") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_100) RETURN TRUE ENDIF BREAK CASE HASH("MP_Biker_Tee_002_F") CASE HASH("MP_Biker_Tee_002_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_101) RETURN TRUE ENDIF BREAK CASE HASH("F_TankTop_Smug_5_21_a") CASE HASH("M_TankTop_Smug_5_21_a") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_102) RETURN TRUE ENDIF BREAK CASE HASH("F_TankTop_Smug_5_13_a") CASE HASH("M_TankTop_Smug_5_13_a") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_106) RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_023_F") CASE HASH("MP_Christmas2018_Tee_023_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_108) RETURN TRUE ENDIF BREAK CASE HASH("MP_Biker_Tee_049_F") CASE HASH("MP_Biker_Tee_049_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_109) RETURN TRUE ENDIF BREAK CASE HASH("MP_Battle_Clothing_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_115) RETURN TRUE ENDIF BREAK CASE HASH("MP_exec_prizes_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_117) RETURN TRUE ENDIF BREAK CASE HASH("Blank_Hoody_M_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_92) RETURN TRUE ENDIF BREAK CASE HASH("MP_Battle_Clothing_020_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_116) RETURN TRUE ENDIF BREAK ENDSWITCH // Vehicle event tees SWITCH iPreset CASE HASH("MP_Christmas2018_Tee_000_M") CASE HASH("MP_Christmas2018_Tee_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_001_M") CASE HASH("MP_Christmas2018_Tee_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_VINTAGE_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_002_M") CASE HASH("MP_Christmas2018_Tee_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ANNIS_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_003_M") CASE HASH("MP_Christmas2018_Tee_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BENEFACTOR_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_004_M") CASE HASH("MP_Christmas2018_Tee_004_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BF_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_005_M") CASE HASH("MP_Christmas2018_Tee_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BOLLOKAN_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_006_M") CASE HASH("MP_Christmas2018_Tee_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRAVADO_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_007_M") CASE HASH("MP_Christmas2018_Tee_007_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRUTE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_008_M") CASE HASH("MP_Christmas2018_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BUCKINGHAM_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_009_M") CASE HASH("MP_Christmas2018_Tee_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_010_M") CASE HASH("MP_Christmas2018_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHARIOT_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_011_M") CASE HASH("MP_Christmas2018_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHEVAL_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_012_M") CASE HASH("MP_Christmas2018_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASSIQUE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_013_M") CASE HASH("MP_Christmas2018_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COIL_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_014_M") CASE HASH("MP_Christmas2018_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DECLASSE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_015_M") CASE HASH("MP_Christmas2018_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DEWBAUCHEE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_016_M") CASE HASH("MP_Christmas2018_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DILETTANTE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_017_M") CASE HASH("MP_Christmas2018_Tee_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DINKA_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_018_M") CASE HASH("MP_Christmas2018_Tee_018_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DUNDREARY_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_019_M") CASE HASH("MP_Christmas2018_Tee_019_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EMPEROR_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_020_M") CASE HASH("MP_Christmas2018_Tee_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ENUS_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_021_M") CASE HASH("MP_Christmas2018_Tee_021_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FATHOM_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_022_M") CASE HASH("MP_Christmas2018_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GALLIVANTER_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_023_M") CASE HASH("MP_Christmas2018_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GROTTI_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_108) RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_024_M") CASE HASH("MP_Christmas2018_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HIJAK_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_025_M") CASE HASH("MP_Christmas2018_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HVY_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_026_M") CASE HASH("MP_Christmas2018_Tee_026_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_IMPONTE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_027_M") CASE HASH("MP_Christmas2018_Tee_027_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_INVETERO_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_028_M") CASE HASH("MP_Christmas2018_Tee_028_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_JOBUILT_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_029_M") CASE HASH("MP_Christmas2018_Tee_029_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KARIN_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_030_M") CASE HASH("MP_Christmas2018_Tee_030_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_LAMPADATI_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_031_M") CASE HASH("MP_Christmas2018_Tee_031_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MAIBATSU_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_032_M") CASE HASH("MP_Christmas2018_Tee_032_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MAMBA_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_033_M") CASE HASH("MP_Christmas2018_Tee_033_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MAMMOTH_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_034_M") CASE HASH("MP_Christmas2018_Tee_034_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MTL_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_035_M") CASE HASH("MP_Christmas2018_Tee_035_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_OBEY_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_036_M") CASE HASH("MP_Christmas2018_Tee_036_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_OCELOT_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_037_M") CASE HASH("MP_Christmas2018_Tee_037_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_OVERFLOD_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_038_M") CASE HASH("MP_Christmas2018_Tee_038_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_PEGASSI_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_039_M") CASE HASH("MP_Christmas2018_Tee_039_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_PFISTER_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_040_M") CASE HASH("MP_Christmas2018_Tee_040_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_PROGEN_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_041_M") CASE HASH("MP_Christmas2018_Tee_041_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RUNE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_042_M") CASE HASH("MP_Christmas2018_Tee_042_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SCHYSTER_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_043_M") CASE HASH("MP_Christmas2018_Tee_043_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHITZU_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_044_M") CASE HASH("MP_Christmas2018_Tee_044_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TRUFFADE_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_045_M") CASE HASH("MP_Christmas2018_Tee_045_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_UBERMACHT_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_046_M") CASE HASH("MP_Christmas2018_Tee_046_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_VAPID_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_047_M") CASE HASH("MP_Christmas2018_Tee_047_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_VULCAR_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_048_M") CASE HASH("MP_Christmas2018_Tee_048_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WEENY_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_049_M") CASE HASH("MP_Christmas2018_Tee_049_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WILLARD_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_050_M") CASE HASH("MP_Christmas2018_Tee_050_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_CAR_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_051_M") CASE HASH("MP_Christmas2018_Tee_051_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_052_M") CASE HASH("MP_Christmas2018_Tee_052_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_GOLD_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_053_M") CASE HASH("MP_Christmas2018_Tee_053_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ANNIS_LOGO_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_054_M") CASE HASH("MP_Christmas2018_Tee_054_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BF_VAN_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_055_M") CASE HASH("MP_Christmas2018_Tee_055_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BOLLOKAN_CAR_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_056_M") CASE HASH("MP_Christmas2018_Tee_056_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRAVADO_CAR_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_057_M") CASE HASH("MP_Christmas2018_Tee_057_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRUTE_ARMOR_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_058_M") CASE HASH("MP_Christmas2018_Tee_058_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRUTE_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_059_M") CASE HASH("MP_Christmas2018_Tee_059_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BUCKINGHAM_ICON_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_060_M") CASE HASH("MP_Christmas2018_Tee_060_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_FLAG_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_061_M") CASE HASH("MP_Christmas2018_Tee_061_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_TRUCK_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_062_M") CASE HASH("MP_Christmas2018_Tee_062_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_WOLF_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_063_M") CASE HASH("MP_Christmas2018_Tee_063_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHEVAL_TRUCK_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_064_M") CASE HASH("MP_Christmas2018_Tee_064_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COIL_FLAG_WHITE_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_065_M") CASE HASH("MP_Christmas2018_Tee_065_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COIL_RAIDEN_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_066_M") CASE HASH("MP_Christmas2018_Tee_066_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DECLASSE_LOGO_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("MP_Christmas2018_Tee_067_M") CASE HASH("MP_Christmas2018_Tee_067_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DECLASSE_LADY_BLACK_SHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockArenaWarsRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iPreset // Kifflom T-Shirt CASE HASH("MP_Battle_Clothing_000_M") CASE HASH("MP_Battle_Clothing_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_NIGHTCLUB_DRUNK_SPAWN_EPSILON_UNLOCK) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KIFFLOMTEE_LOGINAWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Blaine County Radio Tee CASE HASH("MP_Battle_Clothing_002_M") CASE HASH("MP_Battle_Clothing_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_BLAINE_COUNTY_RADIO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Channel X Tee CASE HASH("MP_Battle_Clothing_003_M") CASE HASH("MP_Battle_Clothing_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_CHANNEL_X) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // East Los FM Tee CASE HASH("MP_Battle_Clothing_004_M") CASE HASH("MP_Battle_Clothing_004_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_EAST_LOS_FM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // FlyLo FM Tee CASE HASH("MP_Battle_Clothing_005_M") CASE HASH("MP_Battle_Clothing_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_FLYLO_FM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // LS Rock Radio Tee CASE HASH("MP_Battle_Clothing_006_M") CASE HASH("MP_Battle_Clothing_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_LOS_SANTOS_ROCK_RADIO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Non-Stop-Pop FM Tee CASE HASH("MP_Battle_Clothing_007_M") CASE HASH("MP_Battle_Clothing_007_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_NONSTOPPOP_FM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Radio LS Tee CASE HASH("MP_Battle_Clothing_008_M") CASE HASH("MP_Battle_Clothing_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_RADIO_LOS_SANTOS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Radio Mirror Park Tee CASE HASH("MP_Battle_Clothing_009_M") CASE HASH("MP_Battle_Clothing_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_RADIO_MIRROR_PARK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Rebel Radio Tee CASE HASH("MP_Battle_Clothing_010_M") CASE HASH("MP_Battle_Clothing_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_REBEL_RADIO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Soulwax FM Tee CASE HASH("MP_Battle_Clothing_011_M") CASE HASH("MP_Battle_Clothing_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_SOULWAX_FM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Space 103.2 Tee CASE HASH("MP_Battle_Clothing_012_M") CASE HASH("MP_Battle_Clothing_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_SPACE_1032) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Blue Ark Tee CASE HASH("MP_Battle_Clothing_013_M") CASE HASH("MP_Battle_Clothing_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_BLUE_ARK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Lab Tee CASE HASH("MP_Battle_Clothing_014_M") CASE HASH("MP_Battle_Clothing_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_THE_LAB) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Lowdown 91.1 Tee CASE HASH("MP_Battle_Clothing_015_M") CASE HASH("MP_Battle_Clothing_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_THE_LOWDOWN_911) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Vinewood Blvd Radio Tee CASE HASH("MP_Battle_Clothing_016_M") CASE HASH("MP_Battle_Clothing_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_VINEWOOD_BOULEVARD_RADIO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // West Coast Classics Tee CASE HASH("MP_Battle_Clothing_017_M") CASE HASH("MP_Battle_Clothing_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_WEST_COAST_CLASSICS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // West Coast Talk Radio Tee CASE HASH("MP_Battle_Clothing_018_M") CASE HASH("MP_Battle_Clothing_018_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_WEST_COAST_TALK_RADIO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // WorldWide FM Tee CASE HASH("MP_Battle_Clothing_019_M") CASE HASH("MP_Battle_Clothing_019_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_WORLDWIDE_FM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // LS UR Tee CASE HASH("MP_Battle_Clothing_020_M") CASE HASH("MP_Battle_Clothing_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_LS_UR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF IF iPreset = HASH("MP_Battle_Clothing_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_115) RETURN TRUE ENDIF ELSE IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_116) RETURN TRUE ENDIF ENDIF BREAK // Blonded LS 97.8 FM Tee CASE HASH("MP_Battle_Clothing_021_M") CASE HASH("MP_Battle_Clothing_021_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_BLONDED_LOS_SANTOS_978_FM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Galaxy Tee CASE HASH("MP_Battle_Clothing_022_M") CASE HASH("MP_Battle_Clothing_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Gefangnis Tee CASE HASH("MP_Battle_Clothing_023_M") CASE HASH("MP_Battle_Clothing_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Omega Tee CASE HASH("MP_Battle_Clothing_024_M") CASE HASH("MP_Battle_Clothing_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT5) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Maisonette Tee CASE HASH("MP_Battle_Clothing_025_M") CASE HASH("MP_Battle_Clothing_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Paradise Tee CASE HASH("MP_Battle_Clothing_026_M") CASE HASH("MP_Battle_Clothing_026_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT7) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Studio Los Santos Tee CASE HASH("MP_Battle_Clothing_027_M") CASE HASH("MP_Battle_Clothing_027_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Technologie Tee CASE HASH("MP_Battle_Clothing_028_M") CASE HASH("MP_Battle_Clothing_028_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT6) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Palace Tee CASE HASH("MP_Battle_Clothing_029_M") CASE HASH("MP_Battle_Clothing_029_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT8) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tony's Fun House Tee CASE HASH("MP_Battle_Clothing_030_M") CASE HASH("MP_Battle_Clothing_030_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iPreset // The Black Madonna 1 CASE HASH("MP_Battle_Clothing_031_M") CASE HASH("MP_Battle_Clothing_031_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_031_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 2 CASE HASH("MP_Battle_Clothing_032_M") CASE HASH("MP_Battle_Clothing_032_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_032_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 3 CASE HASH("MP_Battle_Clothing_033_M") CASE HASH("MP_Battle_Clothing_033_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_033_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 4 CASE HASH("MP_Battle_Clothing_034_M") CASE HASH("MP_Battle_Clothing_034_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_034_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 5 CASE HASH("MP_Battle_Clothing_035_M") CASE HASH("MP_Battle_Clothing_035_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_035_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 6 CASE HASH("MP_Battle_Clothing_036_M") CASE HASH("MP_Battle_Clothing_036_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_036_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 7 CASE HASH("MP_Battle_Clothing_037_M") CASE HASH("MP_Battle_Clothing_037_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_037_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // The Black Madonna 8 CASE HASH("MP_Battle_Clothing_038_M") CASE HASH("MP_Battle_Clothing_038_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_038_DJ_BLACK_MADONNA) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 1 CASE HASH("MP_Battle_Clothing_039_M") CASE HASH("MP_Battle_Clothing_039_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_039_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 2 CASE HASH("MP_Battle_Clothing_040_M") CASE HASH("MP_Battle_Clothing_040_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_040_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 3 CASE HASH("MP_Battle_Clothing_041_M") CASE HASH("MP_Battle_Clothing_041_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_041_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 4 CASE HASH("MP_Battle_Clothing_042_M") CASE HASH("MP_Battle_Clothing_042_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_042_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 5 CASE HASH("MP_Battle_Clothing_043_M") CASE HASH("MP_Battle_Clothing_043_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_043_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 6 CASE HASH("MP_Battle_Clothing_044_M") CASE HASH("MP_Battle_Clothing_044_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_044_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 7 CASE HASH("MP_Battle_Clothing_045_M") CASE HASH("MP_Battle_Clothing_045_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_045_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Dixon 8 CASE HASH("MP_Battle_Clothing_046_M") CASE HASH("MP_Battle_Clothing_046_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_046_DJ_DIXON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 1 CASE HASH("MP_Battle_Clothing_047_M") CASE HASH("MP_Battle_Clothing_047_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_047_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 2 CASE HASH("MP_Battle_Clothing_048_M") CASE HASH("MP_Battle_Clothing_048_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_048_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 3 CASE HASH("MP_Battle_Clothing_049_M") CASE HASH("MP_Battle_Clothing_049_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_049_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 4 CASE HASH("MP_Battle_Clothing_050_M") CASE HASH("MP_Battle_Clothing_050_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_050_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 5 CASE HASH("MP_Battle_Clothing_051_M") CASE HASH("MP_Battle_Clothing_051_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_051_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 6 CASE HASH("MP_Battle_Clothing_052_M") CASE HASH("MP_Battle_Clothing_052_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_052_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 7 CASE HASH("MP_Battle_Clothing_053_M") CASE HASH("MP_Battle_Clothing_053_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_053_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Tale Of Us 8 CASE HASH("MP_Battle_Clothing_054_M") CASE HASH("MP_Battle_Clothing_054_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_054_DJ_TALE_OF_US) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 1 CASE HASH("MP_Battle_Clothing_055_M") CASE HASH("MP_Battle_Clothing_055_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_055_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 2 CASE HASH("MP_Battle_Clothing_056_M") CASE HASH("MP_Battle_Clothing_056_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_056_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 3 CASE HASH("MP_Battle_Clothing_057_M") CASE HASH("MP_Battle_Clothing_057_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_057_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 4 CASE HASH("MP_Battle_Clothing_058_M") CASE HASH("MP_Battle_Clothing_058_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_058_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 5 CASE HASH("MP_Battle_Clothing_059_M") CASE HASH("MP_Battle_Clothing_059_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_059_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 6 CASE HASH("MP_Battle_Clothing_060_M") CASE HASH("MP_Battle_Clothing_060_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_060_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 7 CASE HASH("MP_Battle_Clothing_061_M") CASE HASH("MP_Battle_Clothing_061_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_061_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Solomun 8 CASE HASH("MP_Battle_Clothing_062_M") CASE HASH("MP_Battle_Clothing_062_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_062_DJ_SOLOMUN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBusinessBattlesRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Outfit: The Forest SWITCH iNameHash CASE HASH("DLC_MP_LTS_M_OUTFIT_14") CASE HASH("DLC_MP_LTS_F_OUTFIT_14") IF GET_PACKED_STAT_BOOL(PACKED_MP_GIVE_OUTFIT_GANGOPS_UNDER_CONTROL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGangOpsRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Gifted Morphsuits SWITCH iNameHash // Green Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_0") CASE HASH("DLC_MP_X17_M_BERD_2_0") CASE HASH("DLC_MP_X17_M_LEGS_1_0") CASE HASH("DLC_MP_X17_M_FEET_1_0") CASE HASH("DLC_MP_X17_M_JBIB_5_0") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_0") CASE HASH("DLC_MP_X17_F_BERD_2_0") CASE HASH("DLC_MP_X17_F_LEGS_1_0") CASE HASH("DLC_MP_X17_F_FEET_1_0") CASE HASH("DLC_MP_X17_F_JBIB_5_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_GREEN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Orange Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_1") CASE HASH("DLC_MP_X17_M_BERD_2_1") CASE HASH("DLC_MP_X17_M_LEGS_1_1") CASE HASH("DLC_MP_X17_M_FEET_1_1") CASE HASH("DLC_MP_X17_M_JBIB_5_1") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_1") CASE HASH("DLC_MP_X17_F_BERD_2_1") CASE HASH("DLC_MP_X17_F_LEGS_1_1") CASE HASH("DLC_MP_X17_F_FEET_1_1") CASE HASH("DLC_MP_X17_F_JBIB_5_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_ORANGE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Blue Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_2") CASE HASH("DLC_MP_X17_M_BERD_2_2") CASE HASH("DLC_MP_X17_M_LEGS_1_2") CASE HASH("DLC_MP_X17_M_FEET_1_2") CASE HASH("DLC_MP_X17_M_JBIB_5_2") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_2") CASE HASH("DLC_MP_X17_F_BERD_2_2") CASE HASH("DLC_MP_X17_F_LEGS_1_2") CASE HASH("DLC_MP_X17_F_FEET_1_2") CASE HASH("DLC_MP_X17_F_JBIB_5_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_BLUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Pink Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_3") CASE HASH("DLC_MP_X17_M_BERD_2_3") CASE HASH("DLC_MP_X17_M_LEGS_1_3") CASE HASH("DLC_MP_X17_M_FEET_1_3") CASE HASH("DLC_MP_X17_M_JBIB_5_3") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_3") CASE HASH("DLC_MP_X17_F_BERD_2_3") CASE HASH("DLC_MP_X17_F_LEGS_1_3") CASE HASH("DLC_MP_X17_F_FEET_1_3") CASE HASH("DLC_MP_X17_F_JBIB_5_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_PINK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Yellow Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_4") CASE HASH("DLC_MP_X17_M_BERD_2_4") CASE HASH("DLC_MP_X17_M_LEGS_1_4") CASE HASH("DLC_MP_X17_M_FEET_1_4") CASE HASH("DLC_MP_X17_M_JBIB_5_4") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_4") CASE HASH("DLC_MP_X17_F_BERD_2_4") CASE HASH("DLC_MP_X17_F_LEGS_1_4") CASE HASH("DLC_MP_X17_F_FEET_1_4") CASE HASH("DLC_MP_X17_F_JBIB_5_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_YELLOW) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Gifted Krampus mask SWITCH iNameHash // Hideous Krampus CASE HASH("DLC_MP_X17_M_BERD_10_0") CASE HASH("DLC_MP_X17_F_BERD_10_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Fearsome Krampus CASE HASH("DLC_MP_X17_M_BERD_10_1") CASE HASH("DLC_MP_X17_F_BERD_10_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Odious Krampus CASE HASH("DLC_MP_X17_M_BERD_10_2") CASE HASH("DLC_MP_X17_F_BERD_10_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_3) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Heinous Krampus CASE HASH("DLC_MP_X17_M_BERD_10_3") CASE HASH("DLC_MP_X17_F_BERD_10_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_4) #IF IS_DEBUG_BUILD OR g_bDebugUnlockChristmasRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // R* Tops SWITCH iNameHash // Blue R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_0") CASE HASH("DLC_MP_GR_F_JBIB_25_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_BLUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Red R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_1") CASE HASH("DLC_MP_GR_F_JBIB_25_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_RED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // R* Thug Pocket Tee CASE HASH("DLC_MP_GR_M_JBIB_20_0") CASE HASH("DLC_MP_GR_F_JBIB_26_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_PATTERN_POCKET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Gunrunning reward hoodies (t-shirts use overlays) SWITCH iNameHash // White Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_0") CASE HASH("DLC_MP_GR_F_DECL_5_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_1") CASE HASH("DLC_MP_GR_F_DECL_5_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_2") CASE HASH("DLC_MP_GR_F_DECL_5_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_3") CASE HASH("DLC_MP_GR_F_DECL_5_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_SHREWSBURY_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_4") CASE HASH("DLC_MP_GR_F_DECL_5_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_5") CASE HASH("DLC_MP_GR_F_DECL_5_5") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_6") CASE HASH("DLC_MP_GR_F_DECL_5_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_7") CASE HASH("DLC_MP_GR_F_DECL_5_7") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_8") CASE HASH("DLC_MP_GR_F_DECL_5_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_9") CASE HASH("DLC_MP_GR_F_DECL_5_9") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Warstock Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_10") CASE HASH("DLC_MP_GR_F_DECL_5_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_WARSTOCK_HOODIE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Gunrunning reward hats SWITCH iNameHash // Red Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_0") CASE HASH("DLC_MP_GR_F_PHEAD_6_0") CASE HASH("DLC_MP_GR_M_PHEAD_7_0") CASE HASH("DLC_MP_GR_F_PHEAD_7_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAWK_AND_LITTLE_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_1") CASE HASH("DLC_MP_GR_F_PHEAD_6_1") CASE HASH("DLC_MP_GR_M_PHEAD_7_1") CASE HASH("DLC_MP_GR_F_PHEAD_7_1") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_2") CASE HASH("DLC_MP_GR_F_PHEAD_6_2") CASE HASH("DLC_MP_GR_M_PHEAD_7_2") CASE HASH("DLC_MP_GR_F_PHEAD_7_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_3") CASE HASH("DLC_MP_GR_F_PHEAD_6_3") CASE HASH("DLC_MP_GR_M_PHEAD_7_3") CASE HASH("DLC_MP_GR_F_PHEAD_7_3") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_4") CASE HASH("DLC_MP_GR_F_PHEAD_6_4") CASE HASH("DLC_MP_GR_M_PHEAD_7_4") CASE HASH("DLC_MP_GR_F_PHEAD_7_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_5") CASE HASH("DLC_MP_GR_F_PHEAD_6_5") CASE HASH("DLC_MP_GR_M_PHEAD_7_5") CASE HASH("DLC_MP_GR_F_PHEAD_7_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_VOM_FEUER_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Wine Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_6") CASE HASH("DLC_MP_GR_F_PHEAD_6_6") CASE HASH("DLC_MP_GR_M_PHEAD_7_6") CASE HASH("DLC_MP_GR_F_PHEAD_7_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WINE_COIL_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_7") CASE HASH("DLC_MP_GR_F_PHEAD_6_7") CASE HASH("DLC_MP_GR_M_PHEAD_7_7") CASE HASH("DLC_MP_GR_F_PHEAD_7_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_8") CASE HASH("DLC_MP_GR_F_PHEAD_6_8") CASE HASH("DLC_MP_GR_M_PHEAD_7_8") CASE HASH("DLC_MP_GR_F_PHEAD_7_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Red Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_9") CASE HASH("DLC_MP_GR_F_PHEAD_6_9") CASE HASH("DLC_MP_GR_M_PHEAD_7_9") CASE HASH("DLC_MP_GR_F_PHEAD_7_9") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Warstock Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_10") CASE HASH("DLC_MP_GR_F_PHEAD_6_10") CASE HASH("DLC_MP_GR_M_PHEAD_7_10") CASE HASH("DLC_MP_GR_F_PHEAD_7_10") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WARSTOCK_CAP) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iPreset // Black Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_000_M") CASE HASH("MP_Gunrunning_Award_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_001_M") CASE HASH("MP_Gunrunning_Award_001_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_002_M") CASE HASH("MP_Gunrunning_Award_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_003_M") CASE HASH("MP_Gunrunning_Award_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Yellow Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_004_M") CASE HASH("MP_Gunrunning_Award_004_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_005_M") CASE HASH("MP_Gunrunning_Award_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Shrewbury Tee CASE HASH("MP_Gunrunning_Award_006_M") CASE HASH("MP_Gunrunning_Award_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWBURY_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Shrewsbury Tee CASE HASH("MP_Gunrunning_Award_007_M") CASE HASH("MP_Gunrunning_Award_007_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Green Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_008_M") CASE HASH("MP_Gunrunning_Award_008_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Yellow Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_009_M") CASE HASH("MP_Gunrunning_Award_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Yellow Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_010_M") CASE HASH("MP_Gunrunning_Award_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Green Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_011_M") CASE HASH("MP_Gunrunning_Award_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_VOM_FEUER_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Coil Tee CASE HASH("MP_Gunrunning_Award_012_M") CASE HASH("MP_Gunrunning_Award_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Red Coil Tee CASE HASH("MP_Gunrunning_Award_013_M") CASE HASH("MP_Gunrunning_Award_013_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Coil Tee CASE HASH("MP_Gunrunning_Award_014_M") CASE HASH("MP_Gunrunning_Award_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_015_M") CASE HASH("MP_Gunrunning_Award_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_016_M") CASE HASH("MP_Gunrunning_Award_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_AMMUNATION_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Yellow Warstock Tee CASE HASH("MP_Gunrunning_Award_017_M") CASE HASH("MP_Gunrunning_Award_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_WARSTOCK_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Green Warstock Tee CASE HASH("MP_Gunrunning_Award_018_M") CASE HASH("MP_Gunrunning_Award_018_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockGunrunningRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Import/Export event mask SWITCH iNameHash // Unicorn Mask CASE HASH("DLC_MP_IE_M_BERD_7_0") CASE HASH("DLC_MP_IE_F_BERD_7_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_118) RETURN TRUE ENDIF IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_UNICORN_MASK_UNLOCKED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIERewardItems #ENDIF RETURN TRUE ENDIF BREAK CASE HASH("FM_Ind_M_Award_000") CASE HASH("FM_Ind_F_Award_000") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_GIVE_FOR_FREE_STATUE_OF_HAPPINESS_TEE) RETURN TRUE ENDIF BREAK ENDSWITCH // Biker reward t-shirts SWITCH iCollection CASE HASH("mpLowrider2_overlays") SWITCH iPreset CASE HASH("MP_Hntr_006_F") CASE HASH("MP_Hntr_006_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLowriderRewardItems RETURN TRUE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_105) RETURN TRUE // UNLOCK ENDIF BREAK CASE HASH("MP_Dense_007_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLowriderRewardItems RETURN TRUE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_86) RETURN TRUE // UNLOCK ENDIF BREAK CASE HASH("MP_Hntr_001_F") CASE HASH("MP_Hntr_001_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLowriderRewardItems RETURN TRUE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_83) RETURN TRUE // UNLOCK ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpHalloween_overlays") SWITCH iPreset CASE HASH("HW_Tee_010_F") CASE HASH("HW_Tee_010_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_110) RETURN TRUE // UNLOCK ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpLowrider_overlays") SWITCH iPreset CASE HASH("MP_Bennys_001_F") CASE HASH("MP_Bennys_001_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_99) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpHeist_overlays") SWITCH iPreset // Award shirts CASE HASH("MP_Award_M_Tshirt_004") CASE HASH("MP_Award_F_Tshirt_004") CASE HASH("MP_Award_M_Tshirt_013") #IF IS_DEBUG_BUILD IF g_bDebugUnlockDLCAwardShirts RETURN TRUE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES IF iPreset = HASH("MP_Award_M_Tshirt_004") //[CLO_HST_A_0] Death Defying T-Shirt OR iPreset = HASH("MP_Award_F_Tshirt_004") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_113) RETURN TRUE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_013") //[CLO_HST_A_9] Showroom T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_115) RETURN TRUE // UNLOCKED ENDIF ENDIF #ENDIF BREAK CASE HASH("MP_Award_F_Tshirt_013") //[CLO_HST_F_A_9] Showroom Top IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_114) RETURN TRUE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpBiker_overlays") SWITCH iPreset // Steel Horse Solid Logo Tee CASE HASH("MP_Biker_Tee_022_M") CASE HASH("MP_Biker_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_BIG_LOGO_SOLID) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Steel Horse Logo Tee CASE HASH("MP_Biker_Tee_023_M") CASE HASH("MP_Biker_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_BIG_LOGO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Steel Horse Brag Tee CASE HASH("MP_Biker_Tee_024_M") CASE HASH("MP_Biker_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_NAME_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Steel Horse Brag Tee CASE HASH("MP_Biker_Tee_025_M") CASE HASH("MP_Biker_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_NAME_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Western Brag Tee CASE HASH("MP_Biker_Tee_047_M") CASE HASH("MP_Biker_Tee_047_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_NAME_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Western Brag Tee CASE HASH("MP_Biker_Tee_048_M") CASE HASH("MP_Biker_Tee_048_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_NAME_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Western Logo Tee CASE HASH("MP_Biker_Tee_049_M") CASE HASH("MP_Biker_Tee_049_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_109) RETURN TRUE ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_BIG_LOGO_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Western Logo Tee CASE HASH("MP_Biker_Tee_050_M") CASE HASH("MP_Biker_Tee_050_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_BIG_LOGO_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Nagasaki Tee CASE HASH("MP_Biker_Tee_051_M") CASE HASH("MP_Biker_Tee_051_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_NAGASAKI_LOGO_WHITE_SHIRT_WHITE_STAR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White and Red Nagasaki Tee CASE HASH("MP_Biker_Tee_052_M") CASE HASH("MP_Biker_Tee_052_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_NAGASAKI_LOGO_WHITE_SHIRT_RED_STAR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Nagasaki Tee CASE HASH("MP_Biker_Tee_053_M") CASE HASH("MP_Biker_Tee_053_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_NAGASAKI_LOGO_BLACK_SHIRT_WHITE_STAR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Purple Helmets Tee CASE HASH("MP_Biker_Tee_054_M") CASE HASH("MP_Biker_Tee_054_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_PURPLE_HELMETS_LOGO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Principe Tee CASE HASH("MP_Biker_Tee_055_M") CASE HASH("MP_Biker_Tee_055_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_PRINCIPLE_LOGO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Crosswalk Tee CASE HASH("MP_Biker_Award_000_M") CASE HASH("MP_Biker_Award_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_CROSSWALK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // R* Crosswalk Tee CASE HASH("MP_Biker_Award_001_M") CASE HASH("MP_Biker_Award_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_RSTAR_CROSSWALK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // Biker reward hoodies SWITCH iNameHash // Black Steel Horse Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_0") CASE HASH("DLC_MP_BIKER_F_DECL_0_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_STEEL_HORSE_LOGO_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Steel Horse Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_1") CASE HASH("DLC_MP_BIKER_F_DECL_0_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_STEEL_HORSE_LOGO_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Western Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_2") CASE HASH("DLC_MP_BIKER_F_DECL_0_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_WESTERN_LOGO_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Western Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_3") CASE HASH("DLC_MP_BIKER_F_DECL_0_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_WESTERN_LOGO_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White Nagasaki Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_4") CASE HASH("DLC_MP_BIKER_F_DECL_0_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_NAGASAKI_WHITE_STAR_LOGO_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // White and Red Nagasaki Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_5") CASE HASH("DLC_MP_BIKER_F_DECL_0_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_107) RETURN TRUE ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_NAGASAKI_RED_STAR_LOGO_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Nagasaki Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_6") CASE HASH("DLC_MP_BIKER_F_DECL_0_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_NAGASAKI_WHITE_STAR_LOGO_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Purple Helmets Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_7") CASE HASH("DLC_MP_BIKER_F_DECL_0_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_PURPLE_HELMET_LOGO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Principe Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_8") CASE HASH("DLC_MP_BIKER_F_DECL_0_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_PRINCIPLE_LOGO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockBikerRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Stunt reward items SWITCH iNameHash // White Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_0") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_0") CASE HASH("DLC_MP_STUNT_M_PHEAD_12_0") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_11_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_12_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Blue Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_12_1") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_1") CASE HASH("DLC_MP_STUNT_F_PHEAD_11_1") CASE HASH("DLC_MP_STUNT_F_PHEAD_12_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_8) RETURN TRUE ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_BLUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Red Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_2") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_2") CASE HASH("DLC_MP_STUNT_M_PHEAD_12_2") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_2") CASE HASH("DLC_MP_STUNT_F_PHEAD_11_2") CASE HASH("DLC_MP_STUNT_F_PHEAD_12_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_RED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Black Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_3") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_3") CASE HASH("DLC_MP_STUNT_M_PHEAD_12_3") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_3") CASE HASH("DLC_MP_STUNT_F_PHEAD_11_3") CASE HASH("DLC_MP_STUNT_F_PHEAD_12_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Pink Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_4") CASE HASH("DLC_MP_STUNT_M_PHEAD_11_4") CASE HASH("DLC_MP_STUNT_M_PHEAD_12_4") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_4") CASE HASH("DLC_MP_STUNT_F_PHEAD_11_4") CASE HASH("DLC_MP_STUNT_F_PHEAD_12_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_PINK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Gold Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_5") CASE HASH("DLC_MP_STUNT_M_PHEAD_13_0") CASE HASH("DLC_MP_STUNT_M_PHEAD_14_0") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_5") CASE HASH("DLC_MP_STUNT_F_PHEAD_13_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_14_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_GOLD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK // Silver Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_6") CASE HASH("DLC_MP_STUNT_M_PHEAD_13_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_14_1") CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_6") CASE HASH("DLC_MP_STUNT_F_PHEAD_13_1") CASE HASH("DLC_MP_STUNT_F_PHEAD_14_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_SILVER) #IF IS_DEBUG_BUILD OR g_bDebugUnlockStuntRewardItems #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH // Stunt gloves SWITCH iNameHash CASE HASH("DLC_MP_STUNT_F_TORSO_0_0") CASE HASH("DLC_MP_STUNT_F_TORSO_0_1") CASE HASH("DLC_MP_STUNT_F_TORSO_0_2") CASE HASH("DLC_MP_STUNT_F_TORSO_0_3") CASE HASH("DLC_MP_STUNT_F_TORSO_0_4") CASE HASH("DLC_MP_STUNT_F_TORSO_0_5") CASE HASH("DLC_MP_STUNT_F_TORSO_0_6") CASE HASH("DLC_MP_STUNT_F_TORSO_0_7") CASE HASH("DLC_MP_STUNT_F_TORSO_1_0") CASE HASH("DLC_MP_STUNT_F_TORSO_1_1") CASE HASH("DLC_MP_STUNT_F_TORSO_1_2") CASE HASH("DLC_MP_STUNT_F_TORSO_1_3") CASE HASH("DLC_MP_STUNT_F_TORSO_1_4") CASE HASH("DLC_MP_STUNT_F_TORSO_1_5") CASE HASH("DLC_MP_STUNT_F_TORSO_1_6") CASE HASH("DLC_MP_STUNT_F_TORSO_1_7") CASE HASH("DLC_MP_STUNT_F_TORSO_1_8") CASE HASH("DLC_MP_STUNT_F_TORSO_1_9") CASE HASH("DLC_MP_STUNT_F_TORSO_1_10") CASE HASH("DLC_MP_STUNT_F_TORSO_1_11") CASE HASH("DLC_MP_STUNT_F_TORSO_1_12") CASE HASH("DLC_MP_STUNT_F_TORSO_1_13") CASE HASH("DLC_MP_STUNT_F_TORSO_1_14") CASE HASH("DLC_MP_STUNT_F_TORSO_1_15") CASE HASH("DLC_MP_STUNT_M_TORSO_0_0") CASE HASH("DLC_MP_STUNT_M_TORSO_0_1") CASE HASH("DLC_MP_STUNT_M_TORSO_0_2") CASE HASH("DLC_MP_STUNT_M_TORSO_0_3") CASE HASH("DLC_MP_STUNT_M_TORSO_0_4") CASE HASH("DLC_MP_STUNT_M_TORSO_0_5") CASE HASH("DLC_MP_STUNT_M_TORSO_0_6") CASE HASH("DLC_MP_STUNT_M_TORSO_0_7") CASE HASH("DLC_MP_STUNT_M_TORSO_1_0") CASE HASH("DLC_MP_STUNT_M_TORSO_1_1") CASE HASH("DLC_MP_STUNT_M_TORSO_1_2") CASE HASH("DLC_MP_STUNT_M_TORSO_1_3") CASE HASH("DLC_MP_STUNT_M_TORSO_1_4") CASE HASH("DLC_MP_STUNT_M_TORSO_1_5") CASE HASH("DLC_MP_STUNT_M_TORSO_1_6") CASE HASH("DLC_MP_STUNT_M_TORSO_1_7") CASE HASH("DLC_MP_STUNT_M_TORSO_1_8") CASE HASH("DLC_MP_STUNT_M_TORSO_1_9") CASE HASH("DLC_MP_STUNT_M_TORSO_1_10") CASE HASH("DLC_MP_STUNT_M_TORSO_1_11") CASE HASH("DLC_MP_STUNT_M_TORSO_1_12") CASE HASH("DLC_MP_STUNT_M_TORSO_1_13") CASE HASH("DLC_MP_STUNT_M_TORSO_1_14") CASE HASH("DLC_MP_STUNT_M_TORSO_1_15") RETURN TRUE BREAK ENDSWITCH // Apartment bare feet SWITCH iNameHash CASE HASH("DLC_MP_APA_M_FEET_1_0") CASE HASH("DLC_MP_APA_F_FEET_1_0") RETURN TRUE BREAK ENDSWITCH // Executive reward items SWITCH iNameHash // Pyjamas CASE HASH("DLC_MP_EXEC_F_JBIB_15_0") CASE HASH("DLC_MP_EXEC_F_LEGS_1_0") CASE HASH("DLC_MP_EXEC_M_JBIB_15_0") CASE HASH("DLC_MP_EXEC_M_LEGS_1_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_0) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_1") CASE HASH("DLC_MP_EXEC_F_LEGS_1_1") CASE HASH("DLC_MP_EXEC_M_JBIB_15_1") CASE HASH("DLC_MP_EXEC_M_LEGS_1_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_1) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_2") CASE HASH("DLC_MP_EXEC_F_LEGS_1_2") CASE HASH("DLC_MP_EXEC_M_JBIB_15_2") CASE HASH("DLC_MP_EXEC_M_LEGS_1_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_2) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_3") CASE HASH("DLC_MP_EXEC_F_LEGS_1_3") CASE HASH("DLC_MP_EXEC_M_JBIB_15_3") CASE HASH("DLC_MP_EXEC_M_LEGS_1_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_3) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_4") CASE HASH("DLC_MP_EXEC_F_LEGS_1_4") CASE HASH("DLC_MP_EXEC_M_JBIB_15_4") CASE HASH("DLC_MP_EXEC_M_LEGS_1_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_4) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_5") CASE HASH("DLC_MP_EXEC_F_LEGS_1_5") CASE HASH("DLC_MP_EXEC_M_JBIB_15_5") CASE HASH("DLC_MP_EXEC_M_LEGS_1_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_5) OR GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PYJAMA_BLUE_CHECK_UNLOCKED) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_6") CASE HASH("DLC_MP_EXEC_F_LEGS_1_6") CASE HASH("DLC_MP_EXEC_M_JBIB_15_6") CASE HASH("DLC_MP_EXEC_M_LEGS_1_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_6) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_7") CASE HASH("DLC_MP_EXEC_F_LEGS_1_7") CASE HASH("DLC_MP_EXEC_M_JBIB_15_7") CASE HASH("DLC_MP_EXEC_M_LEGS_1_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_7) OR GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PYJAMA_WHITE_GRAPHIC_UNLOCKED) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_8") CASE HASH("DLC_MP_EXEC_F_LEGS_1_8") CASE HASH("DLC_MP_EXEC_M_JBIB_15_8") CASE HASH("DLC_MP_EXEC_M_LEGS_1_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_8) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_9") CASE HASH("DLC_MP_EXEC_F_LEGS_1_9") CASE HASH("DLC_MP_EXEC_M_JBIB_15_9") CASE HASH("DLC_MP_EXEC_M_LEGS_1_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_9) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_10") CASE HASH("DLC_MP_EXEC_F_LEGS_1_10") CASE HASH("DLC_MP_EXEC_M_JBIB_15_10") CASE HASH("DLC_MP_EXEC_M_LEGS_1_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_10) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_11") CASE HASH("DLC_MP_EXEC_F_LEGS_1_11") CASE HASH("DLC_MP_EXEC_M_JBIB_15_11") CASE HASH("DLC_MP_EXEC_M_LEGS_1_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_11) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_12") CASE HASH("DLC_MP_EXEC_F_LEGS_1_12") CASE HASH("DLC_MP_EXEC_M_JBIB_15_12") CASE HASH("DLC_MP_EXEC_M_LEGS_1_12") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_12) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_13") CASE HASH("DLC_MP_EXEC_F_LEGS_1_13") CASE HASH("DLC_MP_EXEC_M_JBIB_15_13") CASE HASH("DLC_MP_EXEC_M_LEGS_1_13") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_13) RETURN TRUE ENDIF BREAK // Smoking jackets CASE HASH("DLC_MP_EXEC_F_JBIB_16_0") CASE HASH("DLC_MP_EXEC_M_JBIB_16_0") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_0) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_1") CASE HASH("DLC_MP_EXEC_M_JBIB_16_1") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_1) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_2") CASE HASH("DLC_MP_EXEC_M_JBIB_16_2") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_2) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_3") CASE HASH("DLC_MP_EXEC_M_JBIB_16_3") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_3) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_4") CASE HASH("DLC_MP_EXEC_M_JBIB_16_4") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_4) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_5") CASE HASH("DLC_MP_EXEC_M_JBIB_16_5") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_5) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_6") CASE HASH("DLC_MP_EXEC_M_JBIB_16_6") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_6) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_7") CASE HASH("DLC_MP_EXEC_M_JBIB_16_7") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_7) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_8") CASE HASH("DLC_MP_EXEC_M_JBIB_16_8") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_8) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_9") CASE HASH("DLC_MP_EXEC_M_JBIB_16_9") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_9) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_10") CASE HASH("DLC_MP_EXEC_M_JBIB_16_10") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_10) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_11") CASE HASH("DLC_MP_EXEC_M_JBIB_16_11") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_11) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_12") CASE HASH("DLC_MP_EXEC_M_JBIB_16_12") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_12) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_13") CASE HASH("DLC_MP_EXEC_M_JBIB_16_13") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_13) RETURN TRUE ENDIF BREAK ENDSWITCH // Lowrider reward items SWITCH iNameHash // Award Caps CASE HASH("DLC_MP_LOW_F_PHEAD_1_0") CASE HASH("DLC_MP_LOW_M_PHEAD_1_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_MAGNETICS_SCRIPT) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_1") CASE HASH("DLC_MP_LOW_M_PHEAD_1_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_MAGNETICS_BLOCK) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_2") CASE HASH("DLC_MP_LOW_M_PHEAD_1_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_LOW_SANTOS) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_3") CASE HASH("DLC_MP_LOW_M_PHEAD_1_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_BOARS) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_4") CASE HASH("DLC_MP_LOW_M_PHEAD_1_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_BENNYS) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_5") CASE HASH("DLC_MP_LOW_M_PHEAD_1_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_WESTSIDE) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_6") CASE HASH("DLC_MP_LOW_M_PHEAD_1_6") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_EASTSIDE) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_7") CASE HASH("DLC_MP_LOW_M_PHEAD_1_7") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_STRAWBERRY) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_8") CASE HASH("DLC_MP_LOW_M_PHEAD_1_8") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_SA) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_9") CASE HASH("DLC_MP_LOW_M_PHEAD_1_9") IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_DAVIS) RETURN TRUE ENDIF BREAK // Gift Pyjamas CASE HASH("DLC_MP_XMAS3_F_JBIB_1_0") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PYJAMA_RED_CHECK_UNLOCKED) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_XMAS3_F_JBIB_1_1") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PYJAMA_NAVY_CHECK_UNLOCKED) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_XMAS3_F_JBIB_1_2") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PYJAMA_BLACK_CHECK_UNLOCKED) RETURN TRUE ENDIF BREAK ENDSWITCH // Xmas 2015/2016 reward items SWITCH iNameHash // Naught hat is given to players during Christmas Event. CASE HASH("DLC_MP_XMAS2_F_PHEAD_4_0") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_0") CASE HASH("DLC_MP_XMAS2_M_PHEAD_4_0") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_NAUGHTY_HAT) RETURN TRUE ENDIF BREAK // Nice hat is given to players during Christmas Event. CASE HASH("DLC_MP_XMAS2_F_PHEAD_4_3") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_3") CASE HASH("DLC_MP_XMAS2_M_PHEAD_4_3") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_NICE_HAT) RETURN TRUE ENDIF BREAK // Abominable snowman is given to players during a Christmas Event. CASE HASH("DLC_MP_XMAS3_M_BERD_10_0") CASE HASH("DLC_MP_XMAS3_F_BERD_10_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_ABOMINABLE_SNOWMAN_MASK) RETURN TRUE ENDIF BREAK // Stocking mask is given to player to keep if they play during Christmas Event. CASE HASH("DLC_MP_XMAS2_M_BERD_1_0") CASE HASH("DLC_MP_XMAS2_F_BERD_1_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_STOCKING_MASK) RETURN TRUE ENDIF BREAK ENDSWITCH // Heist chemical mask SWITCH iNameHash CASE HASH("DLC_MP_HEIST_F_BERD_11_0") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_F_OUTFIT_18"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_F_OUTFIT_19"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_F_OUTFIT_20"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_F_OUTFIT_21"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_HEIST_M_BERD_11_0") IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_M_OUTFIT_18"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_M_OUTFIT_19"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_M_OUTFIT_20"), PED_COMPONENT_ACQUIRED_SLOT) OR IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_HEIST_M_OUTFIT_21"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE ENDIF BREAK ENDSWITCH // Independance Day reward items SWITCH iNameHash CASE HASH("DLC_MP_IND_F_PHEAD_6_0") CASE HASH("DLC_MP_IND_M_PHEAD_6_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_1) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_1") CASE HASH("DLC_MP_IND_M_PHEAD_6_1") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_2) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_2") CASE HASH("DLC_MP_IND_M_PHEAD_6_2") IF iNameHash = HASH("DLC_MP_IND_F_PHEAD_6_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_116) RETURN TRUE ENDIF ENDIF IF iNameHash = HASH("DLC_MP_IND_M_PHEAD_6_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_117) RETURN TRUE ENDIF ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_3) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_3") CASE HASH("DLC_MP_IND_M_PHEAD_6_3") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_4) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_4") CASE HASH("DLC_MP_IND_M_PHEAD_6_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_5) RETURN TRUE ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_5") CASE HASH("DLC_MP_IND_M_PHEAD_6_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_6) RETURN TRUE ENDIF BREAK ENDSWITCH // LTS reward items SWITCH iNameHash CASE HASH("DLC_MP_LTS_M_BERD_2_0") CASE HASH("DLC_MP_LTS_F_BERD_2_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_LTS_REWARD_MASK) RETURN TRUE ENDIF BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpLTS_overlays") SWITCH iPreset // LTS Award Tops CASE HASH("FM_LTS_M_Tshirt_000") CASE HASH("FM_LTS_F_Tshirt_000") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_LTS_REWARD_SHIRT) OR GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VictoryFistTshirt) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpHipster_overlays") SWITCH iPreset CASE HASH("FM_Hip_F_Tshirt_009") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_103) RETURN TRUE // UNLOCK ENDIF BREAK CASE HASH("FM_Hip_F_Tshirt_010") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_88) RETURN TRUE // UNLOCK ENDIF BREAK // Tournament participants CASE HASH("FM_Hip_M_Retro_010") CASE HASH("FM_Hip_F_Retro_010") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_PARTICIPANT) OR GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VivisectionTShirt) RETURN TRUE ENDIF BREAK // Tournament winners CASE HASH("FM_Hip_M_Retro_003") CASE HASH("FM_Hip_F_Retro_003") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_WINNER) OR GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_CrocsBarTShirt) RETURN TRUE ENDIF BREAK // Vintage shirts CASE HASH("FM_Hip_M_Retro_000") CASE HASH("FM_Hip_F_Retro_000") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_Base5TShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_001") CASE HASH("FM_Hip_F_Retro_001") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BitchnDogFoodTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_002") CASE HASH("FM_Hip_F_Retro_002") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BOBOTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_004") CASE HASH("FM_Hip_F_Retro_004") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_Emotion983TShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_005") CASE HASH("FM_Hip_F_Retro_005") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_Fever105TShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_006") CASE HASH("FM_Hip_F_Retro_006") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_FlashTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_007") CASE HASH("FM_Hip_F_Retro_007") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VinylCountdownTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_008") CASE HASH("FM_Hip_F_Retro_008") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_HomiesSharpTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_009") CASE HASH("FM_Hip_F_Retro_009") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KDSTTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_011") CASE HASH("FM_Hip_F_Retro_011") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KJAHRadioTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_012") CASE HASH("FM_Hip_F_Retro_012") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BounceFMTShirt) RETURN TRUE ENDIF BREAK CASE HASH("FM_Hip_M_Retro_013") CASE HASH("FM_Hip_F_Retro_013") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KROSE) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE HASH("mpIndependence_overlays") SWITCH iPreset CASE HASH("FM_Ind_M_Award_000") CASE HASH("FM_Ind_F_Award_000") IF GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_STATUE_OF_HAPPINESS_TEE) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Check to see if the shop, wardrobe, or inventory menu should block an item FUNC BOOL IS_CONTENT_ITEM_LOCKED_BY_SCRIPT(INT iLockHash, INT iNameHash, eShopPedApparel eType) #IF FEATURE_DLC_1_2022 SWITCH iLockHash CASE HASH("CU_SUM2_G9EC_MASKS") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer22RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) RETURN FALSE // UNLOCKED ENDIF SWITCH iNameHash CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_0_0") // Gray Cracked Puppet CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_0_0") // Gray Cracked Puppet IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_02_MASK_A) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_0_1") // Blushed Cracked Puppet CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_0_1") // Blushed Cracked Puppet IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_02_MASK_B) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_1_0") // Grimy Stitched CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_1_0") // Grimy Stitched IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_01_MASK_A) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_1_1") // Pale Stitched CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_1_1") // Pale Stitched IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_01_MASK_B) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_4_0") // Green Emissive Lady Liberty CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_4_1") // Blue Emissive Lady Liberty CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_4_0") // Green Emissive Lady Liberty CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_4_1") // Blue Emissive Lady Liberty IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_JULY_4TH_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_BERD_2_0") // President CASE HASH("DLC_MP_SUM2_G9EC_F_BERD_2_0") // President IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PRESIDENT_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK CASE HASH("CU_SUM2_G9EC_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer22RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) RETURN FALSE // UNLOCKED ENDIF SWITCH iNameHash CASE HASH("DLC_MP_SUM2_G9EC_M_OUTFIT_MUMMY") // Mummy CASE HASH("DLC_MP_SUM2_G9EC_F_OUTFIT_MUMMY") // Mummy IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MUMMY_COSTUME) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_LEGS_0_0") // Apricot Perseus Track Pants CASE HASH("DLC_MP_SUM2_G9EC_F_LEGS_0_0") // Apricot Perseus Track Pants IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PERSEUS_TRACK_PANTS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_LEGS_0_1") // Manor Geo Track Pants CASE HASH("DLC_MP_SUM2_G9EC_F_LEGS_0_1") // Manor Geo Track Pants IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MANOR_TRACK_PANTS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_0_0") // Pumpkin Hoodie CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_1_0") // Halloween Hoodie (Hood Up) CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_1_0") // Pumpkin Hoodie CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_2_0") // Halloween Hoodie (Hood Up) IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HALLOWEEN_PULLOVER_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_0_1") // Manor Geo Hoodie CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_1_1") // Manor Geo Hoodie (Hood Up) CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_1_1") // Manor Geo Hoodie CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_2_1") // Manor Geo Hoodie (Hood Up) IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MANOR_PULLOVER_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_2_0") // Hand-Drawn Biker Bomber CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_3_0") // Hand-Drawn Biker Bomber (Hood Up) CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_3_0") // Hand-Drawn Biker Bomber CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_4_0") // Hand-Drawn Biker Bomber (Hood Up) IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_BIKER_BOMBER_JACKET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_6_0") // Still Slipping Tie-dye Tee CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_8_0") // Still Slipping Tie-dye Tee IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_STILL_SLIPPING_CREWNECK_TSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_JBIB_7_0") // LS Smoking Jacket CASE HASH("DLC_MP_SUM2_G9EC_F_JBIB_5_0") // LS Smoking Jacket IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_LS_BLAZER_JACKET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_0_0") // Apricot Perseus Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_1_0") // Apricot Perseus Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_0_0") // Apricot Perseus Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_1_0") // Apricot Perseus Backwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PERSEUS_BASEBALL_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_2_0") // Bigness Hand-drawn Dome CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_2_0") // Bigness Hand-drawn Dome IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_BIGNESS_MOTOR_HELMET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_3_0") // Manor Geo Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_4_0") // Manor Geo Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_3_0") // Manor Geo Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_4_0") // Manor Geo Backwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_MANOR_BASEBALL_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_6_0") // Still Slipping Tie-dye Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_7_0") // Still Slipping Tie-dye Forwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_6_0") // Still Slipping Tie-dye Backwards Cap CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_7_0") // Still Slipping Tie-dye Forwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_STILL_SLIPPING_BASEBALL_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_0") // Lemon Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_0") // Lemon Festive Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_LEMON) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_1") // Green Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_1") // Green Festive Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_GREEN) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_2") // Red Snowflake Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_2") // Red Snowflake Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_RED_SNOWFLAKE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_3") // Blue Snowflake Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_3") // Blue Snowflake Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_BLUE_SNOWFLAKE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_4") // Red Holly Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_4") // Red Holly Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_RED_HOLLY) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_7") // Red Reindeer Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_7") // Red Reindeer Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_RED_REINDEER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_8") // Borfmas Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_8") // Borfmas Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_BORFMAS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_5") // Pisswasser Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_5") // Pisswasser Festive Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_PISSWASSER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PHEAD_5_6") // Blarneys Festive Beer Hat CASE HASH("DLC_MP_SUM2_G9EC_F_PHEAD_5_6") // Blarneys Festive Beer Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHRISTMAS_BEERHAT_BLARNEYS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PEARS_0_0") // Gold Beat Off Earphones CASE HASH("DLC_MP_SUM2_G9EC_F_PEARS_0_0") // Gold Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_HEADPHONES_MEMBERSHIP_COLORWAY) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_PLEFT_WRIST_0_0") // White Spiked Gauntlet (L) CASE HASH("DLC_MP_SUM2_G9EC_M_PRIGHT_WRIST_0_0") // White Spiked Gauntlet (R) CASE HASH("DLC_MP_SUM2_G9EC_F_PLEFT_WRIST_0_0") // White Spiked Gauntlet (L) CASE HASH("DLC_MP_SUM2_G9EC_F_PRIGHT_WRIST_0_0") // White Spiked Gauntlet (R) IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_SPIKED_BRACELET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_G9EC_M_DECL_0_0") // Have You Seen Me? Sweater CASE HASH("DLC_MP_SUM2_G9EC_F_DECL_0_0") // Have You Seen Me? Sweater IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FESTIVE_CREWNECK_SWEATSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK CASE HASH("CU_SUM2_MASKS") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer22RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) RETURN FALSE // UNLOCKED ENDIF SWITCH iNameHash CASE HASH("DLC_MP_SUM2_M_BERD_5_0") // Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_0") // Painted Tiger IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_5_1") // Gray Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_1") // Gray Painted Tiger IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_5_2") // Gold Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_2") // Gold Painted Tiger IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_5_3") // Ornate Painted Tiger CASE HASH("DLC_MP_SUM2_F_BERD_5_3") // Ornate Painted Tiger IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CHINESE_NY_TIGER_MASK_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_6_0") // Pale Vintage Mummy CASE HASH("DLC_MP_SUM2_F_BERD_6_0") // Pale Vintage Mummy IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_MUMMY_MASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_6_1") // Green Vintage Mummy CASE HASH("DLC_MP_SUM2_F_BERD_6_1") // Green Vintage Mummy IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_MUMMY_MASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_6_2") // Weathered Vintage Mummy CASE HASH("DLC_MP_SUM2_F_BERD_6_2") // Weathered Vintage Mummy IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_MUMMY_MASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_7_0") // Horror Pumpkin CASE HASH("DLC_MP_SUM2_F_BERD_7_0") // Horror Pumpkin IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_PUMPKINHEAD_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_8_0") // Conquest CASE HASH("DLC_MP_SUM2_F_BERD_8_0") // Conquest IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_CONQUEST_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_9_0") // Green Vintage Frank CASE HASH("DLC_MP_SUM2_F_BERD_9_0") // Green Vintage Frank IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_FRANK_MONSTER_MASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_9_1") // Brown Vintage Frank CASE HASH("DLC_MP_SUM2_F_BERD_9_1") // Brown Vintage Frank IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_FRANK_MONSTER_MASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_9_2") // Gray Vintage Frank CASE HASH("DLC_MP_SUM2_F_BERD_9_2") // Gray Vintage Frank IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_FRANK_MONSTER_MASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_0") // Black Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_0") // Black Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_1") // Gray Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_1") // Gray Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_2") // White Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_2") // White Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_3") // Green Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_3") // Green Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_4") // Orange Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_4") // Orange Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_5") // Purple Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_5") // Purple Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_6") // Pink Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_6") // Pink Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_7") // Red Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_7") // Red Detail Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_8") // Blue Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_8") // Blue Detail Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_9") // Yellow Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_9") // Yellow Detail Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_10") // Green Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_10") // Green Detail Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_11") // Pink Detail Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_11") // Pink Detail Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_12") // Red & Gray Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_12") // Red & Gray Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_13") // Red Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_13") // Red Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_14) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_14") // Camo Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_14") // Camo Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_15) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_15") // Aqua Camo Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_15") // Aqua Camo Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_16) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_16") // Brown Digital Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_16") // Brown Digital Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_17) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_17") // Gold Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_17") // Gold Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_18) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_18") // Red & Cream Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_18") // Red & Cream Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_19) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_19") // Green & Yellow Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_19") // Green & Yellow Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_20) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_20") // Pink Floral Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_20") // Pink Floral Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_21) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_21") // Black & Green Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_21") // Black & Green Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_22) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_22") // White & Red Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_22") // White & Red Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_23) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_23") // Carbon Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_23") // Carbon Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_24) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_24") // Carbon Teal Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_24") // Carbon Teal Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_25) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_10_25") // Black & White Tech Demon CASE HASH("DLC_MP_SUM2_F_BERD_10_25") // Black & White Tech Demon IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CYBER_DEMON_MASK_26) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_0_0") // Famine CASE HASH("DLC_MP_SUM2_F_BERD_0_0") // Famine IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_FAMINE_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_1_0") // White Vintage Vampire CASE HASH("DLC_MP_SUM2_F_BERD_1_0") // White Vintage Vampire IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_HORROR_VAMPIRE_MASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_1_1") // Dark Green Vintage Vampire CASE HASH("DLC_MP_SUM2_F_BERD_1_1") // Dark Green Vintage Vampire IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_HORROR_VAMPIRE_MASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_1_2") // Light Green Vintage Vampire CASE HASH("DLC_MP_SUM2_F_BERD_1_2") // Light Green Vintage Vampire IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_VINTAGE_HORROR_VAMPIRE_MASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_3_0") // War CASE HASH("DLC_MP_SUM2_F_BERD_3_0") // War IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_WAR_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_BERD_4_0") // Death CASE HASH("DLC_MP_SUM2_F_BERD_4_0") // Death IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_APOCALYPSE_DEATH_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK CASE HASH("CU_SUM2_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer22RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) RETURN FALSE // UNLOCKED ENDIF SWITCH iNameHash CASE HASH("DLC_MP_SUM2_M_OUTFIT_SASQUATCH") // Sasquatch CASE HASH("DLC_MP_SUM2_F_OUTFIT_SASQUATCH") // Sasquatch IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_SASQUATCH_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_LEGS_2_0") // Green UFO Boxer Shorts CASE HASH("DLC_MP_SUM2_F_LEGS_0_0") // Green UFO Boxer Shorts IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_GREEN_UFO_BOXERS_SHORTS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_LEGS_2_1") // White UFO Boxer Shorts CASE HASH("DLC_MP_SUM2_F_LEGS_0_1") // Green UFO Boxer Shorts IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_WHITE_UFO_BOXERS_SHORTS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_13_0") // Pumpkin Tee CASE HASH("DLC_MP_SUM2_F_JBIB_15_0") // Pumpkin Tee CASE HASH("DLC_MP_SUM2_F_JBIB_16_0") // Pumpkin Tee Tucked IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_PUMPKIN_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_14_0") // Sinsimito Cuban Shirt CASE HASH("DLC_MP_SUM2_F_JBIB_19_0") // Sinsimito Cuban Shirt IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CAYO_SINSIMITO_TEQUILA_CUBAN_SHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_15_0") // Cliffford Varsity CASE HASH("DLC_MP_SUM2_M_JBIB_16_0") // Cliffford Varsity (Open) CASE HASH("DLC_MP_SUM2_F_JBIB_20_0") // Cliffford Varsity IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DOOMSDAY_HEIST_CLIF_VARSITY_JACKET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_15_1") // Pacific Standard Varsity CASE HASH("DLC_MP_SUM2_M_JBIB_16_1") // Pacific Standard Varsity (Open) CASE HASH("DLC_MP_SUM2_F_JBIB_20_1") // Pacific Standard Varsity IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PACIFIC_STAND_HEIST_VARISTY_JACKET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_15_2") // The Diamond Casino Varsity CASE HASH("DLC_MP_SUM2_M_JBIB_16_2") // The Diamond Casino Varsity (Open) CASE HASH("DLC_MP_SUM2_F_JBIB_20_2") // The Diamond Casino Varsity IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DAIMOND_CAS_HEIST_VARSITY_JACKET_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_17_0") // Pacific Standard Sweater CASE HASH("DLC_MP_SUM2_F_JBIB_8_0") // Pacific Standard Sweater IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_PACIFIC_STAND_HEIST_LS_TSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_JBIB_7_0") // Cliffford Hoodie CASE HASH("DLC_MP_SUM2_M_JBIB_8_0") // Cliffford Hoodie (Hood Up) CASE HASH("DLC_MP_SUM2_F_JBIB_24_0") // Cliffford Hoodie CASE HASH("DLC_MP_SUM2_F_JBIB_21_0") // Cliffford Hoodie (Hood Up) IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DOOMSDAY_HEIST_CLIF_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_0") // Gray Yeti Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_0") // Gray Yeti Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_1") // Woodland Yeti Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_1") // Woodland Yeti Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_2") // Green FB Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_2") // Green FB Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_3") // Blue FB Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_3") // Blue FB Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_4") // Grey Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_4") // Grey Lézard Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_5") // Green Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_5") // Green Lézard Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_6") // Light Plaid Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_6") // Light Plaid Lézard Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_7") // Dark Plaid Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_7") // Dark Plaid Lézard Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_8") // White Striped Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_8") // White Striped Lézard Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_9") // Red Striped Lézard Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_9") // Red Striped Lézard Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_10") // Brown Crevis Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_10") // Brown Crevis Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_11") // Gray Crevis Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_11") // Gray Crevis Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_12") // Black Broker Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_12") // Black Broker Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_6_13") // Burgundy Broker Flat Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_6_13") // Burgundy Broker Flat Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_FLAT_CAP_14) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_0_0") // Black LD Organics Backwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_1_0") // Black LD Organics Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_0_0") // Black LD Organics Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_1_0") // Black LD Organics Forwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_LD_ORGANICS_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_2_0") // Gray Believe Forwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_4_0") // Gray Believe Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_2_0") // Gray Believe Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_4_0") // Gray Believe Backwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_UFO_CAP_GRAY) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_2_1") // Black Believe Forwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_4_1") // Black Believe Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_2_1") // Black Believe Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_4_1") // Black Believe Backwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_UFO_CAP_BLACK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_3_0") // Glow Believe Forwards Cap CASE HASH("DLC_MP_SUM2_M_PHEAD_7_0") // Glow Believe Backwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_3_0") // Glow Believe Forwards Cap CASE HASH("DLC_MP_SUM2_F_PHEAD_7_0") // Glow Believe Backwards Cap IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_UFO_CAP_GLOW) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PHEAD_8_0") // Strickler Hat CASE HASH("DLC_MP_SUM2_F_PHEAD_8_0") // Strickler Hat IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_CAYO_STRICKLER_HAT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_0") // White Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_0") // White Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_1") // Yellow Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_1") // Yellow Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_2") // Salmon Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_2") // Salmon Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_3") // Orange Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_3") // Orange Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_4") // Purple Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_4") // Purple Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_5") // Pink Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_5") // Pink Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_6") // Turquoise Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_6") // Turquoise Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_7") // Blue Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_7") // Blue Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_8") // Black Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_8") // Black Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_9") // Gray Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_9") // Gray Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_10") // Teal Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_10") // Teal Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_PEARS_0_11") // Red Beat Off Earphones CASE HASH("DLC_MP_SUM2_F_PEARS_0_11") // Red Beat Off Earphones IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_EARBUD_HEADPHONES_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_SPECIAL_1_0") // The Diamond Strike Vest CASE HASH("DLC_MP_SUM2_F_SPECIAL_1_0") // The Diamond Strike Vest IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_DAIMOND_CAS_HEIST_BODY_ARMOR) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_0") // Wild Striped Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_0") // Wild Striped Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_1") // Neon Striped Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_1") // Neon Striped Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_2") // Black SC Coin Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_2") // Black SC Coin Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_3") // White SC Coin Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_3") // White SC Coin Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_4") // Black SC Pattern Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_4") // Black SC Pattern Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_5") // Pink SC Pattern Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_5") // Pink SC Pattern Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_6") // Blue SC Pattern Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_6") // Blue SC Pattern Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_7") // Camo Yeti Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_7") // Camo Yeti Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_5_8") // Gray Camo Yeti Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_5_8") // Gray Camo Yeti Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_0") // Black Bigness Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_0") // Black Bigness Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_1") // Purple Bigness Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_1") // Purple Bigness Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_2") // Camo Bigness Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_2") // Camo Bigness Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_3") // Black Blagueurs Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_3") // Black Blagueurs Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_4") // White Blagueurs Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_4") // White Blagueurs Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_14) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_5") // Pink Blagueurs Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_5") // Pink Blagueurs Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_15) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_6") // Gray Cimicino Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_6") // Gray Cimicino Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_16) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_7") // Rouge Cimicino Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_7") // Rouge Cimicino Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_17) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_8") // Navy DS Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_8") // Navy DS Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_18) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_9") // Red DS Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_9") // Red DS Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_19) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_10") // Floral Güffy Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_10") // Floral Güffy Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_20) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_11") // Green Güffy Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_11") // Green Güffy Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_21) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_12") // White Güffy Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_12") // White Güffy Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_22) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_13") // Blue Heat Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_13") // Blue Heat Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_23) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_SUM2_M_FEET_6_14") // Red Prolaps Pool Sliders CASE HASH("DLC_MP_SUM2_F_FEET_6_14") // Red Prolaps Pool Sliders IF NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_POOL_SLIDERS_24) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF #IF FEATURE_GEN9_EXCLUSIVE SWITCH iLockHash // Gen9EC CASE HASH("CU_GEN9EC_CLOTHES") SWITCH iNameHash // Migration Reward - Race suit CASE HASH("DLC_MP_G9EC_M_OUTFIT_RACE_6") CASE HASH("DLC_MP_G9EC_F_OUTFIT_RACE_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockGen9EXContentItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT IS_GEN_8_PLAYER() AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_HSW_RACING_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Intro Reward - Hao T-Shirt CASE HASH("DLC_MP_G9EC_M_DECL_0_2") CASE HASH("DLC_MP_G9EC_F_DECL_0_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockGen9EXContentItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HSW_RACE_HELP_DONE) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_HSW_RACING_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF #IF FEATURE_FIXER SWITCH iLockHash // Fixer CASE HASH("CU_FIXER_MASKS") SWITCH iNameHash CASE HASH("DLC_MP_FIXER_M_BERD_0_0") // Orange Goldfish CASE HASH("DLC_MP_FIXER_F_BERD_0_0") // Orange Goldfish #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_0_1") // Purple Goldfish CASE HASH("DLC_MP_FIXER_F_BERD_0_1") // Purple Goldfish #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_0_2") // Bronze Goldfish CASE HASH("DLC_MP_FIXER_F_BERD_0_2") // Bronze Goldfish #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_0_3") // Clownfish CASE HASH("DLC_MP_FIXER_F_BERD_0_3") // Clownfish #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FISHMASK_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_0") // Juvenile Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_0") // Juvenile Gull #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_1") // Sooty Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_1") // Sooty Gull #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_2") // Black-headed Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_2") // Black-headed Gull #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_1_3") // Herring Gull CASE HASH("DLC_MP_FIXER_F_BERD_1_3") // Herring Gull #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_BIRDMASK_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_0") // Brown Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_0") // Brown Sea Lion #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_1") // Spotted Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_1") // Spotted Sea Lion #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_2") // Dark Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_2") // Dark Sea Lion #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_BERD_2_3") // Gray Sea Lion CASE HASH("DLC_MP_FIXER_F_BERD_2_3") // Gray Sea Lion #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_SEALMASK_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK CASE HASH("CU_FIXER_CLOTHES") SWITCH iNameHash CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_1") // The Drive CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_1") // The Drive #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_2") // The Putt CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_2") // The Putt #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_3") // The Chip CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_3") // The Chip #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_OUTFIT_GOLF_4") // The Birdie CASE HASH("DLC_MP_FIXER_F_OUTFIT_GOLF_4") // The Birdie #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_GOLF_OUTFIT_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_0_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_1_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_2_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_3_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_4_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_0_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_1_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_2_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_3_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_4_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_5_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_6_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_7_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_8_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_9_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_10_0") // Green Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_11_0") // Green Festive Tee #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FESTIVE_TEE_GREEN) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_0_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_1_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_2_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_3_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_M_SPECIAL_4_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_0_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_1_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_2_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_3_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_4_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_5_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_6_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_7_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_8_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_9_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_10_1") // Red Festive Tee CASE HASH("DLC_MP_FIXER_F_SPECIAL_11_1") // Red Festive Tee #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_FESTIVE_TEE_RED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_2") // Orange DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_2") // Orange DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_2") // Orange DJ Pooh Tee #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_DJ_POOH_ORANGE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_3") // White WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_3") // White WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_3") // White WCC DJ Pooh Tee #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_DJ_POOH_WHITE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_JBIB_10_4") // Blue WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_13_4") // Blue WCC DJ Pooh Tee CASE HASH("DLC_MP_FIXER_F_JBIB_14_4") // Blue WCC DJ Pooh Tee #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_DJ_POOH_BLUE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_FIXER_M_DECL_8_0") // Marathon Hoodie CASE HASH("DLC_MP_FIXER_M_DECL_9_0") // Marathon Hoodie CASE HASH("DLC_MP_FIXER_F_DECL_10_0") // Marathon Hoodie CASE HASH("DLC_MP_FIXER_F_DECL_11_0") // Marathon Hoodie #IF IS_DEBUG_BUILD IF g_bDebugUnlockFixerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FIXER_MARATHON_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF #IF FEATURE_TUNER SWITCH iLockHash // Tuner CASE HASH("CU_TUNER_CLOTHES") CASE HASH("CU_TUNER_MASKS") SWITCH iNameHash // Frontier Outfit CASE HASH("DLC_MP_TUNER_M_OUTFIT_FRONTIER") CASE HASH("DLC_MP_TUNER_M_PHEAD_0_0") CASE HASH("DLC_MP_TUNER_F_OUTFIT_FRONTIER") CASE HASH("DLC_MP_TUNER_F_PHEAD_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_FRONTIER_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Boilersuit - Prisoner CASE HASH("DLC_MP_TUNER_M_OUTFIT_BOILER_0") CASE HASH("DLC_MP_TUNER_M_JBIB_1_2") CASE HASH("DLC_MP_TUNER_M_LEGS_1_2") CASE HASH("DLC_MP_TUNER_F_OUTFIT_BOILER_0") CASE HASH("DLC_MP_TUNER_F_JBIB_1_2") CASE HASH("DLC_MP_TUNER_F_LEGS_1_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_OUTFIT_1_PRISONER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Boilersuit - LSC CASE HASH("DLC_MP_TUNER_M_OUTFIT_BOILER_1") CASE HASH("DLC_MP_TUNER_M_JBIB_1_3") CASE HASH("DLC_MP_TUNER_M_LEGS_1_3") CASE HASH("DLC_MP_TUNER_F_OUTFIT_BOILER_1") CASE HASH("DLC_MP_TUNER_F_JBIB_1_3") CASE HASH("DLC_MP_TUNER_F_LEGS_1_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_OUTFIT_2_LSC) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Lost MC CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_1") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_1") CASE HASH("DLC_MP_TUNER_M_JBIB_6_0") CASE HASH("DLC_MP_TUNER_F_JBIB_6_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_2") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_2") CASE HASH("DLC_MP_TUNER_M_JBIB_4_0") CASE HASH("DLC_MP_TUNER_F_JBIB_4_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_3") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_3") CASE HASH("DLC_MP_TUNER_M_JBIB_5_4") CASE HASH("DLC_MP_TUNER_F_JBIB_5_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_LMC_4") CASE HASH("DLC_MP_TUNER_F_OUTFIT_LMC_4") CASE HASH("DLC_MP_TUNER_M_JBIB_3_1") CASE HASH("DLC_MP_TUNER_F_JBIB_3_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_METH_LAB_OUTFITS3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Dock Worker CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_1") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_2") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_3") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_TUNER_M_OUTFIT_DOCK_4") CASE HASH("DLC_MP_TUNER_F_OUTFIT_DOCK_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CONTAINER_MANIFEST_OUTFITS3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Morpsuit - eCola CASE HASH("DLC_MP_TUNER_M_OUTFIT_MORPH_0") CASE HASH("DLC_MP_TUNER_F_OUTFIT_MORPH_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_MORPH_0_ECOLA) AND NOT g_sMPTunables.bUNLOCK_SPRUNK_AND_ECOLA_BODYSUITS_FOR_PURCHASE AND NOT g_sMPTunables.bUNLOCK_ECOLA_ITEMS_FOR_PURCHASE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Morpsuit - Sprunk CASE HASH("DLC_MP_TUNER_M_OUTFIT_MORPH_1") CASE HASH("DLC_MP_TUNER_F_OUTFIT_MORPH_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_MORPH_1_SPRUNK) AND NOT g_sMPTunables.bUNLOCK_SPRUNK_AND_ECOLA_BODYSUITS_FOR_PURCHASE AND NOT g_sMPTunables.bUNLOCK_SPRUNK_ITEMS_FOR_PURCHASE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Circoloco - Black CASE HASH("DLC_MP_TUNER_M_DECL_39_0") CASE HASH("DLC_MP_TUNER_F_DECL_38_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_CIRCOLOCO_BLACK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Born x Raised Tee - White CASE HASH("DLC_MP_TUNER_M_DECL_30_1") CASE HASH("DLC_MP_TUNER_F_DECL_29_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_BORNXRAISED_WHITE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Bomber Jacket - eCola CASE HASH("DLC_MP_TUNER_M_JBIB_13_1") CASE HASH("DLC_MP_TUNER_M_JBIB_14_1") CASE HASH("DLC_MP_TUNER_F_JBIB_13_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_BOMBER_1_ECOLA) AND NOT g_sMPTunables.bUNLOCK_ECOLA_ITEMS_FOR_PURCHASE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Bomber Jacket - Sprunk CASE HASH("DLC_MP_TUNER_M_JBIB_13_0") CASE HASH("DLC_MP_TUNER_M_JBIB_14_0") CASE HASH("DLC_MP_TUNER_F_JBIB_13_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_BOMBER_2_SPRUNK) AND NOT g_sMPTunables.bUNLOCK_SPRUNK_ITEMS_FOR_PURCHASE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Bomber Jacket - LSC CASE HASH("DLC_MP_TUNER_M_JBIB_13_2") CASE HASH("DLC_MP_TUNER_M_JBIB_14_2") CASE HASH("DLC_MP_TUNER_F_JBIB_13_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_BOMBER_3_LSC) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tour Jacket - LSC CASE HASH("DLC_MP_TUNER_M_JBIB_9_15") CASE HASH("DLC_MP_TUNER_F_JBIB_9_15") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TOUR_1_LSC) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Hoodie - Banshee CASE HASH("DLC_MP_TUNER_M_JBIB_11_0") CASE HASH("DLC_MP_TUNER_M_JBIB_12_0") CASE HASH("DLC_MP_TUNER_F_JBIB_11_0") CASE HASH("DLC_MP_TUNER_F_JBIB_12_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_HOODIE_1_BANSHEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Mask - Bearsy CASE HASH("DLC_MP_TUNER_M_BERD_3_0") CASE HASH("DLC_MP_TUNER_F_BERD_4_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_BEARSY_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Event Hat - Sprunk CASE HASH("DLC_MP_TUNER_M_PHEAD_1_0") CASE HASH("DLC_MP_TUNER_M_PHEAD_2_0") CASE HASH("DLC_MP_TUNER_F_PHEAD_1_0") CASE HASH("DLC_MP_TUNER_F_PHEAD_2_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_HAT_1_SPRUNK) AND NOT g_sMPTunables.bUNLOCK_SPRUNK_ITEMS_FOR_PURCHASE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Event Hat - eCola CASE HASH("DLC_MP_TUNER_M_PHEAD_1_1") CASE HASH("DLC_MP_TUNER_M_PHEAD_2_1") CASE HASH("DLC_MP_TUNER_F_PHEAD_1_1") CASE HASH("DLC_MP_TUNER_F_PHEAD_2_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTunerRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_HAT_2_ECOLA) AND NOT g_sMPTunables.bUNLOCK_ECOLA_ITEMS_FOR_PURCHASE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF SWITCH iLockHash // Island Heist CASE HASH("CU_HEIST4_CLOTHES") CASE HASH("CU_HEIST4_MASKS") SWITCH iNameHash // Tops - Island Heist Event Jacket 1 // [CLO_H4F_U_8_0] Bomber Jacket CASE HASH("DLC_MP_H4_F_JBIB_8_0") CASE HASH("DLC_MP_H4_F_JBIB_9_0") CASE HASH("DLC_MP_H4_M_JBIB_8_0") CASE HASH("DLC_MP_H4_M_JBIB_9_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_JACKET_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Jacket 2 // [CLO_H4F_U_10_0] Bomber Jacket Panther CASE HASH("DLC_MP_H4_F_JBIB_10_0") CASE HASH("DLC_MP_H4_M_JBIB_10_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_JACKET_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Vest 1 // [CLO_H4F_U_5_0] Basketball Top 1 CASE HASH("DLC_MP_H4_F_JBIB_5_0") CASE HASH("DLC_MP_H4_M_JBIB_6_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_VEST_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Vest 2 // [CLO_H4F_U_5_1] Basketball Top 2 CASE HASH("DLC_MP_H4_F_JBIB_5_1") CASE HASH("DLC_MP_H4_M_JBIB_6_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_VEST_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Manor x Princess Robot Bubblegum T-Shirt //[CLO_H4F_U_7_5] T-Shirt 5 CASE HASH("DLC_MP_H4_F_JBIB_7_5") CASE HASH("DLC_MP_H4_M_JBIB_0_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_MANOR_X_PRINCESS_ROBOT_BUBBLEGUM_TSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Manor Tie-Dye T-Shirt // [CLO_H4F_U_7_4] T-Shirt 4 CASE HASH("DLC_MP_H4_F_JBIB_7_4") CASE HASH("DLC_MP_H4_M_JBIB_0_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_MANOR_TIE_DYE_TSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Santo Capra Collage Sweatshirt // [CLO_H4F_U_6_4] Sweater 5 CASE HASH("DLC_MP_H4_F_JBIB_6_4") CASE HASH("DLC_MP_H4_M_JBIB_7_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_SANTO_CAPRA_COLLAGE_SWEATSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Rockstar Games Sweatshirt // [CLO_H4F_U_6_3] Sweater 4 CASE HASH("DLC_MP_H4_F_JBIB_6_3") CASE HASH("DLC_MP_H4_M_JBIB_7_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ROCKSTAR_GAMES_SWEATSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Bigness x Jackal Racing Sweatshirt // [CLO_H4F_U_6_2] Sweater 3 CASE HASH("DLC_MP_H4_F_JBIB_6_2") CASE HASH("DLC_MP_H4_M_JBIB_7_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_BIGNESS_X_JACKAL_RACING_SWEATSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Bigness Tie Dye Sweatshirt // [CLO_H4F_U_6_1] Sweater 2 CASE HASH("DLC_MP_H4_F_JBIB_6_1") CASE HASH("DLC_MP_H4_M_JBIB_7_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_BIGNESS_TIE_DYE_SWEATSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Bigness Faces Sweatshirt // [CLO_H4F_U_6_0] Sweater 1 CASE HASH("DLC_MP_H4_F_JBIB_6_0") CASE HASH("DLC_MP_H4_M_JBIB_7_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_BIGNESS_FACES_SWEATSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Pants - Island Heist Event Shorts 1 // [CLO_H4F_L_1_0] Shorts 1 CASE HASH("DLC_MP_H4_F_LEGS_1_0") CASE HASH("DLC_MP_H4_M_LEGS_1_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_ISLAND_HEIST_EVENT_SHORTS_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Pants - Island Heist Event Shorts 2 // [CLO_H4F_L_1_1] Shorts 2 CASE HASH("DLC_MP_H4_F_LEGS_1_1") CASE HASH("DLC_MP_H4_M_LEGS_1_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_ISLAND_HEIST_EVENT_SHORTS_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Pants - Island Heist Event Shorts 3 // [CLO_H4F_L_1_2] Shorts 3 CASE HASH("DLC_MP_H4_F_LEGS_1_2") CASE HASH("DLC_MP_H4_M_LEGS_1_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_ISLAND_HEIST_EVENT_SHORTS_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Pants - Bigness Tie Dye Sweat Pants // [CLO_H4F_L_0_0] Sweatpants CASE HASH("DLC_MP_H4_F_LEGS_0_0") CASE HASH("DLC_MP_H4_M_LEGS_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PANTS_BIGNESS_TIE_DYE_SWEAT_PANTS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Hats - Island Heist Event Hat 1 // [CLO_H4F_PH_1_0] Cap 1 CASE HASH("DLC_MP_H4_F_PHEAD_1_0") CASE HASH("DLC_MP_H4_M_PHEAD_1_0") CASE HASH("DLC_MP_H4_F_PHEAD_2_0") CASE HASH("DLC_MP_H4_M_PHEAD_2_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Hats - Island Heist Event Hat 2 // [CLO_H4F_PH_1_1] Cap 2 CASE HASH("DLC_MP_H4_F_PHEAD_1_1") CASE HASH("DLC_MP_H4_M_PHEAD_1_1") CASE HASH("DLC_MP_H4_F_PHEAD_2_1") CASE HASH("DLC_MP_H4_M_PHEAD_2_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Hats - Island Heist Event Hat 3 // [CLO_H4F_PH_1_2] Cap 3 CASE HASH("DLC_MP_H4_F_PHEAD_1_2") CASE HASH("DLC_MP_H4_M_PHEAD_1_2") CASE HASH("DLC_MP_H4_F_PHEAD_2_2") CASE HASH("DLC_MP_H4_M_PHEAD_2_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Hats - Island Heist Event Hat 4 // [CLO_H4F_PH_1_3] Cap 4 CASE HASH("DLC_MP_H4_F_PHEAD_1_3") CASE HASH("DLC_MP_H4_M_PHEAD_1_3") CASE HASH("DLC_MP_H4_F_PHEAD_2_3") CASE HASH("DLC_MP_H4_M_PHEAD_2_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Hats - Island Heist Event Hat 5 // [CLO_H4F_PH_1_4] Cap 5 CASE HASH("DLC_MP_H4_F_PHEAD_1_4") CASE HASH("DLC_MP_H4_M_PHEAD_1_4") CASE HASH("DLC_MP_H4_F_PHEAD_2_4") CASE HASH("DLC_MP_H4_M_PHEAD_2_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_HATS_ISLAND_HEIST_EVENT_HAT_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH SWITCH iNameHash // Accessories - Glow Bracelet x12 // [CLO_H4F_PLW_0_0] Glow Bangle 1 (L) // [CLO_H4F_PRW_0_0] Glow Bangle 1 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_0") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_0") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_0") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_1] Glow Bangle 2 (L) // [CLO_H4F_PRW_0_1] Glow Bangle 2 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_1") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_1") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_1") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_2] Glow Bangle 3 (L) // [CLO_H4F_PRW_0_2] Glow Bangle 3 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_2") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_2") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_2") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_3] Glow Bangle 4 (L) // [CLO_H4F_PRW_0_3] Glow Bangle 4 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_3") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_3") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_3") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_4] Glow Bangle 5 (L) // [CLO_H4F_PRW_0_4] Glow Bangle 5 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_4") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_4") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_4") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_5] Glow Bangle 6 (L) // [CLO_H4F_PRW_0_5] Glow Bangle 6 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_5") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_5") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_5") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_6] Glow Bangle 7 (L) // [CLO_H4F_PRW_0_6] Glow Bangle 7 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_6") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_6") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_6") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_7] Glow Bangle 8 (L) // [CLO_H4F_PRW_0_7] Glow Bangle 8 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_7") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_7") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_7") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_8] Glow Bangle 9 (L) // [CLO_H4F_PRW_0_8] Glow Bangle 9 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_8") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_8") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_8") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_0_9] Glow Bangle 10 (L) // [CLO_H4F_PRW_0_9] Glow Bangle 10 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_9") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_9") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_9") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_010] Glow Bangle 11 (L) // [CLO_H4F_PRW_010] Glow Bangle 11 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_10") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_10") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_10") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PLW_011] Glow Bangle 12 (L) // [CLO_H4F_PRW_011] Glow Bangle 12 (R) CASE HASH("DLC_MP_H4_F_PLEFT_WRIST_0_11") CASE HASH("DLC_MP_H4_F_PRIGHT_WRIST_0_11") CASE HASH("DLC_MP_H4_M_PLEFT_WRIST_0_11") CASE HASH("DLC_MP_H4_M_PRIGHT_WRIST_0_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_BRACELET_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Accessories - Glow Sunglasses x12 // [CLO_H4F_PEY_0_0] Glasses 1 CASE HASH("DLC_MP_H4_F_PEYES_0_0") CASE HASH("DLC_MP_H4_M_PEYES_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_1] Glasses 2 CASE HASH("DLC_MP_H4_F_PEYES_0_1") CASE HASH("DLC_MP_H4_M_PEYES_0_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_2] Glasses 3 CASE HASH("DLC_MP_H4_F_PEYES_0_2") CASE HASH("DLC_MP_H4_M_PEYES_0_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_3] Glasses 4 CASE HASH("DLC_MP_H4_F_PEYES_0_3") CASE HASH("DLC_MP_H4_M_PEYES_0_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_4] Glasses 5 CASE HASH("DLC_MP_H4_F_PEYES_0_4") CASE HASH("DLC_MP_H4_M_PEYES_0_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_5] Glasses 6 CASE HASH("DLC_MP_H4_F_PEYES_0_5") CASE HASH("DLC_MP_H4_M_PEYES_0_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_6] Glasses 7 CASE HASH("DLC_MP_H4_F_PEYES_0_6") CASE HASH("DLC_MP_H4_M_PEYES_0_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_7] Glasses 8 CASE HASH("DLC_MP_H4_F_PEYES_0_7") CASE HASH("DLC_MP_H4_M_PEYES_0_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_8] Glasses 9 CASE HASH("DLC_MP_H4_F_PEYES_0_8") CASE HASH("DLC_MP_H4_M_PEYES_0_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_0_9] Glasses 10 CASE HASH("DLC_MP_H4_F_PEYES_0_9") CASE HASH("DLC_MP_H4_M_PEYES_0_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_010] Glasses 11 CASE HASH("DLC_MP_H4_F_PEYES_0_10") CASE HASH("DLC_MP_H4_M_PEYES_0_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_PEY_011] Glasses 12 CASE HASH("DLC_MP_H4_F_PEYES_0_11") CASE HASH("DLC_MP_H4_M_PEYES_0_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_SUNGLASSES_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Accessories - Glow Necklace x16 // [CLO_H4F_T_13_0] Glow Necklace 1 CASE HASH("DLC_MP_H4_F_TEETH_13_0") CASE HASH("DLC_MP_H4_M_TEETH_13_0") CASE HASH("DLC_MP_H4_F_TEETH_14_0") CASE HASH("DLC_MP_H4_M_TEETH_14_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_1] Glow Necklace 2 CASE HASH("DLC_MP_H4_F_TEETH_13_1") CASE HASH("DLC_MP_H4_M_TEETH_13_1") CASE HASH("DLC_MP_H4_F_TEETH_14_1") CASE HASH("DLC_MP_H4_M_TEETH_14_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_2] Glow Necklace 3 CASE HASH("DLC_MP_H4_F_TEETH_13_2") CASE HASH("DLC_MP_H4_M_TEETH_13_2") CASE HASH("DLC_MP_H4_F_TEETH_14_2") CASE HASH("DLC_MP_H4_M_TEETH_14_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_3] Glow Necklace 4 CASE HASH("DLC_MP_H4_F_TEETH_13_3") CASE HASH("DLC_MP_H4_M_TEETH_13_3") CASE HASH("DLC_MP_H4_F_TEETH_14_3") CASE HASH("DLC_MP_H4_M_TEETH_14_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_4] Glow Necklace 5 CASE HASH("DLC_MP_H4_F_TEETH_13_4") CASE HASH("DLC_MP_H4_M_TEETH_13_4") CASE HASH("DLC_MP_H4_F_TEETH_14_4") CASE HASH("DLC_MP_H4_M_TEETH_14_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_5] Glow Necklace 6 CASE HASH("DLC_MP_H4_F_TEETH_13_5") CASE HASH("DLC_MP_H4_M_TEETH_13_5") CASE HASH("DLC_MP_H4_F_TEETH_14_5") CASE HASH("DLC_MP_H4_M_TEETH_14_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_6] Glow Necklace 7 CASE HASH("DLC_MP_H4_F_TEETH_13_6") CASE HASH("DLC_MP_H4_M_TEETH_13_6") CASE HASH("DLC_MP_H4_F_TEETH_14_6") CASE HASH("DLC_MP_H4_M_TEETH_14_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_7] Glow Necklace 8 CASE HASH("DLC_MP_H4_F_TEETH_13_7") CASE HASH("DLC_MP_H4_M_TEETH_13_7") CASE HASH("DLC_MP_H4_F_TEETH_14_7") CASE HASH("DLC_MP_H4_M_TEETH_14_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_8] Glow Necklace 9 CASE HASH("DLC_MP_H4_F_TEETH_13_8") CASE HASH("DLC_MP_H4_M_TEETH_13_8") CASE HASH("DLC_MP_H4_F_TEETH_14_8") CASE HASH("DLC_MP_H4_M_TEETH_14_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_9] Glow Necklace 10 CASE HASH("DLC_MP_H4_F_TEETH_13_9") CASE HASH("DLC_MP_H4_M_TEETH_13_9") CASE HASH("DLC_MP_H4_F_TEETH_14_9") CASE HASH("DLC_MP_H4_M_TEETH_14_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_10] Glow Necklace 11 CASE HASH("DLC_MP_H4_F_TEETH_13_10") CASE HASH("DLC_MP_H4_M_TEETH_13_10") CASE HASH("DLC_MP_H4_F_TEETH_14_10") CASE HASH("DLC_MP_H4_M_TEETH_14_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_11] Glow Necklace 12 CASE HASH("DLC_MP_H4_F_TEETH_13_11") CASE HASH("DLC_MP_H4_M_TEETH_13_11") CASE HASH("DLC_MP_H4_F_TEETH_14_11") CASE HASH("DLC_MP_H4_M_TEETH_14_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_12] Glow Necklace 13 CASE HASH("DLC_MP_H4_F_TEETH_13_12") CASE HASH("DLC_MP_H4_M_TEETH_13_12") CASE HASH("DLC_MP_H4_F_TEETH_14_12") CASE HASH("DLC_MP_H4_M_TEETH_14_12") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_13] Glow Necklace 14 CASE HASH("DLC_MP_H4_F_TEETH_13_13") CASE HASH("DLC_MP_H4_M_TEETH_13_13") CASE HASH("DLC_MP_H4_F_TEETH_14_13") CASE HASH("DLC_MP_H4_M_TEETH_14_13") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_14) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_14] Glow Necklace 15 CASE HASH("DLC_MP_H4_F_TEETH_13_14") CASE HASH("DLC_MP_H4_M_TEETH_13_14") CASE HASH("DLC_MP_H4_F_TEETH_14_14") CASE HASH("DLC_MP_H4_M_TEETH_14_14") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_15) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4F_T_13_15] Glow Necklace 16 CASE HASH("DLC_MP_H4_F_TEETH_13_15") CASE HASH("DLC_MP_H4_M_TEETH_13_15") CASE HASH("DLC_MP_H4_F_TEETH_14_15") CASE HASH("DLC_MP_H4_M_TEETH_14_15") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_GLOW_NECKLACE_16) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Tee 7 // [CLO_H4F_D_0_0] Redwood CASE HASH("DLC_MP_H4_M_DECL_0_0") CASE HASH("DLC_MP_H4_F_DECL_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Tee 8 // [CLO_H4F_U_7_1] T-Shirt 1 CASE HASH("DLC_MP_H4_M_JBIB_0_5") CASE HASH("DLC_MP_H4_F_JBIB_7_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Tee 10 // [CLO_H4F_U_7_2] T-Shirt 2 CASE HASH("DLC_MP_H4_M_JBIB_0_6") CASE HASH("DLC_MP_H4_F_JBIB_7_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Tee 11 // [CLO_H4F_U_7_3] T-Shirt 3 CASE HASH("DLC_MP_H4_M_JBIB_0_7") CASE HASH("DLC_MP_H4_F_JBIB_7_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Tops - Island Heist Event Tee 12 // [CLO_H4F_U_4_0] Rockstar Baseball Tee CASE HASH("DLC_MP_H4_F_JBIB_4_0") CASE HASH("DLC_MP_H4_M_JBIB_5_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH SWITCH iNameHash // [CLO_H4M_PEY_1_0] Midnight Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_0") CASE HASH("DLC_MP_H4_F_PEYES_1_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_1] Sunset Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_1") CASE HASH("DLC_MP_H4_F_PEYES_1_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_2] Black Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_2") CASE HASH("DLC_MP_H4_F_PEYES_1_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_3] Blue Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_3") CASE HASH("DLC_MP_H4_F_PEYES_1_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_4] Gold Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_4") CASE HASH("DLC_MP_H4_F_PEYES_1_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_5] Green Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_5") CASE HASH("DLC_MP_H4_F_PEYES_1_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_6] Orange Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_6") CASE HASH("DLC_MP_H4_F_PEYES_1_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_7] Red Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_7") CASE HASH("DLC_MP_H4_F_PEYES_1_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_8] Pink Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_8") CASE HASH("DLC_MP_H4_F_PEYES_1_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_1_9] Yellow Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_9") CASE HASH("DLC_MP_H4_F_PEYES_1_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_110] Lemon Tint Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_10") CASE HASH("DLC_MP_H4_F_PEYES_1_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_111] Gold Rimmed Oversize Shades CASE HASH("DLC_MP_H4_M_PEYES_1_11") CASE HASH("DLC_MP_H4_F_PEYES_1_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_1_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_0] White Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_0") CASE HASH("DLC_MP_H4_F_PEYES_2_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_1] Pink Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_1") CASE HASH("DLC_MP_H4_F_PEYES_2_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_2] Yellow Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_2") CASE HASH("DLC_MP_H4_F_PEYES_2_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_3] Red Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_3") CASE HASH("DLC_MP_H4_F_PEYES_2_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_4] White Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_4") CASE HASH("DLC_MP_H4_F_PEYES_2_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_5] Black Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_5") CASE HASH("DLC_MP_H4_F_PEYES_2_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_6] Pink Tinted Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_6") CASE HASH("DLC_MP_H4_F_PEYES_2_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_7] Blue Tinted Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_7") CASE HASH("DLC_MP_H4_F_PEYES_2_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_8] Green Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_8") CASE HASH("DLC_MP_H4_F_PEYES_2_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_2_9] Blue Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_9") CASE HASH("DLC_MP_H4_F_PEYES_2_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_210] Orange Checked Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_10") CASE HASH("DLC_MP_H4_F_PEYES_2_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_211] Green Tinted Round Shades CASE HASH("DLC_MP_H4_M_PEYES_2_11") CASE HASH("DLC_MP_H4_F_PEYES_2_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_2_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_0] Brown Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_0") CASE HASH("DLC_MP_H4_F_PEYES_3_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_1] Yellow Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_1") CASE HASH("DLC_MP_H4_F_PEYES_3_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_2] Black Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_2") CASE HASH("DLC_MP_H4_F_PEYES_3_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_3] Tortoiseshell Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_3") CASE HASH("DLC_MP_H4_F_PEYES_3_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_4] Green Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_4") CASE HASH("DLC_MP_H4_F_PEYES_3_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_5] Red Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_5") CASE HASH("DLC_MP_H4_F_PEYES_3_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_6] Pink Tinted Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_6") CASE HASH("DLC_MP_H4_F_PEYES_3_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_7] Blue Tinted Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_7") CASE HASH("DLC_MP_H4_F_PEYES_3_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_8] White Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_8") CASE HASH("DLC_MP_H4_F_PEYES_3_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_3_9] Pink Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_9") CASE HASH("DLC_MP_H4_F_PEYES_3_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_310] All White Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_10") CASE HASH("DLC_MP_H4_F_PEYES_3_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_PEY_311] Mono Square Shades CASE HASH("DLC_MP_H4_M_PEYES_3_11") CASE HASH("DLC_MP_H4_F_PEYES_3_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_ACCESSORIES_SUNGLASSES_3_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH SWITCH iNameHash // [CLO_H4M_B_4_0] Green Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_0") CASE HASH("DLC_MP_H4_F_BERD_4_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_1] Navy Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_1") CASE HASH("DLC_MP_H4_F_BERD_4_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_2] Cherry Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_2") CASE HASH("DLC_MP_H4_F_BERD_4_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_3] Orange Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_3") CASE HASH("DLC_MP_H4_F_BERD_4_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_4] Purple Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_4") CASE HASH("DLC_MP_H4_F_BERD_4_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_5] Dark Blue Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_5") CASE HASH("DLC_MP_H4_F_BERD_4_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_6] Lavender Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_6") CASE HASH("DLC_MP_H4_F_BERD_4_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_7] Yellow Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_7") CASE HASH("DLC_MP_H4_F_BERD_4_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_8] Pink Calavera Mask CASE HASH("DLC_MP_H4_M_BERD_4_8") CASE HASH("DLC_MP_H4_F_BERD_4_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_9] Neon Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_9") CASE HASH("DLC_MP_H4_F_BERD_4_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_10] Vibrant Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_10") CASE HASH("DLC_MP_H4_F_BERD_4_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_11] Pink Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_11") CASE HASH("DLC_MP_H4_F_BERD_4_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_12] Blue Stitch Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_12") CASE HASH("DLC_MP_H4_F_BERD_4_12") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_13] Neon Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_13") CASE HASH("DLC_MP_H4_F_BERD_4_13") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_14] Vibrant Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_14") CASE HASH("DLC_MP_H4_F_BERD_4_14") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_14) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_15] Pink Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_15") CASE HASH("DLC_MP_H4_F_BERD_4_15") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_15) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_16] Orange Skull Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_16") CASE HASH("DLC_MP_H4_F_BERD_4_16") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_16) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_17] Dark X-Ray Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_17") CASE HASH("DLC_MP_H4_F_BERD_4_17") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_17) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_18] Bright X-Ray Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_18") CASE HASH("DLC_MP_H4_F_BERD_4_18") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_18) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_H4M_B_4_19] Purple X-Ray Emissive Mask CASE HASH("DLC_MP_H4_M_BERD_4_19") CASE HASH("DLC_MP_H4_F_BERD_4_19") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIslandHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MASK_FULL_HEAD_19) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Summer 2020 CASE HASH("CU_SUM_CLOTHES") CASE HASH("CU_SUM_MASKS") SWITCH iNameHash #IF FEATURE_COPS_N_CROOKS // NOOSE CASE HASH("DLC_MP_SUM_M_OUTFIT_0") CASE HASH("DLC_MP_H3_M_PHEAD_4_0") CASE HASH("DLC_MP_H3_M_JBIB_6_0") CASE HASH("DLC_MP_H3_M_LEGS_1_0") CASE HASH("DLC_MP_H3_M_DECL_6_1") CASE HASH("DLC_MP_SUM_F_OUTFIT_0") CASE HASH("DLC_MP_H3_F_PHEAD_4_0") CASE HASH("DLC_MP_H3_F_JBIB_6_0") CASE HASH("DLC_MP_H3_F_LEGS_1_0") CASE HASH("DLC_MP_H3_F_DECL_6_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCnCRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_NOOSE_AWARD_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK #ENDIF // ALIEN CASE HASH("DLC_MP_SUM_M_OUTFIT_1") CASE HASH("DLC_MP_SUM_F_OUTFIT_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_ALIEN_AWARD_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // CAPTAIN CASE HASH("DLC_MP_SUM_M_OUTFIT_2") CASE HASH("DLC_MP_SUM_M_PHEAD_0_0") CASE HASH("DLC_MP_SUM_F_OUTFIT_2") CASE HASH("DLC_MP_SUM_F_PHEAD_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YACHT_AWARD_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_SUM_B_3_4] Green Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_4") CASE HASH("DLC_MP_SUM_F_BERD_3_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_GREEN_DOT_HACKER_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_SUM_B_3_5] Orange Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_5") CASE HASH("DLC_MP_SUM_F_BERD_3_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_ORANGE_DOT_HACKER_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_SUM_B_3_6] Blue Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_6") CASE HASH("DLC_MP_SUM_F_BERD_3_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_BLUE_DOT_HACKER_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // [CLO_SUM_B_3_7] Pink Dot Tech Mask CASE HASH("DLC_MP_SUM_M_BERD_3_7") CASE HASH("DLC_MP_SUM_F_BERD_3_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_PINK_DOT_HACKER_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Lemon Sports Track Pants CASE HASH("DLC_MP_SUM_M_LEGS_1_25") CASE HASH("DLC_MP_SUM_F_LEGS_2_25") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LEMON_SPORTS_TRACK_PANTS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Lemon Sports Track Top CASE HASH("DLC_MP_SUM_M_JBIB_0_25") CASE HASH("DLC_MP_SUM_F_JBIB_0_25") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LEMON_SPORTS_TRACK_TOP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* AXE OF FURY */ /************************/ SWITCH iNameHash // AXE MASTER CASE HASH("DLC_MP_SUM_F_JBIB_22_0") CASE HASH("DLC_MP_SUM_M_JBIB_13_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_ELEVEN_ELEVEN_TSHIRT) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_CRANK_IT_TO_ELEVEN_TSHIRT)) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // CRANK IT TO 11 CASE HASH("DLC_MP_SUM_F_JBIB_22_2") CASE HASH("DLC_MP_SUM_M_JBIB_13_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_CRANK_IT_TO_ELEVEN_TSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* QUB3D */ /************************/ SWITCH iNameHash // QUBITS CASE HASH("DLC_MP_SUM_F_JBIB_22_1") CASE HASH("DLC_MP_SUM_M_JBIB_13_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockSummer20RewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUIBITS) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_QUBITS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Casino Heist CASE HASH("CU_HEIST3_CLOTHES") CASE HASH("CU_HEIST3_MASKS") /************************/ /* HELD BACK */ /************************/ SWITCH iNameHash // RACE AND CHASE - SIGNS CASE HASH("DLC_MP_H3_F_JBIB_10_22") CASE HASH("DLC_MP_H3_M_JBIB_9_22") RETURN TRUE // LOCKED BREAK // RACE AND CHASE - FLAGS CASE HASH("DLC_MP_H3_F_JBIB_10_24") CASE HASH("DLC_MP_H3_M_JBIB_9_24") RETURN TRUE // LOCKED BREAK ENDSWITCH /************************/ /* YELLOW DOG */ /************************/ SWITCH iNameHash CASE HASH("DLC_MP_H3_F_JBIB_10_0") CASE HASH("DLC_MP_H3_F_JBIB_10_1") CASE HASH("DLC_MP_H3_M_JBIB_9_0") CASE HASH("DLC_MP_H3_M_JBIB_9_1") CASE HASH("DLC_MP_H3_F_FEET_0_0") CASE HASH("DLC_MP_H3_F_TEETH_1_0") CASE HASH("DLC_MP_H3_F_TEETH_2_0") CASE HASH("DLC_MP_H3_M_FEET_0_0") CASE HASH("DLC_MP_H3_M_TEETH_1_0") CASE HASH("DLC_MP_H3_M_TEETH_2_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT g_sMPTunables.bCH_CONE_CLOTHING_ENABLE AND NOT (g_sMPTunables.bCH_CONE_CLOTHING_OWNERS_ENABLE AND IS_CASINO_DECORATION_PURCHASED(CPM_VW_AW_LS_7a)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_DOG_WITH_CONE_TSHIRT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* CHRISTMAS PRESENT */ /************************/ SWITCH iNameHash // MINIGUN SWEATER CASE HASH("DLC_MP_H3_F_JBIB_16_0") CASE HASH("DLC_MP_H3_M_JBIB_12_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_MINIGUN_SWEATER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* BADLANDS REVENGE II */ /************************/ SWITCH iNameHash // DEADEYE CASE HASH("DLC_MP_H3_F_JBIB_10_18") CASE HASH("DLC_MP_H3_M_JBIB_9_18") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_DEADEYE) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK //SHARPSHOOTER CASE HASH("DLC_MP_H3_F_JBIB_10_15") CASE HASH("DLC_MP_H3_M_JBIB_9_15") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_SHARPSHOOTER) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_16") CASE HASH("DLC_MP_H3_F_JBIB_10_17") CASE HASH("DLC_MP_H3_F_JBIB_10_19") CASE HASH("DLC_MP_H3_M_JBIB_9_16") CASE HASH("DLC_MP_H3_M_JBIB_9_17") CASE HASH("DLC_MP_H3_M_JBIB_9_19") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* RACE AND CHASE */ /************************/ SWITCH iNameHash // RACE CHAMPION CASE HASH("DLC_MP_H3_F_JBIB_10_23") CASE HASH("DLC_MP_H3_M_JBIB_9_23") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_RACECHAMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_RACECHAMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_RACE_CHAMP) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK //BEAT THE TRAFFIC CASE HASH("DLC_MP_H3_F_JBIB_10_21") CASE HASH("DLC_MP_H3_M_JBIB_9_21") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAFFICAVOI) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_BEAT_TRAFFIC) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK //ALL WHEELS CASE HASH("DLC_MP_H3_F_JBIB_10_20") CASE HASH("DLC_MP_H3_M_JBIB_9_20") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_CANTCATCHBRA) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_ALL_WHEELS) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* THE WIZARDS RUIN */ /************************/ SWITCH iNameHash // COIN PURSE CASE HASH("DLC_MP_H3_F_JBIB_10_7") CASE HASH("DLC_MP_H3_M_JBIB_9_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_COINPURSE) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_COINPURSE, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_COIN_PURSE) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_8") CASE HASH("DLC_MP_H3_F_JBIB_10_9") CASE HASH("DLC_MP_H3_F_JBIB_10_10") CASE HASH("DLC_MP_H3_M_JBIB_9_8") CASE HASH("DLC_MP_H3_M_JBIB_9_9") CASE HASH("DLC_MP_H3_M_JBIB_9_10") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_WIZHARD) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_BATSWORD) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_BATSWORD, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_COINPURSE) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_COINPURSE, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* SPACE MONKEY 3 */ /************************/ SWITCH iNameHash // APE ESCAPE CASE HASH("DLC_MP_H3_F_JBIB_10_2") CASE HASH("DLC_MP_H3_M_JBIB_9_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_APEESCAPE) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_APE_ESCAPE) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // MONKEY MIND CASE HASH("DLC_MP_H3_F_JBIB_10_5") CASE HASH("DLC_MP_H3_M_JBIB_9_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEYKIND) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_MONKEY_MIND) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // ASTROCHIMP CASE HASH("DLC_MP_H3_F_JBIB_10_3") CASE HASH("DLC_MP_H3_M_JBIB_9_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_ASTROCHIMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_ASTROCHIMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_ASTRO_CHIMP) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_4") CASE HASH("DLC_MP_H3_F_JBIB_10_6") CASE HASH("DLC_MP_H3_M_JBIB_9_4") CASE HASH("DLC_MP_H3_M_JBIB_9_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_APEESCAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEYKIND) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_ASTROCHIMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_ASTROCHIMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /**************************/ /* DEFENDERS OF THE EARTH */ /**************************/ SWITCH iNameHash // AQUATIC APE CASE HASH("DLC_MP_H3_F_JBIB_10_11") CASE HASH("DLC_MP_H3_M_JBIB_9_11") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_AQUATIC_APE) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // KEEPING THE FAITH CASE HASH("DLC_MP_H3_F_JBIB_10_12") CASE HASH("DLC_MP_H3_M_JBIB_9_12") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_KEEPING_FAITH) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // MASTERFUL CASE HASH("DLC_MP_H3_F_JBIB_10_14") CASE HASH("DLC_MP_H3_M_JBIB_9_14") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_MASTERFUL) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_10_13") CASE HASH("DLC_MP_H3_M_JBIB_9_13") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_DEFENDERS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* LOVE PROFESSOR */ /************************/ SWITCH iNameHash // TRUE LOVE CASE HASH("DLC_MP_H3_F_JBIB_13_11") CASE HASH("DLC_MP_H3_F_JBIB_13_12") CASE HASH("DLC_MP_H3_M_JBIB_11_19") CASE HASH("DLC_MP_H3_M_JBIB_11_20") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRUELOVE) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_TRUELOVE) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // NEMESIS CASE HASH("DLC_MP_H3_F_JBIB_13_14") CASE HASH("DLC_MP_H3_M_JBIB_11_22") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_NEMESIS) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_NEMESIS) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // FRIENDZONED CASE HASH("DLC_MP_H3_F_JBIB_13_13") CASE HASH("DLC_MP_H3_M_JBIB_11_21") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_FRIENDZONED) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_FRIENDZONED) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // BONUS CASE HASH("DLC_MP_H3_F_JBIB_13_10") CASE HASH("DLC_MP_H3_M_JBIB_11_18") CASE HASH("DLC_MP_H3_F_JBIB_13_15") CASE HASH("DLC_MP_H3_M_JBIB_11_23") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRUELOVE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_NEMESIS) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_FRIENDZONED)) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_LOVE_PROF_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* ARCADE PROPERTY */ /************************/ SWITCH iNameHash // PIXEL PETE'S CASE HASH("DLC_MP_H3_F_JBIB_12_2") CASE HASH("DLC_MP_H3_M_JBIB_11_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_PIXEL_PETES) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // EIGHT-BIT CASE HASH("DLC_MP_H3_F_JBIB_12_3") CASE HASH("DLC_MP_H3_M_JBIB_11_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_EIGHT_BIT) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // WONDERLAND CASE HASH("DLC_MP_H3_F_JBIB_12_4") CASE HASH("DLC_MP_H3_M_JBIB_11_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_WONDERLAND) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // WAREHOUSE CASE HASH("DLC_MP_H3_F_JBIB_12_5") CASE HASH("DLC_MP_H3_M_JBIB_11_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_WAREHOUSE) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH /************************/ /* ARCADE CABINETS */ /************************/ SWITCH iNameHash // OWN ALL CASE HASH("DLC_MP_H3_F_JBIB_12_0") // Pixtro CASE HASH("DLC_MP_H3_F_JBIB_12_1") // Akedo CASE HASH("DLC_MP_H3_M_JBIB_11_0") CASE HASH("DLC_MP_H3_M_JBIB_11_1") IF NOT HAS_PLAYER_PURCHASED_ALL_ARCADE_MACHINES_IN_ARCADE_PROPERTY(FALSE, TRUE) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CABS_TSHIRT_OWN_ALL) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Casino clothes CASE HASH("CU_VINEWOOD_CLOTHES") CASE HASH("CU_VINEWOOD_MASKS") SWITCH iNameHash // Impotent Rage CASE HASH("DLC_MP_VWD_M_OUTFIT_IMPRAGE_0") CASE HASH("DLC_MP_VWD_M_BERD_0_0") CASE HASH("DLC_MP_VWD_M_TORSO_0_0") CASE HASH("DLC_MP_VWD_M_LEGS_0_0") CASE HASH("DLC_MP_VWD_M_FEET_0_0") CASE HASH("DLC_MP_VWD_M_SPECIAL_0_0") CASE HASH("DLC_MP_VWD_M_JBIB_1_0") CASE HASH("DLC_MP_VWD_M_HAIR_0_0") CASE HASH("DLC_MP_VWD_F_OUTFIT_IMPRAGE_0") CASE HASH("DLC_MP_VWD_F_BERD_0_0") CASE HASH("DLC_MP_VWD_F_TORSO_0_0") CASE HASH("DLC_MP_VWD_F_LEGS_0_0") CASE HASH("DLC_MP_VWD_F_FEET_0_0") CASE HASH("DLC_MP_VWD_F_SPECIAL_0_0") CASE HASH("DLC_MP_VWD_F_JBIB_1_0") CASE HASH("DLC_MP_VWD_F_HAIR_0_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_IMPOTANT_RAGE_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // High Roller CASE HASH("DLC_MP_VWD_M_OUTFIT_HIGHROLL_0") CASE HASH("DLC_MP_VWD_M_JBIB_2_2") CASE HASH("DLC_MP_VWD_M_JBIB_3_2") CASE HASH("DLC_MP_VWD_M_LEGS_1_1") CASE HASH("DLC_MP_VWD_M_SPECIAL_2_2") CASE HASH("DLC_MP_VWD_M_SPECIAL_3_2") CASE HASH("DLC_MP_VWD_M_SPECIAL_4_2") CASE HASH("DLC_MP_VWD_M_SPECIAL_5_2") CASE HASH("DLC_MP_VWD_F_OUTFIT_HIGHROLL_0") CASE HASH("DLC_MP_VWD_F_JBIB_19_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_HIGHROLLER_OUTFIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Casino Purchase - Silk Robes CASE HASH("DLC_MP_VWD_M_JBIB_20_4") CASE HASH("DLC_MP_VWD_F_JBIB_18_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT HAS_PLAYER_VIEWED_CASINO_PENTHOUSE_MOCAP(PLAYER_ID()) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK //Street Crimes Boxart Tee CASE HASH("DLC_MP_VWD_M_DECL_1_0") CASE HASH("DLC_MP_VWD_F_DECL_1_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_BOXART_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Action Tee CASE HASH("DLC_MP_VWD_M_DECL_1_1") CASE HASH("DLC_MP_VWD_F_DECL_1_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_UNTOUCHABLE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Bikers Tee CASE HASH("DLC_MP_VWD_M_DECL_1_2") CASE HASH("DLC_MP_VWD_F_DECL_1_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_THE_BIKERS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Hoods Tee CASE HASH("DLC_MP_VWD_M_DECL_1_3") CASE HASH("DLC_MP_VWD_F_DECL_1_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_THE_HOODS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Punks Tee CASE HASH("DLC_MP_VWD_M_DECL_1_4") CASE HASH("DLC_MP_VWD_F_DECL_1_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_THE_PUNKS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Yokels Tee CASE HASH("DLC_MP_VWD_M_DECL_1_5") CASE HASH("DLC_MP_VWD_F_DECL_1_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_THE_YOKELS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Logo Tee CASE HASH("DLC_MP_VWD_M_DECL_1_6") CASE HASH("DLC_MP_VWD_F_DECL_1_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_LOGO_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Claim What's Yours Tee CASE HASH("DLC_MP_VWD_M_DECL_1_7") CASE HASH("DLC_MP_VWD_F_DECL_1_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_CLAIM_WHATS_YOURS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Choose Your Side Tee CASE HASH("DLC_MP_VWD_M_DECL_1_8") CASE HASH("DLC_MP_VWD_F_DECL_1_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_CHOOSE_YOUR_SIDE_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade RON Tee CASE HASH("DLC_MP_VWD_M_DECL_1_9") CASE HASH("DLC_MP_VWD_F_DECL_1_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_HE_WHO_CONTROLS_THE_OIL) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Tour Tee CASE HASH("DLC_MP_VWD_M_DECL_1_10") CASE HASH("DLC_MP_VWD_F_DECL_1_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_FULL_MOON) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Logo Tee CASE HASH("DLC_MP_VWD_M_DECL_1_11") CASE HASH("DLC_MP_VWD_F_DECL_1_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_LOGO_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Mission I Tee CASE HASH("DLC_MP_VWD_M_DECL_1_12") CASE HASH("DLC_MP_VWD_F_DECL_1_12") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_I_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Mission II Tee CASE HASH("DLC_MP_VWD_M_DECL_1_13") CASE HASH("DLC_MP_VWD_F_DECL_1_13") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_II_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Mission IV Tee CASE HASH("DLC_MP_VWD_M_DECL_1_14") CASE HASH("DLC_MP_VWD_F_DECL_1_14") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_IV_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Mission III Tee CASE HASH("DLC_MP_VWD_M_DECL_1_15") CASE HASH("DLC_MP_VWD_F_DECL_1_15") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_MISSION_III_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Boxart Tee CASE HASH("DLC_MP_VWD_M_DECL_1_16") CASE HASH("DLC_MP_VWD_F_DECL_1_16") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_BOXART_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Invader Tee CASE HASH("DLC_MP_VWD_M_DECL_1_17") CASE HASH("DLC_MP_VWD_F_DECL_1_17") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_INVADER_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Suck Tee CASE HASH("DLC_MP_VWD_M_DECL_1_18") CASE HASH("DLC_MP_VWD_F_DECL_1_18") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_SUCK_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Jets Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_0") CASE HASH("DLC_MP_VWD_F_JBIB_21_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_JETS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Enemies Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_1") CASE HASH("DLC_MP_VWD_F_JBIB_21_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_UNNATURAL_SELECTION) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Gold Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_2") CASE HASH("DLC_MP_VWD_F_JBIB_21_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_GOLD_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Oil Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_3") CASE HASH("DLC_MP_VWD_F_JBIB_21_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_ENDLESS_OIL) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Hero Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_4") CASE HASH("DLC_MP_VWD_F_JBIB_21_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_HERO_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Color Gangs Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_5") CASE HASH("DLC_MP_VWD_F_JBIB_21_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_COLOR_GANGS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Green Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_6") CASE HASH("DLC_MP_VWD_F_JBIB_21_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_LIFE_SAVER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Invade and Persuade Barrels Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_7") CASE HASH("DLC_MP_VWD_F_JBIB_21_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_INVADE_AND_PERSUADE_BARRELS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Street Crimes Red Gangs Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_8") CASE HASH("DLC_MP_VWD_F_JBIB_21_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STREET_CRIMES_RED_GANGS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Street Crimes Icons Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_9") CASE HASH("DLC_MP_VWD_F_JBIB_21_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_WHITE_STREET_CRIMES_ICONS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Street Crimes Icons Tee CASE HASH("DLC_MP_VWD_M_JBIB_23_10") CASE HASH("DLC_MP_VWD_F_JBIB_21_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BLACK_STREET_CRIMES_ICONS_TEE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // X17 clothes CASE HASH("CU_XMAS6_CLOTHES") CASE HASH("CU_XMAS6_MASKS") CASE HASH("CU_ARENA_CLOTHES") SWITCH iNameHash // GREEN REINDEER LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_2") CASE HASH("DLC_MP_ARENA_M_BERD_0_18") CASE HASH("DLC_MP_ARENA_M_LEGS_4_18") CASE HASH("DLC_MP_ARENA_M_FEET_6_18") CASE HASH("DLC_MP_ARENA_M_JBIB_2_18") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_2") CASE HASH("DLC_MP_ARENA_F_BERD_0_18") CASE HASH("DLC_MP_ARENA_F_LEGS_4_18") CASE HASH("DLC_MP_ARENA_F_FEET_6_18") CASE HASH("DLC_MP_ARENA_F_JBIB_2_18") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_GREEN_REINDEER_LIGHTS_BODYSUIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // TRADITIONAL FESTIVE LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_1") CASE HASH("DLC_MP_ARENA_M_BERD_0_17") CASE HASH("DLC_MP_ARENA_M_LEGS_4_17") CASE HASH("DLC_MP_ARENA_M_FEET_6_17") CASE HASH("DLC_MP_ARENA_M_JBIB_2_17") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_1") CASE HASH("DLC_MP_ARENA_F_BERD_0_17") CASE HASH("DLC_MP_ARENA_F_LEGS_4_17") CASE HASH("DLC_MP_ARENA_F_FEET_6_17") CASE HASH("DLC_MP_ARENA_F_JBIB_2_17") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_TRADITIONAL_FESTIVE_LIGHTS_BODYSUIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // YELLOW REINDEER LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_0") CASE HASH("DLC_MP_ARENA_M_BERD_0_16") CASE HASH("DLC_MP_ARENA_M_LEGS_4_16") CASE HASH("DLC_MP_ARENA_M_FEET_6_16") CASE HASH("DLC_MP_ARENA_M_JBIB_2_16") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_0") CASE HASH("DLC_MP_ARENA_F_BERD_0_16") CASE HASH("DLC_MP_ARENA_F_LEGS_4_16") CASE HASH("DLC_MP_ARENA_F_FEET_6_16") CASE HASH("DLC_MP_ARENA_F_JBIB_2_16") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_YELLOW_REINDEER_LIGHTS_BODYSUIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // NEON FESTIVE LIGHTS BODYSUIT CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_3") CASE HASH("DLC_MP_ARENA_M_BERD_0_19") CASE HASH("DLC_MP_ARENA_M_LEGS_4_19") CASE HASH("DLC_MP_ARENA_M_FEET_6_19") CASE HASH("DLC_MP_ARENA_M_JBIB_2_19") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_3") CASE HASH("DLC_MP_ARENA_F_BERD_0_19") CASE HASH("DLC_MP_ARENA_F_LEGS_4_19") CASE HASH("DLC_MP_ARENA_F_FEET_6_19") CASE HASH("DLC_MP_ARENA_F_JBIB_2_19") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_XMAS2019_NEON_FESTIVE_LIGHTS_BODYSUIT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Peter race suit SWITCH iNameHash CASE HASH("DLC_MP_ARENA_M_OUTFIT_CHARACTERS_A_0") CASE HASH("DLC_MP_ARENA_M_LEGS_9_0") CASE HASH("DLC_MP_ARENA_M_FEET_12_0") CASE HASH("DLC_MP_ARENA_M_SPECIAL_5_0") CASE HASH("DLC_MP_ARENA_M_JBIB_12_0") CASE HASH("DLC_MP_ARENA_F_OUTFIT_CHARACTERS_A_0") CASE HASH("DLC_MP_ARENA_F_LEGS_9_0") CASE HASH("DLC_MP_ARENA_F_FEET_12_0") CASE HASH("DLC_MP_ARENA_F_SPECIAL_5_0") CASE HASH("DLC_MP_ARENA_F_JBIB_12_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT HAS_LOCAL_PLAYER_VIEWED_ARENA_MOCAP_SCENE_2() RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Time limited xmas items SWITCH iNameHash // Christmas sweaters CASE HASH("DLC_MP_ARENA_F_JBIB_16_0") CASE HASH("DLC_MP_ARENA_M_JBIB_16_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_AIMING_RETICULE_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_1") CASE HASH("DLC_MP_ARENA_M_JBIB_16_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_BLEEDER_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_2") CASE HASH("DLC_MP_ARENA_M_JBIB_16_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_BLEEDER_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_3") CASE HASH("DLC_MP_ARENA_M_JBIB_16_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_CLUCKING_BELL_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_4") CASE HASH("DLC_MP_ARENA_M_JBIB_16_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_CLUCKING_BELL_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_5") CASE HASH("DLC_MP_ARENA_M_JBIB_16_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_SLAYING_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_6") CASE HASH("DLC_MP_ARENA_M_JBIB_16_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_SLAYING_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_7") CASE HASH("DLC_MP_ARENA_M_JBIB_16_7") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_CHRISTMAS_DAY_GIFT_AWARDED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_8") CASE HASH("DLC_MP_ARENA_M_JBIB_16_8") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAIL_SANTA_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_9") CASE HASH("DLC_MP_ARENA_M_JBIB_16_9") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_NEW_YEARS_DAY_GIFT_AWARDED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_10") CASE HASH("DLC_MP_ARENA_M_JBIB_16_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_CHRISTMAS_EVE_GIFT_AWARDED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_11") CASE HASH("DLC_MP_ARENA_M_JBIB_16_11") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_2018_NEW_YEARS_EVE_GIFT_AWARDED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_12") CASE HASH("DLC_MP_ARENA_M_JBIB_16_12") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_MERRY_SPUNKMAS_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_F_JBIB_16_13") CASE HASH("DLC_MP_ARENA_M_JBIB_16_13") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLUE_ICE_COLD_JUMPER) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Morphsuits CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_0") CASE HASH("DLC_MP_ARENA_F_BERD_0_16") CASE HASH("DLC_MP_ARENA_F_LEGS_4_16") CASE HASH("DLC_MP_ARENA_F_FEET_6_16") CASE HASH("DLC_MP_ARENA_F_JBIB_2_16") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_1") CASE HASH("DLC_MP_ARENA_F_BERD_0_17") CASE HASH("DLC_MP_ARENA_F_LEGS_4_17") CASE HASH("DLC_MP_ARENA_F_FEET_6_17") CASE HASH("DLC_MP_ARENA_F_JBIB_2_17") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_2") CASE HASH("DLC_MP_ARENA_F_BERD_0_18") CASE HASH("DLC_MP_ARENA_F_LEGS_4_18") CASE HASH("DLC_MP_ARENA_F_FEET_6_18") CASE HASH("DLC_MP_ARENA_F_JBIB_2_18") CASE HASH("DLC_MP_ARENA_F_OUTFIT_MORPH_A_3") CASE HASH("DLC_MP_ARENA_F_BERD_0_19") CASE HASH("DLC_MP_ARENA_F_LEGS_4_19") CASE HASH("DLC_MP_ARENA_F_FEET_6_19") CASE HASH("DLC_MP_ARENA_F_JBIB_2_19") CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_0") CASE HASH("DLC_MP_ARENA_M_BERD_0_16") CASE HASH("DLC_MP_ARENA_M_LEGS_4_16") CASE HASH("DLC_MP_ARENA_M_FEET_6_16") CASE HASH("DLC_MP_ARENA_M_JBIB_2_16") CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_1") CASE HASH("DLC_MP_ARENA_M_BERD_0_17") CASE HASH("DLC_MP_ARENA_M_LEGS_4_17") CASE HASH("DLC_MP_ARENA_M_FEET_6_17") CASE HASH("DLC_MP_ARENA_M_JBIB_2_17") CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_2") CASE HASH("DLC_MP_ARENA_M_BERD_0_18") CASE HASH("DLC_MP_ARENA_M_LEGS_4_18") CASE HASH("DLC_MP_ARENA_M_FEET_6_18") CASE HASH("DLC_MP_ARENA_M_JBIB_2_18") CASE HASH("DLC_MP_ARENA_M_OUTFIT_MORPH_A_3") CASE HASH("DLC_MP_ARENA_M_BERD_0_19") CASE HASH("DLC_MP_ARENA_M_LEGS_4_19") CASE HASH("DLC_MP_ARENA_M_FEET_6_19") CASE HASH("DLC_MP_ARENA_M_JBIB_2_19") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF g_sMPTunables.bCHRISTMAS2018_CLOTHING RETURN FALSE // UNLOCKED ELSE RETURN TRUE // LOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_M_OUTFIT_EPSILON_0") CASE HASH("DLC_MP_ARENA_F_OUTFIT_EPSILON_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BEARING_TRUTH_TOILET_TIP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_ARENA_M_TEETH_0_0") CASE HASH("DLC_MP_ARENA_F_TEETH_0_0") CASE HASH("DLC_MP_ARENA_M_TEETH_1_0") CASE HASH("DLC_MP_ARENA_F_TEETH_1_0") CASE HASH("DLC_MP_ARENA_M_TEETH_2_0") CASE HASH("DLC_MP_ARENA_F_TEETH_2_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHASING_TRUTH_TOILET_TIP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // X17 clothes CASE HASH("CU_XMAS5_CLOTHES") CASE HASH("CU_XMAS5_MASKS") CASE HASH("CU_GANGOPS_CLOTHES") // Time limited xmas items SWITCH iNameHash // Christmas sweaters CASE HASH("DLC_MP_X17_M_JBIB_4_0") CASE HASH("DLC_MP_X17_M_JBIB_4_1") CASE HASH("DLC_MP_X17_M_JBIB_4_2") CASE HASH("DLC_MP_X17_M_JBIB_4_3") CASE HASH("DLC_MP_X17_M_JBIB_4_4") CASE HASH("DLC_MP_X17_M_JBIB_4_5") CASE HASH("DLC_MP_X17_M_JBIB_4_6") CASE HASH("DLC_MP_X17_M_JBIB_4_7") CASE HASH("DLC_MP_X17_M_JBIB_4_8") CASE HASH("DLC_MP_X17_M_JBIB_4_9") CASE HASH("DLC_MP_X17_F_JBIB_4_0") CASE HASH("DLC_MP_X17_F_JBIB_4_1") CASE HASH("DLC_MP_X17_F_JBIB_4_2") CASE HASH("DLC_MP_X17_F_JBIB_4_3") CASE HASH("DLC_MP_X17_F_JBIB_4_4") CASE HASH("DLC_MP_X17_F_JBIB_4_5") CASE HASH("DLC_MP_X17_F_JBIB_4_6") CASE HASH("DLC_MP_X17_F_JBIB_4_7") CASE HASH("DLC_MP_X17_F_JBIB_4_8") CASE HASH("DLC_MP_X17_F_JBIB_4_9") // Morphsuits CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_5") CASE HASH("DLC_MP_X17_M_BERD_2_5") CASE HASH("DLC_MP_X17_M_LEGS_1_5") CASE HASH("DLC_MP_X17_M_FEET_1_5") CASE HASH("DLC_MP_X17_M_JBIB_5_5") CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_6") CASE HASH("DLC_MP_X17_M_BERD_2_6") CASE HASH("DLC_MP_X17_M_LEGS_1_6") CASE HASH("DLC_MP_X17_M_FEET_1_6") CASE HASH("DLC_MP_X17_M_JBIB_5_6") CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_7") CASE HASH("DLC_MP_X17_M_BERD_2_7") CASE HASH("DLC_MP_X17_M_LEGS_1_7") CASE HASH("DLC_MP_X17_M_FEET_1_7") CASE HASH("DLC_MP_X17_M_JBIB_5_7") CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_8") CASE HASH("DLC_MP_X17_M_BERD_2_8") CASE HASH("DLC_MP_X17_M_LEGS_1_8") CASE HASH("DLC_MP_X17_M_FEET_1_8") CASE HASH("DLC_MP_X17_M_JBIB_5_8") CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_9") CASE HASH("DLC_MP_X17_M_BERD_2_9") CASE HASH("DLC_MP_X17_M_LEGS_1_9") CASE HASH("DLC_MP_X17_M_FEET_1_9") CASE HASH("DLC_MP_X17_M_JBIB_5_9") CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_10") CASE HASH("DLC_MP_X17_M_BERD_2_10") CASE HASH("DLC_MP_X17_M_LEGS_1_10") CASE HASH("DLC_MP_X17_M_FEET_1_10") CASE HASH("DLC_MP_X17_M_JBIB_5_10") CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_11") CASE HASH("DLC_MP_X17_M_BERD_2_11") CASE HASH("DLC_MP_X17_M_LEGS_1_11") CASE HASH("DLC_MP_X17_M_FEET_1_11") CASE HASH("DLC_MP_X17_M_JBIB_5_11") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_5") CASE HASH("DLC_MP_X17_F_BERD_2_5") CASE HASH("DLC_MP_X17_F_LEGS_1_5") CASE HASH("DLC_MP_X17_F_FEET_1_5") CASE HASH("DLC_MP_X17_F_JBIB_5_5") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_6") CASE HASH("DLC_MP_X17_F_BERD_2_6") CASE HASH("DLC_MP_X17_F_LEGS_1_6") CASE HASH("DLC_MP_X17_F_FEET_1_6") CASE HASH("DLC_MP_X17_F_JBIB_5_6") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_7") CASE HASH("DLC_MP_X17_F_BERD_2_7") CASE HASH("DLC_MP_X17_F_LEGS_1_7") CASE HASH("DLC_MP_X17_F_FEET_1_7") CASE HASH("DLC_MP_X17_F_JBIB_5_7") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_8") CASE HASH("DLC_MP_X17_F_BERD_2_8") CASE HASH("DLC_MP_X17_F_LEGS_1_8") CASE HASH("DLC_MP_X17_F_FEET_1_8") CASE HASH("DLC_MP_X17_F_JBIB_5_8") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_9") CASE HASH("DLC_MP_X17_F_BERD_2_9") CASE HASH("DLC_MP_X17_F_LEGS_1_9") CASE HASH("DLC_MP_X17_F_FEET_1_9") CASE HASH("DLC_MP_X17_F_JBIB_5_9") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_10") CASE HASH("DLC_MP_X17_F_BERD_2_10") CASE HASH("DLC_MP_X17_F_LEGS_1_10") CASE HASH("DLC_MP_X17_F_FEET_1_10") CASE HASH("DLC_MP_X17_F_JBIB_5_10") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_11") CASE HASH("DLC_MP_X17_F_BERD_2_11") CASE HASH("DLC_MP_X17_F_LEGS_1_11") CASE HASH("DLC_MP_X17_F_FEET_1_11") CASE HASH("DLC_MP_X17_F_JBIB_5_11") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF g_sMPTunables.bCHRISTMAS2017_CLOTHING RETURN FALSE // UNLOCKED ELSE RETURN TRUE // LOCKED ENDIF BREAK // Gingerbread Hockey CASE HASH("DLC_MP_X17_M_BERD_6_0") CASE HASH("DLC_MP_X17_M_BERD_6_1") CASE HASH("DLC_MP_X17_M_BERD_6_2") CASE HASH("DLC_MP_X17_M_BERD_6_3") CASE HASH("DLC_MP_X17_F_BERD_6_0") CASE HASH("DLC_MP_X17_F_BERD_6_1") CASE HASH("DLC_MP_X17_F_BERD_6_2") CASE HASH("DLC_MP_X17_F_BERD_6_3") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasMasks RETURN FALSE // UNLOCKED ENDIF #ENDIF IF g_sMPTunables.bXMAS2017_MASKS RETURN FALSE // UNLOCKED ELSE RETURN TRUE // LOCKED ENDIF BREAK ENDSWITCH // Gifted Morphsuits SWITCH iNameHash // Green Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_0") CASE HASH("DLC_MP_X17_M_BERD_2_0") CASE HASH("DLC_MP_X17_M_LEGS_1_0") CASE HASH("DLC_MP_X17_M_FEET_1_0") CASE HASH("DLC_MP_X17_M_JBIB_5_0") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_0") CASE HASH("DLC_MP_X17_F_BERD_2_0") CASE HASH("DLC_MP_X17_F_LEGS_1_0") CASE HASH("DLC_MP_X17_F_FEET_1_0") CASE HASH("DLC_MP_X17_F_JBIB_5_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_GREEN) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Orange Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_1") CASE HASH("DLC_MP_X17_M_BERD_2_1") CASE HASH("DLC_MP_X17_M_LEGS_1_1") CASE HASH("DLC_MP_X17_M_FEET_1_1") CASE HASH("DLC_MP_X17_M_JBIB_5_1") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_1") CASE HASH("DLC_MP_X17_F_BERD_2_1") CASE HASH("DLC_MP_X17_F_LEGS_1_1") CASE HASH("DLC_MP_X17_F_FEET_1_1") CASE HASH("DLC_MP_X17_F_JBIB_5_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_ORANGE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Blue Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_2") CASE HASH("DLC_MP_X17_M_BERD_2_2") CASE HASH("DLC_MP_X17_M_LEGS_1_2") CASE HASH("DLC_MP_X17_M_FEET_1_2") CASE HASH("DLC_MP_X17_M_JBIB_5_2") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_2") CASE HASH("DLC_MP_X17_F_BERD_2_2") CASE HASH("DLC_MP_X17_F_LEGS_1_2") CASE HASH("DLC_MP_X17_F_FEET_1_2") CASE HASH("DLC_MP_X17_F_JBIB_5_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_BLUE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Pink Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_3") CASE HASH("DLC_MP_X17_M_BERD_2_3") CASE HASH("DLC_MP_X17_M_LEGS_1_3") CASE HASH("DLC_MP_X17_M_FEET_1_3") CASE HASH("DLC_MP_X17_M_JBIB_5_3") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_3") CASE HASH("DLC_MP_X17_F_BERD_2_3") CASE HASH("DLC_MP_X17_F_LEGS_1_3") CASE HASH("DLC_MP_X17_F_FEET_1_3") CASE HASH("DLC_MP_X17_F_JBIB_5_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_PINK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Yellow Wireframe Bodysuit CASE HASH("DLC_MP_X17_M_OUTFIT_MORPH_4") CASE HASH("DLC_MP_X17_M_BERD_2_4") CASE HASH("DLC_MP_X17_M_LEGS_1_4") CASE HASH("DLC_MP_X17_M_FEET_1_4") CASE HASH("DLC_MP_X17_M_JBIB_5_4") CASE HASH("DLC_MP_X17_F_OUTFIT_MORPH_4") CASE HASH("DLC_MP_X17_F_BERD_2_4") CASE HASH("DLC_MP_X17_F_LEGS_1_4") CASE HASH("DLC_MP_X17_F_FEET_1_4") CASE HASH("DLC_MP_X17_F_JBIB_5_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MESSSAGEING_MORPHSUIT_YELLOW) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Gifted Krampus mask SWITCH iNameHash // Hideous Krampus CASE HASH("DLC_MP_X17_M_BERD_10_0") CASE HASH("DLC_MP_X17_F_BERD_10_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Fearsome Krampus CASE HASH("DLC_MP_X17_M_BERD_10_1") CASE HASH("DLC_MP_X17_F_BERD_10_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Odious Krampus CASE HASH("DLC_MP_X17_M_BERD_10_2") CASE HASH("DLC_MP_X17_F_BERD_10_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Heinous Krampus CASE HASH("DLC_MP_X17_M_BERD_10_3") CASE HASH("DLC_MP_X17_F_BERD_10_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KRAMPUS_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Gunrunning clothes CASE HASH("CU_GUNRUN_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockGunrunningRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF // R* Tops SWITCH iNameHash // Blue R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_0") CASE HASH("DLC_MP_GR_F_JBIB_25_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_BLUE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Red R* Class of '98 Crew CASE HASH("DLC_MP_GR_M_JBIB_19_1") CASE HASH("DLC_MP_GR_F_JBIB_25_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASS_OF_98_RED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // R* Thug Pocket Tee CASE HASH("DLC_MP_GR_M_JBIB_20_0") CASE HASH("DLC_MP_GR_F_JBIB_26_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_PATTERN_POCKET) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Gunrunning reward hoodies (t-shirts use overlays) SWITCH iNameHash // White Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_0") CASE HASH("DLC_MP_GR_F_DECL_5_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Hawk & Little Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_1") CASE HASH("DLC_MP_GR_F_DECL_5_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_2") CASE HASH("DLC_MP_GR_F_DECL_5_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Shrewsbury Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_3") CASE HASH("DLC_MP_GR_F_DECL_5_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_SHREWSBURY_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_4") CASE HASH("DLC_MP_GR_F_DECL_5_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Vom Feuer Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_5") CASE HASH("DLC_MP_GR_F_DECL_5_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_6") CASE HASH("DLC_MP_GR_F_DECL_5_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Coil Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_7") CASE HASH("DLC_MP_GR_F_DECL_5_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_8") CASE HASH("DLC_MP_GR_F_DECL_5_8") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Ammu-Nation Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_9") CASE HASH("DLC_MP_GR_F_DECL_5_9") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Warstock Hoodie CASE HASH("DLC_MP_GR_M_DECL_5_10") CASE HASH("DLC_MP_GR_F_DECL_5_10") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_WARSTOCK_HOODIE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Gunrunning reward hats SWITCH iNameHash // Red Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_0") CASE HASH("DLC_MP_GR_F_PHEAD_6_0") CASE HASH("DLC_MP_GR_M_PHEAD_7_0") CASE HASH("DLC_MP_GR_F_PHEAD_7_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RED_HAWK_AND_LITTLE_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Hawk & Little Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_1") CASE HASH("DLC_MP_GR_F_PHEAD_6_1") CASE HASH("DLC_MP_GR_M_PHEAD_7_1") CASE HASH("DLC_MP_GR_F_PHEAD_7_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_2") CASE HASH("DLC_MP_GR_F_PHEAD_6_2") CASE HASH("DLC_MP_GR_M_PHEAD_7_2") CASE HASH("DLC_MP_GR_F_PHEAD_7_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Shrewsbury Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_3") CASE HASH("DLC_MP_GR_F_PHEAD_6_3") CASE HASH("DLC_MP_GR_M_PHEAD_7_3") CASE HASH("DLC_MP_GR_F_PHEAD_7_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_4") CASE HASH("DLC_MP_GR_F_PHEAD_6_4") CASE HASH("DLC_MP_GR_M_PHEAD_7_4") CASE HASH("DLC_MP_GR_F_PHEAD_7_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_VOM_FEUER_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Vom Feuer Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_5") CASE HASH("DLC_MP_GR_F_PHEAD_6_5") CASE HASH("DLC_MP_GR_M_PHEAD_7_5") CASE HASH("DLC_MP_GR_F_PHEAD_7_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_VOM_FEUER_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Wine Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_6") CASE HASH("DLC_MP_GR_F_PHEAD_6_6") CASE HASH("DLC_MP_GR_M_PHEAD_7_6") CASE HASH("DLC_MP_GR_F_PHEAD_7_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WINE_COIL_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Coil Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_7") CASE HASH("DLC_MP_GR_F_PHEAD_6_7") CASE HASH("DLC_MP_GR_M_PHEAD_7_7") CASE HASH("DLC_MP_GR_F_PHEAD_7_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_8") CASE HASH("DLC_MP_GR_F_PHEAD_6_8") CASE HASH("DLC_MP_GR_M_PHEAD_7_8") CASE HASH("DLC_MP_GR_F_PHEAD_7_8") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Red Ammu-Nation Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_9") CASE HASH("DLC_MP_GR_F_PHEAD_6_9") CASE HASH("DLC_MP_GR_M_PHEAD_7_9") CASE HASH("DLC_MP_GR_F_PHEAD_7_9") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Warstock Cap CASE HASH("DLC_MP_GR_M_PHEAD_6_10") CASE HASH("DLC_MP_GR_F_PHEAD_6_10") CASE HASH("DLC_MP_GR_M_PHEAD_7_10") CASE HASH("DLC_MP_GR_F_PHEAD_7_10") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WARSTOCK_CAP) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Import/Export clothes CASE HASH("CU_IMPEXP_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIERewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF // Unicorn Mask SWITCH iNameHash CASE HASH("DLC_MP_IE_M_BERD_7_0") CASE HASH("DLC_MP_IE_F_BERD_7_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_118) RETURN FALSE ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_UNICORN_MASK_UNLOCKED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IE_F_JBIB_17_4") CASE HASH("DLC_MP_IE_F_JBIB_14_4") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_48) RETURN FALSE ENDIF BREAK ENDSWITCH // Morph suits. SWITCH iNameHash CASE HASH("DLC_MP_IE_M_OUTFIT_0") CASE HASH("DLC_MP_IE_M_BERD_11_0") CASE HASH("DLC_MP_IE_M_LEGS_7_0") CASE HASH("DLC_MP_IE_M_FEET_1_0") CASE HASH("DLC_MP_IE_M_JBIB_15_0") IF NOT g_sMPTunables.bENABLE_2016_OUTFITS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_IE_M_OUTFIT_0"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IE_M_OUTFIT_1") CASE HASH("DLC_MP_IE_M_BERD_11_1") CASE HASH("DLC_MP_IE_M_LEGS_7_1") CASE HASH("DLC_MP_IE_M_FEET_1_1") CASE HASH("DLC_MP_IE_M_JBIB_15_1") IF NOT g_sMPTunables.bENABLE_2016_OUTFITS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_IE_M_OUTFIT_1"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IE_M_OUTFIT_2") CASE HASH("DLC_MP_IE_M_BERD_11_2") CASE HASH("DLC_MP_IE_M_LEGS_7_2") CASE HASH("DLC_MP_IE_M_FEET_1_2") CASE HASH("DLC_MP_IE_M_JBIB_15_2") IF NOT g_sMPTunables.bENABLE_2016_OUTFITS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_IE_M_OUTFIT_2"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IE_F_OUTFIT_0") CASE HASH("DLC_MP_IE_F_BERD_11_0") CASE HASH("DLC_MP_IE_F_LEGS_7_0") CASE HASH("DLC_MP_IE_F_FEET_1_0") CASE HASH("DLC_MP_IE_F_JBIB_15_0") IF NOT g_sMPTunables.bENABLE_2016_OUTFITS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_IE_F_OUTFIT_0"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IE_F_OUTFIT_1") CASE HASH("DLC_MP_IE_F_BERD_11_1") CASE HASH("DLC_MP_IE_F_LEGS_7_1") CASE HASH("DLC_MP_IE_F_FEET_1_1") CASE HASH("DLC_MP_IE_F_JBIB_15_1") IF NOT g_sMPTunables.bENABLE_2016_OUTFITS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_IE_F_OUTFIT_1"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IE_F_OUTFIT_2") CASE HASH("DLC_MP_IE_F_BERD_11_2") CASE HASH("DLC_MP_IE_F_LEGS_7_2") CASE HASH("DLC_MP_IE_F_FEET_1_2") CASE HASH("DLC_MP_IE_F_JBIB_15_2") IF NOT g_sMPTunables.bENABLE_2016_OUTFITS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_IE_F_OUTFIT_2"), PED_COMPONENT_ACQUIRED_SLOT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Biker clothes CASE HASH("CU_BIKER_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockBikerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF // Tron style outfits SWITCH iNameHash CASE HASH("DLC_MP_BIKER_M_OUTFIT_0") CASE HASH("DLC_MP_BIKER_M_OUTFIT_1") CASE HASH("DLC_MP_BIKER_M_OUTFIT_2") CASE HASH("DLC_MP_BIKER_M_OUTFIT_3") CASE HASH("DLC_MP_BIKER_M_OUTFIT_4") CASE HASH("DLC_MP_BIKER_M_OUTFIT_5") CASE HASH("DLC_MP_BIKER_M_OUTFIT_6") CASE HASH("DLC_MP_BIKER_M_OUTFIT_7") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_0") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_1") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_2") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_3") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_4") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_5") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_6") CASE HASH("DLC_MP_BIKER_M_PHEAD_8_9") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_0") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_1") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_2") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_3") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_4") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_5") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_6") CASE HASH("DLC_MP_BIKER_M_PHEAD_9_9") CASE HASH("DLC_MP_BIKER_F_OUTFIT_0") CASE HASH("DLC_MP_BIKER_F_OUTFIT_1") CASE HASH("DLC_MP_BIKER_F_OUTFIT_2") CASE HASH("DLC_MP_BIKER_F_OUTFIT_3") CASE HASH("DLC_MP_BIKER_F_OUTFIT_4") CASE HASH("DLC_MP_BIKER_F_OUTFIT_5") CASE HASH("DLC_MP_BIKER_F_OUTFIT_6") CASE HASH("DLC_MP_BIKER_F_OUTFIT_7") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_0") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_1") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_2") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_3") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_4") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_5") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_6") CASE HASH("DLC_MP_BIKER_F_PHEAD_8_9") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_0") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_1") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_2") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_3") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_4") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_5") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_6") CASE HASH("DLC_MP_BIKER_F_PHEAD_9_9") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DEADLINE_RWD_CLOTHES) AND g_sMPTunables.iDEADLINE_CLOTHING_UNLOCK_PLAYS != 0 RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Biker reward hoodies (t-shirts use overlays) SWITCH iNameHash // Black Steel Horse Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_0") CASE HASH("DLC_MP_BIKER_F_DECL_0_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_STEEL_HORSE_LOGO_BLACK) AND NOT g_sMPTunables.bHOODIE_STEEL_HORSE_LOGO_BLACK RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Steel Horse Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_1") CASE HASH("DLC_MP_BIKER_F_DECL_0_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_STEEL_HORSE_LOGO_WHITE) AND NOT g_sMPTunables.bHOODIE_STEEL_HORSE_LOGO_WHITE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Western Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_2") CASE HASH("DLC_MP_BIKER_F_DECL_0_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_WESTERN_LOGO_BLACK) AND NOT g_sMPTunables.bHOODIE_WESTERN_LOGO_BLACK RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Western Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_3") CASE HASH("DLC_MP_BIKER_F_DECL_0_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_WESTERN_LOGO_WHITE) AND NOT g_sMPTunables.bHOODIE_WESTERN_LOGO_WHITE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White Nagasaki Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_4") CASE HASH("DLC_MP_BIKER_F_DECL_0_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_NAGASAKI_WHITE_STAR_LOGO_WHITE) AND NOT g_sMPTunables.bHOODIE_NAGASAKI_WHITE_STAR_LOGO_WHITE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // White and Red Nagasaki Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_5") CASE HASH("DLC_MP_BIKER_F_DECL_0_5") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_107) RETURN FALSE ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_NAGASAKI_RED_STAR_LOGO_WHITE) AND NOT g_sMPTunables.bHOODIE_NAGASAKI_RED_STAR_LOGO_WHITE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Nagasaki Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_6") CASE HASH("DLC_MP_BIKER_F_DECL_0_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_NAGASAKI_WHITE_STAR_LOGO_BLACK) AND NOT g_sMPTunables.bHOODIE_NAGASAKI_WHITE_STAR_LOGO_BLACK RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Purple Helmets Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_7") CASE HASH("DLC_MP_BIKER_F_DECL_0_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_PURPLE_HELMET_LOGO) AND NOT g_sMPTunables.bHOODIE_PURPLE_HELMET_LOGO RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Black Principe Hoodie CASE HASH("DLC_MP_BIKER_M_DECL_0_8") CASE HASH("DLC_MP_BIKER_F_DECL_0_8") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HOODIE_PRINCIPLE_LOGO) AND NOT g_sMPTunables.bHOODIE_PRINCIPLE_LOGO RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Stunt clothes CASE HASH("CU_STUNT_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockStuntRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iNameHash CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_0") // White Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_11_0") // CASE HASH("DLC_MP_STUNT_M_PHEAD_12_0") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_0") // White Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_11_0") // CASE HASH("DLC_MP_STUNT_F_PHEAD_12_0") // IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_WHITE) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_WHITE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_1") // Blue Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_11_1") // CASE HASH("DLC_MP_STUNT_M_PHEAD_12_1") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_1") // Blue Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_11_1") // CASE HASH("DLC_MP_STUNT_F_PHEAD_12_1") // IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_8) RETURN FALSE ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_BLUE) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_BLUE RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_2") // Red Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_11_2") // CASE HASH("DLC_MP_STUNT_M_PHEAD_12_2") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_2") // Red Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_11_2") // CASE HASH("DLC_MP_STUNT_F_PHEAD_12_2") // IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_RED) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_RED RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_3") // Black Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_11_3") // CASE HASH("DLC_MP_STUNT_M_PHEAD_12_3") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_3") // Black Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_11_3") // CASE HASH("DLC_MP_STUNT_F_PHEAD_12_3") // IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_BLACK) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_BLACK RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_4") // Pink Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_11_4") // CASE HASH("DLC_MP_STUNT_M_PHEAD_12_4") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_4") // Pink Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_11_4") // CASE HASH("DLC_MP_STUNT_F_PHEAD_12_4") // IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_PINK) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_PINK RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_5") // Gold Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_13_0") // CASE HASH("DLC_MP_STUNT_M_PHEAD_14_0") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_5") // Gold Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_13_0") // CASE HASH("DLC_MP_STUNT_F_PHEAD_14_0") // IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_GOLD) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_GOLD RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_STUNT_M_OUTFIT_E_6") // Silver Jock Cranley Suit CASE HASH("DLC_MP_STUNT_M_PHEAD_13_1") // CASE HASH("DLC_MP_STUNT_M_PHEAD_14_1") // CASE HASH("DLC_MP_STUNT_F_OUTFIT_E_6") // Silver Jock Cranley Suit CASE HASH("DLC_MP_STUNT_F_PHEAD_13_1") // CASE HASH("DLC_MP_STUNT_F_PHEAD_14_1") // IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_JUMPSUIT_SILVER) AND NOT g_sMPTunables.bAVAILABLE_PURCHASE_JUMPSUIT_SILVER RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Executive clothes CASE HASH("CU_EXE_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockExecutiveRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iNameHash // Pyjamas CASE HASH("DLC_MP_EXEC_F_JBIB_15_0") CASE HASH("DLC_MP_EXEC_F_LEGS_1_0") CASE HASH("DLC_MP_EXEC_M_JBIB_15_0") CASE HASH("DLC_MP_EXEC_M_LEGS_1_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_1") CASE HASH("DLC_MP_EXEC_F_LEGS_1_1") CASE HASH("DLC_MP_EXEC_M_JBIB_15_1") CASE HASH("DLC_MP_EXEC_M_LEGS_1_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_2") CASE HASH("DLC_MP_EXEC_F_LEGS_1_2") CASE HASH("DLC_MP_EXEC_M_JBIB_15_2") CASE HASH("DLC_MP_EXEC_M_LEGS_1_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_3") CASE HASH("DLC_MP_EXEC_F_LEGS_1_3") CASE HASH("DLC_MP_EXEC_M_JBIB_15_3") CASE HASH("DLC_MP_EXEC_M_LEGS_1_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_4") CASE HASH("DLC_MP_EXEC_F_LEGS_1_4") CASE HASH("DLC_MP_EXEC_M_JBIB_15_4") CASE HASH("DLC_MP_EXEC_M_LEGS_1_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_5") CASE HASH("DLC_MP_EXEC_F_LEGS_1_5") CASE HASH("DLC_MP_EXEC_M_JBIB_15_5") CASE HASH("DLC_MP_EXEC_M_LEGS_1_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_5) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PYJAMA_BLUE_CHECK_UNLOCKED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_6") CASE HASH("DLC_MP_EXEC_F_LEGS_1_6") CASE HASH("DLC_MP_EXEC_M_JBIB_15_6") CASE HASH("DLC_MP_EXEC_M_LEGS_1_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_7") CASE HASH("DLC_MP_EXEC_F_LEGS_1_7") CASE HASH("DLC_MP_EXEC_M_JBIB_15_7") CASE HASH("DLC_MP_EXEC_M_LEGS_1_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_7) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PYJAMA_WHITE_GRAPHIC_UNLOCKED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_8") CASE HASH("DLC_MP_EXEC_F_LEGS_1_8") CASE HASH("DLC_MP_EXEC_M_JBIB_15_8") CASE HASH("DLC_MP_EXEC_M_LEGS_1_8") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_9") CASE HASH("DLC_MP_EXEC_F_LEGS_1_9") CASE HASH("DLC_MP_EXEC_M_JBIB_15_9") CASE HASH("DLC_MP_EXEC_M_LEGS_1_9") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_10") CASE HASH("DLC_MP_EXEC_F_LEGS_1_10") CASE HASH("DLC_MP_EXEC_M_JBIB_15_10") CASE HASH("DLC_MP_EXEC_M_LEGS_1_10") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_11") CASE HASH("DLC_MP_EXEC_F_LEGS_1_11") CASE HASH("DLC_MP_EXEC_M_JBIB_15_11") CASE HASH("DLC_MP_EXEC_M_LEGS_1_11") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_12") CASE HASH("DLC_MP_EXEC_F_LEGS_1_12") CASE HASH("DLC_MP_EXEC_M_JBIB_15_12") CASE HASH("DLC_MP_EXEC_M_LEGS_1_12") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_15_13") CASE HASH("DLC_MP_EXEC_F_LEGS_1_13") CASE HASH("DLC_MP_EXEC_M_JBIB_15_13") CASE HASH("DLC_MP_EXEC_M_LEGS_1_13") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTPYJAMAS_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK // Smoking jackets CASE HASH("DLC_MP_EXEC_F_JBIB_16_0") CASE HASH("DLC_MP_EXEC_M_JBIB_16_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_0) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_1") CASE HASH("DLC_MP_EXEC_M_JBIB_16_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_2") CASE HASH("DLC_MP_EXEC_M_JBIB_16_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_3") CASE HASH("DLC_MP_EXEC_M_JBIB_16_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_4") CASE HASH("DLC_MP_EXEC_M_JBIB_16_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_5") CASE HASH("DLC_MP_EXEC_M_JBIB_16_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_6") CASE HASH("DLC_MP_EXEC_M_JBIB_16_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_7") CASE HASH("DLC_MP_EXEC_M_JBIB_16_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_7) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_8") CASE HASH("DLC_MP_EXEC_M_JBIB_16_8") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_8) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_9") CASE HASH("DLC_MP_EXEC_M_JBIB_16_9") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_9) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_10") CASE HASH("DLC_MP_EXEC_M_JBIB_16_10") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_10) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_11") CASE HASH("DLC_MP_EXEC_M_JBIB_16_11") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_11) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_12") CASE HASH("DLC_MP_EXEC_M_JBIB_16_12") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_12) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_EXEC_F_JBIB_16_13") CASE HASH("DLC_MP_EXEC_M_JBIB_16_13") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_EVENTSMOKINGJACKET_13) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // Lowrider clothes CASE HASH("CU_LOW_CLOTHES") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLowriderRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF // Award caps SWITCH iNameHash CASE HASH("DLC_MP_LOW_F_PHEAD_1_0") CASE HASH("DLC_MP_LOW_M_PHEAD_1_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_MAGNETICS_SCRIPT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_1") CASE HASH("DLC_MP_LOW_M_PHEAD_1_1") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_MAGNETICS_BLOCK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_2") CASE HASH("DLC_MP_LOW_M_PHEAD_1_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_LOW_SANTOS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_3") CASE HASH("DLC_MP_LOW_M_PHEAD_1_3") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_BOARS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_4") CASE HASH("DLC_MP_LOW_M_PHEAD_1_4") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_BENNYS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_5") CASE HASH("DLC_MP_LOW_M_PHEAD_1_5") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_WESTSIDE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_6") CASE HASH("DLC_MP_LOW_M_PHEAD_1_6") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_EASTSIDE) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_7") CASE HASH("DLC_MP_LOW_M_PHEAD_1_7") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_STRAWBERRY) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_8") CASE HASH("DLC_MP_LOW_M_PHEAD_1_8") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_SA) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_LOW_F_PHEAD_1_9") CASE HASH("DLC_MP_LOW_M_PHEAD_1_9") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_HATS_DAVIS) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH BREAK // HTB not available unless player is on the mission CASE HASH("CU_REPLAY_CLOTHES") RETURN TRUE // LOCKED BREAK // HTB not available unless player is on the mission CASE HASH("CU_BEAST_CLOTHES") RETURN TRUE // LOCKED BREAK // Heist items not available unless player is on the mission CASE HASH("CU_HEIST_CLOTHES") RETURN TRUE // LOCKED BREAK // All Christmas items get removed when the lock is set CASE HASH("CU_XMAS_CLOTHES") CASE HASH("CU_XMAS2_CLOTHES") CASE HASH("CU_XMAS3_CLOTHES") CASE HASH("CU_XMAS4_CLOTHES") // Santa costumes. SWITCH iNameHash CASE HASH("DLC_MP_XMAS3_M_JBIB_0_0") CASE HASH("DLC_MP_XMAS3_M_JBIB_0_1") CASE HASH("DLC_MP_XMAS3_M_JBIB_0_2") CASE HASH("DLC_MP_XMAS3_M_FEET_0_0") CASE HASH("DLC_MP_XMAS3_M_LEGS_0_0") CASE HASH("DLC_MP_XMAS3_M_LEGS_0_1") CASE HASH("DLC_MP_XMAS3_M_LEGS_0_2") CASE HASH("DLC_MP_XMAS3_F_JBIB_0_0") CASE HASH("DLC_MP_XMAS3_F_JBIB_0_1") CASE HASH("DLC_MP_XMAS3_F_JBIB_0_2") CASE HASH("DLC_MP_XMAS3_F_FEET_0_0") CASE HASH("DLC_MP_XMAS3_F_LEGS_0_0") CASE HASH("DLC_MP_XMAS3_F_LEGS_0_1") CASE HASH("DLC_MP_XMAS3_F_LEGS_0_2") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF g_sMPTunables.bXMAS2015_COSTUME RETURN FALSE // UNLOCKED ELSE RETURN TRUE // LOCKED ENDIF BREAK ENDSWITCH // Gift Pyjamas SWITCH iNameHash CASE HASH("DLC_MP_XMAS3_F_JBIB_1_0") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_0") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PYJAMA_RED_CHECK_UNLOCKED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_XMAS3_F_JBIB_1_1") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_1") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PYJAMA_NAVY_CHECK_UNLOCKED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_XMAS3_F_JBIB_1_2") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_2") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PYJAMA_BLACK_CHECK_UNLOCKED) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Pyjamas SWITCH iNameHash CASE HASH("DLC_MP_XMAS3_M_JBIB_1_3") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_4") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_5") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_6") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_7") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_8") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_9") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_10") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_11") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_12") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_13") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_14") CASE HASH("DLC_MP_XMAS3_M_JBIB_1_15") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_3") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_4") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_5") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_6") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_7") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_8") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_9") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_10") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_11") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_12") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_13") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_14") CASE HASH("DLC_MP_XMAS3_F_JBIB_1_15") #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF g_sMPTunables.bXMAS2015_PYJAMAS RETURN FALSE // UNLOCKED ELSE RETURN TRUE // LOCKED ENDIF BREAK ENDSWITCH // Naught hat is given to players during Christmas Event. SWITCH iNameHash CASE HASH("DLC_MP_XMAS2_F_PHEAD_4_0") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_0") CASE HASH("DLC_MP_XMAS2_M_PHEAD_4_0") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockNaughtyHat RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_NAUGHTY_HAT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Nice hat is given to players during Christmas Event. SWITCH iNameHash CASE HASH("DLC_MP_XMAS2_F_PHEAD_4_3") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_3") CASE HASH("DLC_MP_XMAS2_M_PHEAD_4_3") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockNiceHat RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_NICE_HAT) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasClothes RETURN FALSE // UNLOCKED ENDIF #ENDIF IF iLockHash = HASH("CU_XMAS4_CLOTHES") IF NOT g_sMPTunables.bCHRISTMAS2016_CLOTHING RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF ELSE IF g_sMPTunables.bDisable_Christmas_Clothing RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF ENDIF BREAK CASE HASH("CU_XMAS2_MASKS") CASE HASH("CU_XMAS3_MASKS") CASE HASH("CU_XMAS4_MASKS") // Abominable snowman is given to players during a Christmas Event. SWITCH iNameHash CASE HASH("DLC_MP_XMAS3_M_BERD_10_0") CASE HASH("DLC_MP_XMAS3_F_BERD_10_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockAbominableSnowmanMask RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_ABOMINABLE_SNOWMAN_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH // Stocking mask is given to player to keep if they play during Christmas Event. SWITCH iNameHash CASE HASH("DLC_MP_XMAS2_M_BERD_1_0") CASE HASH("DLC_MP_XMAS2_F_BERD_1_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_STOCKING_MASK) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH IF iLockHash = HASH("CU_XMAS2_MASKS") SWITCH iNameHash CASE HASH("DLC_MP_XMAS2_M_BERD_2_0") CASE HASH("DLC_MP_XMAS2_F_BERD_2_0") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_119) RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH ENDIF #IF IS_DEBUG_BUILD IF g_bDebugAllowChristmasMasks RETURN FALSE // UNLOCKED ENDIF #ENDIF IF iLockHash = HASH("CU_XMAS4_MASKS") IF NOT g_sMPTunables.bXMAS2016_MASKS RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF ELIF iLockHash != HASH("CU_XMAS3_MASKS") IF g_sMPTunables.bDisable_Christmas_Masks RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF ELSE IF NOT g_sMPTunables.bXMAS2015_MASKS RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF ENDIF BREAK // All Valentines items get removed when the lock is set unless the player has purchased the item CASE HASH("CU_VAL_CLOTHES") // Fix for bug #1752939 - The High Life Update has replaced 3 valentines tops with another version that shows less skin so we need to block them IF IS_MP_BUSINESS_2_PACK_PRESENT() SWITCH iNameHash CASE HASH("DLC_MP_VAL_F_JBIB2_0") CASE HASH("DLC_MP_VAL_F_JBIB2_1") CASE HASH("DLC_MP_VAL_F_JBIB2_2") CASE HASH("DLC_MP_VAL_F_ACCS0_0") CASE HASH("DLC_MP_VAL_F_ACCS0_1") CASE HASH("DLC_MP_VAL_F_ACCS0_2") CASE HASH("DLC_MP_VAL_F_ACCS1_0") CASE HASH("DLC_MP_VAL_F_ACCS1_1") CASE HASH("DLC_MP_VAL_F_ACCS1_2") RETURN TRUE // LOCKED BREAK ENDSWITCH ENDIF SWITCH iNameHash CASE HASH("DLC_MP_VAL_M_BERD0_0") CASE HASH("DLC_MP_VAL_M_BERD0_1") CASE HASH("DLC_MP_VAL_M_BERD0_2") CASE HASH("DLC_MP_VAL_M_BERD1_0") CASE HASH("DLC_MP_VAL_M_BERD1_1") CASE HASH("DLC_MP_VAL_M_BERD1_2") CASE HASH("DLC_MP_VAL_M_BERD2_0") CASE HASH("DLC_MP_VAL_F_BERD0_0") CASE HASH("DLC_MP_VAL_F_BERD0_1") CASE HASH("DLC_MP_VAL_F_BERD0_2") CASE HASH("DLC_MP_VAL_F_BERD1_0") CASE HASH("DLC_MP_VAL_F_BERD1_1") CASE HASH("DLC_MP_VAL_F_BERD1_2") CASE HASH("DLC_MP_VAL_F_BERD2_0") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT g_sMPTunables.bTURN_ON_VALENTINE_MASKS #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowValentinesItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH IF NOT g_sMPTunables.bturnonvalentinesevent AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(eType)) // We MUST carry out tattoo unlock checks separately. AND NOT g_sMPTunables.bTURN_ON_VALENTINE_CLOTHING #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowValentinesItems #ENDIF RETURN TRUE // LOCKED ENDIF BREAK // All Valentines2016 items get removed when the lock is set unless the player has purchased the item CASE HASH("CU_VAL2_CLOTHES") IF NOT g_sMPTunables.bTURN_ON_VALENTINE_2016_CLOTHING AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(eType)) // We MUST carry out tattoo unlock checks separately. #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowValentines2016Items #ENDIF RETURN TRUE // LOCKED ENDIF BREAK // All Independence Day items get removed when the lock is set unless the player has purchased the item CASE HASH("CU_INDI_CLOTHES") // Special checks for Independance Day award items. SWITCH iNameHash CASE HASH("DLC_MP_IND_F_PHEAD_6_0") CASE HASH("DLC_MP_IND_M_PHEAD_6_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_1) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_1") CASE HASH("DLC_MP_IND_M_PHEAD_6_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_2) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_2") CASE HASH("DLC_MP_IND_M_PHEAD_6_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF iNameHash = HASH("DLC_MP_IND_F_PHEAD_6_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_116) RETURN FALSE ENDIF ENDIF IF iNameHash = HASH("DLC_MP_IND_M_PHEAD_6_2") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_117) RETURN FALSE ENDIF ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_3) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_3") CASE HASH("DLC_MP_IND_M_PHEAD_6_3") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_4) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_4") CASE HASH("DLC_MP_IND_M_PHEAD_6_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_5) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_PHEAD_6_5") CASE HASH("DLC_MP_IND_M_PHEAD_6_5") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_BEER_HAT_6) RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_HAIR0_0") CASE HASH("DLC_MP_IND_F_HAIR0_1") CASE HASH("DLC_MP_IND_F_HAIR0_2") CASE HASH("DLC_MP_IND_F_HAIR0_3") CASE HASH("DLC_MP_IND_F_HAIR0_4") CASE HASH("DLC_MP_IND_M_HAIR0_0") CASE HASH("DLC_MP_IND_M_HAIR0_1") CASE HASH("DLC_MP_IND_M_HAIR0_2") CASE HASH("DLC_MP_IND_M_HAIR0_3") CASE HASH("DLC_MP_IND_M_HAIR0_4") IF NOT g_sMPTunables.btoggleactivateIndependencepack AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(eType)) // We MUST carry out tattoo unlock checks separately. AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_PURCHASED_MULLET) #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowIndependenceItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK CASE HASH("DLC_MP_IND_F_BERD_0_0") CASE HASH("DLC_MP_IND_F_BERD_0_1") CASE HASH("DLC_MP_IND_F_BERD_1_0") CASE HASH("DLC_MP_IND_F_BERD_1_1") CASE HASH("DLC_MP_IND_F_BERD_2_0") CASE HASH("DLC_MP_IND_F_BERD_2_1") CASE HASH("DLC_MP_IND_F_BERD_3_0") CASE HASH("DLC_MP_IND_F_BERD_3_1") CASE HASH("DLC_MP_IND_F_BERD_4_0") CASE HASH("DLC_MP_IND_F_BERD_4_1") CASE HASH("DLC_MP_IND_F_BERD_5_0") CASE HASH("DLC_MP_IND_F_BERD_5_1") CASE HASH("DLC_MP_IND_M_BERD_0_0") CASE HASH("DLC_MP_IND_M_BERD_0_1") CASE HASH("DLC_MP_IND_M_BERD_1_0") CASE HASH("DLC_MP_IND_M_BERD_1_1") CASE HASH("DLC_MP_IND_M_BERD_2_0") CASE HASH("DLC_MP_IND_M_BERD_2_1") CASE HASH("DLC_MP_IND_M_BERD_3_0") CASE HASH("DLC_MP_IND_M_BERD_3_1") CASE HASH("DLC_MP_IND_M_BERD_4_0") CASE HASH("DLC_MP_IND_M_BERD_4_1") CASE HASH("DLC_MP_IND_M_BERD_5_0") CASE HASH("DLC_MP_IND_M_BERD_5_1") IF NOT g_sMPTunables.bTURN_ON_INDEPENDENCE_MASKS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowIndependenceItems #ENDIF RETURN TRUE // LOCKED ELSE RETURN FALSE // UNLOCKED ENDIF BREAK ENDSWITCH IF NOT g_sMPTunables.btoggleactivateIndependencepack AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(eType)) // We MUST carry out tattoo unlock checks separately. #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowIndependenceItems #ENDIF RETURN TRUE // LOCKED ENDIF BREAK CASE HASH("CU_LTS_CLOTHES") // Special checks for LTS award items. SWITCH iNameHash CASE HASH("DLC_MP_LTS_M_BERD_2_0") CASE HASH("DLC_MP_LTS_F_BERD_2_0") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLTSRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_LTS_REWARD_MASK) RETURN TRUE // LOCKED ENDIF BREAK // Fix for bug #2878731 - The Stunt Pack has replaced 5 lts masks with another version ith alts to reduce clipping so we need to block them CASE HASH("DLC_MP_LTS_M_BERD_0_0") CASE HASH("DLC_MP_LTS_M_BERD_0_1") CASE HASH("DLC_MP_LTS_M_BERD_0_2") CASE HASH("DLC_MP_LTS_M_BERD_0_3") CASE HASH("DLC_MP_LTS_M_BERD_0_4") 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") RETURN TRUE // LOCKED BREAK ENDSWITCH BREAK // All Halloween items get removed when the lock is set unless the player has purchased the item CASE HASH("CU_HAL_CLOTHES") IF NOT g_sMPTunables.bTURN_ON_HALLOWEEN_CLOTHING AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(eType)) // We MUST carry out tattoo unlock checks separately. #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockHalloweenItems #ENDIF RETURN TRUE // LOCKED ENDIF BREAK CASE HASH("CU_HAL_MASKS") IF NOT g_sMPTunables.bTURN_ON_HALLOWEEN_MASKS AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(iNameHash, PED_COMPONENT_ACQUIRED_SLOT) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockHalloweenItems #ENDIF RETURN TRUE // LOCKED ENDIF BREAK ENDSWITCH RETURN FALSE // UNLOCKED ENDFUNC FUNC BOOL IS_CLOTHING_ITEM_RESTRICTED_UNTIL_PURCHASED(INT iDLCItemHash) SWITCH iDLCItemHash // Female - High waist pants CASE HASH("DLC_MP_LOW2_F_LEGS_1_0") CASE HASH("DLC_MP_LOW2_F_LEGS_1_1") CASE HASH("DLC_MP_LOW2_F_LEGS_1_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_JBIB_7_0"), PED_COMPONENT_ACQUIRED_SLOT) AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_JBIB_7_1"), PED_COMPONENT_ACQUIRED_SLOT) AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_JBIB_7_2"), PED_COMPONENT_ACQUIRED_SLOT) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockLowrider2HighWaist #ENDIF RETURN TRUE ENDIF BREAK // Female - Frill shirt CASE HASH("DLC_MP_LOW2_F_JBIB_7_0") CASE HASH("DLC_MP_LOW2_F_JBIB_7_1") CASE HASH("DLC_MP_LOW2_F_JBIB_7_2") IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_LEGS_1_0"), PED_COMPONENT_ACQUIRED_SLOT) AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_LEGS_1_1"), PED_COMPONENT_ACQUIRED_SLOT) AND NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_LEGS_1_2"), PED_COMPONENT_ACQUIRED_SLOT) #IF IS_DEBUG_BUILD AND NOT g_bDebugUnlockLowrider2HighWaist #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC INT GET_DLC_SHIRT_PRESET_HASH(DLC_AWARD_SHIRT_ENUM eDLCShirt, BOOL bMale) SWITCH eDLCShirt CASE DLC_SHIRT_AWARD_DEATH_DEFYING IF bMale RETURN HASH("MP_Award_M_Tshirt_004") ELSE RETURN HASH("MP_Award_F_Tshirt_004") ENDIF BREAK CASE DLC_SHIRT_AWARD_FOR_HIRE IF bMale RETURN HASH("MP_Award_M_Tshirt_005") ELSE RETURN HASH("MP_Award_F_Tshirt_005") ENDIF BREAK CASE DLC_SHIRT_AWARD_LIVE_A_LITTLE IF bMale RETURN HASH("MP_Award_M_Tshirt_006") ELSE RETURN HASH("MP_Award_F_Tshirt_006") ENDIF BREAK CASE DLC_SHIRT_AWARD_ASSHOLE IF bMale RETURN HASH("MP_Award_M_Tshirt_007") ELSE RETURN HASH("MP_Award_F_Tshirt_007") ENDIF BREAK CASE DLC_SHIRT_AWARD_CANT_TOUCH_THIS IF bMale RETURN HASH("MP_Award_M_Tshirt_008") ELSE RETURN HASH("MP_Award_F_Tshirt_008") ENDIF BREAK CASE DLC_SHIRT_AWARD_DECORATED IF bMale RETURN HASH("MP_Award_M_Tshirt_009") ELSE RETURN HASH("MP_Award_F_Tshirt_009") ENDIF BREAK CASE DLC_SHIRT_AWARD_PSYCHO_KILLER IF bMale RETURN HASH("MP_Award_M_Tshirt_010") ELSE RETURN HASH("MP_Award_F_Tshirt_010") ENDIF BREAK CASE DLC_SHIRT_AWARD_ONE_MAN_ARMY IF bMale RETURN HASH("MP_Award_M_Tshirt_011") ELSE RETURN HASH("MP_Award_F_Tshirt_011") ENDIF BREAK CASE DLC_SHIRT_AWARD_SHOT_CALLER IF bMale RETURN HASH("MP_Award_M_Tshirt_012") ELSE RETURN HASH("MP_Award_F_Tshirt_012") ENDIF BREAK CASE DLC_SHIRT_AWARD_SHOWROOM IF bMale RETURN HASH("MP_Award_M_Tshirt_013") ELSE RETURN HASH("MP_Award_F_Tshirt_013") ENDIF BREAK CASE DLC_SHIRT_RETRO_BASE_5 IF bMale RETURN HASH("FM_Hip_M_Retro_000") ELSE RETURN HASH("FM_Hip_F_Retro_000") ENDIF BREAK CASE DLC_SHIRT_RETRO_BITCHN IF bMale RETURN HASH("FM_Hip_M_Retro_001") ELSE RETURN HASH("FM_Hip_F_Retro_001") ENDIF BREAK CASE DLC_SHIRT_RETRO_BOBO IF bMale RETURN HASH("FM_Hip_M_Retro_002") ELSE RETURN HASH("FM_Hip_F_Retro_002") ENDIF BREAK CASE DLC_SHIRT_RETRO_CROCS IF bMale RETURN HASH("FM_Hip_M_Retro_003") ELSE RETURN HASH("FM_Hip_F_Retro_003") ENDIF BREAK CASE DLC_SHIRT_RETRO_EMOTION IF bMale RETURN HASH("FM_Hip_M_Retro_004") ELSE RETURN HASH("FM_Hip_F_Retro_004") ENDIF BREAK CASE DLC_SHIRT_RETRO_FEVER IF bMale RETURN HASH("FM_Hip_M_Retro_005") ELSE RETURN HASH("FM_Hip_F_Retro_005") ENDIF BREAK CASE DLC_SHIRT_RETRO_FLASH IF bMale RETURN HASH("FM_Hip_M_Retro_006") ELSE RETURN HASH("FM_Hip_F_Retro_006") ENDIF BREAK CASE DLC_SHIRT_RETRO_VINYL IF bMale RETURN HASH("FM_Hip_M_Retro_007") ELSE RETURN HASH("FM_Hip_F_Retro_007") ENDIF BREAK CASE DLC_SHIRT_RETRO_HOMIES IF bMale RETURN HASH("FM_Hip_M_Retro_008") ELSE RETURN HASH("FM_Hip_F_Retro_008") ENDIF BREAK CASE DLC_SHIRT_RETRO_KDST IF bMale RETURN HASH("FM_Hip_M_Retro_009") ELSE RETURN HASH("FM_Hip_F_Retro_009") ENDIF BREAK CASE DLC_SHIRT_RETRO_VIVISECTION IF bMale RETURN HASH("FM_Hip_M_Retro_010") ELSE RETURN HASH("FM_Hip_F_Retro_010") ENDIF BREAK CASE DLC_SHIRT_RETRO_KJAH IF bMale RETURN HASH("FM_Hip_M_Retro_011") ELSE RETURN HASH("FM_Hip_F_Retro_011") ENDIF BREAK CASE DLC_SHIRT_RETRO_BOUNCE IF bMale RETURN HASH("FM_Hip_M_Retro_012") ELSE RETURN HASH("FM_Hip_F_Retro_012") ENDIF BREAK CASE DLC_SHIRT_RETRO_KROSE IF bMale RETURN HASH("FM_Hip_M_Retro_013") ELSE RETURN HASH("FM_Hip_F_Retro_013") ENDIF BREAK CASE DLC_SHIRT_RSTAR_DEV_WHITE IF bMale RETURN HASH("FM_Rstar_M_Tshirt_000") ELSE RETURN HASH("FM_Rstar_F_Tshirt_000") ENDIF BREAK CASE DLC_SHIRT_RSTAR_DEV_BLACK IF bMale RETURN HASH("FM_Rstar_M_Tshirt_001") ELSE RETURN HASH("FM_Rstar_F_Tshirt_001") ENDIF BREAK CASE DLC_SHIRT_RSTAR_DEV_GRAY IF bMale RETURN HASH("FM_Rstar_M_Tshirt_002") ELSE RETURN HASH("FM_Rstar_F_Tshirt_002") ENDIF BREAK CASE DLC_SHIRT_INDI_HAPPINESS IF bMale RETURN HASH("FM_Ind_M_Award_000") ELSE RETURN HASH("FM_Ind_F_Award_000") ENDIF BREAK CASE DLC_SHIRT_PILOT_ELITAS IF bMale RETURN HASH("MP_Fli_M_Tshirt_000") ELSE RETURN HASH("MP_Fli_F_Tshirt_000") ENDIF BREAK CASE DLC_SHIRT_LTS_FIST IF bMale RETURN HASH("FM_LTS_M_Tshirt_000") ELSE RETURN HASH("FM_LTS_F_Tshirt_000") ENDIF BREAK CASE DLC_SHIRT_CG_TO_NG_1 IF bMale RETURN HASH("mp_fm_OGA_000_m") ELSE RETURN HASH("mp_fm_OGA_000_f") ENDIF BREAK CASE DLC_SHIRT_CG_TO_NG_2 IF bMale RETURN HASH("mp_fm_OGA_001_m") ELSE RETURN HASH("mp_fm_OGA_001_f") ENDIF BREAK CASE DLC_SHIRT_CG_TO_NG_3 IF bMale RETURN HASH("mp_fm_OGA_002_m") ELSE RETURN HASH("mp_fm_OGA_002_f") ENDIF BREAK CASE DLC_SHIRT_CG_TO_NG_4 IF bMale RETURN HASH("mp_fm_OGA_003_m") ELSE RETURN HASH("mp_fm_OGA_003_f") ENDIF BREAK CASE DLC_SHIRT_HEIST_ELITE IF bMale RETURN HASH("MP_Elite_M_Tshirt") ELSE RETURN HASH("MP_Elite_F_Tshirt") ENDIF BREAK CASE DLC_SHIRT_HEIST_ELITE_1 IF bMale RETURN HASH("MP_Elite_M_Tshirt_1") ELSE RETURN HASH("MP_Elite_F_Tshirt_1") ENDIF BREAK ENDSWITCH RETURN 0 ENDFUNC FUNC ARENA_CAREER_UNLOCK_ITEMS GET_ARENA_CAREER_MALE_CLOTHING_UNLOCK_FROM_ITEM_HASH(INT iItemHash) SWITCH iItemHash CASE HASH("CLO_AWM_U_17_0") CASE HASH("CLO_AWM_U_17_1") CASE HASH("CLO_AWM_U_17_2") CASE HASH("CLO_AWM_U_17_3") CASE HASH("CLO_AWM_U_17_4") CASE HASH("CLO_AWM_U_17_5") CASE HASH("CLO_AWM_U_17_6") CASE HASH("CLO_AWM_U_17_7") CASE HASH("CLO_AWM_U_17_8") CASE HASH("CLO_AWM_U_17_9") CASE HASH("CLO_AWM_U_17_10") CASE HASH("CLO_AWM_U_17_11") RETURN CAREER_ITEM_LV_APOCALYPSE_MILITARY_TOP CASE HASH("CLO_AWM_U_4_0") CASE HASH("CLO_AWM_U_4_1") CASE HASH("CLO_AWM_U_4_2") CASE HASH("CLO_AWM_U_4_3") CASE HASH("CLO_AWM_U_4_4") CASE HASH("CLO_AWM_U_4_5") CASE HASH("CLO_AWM_U_4_6") CASE HASH("CLO_AWM_U_4_7") RETURN CAREER_ITEM_LV_DYSTOPIA_LEATHER_TOPS CASE HASH("CLO_AWM_U_3_0") CASE HASH("CLO_AWM_U_3_1") CASE HASH("CLO_AWM_U_3_2") CASE HASH("CLO_AWM_U_3_3") CASE HASH("CLO_AWM_U_3_4") CASE HASH("CLO_AWM_U_3_5") CASE HASH("CLO_AWM_U_3_6") CASE HASH("CLO_AWM_U_3_7") CASE HASH("CLO_AWM_U_3_12") CASE HASH("CLO_AWM_U_3_13") CASE HASH("CLO_AWM_U_3_14") CASE HASH("CLO_AWM_U_3_15") RETURN CAREER_ITEM_LV_WASTELAND_TOPS CASE HASH("CLO_AWM_U_1_17") CASE HASH("CLO_AWM_U_1_18") CASE HASH("CLO_AWM_U_1_19") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_FREEDOM_LOGO_SET CASE HASH("CLO_AWM_U_1_14") CASE HASH("CLO_AWM_U_1_15") CASE HASH("CLO_AWM_U_1_16") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_HORIZON_SET CASE HASH("CLO_AWM_U_1_13") CASE HASH("CLO_AWM_U_1_12") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_SPACESUIT_SET CASE HASH("CLO_AWM_U_1_10") CASE HASH("CLO_AWM_U_1_11") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_DICK_SHIPS_SET CASE HASH("CLO_AWM_U_1_8") CASE HASH("CLO_AWM_U_1_9") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_PLANETS_SET CASE HASH("CLO_AWM_U_1_6") CASE HASH("CLO_AWM_U_1_7") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_LOGO_SET CASE HASH("CLO_AWM_U_1_2") CASE HASH("CLO_AWM_U_1_3") CASE HASH("CLO_AWM_U_1_4") CASE HASH("CLO_AWM_U_1_5") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_3_RANGERS ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_DECL_117") CASE HASH("CLO_AWM_DECL_118") RETURN CAREER_ITEM_LV_ME_TV_TRIANGLE_SHIRT_SET CASE HASH("CLO_AWM_DECL_121") CASE HASH("CLO_AWM_DECL_120") CASE HASH("CLO_AWM_DECL_119") CASE HASH("CLO_AWM_DECL_116") CASE HASH("CLO_AWM_DECL_115") CASE HASH("CLO_AWM_DECL_114") CASE HASH("CLO_AWM_DECL_113") RETURN CAREER_ITEM_LV_ME_TV_LOGO_SHIRT_SET CASE HASH("CLO_AWM_DECL_102") CASE HASH("CLO_AWM_DECL_103") CASE HASH("CLO_AWM_DECL_104") RETURN CAREER_ITEM_LV_HEAT_RECTANGLE_SHIRT_SET CASE HASH("CLO_AWM_DECL_101") RETURN CAREER_ITEM_LV_EXSORBEO_SHIRT CASE HASH("CLO_AWM_DECL_93") RETURN CAREER_ITEM_LV_BOLT_BURGER_SHIRT CASE HASH("CLO_AWM_DECL_94") RETURN CAREER_ITEM_LV_BOLT_BURGER_HUNGER_SHIRT CASE HASH("CLO_AWM_DECL_91") RETURN CAREER_ITEM_LV_POGO_8_BIT_SHIRT CASE HASH("CLO_AWM_DECL_90") RETURN CAREER_ITEM_LV_RED_POGO_MONKEY_SHIRT CASE HASH("CLO_AWM_DECL_87") RETURN CAREER_ITEM_LV_BLUE_POGO_MONKEY_SHIRT CASE HASH("CLO_AWM_DECL_86") RETURN CAREER_ITEM_LV_POGO_SUIT_SHIRT CASE HASH("CLO_AWM_DECL_85") RETURN CAREER_ITEM_LV_POGO_ATOMIC_SHIRT CASE HASH("CLO_AWM_DECL_108") CASE HASH("CLO_AWM_DECL_109") CASE HASH("CLO_AWM_DECL_110") RETURN CAREER_ITEM_LV_HEAT_BALL_SHIRT_SET CASE HASH("CLO_AWM_DECL_107") CASE HASH("CLO_AWM_DECL_106") CASE HASH("CLO_AWM_DECL_105") RETURN CAREER_ITEM_LV_HEAT_LOGO_SHIRT_SET CASE HASH("CLO_AWM_DECL_95") RETURN CAREER_ITEM_LV_BURGER_SHOT_BLUE_SHIRT CASE HASH("CLO_AWM_DECL_89") RETURN CAREER_ITEM_LV_POGO_ALIEN_SHIRT CASE HASH("CLO_AWM_DECL_88") RETURN CAREER_ITEM_LV_POGO_SHIP_SHIRT ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_DECL_123") RETURN CAREER_ITEM_LV_RIGHTEOUS_SLAUGHTER_SHIRT CASE HASH("CLO_AWM_DECL_122") RETURN CAREER_ITEM_LV_QUB3D_SHIRT CASE HASH("CLO_AWM_DECL_111") RETURN CAREER_ITEM_LV_CNT_SHIRT CASE HASH("CLO_AWM_DECL_98") RETURN CAREER_ITEM_LV_DEGENATRON_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_84") RETURN CAREER_ITEM_LV_WIGWAM_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_83") RETURN CAREER_ITEM_LV_UP_N_ATOM_ATOMIC_SHIRT CASE HASH("CLO_AWM_DECL_82") RETURN CAREER_ITEM_LV_UP_N_ATOM_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_80") RETURN CAREER_ITEM_LV_TACO_BOMB_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_79") RETURN CAREER_ITEM_LV_TACO_BOMB_CHILI_SHIRT CASE HASH("CLO_AWM_DECL_78") RETURN CAREER_ITEM_LV_SPRUNK_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_77") RETURN CAREER_ITEM_LV_PISSWASSER_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_76") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_74") RETURN CAREER_ITEM_LV_ECOLA_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_73") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_BLACK_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_72") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_BLACK_SHIRT CASE HASH("CLO_AWM_DECL_71") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_OUTLINE_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_69") RETURN CAREER_ITEM_LV_BURGER_SHOT_BLACK_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_68") RETURN CAREER_ITEM_LV_BURGER_SHOT_BLACK_SHIRT ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_DECL_124") RETURN CAREER_ITEM_LV_TW_SHIRT CASE HASH("CLO_AWM_DECL_112") RETURN CAREER_ITEM_LV_HEAT_RISE_SHIRT CASE HASH("CLO_AWM_DECL_100") RETURN CAREER_ITEM_LV_ECOLA_WHITE_PASS_IT_ON_SHIRT CASE HASH("CLO_AWM_DECL_99") RETURN CAREER_ITEM_LV_ECOLA_WHITE_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_97") RETURN CAREER_ITEM_LV_DEGENATRON_WHITE_LOGO_SHIRT CASE HASH("CLO_AWM_DECL_96") RETURN CAREER_ITEM_LV_CCTV_SHIRT CASE HASH("CLO_AWM_DECL_92") RETURN CAREER_ITEM_LV_JOCK_CRANLEY_SHIRT CASE HASH("CLO_AWM_DECL_81") RETURN CAREER_ITEM_LV_UP_N_ATOM_AMERICA_SHIRT CASE HASH("CLO_AWM_DECL_75") RETURN CAREER_ITEM_LV_ECOLA_INFECTIOUS_SHIRT CASE HASH("CLO_AWM_DECL_70") RETURN CAREER_ITEM_LV_BURGER_SHOT_WHITE_LOGO_SHIRT ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_U_10_15") RETURN CAREER_ITEM_LV_HOCKEY_TOP_SPRUNK_CLASIC_LOGO CASE HASH("CLO_AWM_U_10_14") CASE HASH("CLO_AWM_U_10_13") RETURN CAREER_ITEM_LV_HOCKEY_TOP_SPRUNK_SET CASE HASH("CLO_AWM_U_10_12") CASE HASH("CLO_AWM_U_10_11") RETURN CAREER_ITEM_LV_HOCKEY_TOP_PHAT_CHIPS_SET CASE HASH("CLO_AWM_U_10_10") RETURN CAREER_ITEM_LV_HOCKEY_TOP_ECOLA_BLACK CASE HASH("CLO_AWM_U_10_9") RETURN CAREER_ITEM_LV_HOCKEY_TOP_ECOLA_RED CASE HASH("CLO_AWM_U_10_8") RETURN CAREER_ITEM_LV_HOCKEY_TOP_BEAN_MACHINE CASE HASH("CLO_AWM_U_10_7") RETURN CAREER_ITEM_LV_HOCKEY_TOP_REDWOOD CASE HASH("CLO_AWM_U_10_6") RETURN CAREER_ITEM_LV_HOCKEY_TOP_WIGWAM CASE HASH("CLO_AWM_U_10_5") CASE HASH("CLO_AWM_U_10_4") RETURN CAREER_ITEM_LV_HOCKEY_TOP_CLUCKIN_BELL_SET CASE HASH("CLO_AWM_U_10_3") CASE HASH("CLO_AWM_U_10_2") CASE HASH("CLO_AWM_U_10_1") CASE HASH("CLO_AWM_U_10_0") RETURN CAREER_ITEM_LV_HOCKEY_TOP_BURGER_SHOT_SET CASE HASH("CLO_AWM_U_9_23") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_SWEATER CASE HASH("CLO_AWM_U_9_22") RETURN CAREER_ITEM_LV_RED_LUCKY_PLUCKER_SWEATER ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_U_9_21") RETURN CAREER_ITEM_LV_BOLT_BURGER_SWEATER CASE HASH("CLO_AWM_U_9_20") CASE HASH("CLO_AWM_U_9_19") RETURN CAREER_ITEM_LV_SWEATER_PISSWASSER_SET CASE HASH("CLO_AWM_U_9_18") RETURN CAREER_ITEM_LV_DEGENATRON_SWEATER CASE HASH("CLO_AWM_U_9_17") CASE HASH("CLO_AWM_U_9_16") RETURN CAREER_ITEM_LV_SWEATER_HEAT_SET CASE HASH("CLO_AWM_U_9_15") CASE HASH("CLO_AWM_U_9_14") RETURN CAREER_ITEM_LV_SWEATER_ME_TV_SET CASE HASH("CLO_AWM_U_9_13") CASE HASH("CLO_AWM_U_9_12") RETURN CAREER_ITEM_LV_SWEATER_ECOLA_SET CASE HASH("CLO_AWM_U_9_11") RETURN CAREER_ITEM_LV_BLACK_CLUCKIN_BELL_SWEATER CASE HASH("CLO_AWM_U_9_10") RETURN CAREER_ITEM_LV_BLUE_CLUCKIN_BELL_SWEATER CASE HASH("CLO_AWM_U_9_9") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_SWEATER CASE HASH("CLO_AWM_U_9_8") CASE HASH("CLO_AWM_U_9_7") RETURN CAREER_ITEM_LV_SWEATER_TACO_BOMB_SET CASE HASH("CLO_AWM_U_9_6") RETURN CAREER_ITEM_LV_TACO_BOMB_CHILLI_SWEATER CASE HASH("CLO_AWM_U_9_5") RETURN CAREER_ITEM_LV_WIGWAM_SWEATER CASE HASH("CLO_AWM_U_9_4") CASE HASH("CLO_AWM_U_9_3") RETURN CAREER_ITEM_LV_SWEATER_SPRUNK_SET CASE HASH("CLO_AWM_U_9_0") RETURN CAREER_ITEM_LV_RED_BURGER_SHOT_SWEATER CASE HASH("CLO_AWM_U_9_1") RETURN CAREER_ITEM_LV_BLACK_BURGER_SHOT_SWEATER CASE HASH("CLO_AWM_U_9_2") RETURN CAREER_ITEM_LV_BURGER_SHOT_PLAIN_TEXT_SWEATER ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_U_7_17") RETURN CAREER_ITEM_LV_TACO_HOODIE CASE HASH("CLO_AWM_U_7_16") RETURN CAREER_ITEM_LV_LEMON_HOODIE CASE HASH("CLO_AWM_U_7_15") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_HOODIE CASE HASH("CLO_AWM_U_7_14") RETURN CAREER_ITEM_LV_CELLS_HOODIE CASE HASH("CLO_AWM_U_7_13") RETURN CAREER_ITEM_LV_REDWOOD_HOODIE CASE HASH("CLO_AWM_U_7_12") RETURN CAREER_ITEM_LV_MUSHROOM_HOODIE CASE HASH("CLO_AWM_U_7_11") RETURN CAREER_ITEM_LV_CHIPS_HOODIE CASE HASH("CLO_AWM_U_7_10") RETURN CAREER_ITEM_LV_PIZZA_HOODIE CASE HASH("CLO_AWM_U_7_9") RETURN CAREER_ITEM_LV_LOGGER_LIGHT_HOODIE CASE HASH("CLO_AWM_U_7_8") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_HOODIE CASE HASH("CLO_AWM_U_7_7") RETURN CAREER_ITEM_LV_DOUGHNUT_HOODIE CASE HASH("CLO_AWM_U_7_6") RETURN CAREER_ITEM_LV_HOT_DOG_HOODIE CASE HASH("CLO_AWM_U_7_5") RETURN CAREER_ITEM_LV_BURGER_SHOT_HOODIE CASE HASH("CLO_AWM_U_7_4") RETURN CAREER_ITEM_LV_PISSWASSER_HOODIE CASE HASH("CLO_AWM_U_7_3") RETURN CAREER_ITEM_LV_PATRIOT_HOODIE CASE HASH("CLO_AWM_U_7_2") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_ORANGE_HOODIE CASE HASH("CLO_AWM_U_7_1") RETURN CAREER_ITEM_LV_TACO_BOMB_HOODIE CASE HASH("CLO_AWM_U_7_0") RETURN CAREER_ITEM_LV_BENEDICT_HOODIE ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_PH_3_3") RETURN CAREER_ITEM_LV_HOT_DOG_BUCKET_HAT CASE HASH("CLO_AWM_PH_3_2") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_BUCKET_HAT CASE HASH("CLO_AWM_PH_3_1") RETURN CAREER_ITEM_LV_BURGER_SHOT_BUCKET_HAT CASE HASH("CLO_AWM_PH_3_0") RETURN CAREER_ITEM_LV_TACO_BUCKET_HAT CASE HASH("CLO_AWM_PH_2_18") CASE HASH("CLO_AWM_PH_2_17") CASE HASH("CLO_AWM_PH_2_8") CASE HASH("CLO_AWM_PH_1_18") CASE HASH("CLO_AWM_PH_1_17") CASE HASH("CLO_AWM_PH_1_8") RETURN CAREER_ITEM_LV_TACO_BOMB_CAP_SET CASE HASH("CLO_AWM_PH_2_16") CASE HASH("CLO_AWM_PH_2_15") CASE HASH("CLO_AWM_PH_1_16") CASE HASH("CLO_AWM_PH_1_15") RETURN CAREER_ITEM_LV_PISSWASSER_CAP_SET CASE HASH("CLO_AWM_PH_2_14") CASE HASH("CLO_AWM_PH_2_13") CASE HASH("CLO_AWM_PH_1_14") CASE HASH("CLO_AWM_PH_1_13") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_REPEAT_LOGO_CAP_SET CASE HASH("CLO_AWM_PH_2_12") CASE HASH("CLO_AWM_PH_2_11") CASE HASH("CLO_AWM_PH_1_12") CASE HASH("CLO_AWM_PH_1_11") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_LOGO_CAP_SET CASE HASH("CLO_AWM_PH_2_10") CASE HASH("CLO_AWM_PH_2_9") CASE HASH("CLO_AWM_PH_2_7") CASE HASH("CLO_AWM_PH_1_10") CASE HASH("CLO_AWM_PH_1_9") CASE HASH("CLO_AWM_PH_1_7") RETURN CAREER_ITEM_LV_HOT_DOG_CAP_SET CASE HASH("CLO_AWM_PH_2_6") CASE HASH("CLO_AWM_PH_1_6") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_WHITE_CAP CASE HASH("CLO_AWM_PH_2_5") CASE HASH("CLO_AWM_PH_2_4") CASE HASH("CLO_AWM_PH_1_5") CASE HASH("CLO_AWM_PH_1_4") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_LOGO_CAP_SET CASE HASH("CLO_AWM_PH_2_3") CASE HASH("CLO_AWM_PH_1_3") RETURN CAREER_ITEM_LV_BURGER_SHOT_TARGET_CAP CASE HASH("CLO_AWM_PH_2_2") CASE HASH("CLO_AWM_PH_1_2") RETURN CAREER_ITEM_LV_BURGER_SHOT_LOGO_CAP CASE HASH("CLO_AWM_PH_2_1") CASE HASH("CLO_AWM_PH_2_0") CASE HASH("CLO_AWM_PH_1_1") CASE HASH("CLO_AWM_PH_1_0") RETURN CAREER_ITEM_LV_BURGER_SHOT_TEXT_LOGO_SET ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_L_5_11") CASE HASH("CLO_AWM_L_5_10") CASE HASH("CLO_AWM_L_5_9") CASE HASH("CLO_AWM_L_5_8") CASE HASH("CLO_AWM_L_5_7") CASE HASH("CLO_AWM_L_5_6") CASE HASH("CLO_AWM_L_5_5") CASE HASH("CLO_AWM_L_5_4") CASE HASH("CLO_AWM_L_5_3") CASE HASH("CLO_AWM_L_5_2") CASE HASH("CLO_AWM_L_5_1") CASE HASH("CLO_AWM_L_5_0") CASE HASH("CLO_AWM_F_7_7")// Boots unlock with pants CASE HASH("CLO_AWM_F_7_6") CASE HASH("CLO_AWM_F_7_5") CASE HASH("CLO_AWM_F_7_4") CASE HASH("CLO_AWM_F_7_3") CASE HASH("CLO_AWM_F_7_2") CASE HASH("CLO_AWM_F_7_1") CASE HASH("CLO_AWM_F_7_0") RETURN CAREER_ITEM_LV_COMBO_PANTS_SET CASE HASH("CLO_AWM_L_3_11") CASE HASH("CLO_AWM_L_3_10") CASE HASH("CLO_AWM_L_3_9") CASE HASH("CLO_AWM_L_3_8") CASE HASH("CLO_AWM_L_3_7") CASE HASH("CLO_AWM_L_3_6") CASE HASH("CLO_AWM_L_3_5") CASE HASH("CLO_AWM_L_3_4") CASE HASH("CLO_AWM_L_3_3") CASE HASH("CLO_AWM_L_3_2") CASE HASH("CLO_AWM_L_3_1") CASE HASH("CLO_AWM_L_3_0") RETURN CAREER_ITEM_LV_LEATHER_PANTS_SET CASE HASH("CLO_AWM_L_1_13") CASE HASH("CLO_AWM_L_1_12") CASE HASH("CLO_AWM_L_1_11") CASE HASH("CLO_AWM_L_1_10") CASE HASH("CLO_AWM_L_1_9") CASE HASH("CLO_AWM_L_1_8") CASE HASH("CLO_AWM_L_1_7") CASE HASH("CLO_AWM_L_1_6") CASE HASH("CLO_AWM_L_1_5") CASE HASH("CLO_AWM_L_1_4") CASE HASH("CLO_AWM_L_1_3") CASE HASH("CLO_AWM_L_1_2") CASE HASH("CLO_AWM_L_1_1") CASE HASH("CLO_AWM_L_1_0") RETURN CAREER_ITEM_LV_CHAIN_SHORTS_SET CASE HASH("CLO_AWM_L_0_13") CASE HASH("CLO_AWM_L_0_12") CASE HASH("CLO_AWM_L_0_11") CASE HASH("CLO_AWM_L_0_10") CASE HASH("CLO_AWM_L_0_9") CASE HASH("CLO_AWM_L_0_8") CASE HASH("CLO_AWM_L_0_7") CASE HASH("CLO_AWM_L_0_6") CASE HASH("CLO_AWM_L_0_5") CASE HASH("CLO_AWM_L_0_4") CASE HASH("CLO_AWM_L_0_3") CASE HASH("CLO_AWM_L_0_2") CASE HASH("CLO_AWM_L_0_1") CASE HASH("CLO_AWM_L_0_0") RETURN CAREER_ITEM_LV_CHAIN_PANTS_SET ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_F_8_15") CASE HASH("CLO_AWM_F_8_14") CASE HASH("CLO_AWM_F_8_13") CASE HASH("CLO_AWM_F_8_12") CASE HASH("CLO_AWM_F_8_11") CASE HASH("CLO_AWM_F_8_10") CASE HASH("CLO_AWM_F_8_9") CASE HASH("CLO_AWM_F_8_8") CASE HASH("CLO_AWM_F_8_7") CASE HASH("CLO_AWM_F_8_6") CASE HASH("CLO_AWM_F_8_5") CASE HASH("CLO_AWM_F_8_4") CASE HASH("CLO_AWM_F_8_3") CASE HASH("CLO_AWM_F_8_2") CASE HASH("CLO_AWM_F_8_1") CASE HASH("CLO_AWM_F_8_0") RETURN CAREER_ITEM_LV_METAL_PLATED_LEATHER_BOOTS CASE HASH("CLO_AWM_F_4_2") CASE HASH("CLO_AWM_F_4_1") CASE HASH("CLO_AWM_F_4_0") RETURN CAREER_ITEM_LV_SKULL_HARNESS_BOOTS CASE HASH("CLO_AWM_F_2_1") CASE HASH("CLO_AWM_F_2_0") RETURN CAREER_ITEM_LV_FLAMING_SKULL_BOOTS CASE HASH("CLO_AWM_F_0_25") CASE HASH("CLO_AWM_F_0_24") CASE HASH("CLO_AWM_F_0_23") CASE HASH("CLO_AWM_F_0_22") CASE HASH("CLO_AWM_F_0_21") CASE HASH("CLO_AWM_F_0_20") CASE HASH("CLO_AWM_F_0_19") CASE HASH("CLO_AWM_F_0_18") CASE HASH("CLO_AWM_F_0_17") CASE HASH("CLO_AWM_F_0_16") CASE HASH("CLO_AWM_F_0_15") CASE HASH("CLO_AWM_F_0_14") CASE HASH("CLO_AWM_F_0_13") CASE HASH("CLO_AWM_F_0_12") CASE HASH("CLO_AWM_F_0_11") CASE HASH("CLO_AWM_F_0_10") CASE HASH("CLO_AWM_F_0_9") CASE HASH("CLO_AWM_F_0_8") CASE HASH("CLO_AWM_F_0_7") CASE HASH("CLO_AWM_F_0_6") CASE HASH("CLO_AWM_F_0_5") CASE HASH("CLO_AWM_F_0_4") CASE HASH("CLO_AWM_F_0_3") CASE HASH("CLO_AWM_F_0_2") CASE HASH("CLO_AWM_F_0_1") CASE HASH("CLO_AWM_F_0_0") RETURN CAREER_ITEM_LV_LIGHT_UP_SHOES ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_O_B_1") CASE HASH("CLO_AWM_O_B_0") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_ROBO CASE HASH("CLO_AWM_O_B_2") CASE HASH("CLO_AWM_O_B_3") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_SUPERHERO CASE HASH("CLO_AWM_O_B_4") CASE HASH("CLO_AWM_O_B_5") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_SHAPES CASE HASH("CLO_AWM_O_B_6") CASE HASH("CLO_AWM_O_B_7") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_LINES CASE HASH("CLO_AWM_O_B_8") CASE HASH("CLO_AWM_O_B_9") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_ALIEN CASE HASH("CLO_AWM_O_B_10") CASE HASH("CLO_AWM_O_B_11") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_SCALES CASE HASH("CLO_AWM_O_B_12") CASE HASH("CLO_AWM_O_B_13") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_GALAXY CASE HASH("CLO_AWM_O_B_14") CASE HASH("CLO_AWM_O_B_15") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_NEBULA CASE HASH("CLO_AWM_O_C_11") CASE HASH("CLO_AWM_O_C_10") CASE HASH("CLO_AWM_O_C_9") CASE HASH("CLO_AWM_O_C_8") CASE HASH("CLO_AWM_O_C_7") CASE HASH("CLO_AWM_O_C_6") CASE HASH("CLO_AWM_O_C_5") CASE HASH("CLO_AWM_O_C_4") CASE HASH("CLO_AWM_O_C_3") CASE HASH("CLO_AWM_O_C_2") CASE HASH("CLO_AWM_O_C_1") CASE HASH("CLO_AWM_O_C_0") RETURN CAREER_ITEM_HV_ALIEN_RETRO_OUTFIT CASE HASH("CLO_AWM_O_D_11") CASE HASH("CLO_AWM_O_D_10") CASE HASH("CLO_AWM_O_D_9") CASE HASH("CLO_AWM_O_D_8") CASE HASH("CLO_AWM_O_D_7") CASE HASH("CLO_AWM_O_D_6") CASE HASH("CLO_AWM_O_D_5") CASE HASH("CLO_AWM_O_D_4") CASE HASH("CLO_AWM_O_D_3") CASE HASH("CLO_AWM_O_D_2") CASE HASH("CLO_AWM_O_D_1") CASE HASH("CLO_AWM_O_D_0") RETURN CAREER_ITEM_HV_ALIEN_BUGEYE_OUTFIT CASE HASH("CLO_AWM_O_E_11") CASE HASH("CLO_AWM_O_E_10") CASE HASH("CLO_AWM_O_E_9") CASE HASH("CLO_AWM_O_E_8") CASE HASH("CLO_AWM_O_E_7") CASE HASH("CLO_AWM_O_E_6") CASE HASH("CLO_AWM_O_E_5") CASE HASH("CLO_AWM_O_E_4") CASE HASH("CLO_AWM_O_E_3") CASE HASH("CLO_AWM_O_E_2") CASE HASH("CLO_AWM_O_E_1") CASE HASH("CLO_AWM_O_E_0") RETURN CAREER_ITEM_HV_ALIEN_MONSTROUS_OUTFIT CASE HASH("CLO_AWM_O_F_17") CASE HASH("CLO_AWM_O_F_16") CASE HASH("CLO_AWM_O_F_15") CASE HASH("CLO_AWM_O_F_14") CASE HASH("CLO_AWM_O_F_13") CASE HASH("CLO_AWM_O_F_12") CASE HASH("CLO_AWM_O_F_11") CASE HASH("CLO_AWM_O_F_10") CASE HASH("CLO_AWM_O_F_9") CASE HASH("CLO_AWM_O_F_8") CASE HASH("CLO_AWM_O_F_7") CASE HASH("CLO_AWM_O_F_6") CASE HASH("CLO_AWM_O_F_5") CASE HASH("CLO_AWM_O_F_4") CASE HASH("CLO_AWM_O_F_3") CASE HASH("CLO_AWM_O_F_2") CASE HASH("CLO_AWM_O_F_1") CASE HASH("CLO_AWM_O_F_0") RETURN CAREER_ITEM_HV_RETRO_FUT_SPACE_SUIT CASE HASH("CLO_AWM_O_G_7") CASE HASH("CLO_AWM_O_G_6") CASE HASH("CLO_AWM_O_G_5") CASE HASH("CLO_AWM_O_G_4") CASE HASH("CLO_AWM_O_G_3") CASE HASH("CLO_AWM_O_G_2") CASE HASH("CLO_AWM_O_G_1") CASE HASH("CLO_AWM_O_G_0") RETURN CAREER_ITEM_HV_MODERN_SPACE_SUIT CASE HASH("CLO_AWM_O_H_10") CASE HASH("CLO_AWM_O_H_9") CASE HASH("CLO_AWM_O_H_8") CASE HASH("CLO_AWM_O_H_7") CASE HASH("CLO_AWM_O_H_6") CASE HASH("CLO_AWM_O_H_5") CASE HASH("CLO_AWM_O_H_4") CASE HASH("CLO_AWM_O_H_3") CASE HASH("CLO_AWM_O_H_2") CASE HASH("CLO_AWM_O_H_1") CASE HASH("CLO_AWM_O_H_0") RETURN CAREER_ITEM_HV_CYBERTECH_SPACE_SUIT CASE HASH("CLO_AWM_O_I_1") RETURN CAREER_ITEM_HV_POGO_OUTFIT CASE HASH("CLO_AWM_O_I_2") RETURN CAREER_ITEM_HV_REPUBLICAN_SPACE_RANGER ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWM_B_12_16") CASE HASH("CLO_AWM_B_12_15") CASE HASH("CLO_AWM_B_12_14") CASE HASH("CLO_AWM_B_12_13") CASE HASH("CLO_AWM_B_12_12") CASE HASH("CLO_AWM_B_12_11") CASE HASH("CLO_AWM_B_12_10") CASE HASH("CLO_AWM_B_12_9") CASE HASH("CLO_AWM_B_12_8") CASE HASH("CLO_AWM_B_12_7") CASE HASH("CLO_AWM_B_12_6") CASE HASH("CLO_AWM_B_12_5") CASE HASH("CLO_AWM_B_12_4") CASE HASH("CLO_AWM_B_12_3") CASE HASH("CLO_AWM_B_12_2") CASE HASH("CLO_AWM_B_12_1") CASE HASH("CLO_AWM_B_12_0") RETURN CAREER_ITEM_HV_SPACE_GOGGLES CASE HASH("CLO_AWM_B_11_0") RETURN CAREER_ITEM_HV_CLUCKIN_BELL_MASK CASE HASH("CLO_AWM_B_10_0") RETURN CAREER_ITEM_HV_BURGERSHOT_MASK CASE HASH("CLO_AWM_B_9_0") RETURN CAREER_ITEM_HV_PACO_THE_TACO_MASK CASE HASH("CLO_AWM_B_8_11") CASE HASH("CLO_AWM_B_8_10") CASE HASH("CLO_AWM_B_8_9") CASE HASH("CLO_AWM_B_8_8") CASE HASH("CLO_AWM_B_8_7") CASE HASH("CLO_AWM_B_8_6") CASE HASH("CLO_AWM_B_8_5") CASE HASH("CLO_AWM_B_8_4") CASE HASH("CLO_AWM_B_8_3") CASE HASH("CLO_AWM_B_8_2") CASE HASH("CLO_AWM_B_8_1") CASE HASH("CLO_AWM_B_8_0") RETURN CAREER_ITEM_HV_DYSTOPIA_AIRMAN_MASK CASE HASH("CLO_AWM_B_4_11") CASE HASH("CLO_AWM_B_4_10") CASE HASH("CLO_AWM_B_4_9") CASE HASH("CLO_AWM_B_4_8") CASE HASH("CLO_AWM_B_4_7") CASE HASH("CLO_AWM_B_4_6") CASE HASH("CLO_AWM_B_4_5") CASE HASH("CLO_AWM_B_4_4") CASE HASH("CLO_AWM_B_4_3") CASE HASH("CLO_AWM_B_4_2") CASE HASH("CLO_AWM_B_4_1") CASE HASH("CLO_AWM_B_4_0") RETURN CAREER_ITEM_HV_LEATHER_FEATHER_MASK CASE HASH("CLO_AWM_B_3_7") CASE HASH("CLO_AWM_B_3_6") CASE HASH("CLO_AWM_B_3_5") CASE HASH("CLO_AWM_B_3_4") CASE HASH("CLO_AWM_B_3_3") CASE HASH("CLO_AWM_B_3_2") CASE HASH("CLO_AWM_B_3_1") CASE HASH("CLO_AWM_B_3_0") RETURN CAREER_ITEM_HV_HOODED_MAW_MASK CASE HASH("CLO_AWM_B_2_15") CASE HASH("CLO_AWM_B_2_14") CASE HASH("CLO_AWM_B_2_13") CASE HASH("CLO_AWM_B_2_12") CASE HASH("CLO_AWM_B_2_11") CASE HASH("CLO_AWM_B_2_10") CASE HASH("CLO_AWM_B_2_9") CASE HASH("CLO_AWM_B_2_8") CASE HASH("CLO_AWM_B_2_7") CASE HASH("CLO_AWM_B_2_6") CASE HASH("CLO_AWM_B_2_5") CASE HASH("CLO_AWM_B_2_4") CASE HASH("CLO_AWM_B_2_3") CASE HASH("CLO_AWM_B_2_2") CASE HASH("CLO_AWM_B_2_1") CASE HASH("CLO_AWM_B_2_0") RETURN CAREER_ITEM_HV_DYSTOPIA_PLAGUE_MASK ENDSWITCH RETURN CAREER_ITEM_INVALID ENDFUNC FUNC ARENA_CAREER_UNLOCK_ITEMS GET_ARENA_CAREER_FEMALE_CLOTHING_UNLOCK_FROM_ITEM_HASH(INT iItemHash) SWITCH iItemHash CASE HASH("CLO_AWF_U_17_0") CASE HASH("CLO_AWF_U_17_1") CASE HASH("CLO_AWF_U_17_2") CASE HASH("CLO_AWF_U_17_3") CASE HASH("CLO_AWF_U_17_4") CASE HASH("CLO_AWF_U_17_5") CASE HASH("CLO_AWF_U_17_6") CASE HASH("CLO_AWF_U_17_7") CASE HASH("CLO_AWF_U_17_8") CASE HASH("CLO_AWF_U_17_9") CASE HASH("CLO_AWF_U_17_10") CASE HASH("CLO_AWF_U_17_11") RETURN CAREER_ITEM_LV_APOCALYPSE_MILITARY_TOP CASE HASH("CLO_AWF_U_4_0") CASE HASH("CLO_AWF_U_4_1") CASE HASH("CLO_AWF_U_4_2") CASE HASH("CLO_AWF_U_4_3") CASE HASH("CLO_AWF_U_4_4") CASE HASH("CLO_AWF_U_4_5") CASE HASH("CLO_AWF_U_4_6") CASE HASH("CLO_AWF_U_4_7") RETURN CAREER_ITEM_LV_DYSTOPIA_LEATHER_TOPS CASE HASH("CLO_AWF_U_3_0") CASE HASH("CLO_AWF_U_3_1") CASE HASH("CLO_AWF_U_3_2") CASE HASH("CLO_AWF_U_3_3") CASE HASH("CLO_AWF_U_3_4") CASE HASH("CLO_AWF_U_3_5") CASE HASH("CLO_AWF_U_3_6") CASE HASH("CLO_AWF_U_3_7") CASE HASH("CLO_AWF_U_3_12") CASE HASH("CLO_AWF_U_3_13") CASE HASH("CLO_AWF_U_3_14") CASE HASH("CLO_AWF_U_3_15") RETURN CAREER_ITEM_LV_WASTELAND_TOPS CASE HASH("CLO_AWF_U_1_17") CASE HASH("CLO_AWF_U_1_18") CASE HASH("CLO_AWF_U_1_19") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_FREEDOM_LOGO_SET CASE HASH("CLO_AWF_U_1_14") CASE HASH("CLO_AWF_U_1_15") CASE HASH("CLO_AWF_U_1_16") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_HORIZON_SET CASE HASH("CLO_AWF_U_1_13") CASE HASH("CLO_AWF_U_1_12") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_SPACESUIT_SET CASE HASH("CLO_AWF_U_1_10") CASE HASH("CLO_AWF_U_1_11") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_DICK_SHIPS_SET CASE HASH("CLO_AWF_U_1_8") CASE HASH("CLO_AWF_U_1_9") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_PLANETS_SET CASE HASH("CLO_AWF_U_1_6") CASE HASH("CLO_AWF_U_1_7") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_LOGO_SET CASE HASH("CLO_AWF_U_1_2") CASE HASH("CLO_AWF_U_1_3") CASE HASH("CLO_AWF_U_1_4") CASE HASH("CLO_AWF_U_1_5") RETURN CAREER_ITEM_LV_SPACE_RANGER_SHIRT_3_RANGERS ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_DECL_117") CASE HASH("CLO_AWF_DECL_118") RETURN CAREER_ITEM_LV_ME_TV_TRIANGLE_SHIRT_SET CASE HASH("CLO_AWF_DECL_121") CASE HASH("CLO_AWF_DECL_120") CASE HASH("CLO_AWF_DECL_119") CASE HASH("CLO_AWF_DECL_116") CASE HASH("CLO_AWF_DECL_115") CASE HASH("CLO_AWF_DECL_114") CASE HASH("CLO_AWF_DECL_113") RETURN CAREER_ITEM_LV_ME_TV_LOGO_SHIRT_SET CASE HASH("CLO_AWF_DECL_102") CASE HASH("CLO_AWF_DECL_103") CASE HASH("CLO_AWF_DECL_104") RETURN CAREER_ITEM_LV_HEAT_RECTANGLE_SHIRT_SET CASE HASH("CLO_AWF_DECL_101") RETURN CAREER_ITEM_LV_EXSORBEO_SHIRT CASE HASH("CLO_AWF_DECL_93") RETURN CAREER_ITEM_LV_BOLT_BURGER_SHIRT CASE HASH("CLO_AWF_DECL_94") RETURN CAREER_ITEM_LV_BOLT_BURGER_HUNGER_SHIRT CASE HASH("CLO_AWF_DECL_91") RETURN CAREER_ITEM_LV_POGO_8_BIT_SHIRT CASE HASH("CLO_AWF_DECL_90") RETURN CAREER_ITEM_LV_RED_POGO_MONKEY_SHIRT CASE HASH("CLO_AWF_DECL_87") RETURN CAREER_ITEM_LV_BLUE_POGO_MONKEY_SHIRT CASE HASH("CLO_AWF_DECL_86") RETURN CAREER_ITEM_LV_POGO_SUIT_SHIRT CASE HASH("CLO_AWF_DECL_85") RETURN CAREER_ITEM_LV_POGO_ATOMIC_SHIRT CASE HASH("CLO_AWF_DECL_108") CASE HASH("CLO_AWF_DECL_109") CASE HASH("CLO_AWF_DECL_110") RETURN CAREER_ITEM_LV_HEAT_BALL_SHIRT_SET CASE HASH("CLO_AWF_DECL_107") CASE HASH("CLO_AWF_DECL_106") CASE HASH("CLO_AWF_DECL_105") RETURN CAREER_ITEM_LV_HEAT_LOGO_SHIRT_SET CASE HASH("CLO_AWF_DECL_95") RETURN CAREER_ITEM_LV_BURGER_SHOT_BLUE_SHIRT CASE HASH("CLO_AWF_DECL_89") RETURN CAREER_ITEM_LV_POGO_ALIEN_SHIRT CASE HASH("CLO_AWF_DECL_88") RETURN CAREER_ITEM_LV_POGO_SHIP_SHIRT ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_DECL_123") RETURN CAREER_ITEM_LV_RIGHTEOUS_SLAUGHTER_SHIRT CASE HASH("CLO_AWF_DECL_122") RETURN CAREER_ITEM_LV_QUB3D_SHIRT CASE HASH("CLO_AWF_DECL_111") RETURN CAREER_ITEM_LV_CNT_SHIRT CASE HASH("CLO_AWF_DECL_98") RETURN CAREER_ITEM_LV_DEGENATRON_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_84") RETURN CAREER_ITEM_LV_WIGWAM_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_83") RETURN CAREER_ITEM_LV_UP_N_ATOM_ATOMIC_SHIRT CASE HASH("CLO_AWF_DECL_82") RETURN CAREER_ITEM_LV_UP_N_ATOM_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_80") RETURN CAREER_ITEM_LV_TACO_BOMB_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_79") RETURN CAREER_ITEM_LV_TACO_BOMB_CHILI_SHIRT CASE HASH("CLO_AWF_DECL_78") RETURN CAREER_ITEM_LV_SPRUNK_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_77") RETURN CAREER_ITEM_LV_PISSWASSER_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_76") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_74") RETURN CAREER_ITEM_LV_ECOLA_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_73") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_BLACK_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_72") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_BLACK_SHIRT CASE HASH("CLO_AWF_DECL_71") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_OUTLINE_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_69") RETURN CAREER_ITEM_LV_BURGER_SHOT_BLACK_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_68") RETURN CAREER_ITEM_LV_BURGER_SHOT_BLACK_SHIRT ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_DECL_124") RETURN CAREER_ITEM_LV_TW_SHIRT CASE HASH("CLO_AWF_DECL_112") RETURN CAREER_ITEM_LV_HEAT_RISE_SHIRT CASE HASH("CLO_AWF_DECL_100") RETURN CAREER_ITEM_LV_ECOLA_WHITE_PASS_IT_ON_SHIRT CASE HASH("CLO_AWF_DECL_99") RETURN CAREER_ITEM_LV_ECOLA_WHITE_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_97") RETURN CAREER_ITEM_LV_DEGENATRON_WHITE_LOGO_SHIRT CASE HASH("CLO_AWF_DECL_96") RETURN CAREER_ITEM_LV_CCTV_SHIRT CASE HASH("CLO_AWF_DECL_92") RETURN CAREER_ITEM_LV_JOCK_CRANLEY_SHIRT CASE HASH("CLO_AWF_DECL_81") RETURN CAREER_ITEM_LV_UP_N_ATOM_AMERICA_SHIRT CASE HASH("CLO_AWF_DECL_75") RETURN CAREER_ITEM_LV_ECOLA_INFECTIOUS_SHIRT CASE HASH("CLO_AWF_DECL_70") RETURN CAREER_ITEM_LV_BURGER_SHOT_WHITE_LOGO_SHIRT ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_U_10_15") RETURN CAREER_ITEM_LV_HOCKEY_TOP_SPRUNK_CLASIC_LOGO CASE HASH("CLO_AWF_U_10_14") CASE HASH("CLO_AWF_U_10_13") RETURN CAREER_ITEM_LV_HOCKEY_TOP_SPRUNK_SET CASE HASH("CLO_AWF_U_10_12") CASE HASH("CLO_AWF_U_10_11") RETURN CAREER_ITEM_LV_HOCKEY_TOP_PHAT_CHIPS_SET CASE HASH("CLO_AWF_U_10_10") RETURN CAREER_ITEM_LV_HOCKEY_TOP_ECOLA_BLACK CASE HASH("CLO_AWF_U_10_9") RETURN CAREER_ITEM_LV_HOCKEY_TOP_ECOLA_RED CASE HASH("CLO_AWF_U_10_8") RETURN CAREER_ITEM_LV_HOCKEY_TOP_BEAN_MACHINE CASE HASH("CLO_AWF_U_10_7") RETURN CAREER_ITEM_LV_HOCKEY_TOP_REDWOOD CASE HASH("CLO_AWF_U_10_6") RETURN CAREER_ITEM_LV_HOCKEY_TOP_WIGWAM CASE HASH("CLO_AWF_U_10_5") CASE HASH("CLO_AWF_U_10_4") RETURN CAREER_ITEM_LV_HOCKEY_TOP_CLUCKIN_BELL_SET CASE HASH("CLO_AWF_U_10_3") CASE HASH("CLO_AWF_U_10_2") CASE HASH("CLO_AWF_U_10_1") CASE HASH("CLO_AWF_U_10_0") RETURN CAREER_ITEM_LV_HOCKEY_TOP_BURGER_SHOT_SET CASE HASH("CLO_AWF_U_9_23") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_SWEATER CASE HASH("CLO_AWF_U_9_22") RETURN CAREER_ITEM_LV_RED_LUCKY_PLUCKER_SWEATER ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_U_9_21") RETURN CAREER_ITEM_LV_BOLT_BURGER_SWEATER CASE HASH("CLO_AWF_U_9_20") CASE HASH("CLO_AWF_U_9_19") RETURN CAREER_ITEM_LV_SWEATER_PISSWASSER_SET CASE HASH("CLO_AWF_U_9_18") RETURN CAREER_ITEM_LV_DEGENATRON_SWEATER CASE HASH("CLO_AWF_U_9_17") CASE HASH("CLO_AWF_U_9_16") RETURN CAREER_ITEM_LV_SWEATER_HEAT_SET CASE HASH("CLO_AWF_U_9_15") CASE HASH("CLO_AWF_U_9_14") RETURN CAREER_ITEM_LV_SWEATER_ME_TV_SET CASE HASH("CLO_AWF_U_9_13") CASE HASH("CLO_AWF_U_9_12") RETURN CAREER_ITEM_LV_SWEATER_ECOLA_SET CASE HASH("CLO_AWF_U_9_11") RETURN CAREER_ITEM_LV_BLACK_CLUCKIN_BELL_SWEATER CASE HASH("CLO_AWF_U_9_10") RETURN CAREER_ITEM_LV_BLUE_CLUCKIN_BELL_SWEATER CASE HASH("CLO_AWF_U_9_9") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_SWEATER CASE HASH("CLO_AWF_U_9_8") CASE HASH("CLO_AWF_U_9_7") RETURN CAREER_ITEM_LV_SWEATER_TACO_BOMB_SET CASE HASH("CLO_AWF_U_9_6") RETURN CAREER_ITEM_LV_TACO_BOMB_CHILLI_SWEATER CASE HASH("CLO_AWF_U_9_5") RETURN CAREER_ITEM_LV_WIGWAM_SWEATER CASE HASH("CLO_AWF_U_9_4") CASE HASH("CLO_AWF_U_9_3") RETURN CAREER_ITEM_LV_SWEATER_SPRUNK_SET CASE HASH("CLO_AWF_U_9_0") RETURN CAREER_ITEM_LV_RED_BURGER_SHOT_SWEATER CASE HASH("CLO_AWF_U_9_1") RETURN CAREER_ITEM_LV_BLACK_BURGER_SHOT_SWEATER CASE HASH("CLO_AWF_U_9_2") RETURN CAREER_ITEM_LV_BURGER_SHOT_PLAIN_TEXT_SWEATER ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_U_7_17") RETURN CAREER_ITEM_LV_TACO_HOODIE CASE HASH("CLO_AWF_U_7_16") RETURN CAREER_ITEM_LV_LEMON_HOODIE CASE HASH("CLO_AWF_U_7_15") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_HOODIE CASE HASH("CLO_AWF_U_7_14") RETURN CAREER_ITEM_LV_CELLS_HOODIE CASE HASH("CLO_AWF_U_7_13") RETURN CAREER_ITEM_LV_REDWOOD_HOODIE CASE HASH("CLO_AWF_U_7_12") RETURN CAREER_ITEM_LV_MUSHROOM_HOODIE CASE HASH("CLO_AWF_U_7_11") RETURN CAREER_ITEM_LV_CHIPS_HOODIE CASE HASH("CLO_AWF_U_7_10") RETURN CAREER_ITEM_LV_PIZZA_HOODIE CASE HASH("CLO_AWF_U_7_9") RETURN CAREER_ITEM_LV_LOGGER_LIGHT_HOODIE CASE HASH("CLO_AWF_U_7_8") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_HOODIE CASE HASH("CLO_AWF_U_7_7") RETURN CAREER_ITEM_LV_DOUGHNUT_HOODIE CASE HASH("CLO_AWF_U_7_6") RETURN CAREER_ITEM_LV_HOT_DOG_HOODIE CASE HASH("CLO_AWF_U_7_5") RETURN CAREER_ITEM_LV_BURGER_SHOT_HOODIE CASE HASH("CLO_AWF_U_7_4") RETURN CAREER_ITEM_LV_PISSWASSER_HOODIE CASE HASH("CLO_AWF_U_7_3") RETURN CAREER_ITEM_LV_PATRIOT_HOODIE CASE HASH("CLO_AWF_U_7_2") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_ORANGE_HOODIE CASE HASH("CLO_AWF_U_7_1") RETURN CAREER_ITEM_LV_TACO_BOMB_HOODIE CASE HASH("CLO_AWF_U_7_0") RETURN CAREER_ITEM_LV_BENEDICT_HOODIE ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_PH_3_3") RETURN CAREER_ITEM_LV_HOT_DOG_BUCKET_HAT CASE HASH("CLO_AWF_PH_3_2") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_BUCKET_HAT CASE HASH("CLO_AWF_PH_3_1") RETURN CAREER_ITEM_LV_BURGER_SHOT_BUCKET_HAT CASE HASH("CLO_AWF_PH_3_0") RETURN CAREER_ITEM_LV_TACO_BUCKET_HAT CASE HASH("CLO_AWF_PH_2_18") CASE HASH("CLO_AWF_PH_2_17") CASE HASH("CLO_AWF_PH_2_8") CASE HASH("CLO_AWF_PH_1_18") CASE HASH("CLO_AWF_PH_1_17") CASE HASH("CLO_AWF_PH_1_8") RETURN CAREER_ITEM_LV_TACO_BOMB_CAP_SET CASE HASH("CLO_AWF_PH_2_16") CASE HASH("CLO_AWF_PH_2_15") CASE HASH("CLO_AWF_PH_1_16") CASE HASH("CLO_AWF_PH_1_15") RETURN CAREER_ITEM_LV_PISSWASSER_CAP_SET CASE HASH("CLO_AWF_PH_2_14") CASE HASH("CLO_AWF_PH_2_13") CASE HASH("CLO_AWF_PH_1_14") CASE HASH("CLO_AWF_PH_1_13") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_REPEAT_LOGO_CAP_SET CASE HASH("CLO_AWF_PH_2_12") CASE HASH("CLO_AWF_PH_2_11") CASE HASH("CLO_AWF_PH_1_12") CASE HASH("CLO_AWF_PH_1_11") RETURN CAREER_ITEM_LV_LUCKY_PLUCKER_LOGO_CAP_SET CASE HASH("CLO_AWF_PH_2_10") CASE HASH("CLO_AWF_PH_2_9") CASE HASH("CLO_AWF_PH_2_7") CASE HASH("CLO_AWF_PH_1_10") CASE HASH("CLO_AWF_PH_1_9") CASE HASH("CLO_AWF_PH_1_7") RETURN CAREER_ITEM_LV_HOT_DOG_CAP_SET CASE HASH("CLO_AWF_PH_2_6") CASE HASH("CLO_AWF_PH_1_6") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_WHITE_CAP CASE HASH("CLO_AWF_PH_2_5") CASE HASH("CLO_AWF_PH_2_4") CASE HASH("CLO_AWF_PH_1_5") CASE HASH("CLO_AWF_PH_1_4") RETURN CAREER_ITEM_LV_CLUCKIN_BELL_LOGO_CAP_SET CASE HASH("CLO_AWF_PH_2_3") CASE HASH("CLO_AWF_PH_1_3") RETURN CAREER_ITEM_LV_BURGER_SHOT_TARGET_CAP CASE HASH("CLO_AWF_PH_2_2") CASE HASH("CLO_AWF_PH_1_2") RETURN CAREER_ITEM_LV_BURGER_SHOT_LOGO_CAP CASE HASH("CLO_AWF_PH_2_1") CASE HASH("CLO_AWF_PH_2_0") CASE HASH("CLO_AWF_PH_1_1") CASE HASH("CLO_AWF_PH_1_0") RETURN CAREER_ITEM_LV_BURGER_SHOT_TEXT_LOGO_SET ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_L_5_11") CASE HASH("CLO_AWF_L_5_10") CASE HASH("CLO_AWF_L_5_9") CASE HASH("CLO_AWF_L_5_8") CASE HASH("CLO_AWF_L_5_7") CASE HASH("CLO_AWF_L_5_6") CASE HASH("CLO_AWF_L_5_5") CASE HASH("CLO_AWF_L_5_4") CASE HASH("CLO_AWF_L_5_3") CASE HASH("CLO_AWF_L_5_2") CASE HASH("CLO_AWF_L_5_1") CASE HASH("CLO_AWF_L_5_0") CASE HASH("CLO_AWF_F_7_7")// Boots unlock with pants CASE HASH("CLO_AWF_F_7_6") CASE HASH("CLO_AWF_F_7_5") CASE HASH("CLO_AWF_F_7_4") CASE HASH("CLO_AWF_F_7_3") CASE HASH("CLO_AWF_F_7_2") CASE HASH("CLO_AWF_F_7_1") CASE HASH("CLO_AWF_F_7_0") RETURN CAREER_ITEM_LV_COMBO_PANTS_SET CASE HASH("CLO_AWF_L_3_11") CASE HASH("CLO_AWF_L_3_10") CASE HASH("CLO_AWF_L_3_9") CASE HASH("CLO_AWF_L_3_8") CASE HASH("CLO_AWF_L_3_7") CASE HASH("CLO_AWF_L_3_6") CASE HASH("CLO_AWF_L_3_5") CASE HASH("CLO_AWF_L_3_4") CASE HASH("CLO_AWF_L_3_3") CASE HASH("CLO_AWF_L_3_2") CASE HASH("CLO_AWF_L_3_1") CASE HASH("CLO_AWF_L_3_0") RETURN CAREER_ITEM_LV_LEATHER_PANTS_SET CASE HASH("CLO_AWF_L_1_13") CASE HASH("CLO_AWF_L_1_12") CASE HASH("CLO_AWF_L_1_11") CASE HASH("CLO_AWF_L_1_10") CASE HASH("CLO_AWF_L_1_9") CASE HASH("CLO_AWF_L_1_8") CASE HASH("CLO_AWF_L_1_7") CASE HASH("CLO_AWF_L_1_6") CASE HASH("CLO_AWF_L_1_5") CASE HASH("CLO_AWF_L_1_4") CASE HASH("CLO_AWF_L_1_3") CASE HASH("CLO_AWF_L_1_2") CASE HASH("CLO_AWF_L_1_1") CASE HASH("CLO_AWF_L_1_0") RETURN CAREER_ITEM_LV_CHAIN_SHORTS_SET CASE HASH("CLO_AWF_L_0_13") CASE HASH("CLO_AWF_L_0_12") CASE HASH("CLO_AWF_L_0_11") CASE HASH("CLO_AWF_L_0_10") CASE HASH("CLO_AWF_L_0_9") CASE HASH("CLO_AWF_L_0_8") CASE HASH("CLO_AWF_L_0_7") CASE HASH("CLO_AWF_L_0_6") CASE HASH("CLO_AWF_L_0_5") CASE HASH("CLO_AWF_L_0_4") CASE HASH("CLO_AWF_L_0_3") CASE HASH("CLO_AWF_L_0_2") CASE HASH("CLO_AWF_L_0_1") CASE HASH("CLO_AWF_L_0_0") RETURN CAREER_ITEM_LV_CHAIN_PANTS_SET ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_F_8_15") CASE HASH("CLO_AWF_F_8_14") CASE HASH("CLO_AWF_F_8_13") CASE HASH("CLO_AWF_F_8_12") CASE HASH("CLO_AWF_F_8_11") CASE HASH("CLO_AWF_F_8_10") CASE HASH("CLO_AWF_F_8_9") CASE HASH("CLO_AWF_F_8_8") CASE HASH("CLO_AWF_F_8_7") CASE HASH("CLO_AWF_F_8_6") CASE HASH("CLO_AWF_F_8_5") CASE HASH("CLO_AWF_F_8_4") CASE HASH("CLO_AWF_F_8_3") CASE HASH("CLO_AWF_F_8_2") CASE HASH("CLO_AWF_F_8_1") CASE HASH("CLO_AWF_F_8_0") RETURN CAREER_ITEM_LV_METAL_PLATED_LEATHER_BOOTS CASE HASH("CLO_AWF_F_4_2") CASE HASH("CLO_AWF_F_4_1") CASE HASH("CLO_AWF_F_4_0") RETURN CAREER_ITEM_LV_SKULL_HARNESS_BOOTS CASE HASH("CLO_AWF_F_2_1") CASE HASH("CLO_AWF_F_2_0") RETURN CAREER_ITEM_LV_FLAMING_SKULL_BOOTS CASE HASH("CLO_AWF_F_0_25") CASE HASH("CLO_AWF_F_0_24") CASE HASH("CLO_AWF_F_0_23") CASE HASH("CLO_AWF_F_0_22") CASE HASH("CLO_AWF_F_0_21") CASE HASH("CLO_AWF_F_0_20") CASE HASH("CLO_AWF_F_0_19") CASE HASH("CLO_AWF_F_0_18") CASE HASH("CLO_AWF_F_0_17") CASE HASH("CLO_AWF_F_0_16") CASE HASH("CLO_AWF_F_0_15") CASE HASH("CLO_AWF_F_0_14") CASE HASH("CLO_AWF_F_0_13") CASE HASH("CLO_AWF_F_0_12") CASE HASH("CLO_AWF_F_0_11") CASE HASH("CLO_AWF_F_0_10") CASE HASH("CLO_AWF_F_0_9") CASE HASH("CLO_AWF_F_0_8") CASE HASH("CLO_AWF_F_0_7") CASE HASH("CLO_AWF_F_0_6") CASE HASH("CLO_AWF_F_0_5") CASE HASH("CLO_AWF_F_0_4") CASE HASH("CLO_AWF_F_0_3") CASE HASH("CLO_AWF_F_0_2") CASE HASH("CLO_AWF_F_0_1") CASE HASH("CLO_AWF_F_0_0") RETURN CAREER_ITEM_LV_LIGHT_UP_SHOES ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_O_B_1") CASE HASH("CLO_AWF_O_B_0") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_ROBO CASE HASH("CLO_AWF_O_B_2") CASE HASH("CLO_AWF_O_B_3") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_SUPERHERO CASE HASH("CLO_AWF_O_B_4") CASE HASH("CLO_AWF_O_B_5") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_SHAPES CASE HASH("CLO_AWF_O_B_6") CASE HASH("CLO_AWF_O_B_7") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_LINES CASE HASH("CLO_AWF_O_B_8") CASE HASH("CLO_AWF_O_B_9") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_ALIEN CASE HASH("CLO_AWF_O_B_10") CASE HASH("CLO_AWF_O_B_11") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_SCALES CASE HASH("CLO_AWF_O_B_12") CASE HASH("CLO_AWF_O_B_13") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_GALAXY CASE HASH("CLO_AWF_O_B_14") CASE HASH("CLO_AWF_O_B_15") RETURN CAREER_ITEM_HV_SCI_FI_MORPHSUIT_NEBULA CASE HASH("CLO_AWF_O_C_11") CASE HASH("CLO_AWF_O_C_10") CASE HASH("CLO_AWF_O_C_9") CASE HASH("CLO_AWF_O_C_8") CASE HASH("CLO_AWF_O_C_7") CASE HASH("CLO_AWF_O_C_6") CASE HASH("CLO_AWF_O_C_5") CASE HASH("CLO_AWF_O_C_4") CASE HASH("CLO_AWF_O_C_3") CASE HASH("CLO_AWF_O_C_2") CASE HASH("CLO_AWF_O_C_1") CASE HASH("CLO_AWF_O_C_0") RETURN CAREER_ITEM_HV_ALIEN_RETRO_OUTFIT CASE HASH("CLO_AWF_O_D_11") CASE HASH("CLO_AWF_O_D_10") CASE HASH("CLO_AWF_O_D_9") CASE HASH("CLO_AWF_O_D_8") CASE HASH("CLO_AWF_O_D_7") CASE HASH("CLO_AWF_O_D_6") CASE HASH("CLO_AWF_O_D_5") CASE HASH("CLO_AWF_O_D_4") CASE HASH("CLO_AWF_O_D_3") CASE HASH("CLO_AWF_O_D_2") CASE HASH("CLO_AWF_O_D_1") CASE HASH("CLO_AWF_O_D_0") RETURN CAREER_ITEM_HV_ALIEN_BUGEYE_OUTFIT CASE HASH("CLO_AWF_O_E_11") CASE HASH("CLO_AWF_O_E_10") CASE HASH("CLO_AWF_O_E_9") CASE HASH("CLO_AWF_O_E_8") CASE HASH("CLO_AWF_O_E_7") CASE HASH("CLO_AWF_O_E_6") CASE HASH("CLO_AWF_O_E_5") CASE HASH("CLO_AWF_O_E_4") CASE HASH("CLO_AWF_O_E_3") CASE HASH("CLO_AWF_O_E_2") CASE HASH("CLO_AWF_O_E_1") CASE HASH("CLO_AWF_O_E_0") RETURN CAREER_ITEM_HV_ALIEN_MONSTROUS_OUTFIT CASE HASH("CLO_AWF_O_F_17") CASE HASH("CLO_AWF_O_F_16") CASE HASH("CLO_AWF_O_F_15") CASE HASH("CLO_AWF_O_F_14") CASE HASH("CLO_AWF_O_F_13") CASE HASH("CLO_AWF_O_F_12") CASE HASH("CLO_AWF_O_F_11") CASE HASH("CLO_AWF_O_F_10") CASE HASH("CLO_AWF_O_F_9") CASE HASH("CLO_AWF_O_F_8") CASE HASH("CLO_AWF_O_F_7") CASE HASH("CLO_AWF_O_F_6") CASE HASH("CLO_AWF_O_F_5") CASE HASH("CLO_AWF_O_F_4") CASE HASH("CLO_AWF_O_F_3") CASE HASH("CLO_AWF_O_F_2") CASE HASH("CLO_AWF_O_F_1") CASE HASH("CLO_AWF_O_F_0") RETURN CAREER_ITEM_HV_RETRO_FUT_SPACE_SUIT CASE HASH("CLO_AWF_O_G_7") CASE HASH("CLO_AWF_O_G_6") CASE HASH("CLO_AWF_O_G_5") CASE HASH("CLO_AWF_O_G_4") CASE HASH("CLO_AWF_O_G_3") CASE HASH("CLO_AWF_O_G_2") CASE HASH("CLO_AWF_O_G_1") CASE HASH("CLO_AWF_O_G_0") RETURN CAREER_ITEM_HV_MODERN_SPACE_SUIT CASE HASH("CLO_AWF_O_H_10") CASE HASH("CLO_AWF_O_H_9") CASE HASH("CLO_AWF_O_H_8") CASE HASH("CLO_AWF_O_H_7") CASE HASH("CLO_AWF_O_H_6") CASE HASH("CLO_AWF_O_H_5") CASE HASH("CLO_AWF_O_H_4") CASE HASH("CLO_AWF_O_H_3") CASE HASH("CLO_AWF_O_H_2") CASE HASH("CLO_AWF_O_H_1") CASE HASH("CLO_AWF_O_H_0") RETURN CAREER_ITEM_HV_CYBERTECH_SPACE_SUIT CASE HASH("CLO_AWF_O_I_1") RETURN CAREER_ITEM_HV_POGO_OUTFIT CASE HASH("CLO_AWF_O_I_2") RETURN CAREER_ITEM_HV_REPUBLICAN_SPACE_RANGER ENDSWITCH SWITCH iItemHash CASE HASH("CLO_AWF_B_12_16") CASE HASH("CLO_AWF_B_12_15") CASE HASH("CLO_AWF_B_12_14") CASE HASH("CLO_AWF_B_12_13") CASE HASH("CLO_AWF_B_12_12") CASE HASH("CLO_AWF_B_12_11") CASE HASH("CLO_AWF_B_12_10") CASE HASH("CLO_AWF_B_12_9") CASE HASH("CLO_AWF_B_12_8") CASE HASH("CLO_AWF_B_12_7") CASE HASH("CLO_AWF_B_12_6") CASE HASH("CLO_AWF_B_12_5") CASE HASH("CLO_AWF_B_12_4") CASE HASH("CLO_AWF_B_12_3") CASE HASH("CLO_AWF_B_12_2") CASE HASH("CLO_AWF_B_12_1") CASE HASH("CLO_AWF_B_12_0") RETURN CAREER_ITEM_HV_SPACE_GOGGLES CASE HASH("CLO_AWF_B_11_0") RETURN CAREER_ITEM_HV_CLUCKIN_BELL_MASK CASE HASH("CLO_AWF_B_10_0") RETURN CAREER_ITEM_HV_BURGERSHOT_MASK CASE HASH("CLO_AWF_B_9_0") RETURN CAREER_ITEM_HV_PACO_THE_TACO_MASK CASE HASH("CLO_AWF_B_8_11") CASE HASH("CLO_AWF_B_8_10") CASE HASH("CLO_AWF_B_8_9") CASE HASH("CLO_AWF_B_8_8") CASE HASH("CLO_AWF_B_8_7") CASE HASH("CLO_AWF_B_8_6") CASE HASH("CLO_AWF_B_8_5") CASE HASH("CLO_AWF_B_8_4") CASE HASH("CLO_AWF_B_8_3") CASE HASH("CLO_AWF_B_8_2") CASE HASH("CLO_AWF_B_8_1") CASE HASH("CLO_AWF_B_8_0") RETURN CAREER_ITEM_HV_DYSTOPIA_AIRMAN_MASK CASE HASH("CLO_AWF_B_4_11") CASE HASH("CLO_AWF_B_4_10") CASE HASH("CLO_AWF_B_4_9") CASE HASH("CLO_AWF_B_4_8") CASE HASH("CLO_AWF_B_4_7") CASE HASH("CLO_AWF_B_4_6") CASE HASH("CLO_AWF_B_4_5") CASE HASH("CLO_AWF_B_4_4") CASE HASH("CLO_AWF_B_4_3") CASE HASH("CLO_AWF_B_4_2") CASE HASH("CLO_AWF_B_4_1") CASE HASH("CLO_AWF_B_4_0") RETURN CAREER_ITEM_HV_LEATHER_FEATHER_MASK CASE HASH("CLO_AWF_B_3_7") CASE HASH("CLO_AWF_B_3_6") CASE HASH("CLO_AWF_B_3_5") CASE HASH("CLO_AWF_B_3_4") CASE HASH("CLO_AWF_B_3_3") CASE HASH("CLO_AWF_B_3_2") CASE HASH("CLO_AWF_B_3_1") CASE HASH("CLO_AWF_B_3_0") RETURN CAREER_ITEM_HV_HOODED_MAW_MASK CASE HASH("CLO_AWF_B_2_15") CASE HASH("CLO_AWF_B_2_14") CASE HASH("CLO_AWF_B_2_13") CASE HASH("CLO_AWF_B_2_12") CASE HASH("CLO_AWF_B_2_11") CASE HASH("CLO_AWF_B_2_10") CASE HASH("CLO_AWF_B_2_9") CASE HASH("CLO_AWF_B_2_8") CASE HASH("CLO_AWF_B_2_7") CASE HASH("CLO_AWF_B_2_6") CASE HASH("CLO_AWF_B_2_5") CASE HASH("CLO_AWF_B_2_4") CASE HASH("CLO_AWF_B_2_3") CASE HASH("CLO_AWF_B_2_2") CASE HASH("CLO_AWF_B_2_1") CASE HASH("CLO_AWF_B_2_0") RETURN CAREER_ITEM_HV_DYSTOPIA_PLAGUE_MASK ENDSWITCH RETURN CAREER_ITEM_INVALID ENDFUNC /// PURPOSE: /// Gets the unlock associated with the clothing item /// PARAMS: /// tlItemLabel - the clothing items label to check /// RETURN: /// The unlock the clothing item is locked by FUNC ARENA_CAREER_UNLOCK_ITEMS GET_ARENA_CAREER_CLOTHING_UNLOCK_FROM_TEXT_LABEL(TEXT_LABEL_15 tlItemLabel) INT iItemHash = GET_HASH_KEY(TEXT_LABEL_TO_STRING(tlItemLabel)) IF IS_PLAYER_FEMALE() RETURN GET_ARENA_CAREER_FEMALE_CLOTHING_UNLOCK_FROM_ITEM_HASH(iItemHash) ENDIF RETURN GET_ARENA_CAREER_MALE_CLOTHING_UNLOCK_FROM_ITEM_HASH(iItemHash) ENDFUNC /// PURPOSE: /// Checks if the clothing item text label is a locked item /// PARAMS: /// tlItemLabel - the clothing items label to check /// RETURN: /// If the item is locked FUNC BOOL IS_ARENA_WAR_ITEM_LOCKED_BY_SCRIPT(TEXT_LABEL_15 tlTextLabel) ARENA_CAREER_UNLOCK_ITEMS eCareerItem = GET_ARENA_CAREER_CLOTHING_UNLOCK_FROM_TEXT_LABEL(tlTextLabel) IF eCareerItem != CAREER_ITEM_INVALID RETURN NOT IS_ARENA_CAREER_ITEM_UNLOCKED(eCareerItem) ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Gets the unlock associated with the clothing item /// PARAMS: /// tlItemLabel - the clothing items label to check /// RETURN: /// The unlock the clothing item is locked by FUNC CAR_CLUB_REP_REWARDS GET_CAR_MEET_CLOTHING_UNLOCK_FROM_TEXT_LABEL(TEXT_LABEL_15 tlItemLabel) INT iItemHash = GET_HASH_KEY(TEXT_LABEL_TO_STRING(tlItemLabel)) IF IS_PLAYER_FEMALE() RETURN GET_CAR_MEET_FEMALE_CLOTHING_UNLOCK_FROM_ITEM_HASH(iItemHash) ENDIF RETURN GET_CAR_MEET_MALE_CLOTHING_UNLOCK_FROM_ITEM_HASH(iItemHash) ENDFUNC /// PURPOSE: /// Checks if the clothing item text label is a locked item /// PARAMS: /// tlItemLabel - the clothing items label to check /// RETURN: /// If the item is locked FUNC BOOL IS_CAR_MEET_ITEM_LOCKED_BY_SCRIPT(TEXT_LABEL_15 tlTextLabel) CAR_CLUB_REP_REWARDS eCarMeetItem = GET_CAR_MEET_CLOTHING_UNLOCK_FROM_TEXT_LABEL(tlTextLabel) IF eCarMeetItem != REP_REWARD_INVALID RETURN NOT GET_PACKED_STAT_BOOL(GET_CAR_CLUB_REP_REWARD_PACKED_STAT(eCarMeetItem)) ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(TATTOO_NAME_ENUM eTattooEnum, INT iPreset, BOOL bMale) IF eTattooEnum = INVALID_TATTOO IF bMale eTattooEnum = GET_TATTOO_ENUM_FROM_DLC_HASH(iPreset, TATTOO_MP_FM) ELSE eTattooEnum = GET_TATTOO_ENUM_FROM_DLC_HASH(iPreset, TATTOO_MP_FM_F) ENDIF ENDIF RETURN (IS_MP_TATTOO_UNLOCKED(eTattooEnum) OR IS_MP_TATTOO_PURCHASED(eTattooEnum)) ENDFUNC FUNC BOOL IS_DLC_OVERLAY_LOCKED_BY_SCRIPT(INT iCollection, INT iPreset, TATTOO_NAME_ENUM eTattooEnum) #IF FEATURE_DLC_1_2022 SWITCH iCollection CASE HASH("mpSum2_overlays") SWITCH iPreset CASE HASH("MP_Sum2_Tee_000_M") // Black LD Organics Tee CASE HASH("MP_Sum2_Tee_000_F") // Black LD Organics Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SUM2_LD_ORGANICS_TSHIRT_BLACK) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Sum2_Tee_000_M")))) BREAK CASE HASH("MP_Sum2_Tee_001_M") // White LD Organics Tee CASE HASH("MP_Sum2_Tee_001_F") // White LD Organics Tee IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COLLECTED_LD_ORGANICS_OUTFIT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer22RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Sum2_Tee_001_M")))) BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF #IF FEATURE_TUNER SWITCH iCollection CASE HASH("mpTuner_overlays") SWITCH iPreset CASE HASH("MP_Tuner_Tee_000_M") CASE HASH("MP_Tuner_Tee_000_F") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_FACES_OF_DEATH) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_FACES_OF_DEATH, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_FACES_OF_DEATH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_000_M")))) BREAK CASE HASH("MP_Tuner_Tee_002_M") CASE HASH("MP_Tuner_Tee_002_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_STRAIGHT_TO_VIDEO) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_STRAIGHT_TO_VIDEO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_002_M")))) BREAK CASE HASH("MP_Tuner_Tee_003_M") CASE HASH("MP_Tuner_Tee_003_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEY_C_MONKEY_DO) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_MONKEY_C_MONKEY_DO) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_003_M")))) BREAK CASE HASH("MP_Tuner_Tee_005_M") CASE HASH("MP_Tuner_Tee_005_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAINED_TO_KILL) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_TRAINED_TO_KILL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_005_M")))) BREAK CASE HASH("MP_Tuner_Tee_006_M") CASE HASH("MP_Tuner_Tee_006_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DIRECTOR) OR GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_DIRECTOR) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_006_M")))) BREAK CASE HASH("MP_Tuner_Tee_008_M") CASE HASH("MP_Tuner_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_1_BANSHEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_008_M")))) BREAK CASE HASH("MP_Tuner_Tee_010_M") CASE HASH("MP_Tuner_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_2_BANSHEE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_010_M")))) BREAK CASE HASH("MP_Tuner_Tee_011_M") CASE HASH("MP_Tuner_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_3_LSC) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_011_M")))) BREAK CASE HASH("MP_Tuner_Tee_012_M") CASE HASH("MP_Tuner_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_4_RSG) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_012_M")))) BREAK CASE HASH("MP_Tuner_Tee_013_M") CASE HASH("MP_Tuner_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_5_WASTED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_013_M")))) BREAK CASE HASH("MP_Tuner_Tee_014_M") CASE HASH("MP_Tuner_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_6_BAT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_014_M")))) BREAK CASE HASH("MP_Tuner_Tee_015_M") CASE HASH("MP_Tuner_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_7_KNUCKLE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_015_M")))) BREAK CASE HASH("MP_Tuner_Tee_016_M") CASE HASH("MP_Tuner_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EVENT_TEE_8_RAMPAGE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockTunerRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Tuner_Tee_016_M")))) BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // Island Heist SWITCH iCollection CASE HASH("mpHeist4_overlays") SWITCH iPreset CASE HASH("MP_Heist4_Tee_030_M") CASE HASH("MP_Heist4_Tee_030_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KJAH_RADIO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_030_M")))) BREAK CASE HASH("MP_Heist4_Tee_032_M") CASE HASH("MP_Heist4_Tee_032_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KROSE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_032_M")))) BREAK CASE HASH("MP_Heist4_Tee_028_M") CASE HASH("MP_Heist4_Tee_028_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_EMOTION_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_028_M")))) BREAK CASE HASH("MP_Heist4_Tee_029_M") CASE HASH("MP_Heist4_Tee_029_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KDST_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_029_M")))) BREAK CASE HASH("MP_Heist4_Tee_031_M") CASE HASH("MP_Heist4_Tee_031_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BOUNCE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_031_M")))) BREAK CASE HASH("MP_Heist4_Tee_022_M") CASE HASH("MP_Heist4_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_FAKE_VAPID_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_022_M")))) BREAK CASE HASH("MP_Heist4_Tee_023_M") CASE HASH("MP_Heist4_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_I_MARRIED_MY_DAD_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_023_M")))) BREAK CASE HASH("MP_Heist4_Tee_020_M") CASE HASH("MP_Heist4_Tee_020_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_TOESHOES_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_020_M")))) BREAK CASE HASH("MP_Heist4_Tee_021_M") CASE HASH("MP_Heist4_Tee_021_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VANILLA_UNICORN_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_021_M")))) BREAK CASE HASH("MP_Heist4_Tee_003_M") CASE HASH("MP_Heist4_Tee_003_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_STEEL_HORSE_SOLID_LOGO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_003_M")))) BREAK CASE HASH("MP_Heist4_Tee_004_M") CASE HASH("MP_Heist4_Tee_004_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WESTERN_BLACK_LOGO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_004_M")))) BREAK CASE HASH("MP_Heist4_Tee_005_M") CASE HASH("MP_Heist4_Tee_005_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WHITE_NAGASAKI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_005_M")))) BREAK CASE HASH("MP_Heist4_Tee_006_M") CASE HASH("MP_Heist4_Tee_006_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_PRINCIPE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_006_M")))) BREAK CASE HASH("MP_Heist4_Tee_027_M") CASE HASH("MP_Heist4_Tee_027_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_RS_NOISE_LOGO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_027_M")))) BREAK CASE HASH("MP_Heist4_Tee_026_M") CASE HASH("MP_Heist4_Tee_026_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_RS_NOISE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_026_M")))) BREAK CASE HASH("MP_Heist4_Tee_025_M") CASE HASH("MP_Heist4_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_RS_RAZOR_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_025_M")))) BREAK CASE HASH("MP_Heist4_Tee_024_M") CASE HASH("MP_Heist4_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WHITE_RS_CAMO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_024_M")))) BREAK CASE HASH("MP_Heist4_Tee_002_M") CASE HASH("MP_Heist4_Tee_002_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_LSUR_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_002_M")))) BREAK CASE HASH("MP_Heist4_Tee_001_M") CASE HASH("MP_Heist4_Tee_001_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_REBEL_RADIO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_001_M")))) BREAK CASE HASH("MP_Heist4_Tee_000_M") CASE HASH("MP_Heist4_Tee_000_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_CHANNEL_X_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_000_M")))) BREAK CASE HASH("MP_Heist4_Tee_007_M") CASE HASH("MP_Heist4_Tee_007_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_ALBANY_VINTAGE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_007_M")))) BREAK CASE HASH("MP_Heist4_Tee_008_M") CASE HASH("MP_Heist4_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BENEFACTOR_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_008_M")))) BREAK CASE HASH("MP_Heist4_Tee_009_M") CASE HASH("MP_Heist4_Tee_009_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BRAVADO_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_009_M")))) BREAK CASE HASH("MP_Heist4_Tee_010_M") CASE HASH("MP_Heist4_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_DECLASSE_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_010_M")))) BREAK CASE HASH("MP_Heist4_Tee_011_M") CASE HASH("MP_Heist4_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_DINKA_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_011_M")))) BREAK CASE HASH("MP_Heist4_Tee_012_M") CASE HASH("MP_Heist4_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_GROTTI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_012_M")))) BREAK CASE HASH("MP_Heist4_Tee_013_M") CASE HASH("MP_Heist4_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_LAPADATI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_013_M")))) BREAK CASE HASH("MP_Heist4_Tee_014_M") CASE HASH("MP_Heist4_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_OCELOT_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_014_M")))) BREAK CASE HASH("MP_Heist4_Tee_015_M") CASE HASH("MP_Heist4_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_OVERFLOD_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_015_M")))) BREAK CASE HASH("MP_Heist4_Tee_016_M") CASE HASH("MP_Heist4_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_PEGASSI_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_016_M")))) BREAK CASE HASH("MP_Heist4_Tee_017_M") CASE HASH("MP_Heist4_Tee_017_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_PFISTER_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_017_M")))) BREAK CASE HASH("MP_Heist4_Tee_018_M") CASE HASH("MP_Heist4_Tee_018_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VAPID_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_018_M")))) BREAK CASE HASH("MP_Heist4_Tee_019_M") CASE HASH("MP_Heist4_Tee_019_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_WEENY_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_019_M")))) BREAK CASE HASH("MP_Heist4_Tee_033_M") CASE HASH("MP_Heist4_Tee_033_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BLUE_DIAMOND_RESORT_LS_FADED) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_033_M")))) BREAK // Tops - Island Heist Event Tee 9 // [CLO_H4M_DECL_45] Rockstar Logo CASE HASH("MP_Heist4_Tee_045_M") CASE HASH("MP_Heist4_Tee_045_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_9) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_045_M")))) BREAK // Tops - Island Heist Event Tee 11 // [CLO_H4M_DECL_46] X720 CASE HASH("MP_Heist4_Tee_046_M") CASE HASH("MP_Heist4_Tee_046_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_ISLAND_HEIST_EVENT_TEE_13) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_046_M")))) BREAK // Tops - Still Slipping Wavy T-Shirt // [CLO_H4M_DECL_48] Warped Smile CASE HASH("MP_Heist4_Tee_048_M") CASE HASH("MP_Heist4_Tee_048_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_STILL_SLIPPING_WAVY_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_048_M")))) BREAK // Tops - Still Slipping T-Shirt // [CLO_H4M_DECL_47] Smile CASE HASH("MP_Heist4_Tee_047_M") CASE HASH("MP_Heist4_Tee_047_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_STILL_SLIPPING_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_047_M")))) BREAK // [CLO_H4M_DECL_49] Keinemusik White CASE HASH("MP_Heist4_Tee_049_M") CASE HASH("MP_Heist4_Tee_049_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_KEINEMUSIK_WHITE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_049_M")))) BREAK // [CLO_H4M_DECL_51] Keinemusik Blue CASE HASH("MP_Heist4_Tee_051_M") CASE HASH("MP_Heist4_Tee_051_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_KEINEMUSIK_BLUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_051_M")))) BREAK // [CLO_H4M_DECL_53] Moodyman CASE HASH("MP_Heist4_Tee_053_M") CASE HASH("MP_Heist4_Tee_053_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_MOODYMAN_ORANGE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_053_M")))) BREAK // [CLO_H4M_DECL_54] Palms Trax CASE HASH("MP_Heist4_Tee_054_M") CASE HASH("MP_Heist4_Tee_054_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_TOPS_PALMS_TRAX_PURPLE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_054_M")))) BREAK // [CLO_H4M_DECL_55] Still Slipping Blarneys Tee CASE HASH("MP_Heist4_Tee_055_M") CASE HASH("MP_Heist4_Tee_055_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_STILL_SLIPPING_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_055_M")))) BREAK // [CLO_H4M_DECL_57] Still Slipping Friend Tee CASE HASH("MP_Heist4_Tee_057_M") CASE HASH("MP_Heist4_Tee_057_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_STILL_SLIPPING_EVENT_TEE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_057_M")))) BREAK // [CLO_H4M_DECL_59] Moodymann Whatupdoe Tee CASE HASH("MP_Heist4_Tee_059_M") CASE HASH("MP_Heist4_Tee_059_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MOODYMANN_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_059_M")))) BREAK // [CLO_H4M_DECL_61] Moodymann Big D Tee CASE HASH("MP_Heist4_Tee_061_M") CASE HASH("MP_Heist4_Tee_061_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_MOODYMANN_EVENT_TEE_2) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_061_M")))) BREAK // [CLO_H4M_DECL_63] Keinemusik Cayo Perico Tee CASE HASH("MP_Heist4_Tee_063_M") CASE HASH("MP_Heist4_Tee_063_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_KEINEMUSIK_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_063_M")))) BREAK // [CLO_H4M_DECL_65] Palms Trax LS Tee CASE HASH("MP_Heist4_Tee_065_M") CASE HASH("MP_Heist4_Tee_065_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_PALMS_TRAX_EVENT_TEE_1) #IF IS_DEBUG_BUILD OR g_bDebugUnlockIslandHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Heist4_Tee_065_M")))) BREAK ENDSWITCH BREAK ENDSWITCH // Summer 2020 SWITCH iCollection CASE HASH("mpSum_overlays") SWITCH iPreset // [CLO_SUF_DECL_0] BCTR Aged Tee CASE HASH("mpSum_Tee_000_M") CASE HASH("mpSum_Tee_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_BCTR_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_000_M")))) BREAK // [CLO_SUF_DECL_1] BCTR Tee CASE HASH("mpSum_Tee_001_M") CASE HASH("mpSum_Tee_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_BCTR_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_001_M")))) BREAK // [CLO_SUF_DECL_2] Cultstoppers Aged Tee CASE HASH("mpSum_Tee_002_M") CASE HASH("mpSum_Tee_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_CULTSTOPPERS_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_002_M")))) BREAK // [CLO_SUF_DECL_3] Cultstoppers Tee CASE HASH("mpSum_Tee_003_M") CASE HASH("mpSum_Tee_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_CULTSTOPPERS_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_003_M")))) BREAK // [CLO_SUF_DECL_4] Daily Globe Aged Tee CASE HASH("mpSum_Tee_004_M") CASE HASH("mpSum_Tee_004_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_DAILY_GLOBE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_004_M")))) BREAK // [CLO_SUF_DECL_5] Daily Globe Tee CASE HASH("mpSum_Tee_005_M") CASE HASH("mpSum_Tee_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_DAILY_GLOBE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_005_M")))) BREAK // [CLO_SUF_DECL_6] Eyefind Aged Tee CASE HASH("mpSum_Tee_006_M") CASE HASH("mpSum_Tee_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_EYEFIND_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_006_M")))) BREAK // [CLO_SUF_DECL_7] Eyefind Tee CASE HASH("mpSum_Tee_007_M") CASE HASH("mpSum_Tee_007_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_EYEFIND_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_007_M")))) BREAK // [CLO_SUF_DECL_8] Facade Aged Tee CASE HASH("mpSum_Tee_008_M") CASE HASH("mpSum_Tee_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FACADE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_008_M")))) BREAK // [CLO_SUF_DECL_9] Facade Tee CASE HASH("mpSum_Tee_009_M") CASE HASH("mpSum_Tee_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FACADE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_009_M")))) BREAK // [CLO_SUF_DECL_10] Fruit Aged Tee CASE HASH("mpSum_Tee_010_M") CASE HASH("mpSum_Tee_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FRUIT_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_010_M")))) BREAK // [CLO_SUF_DECL_11] Fruit Tee CASE HASH("mpSum_Tee_011_M") CASE HASH("mpSum_Tee_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_FRUIT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_011_M")))) BREAK // [CLO_SUF_DECL_12] LSHH Aged Tee CASE HASH("mpSum_Tee_012_M") CASE HASH("mpSum_Tee_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LSHH_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_012_M")))) BREAK // [CLO_SUF_DECL_13] LSHH Tee CASE HASH("mpSum_Tee_013_M") CASE HASH("mpSum_Tee_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_LSHH_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_013_M")))) BREAK // [CLO_SUF_DECL_14] MyRoom Aged Tee CASE HASH("mpSum_Tee_014_M") CASE HASH("mpSum_Tee_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_MYROOM_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_014_M")))) BREAK // [CLO_SUF_DECL_15] MyRoom Tee CASE HASH("mpSum_Tee_015_M") CASE HASH("mpSum_Tee_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_MYROOM_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_015_M")))) BREAK // [CLO_SUF_DECL_16] Rebel Aged Tee CASE HASH("mpSum_Tee_016_M") CASE HASH("mpSum_Tee_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_REBEL_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_016_M")))) BREAK // [CLO_SUF_DECL_17] Rebel Tee CASE HASH("mpSum_Tee_017_M") CASE HASH("mpSum_Tee_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_REBEL_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_017_M")))) BREAK // [CLO_SUF_DECL_18] Six Figure Aged Tee CASE HASH("mpSum_Tee_018_M") CASE HASH("mpSum_Tee_018_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_SIX_FIGURE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_018_M")))) BREAK // [CLO_SUF_DECL_19] Six Figure Tee CASE HASH("mpSum_Tee_019_M") CASE HASH("mpSum_Tee_019_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_SIX_FIGURE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_019_M")))) BREAK // [CLO_SUF_DECL_20] Trash Or Treasure Aged Tee CASE HASH("mpSum_Tee_020_M") CASE HASH("mpSum_Tee_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TRASH_OR_TREASURE_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_020_M")))) BREAK // [CLO_SUF_DECL_21] Trash Or Treasure Tee CASE HASH("mpSum_Tee_021_M") CASE HASH("mpSum_Tee_021_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TRASH_OR_TREASURE_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_021_M")))) BREAK // [CLO_SUF_DECL_22] Tw@ Logo Aged Tee CASE HASH("mpSum_Tee_022_M") CASE HASH("mpSum_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TWT_LOGO_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_022_M")))) BREAK // [CLO_SUF_DECL_23] Tw@ Logo Tee CASE HASH("mpSum_Tee_023_M") CASE HASH("mpSum_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_TWT_LOGO_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_023_M")))) BREAK // [CLO_SUF_DECL_24] Vapers Den Aged Tee CASE HASH("mpSum_Tee_024_M") CASE HASH("mpSum_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_VAPERS_DEN_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_024_M")))) BREAK // [CLO_SUF_DECL_25] Vapers Den Tee CASE HASH("mpSum_Tee_025_M") CASE HASH("mpSum_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_VAPERS_DEN_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_025_M")))) BREAK // [CLO_SUF_DECL_26] WingIt Aged Tee CASE HASH("mpSum_Tee_026_M") CASE HASH("mpSum_Tee_026_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_WINGIT_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_026_M")))) BREAK // [CLO_SUF_DECL_27] WingIt Tee CASE HASH("mpSum_Tee_027_M") CASE HASH("mpSum_Tee_027_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_WINGIT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_027_M")))) BREAK // [CLO_SUF_DECL_28] ZiT Aged Tee CASE HASH("mpSum_Tee_028_M") CASE HASH("mpSum_Tee_028_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_ZIT_AGED_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_028_M")))) BREAK // [CLO_SUF_DECL_29] ZiT Tee CASE HASH("mpSum_Tee_029_M") CASE HASH("mpSum_Tee_029_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_LOGIN_ZIT_TEE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_029_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* AXE OF FURY */ /************************/ SWITCH iCollection CASE HASH("mpSum_overlays") SWITCH iPreset // ELEVEN ELEVEN CASE HASH("mpSum_Tee_030_M") CASE HASH("mpSum_Tee_030_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_AXE_OF_FURY_ELEVEN_ELEVEN_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_030_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* QUB3D */ /************************/ SWITCH iCollection CASE HASH("mpSum_overlays") SWITCH iPreset // KING OF QUB3D CASE HASH("mpSum_Tee_031_M") CASE HASH("mpSum_Tee_031_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KINGOFQUB3D) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_KING_OF_QUB3D) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_031_M")))) BREAK // QUBISM CASE HASH("mpSum_Tee_032_M") CASE HASH("mpSum_Tee_032_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUBISM) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_QUBISM) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_032_M")))) BREAK // GOD OF QUB3D CASE HASH("mpSum_Tee_033_M") CASE HASH("mpSum_Tee_033_F") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_GODOFQUB3D) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_GOD_OF_QUB3D) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_033_M")))) BREAK // QUB3D CASE HASH("mpSum_Tee_034_M") CASE HASH("mpSum_Tee_034_F") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KINGOFQUB3D) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUBISM) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_GODOFQUB3D) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_QUIBITS)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_QUB3D_QUB3D) #IF IS_DEBUG_BUILD OR g_bDebugUnlockSummer20RewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpSum_Tee_034_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* BADLANDS REVENGE II */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // PISTOLS AT DAWN CASE HASH("mpHeist3_Tee_001_F") CASE HASH("mpHeist3_Tee_001_M") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_PISTOLS) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_001_M")))) BREAK // BONUS CASE HASH("mpHeist3_Tee_000_F") CASE HASH("mpHeist3_Tee_000_M") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_BADLANDS_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_000_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* RACE AND CHASE */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_007_F") CASE HASH("mpHeist3_Tee_008_F") CASE HASH("mpHeist3_Tee_009_F") CASE HASH("mpHeist3_Tee_007_M") CASE HASH("mpHeist3_Tee_008_M") CASE HASH("mpHeist3_Tee_009_M") IF (GET_MP_INT_CHARACTER_AWARD(MP_AWARD_RACECHAMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_RACECHAMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAFFICAVOI) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_CANTCATCHBRA)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_RACENCHASE_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_007_M") OR iPreset = HASH("mpHeist3_Tee_008_M") OR iPreset = HASH("mpHeist3_Tee_009_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* THE WIZARDS RUIN */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // FEELIN’ GROGGY CASE HASH("mpHeist3_Tee_004_F") CASE HASH("mpHeist3_Tee_004_M") IF GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_WIZHARD) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_FEELINGROGGY) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_004_M")))) BREAK // PLATINUM SWORD CASE HASH("mpHeist3_Tee_005_F") CASE HASH("mpHeist3_Tee_005_M") IF GET_MP_INT_CHARACTER_AWARD(MP_AWARD_BATSWORD) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_BATSWORD, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_WIZARDS_TSHIRT_PLATINUM_SWORD) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_005_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* SPACE MONKEY 3 */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_006_F") CASE HASH("mpHeist3_Tee_006_M") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_SPACE_MONKEY_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_006_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /**************************/ /* GLITCHED */ /**************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_002_F") CASE HASH("mpHeist3_Tee_002_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_AWARD_GLITCHED_DEGENATRON_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_002_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* LOVE PROFESSOR */ /************************/ // TRUE LOVE MP_AWARD_TRUELOVE - white, his/hers // NEMESIS MP_AWARD_NEMESIS - purple, heart skull // FRIENDZONED MP_AWARD_FRIENDZONED - pink, hands // BONUS - white, results /************************/ /* KITTY CLAW */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // PRINCESS ROBOT CASE HASH("mpHeist3_Tee_013_F") CASE HASH("mpHeist3_Tee_013_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PRINCESS_ROBOT_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_013_M")))) BREAK // WASABI CASE HASH("mpHeist3_Tee_014_F") CASE HASH("mpHeist3_Tee_014_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_SHINY_WASABI_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_014_M")))) BREAK // MASTER CASE HASH("mpHeist3_Tee_015_F") CASE HASH("mpHeist3_Tee_015_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_MASTER_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_015_M")))) BREAK // GREEN CASE HASH("mpHeist3_Tee_016_F") CASE HASH("mpHeist3_Tee_016_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_GREEN_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_016_M")))) BREAK // PURPLE CASE HASH("mpHeist3_Tee_017_F") CASE HASH("mpHeist3_Tee_017_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PURPLE_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_017_M")))) BREAK // BLUE CASE HASH("mpHeist3_Tee_018_F") CASE HASH("mpHeist3_Tee_018_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BLUE_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_018_M")))) BREAK // RED CASE HASH("mpHeist3_Tee_019_F") CASE HASH("mpHeist3_Tee_019_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_RED_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_019_M")))) BREAK // BROWN CASE HASH("mpHeist3_Tee_020_F") CASE HASH("mpHeist3_Tee_020_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BROWN_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_020_M")))) BREAK // YELLOW CASE HASH("mpHeist3_Tee_021_F") CASE HASH("mpHeist3_Tee_021_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_YELLOW_PLUSH) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_021_M")))) BREAK // BONUS CASE HASH("mpHeist3_Tee_022_F") CASE HASH("mpHeist3_Tee_022_M") IF (GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_RED_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BLUE_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PURPLE_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_YELLOW_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_BROWN_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_GREEN_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_SHINY_WASABI_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_PRINCESS_ROBOT_PLUSH) AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_MASTER_PLUSH)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CLAW_TSHIRT_FULL_SET) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_022_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* MADAM NAZAR */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // BONUS CASE HASH("mpHeist3_Tee_023_F") CASE HASH("mpHeist3_Tee_023_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_NAZAR_TSHIRT) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_023_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* ARCADE PROPERTY */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // VIDEOGEGGON CASE HASH("mpHeist3_Tee_011_F") CASE HASH("mpHeist3_Tee_011_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_VIDEOGEDDON) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_011_M")))) BREAK // INSERT COIN CASE HASH("mpHeist3_Tee_012_F") CASE HASH("mpHeist3_Tee_012_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_PROPERTY_TSHIRT_INSERT_COIN) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_012_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* ARCADE CABINETS */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // OWN ALL CASE HASH("mpHeist3_Tee_003_F") CASE HASH("mpHeist3_Tee_003_M") IF HAS_PLAYER_PURCHASED_ALL_ARCADE_MACHINES_IN_ARCADE_PROPERTY(FALSE, TRUE) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_003_M")))) BREAK ENDSWITCH BREAK ENDSWITCH /************************/ /* TROPHY CABINET */ /************************/ SWITCH iCollection CASE HASH("mpHeist3_overlays") SWITCH iPreset // GOLD TROPHY CASE HASH("mpHeist3_Tee_010_F") CASE HASH("mpHeist3_Tee_010_M") IF (GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_DEADEYE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_PISTOLSATDAWN) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_SHARPSHOOTER) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_SHARPSHOOTER, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_RACECHAMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_RACECHAMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRAFFICAVOI) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_CANTCATCHBRA) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_WIZHARD) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_BATSWORD) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_BATSWORD, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_COINPURSE) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_COINPURSE, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_APEESCAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_MONKEYKIND) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_ASTROCHIMP) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_ASTROCHIMP, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_AQUAAPE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_KEEPFAITH) AND GET_MP_INT_CHARACTER_AWARD(MP_AWARD_MASTERFUL) >= GET_AWARD_INTCHAR_LEVEL_NUMBER(MP_AWARD_MASTERFUL, AWARDPOSITIONS_PLATINUM, TEAM_FREEMODE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_TRUELOVE) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_NEMESIS) AND GET_MP_BOOL_CHARACTER_AWARD(MP_AWARD_FRIENDZONED)) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ARCADE_CABS_TSHIRT_OWN_ALL) #IF IS_DEBUG_BUILD OR g_bDebugUnlockCasinoHeistRewardItems #ENDIF RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("mpHeist3_Tee_010_M")))) BREAK ENDSWITCH BREAK ENDSWITCH SWITCH iCollection CASE HASH("mpVinewood_overlays") SWITCH iPreset CASE HASH("MP_Vinewood_Tat_023_M") CASE HASH("MP_Vinewood_Tat_023_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Vinewood_Tat_023_M")))) BREAK CASE HASH("MP_Vinewood_Tat_030_M") CASE HASH("MP_Vinewood_Tat_030_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Vinewood_Tat_030_M")))) BREAK // Logging on gifts CASE HASH("CasinoTop_M_21") CASE HASH("CasinoTop_F_21") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_CLASSIC_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_21")))) BREAK CASE HASH("CasinoTop_M_23") CASE HASH("CasinoTop_F_23") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_VINTAGE_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_23")))) BREAK CASE HASH("CasinoTop_M_2") CASE HASH("CasinoTop_F_2") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_LS_RED_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_2")))) BREAK CASE HASH("CasinoTop_M_4") CASE HASH("CasinoTop_F_4") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_RESORT_LS_BLUE_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_4")))) BREAK CASE HASH("CasinoTop_M_6") CASE HASH("CasinoTop_F_6") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_RESORT_RED_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_6")))) BREAK CASE HASH("CasinoTop_M_10") CASE HASH("CasinoTop_F_10") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_D_CASINO_BLUE_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_10")))) BREAK CASE HASH("CasinoTop_M_22") CASE HASH("CasinoTop_F_22") #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DIAMOND_CLASSIC_RED_TSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("CasinoTop_M_22")))) BREAK ENDSWITCH BREAK CASE HASH("mpChristmas2018_overlays") SWITCH iPreset // Vehicle event tees CASE HASH("MP_Christmas2018_Tee_000_M") CASE HASH("MP_Christmas2018_Tee_000_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_000_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_001_M") CASE HASH("MP_Christmas2018_Tee_001_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_VINTAGE_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_001_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_002_M") CASE HASH("MP_Christmas2018_Tee_002_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ANNIS_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_002_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_003_M") CASE HASH("MP_Christmas2018_Tee_003_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BENEFACTOR_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_003_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_004_M") CASE HASH("MP_Christmas2018_Tee_004_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BF_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_004_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_005_M") CASE HASH("MP_Christmas2018_Tee_005_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BOLLOKAN_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_005_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_006_M") CASE HASH("MP_Christmas2018_Tee_006_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRAVADO_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_006_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_007_M") CASE HASH("MP_Christmas2018_Tee_007_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRUTE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_007_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_008_M") CASE HASH("MP_Christmas2018_Tee_008_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BUCKINGHAM_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_008_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_009_M") CASE HASH("MP_Christmas2018_Tee_009_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_009_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_010_M") CASE HASH("MP_Christmas2018_Tee_010_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHARIOT_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_010_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_011_M") CASE HASH("MP_Christmas2018_Tee_011_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHEVAL_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_011_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_012_M") CASE HASH("MP_Christmas2018_Tee_012_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CLASSIQUE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_012_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_013_M") CASE HASH("MP_Christmas2018_Tee_013_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COIL_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_013_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_014_M") CASE HASH("MP_Christmas2018_Tee_014_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DECLASSE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_014_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_015_M") CASE HASH("MP_Christmas2018_Tee_015_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DEWBAUCHEE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_015_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_016_M") CASE HASH("MP_Christmas2018_Tee_016_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DILETTANTE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_016_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_017_M") CASE HASH("MP_Christmas2018_Tee_017_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DINKA_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_017_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_018_M") CASE HASH("MP_Christmas2018_Tee_018_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DUNDREARY_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_018_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_019_M") CASE HASH("MP_Christmas2018_Tee_019_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_EMPEROR_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_019_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_020_M") CASE HASH("MP_Christmas2018_Tee_020_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ENUS_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_020_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_021_M") CASE HASH("MP_Christmas2018_Tee_021_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_FATHOM_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_021_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_022_M") CASE HASH("MP_Christmas2018_Tee_022_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GALLIVANTER_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_022_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_023_M") CASE HASH("MP_Christmas2018_Tee_023_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GROTTI_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_108) RETURN FALSE ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_023_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_024_M") CASE HASH("MP_Christmas2018_Tee_024_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HIJAK_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_024_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_025_M") CASE HASH("MP_Christmas2018_Tee_025_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_HVY_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_025_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_026_M") CASE HASH("MP_Christmas2018_Tee_026_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_IMPONTE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_026_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_027_M") CASE HASH("MP_Christmas2018_Tee_027_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_INVETERO_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_027_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_028_M") CASE HASH("MP_Christmas2018_Tee_028_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_JOBUILT_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_028_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_029_M") CASE HASH("MP_Christmas2018_Tee_029_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KARIN_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_029_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_030_M") CASE HASH("MP_Christmas2018_Tee_030_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_LAMPADATI_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_030_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_031_M") CASE HASH("MP_Christmas2018_Tee_031_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MAIBATSU_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_031_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_032_M") CASE HASH("MP_Christmas2018_Tee_032_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MAMBA_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_032_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_033_M") CASE HASH("MP_Christmas2018_Tee_033_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MAMMOTH_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_033_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_034_M") CASE HASH("MP_Christmas2018_Tee_034_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MTL_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_034_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_035_M") CASE HASH("MP_Christmas2018_Tee_035_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_OBEY_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_035_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_036_M") CASE HASH("MP_Christmas2018_Tee_036_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_OCELOT_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_036_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_037_M") CASE HASH("MP_Christmas2018_Tee_037_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_OVERFLOD_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_037_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_038_M") CASE HASH("MP_Christmas2018_Tee_038_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_PEGASSI_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_038_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_039_M") CASE HASH("MP_Christmas2018_Tee_039_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_PFISTER_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_039_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_040_M") CASE HASH("MP_Christmas2018_Tee_040_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_PROGEN_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_040_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_041_M") CASE HASH("MP_Christmas2018_Tee_041_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RUNE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_041_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_042_M") CASE HASH("MP_Christmas2018_Tee_042_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SCHYSTER_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_042_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_043_M") CASE HASH("MP_Christmas2018_Tee_043_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHITZU_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_043_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_044_M") CASE HASH("MP_Christmas2018_Tee_044_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TRUFFADE_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_044_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_045_M") CASE HASH("MP_Christmas2018_Tee_045_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_UBERMACHT_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_045_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_046_M") CASE HASH("MP_Christmas2018_Tee_046_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_VAPID_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_046_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_047_M") CASE HASH("MP_Christmas2018_Tee_047_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_VULCAR_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_047_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_048_M") CASE HASH("MP_Christmas2018_Tee_048_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WEENY_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_048_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_049_M") CASE HASH("MP_Christmas2018_Tee_049_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WILLARD_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_049_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_050_M") CASE HASH("MP_Christmas2018_Tee_050_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_CAR_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_050_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_051_M") CASE HASH("MP_Christmas2018_Tee_051_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_051_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_052_M") CASE HASH("MP_Christmas2018_Tee_052_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ALBANY_GOLD_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_052_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_053_M") CASE HASH("MP_Christmas2018_Tee_053_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ANNIS_LOGO_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_053_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_054_M") CASE HASH("MP_Christmas2018_Tee_054_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BF_VAN_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_054_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_055_M") CASE HASH("MP_Christmas2018_Tee_055_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BOLLOKAN_CAR_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_055_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_056_M") CASE HASH("MP_Christmas2018_Tee_056_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRAVADO_CAR_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_056_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_057_M") CASE HASH("MP_Christmas2018_Tee_057_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRUTE_ARMOR_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_057_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_058_M") CASE HASH("MP_Christmas2018_Tee_058_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BRUTE_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_058_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_059_M") CASE HASH("MP_Christmas2018_Tee_059_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BUCKINGHAM_ICON_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_059_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_060_M") CASE HASH("MP_Christmas2018_Tee_060_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_FLAG_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_060_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_061_M") CASE HASH("MP_Christmas2018_Tee_061_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_TRUCK_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_061_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_062_M") CASE HASH("MP_Christmas2018_Tee_062_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CANIS_WOLF_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_062_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_063_M") CASE HASH("MP_Christmas2018_Tee_063_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CHEVAL_TRUCK_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_063_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_064_M") CASE HASH("MP_Christmas2018_Tee_064_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COIL_FLAG_WHITE_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_064_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_065_M") CASE HASH("MP_Christmas2018_Tee_065_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_COIL_RAIDEN_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_065_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_066_M") CASE HASH("MP_Christmas2018_Tee_066_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DECLASSE_LOGO_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_066_M")))) BREAK CASE HASH("MP_Christmas2018_Tee_067_M") CASE HASH("MP_Christmas2018_Tee_067_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_DECLASSE_LADY_BLACK_SHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tee_067_M")))) BREAK // Chiliad Mystery CASE HASH("MP_Christmas2018_Tat_000_M") CASE HASH("MP_Christmas2018_Tat_000_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockArenaWarsRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Christmas2018_Tat_000_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpBattle_overlays") #IF IS_DEBUG_BUILD IF g_bDebugUnlockBusinessBattlesRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iPreset // Kifflom T-Shirt CASE HASH("MP_Battle_Clothing_000_M") CASE HASH("MP_Battle_Clothing_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_NIGHTCLUB_DRUNK_SPAWN_EPSILON_UNLOCK) OR GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_KIFFLOMTEE_LOGINAWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_000_M")))) BREAK // Blaine County Radio Tee CASE HASH("MP_Battle_Clothing_002_M") CASE HASH("MP_Battle_Clothing_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_BLAINE_COUNTY_RADIO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_002_M")))) BREAK // Channel X Tee CASE HASH("MP_Battle_Clothing_003_M") CASE HASH("MP_Battle_Clothing_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_CHANNEL_X) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_003_M")))) BREAK // East Los FM Tee CASE HASH("MP_Battle_Clothing_004_M") CASE HASH("MP_Battle_Clothing_004_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_EAST_LOS_FM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_004_M")))) BREAK // FlyLo FM Tee CASE HASH("MP_Battle_Clothing_005_M") CASE HASH("MP_Battle_Clothing_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_FLYLO_FM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_005_M")))) BREAK // LS Rock Radio Tee CASE HASH("MP_Battle_Clothing_006_M") CASE HASH("MP_Battle_Clothing_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_LOS_SANTOS_ROCK_RADIO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_006_M")))) BREAK // Non-Stop-Pop FM Tee CASE HASH("MP_Battle_Clothing_007_M") CASE HASH("MP_Battle_Clothing_007_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_NONSTOPPOP_FM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_007_M")))) BREAK // Radio LS Tee CASE HASH("MP_Battle_Clothing_008_M") CASE HASH("MP_Battle_Clothing_008_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_RADIO_LOS_SANTOS) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_008_M")))) BREAK // Radio Mirror Park Tee CASE HASH("MP_Battle_Clothing_009_M") CASE HASH("MP_Battle_Clothing_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_RADIO_MIRROR_PARK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_009_M")))) BREAK // Rebel Radio Tee CASE HASH("MP_Battle_Clothing_010_M") CASE HASH("MP_Battle_Clothing_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_REBEL_RADIO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_010_M")))) BREAK // Soulwax FM Tee CASE HASH("MP_Battle_Clothing_011_M") CASE HASH("MP_Battle_Clothing_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_SOULWAX_FM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_011_M")))) BREAK // Space 103.2 Tee CASE HASH("MP_Battle_Clothing_012_M") CASE HASH("MP_Battle_Clothing_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_SPACE_1032) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_012_M")))) BREAK // Blue Ark Tee CASE HASH("MP_Battle_Clothing_013_M") CASE HASH("MP_Battle_Clothing_013_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_BLUE_ARK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_013_M")))) BREAK // The Lab Tee CASE HASH("MP_Battle_Clothing_014_M") CASE HASH("MP_Battle_Clothing_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_THE_LAB) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_014_M")))) BREAK // The Lowdown 91.1 Tee CASE HASH("MP_Battle_Clothing_015_M") CASE HASH("MP_Battle_Clothing_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_THE_LOWDOWN_911) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_015_M")))) BREAK // Vinewood Blvd Radio Tee CASE HASH("MP_Battle_Clothing_016_M") CASE HASH("MP_Battle_Clothing_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_VINEWOOD_BOULEVARD_RADIO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_016_M")))) BREAK // West Coast Classics Tee CASE HASH("MP_Battle_Clothing_017_M") CASE HASH("MP_Battle_Clothing_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_WEST_COAST_CLASSICS) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_017_M")))) BREAK // West Coast Talk Radio Tee CASE HASH("MP_Battle_Clothing_018_M") CASE HASH("MP_Battle_Clothing_018_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_WEST_COAST_TALK_RADIO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_018_M")))) BREAK // WorldWide FM Tee CASE HASH("MP_Battle_Clothing_019_M") CASE HASH("MP_Battle_Clothing_019_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_WORLDWIDE_FM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_019_M")))) BREAK // LS UR Tee CASE HASH("MP_Battle_Clothing_020_M") CASE HASH("MP_Battle_Clothing_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_LS_UR) RETURN FALSE // UNLOCKED ENDIF IF iPreset = HASH("MP_Battle_Clothing_020_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_116) RETURN FALSE ENDIF ELSE IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_115) RETURN FALSE ENDIF ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_020_M")))) BREAK // Blonded LS 97.8 FM Tee CASE HASH("MP_Battle_Clothing_021_M") CASE HASH("MP_Battle_Clothing_021_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SHIRT_BLONDED_LOS_SANTOS_978_FM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_021_M")))) BREAK // Galaxy Tee CASE HASH("MP_Battle_Clothing_022_M") CASE HASH("MP_Battle_Clothing_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT3) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_022_M")))) BREAK // Gefangnis Tee CASE HASH("MP_Battle_Clothing_023_M") CASE HASH("MP_Battle_Clothing_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT4) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_023_M")))) BREAK // Omega Tee CASE HASH("MP_Battle_Clothing_024_M") CASE HASH("MP_Battle_Clothing_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT5) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_024_M")))) BREAK // Maisonette Tee CASE HASH("MP_Battle_Clothing_025_M") CASE HASH("MP_Battle_Clothing_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT1) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_025_M")))) BREAK // Paradise Tee CASE HASH("MP_Battle_Clothing_026_M") CASE HASH("MP_Battle_Clothing_026_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT7) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_026_M")))) BREAK // Studio Los Santos Tee CASE HASH("MP_Battle_Clothing_027_M") CASE HASH("MP_Battle_Clothing_027_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT2) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_027_M")))) BREAK // Technologie Tee CASE HASH("MP_Battle_Clothing_028_M") CASE HASH("MP_Battle_Clothing_028_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT6) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_028_M")))) BREAK // The Palace Tee CASE HASH("MP_Battle_Clothing_029_M") CASE HASH("MP_Battle_Clothing_029_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT8) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_029_M")))) BREAK // Tony's Fun House Tee CASE HASH("MP_Battle_Clothing_030_M") CASE HASH("MP_Battle_Clothing_030_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BBNCSHIRT9) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_030_M")))) BREAK ENDSWITCH SWITCH iPreset // The Black Madonna 1 CASE HASH("MP_Battle_Clothing_031_M") CASE HASH("MP_Battle_Clothing_031_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_031_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_031_M")))) BREAK // The Black Madonna 2 CASE HASH("MP_Battle_Clothing_032_M") CASE HASH("MP_Battle_Clothing_032_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_032_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_032_M")))) BREAK // The Black Madonna 3 CASE HASH("MP_Battle_Clothing_033_M") CASE HASH("MP_Battle_Clothing_033_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_033_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_033_M")))) BREAK // The Black Madonna 4 CASE HASH("MP_Battle_Clothing_034_M") CASE HASH("MP_Battle_Clothing_034_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_034_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_034_M")))) BREAK // The Black Madonna 5 CASE HASH("MP_Battle_Clothing_035_M") CASE HASH("MP_Battle_Clothing_035_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_035_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_035_M")))) BREAK // The Black Madonna 6 CASE HASH("MP_Battle_Clothing_036_M") CASE HASH("MP_Battle_Clothing_036_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_036_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_036_M")))) BREAK // The Black Madonna 7 CASE HASH("MP_Battle_Clothing_037_M") CASE HASH("MP_Battle_Clothing_037_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_037_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_037_M")))) BREAK // The Black Madonna 8 CASE HASH("MP_Battle_Clothing_038_M") CASE HASH("MP_Battle_Clothing_038_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_038_DJ_BLACK_MADONNA) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_038_M")))) BREAK // Dixon 1 CASE HASH("MP_Battle_Clothing_039_M") CASE HASH("MP_Battle_Clothing_039_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_039_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_039_M")))) BREAK // Dixon 2 CASE HASH("MP_Battle_Clothing_040_M") CASE HASH("MP_Battle_Clothing_040_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_040_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_040_M")))) BREAK // Dixon 3 CASE HASH("MP_Battle_Clothing_041_M") CASE HASH("MP_Battle_Clothing_041_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_041_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_041_M")))) BREAK // Dixon 4 CASE HASH("MP_Battle_Clothing_042_M") CASE HASH("MP_Battle_Clothing_042_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_042_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_042_M")))) BREAK // Dixon 5 CASE HASH("MP_Battle_Clothing_043_M") CASE HASH("MP_Battle_Clothing_043_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_043_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_043_M")))) BREAK // Dixon 6 CASE HASH("MP_Battle_Clothing_044_M") CASE HASH("MP_Battle_Clothing_044_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_044_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_044_M")))) BREAK // Dixon 7 CASE HASH("MP_Battle_Clothing_045_M") CASE HASH("MP_Battle_Clothing_045_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_045_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_045_M")))) BREAK // Dixon 8 CASE HASH("MP_Battle_Clothing_046_M") CASE HASH("MP_Battle_Clothing_046_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_046_DJ_DIXON) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_046_M")))) BREAK // Tale Of Us 1 CASE HASH("MP_Battle_Clothing_047_M") CASE HASH("MP_Battle_Clothing_047_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_047_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_047_M")))) BREAK // Tale Of Us 2 CASE HASH("MP_Battle_Clothing_048_M") CASE HASH("MP_Battle_Clothing_048_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_048_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_048_M")))) BREAK // Tale Of Us 3 CASE HASH("MP_Battle_Clothing_049_M") CASE HASH("MP_Battle_Clothing_049_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_049_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_049_M")))) BREAK // Tale Of Us 4 CASE HASH("MP_Battle_Clothing_050_M") CASE HASH("MP_Battle_Clothing_050_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_050_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_050_M")))) BREAK // Tale Of Us 5 CASE HASH("MP_Battle_Clothing_051_M") CASE HASH("MP_Battle_Clothing_051_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_051_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_051_M")))) BREAK // Tale Of Us 6 CASE HASH("MP_Battle_Clothing_052_M") CASE HASH("MP_Battle_Clothing_052_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_052_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_052_M")))) BREAK // Tale Of Us 7 CASE HASH("MP_Battle_Clothing_053_M") CASE HASH("MP_Battle_Clothing_053_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_053_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_053_M")))) BREAK // Tale Of Us 8 CASE HASH("MP_Battle_Clothing_054_M") CASE HASH("MP_Battle_Clothing_054_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_054_DJ_TALE_OF_US) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_054_M")))) BREAK // Solomun 1 CASE HASH("MP_Battle_Clothing_055_M") CASE HASH("MP_Battle_Clothing_055_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_055_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_055_M")))) BREAK // Solomun 2 CASE HASH("MP_Battle_Clothing_056_M") CASE HASH("MP_Battle_Clothing_056_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_056_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_056_M")))) BREAK // Solomun 3 CASE HASH("MP_Battle_Clothing_057_M") CASE HASH("MP_Battle_Clothing_057_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_057_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_057_M")))) BREAK // Solomun 4 CASE HASH("MP_Battle_Clothing_058_M") CASE HASH("MP_Battle_Clothing_058_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_058_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_058_M")))) BREAK // Solomun 5 CASE HASH("MP_Battle_Clothing_059_M") CASE HASH("MP_Battle_Clothing_059_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_059_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_059_M")))) BREAK // Solomun 6 CASE HASH("MP_Battle_Clothing_060_M") CASE HASH("MP_Battle_Clothing_060_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_060_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_060_M")))) BREAK // Solomun 7 CASE HASH("MP_Battle_Clothing_061_M") CASE HASH("MP_Battle_Clothing_061_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_061_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_061_M")))) BREAK // Solomun 8 CASE HASH("MP_Battle_Clothing_062_M") CASE HASH("MP_Battle_Clothing_062_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_MP_BATTLE_CLOTHING_062_DJ_SOLOMUN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Battle_Clothing_062_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpGunrunning_overlays") #IF IS_DEBUG_BUILD IF g_bDebugUnlockGunrunningRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iPreset // R* Black Logo Tee CASE HASH("MP_Gunrunning_Award_019_M") CASE HASH("MP_Gunrunning_Award_025_F")//CASE HASH("MP_Gunrunning_Award_019_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_BLACK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_019_M")))) BREAK // R* Black Weed Camo Tee CASE HASH("MP_Gunrunning_Award_020_M") CASE HASH("MP_Gunrunning_Award_020_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_GREY) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_020_M")))) BREAK // R* White Weed Camo Tee CASE HASH("MP_Gunrunning_Award_020_M_ALT") CASE HASH("MP_Gunrunning_Award_020_F_ALT") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_CAMO_LOGO_WHITE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_020_M_ALT")))) BREAK // R* Razor Tee CASE HASH("MP_Gunrunning_Award_021_M") CASE HASH("MP_Gunrunning_Award_021_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_PINK_BLADE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_021_M")))) BREAK // R* White Logo Tee CASE HASH("MP_Gunrunning_Award_022_M") CASE HASH("MP_Gunrunning_Award_026_F")//CASE HASH("MP_Gunrunning_Award_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_WHITE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_022_M")))) BREAK // R* Glitch Logo Tee CASE HASH("MP_Gunrunning_Award_023_M") CASE HASH("MP_Gunrunning_Award_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_RSTAR_LOGO_INTERFERENCE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_023_M")))) BREAK // R* Glitch Tee CASE HASH("MP_Gunrunning_Award_024_M") CASE HASH("MP_Gunrunning_Award_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_ROCKSTAR_GAMES_INTERFERENCE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_024_M")))) BREAK ENDSWITCH SWITCH iPreset // Black Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_000_M") CASE HASH("MP_Gunrunning_Award_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_LOGO_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_000_M")))) BREAK // White Hawk & Little Logo Tee CASE HASH("MP_Gunrunning_Award_001_M") CASE HASH("MP_Gunrunning_Award_001_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_001_M")))) BREAK // White Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_002_M") CASE HASH("MP_Gunrunning_Award_002_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_HAWK_AND_LITTLE_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_002_M")))) BREAK // Black Hawk & Little Tee CASE HASH("MP_Gunrunning_Award_003_M") CASE HASH("MP_Gunrunning_Award_003_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_HAWK_AND_LITTLE_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_003_M")))) BREAK // Yellow Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_004_M") CASE HASH("MP_Gunrunning_Award_004_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_004_M")))) BREAK // White Shrewsbury Logo Tee CASE HASH("MP_Gunrunning_Award_005_M") CASE HASH("MP_Gunrunning_Award_005_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWSBURY_LOGO_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_005_M")))) BREAK // White Shrewbury Tee CASE HASH("MP_Gunrunning_Award_006_M") CASE HASH("MP_Gunrunning_Award_006_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_SHREWBURY_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_006_M")))) BREAK // Black Shrewsbury Tee CASE HASH("MP_Gunrunning_Award_007_M") CASE HASH("MP_Gunrunning_Award_007_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_007_M")))) BREAK // Green Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_008_M") CASE HASH("MP_Gunrunning_Award_008_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_008_M")))) BREAK // Yellow Vom Feuer Logo Tee CASE HASH("MP_Gunrunning_Award_009_M") CASE HASH("MP_Gunrunning_Award_009_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_LOGO_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_009_M")))) BREAK // Yellow Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_010_M") CASE HASH("MP_Gunrunning_Award_010_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_VOM_FEUER_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_010_M")))) BREAK // Green Vom Feuer Tee CASE HASH("MP_Gunrunning_Award_011_M") CASE HASH("MP_Gunrunning_Award_011_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_GREEN_VOM_FEUER_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_011_M")))) BREAK // White Coil Tee CASE HASH("MP_Gunrunning_Award_012_M") CASE HASH("MP_Gunrunning_Award_012_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_COIL_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_012_M")))) BREAK // Red Coil Tee CASE HASH("MP_Gunrunning_Award_013_M") CASE HASH("MP_Gunrunning_Award_013_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_013_M")))) BREAK // Black Coil Tee CASE HASH("MP_Gunrunning_Award_014_M") CASE HASH("MP_Gunrunning_Award_014_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_COIL_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_014_M")))) BREAK // Black Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_015_M") CASE HASH("MP_Gunrunning_Award_015_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_BLACK_AMMUNATION_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_015_M")))) BREAK // White Ammu-Nation Tee CASE HASH("MP_Gunrunning_Award_016_M") CASE HASH("MP_Gunrunning_Award_016_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_WHITE_AMMUNATION_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_016_M")))) BREAK // Yellow Warstock Tee CASE HASH("MP_Gunrunning_Award_017_M") CASE HASH("MP_Gunrunning_Award_017_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_YELLOW_WARSTOCK_TEE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_017_M")))) BREAK // Green Warstock Tee CASE HASH("MP_Gunrunning_Award_018_M") CASE HASH("MP_Gunrunning_Award_018_F") IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_SR_TIER_3_REWARD) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Gunrunning_Award_018_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpBiker_overlays") #IF IS_DEBUG_BUILD IF g_bDebugUnlockBikerRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iPreset // Steel Horse Solid Logo Tee CASE HASH("MP_Biker_Tee_022_M") CASE HASH("MP_Biker_Tee_022_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_BIG_LOGO_SOLID) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_022_M")))) BREAK // Steel Horse Logo Tee CASE HASH("MP_Biker_Tee_023_M") CASE HASH("MP_Biker_Tee_023_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_BIG_LOGO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_023_M")))) BREAK // Black Steel Horse Brag Tee CASE HASH("MP_Biker_Tee_024_M") CASE HASH("MP_Biker_Tee_024_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_NAME_BLACK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_024_M")))) BREAK // White Steel Horse Brag Tee CASE HASH("MP_Biker_Tee_025_M") CASE HASH("MP_Biker_Tee_025_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_STEEL_HORSE_NAME_WHITE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_025_M")))) BREAK // Black Western Brag Tee CASE HASH("MP_Biker_Tee_047_M") CASE HASH("MP_Biker_Tee_047_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_NAME_BLACK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_047_M")))) BREAK // White Western Brag Tee CASE HASH("MP_Biker_Tee_048_M") CASE HASH("MP_Biker_Tee_048_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_NAME_WHITE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_048_M")))) BREAK // Black Western Logo Tee CASE HASH("MP_Biker_Tee_049_M") CASE HASH("MP_Biker_Tee_049_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_109) RETURN FALSE ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_BIG_LOGO_BLACK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_049_M")))) BREAK // White Western Logo Tee CASE HASH("MP_Biker_Tee_050_M") CASE HASH("MP_Biker_Tee_050_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_WESTERN_BIG_LOGO_WHITE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_050_M")))) BREAK // White Nagasaki Tee CASE HASH("MP_Biker_Tee_051_M") CASE HASH("MP_Biker_Tee_051_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_NAGASAKI_LOGO_WHITE_SHIRT_WHITE_STAR) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_051_M")))) BREAK // White and Red Nagasaki Tee CASE HASH("MP_Biker_Tee_052_M") CASE HASH("MP_Biker_Tee_052_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_NAGASAKI_LOGO_WHITE_SHIRT_RED_STAR) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_052_M")))) BREAK // Black Nagasaki Tee CASE HASH("MP_Biker_Tee_053_M") CASE HASH("MP_Biker_Tee_053_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_NAGASAKI_LOGO_BLACK_SHIRT_WHITE_STAR) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_053_M")))) BREAK // Black Purple Helmets Tee CASE HASH("MP_Biker_Tee_054_M") CASE HASH("MP_Biker_Tee_054_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_PURPLE_HELMETS_LOGO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_054_M")))) BREAK // Black Principe Tee CASE HASH("MP_Biker_Tee_055_M") CASE HASH("MP_Biker_Tee_055_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_PRINCIPLE_LOGO) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Tee_055_M")))) BREAK // Crosswalk Tee CASE HASH("MP_Biker_Award_000_M") CASE HASH("MP_Biker_Award_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_CROSSWALK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Award_000_M")))) BREAK // R* Crosswalk Tee CASE HASH("MP_Biker_Award_001_M") CASE HASH("MP_Biker_Award_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_TSHIRT_RSTAR_CROSSWALK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_Biker_Award_001_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpExecutive_overlays") #IF IS_DEBUG_BUILD IF g_bDebugUnlockExecutiveRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iPreset CASE HASH("MP_exec_prizes_015_M") CASE HASH("MP_exec_prizes_015_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_DCTL) OR GET_MP_INT_CHARACTER_STAT(MP_STAT_DCTL_WINS) >= g_sMPTunables.iDCTL_WIN_COUNT_REWARD RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_015_M")))) BREAK CASE HASH("MP_exec_prizes_000_M") CASE HASH("MP_exec_prizes_000_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_ACCOUNTANT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_000_M")))) BREAK CASE HASH("MP_exec_prizes_001_M") CASE HASH("MP_exec_prizes_001_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_BAHAMAMAMAS) RETURN FALSE // UNLOCKED ENDIF IF iPreset = HASH("MP_exec_prizes_001_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_114) RETURN FALSE // UNLOCK ENDIF ELSE IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_117) RETURN FALSE // UNLOCK ENDIF ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_001_M")))) BREAK CASE HASH("MP_exec_prizes_002_M") CASE HASH("MP_exec_prizes_002_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_DRONE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_002_M")))) BREAK CASE HASH("MP_exec_prizes_003_M") CASE HASH("MP_exec_prizes_003_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_GROTTI) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_003_M")))) BREAK CASE HASH("MP_exec_prizes_004_M") CASE HASH("MP_exec_prizes_004_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_GOLF) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_004_M")))) BREAK CASE HASH("MP_exec_prizes_005_M") CASE HASH("MP_exec_prizes_005_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_MAISONETTE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_005_M")))) BREAK CASE HASH("MP_exec_prizes_006_M") CASE HASH("MP_exec_prizes_006_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_MANOPAUSE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_006_M")))) BREAK CASE HASH("MP_exec_prizes_007_M") CASE HASH("MP_exec_prizes_007_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_MARLOWE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_007_M")))) BREAK CASE HASH("MP_exec_prizes_008_M") CASE HASH("MP_exec_prizes_008_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_MELTDOWN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_008_M")))) BREAK CASE HASH("MP_exec_prizes_009_M") CASE HASH("MP_exec_prizes_009_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_PACIFICBLUFFS) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_009_M")))) BREAK CASE HASH("MP_exec_prizes_010_M") CASE HASH("MP_exec_prizes_010_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_PROLAPS) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_010_M")))) BREAK CASE HASH("MP_exec_prizes_011_M") CASE HASH("MP_exec_prizes_011_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_TENNIS) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_011_M")))) BREAK CASE HASH("MP_exec_prizes_012_M") CASE HASH("MP_exec_prizes_012_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_TOESHOES) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_012_M")))) BREAK CASE HASH("MP_exec_prizes_013_M") CASE HASH("MP_exec_prizes_013_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_CREST) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_013_M")))) BREAK CASE HASH("MP_exec_prizes_014_M") CASE HASH("MP_exec_prizes_014_F") IF GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_SHIRT_VANILLAUNICORN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_exec_prizes_014_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpHalloween_overlays") SWITCH iPreset // Zombie Liberals in the Midwest CASE HASH("HW_Tee_000_F") CASE HASH("HW_Tee_000_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_ZOMBIE_LIBERALS_IN_THE_MIDWEST) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_000_M")))) BREAK // Vinewood Zombie CASE HASH("HW_Tee_001_F") CASE HASH("HW_Tee_001_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_VINEWOOD_ZOMBIE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_001_M")))) BREAK // Vampires on the Beach CASE HASH("HW_Tee_002_F") CASE HASH("HW_Tee_002_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_VAMPIRES_ON_THE_BEACH) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_002_M")))) BREAK // Twlight Knife CASE HASH("HW_Tee_003_F") CASE HASH("HW_Tee_003_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_TWILIGHT_KNIFE) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_003_M")))) BREAK // The Simian CASE HASH("HW_Tee_004_F") CASE HASH("HW_Tee_004_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_THE_SIMIAN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_004_M")))) BREAK // Psycho Swingers CASE HASH("HW_Tee_005_F") CASE HASH("HW_Tee_005_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_PSYCHO_SWINGERS) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_005_M")))) BREAK // Hot Serial Killer Stepmom CASE HASH("HW_Tee_006_F") CASE HASH("HW_Tee_006_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_HOT_SERIAL_KILLER_STEPMOM) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_006_M")))) BREAK // Knife After Dark CASE HASH("HW_Tee_007_F") CASE HASH("HW_Tee_007_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_KNIFE_AFTER_DARK) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_007_M")))) BREAK // Cannibal Clown CASE HASH("HW_Tee_008_F") CASE HASH("HW_Tee_008_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_CANNIBAL_CLOWN) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_008_M")))) BREAK // Meathook for Mommy CASE HASH("HW_Tee_009_F") CASE HASH("HW_Tee_009_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_MEATHOOK_FOR_MOMMY) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_009_M")))) BREAK // Butchery and other Hobbies CASE HASH("HW_Tee_010_F") CASE HASH("HW_Tee_010_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_BUTCHERY) RETURN FALSE // UNLOCKED ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_110) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_010_M")))) BREAK // Cheerleader Massacre 3 CASE HASH("HW_Tee_011_F") CASE HASH("HW_Tee_011_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_BOMBSHELL_BLOODBATH_CHEERLEADER_MASSACRE_3) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_011_M")))) BREAK // Splatter and shot CASE HASH("HW_Tee_012_F") CASE HASH("HW_Tee_012_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockHalloweenItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_AWARD_LOW_TSHIRT_SPLATTER_AND_SHOT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("HW_Tee_012_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpLowrider_overlays") SWITCH iPreset CASE HASH("MP_Bennys_000_M") CASE HASH("MP_Bennys_001_M") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLowriderRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_MP_INT_CHARACTER_STAT(MP_STAT_LOWRIDER_FLOW_COMPLETE) > 0 RETURN FALSE // UNLOCKED ENDIF IF iPreset = HASH("MP_Bennys_001_M") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_99) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, TRUE)) BREAK CASE HASH("MP_Bennys_000_F") CASE HASH("MP_Bennys_001_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLowriderRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_MP_INT_CHARACTER_STAT(MP_STAT_LOWRIDER_FLOW_COMPLETE) > 0 RETURN FALSE // UNLOCKED ENDIF IF iPreset = HASH("MP_Bennys_001_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_99) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, FALSE)) BREAK ENDSWITCH BREAK CASE HASH("mpxmas_604490_overlays") SWITCH iPreset CASE HASH("MP_IHeartLC_000_M") CASE HASH("MP_IHeartLC_001_F") #IF IS_DEBUG_BUILD IF g_bDebugUnlockChristmasRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_ILOVELCTSHIRT) RETURN FALSE // UNLOCKED ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, (iPreset = HASH("MP_IHeartLC_000_M")))) BREAK ENDSWITCH BREAK CASE HASH("mpHeist_overlays") SWITCH iPreset // Award shirts CASE HASH("MP_Award_M_Tshirt_004") CASE HASH("MP_Award_M_Tshirt_005") CASE HASH("MP_Award_M_Tshirt_006") CASE HASH("MP_Award_M_Tshirt_007") CASE HASH("MP_Award_M_Tshirt_008") CASE HASH("MP_Award_M_Tshirt_009") CASE HASH("MP_Award_M_Tshirt_010") CASE HASH("MP_Award_M_Tshirt_011") CASE HASH("MP_Award_M_Tshirt_012") CASE HASH("MP_Award_M_Tshirt_013") #IF IS_DEBUG_BUILD IF g_bDebugUnlockDLCAwardShirts RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES IF iPreset = HASH("MP_Award_M_Tshirt_004") //[CLO_HST_A_0] Death Defying T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_113) RETURN FALSE // UNLOCKED ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_DEATH_DEFYING) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_005") //[CLO_HST_A_1] For Hire T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_FOR_HIRE) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_006") //[CLO_HST_A_2] Gimme That T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_LIVE_A_LITTLE) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_007") //[CLO_HST_A_3] Asshole T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_ASSHOLE) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_008") //[CLO_HST_A_4] Can't Touch This T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_CANT_TOUCH_THIS) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_009") //[CLO_HST_A_5] Decorated T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_DECORATED) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_010") //[CLO_HST_A_6] Psycho Killer T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_PSYCHO_KILLER) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_011") //[CLO_HST_A_7] One Man Army T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_ONE_MAN_ARMY) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_012") //[CLO_HST_A_8] Shot Caller T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_SHOT_CALLER) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_M_Tshirt_013") //[CLO_HST_A_9] Showroom T-Shirt IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_SHOWROOM) OR GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_115) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, TRUE)) #ENDIF BREAK CASE HASH("MP_Award_F_Tshirt_004") CASE HASH("MP_Award_F_Tshirt_005") CASE HASH("MP_Award_F_Tshirt_006") CASE HASH("MP_Award_F_Tshirt_007") CASE HASH("MP_Award_F_Tshirt_008") CASE HASH("MP_Award_F_Tshirt_009") CASE HASH("MP_Award_F_Tshirt_010") CASE HASH("MP_Award_F_Tshirt_011") CASE HASH("MP_Award_F_Tshirt_012") CASE HASH("MP_Award_F_Tshirt_013") #IF IS_DEBUG_BUILD IF g_bDebugUnlockDLCAwardShirts RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES IF iPreset = HASH("MP_Award_F_Tshirt_004") //[CLO_HST_F_A_0] Death Defying Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_DEATH_DEFYING) RETURN FALSE // UNLOCKED ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_113) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_005") //[CLO_HST_F_A_1] For Hire Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_FOR_HIRE) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_006") //[CLO_HST_F_A_2] Gimme That Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_LIVE_A_LITTLE) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_007") //[CLO_HST_F_A_3] Asshole Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_ASSHOLE) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_008") //[CLO_HST_F_A_4] Can't Touch This Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_CANT_TOUCH_THIS) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_009") //[CLO_HST_F_A_5] Decorated Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_DECORATED) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_010") //[CLO_HST_F_A_6] Psycho Killer Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_PSYCHO_KILLER) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_011") //[CLO_HST_F_A_7] One Man Army Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_ONE_MAN_ARMY) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_012") //[CLO_HST_F_A_8] Shot Caller Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_SHOT_CALLER) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_Award_F_Tshirt_013") //[CLO_HST_F_A_9] Showroom Top IF GET_PACKED_STAT_BOOL(PACKED_MP_MSG_SHIRT_SHOWROOM) OR GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_114) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, FALSE)) #ENDIF BREAK CASE HASH("MP_Elite_M_Tshirt") CASE HASH("MP_Elite_M_Tshirt_1") CASE HASH("MP_Elite_F_Tshirt") CASE HASH("MP_Elite_F_Tshirt_1") #IF IS_DEBUG_BUILD IF g_bDebugUnlockDLCAwardShirts RETURN FALSE // UNLOCKED ENDIF #ENDIF IF GET_PACKED_STAT_BOOL(PACKED_MP_STAT_COMPLETED_ELITE_HEIST_CHALLENGE_0) AND GET_PACKED_STAT_BOOL(PACKED_MP_STAT_COMPLETED_ELITE_HEIST_CHALLENGE_1) AND GET_PACKED_STAT_BOOL(PACKED_MP_STAT_COMPLETED_ELITE_HEIST_CHALLENGE_2) AND GET_PACKED_STAT_BOOL(PACKED_MP_STAT_COMPLETED_ELITE_HEIST_CHALLENGE_3) AND GET_PACKED_STAT_BOOL(PACKED_MP_STAT_COMPLETED_ELITE_HEIST_CHALLENGE_4) RETURN FALSE // UNLOCKED ENDIF RETURN TRUE // LOCKED BREAK ENDSWITCH BREAK CASE HASH("mpIndependence_overlays") SWITCH iPreset // Independence Award Tops CASE HASH("FM_Ind_M_Award_000") CASE HASH("FM_Ind_F_Award_000") #IF IS_DEBUG_BUILD IF g_bDebugUnlockIndependenceRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STATS_UNLOCK_STATUE_OF_HAPPINESS_TEE)) BREAK ENDSWITCH IF NOT g_sMPTunables.btoggleactivateIndependencepack AND NOT IS_MP_TATTOO_UNLOCKED_OR_PURCHASED_STATE_SET(eTattooEnum, iPreset, FALSE) #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowIndependenceItems #ENDIF RETURN TRUE // LOCKED ENDIF BREAK CASE HASH("mpHipster_overlays") SWITCH iPreset // Tournament participants - Tattoos CASE HASH("MP_Award_M_Tat_000_a") CASE HASH("MP_Award_M_Tat_001_a") CASE HASH("MP_Award_M_Tat_000_b") CASE HASH("MP_Award_M_Tat_001_b") CASE HASH("MP_Award_F_Tat_000_a") CASE HASH("MP_Award_F_Tat_001_a") CASE HASH("MP_Award_F_Tat_000_b") CASE HASH("MP_Award_F_Tat_001_b") RETURN TRUE // LOCKED // #IF IS_DEBUG_BUILD // IF g_bDebugUnlockTournamentItems // RETURN FALSE // UNLOCKED // ENDIF // #ENDIF // RETURN (NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_PARTICIPANT)) BREAK // Tournament participants - Clothes CASE HASH("MP_Award_M_Tshirt_000") CASE HASH("MP_Award_M_Tshirt_001") CASE HASH("MP_Award_F_Tshirt_000") CASE HASH("MP_Award_F_Tshirt_001") RETURN TRUE // LOCKED // #IF IS_DEBUG_BUILD // IF g_bDebugUnlockTournamentItems // RETURN FALSE // UNLOCKED // ENDIF // #ENDIF // RETURN (NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_PARTICIPANT)) BREAK // Tournament winners - Tattoos CASE HASH("MP_Award_M_Tat_002_a") CASE HASH("MP_Award_M_Tat_003_a") CASE HASH("MP_Award_M_Tat_002_b") CASE HASH("MP_Award_M_Tat_003_b") CASE HASH("MP_Award_F_Tat_002_a") CASE HASH("MP_Award_F_Tat_003_a") CASE HASH("MP_Award_F_Tat_002_b") CASE HASH("MP_Award_F_Tat_003_b") RETURN TRUE // LOCKED // #IF IS_DEBUG_BUILD // IF g_bDebugUnlockTournamentItems // RETURN FALSE // UNLOCKED // ENDIF // #ENDIF // RETURN (NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_WINNER)) BREAK // Tournament winners - Clothes CASE HASH("MP_Award_M_Tshirt_002") CASE HASH("MP_Award_M_Tshirt_003") CASE HASH("MP_Award_F_Tshirt_002") CASE HASH("MP_Award_F_Tshirt_003") RETURN TRUE // LOCKED // #IF IS_DEBUG_BUILD // IF g_bDebugUnlockTournamentItems // RETURN FALSE // UNLOCKED // ENDIF // #ENDIF // RETURN (NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_WINNER)) BREAK // Tournament participants CASE HASH("FM_Hip_M_Retro_010") CASE HASH("FM_Hip_F_Retro_010") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTournamentItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_PARTICIPANT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VivisectionTShirt)) BREAK // Tournament winners CASE HASH("FM_Hip_M_Retro_003") CASE HASH("FM_Hip_F_Retro_003") #IF IS_DEBUG_BUILD IF g_bDebugUnlockTournamentItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_MP_BOOL_CHARACTER_STAT(MP_STAT_TOURNAMENT_1_WINNER) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_CrocsBarTShirt)) BREAK // Vintage shirts CASE HASH("FM_Hip_M_Retro_000") CASE HASH("FM_Hip_F_Retro_000") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_Base5TShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_001") CASE HASH("FM_Hip_F_Retro_001") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BitchnDogFoodTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_002") CASE HASH("FM_Hip_F_Retro_002") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BOBOTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_004") CASE HASH("FM_Hip_F_Retro_004") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_Emotion983TShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_005") CASE HASH("FM_Hip_F_Retro_005") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_Fever105TShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_006") CASE HASH("FM_Hip_F_Retro_006") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_FlashTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_007") CASE HASH("FM_Hip_F_Retro_007") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VinylCountdownTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_008") CASE HASH("FM_Hip_F_Retro_008") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_HomiesSharpTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_009") CASE HASH("FM_Hip_F_Retro_009") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KDSTTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_011") CASE HASH("FM_Hip_F_Retro_011") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KJAHRadioTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_012") CASE HASH("FM_Hip_F_Retro_012") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_BounceFMTShirt)) #ENDIF BREAK CASE HASH("FM_Hip_M_Retro_013") CASE HASH("FM_Hip_F_Retro_013") #IF IS_DEBUG_BUILD IF g_bDebugUnlockVintageRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_KROSE)) #ENDIF BREAK // Rockstar Dev CASE HASH("FM_Rstar_M_Tshirt_000") CASE HASH("FM_Rstar_M_Tshirt_001") CASE HASH("FM_Rstar_M_Tshirt_002") CASE HASH("FM_Rstar_F_Tshirt_000") CASE HASH("FM_Rstar_F_Tshirt_001") CASE HASH("FM_Rstar_F_Tshirt_002") #IF IS_DEBUG_BUILD IF g_sShopSettings.bDevTest RETURN FALSE // UNLOCKED ENDIF #ENDIF #IF USE_TU_CHANGES RETURN (NOT IS_ROCKSTAR_DEV()) #ENDIF BREAK ENDSWITCH BREAK // All Valentines items get removed when the lock is set unless the player has purchased the item CASE HASH("mpValentines_overlays") IF NOT g_sMPTunables.bturnonvalentinesevent AND NOT IS_MP_TATTOO_UNLOCKED(eTattooEnum) AND NOT g_sMPTunables.bTURN_ON_VALENTINE_CLOTHING #IF IS_DEBUG_BUILD AND NOT g_bDebugAllowValentinesItems #ENDIF RETURN TRUE // LOCKED ENDIF BREAK CASE HASH("mpPilot_overlays") SWITCH iPreset // Pilot School Award Tops CASE HASH("MP_Fli_M_Tshirt_000") CASE HASH("MP_Fli_F_Tshirt_000") #IF IS_DEBUG_BUILD IF g_bDebugUnlockPilotRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_PILOT_SCHOOL_REWARD_SHIRT)) BREAK ENDSWITCH BREAK CASE HASH("mpLTS_overlays") SWITCH iPreset // LTS Award Tops CASE HASH("FM_LTS_M_Tshirt_000") CASE HASH("FM_LTS_F_Tshirt_000") #IF IS_DEBUG_BUILD IF g_bDebugUnlockLTSRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCK_LTS_REWARD_SHIRT) AND NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BOOL_AWARD_VictoryFistTshirt)) BREAK ENDSWITCH BREAK CASE HASH("mpLuxe_overlays") //The one in mpLuxe_overlays has the wrong label, moved to mpLuxe2_overlays IF iPreset = HASH("MP_LUXE_VDG_006_F") RETURN TRUE // LOCKED ENDIF #IF IS_DEBUG_BUILD IF g_bDebugUnlockLuxeRewardItems RETURN FALSE // UNLOCKED ENDIF #ENDIF SWITCH iPreset // Luxe Award Tops CASE HASH("MP_FAKE_DIS_000_M") // Fake Dix White T-shirt CASE HASH("MP_FAKE_DIS_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_DIX_WHITE_TSHIRT)) BREAK CASE HASH("MP_FAKE_DIS_001_M") // Fake Dix Gold T-shirt CASE HASH("MP_FAKE_DIS_001_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_DIX_GOLD_TSHIRT)) BREAK CASE HASH("MP_FAKE_DS_000_M") // Fake Didier Sachs T-shirt CASE HASH("MP_FAKE_DS_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_DIDIER_SACHS_TSHIRT)) BREAK CASE HASH("MP_FAKE_ENEMA_000_M") // Fake Enema T-shirt T-shirt CASE HASH("MP_FAKE_ENEMA_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_ENEMA_TSHIRT_TSHIRT)) BREAK CASE HASH("MP_FAKE_LB_000_M") // Fake Le Chien No2 T-shirt CASE HASH("MP_FAKE_LB_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_LE_CHIEN_NO2_TSHIRT)) BREAK CASE HASH("MP_FAKE_LC_000_M") // Fake Le Chien Crew T-shirt CASE HASH("MP_FAKE_LC_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_LE_CHIEN_CREW_TSHIRT)) BREAK CASE HASH("MP_FAKE_SC_000_M") // Fake Santo Capra T-shirt CASE HASH("MP_FAKE_SC_000_F") IF GET_PACKED_STAT_BOOL(PACKED_MP_CASINO_CLOTHES_REWARD_112) RETURN FALSE // UNLOCK ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_SANTO_CAPRA_TSHIRT)) BREAK CASE HASH("MP_FAKE_Vap_000_M") // Fake Vapid T-shirt CASE HASH("MP_FAKE_Vap_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_VAPID_TSHIRT)) BREAK CASE HASH("MP_FAKE_Per_000_M") // Fake Perseus T-shirt CASE HASH("MP_FAKE_Per_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_PERSEUS_TSHIRT)) BREAK CASE HASH("MP_FAKE_SN_000_M") // Fake Sessanta Nove T-shirt CASE HASH("MP_FAKE_SN_000_F") RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FAKE_SESSANTA_NOVE_TSHIRT)) BREAK CASE HASH("MP_FILM_000_F") // Vinewood Zombie CASE HASH("MP_FILM_000_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_000_F") //F_CL_CLO_VEF_DEC_39_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 0) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_000_M") //M_CL_CLO_VEM_DEC_39_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 18) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_VINEWOOD_ZOMBIE)) BREAK CASE HASH("MP_FILM_001_F") // Meltdown CASE HASH("MP_FILM_001_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_001_F") //F_CL_CLO_VEF_DEC_40_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 1) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_001_M") //M_CL_CLO_VEM_DEC_40_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 19) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_MELTDOWN)) BREAK CASE HASH("MP_FILM_002_F") // I Married My Dad CASE HASH("MP_FILM_002_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_002_F") //F_CL_CLO_VEF_DEC_41_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 2) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_002_M") //M_CL_CLO_VEM_DEC_41_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 20) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_I_MARRIED_MY_DAD)) BREAK CASE HASH("MP_FILM_003_F") // Die Already 4 CASE HASH("MP_FILM_003_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_003_F") //F_CL_CLO_VEF_DEC_42_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 3) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_003_M") //M_CL_CLO_VEM_DEC_42_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 21) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_DIE_ALREADY_4)) BREAK CASE HASH("MP_FILM_004_F") // The Shoulder of Orion II CASE HASH("MP_FILM_004_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_004_F") //F_CL_CLO_VEF_DEC_43_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 4) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_004_M") //M_CL_CLO_VEM_DEC_43_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 22) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_SHOULDER_OF_ORION)) BREAK CASE HASH("MP_FILM_005_F") // Nelson In Naples CASE HASH("MP_FILM_005_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_005_F") //F_CL_CLO_VEF_DEC_44_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 5) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_005_M") //M_CL_CLO_VEM_DEC_44_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 23) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_NELSON_IN_NAPLES)) BREAK CASE HASH("MP_FILM_006_F") // The Many Wives oF Alfred Smith CASE HASH("MP_FILM_006_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_006_F") //F_CL_CLO_VEF_DEC_45_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 6) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_006_M") //M_CL_CLO_VEM_DEC_45_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 24) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_ALFRED_SMITH)) BREAK CASE HASH("MP_FILM_007_F") // An American Divorce CASE HASH("MP_FILM_007_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_007_F") //F_CL_CLO_VEF_DEC_46_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 7) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_007_M") //M_CL_CLO_VEM_DEC_46_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 25) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_AMERICAN_DIVORCE)) BREAK CASE HASH("MP_FILM_008_F") // The Lonliest Robot CASE HASH("MP_FILM_008_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_008_F") //F_CL_CLO_VEF_DEC_47_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 8) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_008_M") //M_CL_CLO_VEM_DEC_47_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 26) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_LONLIEST_ROBOT)) BREAK CASE HASH("MP_FILM_009_F") // Capolavoro CASE HASH("MP_FILM_009_M") // Fix for b*2355333 - If the decal has been flagged as purchased via SCAdmin we need to allow. IF iPreset = HASH("MP_FILM_009_F") //F_CL_CLO_VEF_DEC_48_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_14) IF IS_BIT_SET(iStatValue, 9) RETURN FALSE // UNLOCKED ENDIF ELIF iPreset = HASH("MP_FILM_009_M") //M_CL_CLO_VEM_DEC_48_t100_v0 INT iStatValue iStatValue = GET_MP_INT_CHARACTER_STAT(MP_STAT_TATTOO_FM_UNLOCKS_13) IF IS_BIT_SET(iStatValue, 27) RETURN FALSE // UNLOCKED ENDIF ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_FILM_CAPOLAVORO)) BREAK ENDSWITCH BREAK CASE HASH("mpLuxe2_overlays") SWITCH iPreset CASE HASH("MP_Luxe_Tat_030_M") CASE HASH("MP_Luxe_Tat_031_M") RETURN TRUE // LOCKED BREAK CASE HASH("MP_Luxe_Tat_030_F") CASE HASH("MP_Luxe_Tat_031_F") RETURN TRUE // LOCKED BREAK ENDSWITCH BREAK CASE HASH("multiplayer_overlays") SWITCH iPreset // CGtoNG CASE HASH("mp_fm_OGA_000_m") CASE HASH("mp_fm_OGA_001_m") CASE HASH("mp_fm_OGA_002_m") CASE HASH("mp_fm_OGA_003_m") CASE HASH("mp_fm_OGA_000_f") CASE HASH("mp_fm_OGA_001_f") CASE HASH("mp_fm_OGA_002_f") CASE HASH("mp_fm_OGA_003_f") RETURN (NOT IS_LAST_GEN_PLAYER()) BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // UNLOCKED ENDFUNC FUNC BOOL IS_MP_HEIST_ITEM_LOCKED_BY_SCRIPT(TEXT_LABEL_15 sLabel) INT iLabelHash = GET_HASH_KEY(sLabel) SWITCH iLabelHash CASE HASH("WT_FLAREGUN") //Flare Gun #IF IS_DEBUG_BUILD IF g_bDebugAllowHeistItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCKED_FLAREGUN)) BREAK CASE HASH("CLO_HST_E_2_0") //LCD Earpiece #IF IS_DEBUG_BUILD IF g_bDebugAllowHeistItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCKED_LCD_EARPIECE) AND NOT g_sMPTunables.bDISABLE_HEIST_UNLOCK_EARPIECE) BREAK CASE HASH("CLO_HST_HR_0_0") //Night Vision CASE HASH("CLO_HST_B_0_0") //Night Vision #IF IS_DEBUG_BUILD IF g_bDebugAllowHeistItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCKED_NIGHTVISION) AND NOT g_sMPTunables.bDISABLE_HEIST_UNLOCK_NVISION) BREAK CASE HASH("CLO_HST_B_1_0") //Rebreather #IF IS_DEBUG_BUILD IF g_bDebugAllowHeistItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCKED_REBREATHER) AND NOT g_sMPTunables.bDISABLE_HEIST_UNLOCK_REBREATHER) BREAK CASE HASH("CLO_HST_B_2_0") //Scruffy Balaclava #IF IS_DEBUG_BUILD IF g_bDebugAllowHeistItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCKED_SKI_MASK)) BREAK CASE HASH("CLO_HST_B_3_0") //Gas Mask #IF IS_DEBUG_BUILD IF g_bDebugAllowHeistItems RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_MP_STAT_UNLOCKED_GAS_MASK)) BREAK ENDSWITCH SWITCH iLabelHash CASE HASH("CLO_H3M_PH_5_0") // Black Cap CASE HASH("CLO_H3M_PH_6_0") // Black Cap #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN NOT (GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_3_OUTFITS) OR GET_PACKED_STAT_BOOL(PACKED_STAT_GRUPPE_SECHS_OUTFITS) OR GET_PACKED_STAT_BOOL(PACKED_STAT_MAINTENANCE_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_DL_11") // The Careful CASE HASH("CLO_H3M_O_DL_12") // The Cautious CASE HASH("CLO_H3M_U_7_0") // White Dress Shirt CASE HASH("CLO_H3M_O_DL_13") // The Considered CASE HASH("CLO_H3M_O_DL_14") // The Strict CASE HASH("CLO_H3M_O_DL_15") // The Correct CASE HASH("CLO_H3M_O_DL_16") // The Particular #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_LIGHT_1_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_DL_21") // The Swanky CASE HASH("CLO_H3M_O_DL_22") // The Smart CASE HASH("CLO_H3M_O_DL_23") // The Neat CASE HASH("CLO_H3M_O_DL_24") // The Dapper CASE HASH("CLO_H3M_O_DL_25") // The Dashing CASE HASH("CLO_H3M_O_DL_26") // The Trendy #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_LIGHT_2_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_DL_31") // The Proper CASE HASH("CLO_H3M_O_DL_32") // The Stiff CASE HASH("CLO_H3M_O_DL_33") // The Prim CASE HASH("CLO_H3M_O_DL_34") // The Starched CASE HASH("CLO_H3M_O_DL_35") // The Orderly CASE HASH("CLO_H3M_O_DL_36") // The Demure #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_LIGHT_3_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_DH_11") // The Forest CASE HASH("CLO_H3M_L_4_11") // Splinter Knee Pad Cargos CASE HASH("CLO_H3M_U_10_11") // Green Camo Armored Shirt CASE HASH("CLO_H3M_O_DH_12") // The Desert CASE HASH("CLO_H3M_L_4_12") // Contrast Camo Knee Pad Cargos CASE HASH("CLO_H3M_U_10_12") // Contrast Camo Armored Shirt CASE HASH("CLO_H3M_O_DH_13") // The Icefield CASE HASH("CLO_H3M_L_4_17") // Blue Digital Knee Pad Cargos CASE HASH("CLO_H3M_U_10_17") // Blue Digital Armored Shirt CASE HASH("CLO_H3M_O_DH_14") // The Grassland CASE HASH("CLO_H3M_L_4_13") // Green Digital Knee Pad Cargos CASE HASH("CLO_H3M_U_10_13") // Green Digital Armored Shirt CASE HASH("CLO_H3M_O_DH_15") // The Glacier CASE HASH("CLO_H3M_L_4_10") // Blue Camo Knee Pad Cargos CASE HASH("CLO_H3M_U_10_10") // Blue Camo Armored Shirt CASE HASH("CLO_H3M_O_DH_16") // The Swamp CASE HASH("CLO_H3M_L_4_18") // Cobble Knee Pad Cargos CASE HASH("CLO_H3M_U_10_18") // Cobble Armored Shirt #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_HEAVY_1_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_DH_21") // The Shielded CASE HASH("CLO_H3M_L_5_5") // Forest Green Guarded Cargos CASE HASH("CLO_H3M_O_DH_22") // The Safeguard CASE HASH("CLO_H3M_L_5_3") // Beige Guarded Cargos CASE HASH("CLO_H3M_O_DH_23") // The Fortified CASE HASH("CLO_H3M_L_5_1") // Black Guarded Cargos CASE HASH("CLO_H3M_O_DH_24") // The Defended CASE HASH("CLO_H3M_O_DH_25") // The Secured CASE HASH("CLO_H3M_L_5_0") // Dark Gray Guarded Cargos CASE HASH("CLO_H3M_O_DH_26") // The Braced #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_HEAVY_2_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_DH_31") // The Traverser CASE HASH("CLO_H3M_O_DH_32") // The Navigator CASE HASH("CLO_H3M_O_DH_33") // The Router CASE HASH("CLO_H3M_O_DH_34") // The Trooper CASE HASH("CLO_H3M_O_DH_35") // The Surveyor CASE HASH("CLO_H3M_O_DH_36") // The Roamer #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_HEAVY_3_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_SH_11") // The Conspirator CASE HASH("CLO_H3M_S_1_0") // Gray & Brown Armor CASE HASH("CLO_H3M_PH_10_0") // Black Scope Nightvision CASE HASH("CLO_H3M_PH_11_0") // Black Scope Nightvision CASE HASH("CLO_H3M_O_SH_12") // The Accomplice CASE HASH("CLO_H3M_O_SH_13") // The Schemer CASE HASH("CLO_H3M_O_SH_14") // The Associate CASE HASH("CLO_H3M_O_SH_15") // The Intriguer CASE HASH("CLO_H3M_O_SH_16") // The Infiltrator #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_TECH_1_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_SH_21") // The Scout CASE HASH("CLO_H3M_B_14_14") // Dark Pink Leather Half Face CASE HASH("CLO_H3M_S_12_0") // Black Pocket Vest CASE HASH("CLO_H3M_O_SH_22") // The Mole CASE HASH("CLO_H3M_B_14_22") // Putty Leather Half Face CASE HASH("CLO_H3M_O_SH_23") // The Watcher CASE HASH("CLO_H3M_B_14_21") // Gray Leather Half Face CASE HASH("CLO_H3M_O_SH_24") // The Vanguard CASE HASH("CLO_H3M_B_14_10") // Red Lip Leather Half Face CASE HASH("CLO_H3M_O_SH_25") // The Planter CASE HASH("CLO_H3M_B_14_0") // Gray & Red Leather Half Face CASE HASH("CLO_H3M_O_SH_26") // The Disposer CASE HASH("CLO_H3M_B_14_2") // Gray & White Leather Half Face #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_TECH_2_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_SH_31") // The Shadow CASE HASH("CLO_H3M_S_13_0") // Black Reinforced Armor CASE HASH("CLO_H3M_O_SH_32") // The Blotted CASE HASH("CLO_H3M_O_SH_33") // The Eclipsed CASE HASH("CLO_H3M_O_SH_34") // The Obscure CASE HASH("CLO_H3M_O_SH_35") // The Concealed CASE HASH("CLO_H3M_O_SH_36") // The Shade #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_TECH_3_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_FIB_1") // The Negotiator CASE HASH("CLO_H3M_O_FIB_2") // The Mediator CASE HASH("CLO_H3M_O_FIB_3") // The Facilitator CASE HASH("CLO_H3M_O_FIB_4") // The Arbitrator #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_FIB_SUIT_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_UND_1") // The Ominous CASE HASH("CLO_H3M_PH_9_0") // Black Undertaker Hat #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_UNDERTAKER_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_PRP_1") // The Pickup CASE HASH("CLO_H3M_O_PRP_2") // The Remover #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_TRASH_COLLECTOR_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_JAN_1") // The Mender CASE HASH("CLO_H3M_O_JAN_2") // The Sustainer CASE HASH("CLO_H3M_PH_5_1") // Gray Cap CASE HASH("CLO_H3M_PH_6_1") // Gray Cap CASE HASH("CLO_H3M_O_JAN_3") // The Obligor CASE HASH("CLO_H3M_O_JAN_4") // The Corrector CASE HASH("CLO_H3M_O_JAN_5") // The Renovator CASE HASH("CLO_H3M_O_JAN_6") // The Welder #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_MAINTENANCE_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_CLB_1") // The Trending CASE HASH("CLO_H3M_U_16_0") // Yung Ancestor Hoodie CASE HASH("CLO_H3M_PH_2_2") // Yung Ancestor Cap CASE HASH("CLO_H3M_O_CLB_2") // The In CASE HASH("CLO_H3M_O_CLB_3") // The Personality CASE HASH("CLO_H3M_PH_3_2") // Yung Ancestor Cap CASE HASH("CLO_H3M_O_CLB_4") // The Face CASE HASH("CLO_H3M_U_15_0") // Yung Ancestor Tour Jacket #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_YUNG_ANCESTOR_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_GRP_1") // The Rigid CASE HASH("CLO_H3M_U_2_1") // Green Uniform Closed CASE HASH("CLO_H3M_U_3_1") // Green Uniform Open CASE HASH("CLO_H3M_PH_7_0") // Gruppe Sechs Helmet CASE HASH("CLO_H3M_O_GRP_2") // The Imposer CASE HASH("CLO_H3M_O_GRP_3") // The Shatterproof CASE HASH("CLO_H3M_U_4_1") // Green Short Uniform Closed CASE HASH("CLO_H3M_U_5_1") // Green Short Uniform Open CASE HASH("CLO_H3M_O_GRP_4") // The Defender CASE HASH("CLO_H3M_O_GRP_5") // The Unbreakable CASE HASH("CLO_H3M_U_5_2") // Cream Short Uniform Open CASE HASH("CLO_H3M_O_GRP_6") // The Enactor CASE HASH("CLO_H3M_U_2_2") // Cream Uniform Closed CASE HASH("CLO_H3M_U_3_2") // Cream Uniform Open #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_GRUPPE_SECHS_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_BS_1") // The Debugger CASE HASH("CLO_H3M_B_6_1") // Rebreather - Yellow (~1~/~1~) CASE HASH("CLO_H3M_PH_2_0") // Bugstars Cap CASE HASH("CLO_H3M_O_BS_2") // The Sprayer CASE HASH("CLO_H3M_B_15_1") // Green Visor Respirator CASE HASH("CLO_H3M_O_BS_3") // The Compressor CASE HASH("CLO_H3M_PH_3_0") // Bugstars Cap CASE HASH("CLO_H3M_O_BS_4") // The Depositor CASE HASH("CLO_H3M_O_BS_5") // The Bagger CASE HASH("CLO_H3M_B_6_0") // Rebreather - Charcoal (~1~/~1~) CASE HASH("CLO_H3M_O_BS_6") // The Eradicator #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BUGSTAR_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_FF_1") // The Intrepid CASE HASH("CLO_H3M_PH_0_0") // Yellow Firefighter CASE HASH("CLO_H3M_O_FF_2") // The Valiant CASE HASH("CLO_H3M_O_FF_7") // The Steady CASE HASH("CLO_H3M_PH_1_0") // Yellow Firefighter & Goggles CASE HASH("CLO_H3M_O_FF_8") // The Unwavering #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_FIRE_FIGHTERS_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_SL_11") // The Sneaker CASE HASH("CLO_H3M_O_SL_12") // The Creeper CASE HASH("CLO_H3M_O_SL_13") // The Slinker CASE HASH("CLO_H3M_O_SL_14") // The Lifter CASE HASH("CLO_H3M_O_SL_15") // The Pilferer CASE HASH("CLO_H3M_O_SL_16") // The Skulker #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_1_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_SL_21") // The Shady CASE HASH("CLO_H3M_O_SL_22") // The Underhanded CASE HASH("CLO_H3M_O_SL_23") // The Suspect CASE HASH("CLO_H3M_O_SL_24") // The Dodgy CASE HASH("CLO_H3M_O_SL_25") // The Dubious CASE HASH("CLO_H3M_O_SL_26") // The Unsavoury #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_2_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_SL_31") // The Unmoved CASE HASH("CLO_H3M_B_9_0") // Black Neck Gaiter CASE HASH("CLO_H3M_O_SL_32") // The Untraceable CASE HASH("CLO_H3M_O_SL_33") // The No-Frills CASE HASH("CLO_H3M_O_SL_34") // The Routine CASE HASH("CLO_H3M_O_SL_35") // The Smooth CASE HASH("CLO_H3M_O_SL_36") // The Offhand #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_3_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_VAL_1") // Valet #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_VALET_OUTFITS)) BREAK CASE HASH("CLO_H3M_O_PR_1") // The Steadfast CASE HASH("CLO_H3M_L_2_0") // Correctional Cargo CASE HASH("CLO_H3M_U_3_3") // Beige Uniform Open CASE HASH("CLO_H3M_PH_2_1") // Prison Authority Cap CASE HASH("CLO_H3M_PH_3_1") // Prison Authority Cap CASE HASH("CLO_H3M_O_PR_4") // The Exacting CASE HASH("CLO_H3M_U_5_4") // Sage Short Uniform Open CASE HASH("CLO_H3M_O_PR_2") // The No-Nonsense CASE HASH("CLO_H3M_U_4_3") // Beige Short Uniform Closed CASE HASH("CLO_H3M_U_5_3") // Beige Short Uniform Open CASE HASH("CLO_H3M_O_PR_3") // The Austere CASE HASH("CLO_H3M_U_2_4") // Sage Uniform Closed CASE HASH("CLO_H3M_U_3_4") // Sage Uniform Open #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_PRISON_GUARD_OUTFITS)) BREAK ENDSWITCH SWITCH iLabelHash CASE HASH("CLO_H3F_PH_5_0") // Black Cap CASE HASH("CLO_H3F_PH_6_0") // Black Cap #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN NOT (GET_PACKED_STAT_BOOL(PACKED_STAT_MAINTENANCE_OUTFITS) OR GET_PACKED_STAT_BOOL(PACKED_STAT_GRUPPE_SECHS_OUTFITS) OR GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_3_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_DL_11") // The Careful CASE HASH("CLO_H3F_U_4_5") // White Short Uniform Open CASE HASH("CLO_H3F_O_DL_12") // The Cautious CASE HASH("CLO_H3F_U_7_0") // White Dress Shirt Open CASE HASH("CLO_H3F_O_DL_13") // The Considered CASE HASH("CLO_H3F_U_4_7") // Gray Short Uniform Open CASE HASH("CLO_H3F_O_DL_14") // The Strict CASE HASH("CLO_H3F_U_8_0") // White Dress Shirt Closed CASE HASH("CLO_H3F_O_DL_15") // The Correct CASE HASH("CLO_H3F_O_DL_16") // The Particular CASE HASH("CLO_H3F_U_5_3") // Beige Short Uniform Closed #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_LIGHT_1_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_DL_21") // The Swanky CASE HASH("CLO_H3F_O_DL_22") // The Smart CASE HASH("CLO_H3F_O_DL_23") // The Neat CASE HASH("CLO_H3F_O_DL_24") // The Dapper CASE HASH("CLO_H3F_O_DL_25") // The Dashing CASE HASH("CLO_H3F_O_DL_26") // The Trendy #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_LIGHT_2_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_DL_31") // The Proper CASE HASH("CLO_H3F_U_14_0") // Black Smooth Fitted CASE HASH("CLO_H3F_O_DL_32") // The Stiff CASE HASH("CLO_H3F_O_DL_33") // The Prim CASE HASH("CLO_H3F_U_14_5") // White Smooth Fitted CASE HASH("CLO_H3F_O_DL_34") // The Starched CASE HASH("CLO_H3F_U_14_6") // Brown Smooth Fitted CASE HASH("CLO_H3F_O_DL_35") // The Orderly CASE HASH("CLO_H3F_U_14_2") // Navy Smooth Fitted CASE HASH("CLO_H3F_O_DL_36") // The Demure CASE HASH("CLO_H3F_U_14_4") // Red Smooth Fitted #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_LIGHT_3_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_DH_11") // The Forest CASE HASH("CLO_H3F_L_4_11") // Splinter Knee Pad Cargos CASE HASH("CLO_H3F_U_11_11") // Green Camo Armored Shirt CASE HASH("CLO_H3F_O_DH_12") // The Desert CASE HASH("CLO_H3F_L_4_12") // Contrast Camo Knee Pad Cargos CASE HASH("CLO_H3F_U_11_12") // Contrast Camo Armored Shirt CASE HASH("CLO_H3F_O_DH_13") // The Icefield CASE HASH("CLO_H3F_L_4_17") // Blue Digital Knee Pad Cargos CASE HASH("CLO_H3F_U_11_17") // Blue Digital Armored Shirt CASE HASH("CLO_H3F_O_DH_14") // The Grassland CASE HASH("CLO_H3F_L_4_13") // Green Digital Knee Pad Cargos CASE HASH("CLO_H3F_U_11_13") // Green Digital Armored Shirt CASE HASH("CLO_H3F_O_DH_15") // The Glacier CASE HASH("CLO_H3F_L_4_10") // Blue Camo Knee Pad Cargos CASE HASH("CLO_H3F_U_11_10") // Blue Camo Armored Shirt CASE HASH("CLO_H3F_O_DH_16") // The Swamp CASE HASH("CLO_H3F_L_4_18") // Cobble Knee Pad Cargos CASE HASH("CLO_H3F_U_11_18") // Cobble Armored Shirt #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_HEAVY_1_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_DH_21") // The Shielded CASE HASH("CLO_H3F_L_5_5") // Forest Green Guarded Cargos CASE HASH("CLO_H3F_O_DH_22") // The Safeguard CASE HASH("CLO_H3F_L_5_3") // Beige Guarded Cargos CASE HASH("CLO_H3F_O_DH_23") // The Fortified CASE HASH("CLO_H3F_L_5_1") // Black Guarded Cargos CASE HASH("CLO_H3F_O_DH_24") // The Defended CASE HASH("CLO_H3F_O_DH_25") // The Secured CASE HASH("CLO_H3F_L_5_0") // Dark Gray Guarded Cargos CASE HASH("CLO_H3F_O_DH_26") // The Braced #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_HEAVY_2_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_DH_31") // The Traverser CASE HASH("CLO_H3F_O_DH_32") // The Navigator CASE HASH("CLO_H3F_O_DH_33") // The Router CASE HASH("CLO_H3F_O_DH_34") // The Trooper CASE HASH("CLO_H3F_O_DH_35") // The Surveyor CASE HASH("CLO_H3F_O_DH_36") // The Roamer #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_DIRECT_HEAVY_3_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_SH_11") // The Conspirator CASE HASH("CLO_H3F_PH_10_0") // Black Scope Nightvision CASE HASH("CLO_H3F_PH_11_0") // Black Scope Nightvision CASE HASH("CLO_H3F_O_SH_12") // The Accomplice CASE HASH("CLO_H3F_O_SH_13") // The Schemer CASE HASH("CLO_H3F_O_SH_14") // The Associate CASE HASH("CLO_H3F_S_1_0") // Gray & Brown Armor CASE HASH("CLO_H3F_O_SH_15") // The Intriguer CASE HASH("CLO_H3F_O_SH_16") // The Infiltrator #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_TECH_1_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_SH_21") // The Scout CASE HASH("CLO_H3F_B_14_24") // Stone Leather Half Face CASE HASH("CLO_H3F_S_12_0") // Black Pocket Vest CASE HASH("CLO_H3F_O_SH_22") // The Mole CASE HASH("CLO_H3F_B_14_22") // Putty Leather Half Face CASE HASH("CLO_H3F_O_SH_23") // The Watcher CASE HASH("CLO_H3F_B_14_21") // Gray Leather Half Face CASE HASH("CLO_H3F_O_SH_24") // The Vanguard CASE HASH("CLO_H3F_B_14_10") // Red Lip Leather Half Face CASE HASH("CLO_H3F_O_SH_25") // The Planter CASE HASH("CLO_H3F_O_SH_26") // The Disposer CASE HASH("CLO_H3F_B_14_2") // Gray & White Leather Half Face #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_TECH_2_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_SH_31") // The Shadow CASE HASH("CLO_H3F_S_13_0") // Black Reinforced Armor CASE HASH("CLO_H3F_O_SH_32") // The Blotted CASE HASH("CLO_H3F_O_SH_33") // The Eclipsed CASE HASH("CLO_H3F_O_SH_34") // The Obscure CASE HASH("CLO_H3F_O_SH_35") // The Concealed CASE HASH("CLO_H3F_O_SH_36") // The Shade #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_TECH_3_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_FIB_1") // The Negotiator CASE HASH("CLO_H3F_O_FIB_2") // The Mediator CASE HASH("CLO_H3F_O_FIB_3") // The Facilitator CASE HASH("CLO_H3F_O_FIB_4") // The Arbitrator #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_FIB_SUIT_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_UND_1") // The Ominous CASE HASH("CLO_H3F_PH_9_0") // Black Undertaker Hat #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_UNDERTAKER_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_PRP_1") // The Pickup CASE HASH("CLO_H3F_O_PRP_2") // The Remover #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_TRASH_COLLECTOR_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_JAN_1") // The Mender CASE HASH("CLO_H3F_O_JAN_2") // The Sustainer CASE HASH("CLO_H3F_PH_5_1") // Gray Cap CASE HASH("CLO_H3F_PH_6_1") // Gray Cap CASE HASH("CLO_H3F_O_JAN_3") // The Obligor CASE HASH("CLO_H3F_O_JAN_4") // The Corrector CASE HASH("CLO_H3F_O_JAN_5") // The Renovator CASE HASH("CLO_H3F_O_JAN_6") // The Welder #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_MAINTENANCE_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_CLB_1") // The Trending CASE HASH("CLO_H3F_U_20_0") // Yung Ancestor Hoodie CASE HASH("CLO_H3F_PH_2_2") // Yung Ancestor Cap CASE HASH("CLO_H3F_O_CLB_2") // The In CASE HASH("CLO_H3F_O_CLB_3") // The Personality CASE HASH("CLO_H3F_PH_3_2") // Yung Ancestor Cap CASE HASH("CLO_H3F_O_CLB_4") // The Face CASE HASH("CLO_H3F_U_19_0") // Yung Ancestor Tour Jacket #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_YUNG_ANCESTOR_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_GRP_4") // The Defender CASE HASH("CLO_H3F_U_5_1") // Green Short Uniform Closed CASE HASH("CLO_H3F_O_GRP_2") // The Imposer CASE HASH("CLO_H3F_U_3_1") // Green Uniform Closed CASE HASH("CLO_H3F_O_GRP_1") // The Rigid CASE HASH("CLO_H3F_U_2_1") // Green Uniform Closed CASE HASH("CLO_H3F_PH_7_0") // Gruppe Sechs Helmet CASE HASH("CLO_H3F_O_GRP_3") // The Shatterproof CASE HASH("CLO_H3F_U_4_1") // Green Short Uniform Open CASE HASH("CLO_H3F_O_GRP_5") // The Unbreakable CASE HASH("CLO_H3F_U_5_2") // Cream Short Uniform Closed CASE HASH("CLO_H3F_O_GRP_6") // The Enactor CASE HASH("CLO_H3F_U_2_2") // Cream Uniform Closed #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_GRUPPE_SECHS_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_BS_1") // The Debugger CASE HASH("CLO_H3F_B_6_1") // Rebreather - Yellow (~1~/~1~) CASE HASH("CLO_H3F_PH_2_0") // Bugstars Cap CASE HASH("CLO_H3F_O_BS_2") // The Sprayer CASE HASH("CLO_H3F_B_15_0") // Yellow Visor Respirator CASE HASH("CLO_H3F_O_BS_3") // The Compressor CASE HASH("CLO_H3F_PH_3_0") // Bugstars Cap CASE HASH("CLO_H3F_O_BS_4") // The Depositor CASE HASH("CLO_H3F_O_BS_5") // The Bagger CASE HASH("CLO_H3F_B_6_0") // Rebreather - Charcoal (~1~/~1~) CASE HASH("CLO_H3F_O_BS_6") // The Eradicator #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_BUGSTAR_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_FF_1") // The Intrepid CASE HASH("CLO_H3F_PH_0_0") // Yellow Firefighter CASE HASH("CLO_H3F_O_FF_2") // The Valiant CASE HASH("CLO_H3F_O_FF_7") // The Steady CASE HASH("CLO_H3F_PH_1_0") // Yellow Firefighter & Goggles CASE HASH("CLO_H3F_O_FF_8") // The Unwavering #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_FIRE_FIGHTERS_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_SL_11") // The Sneaker CASE HASH("CLO_H3F_O_SL_12") // The Creeper CASE HASH("CLO_H3F_O_SL_13") // The Slinker CASE HASH("CLO_H3F_O_SL_14") // The Lifter CASE HASH("CLO_H3F_O_SL_15") // The Pilferer CASE HASH("CLO_H3F_O_SL_16") // The Skulker #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_1_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_SL_21") // The Shady CASE HASH("CLO_H3F_O_SL_22") // The Underhanded CASE HASH("CLO_H3F_O_SL_23") // The Suspect CASE HASH("CLO_H3F_O_SL_24") // The Dodgy CASE HASH("CLO_H3F_O_SL_25") // The Dubious CASE HASH("CLO_H3F_O_SL_26") // The Unsavoury #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_2_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_SL_31") // The Unmoved CASE HASH("CLO_H3F_B_9_0") // Black Neck Gaiter CASE HASH("CLO_H3F_O_SL_32") // The Untraceable CASE HASH("CLO_H3F_O_SL_33") // The No-Frills CASE HASH("CLO_H3F_O_SL_34") // The Routine CASE HASH("CLO_H3F_O_SL_35") // The Smooth CASE HASH("CLO_H3F_O_SL_36") // The Offhand #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_STEALTH_LIGHT_3_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_VAL_1") // Valet #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_VALET_OUTFITS)) BREAK CASE HASH("CLO_H3F_O_PR_1") // The Steadfast CASE HASH("CLO_H3F_L_2_0") // Correctional Cargo CASE HASH("CLO_H3F_U_3_3") // Beige Uniform Closed CASE HASH("CLO_H3F_PH_2_1") // Prison Authority Cap CASE HASH("CLO_H3F_PH_3_1") // Prison Authority Cap CASE HASH("CLO_H3F_O_PR_4") // The Exacting CASE HASH("CLO_H3F_U_5_4") // Sage Short Uniform Closed CASE HASH("CLO_H3F_O_PR_2") // The No-Nonsense CASE HASH("CLO_H3F_U_4_3") // Beige Short Uniform Open CASE HASH("CLO_H3F_O_PR_3") // The Austere CASE HASH("CLO_H3F_U_2_4") // Sage Uniform Closed #IF IS_DEBUG_BUILD IF g_bDebugUnlockCasinoHeistRewardItems //#ENDIF RETURN FALSE // UNLOCKED ENDIF #ENDIF RETURN (NOT GET_PACKED_STAT_BOOL(PACKED_STAT_PRISON_GUARD_OUTFITS)) BREAK ENDSWITCH RETURN FALSE // UNLOCKED ENDFUNC FUNC STRING GET_MP_HEIST_ITEM_LOCKED_DESC(TEXT_LABEL_15 sLabel) INT iLabelHash = GET_HASH_KEY(sLabel) SWITCH iLabelHash CASE HASH("WT_FLAREGUN") //Flare Gun RETURN ("CSHOP_LCKHUM") BREAK CASE HASH("CLO_HST_E_2_0") //LCD Earpiece RETURN ("CSHOP_LCKFLE") BREAK CASE HASH("CLO_HST_HR_0_0") //Night Vision CASE HASH("CLO_HST_B_0_0") //Night Vision RETURN ("CSHOP_LCKHUM") BREAK CASE HASH("CLO_HST_B_1_0") //Rebreather RETURN ("CSHOP_LCKHUM") BREAK CASE HASH("CLO_HST_B_2_0") //Scruffy Balaclava RETURN ("CSHOP_LCKFLE") BREAK CASE HASH("CLO_HST_B_3_0") //Gas Mask RETURN ("CSHOP_LCKFLE") BREAK ENDSWITCH SWITCH iLabelHash CASE HASH("CLO_H3M_PH_5_0") // Black Cap CASE HASH("CLO_H3M_PH_6_0") // Black Cap RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_DL_11") // The Careful CASE HASH("CLO_H3M_O_DL_12") // The Cautious CASE HASH("CLO_H3M_U_7_0") // White Dress Shirt CASE HASH("CLO_H3M_O_DL_13") // The Considered CASE HASH("CLO_H3M_O_DL_14") // The Strict CASE HASH("CLO_H3M_O_DL_15") // The Correct CASE HASH("CLO_H3M_O_DL_16") // The Particular RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_DL_21") // The Swanky CASE HASH("CLO_H3M_O_DL_22") // The Smart CASE HASH("CLO_H3M_O_DL_23") // The Neat CASE HASH("CLO_H3M_O_DL_24") // The Dapper CASE HASH("CLO_H3M_O_DL_25") // The Dashing CASE HASH("CLO_H3M_O_DL_26") // The Trendy RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_DL_31") // The Proper CASE HASH("CLO_H3M_O_DL_32") // The Stiff CASE HASH("CLO_H3M_O_DL_33") // The Prim CASE HASH("CLO_H3M_O_DL_34") // The Starched CASE HASH("CLO_H3M_O_DL_35") // The Orderly CASE HASH("CLO_H3M_O_DL_36") // The Demure RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_DH_11") // The Forest CASE HASH("CLO_H3M_L_4_11") // Splinter Knee Pad Cargos CASE HASH("CLO_H3M_U_10_11") // Green Camo Armored Shirt CASE HASH("CLO_H3M_O_DH_12") // The Desert CASE HASH("CLO_H3M_L_4_12") // Contrast Camo Knee Pad Cargos CASE HASH("CLO_H3M_U_10_12") // Contrast Camo Armored Shirt CASE HASH("CLO_H3M_O_DH_13") // The Icefield CASE HASH("CLO_H3M_L_4_17") // Blue Digital Knee Pad Cargos CASE HASH("CLO_H3M_U_10_17") // Blue Digital Armored Shirt CASE HASH("CLO_H3M_O_DH_14") // The Grassland CASE HASH("CLO_H3M_L_4_13") // Green Digital Knee Pad Cargos CASE HASH("CLO_H3M_U_10_13") // Green Digital Armored Shirt CASE HASH("CLO_H3M_O_DH_15") // The Glacier CASE HASH("CLO_H3M_L_4_10") // Blue Camo Knee Pad Cargos CASE HASH("CLO_H3M_U_10_10") // Blue Camo Armored Shirt CASE HASH("CLO_H3M_O_DH_16") // The Swamp CASE HASH("CLO_H3M_L_4_18") // Cobble Knee Pad Cargos CASE HASH("CLO_H3M_U_10_18") // Cobble Armored Shirt RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_DH_21") // The Shielded CASE HASH("CLO_H3M_L_5_5") // Forest Green Guarded Cargos CASE HASH("CLO_H3M_O_DH_22") // The Safeguard CASE HASH("CLO_H3M_L_5_3") // Beige Guarded Cargos CASE HASH("CLO_H3M_O_DH_23") // The Fortified CASE HASH("CLO_H3M_L_5_1") // Black Guarded Cargos CASE HASH("CLO_H3M_O_DH_24") // The Defended CASE HASH("CLO_H3M_O_DH_25") // The Secured CASE HASH("CLO_H3M_L_5_0") // Dark Gray Guarded Cargos CASE HASH("CLO_H3M_O_DH_26") // The Braced RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_DH_31") // The Traverser CASE HASH("CLO_H3M_O_DH_32") // The Navigator CASE HASH("CLO_H3M_O_DH_33") // The Router CASE HASH("CLO_H3M_O_DH_34") // The Trooper CASE HASH("CLO_H3M_O_DH_35") // The Surveyor CASE HASH("CLO_H3M_O_DH_36") // The Roamer RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_SH_11") // The Conspirator CASE HASH("CLO_H3M_S_1_0") // Gray & Brown Armor CASE HASH("CLO_H3M_PH_10_0") // Black Scope Nightvision CASE HASH("CLO_H3M_PH_11_0") // Black Scope Nightvision CASE HASH("CLO_H3M_O_SH_12") // The Accomplice CASE HASH("CLO_H3M_O_SH_13") // The Schemer CASE HASH("CLO_H3M_O_SH_14") // The Associate CASE HASH("CLO_H3M_O_SH_15") // The Intriguer CASE HASH("CLO_H3M_O_SH_16") // The Infiltrator RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_SH_21") // The Scout CASE HASH("CLO_H3M_B_14_14") // Dark Pink Leather Half Face CASE HASH("CLO_H3M_S_12_0") // Black Pocket Vest CASE HASH("CLO_H3M_O_SH_22") // The Mole CASE HASH("CLO_H3M_B_14_22") // Putty Leather Half Face CASE HASH("CLO_H3M_O_SH_23") // The Watcher CASE HASH("CLO_H3M_B_14_21") // Gray Leather Half Face CASE HASH("CLO_H3M_O_SH_24") // The Vanguard CASE HASH("CLO_H3M_B_14_10") // Red Lip Leather Half Face CASE HASH("CLO_H3M_O_SH_25") // The Planter CASE HASH("CLO_H3M_B_14_0") // Gray & Red Leather Half Face CASE HASH("CLO_H3M_O_SH_26") // The Disposer CASE HASH("CLO_H3M_B_14_2") // Gray & White Leather Half Face RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_SH_31") // The Shadow CASE HASH("CLO_H3M_S_13_0") // Black Reinforced Armor CASE HASH("CLO_H3M_O_SH_32") // The Blotted CASE HASH("CLO_H3M_O_SH_33") // The Eclipsed CASE HASH("CLO_H3M_O_SH_34") // The Obscure CASE HASH("CLO_H3M_O_SH_35") // The Concealed CASE HASH("CLO_H3M_O_SH_36") // The Shade RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_FIB_1") // The Negotiator CASE HASH("CLO_H3M_O_FIB_2") // The Mediator CASE HASH("CLO_H3M_O_FIB_3") // The Facilitator CASE HASH("CLO_H3M_O_FIB_4") // The Arbitrator RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3M_O_UND_1") // The Ominous CASE HASH("CLO_H3M_PH_9_0") // Black Undertaker Hat RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3M_O_PRP_1") // The Pickup CASE HASH("CLO_H3M_O_PRP_2") // The Remover RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3M_O_JAN_1") // The Mender CASE HASH("CLO_H3M_O_JAN_2") // The Sustainer CASE HASH("CLO_H3M_PH_5_1") // Gray Cap CASE HASH("CLO_H3M_PH_6_1") // Gray Cap CASE HASH("CLO_H3M_O_JAN_3") // The Obligor CASE HASH("CLO_H3M_O_JAN_4") // The Corrector CASE HASH("CLO_H3M_O_JAN_5") // The Renovator CASE HASH("CLO_H3M_O_JAN_6") // The Welder RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_CLB_1") // The Trending CASE HASH("CLO_H3M_U_16_0") // Yung Ancestor Hoodie CASE HASH("CLO_H3M_PH_2_2") // Yung Ancestor Cap CASE HASH("CLO_H3M_O_CLB_2") // The In CASE HASH("CLO_H3M_O_CLB_3") // The Personality CASE HASH("CLO_H3M_PH_3_2") // Yung Ancestor Cap CASE HASH("CLO_H3M_O_CLB_4") // The Face CASE HASH("CLO_H3M_U_15_0") // Yung Ancestor Tour Jacket RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_GRP_1") // The Rigid CASE HASH("CLO_H3M_U_2_1") // Green Uniform Closed CASE HASH("CLO_H3M_U_3_1") // Green Uniform Open CASE HASH("CLO_H3M_PH_7_0") // Gruppe Sechs Helmet CASE HASH("CLO_H3M_O_GRP_2") // The Imposer CASE HASH("CLO_H3M_O_GRP_3") // The Shatterproof CASE HASH("CLO_H3M_U_4_1") // Green Short Uniform Closed CASE HASH("CLO_H3M_U_5_1") // Green Short Uniform Open CASE HASH("CLO_H3M_O_GRP_4") // The Defender CASE HASH("CLO_H3M_O_GRP_5") // The Unbreakable CASE HASH("CLO_H3M_U_5_2") // Cream Short Uniform Open CASE HASH("CLO_H3M_O_GRP_6") // The Enactor CASE HASH("CLO_H3M_U_2_2") // Cream Uniform Closed CASE HASH("CLO_H3M_U_3_2") // Cream Uniform Open RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_BS_1") // The Debugger CASE HASH("CLO_H3M_B_6_1") // Rebreather - Yellow (~1~/~1~) CASE HASH("CLO_H3M_PH_2_0") // Bugstars Cap CASE HASH("CLO_H3M_O_BS_2") // The Sprayer CASE HASH("CLO_H3M_B_15_1") // Green Visor Respirator CASE HASH("CLO_H3M_O_BS_3") // The Compressor CASE HASH("CLO_H3M_PH_3_0") // Bugstars Cap CASE HASH("CLO_H3M_O_BS_4") // The Depositor CASE HASH("CLO_H3M_O_BS_5") // The Bagger CASE HASH("CLO_H3M_B_6_0") // Rebreather - Charcoal (~1~/~1~) CASE HASH("CLO_H3M_O_BS_6") // The Eradicator RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_FF_1") // The Intrepid CASE HASH("CLO_H3M_PH_0_0") // Yellow Firefighter CASE HASH("CLO_H3M_O_FF_2") // The Valiant CASE HASH("CLO_H3M_O_FF_7") // The Steady CASE HASH("CLO_H3M_PH_1_0") // Yellow Firefighter & Goggles CASE HASH("CLO_H3M_O_FF_8") // The Unwavering RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_SL_11") // The Sneaker CASE HASH("CLO_H3M_O_SL_12") // The Creeper CASE HASH("CLO_H3M_O_SL_13") // The Slinker CASE HASH("CLO_H3M_O_SL_14") // The Lifter CASE HASH("CLO_H3M_O_SL_15") // The Pilferer CASE HASH("CLO_H3M_O_SL_16") // The Skulker RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_SL_21") // The Shady CASE HASH("CLO_H3M_O_SL_22") // The Underhanded CASE HASH("CLO_H3M_O_SL_23") // The Suspect CASE HASH("CLO_H3M_O_SL_24") // The Dodgy CASE HASH("CLO_H3M_O_SL_25") // The Dubious CASE HASH("CLO_H3M_O_SL_26") // The Unsavoury RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_SL_31") // The Unmoved CASE HASH("CLO_H3M_B_9_0") // Black Neck Gaiter CASE HASH("CLO_H3M_O_SL_32") // The Untraceable CASE HASH("CLO_H3M_O_SL_33") // The No-Frills CASE HASH("CLO_H3M_O_SL_34") // The Routine CASE HASH("CLO_H3M_O_SL_35") // The Smooth CASE HASH("CLO_H3M_O_SL_36") // The Offhand RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3M_O_VAL_1") // Valet RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3M_O_PR_1") // The Steadfast CASE HASH("CLO_H3M_L_2_0") // Correctional Cargo CASE HASH("CLO_H3M_U_3_3") // Beige Uniform Open CASE HASH("CLO_H3M_PH_2_1") // Prison Authority Cap CASE HASH("CLO_H3M_PH_3_1") // Prison Authority Cap CASE HASH("CLO_H3M_O_PR_4") // The Exacting CASE HASH("CLO_H3M_U_5_4") // Sage Short Uniform Open CASE HASH("CLO_H3M_O_PR_2") // The No-Nonsense CASE HASH("CLO_H3M_U_4_3") // Beige Short Uniform Closed CASE HASH("CLO_H3M_U_5_3") // Beige Short Uniform Open CASE HASH("CLO_H3M_O_PR_3") // The Austere CASE HASH("CLO_H3M_U_2_4") // Sage Uniform Closed CASE HASH("CLO_H3M_U_3_4") // Sage Uniform Open RETURN ("CSHOP_LCKPRP") BREAK BREAK ENDSWITCH SWITCH iLabelHash CASE HASH("CLO_H3F_PH_5_0") // Black Cap CASE HASH("CLO_H3F_PH_6_0") // Black Cap RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_DL_11") // The Careful CASE HASH("CLO_H3F_U_4_5") // White Short Uniform Open CASE HASH("CLO_H3F_O_DL_12") // The Cautious CASE HASH("CLO_H3F_U_7_0") // White Dress Shirt Open CASE HASH("CLO_H3F_O_DL_13") // The Considered CASE HASH("CLO_H3F_U_4_7") // Gray Short Uniform Open CASE HASH("CLO_H3F_O_DL_14") // The Strict CASE HASH("CLO_H3F_U_8_0") // White Dress Shirt Closed CASE HASH("CLO_H3F_O_DL_15") // The Correct CASE HASH("CLO_H3F_O_DL_16") // The Particular CASE HASH("CLO_H3F_U_5_3") // Beige Short Uniform Closed RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_DL_21") // The Swanky CASE HASH("CLO_H3F_O_DL_22") // The Smart CASE HASH("CLO_H3F_O_DL_23") // The Neat CASE HASH("CLO_H3F_O_DL_24") // The Dapper CASE HASH("CLO_H3F_O_DL_25") // The Dashing CASE HASH("CLO_H3F_O_DL_26") // The Trendy RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_DL_31") // The Proper CASE HASH("CLO_H3F_U_14_0") // Black Smooth Fitted CASE HASH("CLO_H3F_O_DL_32") // The Stiff CASE HASH("CLO_H3F_O_DL_33") // The Prim CASE HASH("CLO_H3F_U_14_5") // White Smooth Fitted CASE HASH("CLO_H3F_O_DL_34") // The Starched CASE HASH("CLO_H3F_U_14_6") // Brown Smooth Fitted CASE HASH("CLO_H3F_O_DL_35") // The Orderly CASE HASH("CLO_H3F_U_14_2") // Navy Smooth Fitted CASE HASH("CLO_H3F_O_DL_36") // The Demure CASE HASH("CLO_H3F_U_14_4") // Red Smooth Fitted RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_DH_11") // The Forest CASE HASH("CLO_H3F_L_4_11") // Splinter Knee Pad Cargos CASE HASH("CLO_H3F_U_11_11") // Green Camo Armored Shirt CASE HASH("CLO_H3F_O_DH_12") // The Desert CASE HASH("CLO_H3F_L_4_12") // Contrast Camo Knee Pad Cargos CASE HASH("CLO_H3F_U_11_12") // Contrast Camo Armored Shirt CASE HASH("CLO_H3F_O_DH_13") // The Icefield CASE HASH("CLO_H3F_L_4_17") // Blue Digital Knee Pad Cargos CASE HASH("CLO_H3F_U_11_17") // Blue Digital Armored Shirt CASE HASH("CLO_H3F_O_DH_14") // The Grassland CASE HASH("CLO_H3F_L_4_13") // Green Digital Knee Pad Cargos CASE HASH("CLO_H3F_U_11_13") // Green Digital Armored Shirt CASE HASH("CLO_H3F_O_DH_15") // The Glacier CASE HASH("CLO_H3F_L_4_10") // Blue Camo Knee Pad Cargos CASE HASH("CLO_H3F_U_11_10") // Blue Camo Armored Shirt CASE HASH("CLO_H3F_O_DH_16") // The Swamp CASE HASH("CLO_H3F_L_4_18") // Cobble Knee Pad Cargos CASE HASH("CLO_H3F_U_11_18") // Cobble Armored Shirt RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_DH_21") // The Shielded CASE HASH("CLO_H3F_L_5_5") // Forest Green Guarded Cargos CASE HASH("CLO_H3F_O_DH_22") // The Safeguard CASE HASH("CLO_H3F_L_5_3") // Beige Guarded Cargos CASE HASH("CLO_H3F_O_DH_23") // The Fortified CASE HASH("CLO_H3F_L_5_1") // Black Guarded Cargos CASE HASH("CLO_H3F_O_DH_24") // The Defended CASE HASH("CLO_H3F_O_DH_25") // The Secured CASE HASH("CLO_H3F_L_5_0") // Dark Gray Guarded Cargos CASE HASH("CLO_H3F_O_DH_26") // The Braced RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_DH_31") // The Traverser CASE HASH("CLO_H3F_O_DH_32") // The Navigator CASE HASH("CLO_H3F_O_DH_33") // The Router CASE HASH("CLO_H3F_O_DH_34") // The Trooper CASE HASH("CLO_H3F_O_DH_35") // The Surveyor CASE HASH("CLO_H3F_O_DH_36") // The Roamer RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_SH_11") // The Conspirator CASE HASH("CLO_H3F_PH_10_0") // Black Scope Nightvision CASE HASH("CLO_H3F_PH_11_0") // Black Scope Nightvision CASE HASH("CLO_H3F_O_SH_12") // The Accomplice CASE HASH("CLO_H3F_O_SH_13") // The Schemer CASE HASH("CLO_H3F_O_SH_14") // The Associate CASE HASH("CLO_H3F_S_1_0") // Gray & Brown Armor CASE HASH("CLO_H3F_O_SH_15") // The Intriguer CASE HASH("CLO_H3F_O_SH_16") // The Infiltrator RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_SH_21") // The Scout CASE HASH("CLO_H3F_B_14_24") // Stone Leather Half Face CASE HASH("CLO_H3F_S_12_0") // Black Pocket Vest CASE HASH("CLO_H3F_O_SH_22") // The Mole CASE HASH("CLO_H3F_B_14_22") // Putty Leather Half Face CASE HASH("CLO_H3F_O_SH_23") // The Watcher CASE HASH("CLO_H3F_B_14_21") // Gray Leather Half Face CASE HASH("CLO_H3F_O_SH_24") // The Vanguard CASE HASH("CLO_H3F_B_14_10") // Red Lip Leather Half Face CASE HASH("CLO_H3F_O_SH_25") // The Planter CASE HASH("CLO_H3F_O_SH_26") // The Disposer CASE HASH("CLO_H3F_B_14_2") // Gray & White Leather Half Face RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_SH_31") // The Shadow CASE HASH("CLO_H3F_S_13_0") // Black Reinforced Armor CASE HASH("CLO_H3F_O_SH_32") // The Blotted CASE HASH("CLO_H3F_O_SH_33") // The Eclipsed CASE HASH("CLO_H3F_O_SH_34") // The Obscure CASE HASH("CLO_H3F_O_SH_35") // The Concealed CASE HASH("CLO_H3F_O_SH_36") // The Shade RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_FIB_1") // The Negotiator CASE HASH("CLO_H3F_O_FIB_2") // The Mediator CASE HASH("CLO_H3F_O_FIB_3") // The Facilitator CASE HASH("CLO_H3F_O_FIB_4") // The Arbitrator RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3F_O_UND_1") // The Ominous CASE HASH("CLO_H3F_PH_9_0") // Black Undertaker Hat RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3F_O_PRP_1") // The Pickup CASE HASH("CLO_H3F_O_PRP_2") // The Remover RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3F_O_JAN_1") // The Mender CASE HASH("CLO_H3F_O_JAN_2") // The Sustainer CASE HASH("CLO_H3F_PH_5_1") // Gray Cap CASE HASH("CLO_H3F_PH_6_1") // Gray Cap CASE HASH("CLO_H3F_O_JAN_3") // The Obligor CASE HASH("CLO_H3F_O_JAN_4") // The Corrector CASE HASH("CLO_H3F_O_JAN_5") // The Renovator CASE HASH("CLO_H3F_O_JAN_6") // The Welder RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_CLB_1") // The Trending CASE HASH("CLO_H3F_U_20_0") // Yung Ancestor Hoodie CASE HASH("CLO_H3F_PH_2_2") // Yung Ancestor Cap CASE HASH("CLO_H3F_O_CLB_2") // The In CASE HASH("CLO_H3F_O_CLB_3") // The Personality CASE HASH("CLO_H3F_PH_3_2") // Yung Ancestor Cap CASE HASH("CLO_H3F_O_CLB_4") // The Face CASE HASH("CLO_H3F_U_19_0") // Yung Ancestor Tour Jacket RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_GRP_4") // The Defender CASE HASH("CLO_H3F_U_5_1") // Green Short Uniform Closed CASE HASH("CLO_H3F_O_GRP_2") // The Imposer CASE HASH("CLO_H3F_U_3_1") // Green Uniform Closed CASE HASH("CLO_H3F_O_GRP_1") // The Rigid CASE HASH("CLO_H3F_U_2_1") // Green Uniform Closed CASE HASH("CLO_H3F_PH_7_0") // Gruppe Sechs Helmet CASE HASH("CLO_H3F_O_GRP_3") // The Shatterproof CASE HASH("CLO_H3F_U_4_1") // Green Short Uniform Open CASE HASH("CLO_H3F_O_GRP_5") // The Unbreakable CASE HASH("CLO_H3F_U_5_2") // Cream Short Uniform Closed CASE HASH("CLO_H3F_O_GRP_6") // The Enactor CASE HASH("CLO_H3F_U_2_2") // Cream Uniform Closed RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_BS_1") // The Debugger CASE HASH("CLO_H3F_B_6_1") // Rebreather - Yellow (~1~/~1~) CASE HASH("CLO_H3F_PH_2_0") // Bugstars Cap CASE HASH("CLO_H3F_O_BS_2") // The Sprayer CASE HASH("CLO_H3F_B_15_0") // Yellow Visor Respirator CASE HASH("CLO_H3F_O_BS_3") // The Compressor CASE HASH("CLO_H3F_PH_3_0") // Bugstars Cap CASE HASH("CLO_H3F_O_BS_4") // The Depositor CASE HASH("CLO_H3F_O_BS_5") // The Bagger CASE HASH("CLO_H3F_B_6_0") // Rebreather - Charcoal (~1~/~1~) CASE HASH("CLO_H3F_O_BS_6") // The Eradicator RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_FF_1") // The Intrepid CASE HASH("CLO_H3F_PH_0_0") // Yellow Firefighter CASE HASH("CLO_H3F_O_FF_2") // The Valiant CASE HASH("CLO_H3F_O_FF_7") // The Steady CASE HASH("CLO_H3F_PH_1_0") // Yellow Firefighter & Goggles CASE HASH("CLO_H3F_O_FF_8") // The Unwavering RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_SL_11") // The Sneaker CASE HASH("CLO_H3F_O_SL_12") // The Creeper CASE HASH("CLO_H3F_O_SL_13") // The Slinker CASE HASH("CLO_H3F_O_SL_14") // The Lifter CASE HASH("CLO_H3F_O_SL_15") // The Pilferer CASE HASH("CLO_H3F_O_SL_16") // The Skulker RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_SL_21") // The Shady CASE HASH("CLO_H3F_O_SL_22") // The Underhanded CASE HASH("CLO_H3F_O_SL_23") // The Suspect CASE HASH("CLO_H3F_O_SL_24") // The Dodgy CASE HASH("CLO_H3F_O_SL_25") // The Dubious CASE HASH("CLO_H3F_O_SL_26") // The Unsavoury RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_SL_31") // The Unmoved CASE HASH("CLO_H3F_B_9_0") // Black Neck Gaiter CASE HASH("CLO_H3F_O_SL_32") // The Untraceable CASE HASH("CLO_H3F_O_SL_33") // The No-Frills CASE HASH("CLO_H3F_O_SL_34") // The Routine CASE HASH("CLO_H3F_O_SL_35") // The Smooth CASE HASH("CLO_H3F_O_SL_36") // The Offhand RETURN ("CSHOP_LCKFIN") BREAK BREAK CASE HASH("CLO_H3F_O_VAL_1") // Valet RETURN ("CSHOP_LCKPRP") BREAK BREAK CASE HASH("CLO_H3F_O_PR_1") // The Steadfast CASE HASH("CLO_H3F_L_2_0") // Correctional Cargo CASE HASH("CLO_H3F_U_3_3") // Beige Uniform Closed CASE HASH("CLO_H3F_PH_2_1") // Prison Authority Cap CASE HASH("CLO_H3F_PH_3_1") // Prison Authority Cap CASE HASH("CLO_H3F_O_PR_4") // The Exacting CASE HASH("CLO_H3F_U_5_4") // Sage Short Uniform Closed CASE HASH("CLO_H3F_O_PR_2") // The No-Nonsense CASE HASH("CLO_H3F_U_4_3") // Beige Short Uniform Open CASE HASH("CLO_H3F_O_PR_3") // The Austere CASE HASH("CLO_H3F_U_2_4") // Sage Uniform Closed RETURN ("CSHOP_LCKPRP") BREAK BREAK ENDSWITCH RETURN "" ENDFUNC /// PURPOSE: Returns the PED_COMP_TYPE_ENUM equivalent of PED_COMPONENT FUNC PED_COMP_TYPE_ENUM GET_COMP_TYPE_FROM_PED_COMPONENT(PED_COMPONENT eType) SWITCH eType CASE PED_COMP_HEAD RETURN COMP_TYPE_HEAD BREAK CASE PED_COMP_HAIR RETURN COMP_TYPE_HAIR BREAK CASE PED_COMP_TORSO RETURN COMP_TYPE_TORSO BREAK CASE PED_COMP_LEG RETURN COMP_TYPE_LEGS BREAK CASE PED_COMP_FEET RETURN COMP_TYPE_FEET BREAK CASE PED_COMP_HAND RETURN COMP_TYPE_HAND BREAK CASE PED_COMP_SPECIAL RETURN COMP_TYPE_SPECIAL BREAK CASE PED_COMP_SPECIAL2 RETURN COMP_TYPE_SPECIAL2 BREAK CASE PED_COMP_DECL RETURN COMP_TYPE_DECL BREAK CASE PED_COMP_BERD RETURN COMP_TYPE_BERD BREAK CASE PED_COMP_TEETH RETURN COMP_TYPE_TEETH BREAK CASE PED_COMP_JBIB RETURN COMP_TYPE_JBIB BREAK ENDSWITCH #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "\GET_COMP_TYPE_FROM_PED_COMPONENT - Invalid component type specified. Tell Kenneth R. ", eType) CASSERTLN(DEBUG_PED_COMP, "GET_COMP_TYPE_FROM_PED_COMPONENT - Invalid component type \"", GET_COMP_VARIATION_TYPE_STRING(eType), "\" specified.") #ENDIF RETURN COMP_TYPE_HEAD// Default ENDFUNC /// PURPOSE: Returns the PED_COMPONENT equivalent of PED_COMP_TYPE_ENUM FUNC PED_COMPONENT GET_PED_COMPONENT_FROM_TYPE(PED_COMP_TYPE_ENUM eType) SWITCH eType CASE COMP_TYPE_HEAD RETURN PED_COMP_HEAD BREAK CASE COMP_TYPE_HAIR RETURN PED_COMP_HAIR BREAK CASE COMP_TYPE_TORSO RETURN PED_COMP_TORSO BREAK CASE COMP_TYPE_LEGS RETURN PED_COMP_LEG BREAK CASE COMP_TYPE_FEET RETURN PED_COMP_FEET BREAK CASE COMP_TYPE_HAND RETURN PED_COMP_HAND BREAK CASE COMP_TYPE_SPECIAL RETURN PED_COMP_SPECIAL BREAK CASE COMP_TYPE_SPECIAL2 RETURN PED_COMP_SPECIAL2 BREAK CASE COMP_TYPE_DECL RETURN PED_COMP_DECL BREAK CASE COMP_TYPE_BERD RETURN PED_COMP_BERD BREAK CASE COMP_TYPE_TEETH RETURN PED_COMP_TEETH BREAK CASE COMP_TYPE_JBIB RETURN PED_COMP_JBIB BREAK ENDSWITCH #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "\nGET_PED_COMPONENT_FROM_TYPE - Invalid component type specified. Tell Kenneth R. ", eType) CASSERTLN(DEBUG_PED_COMP, "GET_PED_COMPONENT_FROM_TYPE - Invalid component type \"", GET_PED_COMP_TYPE_STRING(eType), "\" specified.") #ENDIF RETURN PED_COMP_HEAD// Default ENDFUNC FUNC INT GET_SHOP_PED_APPAREL_TYPE_FROM_COMP_TYPE(PED_COMP_TYPE_ENUM eType) SWITCH eType CASE COMP_TYPE_PROPS RETURN ENUM_TO_INT(SHOP_PED_PROP) BREAK CASE COMP_TYPE_OUTFIT RETURN ENUM_TO_INT(SHOP_PED_OUTFIT) BREAK ENDSWITCH RETURN ENUM_TO_INT(SHOP_PED_COMPONENT) ENDFUNC /// PURPOSE: /// Returns the "none" or dummy prop for this prop anchor /// PARAMS: /// eAnchor - the prop anchor position FUNC PED_COMP_NAME_ENUM GET_DUMMY_PROP_FOR_ANCHOR(PED_PROP_POSITION eAnchor) SWITCH eAnchor CASE ANCHOR_HEAD RETURN PROPS_HEAD_NONE BREAK CASE ANCHOR_EYES RETURN PROPS_EYES_NONE BREAK CASE ANCHOR_EARS RETURN PROPS_EARS_NONE BREAK CASE ANCHOR_MOUTH RETURN PROPS_MOUTH_NONE BREAK CASE ANCHOR_LEFT_HAND RETURN PROPS_LHAND_NONE BREAK CASE ANCHOR_RIGHT_HAND RETURN PROPS_RHAND_NONE BREAK CASE ANCHOR_LEFT_WRIST RETURN PROPS_LWRIST_NONE BREAK CASE ANCHOR_RIGHT_WRIST RETURN PROPS_RWRIST_NONE BREAK CASE ANCHOR_HIP RETURN PROPS_HIP_NONE BREAK ENDSWITCH RETURN PROPS_HEAD_NONE ENDFUNC FUNC PED_PROP_POSITION GET_ANCHOR_FOR_PED_PROP_TYPE(PED_PROP_TYPE_ENUM ePropType) SWITCH ePropType CASE PROP_TYPE_DUMMY RETURN ANCHOR_HEAD BREAK // Defaults CASE PROP_TYPE_HEAD RETURN ANCHOR_HEAD BREAK CASE PROP_TYPE_EYES RETURN ANCHOR_EYES BREAK CASE PROP_TYPE_EARS RETURN ANCHOR_EARS BREAK CASE PROP_TYPE_MOUTH RETURN ANCHOR_MOUTH BREAK CASE PROP_TYPE_L_HAND RETURN ANCHOR_LEFT_HAND BREAK CASE PROP_TYPE_R_HAND RETURN ANCHOR_RIGHT_HAND BREAK CASE PROP_TYPE_L_WRIST RETURN ANCHOR_LEFT_WRIST BREAK CASE PROP_TYPE_R_WRIST RETURN ANCHOR_RIGHT_WRIST BREAK CASE PROP_TYPE_HIP RETURN ANCHOR_HIP BREAK // Custom CASE PROP_TYPE_HAT RETURN ANCHOR_HEAD BREAK CASE PROP_TYPE_GLASSES RETURN ANCHOR_EYES BREAK CASE PROP_TYPE_MASK RETURN ANCHOR_HEAD BREAK CASE PROP_TYPE_HEADPHONES RETURN ANCHOR_HEAD BREAK CASE PROP_TYPE_BANDANA RETURN ANCHOR_HEAD BREAK ENDSWITCH #IF IS_DEBUG_BUILD CASSERTLN(DEBUG_PED_COMP, "GET_ANCHOR_FOR_PED_PROP_TYPE() - Prop type ", ePropType, " missing in switch case.") #ENDIF RETURN ANCHOR_HEAD ENDFUNC /// PURPOSE: /// Allows acces to the saved globals for clothes bitsets /// Needed as each comp type now only has the number of bitsets required to fit all its items /// So torso has 10 bitsets, Decals only has 1 etc to optimise saved globals /// Returns whether the bit is set. /// Can also be used to set or clear the bit via optional params. /// /// eType = the ped comp type of this item /// iPed = the player ped this item belongs to (0 = michael etc) /// iBitsetNumber = the number of the bitset we want to access /// iSlot = the slot we are checking / editing (PED_COMPONENT_AVAILABLE_SLOT, PED_COMPONENT_ACQUIRED_SLOT, or PED_COMPONENT_USED_SLOT) /// iItemBit - the bit in this bitset that we want to checkk , set or clear /// bSetBit - if true the saved bit will be set /// bClearBit - if true the saved bit will be cleared FUNC BOOL GET_BITSET_FROM_COMP_TYPE(PED_COMP_TYPE_ENUM eType, INT iPed, INT iBitsetNumber, INT iSlot, INT iItemBit, BOOL bSetBit = FALSE, BOOL bClearBit = FALSE) IF eType = COMP_TYPE_HEAD IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iHeadBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iHeadBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iHeadBitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_BERD IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iBeardBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iBeardBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iBeardBitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_HAIR IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iHairBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iHairBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iHairBitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_TORSO IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset1[iSlot], iItemBit) ELIF iBitsetNumber = 2 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset2[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset2[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset2[iSlot], iItemBit) ELIF iBitsetNumber = 3 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset3[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset3[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset3[iSlot], iItemBit) ELIF iBitsetNumber = 4 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset4[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset4[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset4[iSlot], iItemBit) ELIF iBitsetNumber = 5 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset5[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset5[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset5[iSlot], iItemBit) ELIF iBitsetNumber = 6 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset6[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset6[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset6[iSlot], iItemBit) ELIF iBitsetNumber = 7 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset7[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset7[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset7[iSlot], iItemBit) ELIF iBitsetNumber = 8 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset8[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset8[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset8[iSlot], iItemBit) ELIF iBitsetNumber = 9 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset9[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset9[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTorsoBitset9[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_LEGS IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset1[iSlot], iItemBit) ELIF iBitsetNumber = 2 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset2[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset2[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset2[iSlot], iItemBit) ELIF iBitsetNumber = 3 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset3[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset3[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iLegsBitset3[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_HAND IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iHandBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iHandBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iHandBitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_FEET IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset1[iSlot], iItemBit) ELIF iBitsetNumber = 2 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset2[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset2[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset2[iSlot], iItemBit) ELIF iBitsetNumber = 3 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset3[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset3[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset3[iSlot], iItemBit) ELIF iBitsetNumber = 4 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset4[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset4[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iFeetBitset4[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_TEETH IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTeethBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iTeethBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iTeethBitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_SPECIAL IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset1[iSlot], iItemBit) ELIF iBitsetNumber = 2 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset2[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset2[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecialBitset2[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecial2Bitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecial2Bitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iSpecial2Bitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_DECL IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iDeclBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iDeclBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iDeclBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iDeclBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iDeclBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iDeclBitset1[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_JBIB IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iJbibBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iJbibBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iJbibBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iJbibBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iJbibBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iJbibBitset1[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_OUTFIT IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iOutfitBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iOutfitBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iOutfitBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iOutfitBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iOutfitBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iOutfitBitset1[iSlot], iItemBit) ENDIF ELIF eType = COMP_TYPE_PROPGROUP IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropGroupBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropGroupBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropGroupBitset0[iSlot], iItemBit) ELIF eType = COMP_TYPE_PROPS IF iBitsetNumber = 0 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset0[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset0[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset0[iSlot], iItemBit) ELIF iBitsetNumber = 1 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset1[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset1[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset1[iSlot], iItemBit) ELIF iBitsetNumber = 2 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset2[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset2[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset2[iSlot], iItemBit) ELIF iBitsetNumber = 3 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset3[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset3[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset3[iSlot], iItemBit) ELIF iBitsetNumber = 4 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset4[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset4[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset4[iSlot], iItemBit) ELIF iBitsetNumber = 5 IF bSetBit = TRUE SET_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset5[iSlot], iItemBit) ENDIF IF bClearBit = TRUE CLEAR_BIT(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset5[iSlot], iItemBit) ENDIF RETURN IS_BIT_SET(g_savedGlobals.sPlayerData.sComponents[iPed].iPropsBitset5[iSlot], iItemBit) ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "eType= ", GET_PED_COMP_TYPE_STRING(eType), " iPed= ", iPed, " iBitsetNumber= ", iBitsetNumber, " iSlot= ", iSlot, " iItemBit= ", iItemBit, " bSetBit= ", bSetBit, " bClearBit= ", bClearBit) CASSERTLN(DEBUG_PED_COMP, "GET_BITSET_FROM_COMP_TYPE: Failed to find bitset. Bug for Andy Minghella") RETURN FALSE ENDFUNC FUNC PED_COMP_NAME_ENUM GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(MODEL_NAMES eModel, PED_COMPONENT ePedComp) SWITCH eModel CASE PLAYER_ZERO SWITCH ePedComp CASE PED_COMP_HEAD RETURN HEAD_P0_DLC BREAK CASE PED_COMP_BERD RETURN BERD_P0_DLC BREAK CASE PED_COMP_HAIR RETURN HAIR_P0_DLC BREAK CASE PED_COMP_TORSO RETURN TORSO_P0_DLC BREAK CASE PED_COMP_LEG RETURN LEGS_P0_DLC BREAK CASE PED_COMP_HAND RETURN HAND_P0_DLC BREAK CASE PED_COMP_FEET RETURN FEET_P0_DLC BREAK CASE PED_COMP_TEETH RETURN TEETH_P0_DLC BREAK CASE PED_COMP_SPECIAL RETURN SPECIAL_P0_DLC BREAK CASE PED_COMP_SPECIAL2 RETURN SPECIAL2_P0_DLC BREAK CASE PED_COMP_DECL RETURN DECL_P0_DLC BREAK CASE PED_COMP_JBIB RETURN JBIB_P0_DLC BREAK ENDSWITCH BREAK CASE PLAYER_ONE SWITCH ePedComp CASE PED_COMP_HEAD RETURN HEAD_P1_DLC BREAK CASE PED_COMP_BERD RETURN BERD_P1_DLC BREAK CASE PED_COMP_HAIR RETURN HAIR_P1_DLC BREAK CASE PED_COMP_TORSO RETURN TORSO_P1_DLC BREAK CASE PED_COMP_LEG RETURN LEGS_P1_DLC BREAK CASE PED_COMP_HAND RETURN HAND_P1_DLC BREAK CASE PED_COMP_FEET RETURN FEET_P1_DLC BREAK CASE PED_COMP_TEETH RETURN TEETH_P1_DLC BREAK CASE PED_COMP_SPECIAL RETURN SPECIAL_P1_DLC BREAK CASE PED_COMP_SPECIAL2 RETURN SPECIAL2_P1_DLC BREAK CASE PED_COMP_DECL RETURN DECL_P1_DLC BREAK CASE PED_COMP_JBIB RETURN JBIB_P1_DLC BREAK ENDSWITCH BREAK CASE PLAYER_TWO SWITCH ePedComp CASE PED_COMP_HEAD RETURN HEAD_P2_DLC BREAK CASE PED_COMP_BERD RETURN BERD_P2_DLC BREAK CASE PED_COMP_HAIR RETURN HAIR_P2_DLC BREAK CASE PED_COMP_TORSO RETURN TORSO_P2_DLC BREAK CASE PED_COMP_LEG RETURN LEGS_P2_DLC BREAK CASE PED_COMP_HAND RETURN HAND_P2_DLC BREAK CASE PED_COMP_FEET RETURN FEET_P2_DLC BREAK CASE PED_COMP_TEETH RETURN TEETH_P2_DLC BREAK CASE PED_COMP_SPECIAL RETURN SPECIAL_P2_DLC BREAK CASE PED_COMP_SPECIAL2 RETURN SPECIAL2_P2_DLC BREAK CASE PED_COMP_DECL RETURN DECL_P2_DLC BREAK CASE PED_COMP_JBIB RETURN JBIB_P2_DLC BREAK ENDSWITCH BREAK ENDSWITCH #IF USE_TU_CHANGES SWITCH eModel CASE MP_M_FREEMODE_01 SWITCH ePedComp CASE PED_COMP_HEAD RETURN HEAD_FMM_DLC BREAK CASE PED_COMP_BERD RETURN BERD_FMM_DLC BREAK CASE PED_COMP_HAIR RETURN HAIR_FMM_DLC BREAK CASE PED_COMP_TORSO RETURN TORSO_FMM_DLC BREAK CASE PED_COMP_LEG RETURN LEGS_FMM_DLC BREAK CASE PED_COMP_HAND RETURN HAND_FMM_DLC BREAK CASE PED_COMP_FEET RETURN FEET_FMM_DLC BREAK CASE PED_COMP_TEETH RETURN TEETH_FMM_DLC BREAK CASE PED_COMP_SPECIAL RETURN SPECIAL_FMM_DLC BREAK CASE PED_COMP_SPECIAL2 RETURN SPECIAL2_FMM_DLC BREAK CASE PED_COMP_DECL RETURN DECL_FMM_DLC BREAK CASE PED_COMP_JBIB RETURN JBIB_FMM_DLC BREAK ENDSWITCH BREAK CASE MP_F_FREEMODE_01 SWITCH ePedComp CASE PED_COMP_HEAD RETURN HEAD_FMF_DLC BREAK CASE PED_COMP_BERD RETURN BERD_FMF_DLC BREAK CASE PED_COMP_HAIR RETURN HAIR_FMF_DLC BREAK CASE PED_COMP_TORSO RETURN TORSO_FMF_DLC BREAK CASE PED_COMP_LEG RETURN LEGS_FMF_DLC BREAK CASE PED_COMP_HAND RETURN HAND_FMF_DLC BREAK CASE PED_COMP_FEET RETURN FEET_FMF_DLC BREAK CASE PED_COMP_TEETH RETURN TEETH_FMF_DLC BREAK CASE PED_COMP_SPECIAL RETURN SPECIAL_FMF_DLC BREAK CASE PED_COMP_SPECIAL2 RETURN SPECIAL2_FMF_DLC BREAK CASE PED_COMP_DECL RETURN DECL_FMF_DLC BREAK CASE PED_COMP_JBIB RETURN JBIB_FMF_DLC BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF RETURN DUMMY_PED_COMP ENDFUNC FUNC PED_COMP_NAME_ENUM GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(MODEL_NAMES eModel) SWITCH eModel CASE PLAYER_ZERO RETURN PROPS_P0_DLC BREAK CASE PLAYER_ONE RETURN PROPS_P1_DLC BREAK CASE PLAYER_TWO RETURN PROPS_P2_DLC BREAK ENDSWITCH #IF USE_TU_CHANGES SWITCH eModel CASE MP_M_FREEMODE_01 RETURN PROPS_FMM_DLC BREAK CASE MP_F_FREEMODE_01 RETURN PROPS_FMF_DLC BREAK ENDSWITCH #ENDIF RETURN DUMMY_PED_COMP ENDFUNC FUNC PED_COMP_NAME_ENUM GET_DEFAULT_DLC_PED_COMPONENT_FOR_OUTFIT(MODEL_NAMES eModel) SWITCH eModel CASE PLAYER_ZERO RETURN OUTFIT_P0_DLC BREAK CASE PLAYER_ONE RETURN OUTFIT_P1_DLC BREAK CASE PLAYER_TWO RETURN OUTFIT_P2_DLC BREAK ENDSWITCH #IF USE_TU_CHANGES SWITCH eModel CASE MP_M_FREEMODE_01 RETURN OUTFIT_FMM_DLC BREAK CASE MP_F_FREEMODE_01 RETURN OUTFIT_FMF_DLC BREAK ENDSWITCH #ENDIF RETURN DUMMY_PED_COMP ENDFUNC FUNC INT GET_DEFAULT_DLC_DRAW_FOR_PROP(MODEL_NAMES eModel, PED_PROP_POSITION ePropPos) SWITCH eModel CASE MP_M_Freemode_01 SWITCH ePropPos CASE ANCHOR_HEAD RETURN 20 BREAK CASE ANCHOR_EYES RETURN 16 BREAK CASE ANCHOR_EARS RETURN 0 BREAK CASE ANCHOR_MOUTH RETURN 0 BREAK CASE ANCHOR_LEFT_HAND RETURN 0 BREAK CASE ANCHOR_RIGHT_HAND RETURN 0 BREAK CASE ANCHOR_LEFT_WRIST RETURN 3 BREAK CASE ANCHOR_RIGHT_WRIST RETURN 0 BREAK CASE ANCHOR_HIP RETURN 0 BREAK ENDSWITCH BREAK CASE MP_F_Freemode_01 SWITCH ePropPos CASE ANCHOR_HEAD RETURN 20 BREAK CASE ANCHOR_EYES RETURN 16 BREAK CASE ANCHOR_EARS RETURN 0 BREAK CASE ANCHOR_MOUTH RETURN 0 BREAK CASE ANCHOR_LEFT_HAND RETURN 0 BREAK CASE ANCHOR_RIGHT_HAND RETURN 0 BREAK CASE ANCHOR_LEFT_WRIST RETURN 2 BREAK CASE ANCHOR_RIGHT_WRIST RETURN 0 BREAK CASE ANCHOR_HIP RETURN 0 BREAK ENDSWITCH BREAK ENDSWITCH RETURN 0 ENDFUNC /// PURPOSE: /// Returns the enum of the 1st prop this ped has in the specified prop pos /// Used in lookup as offset FUNC PED_COMP_NAME_ENUM GET_FIRST_PROP_OF_TYPE(PED_INDEX mPed, PED_PROP_POSITION ePropPos) MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) SWITCH ePedModel CASE PLAYER_ZERO SWITCH ePropPos CASE ANCHOR_HEAD RETURN PROPS_P0_FIREMAN_HAT BREAK CASE ANCHOR_EYES RETURN PROPS_P0_GLASSES BREAK CASE ANCHOR_EARS RETURN PROPS_P0_HEADSET BREAK ENDSWITCH BREAK CASE PLAYER_ONE SWITCH ePropPos CASE ANCHOR_HEAD RETURN PROPS_P1_HOCKEY_MASK BREAK CASE ANCHOR_EYES RETURN PROPS_P1_SCUBA_MASK BREAK CASE ANCHOR_EARS RETURN PROPS_P1_HEADSET BREAK ENDSWITCH BREAK CASE PLAYER_TWO SWITCH ePropPos CASE ANCHOR_HEAD RETURN PROPS_P2_FIREMAN_HAT BREAK CASE ANCHOR_EYES RETURN PROPS_P2_SCUBA_MASK BREAK CASE ANCHOR_EARS RETURN PROPS_P2_HEADSET BREAK ENDSWITCH BREAK CASE MP_M_Freemode_01 SWITCH ePropPos CASE ANCHOR_HEAD RETURN PROPS_FMM_EARDEFENDERS_0_0 BREAK CASE ANCHOR_EYES RETURN PROPS_FMM_GLASSES_0_0 BREAK CASE ANCHOR_LEFT_WRIST RETURN PROPS_FMM_WATCH_0_0 BREAK ENDSWITCH BREAK CASE MP_F_Freemode_01 SWITCH ePropPos CASE ANCHOR_HEAD RETURN PROPS_FMF_EARDEFENDERS_0_0 BREAK CASE ANCHOR_EYES RETURN PROPS_FMF_GLASSES_0_0 BREAK CASE ANCHOR_LEFT_WRIST RETURN PROPS_FMF_WATCH_0_0 BREAK ENDSWITCH BREAK ENDSWITCH RETURN DUMMY_PED_COMP ENDFUNC FUNC PED_COMP_NAME_ENUM GET_PED_COMP_ITEM_FROM_NAME_HASH(MODEL_NAMES eModel, INT iNameHash, PED_COMP_TYPE_ENUM eType, INT iPed) IF eType = COMP_TYPE_OUTFIT scrShopPedOutfit sItemData INT iDLCItem INT iDLCItemCount = SETUP_SHOP_PED_OUTFIT_QUERY(iPed, ENUM_TO_INT(CLO_SHOP_LOW)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_OUTFIT(iDLCItem, sItemData) IF sItemData.m_nameHash = iNameHash RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_OUTFIT(eModel))+iDLCItem)) ENDIF ENDREPEAT ELIF eType = COMP_TYPE_PROPGROUP // Not supported ELIF eType = COMP_TYPE_PROPS SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_PROP), -1, -1) // shop=CLO_SHOP_NONE INT iDLCItem = GET_SHOP_PED_QUERY_PROP_INDEX(iNameHash) IF iDLCItem != -1 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(eModel))+iDLCItem)) ENDIF ELSE SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, ENUM_TO_INT(GET_PED_COMPONENT_FROM_TYPE(eType))) // shop=CLO_SHOP_NONE INT iDLCItem = GET_SHOP_PED_QUERY_COMPONENT_INDEX(iNameHash) IF iDLCItem != -1 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(eModel, GET_PED_COMPONENT_FROM_TYPE(eType)))+iDLCItem)) ENDIF ENDIF RETURN DUMMY_PED_COMP ENDFUNC FUNC INT GET_NAME_HASH_FROM_PED_COMP_ITEM(MODEL_NAMES eModel, PED_COMP_NAME_ENUM ePedComp, PED_COMP_TYPE_ENUM eType, INT iPed) IF eType = COMP_TYPE_OUTFIT // Not supported ELIF eType = COMP_TYPE_PROPGROUP // Not supported ELIF eType = COMP_TYPE_PROPS scrShopPedProp propItem INIT_SHOP_PED_PROP(propItem) INT iDLCItemToFind = (ENUM_TO_INT(ePedComp) - ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(eModel))) IF iDLCItemToFind < 0 RETURN -1 ENDIF INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_PROP), -1, -1) // shop=CLO_SHOP_NONE IF iDLCItemCount <= iDLCItemToFind RETURN -1 ENDIF GET_SHOP_PED_QUERY_PROP(iDLCItemToFind, propItem) RETURN propItem.m_nameHash ELSE scrShopPedComponent componentItem INIT_SHOP_PED_COMPONENT(componentItem) INT iDLCItemToFind = (ENUM_TO_INT(ePedComp) - ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(eModel, GET_PED_COMPONENT_FROM_TYPE(eType)))) IF iDLCItemToFind < 0 RETURN -1 ENDIF // Check to see if this was called with the same params IF eModel = g_sPedCompHashOptimisationData.eCachedPedModel[eType] AND ePedComp = g_sPedCompHashOptimisationData.eCachedPedComp[eType] AND g_sPedCompHashOptimisationData.iCachedCompHash[eType] != 0 RETURN g_sPedCompHashOptimisationData.iCachedCompHash[eType] ENDIF INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, ENUM_TO_INT(GET_PED_COMPONENT_FROM_TYPE(eType))) // shop=CLO_SHOP_NONE IF iDLCItemCount <= iDLCItemToFind RETURN -1 ENDIF GET_SHOP_PED_QUERY_COMPONENT(iDLCItemToFind, componentItem) // Cache values so we can re-use if the same proc gets called with the same params. g_sPedCompHashOptimisationData.iCachedCompHash[eType] = componentItem.m_nameHash g_sPedCompHashOptimisationData.eCachedPedComp[eType] = ePedComp g_sPedCompHashOptimisationData.eCachedPedModel[eType] = eModel RETURN componentItem.m_nameHash ENDIF RETURN -1 ENDFUNC /// PURPOSE: /// Returns the ped comp name enum of the item with this drawable and texture for this ped /// PARAMS: /// mPed - the ped who this item belongs to /// iDrawable - drawable of the item /// iTexture - texture of the item /// eType - ped comp type of the item /// RETURNS: /// PED_COMP_NAME_ENUM of the item or DUMMY_PED_COMP if not found FUNC PED_COMP_NAME_ENUM GET_PED_COMP_ITEM_FROM_VARIATIONS(PED_INDEX mPed, INT iDrawable, INT iTexture, PED_COMP_TYPE_ENUM eType) PED_COMPONENT ePedComp = GET_PED_COMPONENT_FROM_TYPE(eType) INT iNumberOfDrawables = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(mPed, ePedComp) INT iItem, i FOR i = 0 TO iNumberOfDrawables-1 IF i != iDrawable iItem += GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(mPed, ePedComp, i) ELSE iItem += iTexture RETURN (INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem)) ENDIF ENDFOR // Must not have found an item so return dummy //CPRINTLN(DEBUG_PED_COMP, "GET_PED_COMP_ITEM_FROM_VARIATIONS returning dummy ped comp. ", GET_PED_COMP_TYPE_STRING(eType)) RETURN DUMMY_PED_COMP ENDFUNC /// PURPOSE: Use the quick lookup table to save having to process all comp items to find which one is current FUNC PED_COMP_NAME_ENUM GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType) IF eType = COMP_TYPE_OUTFIT OR eType = COMP_TYPE_PROPGROUP OR eType = COMP_TYPE_PROPS OR IS_PED_INJURED(ped) RETURN DUMMY_PED_COMP ENDIF PED_COMPONENT ePedComp = GET_PED_COMPONENT_FROM_TYPE(eType) INT iCurrentDrawable = GET_PED_DRAWABLE_VARIATION(ped, ePedComp) INT iCurrentTexture = GET_PED_TEXTURE_VARIATION(ped, ePedComp) RETURN GET_PED_COMP_ITEM_FROM_VARIATIONS(ped, iCurrentDrawable, iCurrentTexture, eType) ENDFUNC /// PURPOSE: /// Retruns the ped comp name enum of the prop with this drawable and texture for this ped /// PARAMS: /// mPed - the ped who this item belongs to /// iPropIndex - index of the item /// iPropTexture - texture of the item /// ePropPos - prop anchor of the item /// RETURNS: /// PED_COMP_NAME_ENUM of the item or DUMMY_PED_COMP if not found FUNC PED_COMP_NAME_ENUM GET_PROP_ITEM_FROM_VARIATIONS(PED_INDEX mPed, INT iPropIndex, INT iPropTexture, PED_PROP_POSITION ePropPos) // if no prop, return dummy IF (iPropIndex = -1) //CPRINTLN(DEBUG_PED_COMP, "Drawable = -1 return dummy for prop pos ", GET_PROP_POSITION_STRING(ePropPos)) RETURN GET_DUMMY_PROP_FOR_ANCHOR(ePropPos) ENDIF #IF USE_TU_CHANGES // If this is a DLC item we should get the DLC hash and then work out the DLC enum MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) INT iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(mPed), ENUM_TO_INT(ePropPos), iPropIndex, iPropTexture) //CPRINTLN(DEBUG_PED_COMP, "GET_PROP_ITEM_FROM_VARIATIONS: variation=", iPropIndex, ",", iPropTexture, " anchor=", GET_PROP_POSITION_STRING(ePropPos), " dlc_hash=", iDLCNameHash) IF iDLCNameHash != -1 AND iDLCNameHash != 0 IF ePedModel = MP_M_FREEMODE_01 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(GET_ENTITY_MODEL(mPed), iDLCNameHash, COMP_TYPE_PROPS, 3) ELIF ePedModel = MP_F_FREEMODE_01 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(GET_ENTITY_MODEL(mPed), iDLCNameHash, COMP_TYPE_PROPS, 4) ENDIF ENDIF #ENDIF INT iNumberOfDrawables = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(mPed, ePropPos) INT iItem, i, j, iNumberOfTextures FOR i = 0 TO iNumberOfDrawables-1 iNumberOfTextures = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(mPed, ePropPos, i) // loop through and find the one we need IF i != iPropIndex iItem += iNumberOfTextures ELSE FOR j = 0 TO iNumberOfTextures-1 IF i = iPropIndex AND j = iPropTexture // update for the prop offset iItem = iItem + ENUM_TO_INT(GET_FIRST_PROP_OF_TYPE(mPed, ePropPos)) //CPRINTLN(DEBUG_PED_COMP, "Found current prop: iItem ", iItem, ", i =", i, ", j =", j, ", ", GET_PROP_POSITION_STRING(ePropPos)) RETURN (INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem)) ELSE iItem++ ENDIF ENDFOR ENDIF ENDFOR // Must not have found an item so return dummy CPRINTLN(DEBUG_PED_COMP, "Didnt find prop: return dummy for prop pos ", GET_PROP_POSITION_STRING(ePropPos)) RETURN GET_DUMMY_PROP_FOR_ANCHOR(ePropPos) ENDFUNC /// PURPOSE: Use the quick lookup table to save having to process all comp items to find which one is current FUNC PED_COMP_NAME_ENUM GET_PED_PROP_CURRENT_FROM_LOOKUP(PED_INDEX mPed, PED_PROP_POSITION ePropPos) IF IS_PED_INJURED(mPed) RETURN DUMMY_PED_COMP ENDIF // get current prop in this position INT iCurrentDrawable = GET_PED_PROP_INDEX(mPed, ePropPos) // if no prop, return dummy IF (iCurrentDrawable = -1) //CPRINTLN(DEBUG_PED_COMP, "Drawable = -1 return dummy for prop pos ", GET_PROP_POSITION_STRING(ePropPos)) RETURN GET_DUMMY_PROP_FOR_ANCHOR(ePropPos) ENDIF // get current prop texture, and total prop variations INT iCurrentTexture = GET_PED_PROP_TEXTURE_INDEX(mPed, ePropPos) RETURN GET_PROP_ITEM_FROM_VARIATIONS(mPed, iCurrentDrawable, iCurrentTexture, ePropPos) ENDFUNC FUNC INT GET_TOTAL_PED_COMP_VARIATIONS(PED_INDEX mPed) INT iTotalPedComps = 0 INT iComponent, iDraw, iNumberOfDrawables PED_COMPONENT ePedComp REPEAT NUM_PED_COMPONENTS iComponent ePedComp = INT_TO_ENUM(PED_COMPONENT, iComponent) iNumberOfDrawables = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(mPed, ePedComp) REPEAT iNumberOfDrawables iDraw iTotalPedComps += GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(mPed, ePedComp, iDraw) ENDREPEAT ENDREPEAT INT iProp, iIndex, iNumberOfIndexes PED_PROP_POSITION ePedProp REPEAT NUMBER_OF_PED_PROP_TYPES iProp ePedProp = INT_TO_ENUM(PED_PROP_POSITION, iProp) iNumberOfIndexes = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(mPed, ePedProp) REPEAT iNumberOfIndexes iIndex iTotalPedComps += GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(mPed, ePedProp, iIndex) ENDREPEAT ENDREPEAT RETURN iTotalPedComps ENDFUNC /// PURPOSE: /// Gets the character enum of the player character passed in (by model) /// PARAMS: /// ePedModel - the model of the player character /// RETURNS: /// enumCharacterList of the player character or NO_CHARACTER if model passed in doesn't belong to a player character FUNC enumCharacterList GET_PLAYER_CHARACTER_FROM_MODELCLF(MODEL_NAMES ePedModel) SWITCH ePedModel CASE PLAYER_ZERO RETURN CHAR_MICHAEL BREAK CASE PLAYER_ONE RETURN CHAR_FRANKLIN BREAK CASE PLAYER_TWO RETURN CHAR_TREVOR BREAK DEFAULT CASSERTLN(DEBUG_PED_COMP, "GET_PLAYER_CHARACTER_FROM_MODEL CLF passed a non player character") BREAK ENDSWITCH RETURN NO_CHARACTER ENDFUNC FUNC enumCharacterList GET_PLAYER_CHARACTER_FROM_MODELNRM(MODEL_NAMES ePedModel) SWITCH ePedModel CASE PLAYER_ZERO RETURN CHAR_MICHAEL BREAK CASE IG_JIMMYDISANTO RETURN CHAR_NRM_JIMMY BREAK CASE IG_TRACYDISANTO RETURN CHAR_NRM_TRACEY BREAK DEFAULT CASSERTLN(DEBUG_PED_COMP, "GET_PLAYER_CHARACTER_FROM_MODEL NRM passed a non player character") BREAK ENDSWITCH RETURN NO_CHARACTER ENDFUNC FUNC enumCharacterList GET_PLAYER_CHARACTER_FROM_MODEL(MODEL_NAMES ePedModel) #if USE_CLF_DLC IF g_bLoadedClifford RETURN GET_PLAYER_CHARACTER_FROM_MODELCLF(ePedModel) ENDIF #ENDIF #IF USE_NRM_DLC IF g_bLoadedNorman RETURN GET_PLAYER_CHARACTER_FROM_MODELNRM(ePedModel) ENDIF #ENDIF SWITCH ePedModel CASE PLAYER_ZERO RETURN CHAR_MICHAEL BREAK CASE PLAYER_ONE RETURN CHAR_FRANKLIN BREAK CASE PLAYER_TWO RETURN CHAR_TREVOR BREAK DEFAULT CPRINTLN(DEBUG_PED_COMP, "GET_PLAYER_CHARACTER_FROM_MODEL passed a non player character") BREAK ENDSWITCH RETURN NO_CHARACTER ENDFUNC /// PURPOSE: Checks whether or not a model is a playable character model. FUNC BOOL IS_MODEL_PLAYABLE_CHARACTER(MODEL_NAMES pedModel, BOOL SPOnly = FALSE) IF SPOnly //BC: MainTransition needs this // Singleplayer IF pedModel = PLAYER_ZERO OR pedModel = PLAYER_ONE OR pedModel = PLAYER_TWO RETURN TRUE ENDIF ELSE // Singleplayer IF pedModel = PLAYER_ZERO OR pedModel = PLAYER_ONE OR pedModel = PLAYER_TWO // Freemode OR pedModel = MP_M_Freemode_01 OR pedModel = MP_F_Freemode_01 RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: returns the MP int stat for the specified component type FUNC MP_INT_STATS GET_MP_PED_COMPONENT_ACQUIRED_STAT(PED_COMP_TYPE_ENUM eType, INT iBitset) //New data lookup function for Title Update. //SP scripts won't compile this logic in to ensure their binaries don't change. -BenR #IF USE_TU_CHANGES SWITCH iBitset CASE 0 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR BREAK CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL BREAK CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2 BREAK CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD BREAK CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS BREAK CASE COMP_TYPE_OUTFIT RETURN MP_STAT_CLTHS_ACQUIRED_OUTFIT BREAK ENDSWITCH BREAK CASE 1 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_1 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_1 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_1 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_1 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_1 BREAK CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_1 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_1 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_1 BREAK CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_1 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_1 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_1 BREAK ENDSWITCH BREAK CASE 2 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_2 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_2 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_2 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_2 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_2 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_2 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_2 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_2 BREAK CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_2 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_2 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_2 BREAK ENDSWITCH BREAK CASE 3 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_3 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_3 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_3 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_3 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_3 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_3 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_3 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_3 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_3 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_3 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_3 BREAK ENDSWITCH BREAK CASE 4 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_4 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_4 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_4 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_4 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_4 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_4 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_4 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_4 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_4 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_4 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_4 BREAK ENDSWITCH BREAK CASE 5 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_5 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_5 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_5 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_5 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_5 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_5 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_5 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_5 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_5 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_5 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_5 BREAK ENDSWITCH BREAK CASE 6 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_6 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_6 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_6 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_6 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_6 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_6 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_6 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_6 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_6 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_6 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_6 BREAK ENDSWITCH BREAK CASE 7 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_7 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_7 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_7 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_7 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_7 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_7 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_7 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_7 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_7 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_7 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_7 BREAK ENDSWITCH BREAK CASE 8 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_8 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_8 BREAK //CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_8 BREAK //CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_8 BREAK //CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_8 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_8 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_8 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_8 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_8 BREAK //CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_8 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_8 BREAK ENDSWITCH BREAK CASE 9 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_9 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_ACQUIRED_TORSO_9 BREAK //CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_9 BREAK //CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_9 BREAK //CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL_9 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_ACQUIRED_SPECIAL2_9 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_ACQUIRED_DECL_9 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_9 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_ACQUIRED_TEETH_9 BREAK //CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_9 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_9 BREAK ENDSWITCH BREAK CASE 10 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_10 BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // USE_TU_CHANGES // MUST NOT BE CHANGED. // Old data lookup function that was submitted for FinalSub. // SP scripts will compile this logic in to ensure their binaries don't change. -BenR #IF NOT USE_TU_CHANGES SWITCH iBitset CASE 0 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB BREAK CASE COMP_TYPE_OUTFIT RETURN MP_STAT_CLTHS_ACQUIRED_OUTFIT BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS BREAK ENDSWITCH BREAK CASE 1 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_1 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_1 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_1 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_1 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_1 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_1 BREAK ENDSWITCH BREAK CASE 2 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_2 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_2 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_2 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_2 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_2 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_2 BREAK ENDSWITCH BREAK CASE 3 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_3 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_3 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_3 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_3 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_3 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_3 BREAK ENDSWITCH BREAK CASE 4 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_4 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_4 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_4 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_4 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_4 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_4 BREAK ENDSWITCH BREAK CASE 5 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_5 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_5 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_5 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_5 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_5 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_5 BREAK ENDSWITCH BREAK CASE 6 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_6 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_6 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_6 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_6 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_6 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_6 BREAK ENDSWITCH BREAK CASE 7 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_ACQUIRED_HAIR_7 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_ACQUIRED_LEGS_7 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_ACQUIRED_FEET_7 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_ACQUIRED_BERD_7 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_ACQUIRED_JBIB_7 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_7 BREAK ENDSWITCH BREAK CASE 8 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_8 BREAK ENDSWITCH BREAK CASE 9 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_9 BREAK ENDSWITCH BREAK CASE 10 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_ACQUIRED_PROPS_10 BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // NOT USE_TU_CHANGES #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_MP_PED_COMPONENT_ACQUIRED_STAT - No stat setup for item - Tell Kenneth R.") CPRINTLN(DEBUG_PED_COMP, "...Type = ", GET_PED_COMP_NAME_STRING(eType)) CPRINTLN(DEBUG_PED_COMP, "...Bitset = ", iBitset) CASSERTLN(DEBUG_PED_COMP, "GET_MP_PED_COMPONENT_ACQUIRED_STAT - No stat setup eType \"", GET_PED_COMP_NAME_STRING(eType), "\", iBitset: ", iBitset) #ENDIF RETURN MP_STAT_CLTHS_ACQUIRED_JBIB ENDFUNC /// PURPOSE: returns the MP int stat for the specified component type FUNC BOOL GET_MP_PED_COMPONENT_USED_STAT(PED_COMP_TYPE_ENUM eType, INT iBitset, MP_INT_STATS &eStat) eStat = MP_STAT_CLTHS_ACQUIRED_OUTFIT //New data lookup function for Title Update. //SP scripts won't compile this logic in to ensure their binaries don't change. -BenR #IF USE_TU_CHANGES SWITCH iBitset CASE 0 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR BREAK CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL BREAK CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2 BREAK CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD BREAK CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS BREAK CASE COMP_TYPE_OUTFIT eStat = MP_STAT_CLTHS_USED_OUTFIT BREAK ENDSWITCH BREAK CASE 1 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_1 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_1 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_1 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_1 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_1 BREAK CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_1 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_1 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_1 BREAK CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_1 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_1 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_1 BREAK ENDSWITCH BREAK CASE 2 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_2 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_2 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_2 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_2 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_2 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_2 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_2 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_2 BREAK CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_2 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_2 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_2 BREAK ENDSWITCH BREAK CASE 3 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_3 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_3 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_3 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_3 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_3 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_3 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_3 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_3 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_3 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_3 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_3 BREAK ENDSWITCH BREAK CASE 4 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_4 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_4 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_4 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_4 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_4 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_4 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_4 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_4 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_4 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_4 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_4 BREAK ENDSWITCH BREAK CASE 5 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_5 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_5 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_5 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_5 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_5 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_5 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_5 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_5 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_5 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_5 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_5 BREAK ENDSWITCH BREAK CASE 6 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_6 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_6 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_6 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_6 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_6 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_6 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_6 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_6 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_6 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_6 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_6 BREAK ENDSWITCH BREAK CASE 7 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_7 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_7 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_7 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_7 BREAK CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_7 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_7 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_7 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_7 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_7 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_7 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_7 BREAK ENDSWITCH BREAK CASE 8 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_8 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_8 BREAK //CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_8 BREAK //CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_8 BREAK //CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_8 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_8 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_8 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_8 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_8 BREAK //CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_8 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_8 BREAK ENDSWITCH BREAK CASE 9 SWITCH eType //CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_9 BREAK //CASE COMP_TYPE_TORSO eStat = MP_STAT_CLTHS_USED_TORSO_9 BREAK //CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_9 BREAK //CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_9 BREAK //CASE COMP_TYPE_SPECIAL eStat = MP_STAT_CLTHS_USED_SPECIAL_9 BREAK //CASE COMP_TYPE_SPECIAL2 eStat = MP_STAT_CLTHS_USED_SPECIAL2_9 BREAK //CASE COMP_TYPE_DECL eStat = MP_STAT_CLTHS_USED_DECL_9 BREAK //CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_9 BREAK //CASE COMP_TYPE_TEETH eStat = MP_STAT_CLTHS_USED_TEETH_9 BREAK //CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_9 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_9 BREAK ENDSWITCH BREAK CASE 10 SWITCH eType CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_10 BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // USE_TU_CHANGES // MUST NOT BE CHANGED. // Old data lookup function that was submitted for FinalSub. // SP scripts will compile this logic in to ensure their binaries don't change. -BenR #IF NOT USE_TU_CHANGES SWITCH iBitset CASE 0 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB BREAK CASE COMP_TYPE_OUTFIT eStat = MP_STAT_CLTHS_USED_OUTFIT BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS BREAK ENDSWITCH BREAK CASE 1 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_1 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_1 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_1 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_1 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_1 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_1 BREAK ENDSWITCH BREAK CASE 2 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_2 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_2 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_2 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_2 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_2 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_2 BREAK ENDSWITCH BREAK CASE 3 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_3 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_3 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_3 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_3 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_3 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_3 BREAK ENDSWITCH BREAK CASE 4 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_4 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_4 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_4 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_4 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_4 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_4 BREAK ENDSWITCH BREAK CASE 5 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_5 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_5 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_5 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_5 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_5 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_5 BREAK ENDSWITCH BREAK CASE 6 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_6 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_6 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_6 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_6 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_6 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_6 BREAK ENDSWITCH BREAK CASE 7 SWITCH eType CASE COMP_TYPE_HAIR eStat = MP_STAT_CLTHS_USED_HAIR_7 BREAK CASE COMP_TYPE_LEGS eStat = MP_STAT_CLTHS_USED_LEGS_7 BREAK CASE COMP_TYPE_FEET eStat = MP_STAT_CLTHS_USED_FEET_7 BREAK CASE COMP_TYPE_BERD eStat = MP_STAT_CLTHS_USED_BERD_7 BREAK CASE COMP_TYPE_JBIB eStat = MP_STAT_CLTHS_USED_JBIB_7 BREAK CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_7 BREAK ENDSWITCH BREAK CASE 8 SWITCH eType CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_8 BREAK ENDSWITCH BREAK CASE 9 SWITCH eType CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_9 BREAK ENDSWITCH BREAK CASE 10 SWITCH eType CASE COMP_TYPE_PROPS eStat = MP_STAT_CLTHS_USED_PROPS_10 BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // NOT USE_TU_CHANGES RETURN (eStat != MP_STAT_CLTHS_ACQUIRED_OUTFIT) ENDFUNC /// PURPOSE: returns the MP int stat for the specified component type FUNC MP_INT_STATS GET_MP_PED_COMPONENT_AVAILABLE_STAT(PED_COMP_TYPE_ENUM eType, INT iBitset) //New data lookup function for Title Update. //SP scripts won't compile this logic in to ensure their binaries don't change. -BenR #IF USE_TU_CHANGES SWITCH iBitset CASE 0 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR BREAK CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL BREAK CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2 BREAK CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD BREAK CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS BREAK CASE COMP_TYPE_OUTFIT RETURN MP_STAT_CLTHS_AVAILABLE_OUTFIT BREAK ENDSWITCH BREAK CASE 1 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_1 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_1 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_1 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_1 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_1 BREAK CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_1 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_1 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_1 BREAK CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_1 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_1 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_1 BREAK ENDSWITCH BREAK CASE 2 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_2 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_2 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_2 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_2 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_2 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_2 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_2 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_2 BREAK CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_2 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_2 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_2 BREAK ENDSWITCH BREAK CASE 3 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_3 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_3 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_3 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_3 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_3 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_3 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_3 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_3 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_3 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_3 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_3 BREAK ENDSWITCH BREAK CASE 4 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_4 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_4 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_4 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_4 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_4 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_4 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_4 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_4 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_4 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_4 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_4 BREAK ENDSWITCH BREAK CASE 5 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_5 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_5 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_5 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_5 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_5 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_5 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_5 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_5 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_5 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_5 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_5 BREAK ENDSWITCH BREAK CASE 6 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_6 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_6 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_6 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_6 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_6 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_6 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_6 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_6 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_6 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_6 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_6 BREAK ENDSWITCH BREAK CASE 7 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_7 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_7 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_7 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_7 BREAK CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_7 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_7 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_7 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_7 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_7 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_7 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_7 BREAK ENDSWITCH BREAK CASE 8 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_8 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_8 BREAK //CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_8 BREAK //CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_8 BREAK //CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_8 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_8 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_8 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_8 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_8 BREAK //CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_8 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_8 BREAK ENDSWITCH BREAK CASE 9 SWITCH eType //CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_9 BREAK //CASE COMP_TYPE_TORSO RETURN MP_STAT_CLTHS_AVAILABLE_TORSO_9 BREAK //CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_9 BREAK //CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_9 BREAK //CASE COMP_TYPE_SPECIAL RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL_9 BREAK //CASE COMP_TYPE_SPECIAL2 RETURN MP_STAT_CLTHS_AVAILABLE_SPECIAL2_9 BREAK //CASE COMP_TYPE_DECL RETURN MP_STAT_CLTHS_AVAILABLE_DECL_9 BREAK //CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_9 BREAK //CASE COMP_TYPE_TEETH RETURN MP_STAT_CLTHS_AVAILABLE_TEETH_9 BREAK //CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_9 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_9 BREAK ENDSWITCH BREAK CASE 10 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_10 BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // USE_TU_CHANGES // MUST NOT BE CHANGED. // Old data lookup function that was submitted for FinalSub. // SP scripts will compile this logic in to ensure their binaries don't change. -BenR #IF NOT USE_TU_CHANGES SWITCH iBitset CASE 0 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB BREAK CASE COMP_TYPE_OUTFIT RETURN MP_STAT_CLTHS_AVAILABLE_OUTFIT BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS BREAK ENDSWITCH BREAK CASE 1 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_1 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_1 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_1 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_1 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_1 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_1 BREAK ENDSWITCH BREAK CASE 2 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_2 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_2 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_2 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_2 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_2 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_2 BREAK ENDSWITCH BREAK CASE 3 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_3 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_3 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_3 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_3 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_3 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_3 BREAK ENDSWITCH BREAK CASE 4 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_4 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_4 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_4 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_4 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_4 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_4 BREAK ENDSWITCH BREAK CASE 5 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_5 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_5 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_5 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_5 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_5 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_5 BREAK ENDSWITCH BREAK CASE 6 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_6 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_6 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_6 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_6 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_6 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_6 BREAK ENDSWITCH BREAK CASE 7 SWITCH eType CASE COMP_TYPE_HAIR RETURN MP_STAT_CLTHS_AVAILABLE_HAIR_7 BREAK CASE COMP_TYPE_LEGS RETURN MP_STAT_CLTHS_AVAILABLE_LEGS_7 BREAK CASE COMP_TYPE_FEET RETURN MP_STAT_CLTHS_AVAILABLE_FEET_7 BREAK CASE COMP_TYPE_BERD RETURN MP_STAT_CLTHS_AVAILABLE_BERD_7 BREAK CASE COMP_TYPE_JBIB RETURN MP_STAT_CLTHS_AVAILABLE_JBIB_7 BREAK CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_7 BREAK ENDSWITCH BREAK CASE 8 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_8 BREAK ENDSWITCH BREAK CASE 9 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_9 BREAK ENDSWITCH BREAK CASE 10 SWITCH eType CASE COMP_TYPE_PROPS RETURN MP_STAT_CLTHS_AVAILABLE_PROPS_10 BREAK ENDSWITCH BREAK ENDSWITCH #ENDIF // NOT USE_TU_CHANGES #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_MP_PED_COMPONENT_AVAILABLE_STAT - No stat setup for item - Tell Kenneth R.") CPRINTLN(DEBUG_PED_COMP, "...Type = ", GET_PED_COMP_NAME_STRING(eType)) CPRINTLN(DEBUG_PED_COMP, "...Bitset = ", iBitset) CASSERTLN(DEBUG_PED_COMP, "GET_MP_PED_COMPONENT_AVAILABLE_STAT - No stat setup eType \"", GET_PED_COMP_NAME_STRING(eType), "\", iBitset: ", iBitset) #ENDIF RETURN MP_STAT_CLTHS_AVAILABLE_JBIB ENDFUNC /// PURPOSE: Sets all the appropriate bits and details for a component item PROC FILL_PED_COMPONENT_ITEM_DATA(PED_COMP_ITEM_DATA_STRUCT &sData, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, STRING sLabel, INT iDrawable, INT iTexture, INT iCost, BOOL bOutfitOnly, PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY, PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE, BOOL bDLCItem = FALSE) sData.iProperties = 0 //sData.eType = eType sData.eStyle = eStyle //sData.eItem = eItem sData.iItemBit = (ENUM_TO_INT(eItem) % 32) sData.iBitset = (ENUM_TO_INT(eItem) / 32) sData.iDrawable = iDrawable sData.iTexture = iTexture sData.iCost = iCost sData.sLabel = sLabel sData.ePropType = ePropType sData.ePropPos = GET_ANCHOR_FOR_PED_PROP_TYPE(ePropType) IF sData.iBitset >= PED_COMPONENT_BITSETS AND sData.iPedID >= 0 AND sData.iPedID < NUM_OF_PLAYABLE_PEDS IF NOT bDLCItem #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "FILL_PED_COMPONENT_ITEM_DATA - New bitset required to use this item") CPRINTLN(DEBUG_PED_COMP, "...eType = ", eType) CPRINTLN(DEBUG_PED_COMP, "...eItem = ", eItem) CPRINTLN(DEBUG_PED_COMP, "...sLabel = ", sLabel) CPRINTLN(DEBUG_PED_COMP, "...iDrawable = ", sData.iDrawable) CPRINTLN(DEBUG_PED_COMP, "...iTexture = ", sData.iTexture) CPRINTLN(DEBUG_PED_COMP, "...iItemBit = ", sData.iItemBit) CPRINTLN(DEBUG_PED_COMP, "...iBitset = ", sData.iBitset) CASSERTLN(DEBUG_PED_COMP, "FILL_PED_COMPONENT_ITEM_DATA - New bitset required to use this item. [eType = ", GET_PED_COMP_TYPE_STRING(eType), ", eItem = ", eItem, ", sLabel = \"", sLabel, "\", iDrawable = ", sData.iDrawable, ", iTexture = ", sData.iTexture, ", iItemBit = ", sData.iItemBit, ", iBitset = ", sData.iBitset, "]") #ENDIF ENDIF sData.iBitset = 0 ENDIF // IF sData.iBitset < 0 // #IF IS_DEBUG_BUILD // CPRINTLN(DEBUG_PED_COMP, "FILL_PED_COMPONENT_ITEM_DATA - Invalid bitset setup to use this item") // CPRINTLN(DEBUG_PED_COMP, "...eType = ", eType) // CPRINTLN(DEBUG_PED_COMP, "...eItem = ", eItem) // CPRINTLN(DEBUG_PED_COMP, "...sLabel = ", sLabel) // CPRINTLN(DEBUG_PED_COMP, "...iDrawable = ", sData.iDrawable) // CPRINTLN(DEBUG_PED_COMP, "...iTexture = ", sData.iTexture) // CPRINTLN(DEBUG_PED_COMP, "...iItemBit = ", sData.iItemBit) // CPRINTLN(DEBUG_PED_COMP, "...iBitset = ", sData.iBitset) // CASSERTLN(DEBUG_PED_COMP, "FILL_PED_COMPONENT_ITEM_DATA - Invalid bitset setup to use this item. [eType = ", GET_PED_COMP_TYPE_STRING(eType), ", eItem = ", eItem, ", sLabel = \"", sLabel, "\", iDrawable = ", sData.iDrawable, ", iTexture = ", sData.iTexture, ", iItemBit = ", sData.iItemBit, ", iBitset = ", sData.iBitset, "]") // #ENDIF // ENDIF // Set the generic data IF GET_HASH_KEY(sLabel) != GET_HASH_KEY("NO_LABEL") #IF IS_DEBUG_BUILD IF lw_bUnlockAllShopItems OR lw_bUnlockAllClothes SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) ENDIF IF g_bAllClothesAcquired SET_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) ENDIF IF g_bAllClothesAvailable SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) ENDIF #ENDIF ENDIF IF bOutfitOnly SET_BIT(sData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) ENDIF // Set the DLC specific data IF bDLCItem SET_BIT(sData.iProperties, PED_COMPONENT_CAN_HAVE_BIT) IF sData.iPedID >= 0 AND sData.iPedID < NUM_OF_PLAYABLE_PEDS SET_BIT(sData.iProperties, PED_COMPONENT_USE_SP_DATA_BIT) ENDIF SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) SET_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) SET_BIT(sData.iProperties, PED_COMPONENT_IS_DLC_BIT) #IF FEATURE_SP_DLC_DIRECTOR_MODE IF IS_CURRENTLY_ON_MISSION_OF_TYPE(MISSION_TYPE_DIRECTOR) EXIT ENDIF #ENDIF #IF USE_TU_CHANGES IF eType = COMP_TYPE_BERD IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_REBREATHER, ENUM_TO_INT(SHOP_PED_COMPONENT)) SET_BIT(sData.iProperties, PED_COMPONENT_IS_REBREATHER_BIT) ENDIF ENDIF #ENDIF IF eType = COMP_TYPE_OUTFIT IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT) // IF sData.iCost > 0 CLEAR_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) // ENDIF ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT) SET_BIT(sData.iProperties, PED_COMPONENT_IS_NEW_BIT) ENDIF ELIF eType = COMP_TYPE_PROPGROUP // Skip ELIF eType = COMP_TYPE_PROPS IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT) // IF sData.iCost > 0 CLEAR_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) // ENDIF ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT) SET_BIT(sData.iProperties, PED_COMPONENT_IS_NEW_BIT) ENDIF ELSE IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT) // IF sData.iCost > 0 CLEAR_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) // ENDIF ENDIF IF NOT IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT) SET_BIT(sData.iProperties, PED_COMPONENT_IS_NEW_BIT) ENDIF ENDIF // Content is locked for current TU. IF IS_CONTENT_ITEM_LOCKED(g_iLastDLCItemLockHash) CLEAR_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) CLEAR_BIT(sData.iProperties, PED_COMPONENT_CAN_HAVE_BIT) ENDIF // Set the singleplayer specific data ELIF sData.iPedID >= 0 AND sData.iPedID < NUM_OF_PLAYABLE_PEDS SET_BIT(sData.iProperties, PED_COMPONENT_CAN_HAVE_BIT) SET_BIT(sData.iProperties, PED_COMPONENT_USE_SP_DATA_BIT) IF GET_BITSET_FROM_COMP_TYPE(eType, sData.iPedID, sData.iBitset, PED_COMPONENT_AVAILABLE_SLOT, sData.iItemBit) SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) ENDIF IF GET_BITSET_FROM_COMP_TYPE(eType, sData.iPedID, sData.iBitset, PED_COMPONENT_ACQUIRED_SLOT, sData.iItemBit) SET_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) ENDIF IF NOT GET_BITSET_FROM_COMP_TYPE(eType, sData.iPedID, sData.iBitset, PED_COMPONENT_USED_SLOT, sData.iItemBit) SET_BIT(sData.iProperties, PED_COMPONENT_IS_NEW_BIT) ENDIF // Set the multiplayer specific data ELSE SET_BIT(sData.iProperties, PED_COMPONENT_CAN_HAVE_BIT) IF eType = COMP_TYPE_JBIB OR eType = COMP_TYPE_LEGS OR eType = COMP_TYPE_FEET OR eType = COMP_TYPE_BERD OR eType = COMP_TYPE_PROPS OR eType = COMP_TYPE_HAIR #IF USE_TU_CHANGES // OR eType = COMP_TYPE_TORSO // All on-disk uppers should be free and acquired. OR eType = COMP_TYPE_SPECIAL OR eType = COMP_TYPE_SPECIAL2 OR eType = COMP_TYPE_DECL OR eType = COMP_TYPE_TEETH OR eType = COMP_TYPE_OUTFIT #ENDIF #IF FEATURE_SP_DLC_DIRECTOR_MODE IF IS_CURRENTLY_ON_MISSION_OF_TYPE(MISSION_TYPE_DIRECTOR) EXIT ENDIF #ENDIF INT iStatValue = GET_MP_INT_CHARACTER_STAT(GET_MP_PED_COMPONENT_AVAILABLE_STAT(eType, sData.iBitset), g_iPedComponentSlot) IF IS_BIT_SET(iStatValue, sData.iItemBit) SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) ENDIF iStatValue = GET_MP_INT_CHARACTER_STAT(GET_MP_PED_COMPONENT_ACQUIRED_STAT(eType, sData.iBitset), g_iPedComponentSlot) IF IS_BIT_SET(iStatValue, sData.iItemBit) SET_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) ENDIF MP_INT_STATS eStat IF GET_MP_PED_COMPONENT_USED_STAT(eType, sData.iBitset, eStat) iStatValue = GET_MP_INT_CHARACTER_STAT(eStat, g_iPedComponentSlot) IF NOT IS_BIT_SET(iStatValue, sData.iItemBit) SET_BIT(sData.iProperties, PED_COMPONENT_IS_NEW_BIT) ENDIF ENDIF ELSE SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) SET_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) ENDIF ENDIF // All default props should be free. IF eType = COMP_TYPE_PROPS IF iDrawable = -1 SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) SET_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) ENDIF ENDIF #IF NOT USE_SP_DLC #IF IS_DEBUG_BUILD #IF USE_TU_CHANGES IF g_bAddMenuItemsToCatalogue OR g_bVerifyMenuItemPrices SET_BIT(sData.iProperties, PED_COMPONENT_AVAILABLE_BIT) CLEAR_BIT(sData.iProperties, PED_COMPONENT_ACQUIRED_BIT) ENDIF #ENDIF #ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the component items that make up an outfit PROC FILL_PED_COMPONENT_OUTFIT_DATA(PED_COMP_OUTFIT_DATA_STRUCT &sData, PED_COMP_NAME_ENUM eHead, PED_COMP_NAME_ENUM eHair, 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 eSpecial2, PED_COMP_NAME_ENUM eDecl, PED_COMP_NAME_ENUM eBerd, PED_COMP_NAME_ENUM eTeeth, PED_COMP_NAME_ENUM eJbib, PED_COMP_NAME_ENUM ePropGroup) sData.eItems[COMP_TYPE_HEAD] = eHead sData.eItems[COMP_TYPE_HAIR] = eHair sData.eItems[COMP_TYPE_TORSO] = eTorso sData.eItems[COMP_TYPE_LEGS] = eLegs sData.eItems[COMP_TYPE_FEET] = eFeet sData.eItems[COMP_TYPE_HAND] = eHand sData.eItems[COMP_TYPE_SPECIAL] = eSpecial sData.eItems[COMP_TYPE_SPECIAL2] = eSpecial2 sData.eItems[COMP_TYPE_DECL] = eDecl sData.eItems[COMP_TYPE_BERD] = eBerd sData.eItems[COMP_TYPE_TEETH] = eTeeth sData.eItems[COMP_TYPE_JBIB] = eJBIB sData.eItems[COMP_TYPE_PROPGROUP] = ePropGroup sData.eItems[COMP_TYPE_PROPS] = DUMMY_PED_COMP ENDPROC /// PURPOSE: Sets all the props that make up a propgroup PROC FILL_PED_COMPONENT_PROPS_DATA(PED_COMP_PROPS_DATA_STRUCT &sData, PED_COMP_NAME_ENUM eHead = PROPS_HEAD_NONE, PED_COMP_NAME_ENUM eEyes = PROPS_EYES_NONE, PED_COMP_NAME_ENUM eEars = PROPS_EARS_NONE, PED_COMP_NAME_ENUM eMouth = PROPS_MOUTH_NONE, PED_COMP_NAME_ENUM eLHand = PROPS_LHAND_NONE, PED_COMP_NAME_ENUM eRHand = PROPS_RHAND_NONE, PED_COMP_NAME_ENUM eLWrist = PROPS_LWRIST_NONE, PED_COMP_NAME_ENUM eRWrist = PROPS_RWRIST_NONE, PED_COMP_NAME_ENUM eHip = PROPS_HIP_NONE) sData.eItems[ANCHOR_HEAD] = eHead sData.eItems[ANCHOR_EYES] = eEyes sData.eItems[ANCHOR_EARS] = eEars sData.eItems[ANCHOR_MOUTH] = eMouth sData.eItems[ANCHOR_LEFT_HAND] = eLHand sData.eItems[ANCHOR_RIGHT_HAND] = eRHand sData.eItems[ANCHOR_LEFT_WRIST] = eLWrist sData.eItems[ANCHOR_RIGHT_WRIST] = eRWrist sData.eItems[ANCHOR_HIP] = eHip ENDPROC // -----------------DLC -------------------------------------------- PROC FILL_PED_COMP_DATA_DLC(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM eDLCItem, INT iDLCHash = -1) INT iDLCIndex = ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem) iDLCIndex = iDLCIndex IF iDLCIndex < 0 EXIT ENDIF #IF USE_SP_DLC IF eType = COMP_TYPE_OUTFIT scrShopPedOutfit outfitItem INT iDLCItem INT iDLCTypeCount = 0 INT iDLCItemCount = SETUP_SHOP_PED_OUTFIT_QUERY(g_sTempCompData[0].iPedID, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_OUTFIT(iDLCItem, outfitItem) IF NOT IS_CONTENT_ITEM_LOCKED(outfitItem.m_lockHash) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) // Replace placeholder labels with test data IF GET_HASH_KEY(outfitItem.m_textLabel) = GET_HASH_KEY("DLC_OUTFIT") OR GET_HASH_KEY(outfitItem.m_textLabel) = GET_HASH_KEY("OUTFIT") IF outfitItem.m_eCharacter = ENUM_TO_INT(CHAR_MICHAEL) outfitItem.m_textLabel = "OUTFIT_P0_DLC0" // Clown ELIF outfitItem.m_eCharacter = ENUM_TO_INT(CHAR_TREVOR) outfitItem.m_textLabel = "OUTFIT_P2_DLC0" // Army ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "FILL_PED_COMP_DATA_DLC called with dlc index ", iDLCIndex, " for outfit - label = ", outfitItem.m_textLabel, " - name hash = ", outfitItem.m_nameHash) FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, outfitItem.m_textLabel, 0, 0, 10, FALSE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, TRUE) EXIT ENDIF iDLCTypeCount++ ENDIF ENDREPEAT ELIF eType = COMP_TYPE_PROPGROUP FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, "NO_LABEL", 0, 0, 0, TRUE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, TRUE) ELIF eType = COMP_TYPE_PROPS scrShopPedProp propItem INIT_SHOP_PED_PROP(propItem) PED_PROP_TYPE_ENUM ePropType INT iDLCItem INT iDLCTypeCount = 0 INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY(g_sTempCompData[0].iPedID, 0, 11, ENUM_TO_INT(SHOP_PED_PROP)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_PROP(iDLCItem, propItem) IF NOT IS_CONTENT_ITEM_LOCKED(propItem.m_lockHash) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) CPRINTLN(DEBUG_PED_COMP, "<""> FILL_PED_COMP_DATA_DLC called with dlc index ", iDLCIndex, " for prop anchor ", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint)), " - label = ", propItem.m_textLabel, ", \"", GET_STRING_FROM_TEXT_FILE(propItem.m_textLabel), "\" - name hash = ", propItem.m_nameHash) IF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_HEAD) ePropType = PROP_TYPE_HAT ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_EYES) ePropType = PROP_TYPE_GLASSES ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_EARS) ePropType = PROP_TYPE_EARS ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_MOUTH) ePropType = PROP_TYPE_MOUTH ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_L_HAND) ePropType = PROP_TYPE_L_HAND ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_R_HAND) ePropType = PROP_TYPE_R_HAND ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_L_WRIST) ePropType = PROP_TYPE_L_WRIST ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_R_WRIST) ePropType = PROP_TYPE_R_WRIST ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_HIP) ePropType = PROP_TYPE_HIP ELSE ePropType = PROP_TYPE_DUMMY ENDIF FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, propItem.m_textLabel, propItem.m_propIndex, propItem.m_textureIndex, propItem.m_cost, TRUE, ePropType, COMP_STYLE_SENSIBLE, (propItem.m_nameHash != 0)) EXIT ENDIF iDLCTypeCount++ ENDIF ENDREPEAT ELSE scrShopPedComponent componentItem INIT_SHOP_PED_COMPONENT(componentItem) INT iDLCItem INT iDLCTypeCount = 0 INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY(g_sTempCompData[0].iPedID, 0, 11, ENUM_TO_INT(SHOP_PED_COMPONENT)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_COMPONENT(iDLCItem, componentItem) IF NOT IS_CONTENT_ITEM_LOCKED(componentItem.m_lockHash) IF componentItem.m_eCompType = ENUM_TO_INT(GET_PED_COMPONENT_FROM_TYPE(eType)) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) CPRINTLN(DEBUG_PED_COMP, "FILL_PED_COMP_DATA_DLC called with dlc index ", iDLCIndex, " for ", GET_PED_COMP_TYPE_STRING(eType), " - label = ", componentItem.m_textLabel, " - name hash = ", componentItem.m_nameHash) FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, componentItem.m_textLabel, componentItem.m_drawableIndex, componentItem.m_textureIndex, componentItem.m_cost, TRUE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, (componentItem.m_nameHash != 0)) EXIT ENDIF iDLCTypeCount++ ENDIF ENDIF ENDREPEAT ENDIF #ENDIF #IF NOT USE_SP_DLC #IF NOT USE_TU_CHANGES IF eType = COMP_TYPE_OUTFIT scrShopPedOutfit outfitItem INT iDLCItem INT iDLCTypeCount = 0 INT iDLCItemCount = SETUP_SHOP_PED_OUTFIT_QUERY(g_sTempCompData[0].iPedID, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_OUTFIT(iDLCItem, outfitItem) IF NOT IS_CONTENT_ITEM_LOCKED(outfitItem.m_lockHash) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) // Replace placeholder labels with test data IF GET_HASH_KEY(outfitItem.m_textLabel) = GET_HASH_KEY("DLC_OUTFIT") OR GET_HASH_KEY(outfitItem.m_textLabel) = GET_HASH_KEY("OUTFIT") IF outfitItem.m_eCharacter = ENUM_TO_INT(CHAR_MICHAEL) outfitItem.m_textLabel = "OUTFIT_P0_DLC0" // Clown ELIF outfitItem.m_eCharacter = ENUM_TO_INT(CHAR_TREVOR) outfitItem.m_textLabel = "OUTFIT_P2_DLC0" // Army ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "FILL_PED_COMP_DATA_DLC called with dlc index ", iDLCIndex, " for outfit - label = ", outfitItem.m_textLabel, " - name hash = ", outfitItem.m_nameHash) FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, outfitItem.m_textLabel, 0, 0, 10, FALSE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, TRUE) EXIT ENDIF iDLCTypeCount++ ENDIF ENDREPEAT ELIF eType = COMP_TYPE_PROPGROUP FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, "NO_LABEL", 0, 0, 0, TRUE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, TRUE) ELIF eType = COMP_TYPE_PROPS scrShopPedProp propItem INIT_SHOP_PED_PROP(propItem) PED_PROP_TYPE_ENUM ePropType INT iDLCItem INT iDLCTypeCount = 0 INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY(g_sTempCompData[0].iPedID, 0, 11, ENUM_TO_INT(SHOP_PED_PROP)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_PROP(iDLCItem, propItem) IF NOT IS_CONTENT_ITEM_LOCKED(propItem.m_lockHash) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) CPRINTLN(DEBUG_PED_COMP, "<1> FILL_PED_COMP_DATA_DLC called with dlc index ", iDLCIndex, " for prop anchor ", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint)), " - label = ", propItem.m_textLabel, ", \"", GET_STRING_FROM_TEXT_FILE(propItem.m_textLabel), "\" - name hash = ", propItem.m_nameHash) IF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_HEAD) ePropType = PROP_TYPE_HAT ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_EYES) ePropType = PROP_TYPE_GLASSES ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_EARS) ePropType = PROP_TYPE_EARS ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_MOUTH) ePropType = PROP_TYPE_MOUTH ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_L_HAND) ePropType = PROP_TYPE_L_HAND ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_R_HAND) ePropType = PROP_TYPE_R_HAND ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_L_WRIST) ePropType = PROP_TYPE_L_WRIST ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_R_WRIST) ePropType = PROP_TYPE_R_WRIST ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_HIP) ePropType = PROP_TYPE_HIP ELSE ePropType = PROP_TYPE_DUMMY ENDIF FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, propItem.m_textLabel, propItem.m_propIndex, propItem.m_textureIndex, propItem.m_cost, TRUE, ePropType, COMP_STYLE_SENSIBLE, (propItem.m_nameHash != 0)) EXIT ENDIF iDLCTypeCount++ ENDIF ENDREPEAT ELSE scrShopPedComponent componentItem INIT_SHOP_PED_COMPONENT(componentItem) INT iDLCItem INT iDLCTypeCount = 0 INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY(g_sTempCompData[0].iPedID, 0, 11, ENUM_TO_INT(SHOP_PED_COMPONENT)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_COMPONENT(iDLCItem, componentItem) IF NOT IS_CONTENT_ITEM_LOCKED(componentItem.m_lockHash) IF componentItem.m_eCompType = ENUM_TO_INT(GET_PED_COMPONENT_FROM_TYPE(eType)) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) CPRINTLN(DEBUG_PED_COMP, "FILL_PED_COMP_DATA_DLC called with dlc index ", iDLCIndex, " for ", GET_PED_COMP_TYPE_STRING(eType), " - label = ", componentItem.m_textLabel, " - name hash = ", componentItem.m_nameHash) FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, componentItem.m_textLabel, componentItem.m_drawableIndex, componentItem.m_textureIndex, componentItem.m_cost, TRUE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, (componentItem.m_nameHash != 0)) EXIT ENDIF iDLCTypeCount++ ENDIF ENDIF ENDREPEAT ENDIF #ENDIF #IF USE_TU_CHANGES INT iPed = g_sTempCompData[0].iPedID IF eType = COMP_TYPE_OUTFIT scrShopPedOutfit outfitItem INT iDLCItemToFind = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) IF iDLCItemToFind >= 0 INT iDLCItemCount = SETUP_SHOP_PED_OUTFIT_QUERY(iPed, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) IF iDLCItemCount > iDLCItemToFind GET_SHOP_PED_QUERY_OUTFIT(iDLCItemToFind, outfitItem) g_iLastDLCItemNameHash = outfitItem.m_nameHash g_iLastDLCItemLockHash = outfitItem.m_lockHash FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, outfitItem.m_textLabel, 0, 0, outfitItem.m_cost, FALSE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, TRUE) EXIT ENDIF ENDIF ELIF eType = COMP_TYPE_PROPGROUP FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, "NO_LABEL", 0, 0, 0, TRUE, PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, TRUE) ELIF eType = COMP_TYPE_PROPS scrShopPedProp propItem INIT_SHOP_PED_PROP(propItem) PED_PROP_TYPE_ENUM ePropType INT iDLCItemToFind = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) IF iDLCItemToFind >= 0 INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_PROP), -1, -1) IF iDLCItemCount > iDLCItemToFind GET_SHOP_PED_QUERY_PROP(iDLCItemToFind, propItem) IF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_HEAD) ePropType = PROP_TYPE_HAT ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_EYES) ePropType = PROP_TYPE_GLASSES ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_EARS) ePropType = PROP_TYPE_EARS ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_MOUTH) ePropType = PROP_TYPE_MOUTH ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_L_HAND) ePropType = PROP_TYPE_L_HAND ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_R_HAND) ePropType = PROP_TYPE_R_HAND ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_L_WRIST) ePropType = PROP_TYPE_L_WRIST ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_R_WRIST) ePropType = PROP_TYPE_R_WRIST ELIF propItem.m_eAnchorPoint = ENUM_TO_INT(PROP_TYPE_HIP) ePropType = PROP_TYPE_HIP ELSE ePropType = PROP_TYPE_DUMMY ENDIF g_iLastDLCItemNameHash = propItem.m_nameHash g_iLastDLCItemLockHash = propItem.m_lockHash FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, propItem.m_textLabel, propItem.m_propIndex, propItem.m_textureIndex, propItem.m_cost, DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(propItem.m_nameHash, DLC_RESTRICTION_OUTFIT_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)), ePropType, COMP_STYLE_SENSIBLE, (propItem.m_nameHash != 0)) EXIT ENDIF ENDIF ELSE scrShopPedComponent componentItem INIT_SHOP_PED_COMPONENT(componentItem) IF iDLCHash != -1 AND g_bUseDLCHashOverrideForPedData GET_SHOP_PED_COMPONENT(iDLCHash, componentItem) g_iLastDLCItemNameHash = componentItem.m_nameHash g_iLastDLCItemLockHash = componentItem.m_lockHash FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, componentItem.m_textLabel, componentItem.m_drawableIndex, componentItem.m_textureIndex, componentItem.m_cost, DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(componentItem.m_nameHash, DLC_RESTRICTION_OUTFIT_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)), PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, (componentItem.m_nameHash != 0)) EXIT ENDIF INT iDLCItemToFind = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) IF iDLCItemToFind >= 0 INT iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, ENUM_TO_INT(GET_PED_COMPONENT_FROM_TYPE(eType))) // shop=CLO_SHOP_NONE IF iDLCItemCount > iDLCItemToFind GET_SHOP_PED_QUERY_COMPONENT(iDLCItemToFind, componentItem) g_iLastDLCItemNameHash = componentItem.m_nameHash g_iLastDLCItemLockHash = componentItem.m_lockHash FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, componentItem.m_textLabel, componentItem.m_drawableIndex, componentItem.m_textureIndex, componentItem.m_cost, DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(componentItem.m_nameHash, DLC_RESTRICTION_OUTFIT_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)), PROP_TYPE_DUMMY, COMP_STYLE_SENSIBLE, (componentItem.m_nameHash != 0)) EXIT ENDIF ENDIF ENDIF #ENDIF #ENDIF ENDPROC FUNC INT GET_DLC_DRAW_TAG(INT iNameHash) INT iDLCDrawTag = -1 IF iNameHash = 0 RETURN iDLCDrawTag ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNameHash, DLC_RESTRICTION_TAG_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) iDLCDrawTag = 15 ENDIF RETURN iDLCDrawTag ENDFUNC // -----------------MICHAEL -------------------------------------------- /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_HEAD(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HEAD g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE HEAD_P0_0_0 tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE HEAD_P0_0_1 tlLabel = "NO_LABEL" iDraw = 0 iTex = 1 BREAK CASE HEAD_P0_0_2 tlLabel = "NO_LABEL" iDraw = 0 iTex = 2 BREAK CASE HEAD_P0_0_3 tlLabel = "NO_LABEL" iDraw = 0 iTex = 3 BREAK CASE HEAD_P0_0_4 tlLabel = "NO_LABEL" iDraw = 0 iTex = 4 BREAK CASE HEAD_P0_0_5 tlLabel = "NO_LABEL" iDraw = 0 iTex = 5 BREAK CASE HEAD_P0_0_6 tlLabel = "NO_LABEL" iDraw = 0 iTex = 6 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HEAD_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item /// Prices for hair items go in GET_SP_HAIRDO_PRICE() PROC FILL_PED_COMP_DATA_MICHAEL_HAIR(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAIR g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE HAIR_P0_0_0 tlLabel = "HAIR_P0_0_0" iDraw = 0 iTex = 0 BREAK CASE HAIR_P0_1_0 tlLabel = "HAIR_P0_1_0" iDraw = 1 iTex = 0 BREAK CASE HAIR_P0_2_0 tlLabel = "HAIR_P0_2_0" iDraw = 2 iTex = 0 BREAK CASE HAIR_P0_3_0 tlLabel = "HAIR_P0_3_0" iDraw = 3 iTex = 0 BREAK CASE HAIR_P0_4_0 tlLabel = "HAIR_P0_4_0" iDraw = 4 iTex = 0 BREAK CASE HAIR_P0_5_0 tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HAIR_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_TORSO_1(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE TORSO_P0_GREY_SUIT tlLabel = "TORSO_P0_0_0" iDraw = 0 iTex = 0 BREAK CASE TORSO_P0_GREY_SUIT_01 tlLabel = "TORSO_P0_0_0" iDraw = 0 iTex = 1 BREAK CASE TORSO_P0_GREY_SUIT_02 tlLabel = "TORSO_P0_0_2" iDraw = 0 iTex = 2 cost = 3500 BREAK CASE TORSO_P0_GREY_SUIT_03 tlLabel = "TORSO_P0_0_3" iDraw = 0 iTex = 3 BREAK CASE TORSO_P0_GREY_SUIT_04 tlLabel = "TORSO_P0_0_4" iDraw = 0 iTex = 4 BREAK CASE TORSO_P0_GREY_SUIT_05 tlLabel = "TORSO_P0_0_5" iDraw = 0 iTex = 5 BREAK CASE TORSO_P0_GREY_SUIT_06 tlLabel = "TORSO_P0_0_6" iDraw = 0 iTex = 6 BREAK CASE TORSO_P0_GREY_SUIT_07 tlLabel = "TORSO_P0_0_7" iDraw = 0 iTex = 7 BREAK CASE TORSO_P0_GREY_SUIT_08 tlLabel = "TORSO_P0_0_8" iDraw = 0 iTex = 8 BREAK CASE TORSO_P0_GREY_SUIT_09 tlLabel = "TORSO_P0_0_9" iDraw = 0 iTex = 9 BREAK CASE TORSO_P0_GREY_SUIT_10 tlLabel = "TORSO_P0_0_10" iDraw = 0 iTex = 10 BREAK CASE TORSO_P0_GREY_SUIT_11 tlLabel = "TORSO_P0_0_11" iDraw = 0 iTex = 11 BREAK CASE TORSO_P0_GREY_SUIT_12 tlLabel = "TORSO_P0_0_12" iDraw = 0 iTex = 12 BREAK CASE TORSO_P0_GREY_SUIT_13 tlLabel = "TORSO_P0_0_13" iDraw = 0 iTex = 13 BREAK CASE TORSO_P0_GREY_SUIT_14 tlLabel = "TORSO_P0_0_14" iDraw = 0 iTex = 14 BREAK CASE TORSO_P0_GREY_SUIT_15 tlLabel = "TORSO_P0_0_15" iDraw = 0 iTex = 15 BREAK CASE TORSO_P0_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_V_NECK_0 tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 cost = 20 BREAK CASE TORSO_P0_V_NECK_1 tlLabel = "NO_LABEL" iDraw = 2 iTex = 1 cost = 18 BREAK CASE TORSO_P0_V_NECK_2 tlLabel = "NO_LABEL" iDraw = 2 iTex = 2 cost = 22 BREAK CASE TORSO_P0_V_NECK_3 tlLabel = "NO_LABEL" iDraw = 2 iTex = 3 cost = 25 BREAK CASE TORSO_P0_V_NECK_4 tlLabel = "TORSO_P0_2_4" iDraw = 2 iTex = 4 cost = 19 BREAK CASE TORSO_P0_V_NECK_5 tlLabel = "TORSO_P0_2_5" iDraw = 2 iTex = 5 cost = 20 BREAK CASE TORSO_P0_V_NECK_6 tlLabel = "TORSO_P0_2_6" iDraw = 2 iTex = 6 cost = 22 BREAK CASE TORSO_P0_V_NECK_7 tlLabel = "TORSO_P0_2_7" iDraw = 2 iTex = 7 cost = 18 BREAK CASE TORSO_P0_V_NECK_8 tlLabel = "TORSO_P0_2_8" iDraw = 2 iTex = 8 cost = 39 BREAK CASE TORSO_P0_V_NECK_9 tlLabel = "TORSO_P0_2_9" iDraw = 2 iTex = 9 cost = 32 BREAK CASE TORSO_P0_V_NECK_10 tlLabel = "TORSO_P0_2_10" iDraw = 2 iTex = 10 cost = 35 BREAK CASE TORSO_P0_V_NECK_11 tlLabel = "TORSO_P0_2_11" iDraw = 2 iTex = 11 cost = 35 BREAK CASE TORSO_P0_V_NECK_12 tlLabel = "TORSO_P0_2_12" iDraw = 2 iTex = 12 cost = 210 BREAK CASE TORSO_P0_V_NECK_13 tlLabel = "TORSO_P0_2_13" iDraw = 2 iTex = 13 cost = 250 BREAK CASE TORSO_P0_V_NECK_14 tlLabel = "TORSO_P0_2_14" iDraw = 2 iTex = 14 cost = 290 BREAK CASE TORSO_P0_V_NECK_15 tlLabel = "TORSO_P0_2_15" iDraw = 2 iTex = 15 cost = 310 BREAK CASE TORSO_P0_SCUBA tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_SCUBA_BRIGHT tlLabel = "NO_LABEL" iDraw = 3 iTex = 1 bOutfitOnly = TRUE BREAK CASE TORSO_P0_STEALTH tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BALLISTICS tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_NAVY_COP tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_SHIRT_AND_GILET_0 tlLabel = "TORSO_P0_7_0" iDraw = 7 iTex = 0 cost = 150 BREAK CASE TORSO_P0_SHIRT_AND_GILET_1 tlLabel = "TORSO_P0_7_1" iDraw = 7 iTex = 1 cost = 160 BREAK CASE TORSO_P0_SHIRT_AND_GILET_2 tlLabel = "TORSO_P0_7_2" iDraw = 7 iTex = 2 cost = 150 BREAK CASE TORSO_P0_SHIRT_AND_GILET_3 tlLabel = "TORSO_P0_7_3" iDraw = 7 iTex = 3 cost = 150 BREAK CASE TORSO_P0_SHIRT_AND_GILET_4 tlLabel = "TORSO_P0_7_4" iDraw = 7 iTex = 4 cost = 160 BREAK CASE TORSO_P0_SHIRT_AND_GILET_5 tlLabel = "TORSO_P0_7_5" iDraw = 7 iTex = 5 cost = 160 BREAK CASE TORSO_P0_OPEN_SHIRT tlLabel = "TORSO_P0_8_0" iDraw = 8 iTex = 0 BREAK CASE TORSO_P0_OPEN_SHIRT_1 tlLabel = "TORSO_P0_8_1" iDraw = 8 iTex = 1 cost = 52 BREAK CASE TORSO_P0_OPEN_SHIRT_2 tlLabel = "TORSO_P0_8_2" iDraw = 8 iTex = 2 cost = 52 BREAK CASE TORSO_P0_OPEN_SHIRT_3 tlLabel = "TORSO_P0_8_3" iDraw = 8 iTex = 3 cost = 55 BREAK CASE TORSO_P0_OPEN_SHIRT_4 tlLabel = "TORSO_P0_8_4" iDraw = 8 iTex = 4 cost = 55 BREAK CASE TORSO_P0_OPEN_SHIRT_5 tlLabel = "TORSO_P0_8_5" iDraw = 8 iTex = 5 cost = 58 BREAK CASE TORSO_P0_OPEN_SHIRT_6 tlLabel = "TORSO_P0_8_6" iDraw = 8 iTex = 6 cost = 58 BREAK CASE TORSO_P0_OPEN_SHIRT_7 tlLabel = "TORSO_P0_8_7" iDraw = 8 iTex = 7 cost = 62 BREAK CASE TORSO_P0_OPEN_SHIRT_8 tlLabel = "TORSO_P0_8_8" iDraw = 8 iTex = 8 cost = 65 BREAK CASE TORSO_P0_OPEN_SHIRT_9 tlLabel = "TORSO_P0_8_9" iDraw = 8 iTex = 9 cost = 65 BREAK CASE TORSO_P0_OPEN_SHIRT_10 tlLabel = "TORSO_P0_8_10" iDraw = 8 iTex = 10 cost = 68 BREAK CASE TORSO_P0_OPEN_SHIRT_11 tlLabel = "TORSO_P0_8_11" iDraw = 8 iTex = 11 cost = 68 BREAK CASE TORSO_P0_OPEN_SHIRT_12 tlLabel = "TORSO_P0_8_12" iDraw = 8 iTex = 12 cost = 55 BREAK CASE TORSO_P0_OPEN_SHIRT_13 tlLabel = "TORSO_P0_8_13" iDraw = 8 iTex = 13 cost = 62 BREAK CASE TORSO_P0_OPEN_SHIRT_14 tlLabel = "TORSO_P0_8_14" iDraw = 8 iTex = 14 cost = 58 BREAK CASE TORSO_P0_OPEN_SHIRT_15 tlLabel = "TORSO_P0_8_15" iDraw = 8 iTex = 15 cost = 58 BREAK DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_TORSO_2(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE TORSO_P0_NAVY_PARAMEDIC tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_SECURITY tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_EXTERMINATOR tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BOILER_SUIT_1 tlLabel = "NO_LABEL" iDraw = 12 iTex = 1 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BOILER_SUIT_2 tlLabel = "NO_LABEL" iDraw = 12 iTex = 2 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BOILER_SUIT_3 tlLabel = "NO_LABEL" iDraw = 12 iTex = 3 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BOILER_SUIT_4 tlLabel = "NO_LABEL" iDraw = 12 iTex = 4 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BOILER_SUIT_5 tlLabel = "NO_LABEL" iDraw = 12 iTex = 5 bOutfitOnly = TRUE BREAK CASE TORSO_P0_TRIATHLON tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_GILET_0 tlLabel = "TORSO_P0_14_0" iDraw = 14 iTex = 0 cost = 120 BREAK CASE TORSO_P0_GILET_1 tlLabel = "TORSO_P0_14_1" iDraw = 14 iTex = 1 cost = 120 BREAK CASE TORSO_P0_GILET_2 tlLabel = "TORSO_P0_14_2" iDraw = 14 iTex = 2 cost = 120 BREAK CASE TORSO_P0_GILET_3 tlLabel = "TORSO_P0_14_3" iDraw = 14 iTex = 3 cost = 120 BREAK CASE TORSO_P0_GILET_4 tlLabel = "TORSO_P0_14_4" iDraw = 14 iTex = 4 cost = 120 BREAK CASE TORSO_P0_GILET_5 tlLabel = "TORSO_P0_14_5" iDraw = 14 iTex = 5 cost = 120 BREAK CASE TORSO_P0_LUDENDORFF tlLabel = "NO_LABEL" iDraw = 15 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_GOLF tlLabel = "TORSO_P0_16_0" iDraw = 16 iTex = 0 BREAK CASE TORSO_P0_POLO_SHIRT_1 tlLabel = "TORSO_P0_16_1" iDraw = 16 iTex = 1 cost = 20 BREAK CASE TORSO_P0_POLO_SHIRT_2 tlLabel = "TORSO_P0_16_2" iDraw = 16 iTex = 2 cost = 24 BREAK CASE TORSO_P0_POLO_SHIRT_3 tlLabel = "TORSO_P0_16_3" iDraw = 16 iTex = 3 cost = 22 BREAK CASE TORSO_P0_POLO_SHIRT_4 tlLabel = "TORSO_P0_16_4" iDraw = 16 iTex = 4 cost = 25 BREAK CASE TORSO_P0_POLO_SHIRT_5 tlLabel = "TORSO_P0_16_5" iDraw = 16 iTex = 5 cost = 25 BREAK CASE TORSO_P0_POLO_SHIRT_6 tlLabel = "TORSO_P0_16_6" iDraw = 16 iTex = 6 cost = 22 BREAK CASE TORSO_P0_POLO_SHIRT_7 tlLabel = "TORSO_P0_16_7" iDraw = 16 iTex = 7 cost = 27 BREAK CASE TORSO_P0_YOGA_0 tlLabel = "TORSO_P0_17_0" iDraw = 17 iTex = 0 BREAK CASE TORSO_P0_YOGA_1 tlLabel = "TORSO_P0_17_1" iDraw = 17 iTex = 1 BREAK CASE TORSO_P0_YOGA_2 tlLabel = "TORSO_P0_17_2" iDraw = 17 iTex = 2 BREAK CASE TORSO_P0_YOGA_3 tlLabel = "TORSO_P0_17_3" iDraw = 17 iTex = 3 cost = 48 BREAK CASE TORSO_P0_YOGA_4 tlLabel = "TORSO_P0_17_4" iDraw = 17 iTex = 4 cost = 40 BREAK CASE TORSO_P0_YOGA_5 tlLabel = "TORSO_P0_17_5" iDraw = 17 iTex = 5 cost = 45 BREAK CASE TORSO_P0_MOTO_X tlLabel = "NO_LABEL" iDraw = 18 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_BED tlLabel = "TORSO_P0_19_0" iDraw = 19 iTex = 0 BREAK CASE TORSO_P0_VEST_1 tlLabel = "TORSO_P0_19_1" iDraw = 19 iTex = 1 cost = 190 BREAK CASE TORSO_P0_VEST_2 tlLabel = "TORSO_P0_19_2" iDraw = 19 iTex = 2 cost = 190 BREAK CASE TORSO_P0_VEST_3 tlLabel = "TORSO_P0_19_3" iDraw = 19 iTex = 3 cost = 190 BREAK CASE TORSO_P0_VEST_4 tlLabel = "TORSO_P0_19_4" iDraw = 19 iTex = 4 cost = 210 BREAK CASE TORSO_P0_DENIM_SHIRT_0 tlLabel = "TORSO_P0_20_0" iDraw = 20 iTex = 0 BREAK CASE TORSO_P0_DENIM_SHIRT_1 tlLabel = "TORSO_P0_20_1" iDraw = 20 iTex = 1 cost = 115 BREAK CASE TORSO_P0_DENIM_SHIRT_2 tlLabel = "TORSO_P0_20_2" iDraw = 20 iTex = 2 cost = 55 BREAK CASE TORSO_P0_DENIM_SHIRT_3 tlLabel = "TORSO_P0_20_3" iDraw = 20 iTex = 3 cost = 110 BREAK CASE TORSO_P0_DENIM_SHIRT_4 tlLabel = "TORSO_P0_20_4" iDraw = 20 iTex = 4 cost = 99 BREAK CASE TORSO_P0_DENIM_SHIRT_5 tlLabel = "TORSO_P0_20_5" iDraw = 20 iTex = 5 cost = 49 BREAK CASE TORSO_P0_DENIM_SHIRT_6 tlLabel = "TORSO_P0_20_6" iDraw = 20 iTex = 6 cost = 120 BREAK CASE TORSO_P0_DENIM_SHIRT_7 tlLabel = "TORSO_P0_20_7" iDraw = 20 iTex = 7 cost = 45 BREAK CASE TORSO_P0_DENIM_SHIRT_8 tlLabel = "TORSO_P0_20_8" iDraw = 20 iTex = 8 cost = 115 BREAK CASE TORSO_P0_DENIM_SHIRT_9 tlLabel = "TORSO_P0_20_9" iDraw = 20 iTex = 9 cost = 105 BREAK CASE TORSO_P0_DENIM_SHIRT_10 tlLabel = "TORSO_P0_20_10" iDraw = 20 iTex = 10 cost = 90 BREAK CASE TORSO_P0_DENIM_SHIRT_11 tlLabel = "TORSO_P0_20_11" iDraw = 20 iTex = 11 cost = 95 BREAK CASE TORSO_P0_DENIM_SHIRT_12 tlLabel = "TORSO_P0_20_12" iDraw = 20 iTex = 12 cost = 39 BREAK CASE TORSO_P0_DENIM_SHIRT_13 tlLabel = "TORSO_P0_20_13" iDraw = 20 iTex = 13 cost = 95 BREAK CASE TORSO_P0_DENIM_SHIRT_14 tlLabel = "TORSO_P0_20_14" iDraw = 20 iTex = 14 cost = 35 BREAK CASE TORSO_P0_DENIM_SHIRT_15 tlLabel = "TORSO_P0_20_15" iDraw = 20 iTex = 15 cost = 95 BREAK CASE TORSO_P0_HOODIE_0 tlLabel = "TORSO_P0_21_0" iDraw = 21 iTex = 0 cost = 88 BREAK CASE TORSO_P0_HOODIE_1 tlLabel = "TORSO_P0_21_1" iDraw = 21 iTex = 1 cost = 60 BREAK CASE TORSO_P0_HOODIE_2 tlLabel = "TORSO_P0_21_2" iDraw = 21 iTex = 2 cost = 70 BREAK CASE TORSO_P0_HOODIE_3 tlLabel = "TORSO_P0_21_3" iDraw = 21 iTex = 3 cost = 80 BREAK CASE TORSO_P0_HOODIE_4 tlLabel = "TORSO_P0_21_4" iDraw = 21 iTex = 4 cost = 90 BREAK CASE TORSO_P0_HOODIE_5 tlLabel = "TORSO_P0_21_5" iDraw = 21 iTex = 5 cost = 80 BREAK CASE TORSO_P0_HOODIE_6 tlLabel = "TORSO_P0_21_6" iDraw = 21 iTex = 6 cost = 70 BREAK CASE TORSO_P0_HOODIE_7 tlLabel = "TORSO_P0_21_7" iDraw = 21 iTex = 7 cost = 95 BREAK CASE TORSO_P0_HOODIE_8 tlLabel = "TORSO_P0_21_8" iDraw = 21 iTex = 8 cost = 105 BREAK CASE TORSO_P0_HOODIE_9 tlLabel = "TORSO_P0_21_9" iDraw = 21 iTex = 9 cost = 95 BREAK CASE TORSO_P0_HOODIE_10 tlLabel = "TORSO_P0_21_10" iDraw = 21 iTex = 10 cost = 110 BREAK CASE TORSO_P0_HOODIE_11 tlLabel = "TORSO_P0_21_11" iDraw = 21 iTex = 11 cost = 98 BREAK CASE TORSO_P0_HOODIE_12 tlLabel = "TORSO_P0_21_12" iDraw = 21 iTex = 12 cost = 88 BREAK CASE TORSO_P0_HOODIE_13 tlLabel = "TORSO_P0_21_13" iDraw = 21 iTex = 13 cost = 98 BREAK CASE TORSO_P0_HOODIE_14 tlLabel = "TORSO_P0_21_14" iDraw = 21 iTex = 14 cost = 110 BREAK CASE TORSO_P0_HOODIE_15 tlLabel = "TORSO_P0_21_15" iDraw = 21 iTex = 15 cost = 98 BREAK CASE TORSO_P0_LEATHER_JACKET_0 tlLabel = "TORSO_P0_22_0" iDraw = 22 iTex = 0 BREAK CASE TORSO_P0_LEATHER_JACKET_1 tlLabel = "TORSO_P0_22_1" iDraw = 22 iTex = 1 cost = 4950 BREAK CASE TORSO_P0_LEATHER_JACKET_2 tlLabel = "TORSO_P0_22_2" iDraw = 22 iTex = 2 cost = 4195 BREAK CASE TORSO_P0_LEATHER_JACKET_3 tlLabel = "TORSO_P0_22_3" iDraw = 22 iTex = 3 cost = 3195 BREAK CASE TORSO_P0_LEATHER_JACKET_4 tlLabel = "TORSO_P0_22_4" iDraw = 22 iTex = 4 cost = 2950 BREAK CASE TORSO_P0_LEATHER_JACKET_5 tlLabel = "TORSO_P0_22_5" iDraw = 22 iTex = 5 cost = 3950 BREAK CASE TORSO_P0_SUIT_JACKET tlLabel = "TORSO_P0_23_0" iDraw = 23 iTex = 0 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_1 tlLabel = "TORSO_P0_23_1" iDraw = 23 iTex = 1 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_2 tlLabel = "TORSO_P0_23_2" iDraw = 23 iTex = 2 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_3 tlLabel = "TORSO_P0_23_3" iDraw = 23 iTex = 3 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_4 tlLabel = "TORSO_P0_23_4" iDraw = 23 iTex = 4 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_5 tlLabel = "TORSO_P0_23_5" iDraw = 23 iTex = 5 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_6 tlLabel = "TORSO_P0_23_6" iDraw = 23 iTex = 6 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_7 tlLabel = "TORSO_P0_23_7" iDraw = 23 iTex = 7 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_8 tlLabel = "TORSO_P0_23_8" iDraw = 23 iTex = 8 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_9 tlLabel = "TORSO_P0_23_9" iDraw = 23 iTex = 9 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_10 tlLabel = "TORSO_P0_23_10" iDraw = 23 iTex = 10 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_11 tlLabel = "TORSO_P0_23_11" iDraw = 23 iTex = 11 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_12 tlLabel = "TORSO_P0_23_12" iDraw = 23 iTex = 12 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_13 tlLabel = "TORSO_P0_23_13" iDraw = 23 iTex = 13 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_14 tlLabel = "TORSO_P0_23_14" iDraw = 23 iTex = 14 cost = 3200 BREAK CASE TORSO_P0_SUIT_JACKET_15 tlLabel = "TORSO_P0_23_15" iDraw = 23 iTex = 15 cost = 3200 BREAK CASE TORSO_P0_VNECK tlLabel = "TORSO_P0_24_0" iDraw = 24 iTex = 0 cost = 1350 BREAK CASE TORSO_P0_VNECK_1 tlLabel = "TORSO_P0_24_1" iDraw = 24 iTex = 1 cost = 1400 BREAK CASE TORSO_P0_VNECK_2 tlLabel = "TORSO_P0_24_2" iDraw = 24 iTex = 2 cost = 1200 BREAK CASE TORSO_P0_VNECK_3 tlLabel = "TORSO_P0_24_3" iDraw = 24 iTex = 3 cost = 1250 BREAK CASE TORSO_P0_VNECK_4 tlLabel = "TORSO_P0_24_4" iDraw = 24 iTex = 4 cost = 1350 BREAK CASE TORSO_P0_VNECK_5 tlLabel = "TORSO_P0_24_5" iDraw = 24 iTex = 5 cost = 1300 BREAK CASE TORSO_P0_VNECK_6 tlLabel = "TORSO_P0_24_6" iDraw = 24 iTex = 6 cost = 1380 BREAK CASE TORSO_P0_VNECK_7 tlLabel = "TORSO_P0_24_7" iDraw = 24 iTex = 7 cost = 1340 BREAK CASE TORSO_P0_VNECK_8 tlLabel = "TORSO_P0_24_8" iDraw = 24 iTex = 8 cost = 1380 BREAK CASE TORSO_P0_VNECK_9 tlLabel = "TORSO_P0_24_9" iDraw = 24 iTex = 9 cost = 1250 BREAK CASE TORSO_P0_DRESS_SHIRT tlLabel = "TORSO_P0_25_0" iDraw = 25 iTex = 0 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_1 tlLabel = "TORSO_P0_25_1" iDraw = 25 iTex = 1 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_2 tlLabel = "TORSO_P0_25_2" iDraw = 25 iTex = 2 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_3 tlLabel = "TORSO_P0_25_3" iDraw = 25 iTex = 3 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_4 tlLabel = "TORSO_P0_25_4" iDraw = 25 iTex = 4 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_5 tlLabel = "TORSO_P0_25_5" iDraw = 25 iTex = 5 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_6 tlLabel = "TORSO_P0_25_6" iDraw = 25 iTex = 6 cost = 840 BREAK CASE TORSO_P0_DRESS_SHIRT_7 tlLabel = "TORSO_P0_25_7" iDraw = 25 iTex = 7 cost = 840 BREAK CASE TORSO_P0_BARE_CHEST tlLabel = "TORSO_P0_26_0" iDraw = 26 iTex = 0 BREAK CASE TORSO_P0_EPSILON tlLabel = "NO_LABEL" iDraw = 27 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_TENNIS tlLabel = "TORSO_P0_28_0" iDraw = 28 iTex = 0 BREAK CASE TORSO_P0_TENNIS_1 tlLabel = "TORSO_P0_28_1" iDraw = 28 iTex = 1 cost = 130 BREAK CASE TORSO_P0_TENNIS_2 tlLabel = "TORSO_P0_28_2" iDraw = 28 iTex = 2 cost = 110 BREAK CASE TORSO_P0_MOVIE_TUXEDO tlLabel = "TORSO_P0_29_0" iDraw = 29 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P0_HEAVY_JACKET tlLabel = "TORSO_P0_30_0" iDraw = 30 iTex = 0 cost = 290 BREAK CASE TORSO_P0_HEAVY_JACKET_1 tlLabel = "TORSO_P0_30_1" iDraw = 30 iTex = 1 cost = 320 BREAK CASE TORSO_P0_CHECK_SHIRT_0 tlLabel = "TORSO_P0_31_0" iDraw = 31 iTex = 0 cost = 59 BREAK CASE TORSO_P0_CHECK_SHIRT_1 tlLabel = "TORSO_P0_31_1" iDraw = 31 iTex = 1 cost = 55 BREAK CASE TORSO_P0_CHECK_SHIRT_2 tlLabel = "TORSO_P0_31_2" iDraw = 31 iTex = 2 cost = 59 BREAK CASE TORSO_P0_CHECK_SHIRT_3 tlLabel = "TORSO_P0_31_3" iDraw = 31 iTex = 3 cost = 49 BREAK DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_TORSO(PED_COMP_NAME_ENUM eItem) IF eItem < TORSO_P0_NAVY_PARAMEDIC FILL_PED_COMP_DATA_MICHAEL_TORSO_1(eItem) ELSE FILL_PED_COMP_DATA_MICHAEL_TORSO_2(eItem) ENDIF IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(COMP_TYPE_TORSO, eItem, TORSO_P0_DLC) ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_LEGS(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_LEGS g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE LEGS_P0_GREY_SUIT tlLabel = "LEGS_P0_0_0" iDraw = 0 iTex = 0 BREAK CASE LEGS_P0_GREY_SUIT_1 tlLabel = "LEGS_P0_0_0" iDraw = 0 iTex = 1 BREAK CASE LEGS_P0_GREY_SUIT_2 tlLabel = "LEGS_P0_0_2" iDraw = 0 iTex = 2 BREAK CASE LEGS_P0_GREY_SUIT_3 tlLabel = "LEGS_P0_0_3" iDraw = 0 iTex = 3 BREAK CASE LEGS_P0_GREY_SUIT_4 tlLabel = "LEGS_P0_0_4" iDraw = 0 iTex = 4 BREAK CASE LEGS_P0_GREY_SUIT_5 tlLabel = "LEGS_P0_0_5" iDraw = 0 iTex = 5 BREAK CASE LEGS_P0_GREY_SUIT_6 tlLabel = "LEGS_P0_0_6" iDraw = 0 iTex = 6 BREAK CASE LEGS_P0_GREY_SUIT_7 tlLabel = "LEGS_P0_0_7" iDraw = 0 iTex = 7 BREAK CASE LEGS_P0_GREY_SUIT_8 tlLabel = "LEGS_P0_0_8" iDraw = 0 iTex = 8 BREAK CASE LEGS_P0_GREY_SUIT_9 tlLabel = "LEGS_P0_0_9" iDraw = 0 iTex = 9 BREAK CASE LEGS_P0_GREY_SUIT_10 tlLabel = "LEGS_P0_0_10" iDraw = 0 iTex = 10 BREAK CASE LEGS_P0_GREY_SUIT_11 tlLabel = "LEGS_P0_0_11" iDraw = 0 iTex = 11 BREAK CASE LEGS_P0_GREY_SUIT_12 tlLabel = "LEGS_P0_0_12" iDraw = 0 iTex = 12 BREAK CASE LEGS_P0_GREY_SUIT_13 tlLabel = "LEGS_P0_0_13" iDraw = 0 iTex = 13 BREAK CASE LEGS_P0_GREY_SUIT_14 tlLabel = "LEGS_P0_0_14" iDraw = 0 iTex = 14 BREAK CASE LEGS_P0_GREY_SUIT_15 tlLabel = "LEGS_P0_0_15" iDraw = 0 iTex = 15 BREAK CASE LEGS_P0_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_NAVY_JANITOR tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_SCUBA tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_SCUBA_BRIGHT tlLabel = "NO_LABEL" iDraw = 3 iTex = 1 bOutfitOnly = TRUE BREAK CASE LEGS_P0_STEALTH tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BALLISTICS tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_NAVY_COP tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_CHINOS_0 tlLabel = "LEGS_P0_7_0" iDraw = 7 iTex = 0 cost = 115 BREAK CASE LEGS_P0_CHINOS_1 tlLabel = "LEGS_P0_7_1" iDraw = 7 iTex = 1 cost = 115 BREAK CASE LEGS_P0_CHINOS_2 tlLabel = "LEGS_P0_7_2" iDraw = 7 iTex = 2 cost = 128 BREAK CASE LEGS_P0_CHINOS_3 tlLabel = "LEGS_P0_7_3" iDraw = 7 iTex = 3 cost = 118 BREAK CASE LEGS_P0_CHINOS_4 tlLabel = "LEGS_P0_7_4" iDraw = 7 iTex = 4 cost = 125 BREAK CASE LEGS_P0_CHINOS_5 tlLabel = "LEGS_P0_7_5" iDraw = 7 iTex = 5 cost = 128 BREAK CASE LEGS_P0_CHINOS_6 tlLabel = "LEGS_P0_7_6" iDraw = 7 iTex = 6 cost = 128 BREAK CASE LEGS_P0_CHINOS_7 tlLabel = "LEGS_P0_7_7" iDraw = 7 iTex = 7 cost = 125 BREAK CASE LEGS_P0_NAVY_PARAMEDIC tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_SECURITY tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_EXTERMINATOR tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BOILER_SUIT_1 tlLabel = "NO_LABEL" iDraw = 11 iTex = 1 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BOILER_SUIT_2 tlLabel = "NO_LABEL" iDraw = 11 iTex = 2 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BOILER_SUIT_3 tlLabel = "NO_LABEL" iDraw = 11 iTex = 3 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BOILER_SUIT_4 tlLabel = "NO_LABEL" iDraw = 11 iTex = 4 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BOILER_SUIT_5 tlLabel = "NO_LABEL" iDraw = 11 iTex = 5 bOutfitOnly = TRUE BREAK CASE LEGS_P0_TRIATHLON tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_CARGO_SHORTS_0 tlLabel = "LEGS_P0_13_0" iDraw = 13 iTex = 0 cost = 68 BREAK CASE LEGS_P0_CARGO_SHORTS_1 tlLabel = "LEGS_P0_13_1" iDraw = 13 iTex = 1 cost = 68 BREAK CASE LEGS_P0_CARGO_SHORTS_2 tlLabel = "LEGS_P0_13_2" iDraw = 13 iTex = 2 cost = 68 BREAK CASE LEGS_P0_CARGO_SHORTS_3 tlLabel = "LEGS_P0_13_3" iDraw = 13 iTex = 3 cost = 68 BREAK CASE LEGS_P0_CARGO_SHORTS_4 tlLabel = "LEGS_P0_13_4" iDraw = 13 iTex = 4 cost = 68 BREAK CASE LEGS_P0_LUDENDORFF tlLabel = "NO_LABEL" iDraw = 14 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_GOLF tlLabel = "LEGS_P0_15_0" iDraw = 15 iTex = 0 BREAK CASE LEGS_P0_GOLF_1 tlLabel = "LEGS_P0_15_1" iDraw = 15 iTex = 1 cost = 550 BREAK CASE LEGS_P0_GOLF_2 tlLabel = "LEGS_P0_15_2" iDraw = 15 iTex = 2 cost = 650 BREAK CASE LEGS_P0_GOLF_3 tlLabel = "LEGS_P0_15_3" iDraw = 15 iTex = 3 cost = 875 BREAK CASE LEGS_P0_GOLF_4 tlLabel = "LEGS_P0_15_4" iDraw = 15 iTex = 4 cost = 820 BREAK CASE LEGS_P0_GOLF_5 tlLabel = "LEGS_P0_15_5" iDraw = 15 iTex = 5 cost = 720 BREAK CASE LEGS_P0_GOLF_6 tlLabel = "LEGS_P0_15_6" iDraw = 15 iTex = 6 cost = 750 BREAK CASE LEGS_P0_GOLF_7 tlLabel = "LEGS_P0_15_7" iDraw = 15 iTex = 7 cost = 850 BREAK CASE LEGS_P0_YOGA_0 tlLabel = "LEGS_P0_16_0" iDraw = 16 iTex = 0 BREAK CASE LEGS_P0_YOGA_1 tlLabel = "LEGS_P0_16_1" iDraw = 16 iTex = 1 cost = 48 BREAK CASE LEGS_P0_YOGA_2 tlLabel = "LEGS_P0_16_2" iDraw = 16 iTex = 2 cost = 48 BREAK CASE LEGS_P0_YOGA_3 tlLabel = "LEGS_P0_16_3" iDraw = 16 iTex = 3 cost = 38 BREAK CASE LEGS_P0_YOGA_4 tlLabel = "LEGS_P0_16_4" iDraw = 16 iTex = 4 cost = 38 BREAK CASE LEGS_P0_YOGA_5 tlLabel = "LEGS_P0_16_5" iDraw = 16 iTex = 5 cost = 42 BREAK CASE LEGS_P0_YOGA_6 tlLabel = "LEGS_P0_16_6" iDraw = 16 iTex = 6 cost = 58 BREAK CASE LEGS_P0_YOGA_7 tlLabel = "LEGS_P0_16_7" iDraw = 16 iTex = 7 cost = 46 BREAK CASE LEGS_P0_YOGA_8 tlLabel = "LEGS_P0_16_8" iDraw = 16 iTex = 8 cost = 46 BREAK CASE LEGS_P0_YOGA_9 tlLabel = "LEGS_P0_16_9" iDraw = 16 iTex = 9 cost = 46 BREAK CASE LEGS_P0_YOGA_10 tlLabel = "LEGS_P0_16_10" iDraw = 16 iTex = 10 cost = 68 BREAK CASE LEGS_P0_YOGA_11 tlLabel = "LEGS_P0_16_11" iDraw = 16 iTex = 11 cost = 58 BREAK CASE LEGS_P0_YOGA_12 tlLabel = "LEGS_P0_16_12" iDraw = 16 iTex = 12 cost = 50 BREAK CASE LEGS_P0_YOGA_13 tlLabel = "LEGS_P0_16_13" iDraw = 16 iTex = 13 cost = 68 BREAK CASE LEGS_P0_YOGA_14 tlLabel = "LEGS_P0_16_14" iDraw = 16 iTex = 14 cost = 68 BREAK CASE LEGS_P0_YOGA_15 tlLabel = "LEGS_P0_16_15" iDraw = 16 iTex = 15 cost = 42 BREAK CASE LEGS_P0_MOTO_X tlLabel = "NO_LABEL" iDraw = 17 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BED tlLabel = "LEGS_P0_18_0" iDraw = 18 iTex = 0 BREAK CASE LEGS_P0_BOXERS_1 tlLabel = "LEGS_P0_18_1" iDraw = 18 iTex = 1 cost = 250 BREAK CASE LEGS_P0_BOXERS_2 tlLabel = "LEGS_P0_18_2" iDraw = 18 iTex = 2 cost = 250 BREAK CASE LEGS_P0_BOXERS_3 tlLabel = "LEGS_P0_18_3" iDraw = 18 iTex = 3 cost = 290 BREAK CASE LEGS_P0_BOXERS_4 tlLabel = "LEGS_P0_18_4" iDraw = 18 iTex = 4 cost = 270 BREAK CASE LEGS_P0_BOXERS_5 tlLabel = "LEGS_P0_18_5" iDraw = 18 iTex = 5 cost = 270 BREAK CASE LEGS_P0_BOXERS_6 tlLabel = "LEGS_P0_18_6" iDraw = 18 iTex = 6 cost = 15 BREAK CASE LEGS_P0_BOXERS_7 tlLabel = "LEGS_P0_18_7" iDraw = 18 iTex = 7 cost = 12 BREAK CASE LEGS_P0_EPSILON tlLabel = "NO_LABEL" iDraw = 19 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_CASUAL_JEANS tlLabel = "LEGS_P0_20_0" iDraw = 20 iTex = 0 BREAK CASE LEGS_P0_CASUAL_JEANS_1 tlLabel = "LEGS_P0_20_1" iDraw = 20 iTex = 1 cost = 118 BREAK CASE LEGS_P0_CASUAL_JEANS_2 tlLabel = "LEGS_P0_20_2" iDraw = 20 iTex = 2 cost = 110 BREAK CASE LEGS_P0_REGULAR_PANTS tlLabel = "LEGS_P0_21_0" iDraw = 21 iTex = 0 cost = 88 BREAK CASE LEGS_P0_REGULAR_PANTS_1 tlLabel = "LEGS_P0_21_1" iDraw = 21 iTex = 1 cost = 95 BREAK CASE LEGS_P0_REGULAR_PANTS_2 tlLabel = "LEGS_P0_21_2" iDraw = 21 iTex = 2 cost = 95 BREAK CASE LEGS_P0_REGULAR_PANTS_3 tlLabel = "LEGS_P0_21_3" iDraw = 21 iTex = 3 cost = 98 BREAK CASE LEGS_P0_SMART_JEANS tlLabel = "LEGS_P0_22_0" iDraw = 22 iTex = 0 cost = 140 BREAK CASE LEGS_P0_TENNIS tlLabel = "LEGS_P0_23_0" iDraw = 23 iTex = 0 BREAK CASE LEGS_P0_TENNIS_1 tlLabel = "LEGS_P0_23_1" iDraw = 23 iTex = 1 cost = 150 BREAK CASE LEGS_P0_TENNIS_2 tlLabel = "LEGS_P0_23_2" iDraw = 23 iTex = 2 cost = 130 BREAK CASE LEGS_P0_NAKED tlLabel = "NO_LABEL" iDraw = 24 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_BLACK_TROUSERS tlLabel = "NO_LABEL" iDraw = 25 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_JEANS tlLabel = "NO_LABEL" iDraw = 26 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P0_YOGA_BAREFOOT tlLabel = "LEGS_P0_27_0" iDraw = 27 iTex = 0 BREAK CASE LEGS_P0_LONG_SHORTS_0 tlLabel = "LEGS_P0_28_0" iDraw = 28 iTex = 0 cost = 45 BREAK CASE LEGS_P0_LONG_SHORTS_1 tlLabel = "LEGS_P0_28_1" iDraw = 28 iTex = 1 cost = 48 BREAK CASE LEGS_P0_LONG_SHORTS_2 tlLabel = "LEGS_P0_28_2" iDraw = 28 iTex = 2 cost = 48 BREAK CASE LEGS_P0_LONG_SHORTS_3 tlLabel = "LEGS_P0_28_3" iDraw = 28 iTex = 3 cost = 52 BREAK CASE LEGS_P0_LONG_SHORTS_4 tlLabel = "LEGS_P0_28_4" iDraw = 28 iTex = 4 cost = 52 BREAK CASE LEGS_P0_LONG_SHORTS_5 tlLabel = "LEGS_P0_28_5" iDraw = 28 iTex = 5 cost = 55 BREAK CASE LEGS_P0_LONG_SHORTS_6 tlLabel = "LEGS_P0_28_6" iDraw = 28 iTex = 6 cost = 55 BREAK CASE LEGS_P0_LONG_SHORTS_7 tlLabel = "LEGS_P0_28_7" iDraw = 28 iTex = 7 cost = 55 BREAK CASE LEGS_P0_LONG_SHORTS_8 tlLabel = "LEGS_P0_28_8" iDraw = 28 iTex = 8 cost = 58 BREAK CASE LEGS_P0_LONG_SHORTS_9 tlLabel = "LEGS_P0_28_9" iDraw = 28 iTex = 9 cost = 58 BREAK CASE LEGS_P0_LONG_SHORTS_10 tlLabel = "LEGS_P0_28_10" iDraw = 28 iTex = 10 cost = 60 BREAK CASE LEGS_P0_LONG_SHORTS_11 tlLabel = "LEGS_P0_28_11" iDraw = 28 iTex = 11 cost = 60 BREAK CASE LEGS_P0_LONG_SHORTS_12 tlLabel = "LEGS_P0_28_12" iDraw = 28 iTex = 12 cost = 62 BREAK CASE LEGS_P0_LONG_SHORTS_13 tlLabel = "LEGS_P0_28_13" iDraw = 28 iTex = 13 cost = 62 BREAK CASE LEGS_P0_LONG_SHORTS_14 tlLabel = "LEGS_P0_28_14" iDraw = 28 iTex = 14 cost = 65 BREAK CASE LEGS_P0_LONG_SHORTS_15 tlLabel = "LEGS_P0_28_15" iDraw = 28 iTex = 15 cost = 65 BREAK CASE LEGS_P0_JEANS_BAREFEET tlLabel = "NO_LABEL" iDraw = 29 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_FEET(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_FEET g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE FEET_P0_BLACK_SHOES tlLabel = "FEET_P0_0_0" iDraw = 0 iTex = 0 BREAK CASE FEET_P0_BLACK_SHOES_1 tlLabel = "FEET_P0_0_1" iDraw = 0 iTex = 1 cost = 665 BREAK CASE FEET_P0_BLACK_SHOES_2 tlLabel = "FEET_P0_0_2" iDraw = 0 iTex = 2 cost = 620 BREAK CASE FEET_P0_BLACK_SHOES_3 tlLabel = "FEET_P0_0_3" iDraw = 0 iTex = 3 cost = 540 BREAK CASE FEET_P0_BLACK_SHOES_4 tlLabel = "FEET_P0_0_4" iDraw = 0 iTex = 4 cost = 580 BREAK CASE FEET_P0_BLACK_SHOES_5 tlLabel = "FEET_P0_0_5" iDraw = 0 iTex = 5 cost = 650 BREAK CASE FEET_P0_1 tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE FEET_P0_BED tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 BREAK CASE FEET_P0_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_BLACK_TRACKSUIT tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_BALLISTICS tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_PROGRAMMER tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_7 tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_TRIATHLON tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_MOTO_X tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_ARM_GUARDS tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_MIME tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_SCUBA_LAND tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_DRESS_LOAFERS tlLabel = "FEET_P0_13_0" iDraw = 13 iTex = 0 BREAK CASE FEET_P0_BOOTS tlLabel = "NO_LABEL" iDraw = 14 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_SKATE_SHOES tlLabel = "FEET_P0_15_0" iDraw = 15 iTex = 0 BREAK CASE FEET_P0_SKATE_SHOES_1 tlLabel = "FEET_P0_15_1" iDraw = 15 iTex = 1 cost = 64 BREAK CASE FEET_P0_SKATE_SHOES_2 tlLabel = "FEET_P0_15_2" iDraw = 15 iTex = 2 cost = 56 BREAK CASE FEET_P0_SKATE_SHOES_3 tlLabel = "FEET_P0_15_3" iDraw = 15 iTex = 3 cost = 69 BREAK CASE FEET_P0_SKATE_SHOES_4 tlLabel = "FEET_P0_15_4" iDraw = 15 iTex = 4 cost = 59 BREAK CASE FEET_P0_SKATE_SHOES_5 tlLabel = "FEET_P0_15_5" iDraw = 15 iTex = 5 cost = 62 BREAK CASE FEET_P0_SKATE_SHOES_6 tlLabel = "FEET_P0_15_6" iDraw = 15 iTex = 6 cost = 74 BREAK CASE FEET_P0_SKATE_SHOES_7 tlLabel = "FEET_P0_15_7" iDraw = 15 iTex = 7 cost = 68 BREAK CASE FEET_P0_SKATE_SHOES_8 tlLabel = "FEET_P0_15_8" iDraw = 15 iTex = 8 cost = 72 BREAK CASE FEET_P0_SKATE_SHOES_9 tlLabel = "FEET_P0_15_9" iDraw = 15 iTex = 9 cost = 70 BREAK CASE FEET_P0_COMFY_SHOES_0 tlLabel = "FEET_P0_16_0" iDraw = 16 iTex = 0 cost = 48 BREAK CASE FEET_P0_COMFY_SHOES_1 tlLabel = "FEET_P0_16_1" iDraw = 16 iTex = 1 cost = 48 BREAK CASE FEET_P0_COMFY_SHOES_2 tlLabel = "FEET_P0_16_2" iDraw = 16 iTex = 2 cost = 55 BREAK CASE FEET_P0_COMFY_SHOES_3 tlLabel = "FEET_P0_16_3" iDraw = 16 iTex = 3 cost = 75 BREAK CASE FEET_P0_COMFY_SHOES_4 tlLabel = "FEET_P0_16_4" iDraw = 16 iTex = 4 cost = 65 BREAK CASE FEET_P0_COMFY_SHOES_5 tlLabel = "FEET_P0_16_5" iDraw = 16 iTex = 5 cost = 68 BREAK CASE FEET_P0_COMFY_SHOES_6 tlLabel = "FEET_P0_16_6" iDraw = 16 iTex = 6 cost = 58 BREAK CASE FEET_P0_COMFY_SHOES_7 tlLabel = "FEET_P0_16_7" iDraw = 16 iTex = 7 cost = 68 BREAK CASE FEET_P0_SECURITY_BOOTS tlLabel = "NO_LABEL" iDraw = 17 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P0_OXFORDS_0 tlLabel = "FEET_P0_18_0" iDraw = 18 iTex = 0 cost = 790 BREAK CASE FEET_P0_OXFORDS_1 tlLabel = "FEET_P0_18_1" iDraw = 18 iTex = 1 cost = 750 BREAK CASE FEET_P0_OXFORDS_2 tlLabel = "FEET_P0_18_2" iDraw = 18 iTex = 2 cost = 860 BREAK CASE FEET_P0_OXFORDS_3 tlLabel = "FEET_P0_18_3" iDraw = 18 iTex = 3 cost = 750 BREAK CASE FEET_P0_OXFORDS_4 tlLabel = "FEET_P0_18_4" iDraw = 18 iTex = 4 cost = 790 BREAK CASE FEET_P0_OXFORDS_5 tlLabel = "FEET_P0_18_5" iDraw = 18 iTex = 5 cost = 840 BREAK CASE FEET_P0_OXFORDS_6 tlLabel = "FEET_P0_18_6" iDraw = 18 iTex = 6 cost = 820 BREAK CASE FEET_P0_OXFORDS_7 tlLabel = "FEET_P0_18_7" iDraw = 18 iTex = 7 cost = 800 BREAK CASE FEET_P0_OXFORDS_8 tlLabel = "FEET_P0_18_8" iDraw = 18 iTex = 8 cost = 850 BREAK CASE FEET_P0_OXFORDS_9 tlLabel = "FEET_P0_18_9" iDraw = 18 iTex = 9 cost = 870 BREAK CASE FEET_P0_OXFORDS_10 tlLabel = "FEET_P0_18_10" iDraw = 18 iTex = 10 cost = 720 BREAK CASE FEET_P0_OXFORDS_11 tlLabel = "FEET_P0_18_11" iDraw = 18 iTex = 11 cost = 740 BREAK CASE FEET_P0_OXFORDS_12 tlLabel = "FEET_P0_18_12" iDraw = 18 iTex = 12 cost = 800 BREAK CASE FEET_P0_OXFORDS_13 tlLabel = "FEET_P0_18_13" iDraw = 18 iTex = 13 cost = 750 BREAK CASE FEET_P0_OXFORDS_14 tlLabel = "FEET_P0_18_14" iDraw = 18 iTex = 14 cost = 770 BREAK CASE FEET_P0_OXFORDS_15 tlLabel = "FEET_P0_18_15" iDraw = 18 iTex = 15 cost = 860 BREAK CASE FEET_P0_SQ_LOAFERS_0 tlLabel = "FEET_P0_19_0" iDraw = 19 iTex = 0 cost = 850 BREAK CASE FEET_P0_SQ_LOAFERS_1 tlLabel = "FEET_P0_19_1" iDraw = 19 iTex = 1 cost = 800 BREAK CASE FEET_P0_SQ_LOAFERS_2 tlLabel = "FEET_P0_19_2" iDraw = 19 iTex = 2 cost = 780 BREAK CASE FEET_P0_SQ_LOAFERS_3 tlLabel = "FEET_P0_19_3" iDraw = 19 iTex = 3 cost = 890 BREAK CASE FEET_P0_SQ_LOAFERS_4 tlLabel = "FEET_P0_19_4" iDraw = 19 iTex = 4 cost = 820 BREAK CASE FEET_P0_SQ_LOAFERS_5 tlLabel = "FEET_P0_19_5" iDraw = 19 iTex = 5 cost = 840 BREAK CASE FEET_P0_SQ_LOAFERS_6 tlLabel = "FEET_P0_19_6" iDraw = 19 iTex = 6 cost = 870 BREAK CASE FEET_P0_SQ_LOAFERS_7 tlLabel = "FEET_P0_19_7" iDraw = 19 iTex = 7 cost = 930 BREAK CASE FEET_P0_SQ_LOAFERS_8 tlLabel = "FEET_P0_19_8" iDraw = 19 iTex = 8 cost = 880 BREAK CASE FEET_P0_SQ_LOAFERS_9 tlLabel = "FEET_P0_19_9" iDraw = 19 iTex = 9 cost = 900 BREAK CASE FEET_P0_SQ_LOAFERS_10 tlLabel = "FEET_P0_19_10" iDraw = 19 iTex = 10 cost = 920 BREAK CASE FEET_P0_SQ_LOAFERS_11 tlLabel = "FEET_P0_19_11" iDraw = 19 iTex = 11 cost = 970 BREAK CASE FEET_P0_SQ_LOAFERS_12 tlLabel = "FEET_P0_19_12" iDraw = 19 iTex = 12 cost = 990 BREAK CASE FEET_P0_SQ_LOAFERS_13 tlLabel = "FEET_P0_19_13" iDraw = 19 iTex = 13 cost = 960 BREAK CASE FEET_P0_SQ_LOAFERS_14 tlLabel = "FEET_P0_19_14" iDraw = 19 iTex = 14 cost = 980 BREAK CASE FEET_P0_SQ_LOAFERS_15 tlLabel = "FEET_P0_19_15" iDraw = 19 iTex = 15 cost = 950 BREAK CASE FEET_P0_WINGTIPS_0 tlLabel = "FEET_P0_20_0" iDraw = 20 iTex = 0 cost = 110 BREAK CASE FEET_P0_WINGTIPS_1 tlLabel = "FEET_P0_20_1" iDraw = 20 iTex = 1 cost = 115 BREAK CASE FEET_P0_WINGTIPS_2 tlLabel = "FEET_P0_20_2" iDraw = 20 iTex = 2 cost = 120 BREAK CASE FEET_P0_WINGTIPS_3 tlLabel = "FEET_P0_20_3" iDraw = 20 iTex = 3 cost = 110 BREAK CASE FEET_P0_WINGTIPS_4 tlLabel = "FEET_P0_20_4" iDraw = 20 iTex = 4 cost = 125 BREAK CASE FEET_P0_WINGTIPS_5 tlLabel = "FEET_P0_20_5" iDraw = 20 iTex = 5 cost = 128 BREAK CASE FEET_P0_WINGTIPS_6 tlLabel = "FEET_P0_20_6" iDraw = 20 iTex = 6 cost = 135 BREAK CASE FEET_P0_WINGTIPS_7 tlLabel = "FEET_P0_20_7" iDraw = 20 iTex = 7 cost = 130 BREAK CASE FEET_P0_WINGTIPS_8 tlLabel = "FEET_P0_20_8" iDraw = 20 iTex = 8 cost = 145 BREAK CASE FEET_P0_WINGTIPS_9 tlLabel = "FEET_P0_20_9" iDraw = 20 iTex = 9 cost = 110 BREAK CASE FEET_P0_WINGTIPS_10 tlLabel = "FEET_P0_20_10" iDraw = 20 iTex = 10 cost = 120 BREAK CASE FEET_P0_WINGTIPS_11 tlLabel = "FEET_P0_20_11" iDraw = 20 iTex = 11 cost = 150 BREAK CASE FEET_P0_WINGTIPS_12 tlLabel = "FEET_P0_20_12" iDraw = 20 iTex = 12 cost = 125 BREAK CASE FEET_P0_WINGTIPS_13 tlLabel = "FEET_P0_20_13" iDraw = 20 iTex = 13 cost = 120 BREAK CASE FEET_P0_WINGTIPS_14 tlLabel = "FEET_P0_20_14" iDraw = 20 iTex = 14 cost = 130 BREAK CASE FEET_P0_WINGTIPS_15 tlLabel = "FEET_P0_20_15" iDraw = 20 iTex = 15 cost = 110 BREAK CASE FEET_P0_LOAFERS_0 tlLabel = "FEET_P0_21_0" iDraw = 21 iTex = 0 cost = 720 BREAK CASE FEET_P0_LOAFERS_1 tlLabel = "FEET_P0_21_1" iDraw = 21 iTex = 1 cost = 680 BREAK CASE FEET_P0_LOAFERS_2 tlLabel = "FEET_P0_21_2" iDraw = 21 iTex = 2 cost = 650 BREAK CASE FEET_P0_LOAFERS_3 tlLabel = "FEET_P0_21_3" iDraw = 21 iTex = 3 cost = 670 BREAK CASE FEET_P0_LOAFERS_4 tlLabel = "FEET_P0_21_4" iDraw = 21 iTex = 4 cost = 700 BREAK CASE FEET_P0_LOAFERS_5 tlLabel = "FEET_P0_21_5" iDraw = 21 iTex = 5 cost = 680 BREAK CASE FEET_P0_LOAFERS_6 tlLabel = "FEET_P0_21_6" iDraw = 21 iTex = 6 cost = 720 BREAK CASE FEET_P0_LOAFERS_7 tlLabel = "FEET_P0_21_7" iDraw = 21 iTex = 7 cost = 740 BREAK CASE FEET_P0_LOAFERS_8 tlLabel = "FEET_P0_21_8" iDraw = 21 iTex = 8 cost = 760 BREAK CASE FEET_P0_LOAFERS_9 tlLabel = "FEET_P0_21_9" iDraw = 21 iTex = 9 cost = 780 BREAK CASE FEET_P0_LOAFERS_10 tlLabel = "FEET_P0_21_10" iDraw = 21 iTex = 10 cost = 750 BREAK CASE FEET_P0_LOAFERS_11 tlLabel = "FEET_P0_21_11" iDraw = 21 iTex = 11 cost = 700 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_HAND(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAND g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE HAND_P0_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE HAND_P0_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_NAVY_PARAMEDIC tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_GOLF tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_GOLF_1 tlLabel = "NO_LABEL" iDraw = 3 iTex = 1 bOutfitOnly = TRUE BREAK CASE HAND_P0_GOLF_2 tlLabel = "NO_LABEL" iDraw = 3 iTex = 2 bOutfitOnly = TRUE BREAK CASE HAND_P0_GOLF_3 tlLabel = "NO_LABEL" iDraw = 3 iTex = 3 bOutfitOnly = TRUE BREAK CASE HAND_P0_GOLF_4 tlLabel = "NO_LABEL" iDraw = 3 iTex = 4 bOutfitOnly = TRUE BREAK CASE HAND_P0_WHITE_GLOVES tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_BROWN_LEATHER tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_PADDED_GLOVES tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_BLACK_GLOVES tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_BLACK_LEATHER_GLOVES tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P0_MOTO_X tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HAND_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_SPECIAL(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE SPECIAL_P0_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE SPECIAL_P0_FIREMAN_ACCS tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_JANITOR_ACCS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_SCUBA_ACCS tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_POUCHES tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_BALLISTICS tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_TIE tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_BALACLAVA tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_SECURITY_ACCS tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_GAS_MASK tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_WATCH_AND_BRACELET tlLabel = "SPEC_P0_10" iDraw = 10 iTex = 0 BREAK CASE SPECIAL_P0_STAR_TATTOOS tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_BACKPACK tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_EPSILON_MEDAL tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_CLOWN_ACCS tlLabel = "NO_LABEL" iDraw = 14 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_PARACHUTE tlLabel = "NO_LABEL" iDraw = 15 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_WATCH_LEATHER_STRAP tlLabel = "SPEC_P0_16" iDraw = 16 iTex = 0 BREAK CASE SPECIAL_P0_CUP tlLabel = "NO_LABEL" iDraw = 17 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_TIE_BLACK tlLabel = "NO_LABEL" iDraw = 18 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_SCARF tlLabel = "NO_LABEL" iDraw = 19 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_LEATHER_BAG tlLabel = "NO_LABEL" iDraw = 20 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_FIREMAN_ACCS_1 tlLabel = "NO_LABEL" iDraw = 21 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_SCUBA_ACCS_1 tlLabel = "NO_LABEL" iDraw = 22 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P0_BALACLAVA_B tlLabel = "NO_LABEL" iDraw = 23 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_SPECIAL2(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL2 g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE SPECIAL2_P0_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE SPECIAL2_P0_BAG_1 tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE SPECIAL2_P0_BAG_1_B tlLabel = "NO_LABEL" iDraw = 1 iTex = 1 BREAK CASE SPECIAL2_P0_BAG_2 tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 BREAK CASE SPECIAL2_P0_HARNESS tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_COP_BELT_1 tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_PARACHUTE_2 tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 BREAK CASE SPECIAL2_P0_COP_BELT_2 tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_SCUBA_HEADGEAR tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_WRESTLER_MASK_0 tlLabel = "SPEC2_P0_08_0" iDraw = 8 iTex = 0 cost = 125 BREAK CASE SPECIAL2_P0_WRESTLER_MASK_1 tlLabel = "SPEC2_P0_08_1" iDraw = 8 iTex = 1 cost = 150 BREAK CASE SPECIAL2_P0_WRESTLER_MASK_2 tlLabel = "SPEC2_P0_08_2" iDraw = 8 iTex = 2 cost = 175 BREAK CASE SPECIAL2_P0_WRESTLER_MASK_3 tlLabel = "SPEC2_P0_08_3" iDraw = 8 iTex = 3 cost = 85 BREAK CASE SPECIAL2_P0_WRESTLER_MASK_4 tlLabel = "SPEC2_P0_08_4" iDraw = 8 iTex = 4 cost = 150 BREAK CASE SPECIAL2_P0_WRESTLER_MASK_5 tlLabel = "SPEC2_P0_08_5" iDraw = 8 iTex = 5 cost = 175 BREAK CASE SPECIAL2_P0_RUCKSACK tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_BAG_3 tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_BAG_3_B tlLabel = "NO_LABEL" iDraw = 10 iTex = 1 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_BAG_4 tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P0_BAG_5 tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL2_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_DECL(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_DECL g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE DECL_P0_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE DECL_P0_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE DECL_P0_NAVY_PARAMEDIC tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 BREAK CASE DECL_P0_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 BREAK CASE DECL_P0_EXTERMINATOR tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 BREAK CASE DECL_P0_COP tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 BREAK CASE DECL_P0_CROWN_LOGO tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 BREAK CASE DECL_P0_T_SHIRT_LOGO_0 tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 BREAK CASE DECL_P0_T_SHIRT_LOGO_1 tlLabel = "NO_LABEL" iDraw = 7 iTex = 1 BREAK CASE DECL_P0_T_SHIRT_LOGO_2 tlLabel = "NO_LABEL" iDraw = 7 iTex = 2 BREAK CASE DECL_P0_T_SHIRT_LOGO_3 tlLabel = "NO_LABEL" iDraw = 7 iTex = 3 BREAK CASE DECL_P0_T_SHIRT_LOGO_4 tlLabel = "NO_LABEL" iDraw = 7 iTex = 4 BREAK CASE DECL_P0_T_SHIRT_LOGO_5 tlLabel = "NO_LABEL" iDraw = 7 iTex = 5 BREAK CASE DECL_P0_T_SHIRT_LOGO_6 tlLabel = "NO_LABEL" iDraw = 7 iTex = 6 BREAK CASE DECL_P0_T_SHIRT_LOGO_7 tlLabel = "NO_LABEL" iDraw = 7 iTex = 7 BREAK CASE DECL_P0_AMMUNATION_0 tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 BREAK CASE DECL_P0_AMMUNATION_1 tlLabel = "NO_LABEL" iDraw = 8 iTex = 1 BREAK CASE DECL_P0_AMMUNATION_2 tlLabel = "NO_LABEL" iDraw = 8 iTex = 2 BREAK CASE DECL_P0_AMMUNATION_3 tlLabel = "NO_LABEL" iDraw = 8 iTex = 3 BREAK CASE DECL_P0_AMMUNATION_4 tlLabel = "NO_LABEL" iDraw = 8 iTex = 4 BREAK CASE DECL_P0_AMMUNATION_5 tlLabel = "NO_LABEL" iDraw = 8 iTex = 5 BREAK CASE DECL_P0_SPORT_0 tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 BREAK CASE DECL_P0_SPORT_1 tlLabel = "NO_LABEL" iDraw = 9 iTex = 1 BREAK CASE DECL_P0_SPORT_2 tlLabel = "NO_LABEL" iDraw = 9 iTex = 2 BREAK CASE DECL_P0_SPORT_3 tlLabel = "NO_LABEL" iDraw = 9 iTex = 3 BREAK CASE DECL_P0_SPORT_4 tlLabel = "NO_LABEL" iDraw = 9 iTex = 4 BREAK CASE DECL_P0_SPORT_5 tlLabel = "NO_LABEL" iDraw = 9 iTex = 5 BREAK CASE DECL_P0_SPORT_6 tlLabel = "NO_LABEL" iDraw = 9 iTex = 6 BREAK CASE DECL_P0_TSHIRT_0 tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 BREAK CASE DECL_P0_TSHIRT_1 tlLabel = "NO_LABEL" iDraw = 10 iTex = 1 BREAK CASE DECL_P0_TSHIRT_2 tlLabel = "NO_LABEL" iDraw = 10 iTex = 2 BREAK CASE DECL_P0_TSHIRT_3 tlLabel = "NO_LABEL" iDraw = 10 iTex = 3 BREAK CASE DECL_P0_TSHIRT_4 tlLabel = "NO_LABEL" iDraw = 10 iTex = 4 BREAK CASE DECL_P0_TSHIRT_5 tlLabel = "NO_LABEL" iDraw = 10 iTex = 5 BREAK CASE DECL_P0_TSHIRT_6 tlLabel = "NO_LABEL" iDraw = 10 iTex = 6 BREAK CASE DECL_P0_TSHIRT_7 tlLabel = "NO_LABEL" iDraw = 10 iTex = 7 BREAK CASE DECL_P0_TSHIRT_8 tlLabel = "DECL_P0_10_8" iDraw = 10 iTex = 8 BREAK CASE DECL_P0_TSHIRT_9 tlLabel = "DECL_P0_10_9" iDraw = 10 iTex = 9 BREAK CASE DECL_P0_TSHIRT_10 tlLabel = "DECL_P0_10_10" iDraw = 10 iTex = 10 BREAK CASE DECL_P0_TSHIRT_11 tlLabel = "DECL_P0_10_11" iDraw = 10 iTex = 11 BREAK CASE DECL_P0_TSHIRT_12 tlLabel = "DECL_P0_10_12" iDraw = 10 iTex = 12 BREAK CASE DECL_P0_TSHIRT_13 tlLabel = "DECL_P0_10_13" iDraw = 10 iTex = 13 BREAK CASE DECL_P0_TSHIRT_14 tlLabel = "DECL_P0_10_14" iDraw = 10 iTex = 14 BREAK CASE DECL_P0_TSHIRT_15 tlLabel = "DECL_P0_10_15" iDraw = 10 iTex = 15 BREAK CASE DECL_P0_MASK tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 BREAK CASE DECL_P0_MASK_1 tlLabel = "NO_LABEL" iDraw = 11 iTex = 1 BREAK CASE DECL_P0_MASK_2 tlLabel = "NO_LABEL" iDraw = 11 iTex = 2 BREAK CASE DECL_P0_MASK_3 tlLabel = "NO_LABEL" iDraw = 11 iTex = 3 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, DECL_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item /// Prices for beard items go in GET_SP_HAIRDO_PRICE() PROC FILL_PED_COMP_DATA_MICHAEL_BERD(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_BERD g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE BERD_P0_NONE tlLabel = "BERD_P0_0_0" iDraw = 0 iTex = 0 BREAK CASE BERD_P0_1_0 tlLabel = "BERD_P0_1_0" iDraw = 1 iTex = 0 BREAK CASE BERD_P0_2_0 tlLabel = "BERD_P0_2_0" iDraw = 2 iTex = 0 BREAK CASE BERD_P0_3_0 tlLabel = "BERD_P0_3_0" iDraw = 3 iTex = 0 BREAK CASE BERD_P0_4_0 tlLabel = "BERD_P0_4_0" iDraw = 4 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, BERD_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_TEETH(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TEETH g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE TEETH_P0_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, TEETH_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_JBIB(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_JBIB g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE JBIB_P0_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE JBIB_P0_TIE tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE JBIB_P0_VEST tlLabel = "JBIB_P0_02_0" iDraw = 2 iTex = 0 BREAK CASE JBIB_P0_VEST_1 tlLabel = "JBIB_P0_02_1" iDraw = 2 iTex = 1 BREAK CASE JBIB_P0_VEST_2 tlLabel = "JBIB_P0_02_2" iDraw = 2 iTex = 2 BREAK CASE JBIB_P0_VEST_3 tlLabel = "JBIB_P0_02_3" iDraw = 2 iTex = 3 BREAK CASE JBIB_P0_VEST_4 tlLabel = "JBIB_P0_02_4" iDraw = 2 iTex = 4 BREAK CASE JBIB_P0_VEST_5 tlLabel = "JBIB_P0_02_5" iDraw = 2 iTex = 5 BREAK CASE JBIB_P0_3_0 tlLabel = "JBIB_P0_03_0" iDraw = 3 iTex = 0 cost = 390 BREAK CASE JBIB_P0_3_1 tlLabel = "JBIB_P0_03_1" iDraw = 3 iTex = 1 cost = 390 BREAK CASE JBIB_P0_3_2 tlLabel = "JBIB_P0_03_2" iDraw = 3 iTex = 2 cost = 420 BREAK CASE JBIB_P0_3_3 tlLabel = "JBIB_P0_03_3" iDraw = 3 iTex = 3 cost = 420 BREAK CASE JBIB_P0_3_4 tlLabel = "JBIB_P0_03_4" iDraw = 3 iTex = 4 cost = 490 BREAK CASE JBIB_P0_3_5 tlLabel = "JBIB_P0_03_5" iDraw = 3 iTex = 5 cost = 490 BREAK CASE JBIB_P0_3_6 tlLabel = "JBIB_P0_03_6" iDraw = 3 iTex = 6 cost = 540 BREAK CASE JBIB_P0_3_7 tlLabel = "JBIB_P0_03_7" iDraw = 3 iTex = 7 cost = 540 BREAK CASE JBIB_P0_3_8 tlLabel = "JBIB_P0_03_8" iDraw = 3 iTex = 8 cost = 550 BREAK CASE JBIB_P0_3_9 tlLabel = "JBIB_P0_03_9" iDraw = 3 iTex = 9 cost = 540 BREAK CASE JBIB_P0_4_0 tlLabel = "JBIB_P0_04_0" iDraw = 4 iTex = 0 cost = 850 BREAK CASE JBIB_P0_4_1 tlLabel = "JBIB_P0_04_1" iDraw = 4 iTex = 1 cost = 850 BREAK CASE JBIB_P0_4_2 tlLabel = "JBIB_P0_04_2" iDraw = 4 iTex = 2 cost = 890 BREAK CASE JBIB_P0_4_3 tlLabel = "JBIB_P0_04_3" iDraw = 4 iTex = 3 cost = 890 BREAK CASE JBIB_P0_4_4 tlLabel = "JBIB_P0_04_4" iDraw = 4 iTex = 4 cost = 920 BREAK CASE JBIB_P0_4_5 tlLabel = "JBIB_P0_04_5" iDraw = 4 iTex = 5 cost = 920 BREAK CASE JBIB_P0_4_6 tlLabel = "JBIB_P0_04_6" iDraw = 4 iTex = 6 cost = 950 BREAK CASE JBIB_P0_4_7 tlLabel = "JBIB_P0_04_7" iDraw = 4 iTex = 7 cost = 980 BREAK CASE JBIB_P0_4_8 tlLabel = "JBIB_P0_04_8" iDraw = 4 iTex = 8 cost = 1050 BREAK CASE JBIB_P0_4_9 tlLabel = "JBIB_P0_04_9" iDraw = 4 iTex = 9 cost = 1100 BREAK CASE JBIB_P0_5_0 tlLabel = "JBIB_P0_05_0" iDraw = 5 iTex = 0 cost = 1890 BREAK CASE JBIB_P0_5_1 tlLabel = "JBIB_P0_05_1" iDraw = 5 iTex = 1 cost = 1820 BREAK CASE JBIB_P0_5_2 tlLabel = "JBIB_P0_05_2" iDraw = 5 iTex = 2 cost = 1820 BREAK CASE JBIB_P0_5_3 tlLabel = "JBIB_P0_05_3" iDraw = 5 iTex = 3 cost = 1850 BREAK CASE JBIB_P0_5_4 tlLabel = "JBIB_P0_05_4" iDraw = 5 iTex = 4 cost = 1850 BREAK CASE JBIB_P0_5_5 tlLabel = "JBIB_P0_05_5" iDraw = 5 iTex = 5 cost = 1900 BREAK CASE JBIB_P0_5_6 tlLabel = "JBIB_P0_05_6" iDraw = 5 iTex = 6 cost = 1920 BREAK CASE JBIB_P0_5_7 tlLabel = "JBIB_P0_05_7" iDraw = 5 iTex = 7 cost = 1980 BREAK CASE JBIB_P0_5_8 tlLabel = "JBIB_P0_05_8" iDraw = 5 iTex = 8 cost = 2100 BREAK CASE JBIB_P0_5_9 tlLabel = "JBIB_P0_05_9" iDraw = 5 iTex = 9 cost = 2120 BREAK CASE JBIB_P0_5_10 tlLabel = "JBIB_P0_05_10" iDraw = 5 iTex = 10 cost = 2000 BREAK CASE JBIB_P0_5_11 tlLabel = "JBIB_P0_05_11" iDraw = 5 iTex = 11 cost = 2200 BREAK CASE JBIB_P0_5_12 tlLabel = "JBIB_P0_05_12" iDraw = 5 iTex = 12 cost = 2280 BREAK CASE JBIB_P0_5_13 tlLabel = "JBIB_P0_05_13" iDraw = 5 iTex = 13 cost = 2300 BREAK CASE JBIB_P0_5_14 tlLabel = "JBIB_P0_05_14" iDraw = 5 iTex = 14 cost = 2350 BREAK CASE JBIB_P0_5_15 tlLabel = "JBIB_P0_05_15" iDraw = 5 iTex = 15 cost = 2280 BREAK CASE JBIB_P0_BARE_CHEST tlLabel = "JBIB_P0_06_0" iDraw = 6 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, JBIB_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_OUTFIT(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_OUTFIT g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem // Always set bOutfitOnly param to TRUE for the default outfit CASE OUTFIT_P0_DEFAULT tlLabel = "OUTFIT_P0_0" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE OUTFIT_P0_FIREMAN tlLabel = "OUTFIT_P0_1" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_BALLISTICS tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_NAVY_JANITOR tlLabel = "OUTFIT_P0_4" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_HIGHWAY_PATROL tlLabel = "OUTFIT_P0_7" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_GOLF tlLabel = "OUTFIT_P0_8" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_BED tlLabel = "OUTFIT_P0_9" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_YOGA tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_EPSILON tlLabel = "OUTFIT_P0_11" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_TENNIS tlLabel = "OUTFIT_P0_12" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_SCUBA_LAND tlLabel = "OUTFIT_P0_14" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_STEALTH tlLabel = "OUTFIT_P0_17" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_TRIATHLON tlLabel = "OUTFIT_P0_18" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_SECURITY tlLabel = "OUTFIT_P0_19" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_EXTERMINATOR tlLabel = "OUTFIT_P0_20" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_MOVIE_TUXEDO tlLabel = "OUTFIT_P0_22" iDraw = 0 iTex = 0 cost = 10000 BREAK CASE OUTFIT_P0_LUDENDORFF tlLabel = "OUTFIT_P0_23" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_RAPPEL tlLabel = "OUTFIT_P0_24" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_BLUE_BOILER_SUIT tlLabel = "OUTFIT_P0_26" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_PREP_BOILER_SUIT_1 tlLabel = "OUTFIT_P0_28" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P0_PREP_BOILER_SUIT_2 tlLabel = "OUTFIT_P0_29" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P0_PREP_BOILER_SUIT_3 tlLabel = "OUTFIT_P0_30" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P0_PROLOGUE tlLabel = "OUTFIT_P0_31" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_COMMANDO tlLabel = "OUTFIT_P0_32" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_DENIM tlLabel = "OUTFIT_P0_33" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_BLACK_SUIT tlLabel = "OUTFIT_P0_34" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_LEATHER_AND_JEANS tlLabel = "OUTFIT_P0_35" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_EPSILON_WITH_MEDAL tlLabel = "OUTFIT_P0_11" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_DARK_GRAY_SUIT tlLabel = "OUTFIT_P0_36" iDraw = 0 iTex = 0 cost = 4900 BREAK CASE OUTFIT_P0_SHIRT_AND_PANTS tlLabel = "OUTFIT_P0_37" iDraw = 0 iTex = 0 cost = 840 BREAK CASE OUTFIT_P0_JEWEL_HEIST tlLabel = "OUTFIT_P0_38" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_YOGA_FLIP_FLOPS tlLabel = "OUTFIT_P0_39" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_POLOSHIRT_PANTS tlLabel = "OUTFIT_P0_40" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_SHIRT_SHORTS_1 tlLabel = "OUTFIT_P0_41" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_POLOSHIRT_JEANS_1 tlLabel = "OUTFIT_P0_42" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_NAVY_SUIT tlLabel = "OUTFIT_P0_43" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_SUIT_5 tlLabel = "OUTFIT_P0_44" iDraw = 0 iTex = 0 cost = 3900 BREAK CASE OUTFIT_P0_SUIT_6 tlLabel = "OUTFIT_P0_45" iDraw = 0 iTex = 0 cost = 4000 BREAK CASE OUTFIT_P0_SUIT_7 tlLabel = "OUTFIT_P0_46" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P0_SUIT_8 tlLabel = "OUTFIT_P0_47" iDraw = 0 iTex = 0 cost = 4600 BREAK CASE OUTFIT_P0_SUIT_9 tlLabel = "OUTFIT_P0_48" iDraw = 0 iTex = 0 cost = 5500 BREAK CASE OUTFIT_P0_SUIT_10 tlLabel = "OUTFIT_P0_49" iDraw = 0 iTex = 0 cost = 4400 BREAK CASE OUTFIT_P0_SUIT_11 tlLabel = "OUTFIT_P0_50" iDraw = 0 iTex = 0 cost = 4400 BREAK CASE OUTFIT_P0_SUIT_12 tlLabel = "OUTFIT_P0_51" iDraw = 0 iTex = 0 cost = 4900 BREAK CASE OUTFIT_P0_SUIT_13 tlLabel = "OUTFIT_P0_52" iDraw = 0 iTex = 0 cost = 5500 BREAK CASE OUTFIT_P0_SUIT_14 tlLabel = "OUTFIT_P0_53" iDraw = 0 iTex = 0 cost = 4500 BREAK CASE OUTFIT_P0_SUIT_15 tlLabel = "OUTFIT_P0_54" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P0_MOTO_X tlLabel = "OUTFIT_P0_55" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_STEALTH_NO_MASK tlLabel = "OUTFIT_P0_17" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_SCUBA_WATER_NO_MASK tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_BARECHEST_SHORTS tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P0_BARECHEST_BOXERS tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, OUTFIT_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_PROPGROUP(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPGROUP g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem CASE PROPGROUP_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P0_FIREMAN tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_COP tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_GOLF tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_SCUBA_LAND tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_SECURITY tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_RAPPEL tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_BALLISTICS tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P0_SCUBA_WATER_NO_MASK tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, PROPGROUP_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL_PROPS(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPS g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_MICHAEL) SWITCH eItem // None CASE PROPS_HEAD_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_EYES_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES BREAK CASE PROPS_EARS_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_MOUTH_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_MOUTH BREAK CASE PROPS_LHAND_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_HAND BREAK CASE PROPS_RHAND_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_HAND BREAK CASE PROPS_LWRIST_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST BREAK CASE PROPS_RWRIST_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_WRIST BREAK CASE PROPS_HIP_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HIP BREAK // Head props CASE PROPS_P0_FIREMAN_HAT tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_COP_CAP tlLabel = "PROPS_P0_H1" iDraw = 1 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_HOCKEY_MASK tlLabel = "PROPS_P0_H2" iDraw = 2 iTex = 0 cost = 320 ePropType = PROP_TYPE_MASK BREAK CASE PROPS_P0_EAR_DEFENDERS tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_COP_HELMET tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_SECURITY_HELMET tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_BUGSTAR_CAP tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CYCLING_HELMET tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_GOLF_VISOR tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_SECURITY_CAP tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CLOWN_HAT tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_1 tlLabel = "NO_LABEL" iDraw = 11 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_2 tlLabel = "NO_LABEL" iDraw = 11 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_3 tlLabel = "NO_LABEL" iDraw = 11 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_4 tlLabel = "NO_LABEL" iDraw = 11 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_5 tlLabel = "NO_LABEL" iDraw = 11 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_6 tlLabel = "NO_LABEL" iDraw = 11 iTex = 6 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_CRASH_HELMET_7 tlLabel = "NO_LABEL" iDraw = 11 iTex = 7 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_HAT tlLabel = "PROPS_P0_H12" iDraw = 12 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_HEADPHONES tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_MONSTER_GREEN tlLabel = "PROPS_P1_H8_0" iDraw = 14 iTex = 0 cost = 270 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_MONSTER_RED tlLabel = "PROPS_P1_H8_1" iDraw = 14 iTex = 1 cost = 270 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_PIG tlLabel = "PROPS_P1_H9_0" iDraw = 15 iTex = 0 cost = 200 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_PIG_DARK tlLabel = "PROPS_P1_H9_1" iDraw = 15 iTex = 1 cost = 200 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_SKULL_GREY tlLabel = "PROPS_P1_H10_0" iDraw = 16 iTex = 0 cost = 350 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_SKULL_YELLOW tlLabel = "PROPS_P1_H10_1" iDraw = 16 iTex = 1 cost = 350 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_MONKEY tlLabel = "PROPS_P1_H11_0" iDraw = 17 iTex = 0 cost = 450 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_HOCKEY_WHITE tlLabel = "PROPS_P1_H12_0" iDraw = 18 iTex = 0 cost = 500 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_HOCKEY_RED tlLabel = "PROPS_P1_H12_1" iDraw = 18 iTex = 1 cost = 500 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_APE tlLabel = "PROPS_P1_H13_0" iDraw = 19 iTex = 0 cost = 50 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_APE_DARK tlLabel = "PROPS_P1_H13_1" iDraw = 19 iTex = 1 cost = 50 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_TRIBAL_1 tlLabel = "PROPS_P1_H14_0" iDraw = 20 iTex = 0 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_TRIBAL_2 tlLabel = "PROPS_P1_H14_1" iDraw = 20 iTex = 1 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MASK_TRIBAL_3 tlLabel = "PROPS_P1_H14_2" iDraw = 20 iTex = 2 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_PILOT_HEADSET tlLabel = "NO_LABEL" iDraw = 21 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_SWIM_CAP tlLabel = "NO_LABEL" iDraw = 22 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MOTO_X_HELMET_0 tlLabel = "NO_LABEL" iDraw = 23 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MOTO_X_HELMET_1 tlLabel = "NO_LABEL" iDraw = 23 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MOTO_X_HELMET_2 tlLabel = "NO_LABEL" iDraw = 23 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MOTO_X_HELMET_3 tlLabel = "NO_LABEL" iDraw = 23 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MOTO_X_HELMET_4 tlLabel = "NO_LABEL" iDraw = 23 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_MOTO_X_HELMET_5 tlLabel = "NO_LABEL" iDraw = 23 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_BLANK tlLabel = "NO_LABEL" iDraw = 24 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_BLACK_HELMET tlLabel = "NO_LABEL" iDraw = 25 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_ARMOURED_HELMET tlLabel = "NO_LABEL" iDraw = 26 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_FLIGHT_CAP tlLabel = "NO_LABEL" iDraw = 27 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P0_FIGHTER_JET_HELMET tlLabel = "NO_LABEL" iDraw = 28 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK // eyes props CASE PROPS_P0_GLASSES tlLabel = "PROPS_P0_E0" iDraw = 0 iTex = 0 cost = 45 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SCUBA_MASK tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_EXTERMINATOR_MASK tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_REFLECTIVE tlLabel = "PROPS_P0_E3" iDraw = 3 iTex = 0 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES tlLabel = "PROPS_P0_E4" iDraw = 4 iTex = 0 cost = 58 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_1 tlLabel = "PROPS_P0_E4_1" iDraw = 4 iTex = 1 cost = 56 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_2 tlLabel = "PROPS_P0_E4_2" iDraw = 4 iTex = 2 cost = 60 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_3 tlLabel = "PROPS_P0_E4_3" iDraw = 4 iTex = 3 cost = 65 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_4 tlLabel = "PROPS_P0_E4_4" iDraw = 4 iTex = 4 cost = 62 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_5 tlLabel = "PROPS_P0_E4_5" iDraw = 4 iTex = 5 cost = 65 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_6 tlLabel = "PROPS_P0_E4_6" iDraw = 4 iTex = 6 cost = 68 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_PROGRAMMER_GLASSES_7 tlLabel = "PROPS_P0_E4_7" iDraw = 4 iTex = 7 cost = 68 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK tlLabel = "PROPS_P0_E5" iDraw = 5 iTex = 0 cost = 65 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_1 tlLabel = "PROPS_P0_E5_1" iDraw = 5 iTex = 1 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_2 tlLabel = "PROPS_P0_E5_2" iDraw = 5 iTex = 2 cost = 72 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_3 tlLabel = "PROPS_P0_E5_3" iDraw = 5 iTex = 3 cost = 70 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_4 tlLabel = "PROPS_P0_E5_4" iDraw = 5 iTex = 4 cost = 74 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_5 tlLabel = "PROPS_P0_E5_5" iDraw = 5 iTex = 5 cost = 78 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_6 tlLabel = "PROPS_P0_E5_6" iDraw = 5 iTex = 6 cost = 82 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_7 tlLabel = "PROPS_P0_E5_7" iDraw = 5 iTex = 7 cost = 85 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_8 tlLabel = "PROPS_P0_E5_8" iDraw = 5 iTex = 8 cost = 85 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_DARK_9 tlLabel = "PROPS_P0_E5_9" iDraw = 5 iTex = 9 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES tlLabel = "PROPS_P0_E6" iDraw = 6 iTex = 0 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_1 tlLabel = "PROPS_P0_E6_1" iDraw = 6 iTex = 1 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_2 tlLabel = "PROPS_P0_E6_2" iDraw = 6 iTex = 2 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_3 tlLabel = "PROPS_P0_E6_3" iDraw = 6 iTex = 3 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_4 tlLabel = "PROPS_P0_E6_4" iDraw = 6 iTex = 4 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_5 tlLabel = "PROPS_P0_E6_5" iDraw = 6 iTex = 5 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_6 tlLabel = "PROPS_P0_E6_6" iDraw = 6 iTex = 6 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_7 tlLabel = "PROPS_P0_E6_7" iDraw = 6 iTex = 7 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_8 tlLabel = "PROPS_P0_E6_8" iDraw = 6 iTex = 8 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SHADES_9 tlLabel = "PROPS_P0_E6_9" iDraw = 6 iTex = 9 cost = 69 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_SWIMMING_GOGGLES tlLabel = "PROPS_P0_E7" iDraw = 7 iTex = 0 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_0 tlLabel = "PROPS_P0_E8" iDraw = 8 iTex = 0 cost = 170 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_1 tlLabel = "PROPS_P0_E8_1" iDraw = 8 iTex = 1 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_2 tlLabel = "PROPS_P0_E8_2" iDraw = 8 iTex = 2 cost = 180 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_3 tlLabel = "PROPS_P0_E8_3" iDraw = 8 iTex = 3 cost = 185 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_4 tlLabel = "PROPS_P0_E8_4" iDraw = 8 iTex = 4 cost = 189 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_5 tlLabel = "PROPS_P0_E8_5" iDraw = 8 iTex = 5 cost = 195 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_6 tlLabel = "PROPS_P0_E8_6" iDraw = 8 iTex = 6 cost = 235 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_7 tlLabel = "PROPS_P0_E8_7" iDraw = 8 iTex = 7 cost = 245 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_8 tlLabel = "PROPS_P0_E8_8" iDraw = 8 iTex = 8 cost = 250 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_9 tlLabel = "PROPS_P0_E8_9" iDraw = 8 iTex = 9 cost = 275 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_10 tlLabel = "PROPS_P0_E8_10" iDraw = 8 iTex = 10 cost = 280 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_AVIATORS_11 tlLabel = "PROPS_P0_E8_11" iDraw = 8 iTex = 11 cost = 295 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_0 tlLabel = "PROPS_P0_E9" iDraw = 9 iTex = 0 cost = 179 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_1 tlLabel = "PROPS_P0_E9_1" iDraw = 9 iTex = 1 cost = 159 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_2 tlLabel = "PROPS_P0_E9_2" iDraw = 9 iTex = 2 cost = 165 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_3 tlLabel = "PROPS_P0_E9_3" iDraw = 9 iTex = 3 cost = 155 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_4 tlLabel = "PROPS_P0_E9_4" iDraw = 9 iTex = 4 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_5 tlLabel = "PROPS_P0_E9_5" iDraw = 9 iTex = 5 cost = 185 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_6 tlLabel = "PROPS_P0_E9_6" iDraw = 9 iTex = 6 cost = 189 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_THICK_RIM_7 tlLabel = "PROPS_P0_E9_7" iDraw = 9 iTex = 7 cost = 225 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P0_GLASSES_RANGE_0 tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 cost = 100 ePropType = PROP_TYPE_GLASSES BREAK // ears props CASE PROPS_P0_HEADSET tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_EARS BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_P0_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_MICHAEL(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) SWITCH eType CASE COMP_TYPE_HEAD FILL_PED_COMP_DATA_MICHAEL_HEAD(eItem) BREAK CASE COMP_TYPE_HAIR FILL_PED_COMP_DATA_MICHAEL_HAIR(eItem) BREAK CASE COMP_TYPE_TORSO FILL_PED_COMP_DATA_MICHAEL_TORSO(eItem) BREAK CASE COMP_TYPE_LEGS FILL_PED_COMP_DATA_MICHAEL_LEGS(eItem) BREAK CASE COMP_TYPE_FEET FILL_PED_COMP_DATA_MICHAEL_FEET(eItem) BREAK CASE COMP_TYPE_HAND FILL_PED_COMP_DATA_MICHAEL_HAND(eItem) BREAK CASE COMP_TYPE_SPECIAL FILL_PED_COMP_DATA_MICHAEL_SPECIAL(eItem) BREAK CASE COMP_TYPE_SPECIAL2 FILL_PED_COMP_DATA_MICHAEL_SPECIAL2(eItem) BREAK CASE COMP_TYPE_DECL FILL_PED_COMP_DATA_MICHAEL_DECL(eItem) BREAK CASE COMP_TYPE_BERD FILL_PED_COMP_DATA_MICHAEL_BERD(eItem) BREAK CASE COMP_TYPE_TEETH FILL_PED_COMP_DATA_MICHAEL_TEETH(eItem) BREAK CASE COMP_TYPE_JBIB FILL_PED_COMP_DATA_MICHAEL_JBIB(eItem) BREAK CASE COMP_TYPE_OUTFIT FILL_PED_COMP_DATA_MICHAEL_OUTFIT(eItem) BREAK CASE COMP_TYPE_PROPGROUP FILL_PED_COMP_DATA_MICHAEL_PROPGROUP(eItem) BREAK CASE COMP_TYPE_PROPS FILL_PED_COMP_DATA_MICHAEL_PROPS(eItem) BREAK ENDSWITCH ENDPROC // -----------------FRANKLIN -------------------------------------------- /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_HEAD(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HEAD g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE HEAD_P1_0_0 tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE HEAD_P1_0_1 tlLabel = "NO_LABEL" iDraw = 0 iTex = 1 BREAK CASE HEAD_P1_0_2 tlLabel = "NO_LABEL" iDraw = 0 iTex = 2 BREAK CASE HEAD_P1_0_3 tlLabel = "NO_LABEL" iDraw = 0 iTex = 3 BREAK CASE HEAD_P1_0_4 tlLabel = "NO_LABEL" iDraw = 0 iTex = 4 BREAK CASE HEAD_P1_0_5 tlLabel = "NO_LABEL" iDraw = 0 iTex = 5 BREAK CASE HEAD_P1_0_6 tlLabel = "NO_LABEL" iDraw = 0 iTex = 6 BREAK CASE HEAD_P1_0_7 tlLabel = "NO_LABEL" iDraw = 0 iTex = 7 BREAK CASE HEAD_P1_0_8 tlLabel = "NO_LABEL" iDraw = 0 iTex = 8 BREAK CASE HEAD_P1_0_9 tlLabel = "NO_LABEL" iDraw = 0 iTex = 9 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HEAD_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item /// Prices for hair items go in GET_SP_HAIRDO_PRICE() PROC FILL_PED_COMP_DATA_FRANKLIN_HAIR(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAIR g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE HAIR_P1_SHORT_1 tlLabel = "HAIR_P1_0_0" iDraw = 0 iTex = 0 BREAK CASE HAIR_P1_SHORT_2 tlLabel = "HAIR_P1_0_1" iDraw = 0 iTex = 1 BREAK CASE HAIR_P1_SHORT_3 tlLabel = "HAIR_P1_0_2" iDraw = 0 iTex = 2 BREAK CASE HAIR_P1_SHORT_4 tlLabel = "HAIR_P1_0_3" iDraw = 0 iTex = 3 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_5 tlLabel = "HAIR_P1_0_4" iDraw = 0 iTex = 4 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_6 tlLabel = "HAIR_P1_0_5" iDraw = 0 iTex = 5 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_7 tlLabel = "HAIR_P1_0_6" iDraw = 0 iTex = 6 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_8 tlLabel = "HAIR_P1_0_7" iDraw = 0 iTex = 7 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_9 tlLabel = "HAIR_P1_0_8" iDraw = 0 iTex = 8 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_10 tlLabel = "HAIR_P1_0_9" iDraw = 0 iTex = 9 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_11 tlLabel = "HAIR_P1_0_10" iDraw = 0 iTex = 10 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_12 tlLabel = "HAIR_P1_0_11" iDraw = 0 iTex = 11 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_13 tlLabel = "HAIR_P1_0_12" iDraw = 0 iTex = 12 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_14 tlLabel = "HAIR_P1_0_13" iDraw = 0 iTex = 13 BREAK CASE HAIR_P1_SHORT_15 tlLabel = "HAIR_P1_0_14" iDraw = 0 iTex = 14 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_SHORT_16 tlLabel = "HAIR_P1_0_15" iDraw = 0 iTex = 15 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_1_0 tlLabel = "HAIR_P1_1_0" iDraw = 1 iTex = 0 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_2_0 tlLabel = "HAIR_P1_2_0" iDraw = 2 iTex = 0 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_3_0 tlLabel = "HAIR_P1_3_0" iDraw = 3 iTex = 0 eStyle = COMP_STYLE_STYLISH BREAK CASE HAIR_P1_VERY_SHORT tlLabel = "HAIR_P1_4_0" iDraw = 4 iTex = 0 BREAK CASE HAIR_P1_MASK tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HAIR_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_TORSO_1(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE TORSO_P1_WHITE_VEST tlLabel = "TORSO_P1_0_0" iDraw = 0 iTex = 0 BREAK CASE TORSO_P1_BLACK_VEST tlLabel = "TORSO_P1_0_1" iDraw = 0 iTex = 1 BREAK // 0_1 CASE TORSO_P1_GRAY_VEST tlLabel = "TORSO_P1_0_2" iDraw = 0 iTex = 2 cost = 180 BREAK // 0_2 CASE TORSO_P1_FEUD_GREEN_VEST tlLabel = "TORSO_P1_0_3" iDraw = 0 iTex = 3 cost = 22 BREAK // 0_3 CASE TORSO_P1_FRUNTALOT_BLUE_VEST tlLabel = "TORSO_P1_0_4" iDraw = 0 iTex = 4 cost = 20 BREAK // 0_4 CASE TORSO_P1_YELLOWBROWN_VEST tlLabel = "TORSO_P1_0_5" iDraw = 0 iTex = 5 cost = 18 BREAK // 0_5 CASE TORSO_P1_ORANGESTRIPE_VEST tlLabel = "TORSO_P1_0_6" iDraw = 0 iTex = 6 cost = 19 BREAK // 0_6 CASE TORSO_P1_GREEN_WHITE_VEST tlLabel = "TORSO_P1_0_7" iDraw = 0 iTex = 7 cost = 22 BREAK // 0_7 CASE TORSO_P1_YELLOW_VEST tlLabel = "TORSO_P1_0_8" iDraw = 0 iTex = 8 cost = 20 BREAK // 0_8 CASE TORSO_P1_PURPLE_VEST tlLabel = "TORSO_P1_0_9" iDraw = 0 iTex = 9 cost = 19 BREAK // 0_9 CASE TORSO_P1_RED_VEST tlLabel = "TORSO_P1_0_10" iDraw = 0 iTex = 10 cost = 19 BREAK // 0_10 CASE TORSO_P1_WHITESTRIPE_VEST tlLabel = "TORSO_P1_0_11" iDraw = 0 iTex = 11 cost = 18 BREAK // 0_11 CASE TORSO_P1_CAMO_VEST tlLabel = "TORSO_P1_0_12" iDraw = 0 iTex = 12 cost = 20 BREAK // 0_12 CASE TORSO_P1_FEUD3_WHITE_VEST tlLabel = "TORSO_P1_0_13" iDraw = 0 iTex = 13 cost = 22 BREAK // 0_13 CASE TORSO_P1_GRAYSTRIPE_VEST tlLabel = "TORSO_P1_0_14" iDraw = 0 iTex = 14 cost = 19 BREAK // 0_14 CASE TORSO_P1_FEUD_WHITE_VEST tlLabel = "TORSO_P1_0_15" iDraw = 0 iTex = 15 cost = 22 BREAK // 0_15 CASE TORSO_P1_BLACK_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 1_0 [should probably get rid of black boiler] CASE TORSO_P1_RED_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 1 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 1_1 CASE TORSO_P1_BLUE_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 2 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 1_2 CASE TORSO_P1_NAVY_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 3 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 1_3 CASE TORSO_P1_GRAY_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 4 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 1_4 CASE TORSO_P1_GREEN_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 5 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 1_5 CASE TORSO_P1_WHITE_TUXEDO tlLabel = "TORSO_P1_2_0" iDraw = 2 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_STYLISH BREAK // 2_0 CASE TORSO_P1_SCUBA tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_CRAZY BREAK // 3_0 CASE TORSO_P1_BAGGY_TEE_0 tlLabel = "TORSO_P1_4_0" iDraw = 4 iTex = 0 cost = 20 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_1 tlLabel = "TORSO_P1_4_1" iDraw = 4 iTex = 1 cost = 22 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_2 tlLabel = "TORSO_P1_4_2" iDraw = 4 iTex = 2 cost = 20 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_3 tlLabel = "TORSO_P1_4_3" iDraw = 4 iTex = 3 cost = 25 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_4 tlLabel = "TORSO_P1_4_4" iDraw = 4 iTex = 4 cost = 23 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_5 tlLabel = "TORSO_P1_4_5" iDraw = 4 iTex = 5 cost = 25 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_6 tlLabel = "TORSO_P1_4_6" iDraw = 4 iTex = 6 cost = 28 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_7 tlLabel = "TORSO_P1_4_7" iDraw = 4 iTex = 7 cost = 26 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_8 tlLabel = "TORSO_P1_4_8" iDraw = 4 iTex = 8 cost = 24 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_9 tlLabel = "TORSO_P1_4_9" iDraw = 4 iTex = 9 cost = 27 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_10 tlLabel = "TORSO_P1_4_10" iDraw = 4 iTex = 10 cost = 29 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_11 tlLabel = "TORSO_P1_4_11" iDraw = 4 iTex = 11 cost = 28 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_12 tlLabel = "TORSO_P1_4_12" iDraw = 4 iTex = 12 cost = 25 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_13 tlLabel = "TORSO_P1_4_13" iDraw = 4 iTex = 13 cost = 22 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_14 tlLabel = "TORSO_P1_4_14" iDraw = 4 iTex = 14 cost = 27 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_BAGGY_TEE_15 tlLabel = "TORSO_P1_4_15" iDraw = 4 iTex = 15 cost = 29 eStyle = COMP_STYLE_SENSIBLE BREAK // CASE TORSO_P1_TRIATHLON tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 5_0 CASE TORSO_P1_GOLF tlLabel = "TORSO_P1_6_0" iDraw = 6 iTex = 0 eStyle = COMP_STYLE_STYLISH BREAK // 6_0 CASE TORSO_P1_SWEATER_1 tlLabel = "TORSO_P1_6_1" iDraw = 6 iTex = 1 cost = 1270 eStyle = COMP_STYLE_STYLISH BREAK // 6_1 CASE TORSO_P1_SWEATER_2 tlLabel = "TORSO_P1_6_2" iDraw = 6 iTex = 2 cost = 1270 eStyle = COMP_STYLE_STYLISH BREAK // 6_2 CASE TORSO_P1_SWEATER_3 tlLabel = "TORSO_P1_6_3" iDraw = 6 iTex = 3 cost = 1270 eStyle = COMP_STYLE_STYLISH BREAK // 6_3 CASE TORSO_P1_SWEATER_4 tlLabel = "TORSO_P1_6_4" iDraw = 6 iTex = 4 cost = 1090 eStyle = COMP_STYLE_STYLISH BREAK // 6_4 CASE TORSO_P1_SWEATER_5 tlLabel = "TORSO_P1_6_5" iDraw = 6 iTex = 5 cost = 1090 eStyle = COMP_STYLE_STYLISH BREAK // 6_5 CASE TORSO_P1_SWEATER_6 tlLabel = "TORSO_P1_6_6" iDraw = 6 iTex = 6 cost = 1120 eStyle = COMP_STYLE_STYLISH BREAK // 6_6 CASE TORSO_P1_SWEATER_7 tlLabel = "TORSO_P1_6_7" iDraw = 6 iTex = 7 cost = 1120 eStyle = COMP_STYLE_STYLISH BREAK // 6_7 CASE TORSO_P1_SWEATER_8 tlLabel = "TORSO_P1_6_8" iDraw = 6 iTex = 8 cost = 1290 eStyle = COMP_STYLE_STYLISH BREAK // 6_8 CASE TORSO_P1_SWEATER_9 tlLabel = "TORSO_P1_6_9" iDraw = 6 iTex = 9 cost = 1290 eStyle = COMP_STYLE_STYLISH BREAK // 6_9 CASE TORSO_P1_SWEATER_10 tlLabel = "TORSO_P1_6_10" iDraw = 6 iTex = 10 cost = 1320 eStyle = COMP_STYLE_STYLISH BREAK // 6_10 CASE TORSO_P1_SWEATER_11 tlLabel = "TORSO_P1_6_11" iDraw = 6 iTex = 11 cost = 1320 eStyle = COMP_STYLE_STYLISH BREAK // 6_11 CASE TORSO_P1_SWEATER_12 tlLabel = "TORSO_P1_6_12" iDraw = 6 iTex = 12 cost = 1590 eStyle = COMP_STYLE_STYLISH BREAK // 6_12 CASE TORSO_P1_SWEATER_13 tlLabel = "TORSO_P1_6_13" iDraw = 6 iTex = 13 cost = 1590 eStyle = COMP_STYLE_STYLISH BREAK // 6_13 CASE TORSO_P1_SWEATER_14 tlLabel = "TORSO_P1_6_14" iDraw = 6 iTex = 14 cost = 1590 eStyle = COMP_STYLE_STYLISH BREAK // 6_14 CASE TORSO_P1_SWEATER_15 tlLabel = "TORSO_P1_6_15" iDraw = 6 iTex = 15 cost = 1320 eStyle = COMP_STYLE_STYLISH BREAK // 6_15 CASE TORSO_P1_SHIRT_0 tlLabel = "TORSO_P1_7_0" iDraw = 7 iTex = 0 cost = 98 BREAK // 7_0 CASE TORSO_P1_SHIRT_1 tlLabel = "TORSO_P1_7_1" iDraw = 7 iTex = 1 cost = 98 BREAK // 7_1 CASE TORSO_P1_SHIRT_2 tlLabel = "TORSO_P1_7_2" iDraw = 7 iTex = 2 cost = 110 BREAK // 7_2 CASE TORSO_P1_SHIRT_3 tlLabel = "TORSO_P1_7_3" iDraw = 7 iTex = 3 cost = 110 BREAK // 7_3 CASE TORSO_P1_SHIRT_4 tlLabel = "TORSO_P1_7_4" iDraw = 7 iTex = 4 cost = 118 BREAK // 7_4 CASE TORSO_P1_SHIRT_5 tlLabel = "TORSO_P1_7_5" iDraw = 7 iTex = 5 cost = 120 BREAK // 7_5 CASE TORSO_P1_SHIRT_6 tlLabel = "TORSO_P1_7_6" iDraw = 7 iTex = 6 cost = 120 BREAK // 7_6 CASE TORSO_P1_SHIRT_7 tlLabel = "TORSO_P1_7_7" iDraw = 7 iTex = 7 cost = 129 BREAK // 7_7 CASE TORSO_P1_SHIRT_8 tlLabel = "TORSO_P1_7_8" iDraw = 7 iTex = 8 cost = 125 BREAK // 7_8 CASE TORSO_P1_SHIRT_9 tlLabel = "TORSO_P1_7_9" iDraw = 7 iTex = 9 cost = 125 BREAK // 7_9 CASE TORSO_P1_SHIRT_10 tlLabel = "TORSO_P1_7_10" iDraw = 7 iTex = 10 cost = 129 BREAK // 7_10 CASE TORSO_P1_SHIRT_11 tlLabel = "TORSO_P1_7_11" iDraw = 7 iTex = 11 cost = 129 BREAK // 7_11 CASE TORSO_P1_SHIRT_12 tlLabel = "TORSO_P1_7_12" iDraw = 7 iTex = 12 cost = 135 BREAK // 7_12 CASE TORSO_P1_SHIRT_13 tlLabel = "TORSO_P1_7_13" iDraw = 7 iTex = 13 cost = 139 BREAK // 7_13 CASE TORSO_P1_SHIRT_14 tlLabel = "TORSO_P1_7_14" iDraw = 7 iTex = 14 cost = 145 BREAK // 7_14 CASE TORSO_P1_SHIRT_15 tlLabel = "TORSO_P1_7_15" iDraw = 7 iTex = 15 cost = 145 BREAK // 7_15 CASE TORSO_P1_BLUE_SHIRT tlLabel = "TORSO_P1_8_0" iDraw = 8 iTex = 0 BREAK // 8_0 CASE TORSO_P1_YELLOW_SHIRT tlLabel = "TORSO_P1_8_1" iDraw = 8 iTex = 1 BREAK // 8_1 CASE TORSO_P1_OFF_WHITE_SHIRT tlLabel = "TORSO_P1_8_2" iDraw = 8 iTex = 2 BREAK // 8_2 CASE TORSO_P1_DARK_GRAY_SHIRT tlLabel = "TORSO_P1_8_3" iDraw = 8 iTex = 3 BREAK // 8_3 CASE TORSO_P1_SALMON_CHECK_SHIRT tlLabel = "TORSO_P1_8_4" iDraw = 8 iTex = 4 cost = 30 BREAK // 8_4 CASE TORSO_P1_BLACK_SHIRT tlLabel = "TORSO_P1_8_5" iDraw = 8 iTex = 5 cost = 38 BREAK // 8_5 CASE TORSO_P1_BLUE_CHECK_SHIRT tlLabel = "TORSO_P1_8_6" iDraw = 8 iTex = 6 cost = 32 BREAK // 8_6 CASE TORSO_P1_CHECK_SHIRT tlLabel = "TORSO_P1_8_7" iDraw = 8 iTex = 7 cost = 30 BREAK // 8_7 CASE TORSO_P1_BLUEGRN_CHECK_SHIRT tlLabel = "TORSO_P1_8_8" iDraw = 8 iTex = 8 cost = 33 BREAK // 8_8 CASE TORSO_P1_ORANGE_SHIRT tlLabel = "TORSO_P1_8_9" iDraw = 8 iTex = 9 cost = 35 BREAK // 8_9 CASE TORSO_P1_BROWN_CHECK_SHIRT tlLabel = "TORSO_P1_8_10" iDraw = 8 iTex = 10 cost = 35 BREAK // 8_10 CASE TORSO_P1_GRAY_CHECK_SHIRT tlLabel = "TORSO_P1_8_11" iDraw = 8 iTex = 11 cost = 38 BREAK // 8_11 CASE TORSO_P1_PURPLE_CHECK_SHIRT tlLabel = "TORSO_P1_8_12" iDraw = 8 iTex = 12 cost = 33 BREAK // 8_12 CASE TORSO_P1_GREEN_SHIRT tlLabel = "TORSO_P1_8_13" iDraw = 8 iTex = 13 cost = 35 BREAK // 8_13 CASE TORSO_P1_WHITE_SHIRT tlLabel = "TORSO_P1_8_14" iDraw = 8 iTex = 14 cost = 38 BREAK // 8_14 CASE TORSO_P1_GREEN_CHECK_SHIRT tlLabel = "TORSO_P1_8_15" iDraw = 8 iTex = 15 cost = 32 BREAK // 8_15 CASE TORSO_P1_MOTO_X tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK // 9_0 CASE TORSO_P1_FIREMAN tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK // 10_0 CASE TORSO_P1_WHITE_LNGSLEEVE tlLabel = "TORSO_P1_11_0" iDraw = 11 iTex = 0 BREAK // 11_0 CASE TORSO_P1_GRAY_LNGSLEEVE tlLabel = "TORSO_P1_11_1" iDraw = 11 iTex = 1 cost = 59 BREAK // 11_1 CASE TORSO_P1_BLACK_LNGSLEEVE tlLabel = "TORSO_P1_11_2" iDraw = 11 iTex = 2 BREAK // 11_2 CASE TORSO_P1_TEN_LNGSLEEVE tlLabel = "TORSO_P1_11_3" iDraw = 11 iTex = 3 cost = 25 BREAK // 11_3 CASE TORSO_P1_KING_LNGSLEEVE tlLabel = "TORSO_P1_11_4" iDraw = 11 iTex = 4 cost = 29 BREAK // 11_4 CASE TORSO_P1_BLACK_YETI_LNGSLEEVE tlLabel = "TORSO_P1_11_5" iDraw = 11 iTex = 5 cost = 27 BREAK // 11_5 CASE TORSO_P1_FRUNTALOT_LNGSLEEVE tlLabel = "TORSO_P1_11_6" iDraw = 11 iTex = 6 cost = 25 BREAK // 11_6 CASE TORSO_P1_BLUE_LNGSLEEVE tlLabel = "TORSO_P1_11_7" iDraw = 11 iTex = 7 cost = 27 BREAK // 11_7 CASE TORSO_P1_STRIPED_LNGSLEEVE tlLabel = "TORSO_P1_11_8" iDraw = 11 iTex = 8 cost = 28 BREAK // 11_8 CASE TORSO_P1_GREEN_LNGSLEEVE tlLabel = "TORSO_P1_11_9" iDraw = 11 iTex = 9 cost = 30 BREAK // 11_9 CASE TORSO_P1_SWEATBOX_LNGSLEEVE tlLabel = "TORSO_P1_11_10" iDraw = 11 iTex = 10 cost = 29 BREAK // 11_10 CASE TORSO_P1_KHAKI_LNGSLEEVE tlLabel = "TORSO_P1_11_11" iDraw = 11 iTex = 11 cost = 27 BREAK // 11_11 CASE TORSO_P1_CAMO_YETI_LNGSLEEVE tlLabel = "TORSO_P1_11_12" iDraw = 11 iTex = 12 cost = 29 BREAK // 11_12 CASE TORSO_P1_FEUD_LNGSLEEVE tlLabel = "TORSO_P1_11_13" iDraw = 11 iTex = 13 cost = 32 BREAK // 11_13 CASE TORSO_P1_BROKER_LNGSLEEVE tlLabel = "TORSO_P1_11_14" iDraw = 11 iTex = 14 cost = 30 BREAK // 11_14 CASE TORSO_P1_UPTOWN_LNGSLEEVE tlLabel = "TORSO_P1_11_15" iDraw = 11 iTex = 15 cost = 28 BREAK // 11_15 DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_TORSO_2(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE TORSO_P1_VARSITY tlLabel = "TORSO_P1_12_0" iDraw = 12 iTex = 0 cost = 195 BREAK // 12_0 CASE TORSO_P1_VARSITY_1 tlLabel = "TORSO_P1_12_1" iDraw = 12 iTex = 1 cost = 420 BREAK // 12_1 CASE TORSO_P1_VARSITY_2 tlLabel = "TORSO_P1_12_2" iDraw = 12 iTex = 2 cost = 390 BREAK // 12_2 CASE TORSO_P1_VARSITY_3 tlLabel = "TORSO_P1_12_3" iDraw = 12 iTex = 3 cost = 450 BREAK // 12_3 CASE TORSO_P1_VARSITY_4 tlLabel = "TORSO_P1_12_4" iDraw = 12 iTex = 4 cost = 400 BREAK // 12_4 CASE TORSO_P1_VARSITY_5 tlLabel = "TORSO_P1_12_5" iDraw = 12 iTex = 5 cost = 390 BREAK // 12_5 CASE TORSO_P1_VARSITY_6 tlLabel = "TORSO_P1_12_6" iDraw = 12 iTex = 6 cost = 570 BREAK // 12_6 CASE TORSO_P1_VARSITY_7 tlLabel = "TORSO_P1_12_7" iDraw = 12 iTex = 7 cost = 390 BREAK // 12_7 CASE TORSO_P1_VARSITY_8 tlLabel = "TORSO_P1_12_8" iDraw = 12 iTex = 8 cost = 470 BREAK // 12_8 CASE TORSO_P1_VARSITY_9 tlLabel = "TORSO_P1_12_9" iDraw = 12 iTex = 9 cost = 390 BREAK // 12_9 CASE TORSO_P1_VARSITY_10 tlLabel = "TORSO_P1_12_10" iDraw = 12 iTex = 10 cost = 520 BREAK // 12_10 CASE TORSO_P1_VARSITY_11 tlLabel = "TORSO_P1_12_11" iDraw = 12 iTex = 11 cost = 490 BREAK // 12_11 CASE TORSO_P1_VARSITY_12 tlLabel = "TORSO_P1_12_12" iDraw = 12 iTex = 12 cost = 490 BREAK // 12_12 CASE TORSO_P1_VARSITY_13 tlLabel = "TORSO_P1_12_13" iDraw = 12 iTex = 13 cost = 590 BREAK // 12_13 CASE TORSO_P1_VARSITY_14 tlLabel = "TORSO_P1_12_14" iDraw = 12 iTex = 14 cost = 560 BREAK // 12_14 CASE TORSO_P1_VARSITY_15 tlLabel = "TORSO_P1_12_15" iDraw = 12 iTex = 15 cost = 520 BREAK // 12_15 CASE TORSO_P1_HOODIE tlLabel = "TORSO_P1_13_0" iDraw = 13 iTex = 0 BREAK // 13_0 CASE TORSO_P1_HOODIE_1 tlLabel = "TORSO_P1_13_1" iDraw = 13 iTex = 1 BREAK // 13_1 CASE TORSO_P1_HOODIE_2 tlLabel = "TORSO_P1_13_2" iDraw = 13 iTex = 2 BREAK // 13_2 CASE TORSO_P1_HOODIE_3 tlLabel = "TORSO_P1_13_3" iDraw = 13 iTex = 3 cost = 90 BREAK // 13_3 CASE TORSO_P1_HOODIE_4 tlLabel = "TORSO_P1_13_4" iDraw = 13 iTex = 4 cost = 85 BREAK // 13_4 CASE TORSO_P1_HOODIE_5 tlLabel = "TORSO_P1_13_5" iDraw = 13 iTex = 5 cost = 45 BREAK // 13_5 CASE TORSO_P1_HOODIE_6 tlLabel = "TORSO_P1_13_6" iDraw = 13 iTex = 6 cost = 90 BREAK // 13_6 CASE TORSO_P1_HOODIE_7 tlLabel = "TORSO_P1_13_7" iDraw = 13 iTex = 7 cost = 47 BREAK // 13_7 CASE TORSO_P1_HOODIE_8 tlLabel = "TORSO_P1_13_8" iDraw = 13 iTex = 8 cost = 45 BREAK // 13_8 CASE TORSO_P1_HOODIE_9 tlLabel = "TORSO_P1_13_9" iDraw = 13 iTex = 9 cost = 48 BREAK // 13_9 CASE TORSO_P1_HOODIE_10 tlLabel = "TORSO_P1_13_10" iDraw = 13 iTex = 10 cost = 45 BREAK // 13_10 CASE TORSO_P1_HOODIE_11 tlLabel = "TORSO_P1_13_11" iDraw = 13 iTex = 11 cost = 85 BREAK // 13_11 CASE TORSO_P1_HOODIE_12 tlLabel = "TORSO_P1_13_12" iDraw = 13 iTex = 12 cost = 45 BREAK // 13_12 CASE TORSO_P1_HOODIE_13 tlLabel = "TORSO_P1_13_13" iDraw = 13 iTex = 13 cost = 47 BREAK // 13_13 CASE TORSO_P1_HOODIE_14 tlLabel = "TORSO_P1_13_14" iDraw = 13 iTex = 14 cost = 45 BREAK // 13_14 CASE TORSO_P1_HOODIE_15 tlLabel = "TORSO_P1_13_15" iDraw = 13 iTex = 15 cost = 48 BREAK // 13_15 CASE TORSO_P1_ARMY_JACKET tlLabel = "TORSO_P1_14_0" iDraw = 14 iTex = 0 cost = 290 BREAK // 14_0 CASE TORSO_P1_ARMY_JACKET_1 tlLabel = "TORSO_P1_14_1" iDraw = 14 iTex = 1 cost = 290 BREAK // 14_1 CASE TORSO_P1_ARMY_JACKET_2 tlLabel = "TORSO_P1_14_2" iDraw = 14 iTex = 2 cost = 290 BREAK // 14_2 CASE TORSO_P1_ARMY_JACKET_3 tlLabel = "TORSO_P1_14_3" iDraw = 14 iTex = 3 cost = 290 BREAK // 14_3 CASE TORSO_P1_ARMY_JACKET_4 tlLabel = "TORSO_P1_14_4" iDraw = 14 iTex = 4 cost = 290 BREAK // 14_4 CASE TORSO_P1_ARMY_JACKET_5 tlLabel = "TORSO_P1_14_5" iDraw = 14 iTex = 5 cost = 290 BREAK // 14_5 CASE TORSO_P1_ARMY_JACKET_6 tlLabel = "TORSO_P1_14_6" iDraw = 14 iTex = 6 cost = 65 BREAK // 14_6 CASE TORSO_P1_ARMY_JACKET_7 tlLabel = "TORSO_P1_14_7" iDraw = 14 iTex = 7 cost = 65 BREAK // 14_7 CASE TORSO_P1_SHORT_SLEEVE tlLabel = "TORSO_P1_15_0" iDraw = 15 iTex = 0 cost = 200 BREAK // 15_0 CASE TORSO_P1_SHORT_SLEEVE_1 tlLabel = "TORSO_P1_15_1" iDraw = 15 iTex = 1 cost = 220 BREAK // 15_1 CASE TORSO_P1_SHORT_SLEEVE_2 tlLabel = "TORSO_P1_15_2" iDraw = 15 iTex = 2 cost = 220 BREAK // 15_2 CASE TORSO_P1_SHORT_SLEEVE_3 tlLabel = "TORSO_P1_15_3" iDraw = 15 iTex = 3 cost = 240 BREAK // 15_3 CASE TORSO_P1_100_PERCENT_TSHIRT tlLabel = "TORSO_P1_15_4" iDraw = 15 iTex = 4 BREAK CASE TORSO_P1_SHORT_SLEEVE_5 tlLabel = "TORSO_P1_15_5" iDraw = 15 iTex = 5 cost = 250 BREAK CASE TORSO_P1_SHORT_SLEEVE_6 tlLabel = "TORSO_P1_15_6" iDraw = 15 iTex = 6 cost = 260 BREAK CASE TORSO_P1_SHORT_SLEEVE_7 tlLabel = "TORSO_P1_15_7" iDraw = 15 iTex = 7 cost = 40 BREAK CASE TORSO_P1_SHORT_SLEEVE_8 tlLabel = "TORSO_P1_15_8" iDraw = 15 iTex = 8 cost = 50 BREAK CASE TORSO_P1_SHORT_SLEEVE_9 tlLabel = "TORSO_P1_15_9" iDraw = 15 iTex = 9 cost = 45 BREAK CASE TORSO_P1_SHORT_SLEEVE_10 tlLabel = "TORSO_P1_15_10" iDraw = 15 iTex = 10 cost = 40 BREAK CASE TORSO_P1_SHORT_SLEEVE_11 tlLabel = "TORSO_P1_15_11" iDraw = 15 iTex = 11 cost = 55 BREAK CASE TORSO_P1_STEALTH tlLabel = "TORSO_P1_16_0" iDraw = 16 iTex = 0 BREAK // 16_0 CASE TORSO_P1_TRACKSUIT_0 tlLabel = "TORSO_P1_17_0" iDraw = 17 iTex = 0 cost = 40 BREAK // 17_0 CASE TORSO_P1_TRACKSUIT_1 tlLabel = "TORSO_P1_17_1" iDraw = 17 iTex = 1 cost = 50 BREAK // 17_1 CASE TORSO_P1_TRACKSUIT_2 tlLabel = "TORSO_P1_17_2" iDraw = 17 iTex = 2 BREAK // 17_2 CASE TORSO_P1_TRACKSUIT_3 tlLabel = "TORSO_P1_17_3" iDraw = 17 iTex = 3 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_4 tlLabel = "TORSO_P1_17_4" iDraw = 17 iTex = 4 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_5 tlLabel = "TORSO_P1_17_5" iDraw = 17 iTex = 5 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_6 tlLabel = "TORSO_P1_17_6" iDraw = 17 iTex = 6 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_7 tlLabel = "TORSO_P1_17_7" iDraw = 17 iTex = 7 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_8 tlLabel = "TORSO_P1_17_8" iDraw = 17 iTex = 8 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_9 tlLabel = "TORSO_P1_17_9" iDraw = 17 iTex = 9 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_10 tlLabel = "TORSO_P1_17_10" iDraw = 17 iTex = 10 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_11 tlLabel = "TORSO_P1_17_11" iDraw = 17 iTex = 11 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_12 tlLabel = "TORSO_P1_17_12" iDraw = 17 iTex = 12 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_13 tlLabel = "TORSO_P1_17_13" iDraw = 17 iTex = 13 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_14 tlLabel = "TORSO_P1_17_14" iDraw = 17 iTex = 14 cost = 50 BREAK CASE TORSO_P1_TRACKSUIT_15 tlLabel = "TORSO_P1_17_15" iDraw = 17 iTex = 15 cost = 50 BREAK CASE TORSO_P1_SUIT tlLabel = "TORSO_P1_18_0" iDraw = 18 iTex = 0 eStyle = COMP_STYLE_STYLISH BREAK // 18_0 CASE TORSO_P1_SUIT_1 tlLabel = "TORSO_P1_18_1" iDraw = 18 iTex = 1 eStyle = COMP_STYLE_STYLISH BREAK // 18_1 CASE TORSO_P1_SUIT_2 tlLabel = "TORSO_P1_18_2" iDraw = 18 iTex = 2 eStyle = COMP_STYLE_STYLISH BREAK // 18_2 CASE TORSO_P1_SUIT_3 tlLabel = "TORSO_P1_18_3" iDraw = 18 iTex = 3 eStyle = COMP_STYLE_STYLISH BREAK // 18_3 CASE TORSO_P1_SUIT_4 tlLabel = "TORSO_P1_18_4" iDraw = 18 iTex = 4 eStyle = COMP_STYLE_STYLISH BREAK // 18_4 CASE TORSO_P1_SUIT_5 tlLabel = "TORSO_P1_18_5" iDraw = 18 iTex = 5 eStyle = COMP_STYLE_STYLISH BREAK // 18_5 CASE TORSO_P1_SUIT_6 tlLabel = "TORSO_P1_18_6" iDraw = 18 iTex = 6 eStyle = COMP_STYLE_STYLISH BREAK // 18_6 CASE TORSO_P1_SUIT_7 tlLabel = "TORSO_P1_18_7" iDraw = 18 iTex = 7 eStyle = COMP_STYLE_STYLISH BREAK // 18_7 CASE TORSO_P1_SUIT_8 tlLabel = "TORSO_P1_18_8" iDraw = 18 iTex = 8 eStyle = COMP_STYLE_STYLISH BREAK // 18_8 CASE TORSO_P1_SUIT_9 tlLabel = "TORSO_P1_18_9" iDraw = 18 iTex = 9 eStyle = COMP_STYLE_STYLISH BREAK // 18_9 CASE TORSO_P1_SUIT_10 tlLabel = "TORSO_P1_18_10" iDraw = 18 iTex = 10 eStyle = COMP_STYLE_STYLISH BREAK // 18_10 CASE TORSO_P1_SUIT_11 tlLabel = "TORSO_P1_18_11" iDraw = 18 iTex = 11 eStyle = COMP_STYLE_STYLISH BREAK // 18_11 CASE TORSO_P1_SUIT_12 tlLabel = "TORSO_P1_18_12" iDraw = 18 iTex = 12 eStyle = COMP_STYLE_STYLISH BREAK // 18_12 CASE TORSO_P1_SUIT_13 tlLabel = "TORSO_P1_18_13" iDraw = 18 iTex = 13 eStyle = COMP_STYLE_STYLISH BREAK // 18_13 CASE TORSO_P1_SUIT_14 tlLabel = "TORSO_P1_18_14" iDraw = 18 iTex = 14 eStyle = COMP_STYLE_STYLISH BREAK // 18_14 CASE TORSO_P1_SUIT_15 tlLabel = "TORSO_P1_18_15" iDraw = 18 iTex = 15 eStyle = COMP_STYLE_STYLISH BREAK // 18_15 CASE TORSO_P1_DRESS_SHIRT tlLabel = "TORSO_P1_19_0" iDraw = 19 iTex = 0 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_0 CASE TORSO_P1_SHIRT_UP_SLEEVES_1 tlLabel = "TORSO_P1_19_1" iDraw = 19 iTex = 1 cost = 440 eStyle = COMP_STYLE_STYLISH BREAK // 19_1 CASE TORSO_P1_SHIRT_UP_SLEEVES_2 tlLabel = "TORSO_P1_19_2" iDraw = 19 iTex = 2 cost = 440 eStyle = COMP_STYLE_STYLISH BREAK // 19_2 CASE TORSO_P1_SHIRT_UP_SLEEVES_3 tlLabel = "TORSO_P1_19_3" iDraw = 19 iTex = 3 cost = 520 eStyle = COMP_STYLE_STYLISH BREAK // 19_3 CASE TORSO_P1_SHIRT_UP_SLEEVES_4 tlLabel = "TORSO_P1_19_4" iDraw = 19 iTex = 4 cost = 440 eStyle = COMP_STYLE_STYLISH BREAK // 19_4 CASE TORSO_P1_SHIRT_UP_SLEEVES_5 tlLabel = "TORSO_P1_19_5" iDraw = 19 iTex = 5 cost = 440 eStyle = COMP_STYLE_STYLISH BREAK // 19_5 CASE TORSO_P1_SHIRT_UP_SLEEVES_6 tlLabel = "TORSO_P1_19_6" iDraw = 19 iTex = 6 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_6 CASE TORSO_P1_SHIRT_UP_SLEEVES_7 tlLabel = "TORSO_P1_19_7" iDraw = 19 iTex = 7 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_7 CASE TORSO_P1_SHIRT_UP_SLEEVES_8 tlLabel = "TORSO_P1_19_8" iDraw = 19 iTex = 8 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_8 CASE TORSO_P1_SHIRT_UP_SLEEVES_9 tlLabel = "TORSO_P1_19_9" iDraw = 19 iTex = 9 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_9 CASE TORSO_P1_SHIRT_UP_SLEEVES_10 tlLabel = "TORSO_P1_19_10" iDraw = 19 iTex = 10 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_10 CASE TORSO_P1_SHIRT_UP_SLEEVES_11 tlLabel = "TORSO_P1_19_11" iDraw = 19 iTex = 11 cost = 480 eStyle = COMP_STYLE_STYLISH BREAK // 19_11 CASE TORSO_P1_SHIRT_UP_SLEEVES_12 tlLabel = "TORSO_P1_19_12" iDraw = 19 iTex = 12 cost = 520 eStyle = COMP_STYLE_STYLISH BREAK // 19_12 CASE TORSO_P1_SHIRT_UP_SLEEVES_13 tlLabel = "TORSO_P1_19_13" iDraw = 19 iTex = 13 cost = 520 eStyle = COMP_STYLE_STYLISH BREAK // 19_13 CASE TORSO_P1_SHIRT_UP_SLEEVES_14 tlLabel = "TORSO_P1_19_14" iDraw = 19 iTex = 14 cost = 520 eStyle = COMP_STYLE_STYLISH BREAK // 19_14 CASE TORSO_P1_SHIRT_UP_SLEEVES_15 tlLabel = "TORSO_P1_19_15" iDraw = 19 iTex = 15 cost = 440 eStyle = COMP_STYLE_STYLISH BREAK // 19_15 CASE TORSO_P1_SKYDIVING tlLabel = "NO_LABEL" iDraw = 20 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_UGLY BREAK // 20_0 CASE TORSO_P1_JACKET_0 tlLabel = "TORSO_P1_21_0" iDraw = 21 iTex = 0 cost = 220 BREAK // 21_0 CASE TORSO_P1_JACKET_1 tlLabel = "TORSO_P1_21_1" iDraw = 21 iTex = 1 cost = 200 BREAK // 21_1 CASE TORSO_P1_JACKET_2 tlLabel = "TORSO_P1_21_2" iDraw = 21 iTex = 2 cost = 240 BREAK // 21_2 CASE TORSO_P1_JACKET_3 tlLabel = "TORSO_P1_21_3" iDraw = 21 iTex = 3 cost = 240 BREAK // 21_3 CASE TORSO_P1_JACKET_4 tlLabel = "TORSO_P1_21_4" iDraw = 21 iTex = 4 cost = 260 BREAK // 21_4 CASE TORSO_P1_JACKET_5 tlLabel = "TORSO_P1_21_5" iDraw = 21 iTex = 5 cost = 275 BREAK // 21_5 CASE TORSO_P1_JACKET_6 tlLabel = "TORSO_P1_21_6" iDraw = 21 iTex = 6 cost = 275 BREAK // 21_6 CASE TORSO_P1_JACKET_7 tlLabel = "TORSO_P1_21_7" iDraw = 21 iTex = 7 cost = 280 BREAK // 21_7 CASE TORSO_P1_JACKET_8 tlLabel = "TORSO_P1_21_8" iDraw = 21 iTex = 8 cost = 280 BREAK // 21_8 CASE TORSO_P1_JACKET_9 tlLabel = "TORSO_P1_21_9" iDraw = 21 iTex = 9 cost = 280 BREAK // 21_9 CASE TORSO_P1_JACKET_10 tlLabel = "TORSO_P1_21_10" iDraw = 21 iTex = 10 cost = 280 BREAK // 21_10 CASE TORSO_P1_JACKET_11 tlLabel = "TORSO_P1_21_11" iDraw = 21 iTex = 11 cost = 280 BREAK // 21_11 CASE TORSO_P1_JACKET_12 tlLabel = "TORSO_P1_21_12" iDraw = 21 iTex = 12 cost = 280 BREAK // 21_12 CASE TORSO_P1_JACKET_13 tlLabel = "TORSO_P1_21_13" iDraw = 21 iTex = 13 cost = 280 BREAK // 21_13 CASE TORSO_P1_WOOL_PEACOAT tlLabel = "TORSO_P1_22_0" iDraw = 22 iTex = 0 cost = 3100 eStyle = COMP_STYLE_STYLISH BREAK // 22_0 CASE TORSO_P1_WOOL_PEACOAT_1 tlLabel = "TORSO_P1_22_1" iDraw = 22 iTex = 1 cost = 2800 eStyle = COMP_STYLE_STYLISH BREAK // 22_1 CASE TORSO_P1_WOOL_PEACOAT_2 tlLabel = "TORSO_P1_22_2" iDraw = 22 iTex = 2 cost = 2500 eStyle = COMP_STYLE_STYLISH BREAK // 22_2 CASE TORSO_P1_WOOL_PEACOAT_3 tlLabel = "TORSO_P1_22_3" iDraw = 22 iTex = 3 cost = 3000 eStyle = COMP_STYLE_STYLISH BREAK // 22_3 DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_TORSO_3(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE TORSO_P1_3PCSUIT tlLabel = "TORSO_P1_18_0" iDraw = 23 iTex = 0 eStyle = COMP_STYLE_STYLISH BREAK // 23_0 CASE TORSO_P1_3PCSUIT_1 tlLabel = "TORSO_P1_18_1" iDraw = 23 iTex = 1 eStyle = COMP_STYLE_STYLISH BREAK // 23_1 CASE TORSO_P1_3PCSUIT_2 tlLabel = "TORSO_P1_18_2" iDraw = 23 iTex = 2 eStyle = COMP_STYLE_STYLISH BREAK // 23_2 CASE TORSO_P1_3PCSUIT_3 tlLabel = "TORSO_P1_18_3" iDraw = 23 iTex = 3 eStyle = COMP_STYLE_STYLISH BREAK // 23_3 CASE TORSO_P1_3PCSUIT_4 tlLabel = "TORSO_P1_18_4" iDraw = 23 iTex = 4 eStyle = COMP_STYLE_STYLISH BREAK // 23_4 CASE TORSO_P1_3PCSUIT_5 tlLabel = "TORSO_P1_18_5" iDraw = 23 iTex = 5 eStyle = COMP_STYLE_STYLISH BREAK // 23_5 CASE TORSO_P1_3PCSUIT_6 tlLabel = "TORSO_P1_18_6" iDraw = 23 iTex = 6 eStyle = COMP_STYLE_STYLISH BREAK // 23_6 CASE TORSO_P1_3PCSUIT_7 tlLabel = "TORSO_P1_18_7" iDraw = 23 iTex = 7 eStyle = COMP_STYLE_STYLISH BREAK // 23_7 CASE TORSO_P1_3PCSUIT_8 tlLabel = "TORSO_P1_18_8" iDraw = 23 iTex = 8 eStyle = COMP_STYLE_STYLISH BREAK // 23_8 CASE TORSO_P1_3PCSUIT_9 tlLabel = "TORSO_P1_18_9" iDraw = 23 iTex = 9 eStyle = COMP_STYLE_STYLISH BREAK // 23_9 CASE TORSO_P1_3PCSUIT_10 tlLabel = "TORSO_P1_18_10" iDraw = 23 iTex = 10 eStyle = COMP_STYLE_STYLISH BREAK // 23_10 CASE TORSO_P1_3PCSUIT_11 tlLabel = "TORSO_P1_18_11" iDraw = 23 iTex = 11 eStyle = COMP_STYLE_STYLISH BREAK // 23_11 CASE TORSO_P1_3PCSUIT_12 tlLabel = "TORSO_P1_18_12" iDraw = 23 iTex = 12 eStyle = COMP_STYLE_STYLISH BREAK // 23_12 CASE TORSO_P1_3PCSUIT_13 tlLabel = "TORSO_P1_18_13" iDraw = 23 iTex = 13 eStyle = COMP_STYLE_STYLISH BREAK // 23_13 CASE TORSO_P1_3PCSUIT_14 tlLabel = "TORSO_P1_18_14" iDraw = 23 iTex = 14 eStyle = COMP_STYLE_STYLISH BREAK // 23_14 CASE TORSO_P1_3PCSUIT_15 tlLabel = "TORSO_P1_18_15" iDraw = 23 iTex = 15 eStyle = COMP_STYLE_STYLISH BREAK // 23_15 CASE TORSO_P1_WAISTCOAT tlLabel = "TORSO_P1_24_0" iDraw = 24 iTex = 0 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_0 CASE TORSO_P1_WAISTCOAT_1 tlLabel = "TORSO_P1_24_1" iDraw = 24 iTex = 1 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_1 CASE TORSO_P1_WAISTCOAT_2 tlLabel = "TORSO_P1_24_2" iDraw = 24 iTex = 2 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_2 CASE TORSO_P1_WAISTCOAT_3 tlLabel = "TORSO_P1_24_3" iDraw = 24 iTex = 3 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_3 CASE TORSO_P1_WAISTCOAT_4 tlLabel = "TORSO_P1_24_4" iDraw = 24 iTex = 4 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_4 CASE TORSO_P1_WAISTCOAT_5 tlLabel = "TORSO_P1_24_5" iDraw = 24 iTex = 5 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_5 CASE TORSO_P1_WAISTCOAT_6 tlLabel = "TORSO_P1_24_6" iDraw = 24 iTex = 6 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_6 CASE TORSO_P1_WAISTCOAT_7 tlLabel = "TORSO_P1_24_7" iDraw = 24 iTex = 7 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_7 CASE TORSO_P1_WAISTCOAT_8 tlLabel = "TORSO_P1_24_8" iDraw = 24 iTex = 8 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_8 CASE TORSO_P1_WAISTCOAT_9 tlLabel = "TORSO_P1_24_9" iDraw = 24 iTex = 9 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_9 CASE TORSO_P1_WAISTCOAT_10 tlLabel = "TORSO_P1_24_10" iDraw = 24 iTex = 10 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_10 CASE TORSO_P1_WAISTCOAT_11 tlLabel = "TORSO_P1_24_11" iDraw = 24 iTex = 11 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_11 CASE TORSO_P1_WAISTCOAT_12 tlLabel = "TORSO_P1_24_12" iDraw = 24 iTex = 12 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_12 CASE TORSO_P1_WAISTCOAT_13 tlLabel = "TORSO_P1_24_13" iDraw = 24 iTex = 13 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_13 CASE TORSO_P1_WAISTCOAT_14 tlLabel = "TORSO_P1_24_14" iDraw = 24 iTex = 14 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_14 CASE TORSO_P1_WAISTCOAT_15 tlLabel = "TORSO_P1_24_15" iDraw = 24 iTex = 15 cost = 2200 eStyle = COMP_STYLE_STYLISH BREAK // 24_15 CASE TORSO_P1_TUXEDO_AND_SHIRT tlLabel = "TORSO_P1_25_0" iDraw = 25 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_STYLISH BREAK // 25_0 CASE TORSO_P1_BARE_CHEST tlLabel = "NO_LABEL" iDraw = 26 iTex = 0 eStyle = COMP_STYLE_CRAZY BREAK // 26_0 CASE TORSO_P1_SHOOTING_VEST_0 tlLabel = "TORSO_P1_27_0" iDraw = 27 iTex = 0 cost = 150 BREAK // 27_0 CASE TORSO_P1_SHOOTING_VEST_1 tlLabel = "TORSO_P1_27_1" iDraw = 27 iTex = 1 cost = 160 BREAK // 27_1 CASE TORSO_P1_SHOOTING_VEST_2 tlLabel = "TORSO_P1_27_2" iDraw = 27 iTex = 2 cost = 150 BREAK // 27_2 CASE TORSO_P1_SHOOTING_VEST_3 tlLabel = "TORSO_P1_27_3" iDraw = 27 iTex = 3 cost = 150 BREAK // 27_3 CASE TORSO_P1_SHOOTING_VEST_4 tlLabel = "TORSO_P1_27_4" iDraw = 27 iTex = 4 cost = 160 BREAK // 27_4 CASE TORSO_P1_SHOOTING_VEST_5 tlLabel = "TORSO_P1_27_5" iDraw = 27 iTex = 5 cost = 160 BREAK // 27_5 CASE TORSO_P1_GRAY_HOODIE tlLabel = "TORSO_P1_28_0" iDraw = 28 iTex = 0 cost = 88 BREAK // 28_0 CASE TORSO_P1_AMMUN_HOODIE_1 tlLabel = "TORSO_P1_28_1" iDraw = 28 iTex = 1 cost = 60 BREAK // 28_1 CASE TORSO_P1_AMMUN_HOODIE_2 tlLabel = "TORSO_P1_28_2" iDraw = 28 iTex = 2 cost = 70 BREAK // 28_2 CASE TORSO_P1_AMMUN_HOODIE_3 tlLabel = "TORSO_P1_28_3" iDraw = 28 iTex = 3 cost = 80 BREAK // 28_3 CASE TORSO_P1_AMMUN_HOODIE_4 tlLabel = "TORSO_P1_28_4" iDraw = 28 iTex = 4 cost = 90 BREAK // 28_4 CASE TORSO_P1_AMMUN_HOODIE_5 tlLabel = "TORSO_P1_28_5" iDraw = 28 iTex = 5 cost = 80 BREAK // 28_5 CASE TORSO_P1_AMMUN_HOODIE_6 tlLabel = "TORSO_P1_28_6" iDraw = 28 iTex = 6 cost = 70 BREAK // 28_6 CASE TORSO_P1_AMMUN_HOODIE_7 tlLabel = "TORSO_P1_28_7" iDraw = 28 iTex = 7 cost = 95 BREAK // 28_7 CASE TORSO_P1_AMMUN_HOODIE_8 tlLabel = "TORSO_P1_28_8" iDraw = 28 iTex = 8 cost = 105 BREAK // 28_8 CASE TORSO_P1_AMMUN_HOODIE_9 tlLabel = "TORSO_P1_28_9" iDraw = 28 iTex = 9 cost = 95 BREAK // 28_9 CASE TORSO_P1_AMMUN_HOODIE_10 tlLabel = "TORSO_P1_28_10" iDraw = 28 iTex = 10 cost = 110 BREAK // 28_10 CASE TORSO_P1_AMMUN_HOODIE_11 tlLabel = "TORSO_P1_28_11" iDraw = 28 iTex = 11 cost = 98 BREAK // 28_11 CASE TORSO_P1_AMMUN_HOODIE_12 tlLabel = "TORSO_P1_28_12" iDraw = 28 iTex = 12 cost = 88 BREAK // 28_12 CASE TORSO_P1_AMMUN_HOODIE_13 tlLabel = "TORSO_P1_28_13" iDraw = 28 iTex = 13 cost = 98 BREAK // 28_13 CASE TORSO_P1_AMMUN_HOODIE_14 tlLabel = "TORSO_P1_28_14" iDraw = 28 iTex = 14 cost = 110 BREAK // 28_14 CASE TORSO_P1_AMMUN_HOODIE_15 tlLabel = "TORSO_P1_28_15" iDraw = 28 iTex = 15 cost = 98 BREAK // 28_15 CASE TORSO_P1_T_SHIRT_0 tlLabel = "TORSO_P1_29_0" iDraw = 29 iTex = 0 cost = 250 BREAK // 29_0 CASE TORSO_P1_T_SHIRT_1 tlLabel = "TORSO_P1_29_1" iDraw = 29 iTex = 1 cost = 270 BREAK // 29_1 CASE TORSO_P1_T_SHIRT_2 tlLabel = "TORSO_P1_29_2" iDraw = 29 iTex = 2 cost = 280 BREAK // 29_2 CASE TORSO_P1_T_SHIRT_3 tlLabel = "TORSO_P1_29_3" iDraw = 29 iTex = 3 cost = 275 BREAK // 29_3 CASE TORSO_P1_T_SHIRT_4 tlLabel = "TORSO_P1_29_4" iDraw = 29 iTex = 4 cost = 290 BREAK // 29_4 CASE TORSO_P1_T_SHIRT_5 tlLabel = "TORSO_P1_29_5" iDraw = 29 iTex = 5 cost = 35 BREAK // 29_5 CASE TORSO_P1_T_SHIRT_6 tlLabel = "TORSO_P1_29_6" iDraw = 29 iTex = 6 cost = 35 BREAK // 29_6 CASE TORSO_P1_T_SHIRT_7 tlLabel = "TORSO_P1_29_7" iDraw = 29 iTex = 7 cost = 35 BREAK // 29_7 CASE TORSO_P1_T_SHIRT_8 tlLabel = "TORSO_P1_29_8" iDraw = 29 iTex = 8 cost = 295 BREAK // 29_8 CASE TORSO_P1_T_SHIRT_9 tlLabel = "TORSO_P1_29_9" iDraw = 29 iTex = 9 cost = 35 BREAK // 29_9 CASE TORSO_P1_T_SHIRT_10 tlLabel = "TORSO_P1_29_10" iDraw = 29 iTex = 10 cost = 35 BREAK // 29_10 CASE TORSO_P1_T_SHIRT_11 tlLabel = "TORSO_P1_29_11" iDraw = 29 iTex = 11 cost = 35 BREAK // 29_11 CASE TORSO_P1_T_SHIRT_12 tlLabel = "TORSO_P1_29_12" iDraw = 29 iTex = 12 BREAK // 29_12 CASE TORSO_P1_CARDIGAN_0 tlLabel = "TORSO_P1_30_0" iDraw = 30 iTex = 0 cost = 1750 BREAK // 30_0 CASE TORSO_P1_CARDIGAN_1 tlLabel = "TORSO_P1_30_1" iDraw = 30 iTex = 1 cost = 1920 BREAK // 30_1 CASE TORSO_P1_CARDIGAN_2 tlLabel = "TORSO_P1_30_2" iDraw = 30 iTex = 2 cost = 1890 BREAK // 30_2 CASE TORSO_P1_CARDIGAN_3 tlLabel = "TORSO_P1_30_3" iDraw = 30 iTex = 3 cost = 1850 BREAK // 30_3 CASE TORSO_P1_CARDIGAN_4 tlLabel = "TORSO_P1_30_4" iDraw = 30 iTex = 4 cost = 1750 BREAK // 30_4 CASE TORSO_P1_CARDIGAN_5 tlLabel = "TORSO_P1_30_5" iDraw = 30 iTex = 5 cost = 1990 BREAK // 30_5 CASE TORSO_P1_CARDIGAN_6 tlLabel = "TORSO_P1_30_6" iDraw = 30 iTex = 6 cost = 1820 BREAK // 30_6 CASE TORSO_P1_CARDIGAN_7 tlLabel = "TORSO_P1_30_7" iDraw = 30 iTex = 7 cost = 1990 BREAK // 30_7 CASE TORSO_P1_CARDIGAN_8 tlLabel = "TORSO_P1_30_8" iDraw = 30 iTex = 8 cost = 1920 BREAK // 30_8 CASE TORSO_P1_CARDIGAN_9 tlLabel = "TORSO_P1_30_9" iDraw = 30 iTex = 9 cost = 1850 BREAK // 30_9 CASE TORSO_P1_CARDIGAN_10 tlLabel = "TORSO_P1_30_10" iDraw = 30 iTex = 10 cost = 1990 BREAK // 30_10 CASE TORSO_P1_CARDIGAN_11 tlLabel = "TORSO_P1_30_11" iDraw = 30 iTex = 11 cost = 1790 BREAK // 30_11 CASE TORSO_P1_CARDIGAN_12 tlLabel = "TORSO_P1_30_12" iDraw = 30 iTex = 12 cost = 1790 BREAK // 30_12 CASE TORSO_P1_BASKETBALL_0 tlLabel = "TORSO_P1_31_0" iDraw = 31 iTex = 0 cost = 69 BREAK // 31_0 CASE TORSO_P1_BASKETBALL_1 tlLabel = "TORSO_P1_31_1" iDraw = 31 iTex = 1 cost = 75 BREAK // 31_1 CASE TORSO_P1_BASKETBALL_2 tlLabel = "TORSO_P1_31_2" iDraw = 31 iTex = 2 cost = 75 BREAK // 31_2 CASE TORSO_P1_BASKETBALL_3 tlLabel = "TORSO_P1_31_3" iDraw = 31 iTex = 3 cost = 79 BREAK // 31_3 CASE TORSO_P1_BASKETBALL_4 tlLabel = "TORSO_P1_31_4" iDraw = 31 iTex = 4 cost = 79 BREAK // 31_4 CASE TORSO_P1_BASKETBALL_5 tlLabel = "TORSO_P1_31_5" iDraw = 31 iTex = 5 cost = 89 BREAK // 31_5 CASE TORSO_P1_BASKETBALL_6 tlLabel = "TORSO_P1_31_6" iDraw = 31 iTex = 6 cost = 85 BREAK // 31_6 CASE TORSO_P1_BASKETBALL_7 tlLabel = "TORSO_P1_31_7" iDraw = 31 iTex = 7 cost = 85 BREAK // 31_7 CASE TORSO_P1_BASKETBALL_8 tlLabel = "TORSO_P1_31_8" iDraw = 31 iTex = 8 BREAK // 31_8 DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_TORSO(PED_COMP_NAME_ENUM eItem) IF eItem < TORSO_P1_VARSITY FILL_PED_COMP_DATA_FRANKLIN_TORSO_1(eItem) ELIF eItem < TORSO_P1_3PCSUIT FILL_PED_COMP_DATA_FRANKLIN_TORSO_2(eItem) ELSE FILL_PED_COMP_DATA_FRANKLIN_TORSO_3(eItem) ENDIF IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(COMP_TYPE_TORSO, eItem, TORSO_P1_DLC) ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_LEGS(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_LEGS g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE LEGS_P1_BEIGE_SHORTS tlLabel = "LEGS_P1_0_0" iDraw = 0 iTex = 0 BREAK CASE LEGS_P1_CARGO_SHORTS_1 tlLabel = "LEGS_P1_0_1" iDraw = 0 iTex = 1 cost = 32 BREAK CASE LEGS_P1_CARGO_SHORTS_2 tlLabel = "LEGS_P1_0_2" iDraw = 0 iTex = 2 cost = 38 BREAK CASE LEGS_P1_CARGO_SHORTS_3 tlLabel = "LEGS_P1_0_3" iDraw = 0 iTex = 3 cost = 44 BREAK CASE LEGS_P1_BLACK_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_RED_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 1 bOutfitOnly = TRUE BREAK CASE LEGS_P1_BLUE_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 2 bOutfitOnly = TRUE BREAK CASE LEGS_P1_NAVY_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 3 bOutfitOnly = TRUE BREAK CASE LEGS_P1_GRAY_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 4 bOutfitOnly = TRUE BREAK CASE LEGS_P1_GREEN_BOILER tlLabel = "NO_LABEL" iDraw = 1 iTex = 5 bOutfitOnly = TRUE BREAK CASE LEGS_P1_WHITE_TUXEDO tlLabel = "LEGS_P1_2_0" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_SCUBA tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_BALLISTICS tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_TRIATHLON tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_GOLF_0 tlLabel = "LEGS_P1_6_0" iDraw = 6 iTex = 0 BREAK CASE LEGS_P1_GOLF_1 tlLabel = "LEGS_P1_6_1" iDraw = 6 iTex = 1 cost = 690 BREAK CASE LEGS_P1_GOLF_2 tlLabel = "LEGS_P1_6_2" iDraw = 6 iTex = 2 cost = 720 BREAK CASE LEGS_P1_GOLF_3 tlLabel = "LEGS_P1_6_3" iDraw = 6 iTex = 3 cost = 850 BREAK CASE LEGS_P1_GOLF_4 tlLabel = "LEGS_P1_6_4" iDraw = 6 iTex = 4 cost = 850 BREAK CASE LEGS_P1_GOLF_5 tlLabel = "LEGS_P1_6_5" iDraw = 6 iTex = 5 cost = 740 BREAK CASE LEGS_P1_GOLF_6 tlLabel = "LEGS_P1_6_6" iDraw = 6 iTex = 6 cost = 750 BREAK CASE LEGS_P1_GOLF_7 tlLabel = "LEGS_P1_6_7" iDraw = 6 iTex = 7 cost = 790 BREAK CASE LEGS_P1_MOTO_X tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_MOTO_X_1 tlLabel = "NO_LABEL" iDraw = 7 iTex = 1 bOutfitOnly = TRUE BREAK CASE LEGS_P1_BLACK_JEANS tlLabel = "LEGS_P1_8_0" iDraw = 8 iTex = 0 BREAK CASE LEGS_P1_BLUE_JEANS tlLabel = "LEGS_P1_8_1" iDraw = 8 iTex = 1 cost = 145 BREAK CASE LEGS_P1_BLUE_JEANS_2 tlLabel = "LEGS_P1_8_2" iDraw = 8 iTex = 2 cost = 140 BREAK CASE LEGS_P1_BLUE_JEANS_3 tlLabel = "LEGS_P1_8_3" iDraw = 8 iTex = 3 cost = 148 BREAK CASE LEGS_P1_BLUE_JEANS_4 tlLabel = "LEGS_P1_8_4" iDraw = 8 iTex = 4 cost = 150 BREAK CASE LEGS_P1_BLUE_JEANS_5 tlLabel = "LEGS_P1_8_5" iDraw = 8 iTex = 5 cost = 154 BREAK CASE LEGS_P1_BLUE_JEANS_6 tlLabel = "LEGS_P1_8_6" iDraw = 8 iTex = 6 cost = 158 BREAK CASE LEGS_P1_MIME tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_FIREMAN tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P1_CHINOS tlLabel = "LEGS_P1_11_0" iDraw = 11 iTex = 0 cost = 820 BREAK // 11_0 CASE LEGS_P1_CHINOS_1 tlLabel = "LEGS_P1_11_1" iDraw = 11 iTex = 1 cost = 820 BREAK // 11_1 CASE LEGS_P1_CHINOS_2 tlLabel = "LEGS_P1_11_2" iDraw = 11 iTex = 2 cost = 850 BREAK // 11_2 CASE LEGS_P1_CHINOS_3 tlLabel = "LEGS_P1_11_3" iDraw = 11 iTex = 3 cost = 850 BREAK // 11_3 CASE LEGS_P1_CHINOS_4 tlLabel = "LEGS_P1_11_4" iDraw = 11 iTex = 4 cost = 920 BREAK // 11_4 CASE LEGS_P1_CHINOS_5 tlLabel = "LEGS_P1_11_5" iDraw = 11 iTex = 5 cost = 950 BREAK // 11_5 CASE LEGS_P1_DUMMY tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 BREAK // 12_0 CASE LEGS_P1_SWEATPANTS tlLabel = "LEGS_P1_13_0" iDraw = 13 iTex = 0 BREAK // 13_0 CASE LEGS_P1_SWEATPANTS_1 tlLabel = "LEGS_P1_13_1" iDraw = 13 iTex = 1 cost = 45 BREAK CASE LEGS_P1_SWEATPANTS_2 tlLabel = "LEGS_P1_13_2" iDraw = 13 iTex = 2 cost = 48 BREAK CASE LEGS_P1_SWEATPANTS_3 tlLabel = "LEGS_P1_13_3" iDraw = 13 iTex = 3 cost = 45 BREAK CASE LEGS_P1_SWEATPANTS_4 tlLabel = "LEGS_P1_13_4" iDraw = 13 iTex = 4 cost = 48 BREAK CASE LEGS_P1_SWEATPANTS_5 tlLabel = "LEGS_P1_13_5" iDraw = 13 iTex = 5 cost = 52 BREAK CASE LEGS_P1_SWEATPANTS_6 tlLabel = "LEGS_P1_13_6" iDraw = 13 iTex = 6 cost = 55 BREAK CASE LEGS_P1_SWEATPANTS_7 tlLabel = "LEGS_P1_13_7" iDraw = 13 iTex = 7 cost = 58 BREAK CASE LEGS_P1_SWEATPANTS_8 tlLabel = "LEGS_P1_13_8" iDraw = 13 iTex = 8 cost = 60 BREAK CASE LEGS_P1_SWEATPANTS_9 tlLabel = "LEGS_P1_13_9" iDraw = 13 iTex = 9 cost = 58 BREAK CASE LEGS_P1_SWEATPANTS_10 tlLabel = "LEGS_P1_13_10" iDraw = 13 iTex = 10 cost = 62 BREAK CASE LEGS_P1_SWEATPANTS_11 tlLabel = "LEGS_P1_13_11" iDraw = 13 iTex = 11 cost = 65 BREAK CASE LEGS_P1_TENNIS tlLabel = "LEGS_P1_14_0" iDraw = 14 iTex = 0 BREAK CASE LEGS_P1_SUIT tlLabel = "LEGS_P1_15_0" iDraw = 15 iTex = 0 BREAK CASE LEGS_P1_SUIT_1 tlLabel = "LEGS_P1_15_1" iDraw = 15 iTex = 1 BREAK // 15_1 CASE LEGS_P1_SUIT_2 tlLabel = "LEGS_P1_15_2" iDraw = 15 iTex = 2 BREAK // 15_2 CASE LEGS_P1_SUIT_3 tlLabel = "LEGS_P1_15_3" iDraw = 15 iTex = 3 BREAK // 15_3 CASE LEGS_P1_SUIT_4 tlLabel = "LEGS_P1_15_4" iDraw = 15 iTex = 4 BREAK // 15_4 CASE LEGS_P1_SUIT_5 tlLabel = "LEGS_P1_15_5" iDraw = 15 iTex = 5 BREAK // 15_5 CASE LEGS_P1_SUIT_6 tlLabel = "LEGS_P1_15_6" iDraw = 15 iTex = 6 BREAK // 15_6 CASE LEGS_P1_SUIT_7 tlLabel = "LEGS_P1_15_7" iDraw = 15 iTex = 7 BREAK // 15_7 CASE LEGS_P1_SUIT_8 tlLabel = "LEGS_P1_15_8" iDraw = 15 iTex = 8 BREAK // 15_8 CASE LEGS_P1_SUIT_9 tlLabel = "LEGS_P1_15_9" iDraw = 15 iTex = 9 BREAK // 15_9 CASE LEGS_P1_SUIT_10 tlLabel = "LEGS_P1_15_10" iDraw = 15 iTex = 10 BREAK // 15_10 CASE LEGS_P1_SUIT_11 tlLabel = "LEGS_P1_15_11" iDraw = 15 iTex = 11 BREAK // 15_11 CASE LEGS_P1_SUIT_12 tlLabel = "LEGS_P1_15_12" iDraw = 15 iTex = 12 BREAK // 15_12 CASE LEGS_P1_SUIT_13 tlLabel = "LEGS_P1_15_13" iDraw = 15 iTex = 13 BREAK // 15_13 CASE LEGS_P1_SUIT_14 tlLabel = "LEGS_P1_15_14" iDraw = 15 iTex = 14 BREAK // 15_14 CASE LEGS_P1_SUIT_15 tlLabel = "LEGS_P1_15_15" iDraw = 15 iTex = 15 BREAK // 15_15 CASE LEGS_P1_STEALTH tlLabel = "LEGS_P1_16_0" iDraw = 16 iTex = 0 bOutfitOnly = TRUE BREAK // 16_0 CASE LEGS_P1_STEALTH_1 tlLabel = "NO_LABEL" iDraw = 16 iTex = 1 bOutfitOnly = TRUE BREAK // 16_0 CASE LEGS_P1_SKYDIVING tlLabel = "NO_LABEL" iDraw = 17 iTex = 0 bOutfitOnly = TRUE BREAK // 17_0 CASE LEGS_P1_BOXERS tlLabel = "LEGS_P1_18_0" iDraw = 18 iTex = 0 BREAK // 18_0 CASE LEGS_P1_BOXERS_1 tlLabel = "LEGS_P1_18_1" iDraw = 18 iTex = 1 cost = 160 BREAK // 18_1 CASE LEGS_P1_BOXERS_2 tlLabel = "LEGS_P1_18_2" iDraw = 18 iTex = 2 cost = 180 BREAK // 18_2 CASE LEGS_P1_BOXERS_3 tlLabel = "LEGS_P1_18_3" iDraw = 18 iTex = 3 cost = 180 BREAK // 18_3 CASE LEGS_P1_BOXERS_4 tlLabel = "LEGS_P1_18_4" iDraw = 18 iTex = 4 BREAK // 18_4 CASE LEGS_P1_BOXERS_5 tlLabel = "LEGS_P1_18_5" iDraw = 18 iTex = 5 BREAK // 18_5 CASE LEGS_P1_TUXEDO_NO_SHOES tlLabel = "LEGS_P1_19_0" iDraw = 19 iTex = 0 bOutfitOnly = TRUE BREAK // 19_0 CASE LEGS_P1_JEANS_0 tlLabel = "LEGS_P1_20_0" iDraw = 20 iTex = 0 cost = 118 BREAK // 20_0 CASE LEGS_P1_JEANS_1 tlLabel = "LEGS_P1_20_1" iDraw = 20 iTex = 1 cost = 120 BREAK // 20_1 CASE LEGS_P1_JEANS_2 tlLabel = "LEGS_P1_20_2" iDraw = 20 iTex = 2 cost = 128 BREAK // 20_2 CASE LEGS_P1_JEANS_3 tlLabel = "LEGS_P1_20_3" iDraw = 20 iTex = 3 cost = 128 BREAK // 20_3 CASE LEGS_P1_JEANS_4 tlLabel = "LEGS_P1_20_4" iDraw = 20 iTex = 4 cost = 130 BREAK // 20_4 CASE LEGS_P1_JEANS_5 tlLabel = "LEGS_P1_20_5" iDraw = 20 iTex = 5 cost = 145 BREAK // 20_5 CASE LEGS_P1_JEANS_6 tlLabel = "LEGS_P1_20_6" iDraw = 20 iTex = 6 cost = 138 BREAK // 20_6 CASE LEGS_P1_JEANS_7 tlLabel = "LEGS_P1_20_7" iDraw = 20 iTex = 7 cost = 132 BREAK // 20_7 CASE LEGS_P1_JEANS_8 tlLabel = "LEGS_P1_20_8" iDraw = 20 iTex = 8 cost = 148 BREAK // 20_8 CASE LEGS_P1_JEANS_B_0 tlLabel = "LEGS_P1_21_0" iDraw = 21 iTex = 0 cost = 118 BREAK // 21_0 CASE LEGS_P1_JEANS_B_1 tlLabel = "LEGS_P1_21_1" iDraw = 21 iTex = 1 cost = 118 BREAK // 21_1 CASE LEGS_P1_JEANS_B_2 tlLabel = "LEGS_P1_21_2" iDraw = 21 iTex = 2 cost = 118 BREAK // 21_2 CASE LEGS_P1_JEANS_B_3 tlLabel = "LEGS_P1_21_3" iDraw = 21 iTex = 3 cost = 129 BREAK // 21_3 CASE LEGS_P1_JEANS_B_4 tlLabel = "LEGS_P1_21_4" iDraw = 21 iTex = 4 cost = 135 BREAK // 21_4 CASE LEGS_P1_JEANS_B_5 tlLabel = "LEGS_P1_21_5" iDraw = 21 iTex = 5 cost = 135 BREAK // 21_5 CASE LEGS_P1_JEANS_B_6 tlLabel = "LEGS_P1_21_6" iDraw = 21 iTex = 6 cost = 118 BREAK // 21_6 CASE LEGS_P1_JEANS_B_7 tlLabel = "LEGS_P1_21_7" iDraw = 21 iTex = 7 cost = 118 BREAK // 21_7 CASE LEGS_P1_JEANS_B_8 tlLabel = "LEGS_P1_21_8" iDraw = 21 iTex = 8 cost = 118 BREAK // 21_8 CASE LEGS_P1_BASKETBALL_SHORTS_0 tlLabel = "LEGS_P1_22_0" iDraw = 22 iTex = 0 cost = 55 BREAK // 22_0 CASE LEGS_P1_BASKETBALL_SHORTS_1 tlLabel = "LEGS_P1_22_1" iDraw = 22 iTex = 1 cost = 55 BREAK // 22_1 CASE LEGS_P1_BASKETBALL_SHORTS_2 tlLabel = "LEGS_P1_22_2" iDraw = 22 iTex = 2 cost = 59 BREAK // 22_2 CASE LEGS_P1_BASKETBALL_SHORTS_3 tlLabel = "LEGS_P1_22_3" iDraw = 22 iTex = 3 cost = 59 BREAK // 22_3 CASE LEGS_P1_BASKETBALL_SHORTS_4 tlLabel = "LEGS_P1_22_4" iDraw = 22 iTex = 4 cost = 65 BREAK // 22_4 CASE LEGS_P1_BASKETBALL_SHORTS_5 tlLabel = "LEGS_P1_22_5" iDraw = 22 iTex = 5 cost = 65 BREAK // 22_5 CASE LEGS_P1_BASKETBALL_SHORTS_6 tlLabel = "LEGS_P1_22_6" iDraw = 22 iTex = 6 cost = 69 BREAK // 22_6 CASE LEGS_P1_BASKETBALL_SHORTS_7 tlLabel = "LEGS_P1_22_7" iDraw = 22 iTex = 7 cost = 69 BREAK // 22_7 CASE LEGS_P1_BASKETBALL_SHORTS_8 tlLabel = "LEGS_P1_22_8" iDraw = 22 iTex = 8 cost = 75 BREAK // 22_8 CASE LEGS_P1_BASKETBALL_SHORTS_9 tlLabel = "LEGS_P1_22_9" iDraw = 22 iTex = 9 cost = 75 BREAK // 22_9 CASE LEGS_P1_BASKETBALL_SHORTS_10 tlLabel = "LEGS_P1_22_10" iDraw = 22 iTex = 10 cost = 65 BREAK // 22_10 CASE LEGS_P1_BASKETBALL_SHORTS_11 tlLabel = "LEGS_P1_22_11" iDraw = 22 iTex = 11 cost = 65 BREAK // 22_11 CASE LEGS_P1_BASKETBALL_SHORTS_12 tlLabel = "LEGS_P1_22_12" iDraw = 22 iTex = 12 cost = 65 BREAK // 22_12 CASE LEGS_P1_BASKETBALL_SHORTS_13 tlLabel = "LEGS_P1_22_13" iDraw = 22 iTex = 13 cost = 65 BREAK // 22_13 CASE LEGS_P1_SHORTS_0 tlLabel = "LEGS_P1_23_0" iDraw = 23 iTex = 0 cost = 38 BREAK CASE LEGS_P1_SHORTS_1 tlLabel = "LEGS_P1_23_1" iDraw = 23 iTex = 1 cost = 38 BREAK CASE LEGS_P1_SHORTS_2 tlLabel = "LEGS_P1_23_2" iDraw = 23 iTex = 2 cost = 28 BREAK CASE LEGS_P1_SHORTS_3 tlLabel = "LEGS_P1_23_3" iDraw = 23 iTex = 3 cost = 34 BREAK CASE LEGS_P1_SHORTS_4 tlLabel = "LEGS_P1_23_4" iDraw = 23 iTex = 4 cost = 36 BREAK CASE LEGS_P1_SHORTS_5 tlLabel = "LEGS_P1_23_5" iDraw = 23 iTex = 5 cost = 32 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_FEET(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_FEET g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE FEET_P1_TRAINERS tlLabel = "FEET_P1_00_0" iDraw = 0 iTex = 0 BREAK CASE FEET_P1_TRAINERS_1 tlLabel = "FEET_P1_00_1" iDraw = 0 iTex = 1 cost = 80 BREAK CASE FEET_P1_TRAINERS_2 tlLabel = "FEET_P1_00_2" iDraw = 0 iTex = 2 cost = 80 BREAK CASE FEET_P1_TRAINERS_3 tlLabel = "FEET_P1_00_3" iDraw = 0 iTex = 3 cost = 89 BREAK CASE FEET_P1_TRAINERS_4 tlLabel = "FEET_P1_00_4" iDraw = 0 iTex = 4 cost = 45 BREAK CASE FEET_P1_TRAINERS_5 tlLabel = "FEET_P1_00_5" iDraw = 0 iTex = 5 cost = 35 BREAK CASE FEET_P1_TRAINERS_6 tlLabel = "FEET_P1_00_6" iDraw = 0 iTex = 6 cost = 89 BREAK CASE FEET_P1_TRAINERS_7 tlLabel = "FEET_P1_00_7" iDraw = 0 iTex = 7 cost = 95 BREAK CASE FEET_P1_TRAINERS_8 tlLabel = "FEET_P1_00_8" iDraw = 0 iTex = 8 cost = 115 BREAK CASE FEET_P1_TRAINERS_9 tlLabel = "FEET_P1_00_9" iDraw = 0 iTex = 9 cost = 40 BREAK CASE FEET_P1_TRAINERS_10 tlLabel = "FEET_P1_00_10" iDraw = 0 iTex = 10 cost = 145 BREAK CASE FEET_P1_TRAINERS_11 tlLabel = "FEET_P1_00_11" iDraw = 0 iTex = 11 cost = 145 BREAK CASE FEET_P1_BLACK_BOILER tlLabel = "FEET_P1_01_0" iDraw = 1 iTex = 0 BREAK CASE FEET_P1_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_TRIATHLON tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_MOTO_X tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_MOTO_X_1 tlLabel = "NO_LABEL" iDraw = 4 iTex = 1 bOutfitOnly = TRUE BREAK CASE FEET_P1_DUMMY tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 BREAK // dummy shoes for legs that have shoes attached CASE FEET_P1_NUBUCK_BOOTS tlLabel = "FEET_P1_06_0" iDraw = 6 iTex = 0 BREAK CASE FEET_P1_NUBUCK_BOOTS_1 tlLabel = "FEET_P1_06_1" iDraw = 6 iTex = 1 cost = 180 BREAK CASE FEET_P1_NUBUCK_BOOTS_2 tlLabel = "FEET_P1_06_2" iDraw = 6 iTex = 2 cost = 80 BREAK CASE FEET_P1_NUBUCK_BOOTS_3 tlLabel = "FEET_P1_06_3" iDraw = 6 iTex = 3 cost = 200 BREAK CASE FEET_P1_NUBUCK_BOOTS_4 tlLabel = "FEET_P1_06_4" iDraw = 6 iTex = 4 cost = 220 BREAK CASE FEET_P1_NUBUCK_BOOTS_5 tlLabel = "FEET_P1_06_5" iDraw = 6 iTex = 5 cost = 235 BREAK CASE FEET_P1_MIME tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_SUIT tlLabel = "FEET_P1_08_0" iDraw = 8 iTex = 0 cost = 870 BREAK CASE FEET_P1_SUIT_1 tlLabel = "FEET_P1_08_1" iDraw = 8 iTex = 1 cost = 870 BREAK CASE FEET_P1_SUIT_2 tlLabel = "FEET_P1_08_2" iDraw = 8 iTex = 2 cost = 870 BREAK CASE FEET_P1_SUIT_3 tlLabel = "FEET_P1_08_3" iDraw = 8 iTex = 3 cost = 1275 BREAK CASE FEET_P1_SUIT_4 tlLabel = "FEET_P1_08_4" iDraw = 8 iTex = 4 cost = 1275 BREAK CASE FEET_P1_SUIT_5 tlLabel = "FEET_P1_08_5" iDraw = 8 iTex = 5 cost = 1275 BREAK CASE FEET_P1_SUIT_6 tlLabel = "FEET_P1_08_6" iDraw = 8 iTex = 6 cost = 1275 BREAK CASE FEET_P1_SUIT_7 tlLabel = "FEET_P1_08_7" iDraw = 8 iTex = 7 cost = 1275 BREAK CASE FEET_P1_SUIT_8 tlLabel = "FEET_P1_08_8" iDraw = 8 iTex = 8 cost = 1275 BREAK CASE FEET_P1_SCUBA_LAND tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_SMART_SHOES tlLabel = "FEET_P1_10_0" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_SNEAKERS_A_0 tlLabel = "FEET_P1_11_0" iDraw = 11 iTex = 0 BREAK CASE FEET_P1_SNEAKERS_A_1 tlLabel = "FEET_P1_11_1" iDraw = 11 iTex = 1 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_2 tlLabel = "FEET_P1_11_2" iDraw = 11 iTex = 2 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_3 tlLabel = "FEET_P1_11_3" iDraw = 11 iTex = 3 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_4 tlLabel = "FEET_P1_11_4" iDraw = 11 iTex = 4 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_5 tlLabel = "FEET_P1_11_5" iDraw = 11 iTex = 5 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_6 tlLabel = "FEET_P1_11_6" iDraw = 11 iTex = 6 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_7 tlLabel = "FEET_P1_11_7" iDraw = 11 iTex = 7 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_8 tlLabel = "FEET_P1_11_8" iDraw = 11 iTex = 8 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_9 tlLabel = "FEET_P1_11_9" iDraw = 11 iTex = 9 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_10 tlLabel = "FEET_P1_11_10" iDraw = 11 iTex = 10 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_11 tlLabel = "FEET_P1_11_11" iDraw = 11 iTex = 11 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_12 tlLabel = "FEET_P1_11_12" iDraw = 11 iTex = 12 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_13 tlLabel = "FEET_P1_11_13" iDraw = 11 iTex = 13 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_14 tlLabel = "FEET_P1_11_14" iDraw = 11 iTex = 14 cost = 50 BREAK CASE FEET_P1_SNEAKERS_A_15 tlLabel = "FEET_P1_11_15" iDraw = 11 iTex = 15 cost = 50 BREAK CASE FEET_P1_SNEAKERS_B_0 tlLabel = "FEET_P1_12_0" iDraw = 12 iTex = 0 BREAK CASE FEET_P1_SNEAKERS_B_1 tlLabel = "FEET_P1_12_1" iDraw = 12 iTex = 1 cost = 25 BREAK CASE FEET_P1_SNEAKERS_B_2 tlLabel = "FEET_P1_12_2" iDraw = 12 iTex = 2 cost = 20 BREAK CASE FEET_P1_SNEAKERS_B_3 tlLabel = "FEET_P1_12_3" iDraw = 12 iTex = 3 cost = 24 BREAK CASE FEET_P1_SNEAKERS_B_4 tlLabel = "FEET_P1_12_4" iDraw = 12 iTex = 4 cost = 25 BREAK CASE FEET_P1_SNEAKERS_B_5 tlLabel = "FEET_P1_12_5" iDraw = 12 iTex = 5 cost = 27 BREAK CASE FEET_P1_SNEAKERS_B_6 tlLabel = "FEET_P1_12_6" iDraw = 12 iTex = 6 cost = 29 BREAK CASE FEET_P1_SNEAKERS_B_7 tlLabel = "FEET_P1_12_7" iDraw = 12 iTex = 7 cost = 27 BREAK CASE FEET_P1_SNEAKERS_B_8 tlLabel = "FEET_P1_12_8" iDraw = 12 iTex = 8 cost = 25 BREAK CASE FEET_P1_SNEAKERS_B_9 tlLabel = "FEET_P1_12_9" iDraw = 12 iTex = 9 cost = 30 BREAK CASE FEET_P1_SNEAKERS_B_10 tlLabel = "FEET_P1_12_10" iDraw = 12 iTex = 10 cost = 28 BREAK CASE FEET_P1_SNEAKERS_B_11 tlLabel = "FEET_P1_12_11" iDraw = 12 iTex = 11 cost = 30 BREAK CASE FEET_P1_BROGUES_0 tlLabel = "FEET_P1_13_0" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P1_SKATE_SHOES_0 tlLabel = "FEET_P1_14_0" iDraw = 14 iTex = 0 cost = 155 BREAK CASE FEET_P1_SKATE_SHOES_1 tlLabel = "FEET_P1_14_1" iDraw = 14 iTex = 1 cost = 155 BREAK CASE FEET_P1_SKATE_SHOES_2 tlLabel = "FEET_P1_14_2" iDraw = 14 iTex = 2 cost = 165 BREAK CASE FEET_P1_SKATE_SHOES_3 tlLabel = "FEET_P1_14_3" iDraw = 14 iTex = 3 cost = 170 BREAK CASE FEET_P1_SKATE_SHOES_4 tlLabel = "FEET_P1_14_4" iDraw = 14 iTex = 4 cost = 160 BREAK CASE FEET_P1_SKATE_SHOES_5 tlLabel = "FEET_P1_14_5" iDraw = 14 iTex = 5 cost = 165 BREAK CASE FEET_P1_SKATE_SHOES_6 tlLabel = "FEET_P1_14_6" iDraw = 14 iTex = 6 cost = 170 BREAK CASE FEET_P1_SKATE_SHOES_7 tlLabel = "FEET_P1_14_7" iDraw = 14 iTex = 7 cost = 160 BREAK CASE FEET_P1_BARE_FEET tlLabel = "NO_LABEL" iDraw = 15 iTex = 0 BREAK CASE FEET_P1_LOAFERS_0 tlLabel = "FEET_P1_16_0" iDraw = 16 iTex = 0 cost = 720 BREAK CASE FEET_P1_LOAFERS_1 tlLabel = "FEET_P1_16_1" iDraw = 16 iTex = 1 cost = 680 BREAK CASE FEET_P1_LOAFERS_2 tlLabel = "FEET_P1_16_2" iDraw = 16 iTex = 2 cost = 650 BREAK CASE FEET_P1_LOAFERS_3 tlLabel = "FEET_P1_16_3" iDraw = 16 iTex = 3 cost = 670 BREAK CASE FEET_P1_LOAFERS_4 tlLabel = "FEET_P1_16_4" iDraw = 16 iTex = 4 cost = 700 BREAK CASE FEET_P1_LOAFERS_5 tlLabel = "FEET_P1_16_5" iDraw = 16 iTex = 5 cost = 680 BREAK CASE FEET_P1_LOAFERS_6 tlLabel = "FEET_P1_16_6" iDraw = 16 iTex = 6 cost = 720 BREAK CASE FEET_P1_LOAFERS_7 tlLabel = "FEET_P1_16_7" iDraw = 16 iTex = 7 cost = 740 BREAK CASE FEET_P1_LOAFERS_8 tlLabel = "FEET_P1_16_8" iDraw = 16 iTex = 8 cost = 760 BREAK CASE FEET_P1_LOAFERS_9 tlLabel = "FEET_P1_16_9" iDraw = 16 iTex = 9 cost = 780 BREAK CASE FEET_P1_LOAFERS_10 tlLabel = "FEET_P1_16_10" iDraw = 16 iTex = 10 cost = 750 BREAK CASE FEET_P1_LOAFERS_11 tlLabel = "FEET_P1_16_11" iDraw = 16 iTex = 11 cost = 700 BREAK CASE FEET_P1_OXFORDS_0 tlLabel = "FEET_P1_17_0" iDraw = 17 iTex = 0 cost = 790 BREAK CASE FEET_P1_OXFORDS_1 tlLabel = "FEET_P1_17_1" iDraw = 17 iTex = 1 cost = 750 BREAK CASE FEET_P1_OXFORDS_2 tlLabel = "FEET_P1_17_2" iDraw = 17 iTex = 2 cost = 860 BREAK CASE FEET_P1_OXFORDS_3 tlLabel = "FEET_P1_17_3" iDraw = 17 iTex = 3 cost = 750 BREAK CASE FEET_P1_OXFORDS_4 tlLabel = "FEET_P1_17_4" iDraw = 17 iTex = 4 cost = 790 BREAK CASE FEET_P1_OXFORDS_5 tlLabel = "FEET_P1_17_5" iDraw = 17 iTex = 5 cost = 840 BREAK CASE FEET_P1_OXFORDS_6 tlLabel = "FEET_P1_17_6" iDraw = 17 iTex = 6 cost = 820 BREAK CASE FEET_P1_OXFORDS_7 tlLabel = "FEET_P1_17_7" iDraw = 17 iTex = 7 cost = 800 BREAK CASE FEET_P1_OXFORDS_8 tlLabel = "FEET_P1_17_8" iDraw = 17 iTex = 8 cost = 850 BREAK CASE FEET_P1_OXFORDS_9 tlLabel = "FEET_P1_17_9" iDraw = 17 iTex = 9 cost = 870 BREAK CASE FEET_P1_OXFORDS_10 tlLabel = "FEET_P1_17_10" iDraw = 17 iTex = 10 cost = 720 BREAK CASE FEET_P1_OXFORDS_11 tlLabel = "FEET_P1_17_11" iDraw = 17 iTex = 11 cost = 740 BREAK CASE FEET_P1_OXFORDS_12 tlLabel = "FEET_P1_17_12" iDraw = 17 iTex = 12 cost = 800 BREAK CASE FEET_P1_OXFORDS_13 tlLabel = "FEET_P1_17_13" iDraw = 17 iTex = 13 cost = 750 BREAK CASE FEET_P1_OXFORDS_14 tlLabel = "FEET_P1_17_14" iDraw = 17 iTex = 14 cost = 770 BREAK CASE FEET_P1_OXFORDS_15 tlLabel = "FEET_P1_17_15" iDraw = 17 iTex = 15 cost = 860 BREAK CASE FEET_P1_SQ_LOAFERS_0 tlLabel = "FEET_P1_18_0" iDraw = 18 iTex = 0 cost = 850 BREAK CASE FEET_P1_SQ_LOAFERS_1 tlLabel = "FEET_P1_18_1" iDraw = 18 iTex = 1 cost = 800 BREAK CASE FEET_P1_SQ_LOAFERS_2 tlLabel = "FEET_P1_18_2" iDraw = 18 iTex = 2 cost = 780 BREAK CASE FEET_P1_SQ_LOAFERS_3 tlLabel = "FEET_P1_18_3" iDraw = 18 iTex = 3 cost = 890 BREAK CASE FEET_P1_SQ_LOAFERS_4 tlLabel = "FEET_P1_18_4" iDraw = 18 iTex = 4 cost = 820 BREAK CASE FEET_P1_SQ_LOAFERS_5 tlLabel = "FEET_P1_18_5" iDraw = 18 iTex = 5 cost = 840 BREAK CASE FEET_P1_SQ_LOAFERS_6 tlLabel = "FEET_P1_18_6" iDraw = 18 iTex = 6 cost = 870 BREAK CASE FEET_P1_SQ_LOAFERS_7 tlLabel = "FEET_P1_18_7" iDraw = 18 iTex = 7 cost = 930 BREAK CASE FEET_P1_SQ_LOAFERS_8 tlLabel = "FEET_P1_18_8" iDraw = 18 iTex = 8 cost = 880 BREAK CASE FEET_P1_SQ_LOAFERS_9 tlLabel = "FEET_P1_18_9" iDraw = 18 iTex = 9 cost = 900 BREAK CASE FEET_P1_SQ_LOAFERS_10 tlLabel = "FEET_P1_18_10" iDraw = 18 iTex = 10 cost = 920 BREAK CASE FEET_P1_SQ_LOAFERS_11 tlLabel = "FEET_P1_18_11" iDraw = 18 iTex = 11 cost = 970 BREAK CASE FEET_P1_SQ_LOAFERS_12 tlLabel = "FEET_P1_18_12" iDraw = 18 iTex = 12 cost = 990 BREAK CASE FEET_P1_SQ_LOAFERS_13 tlLabel = "FEET_P1_18_13" iDraw = 18 iTex = 13 cost = 960 BREAK CASE FEET_P1_SQ_LOAFERS_14 tlLabel = "FEET_P1_18_14" iDraw = 18 iTex = 14 cost = 980 BREAK CASE FEET_P1_SQ_LOAFERS_15 tlLabel = "FEET_P1_18_15" iDraw = 18 iTex = 15 cost = 950 BREAK CASE FEET_P1_WINGTIPS_0 tlLabel = "FEET_P1_19_0" iDraw = 19 iTex = 0 cost = 110 BREAK CASE FEET_P1_WINGTIPS_1 tlLabel = "FEET_P1_19_1" iDraw = 19 iTex = 1 cost = 115 BREAK CASE FEET_P1_WINGTIPS_2 tlLabel = "FEET_P1_19_2" iDraw = 19 iTex = 2 cost = 120 BREAK CASE FEET_P1_WINGTIPS_3 tlLabel = "FEET_P1_19_3" iDraw = 19 iTex = 3 cost = 110 BREAK CASE FEET_P1_WINGTIPS_4 tlLabel = "FEET_P1_19_4" iDraw = 19 iTex = 4 cost = 125 BREAK CASE FEET_P1_WINGTIPS_5 tlLabel = "FEET_P1_19_5" iDraw = 19 iTex = 5 cost = 128 BREAK CASE FEET_P1_WINGTIPS_6 tlLabel = "FEET_P1_19_6" iDraw = 19 iTex = 6 cost = 135 BREAK CASE FEET_P1_WINGTIPS_7 tlLabel = "FEET_P1_19_7" iDraw = 19 iTex = 7 cost = 130 BREAK CASE FEET_P1_WINGTIPS_8 tlLabel = "FEET_P1_19_8" iDraw = 19 iTex = 8 cost = 145 BREAK CASE FEET_P1_WINGTIPS_9 tlLabel = "FEET_P1_19_9" iDraw = 19 iTex = 9 cost = 110 BREAK CASE FEET_P1_WINGTIPS_10 tlLabel = "FEET_P1_19_10" iDraw = 19 iTex = 10 cost = 120 BREAK CASE FEET_P1_WINGTIPS_11 tlLabel = "FEET_P1_19_11" iDraw = 19 iTex = 11 cost = 150 BREAK CASE FEET_P1_WINGTIPS_12 tlLabel = "FEET_P1_19_12" iDraw = 19 iTex = 12 cost = 125 BREAK CASE FEET_P1_WINGTIPS_13 tlLabel = "FEET_P1_19_13" iDraw = 19 iTex = 13 cost = 120 BREAK CASE FEET_P1_WINGTIPS_14 tlLabel = "FEET_P1_19_14" iDraw = 19 iTex = 14 cost = 130 BREAK CASE FEET_P1_WINGTIPS_15 tlLabel = "FEET_P1_19_15" iDraw = 19 iTex = 15 cost = 110 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_HAND(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAND g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE HAND_P1_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE HAND_P1_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P1_GOLF tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P1_GOLF_1 tlLabel = "NO_LABEL" iDraw = 2 iTex = 1 bOutfitOnly = TRUE BREAK CASE HAND_P1_WHITE_GLOVES tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P1_BLACK_GLOVES tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P1_MOTO_X tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HAND_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_SPECIAL(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE SPECIAL_P1_WATCH_AND_BRACELET tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE SPECIAL_P1_PARACHUTE tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE SPECIAL_P1_SCUBA tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_BALLISTICS tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_BALACLAVA tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_EXTERMINATOR tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_CLOWN tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_SCARF tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_FIREMAN tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_MASK tlLabel = "SPEC_P1_9_0" iDraw = 9 iTex = 0 BREAK CASE SPECIAL_P1_PARACHUTE_1 tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_TIE tlLabel = "SPEC_P1_11_0" iDraw = 11 iTex = 0 cost = 195 BREAK CASE SPECIAL_P1_TIE_1 tlLabel = "SPEC_P1_11_1" iDraw = 11 iTex = 1 cost = 195 BREAK CASE SPECIAL_P1_TIE_2 tlLabel = "SPEC_P1_11_2" iDraw = 11 iTex = 2 cost = 195 BREAK CASE SPECIAL_P1_TIE_3 tlLabel = "SPEC_P1_11_3" iDraw = 11 iTex = 3 cost = 250 BREAK CASE SPECIAL_P1_TIE_4 tlLabel = "SPEC_P1_11_4" iDraw = 11 iTex = 4 cost = 250 BREAK CASE SPECIAL_P1_TIE_5 tlLabel = "SPEC_P1_11_5" iDraw = 11 iTex = 5 cost = 250 BREAK CASE SPECIAL_P1_TIE_6 tlLabel = "SPEC_P1_11_6" iDraw = 11 iTex = 6 cost = 195 BREAK CASE SPECIAL_P1_TIE_7 tlLabel = "SPEC_P1_11_7" iDraw = 11 iTex = 7 cost = 250 BREAK CASE SPECIAL_P1_TIE_8 tlLabel = "SPEC_P1_11_8" iDraw = 11 iTex = 8 cost = 250 BREAK CASE SPECIAL_P1_TIE_9 tlLabel = "SPEC_P1_11_9" iDraw = 11 iTex = 9 cost = 250 BREAK CASE SPECIAL_P1_TIE_10 tlLabel = "SPEC_P1_11_10" iDraw = 11 iTex = 10 cost = 250 BREAK CASE SPECIAL_P1_TIE_11 tlLabel = "SPEC_P1_11_11" iDraw = 11 iTex = 11 cost = 195 BREAK CASE SPECIAL_P1_TIE_12 tlLabel = "SPEC_P1_11_12" iDraw = 11 iTex = 12 cost = 250 BREAK CASE SPECIAL_P1_BOWTIE tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_POUCHES tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P1_DUMMY tlLabel = "NO_LABEL" iDraw = 14 iTex = 0 BREAK CASE SPECIAL_P1_TIE_SHORT tlLabel = "SPEC_P1_15_0" iDraw = 15 iTex = 0 BREAK CASE SPECIAL_P1_TIE_SHORT_1 tlLabel = "SPEC_P1_15_1" iDraw = 15 iTex = 1 BREAK CASE SPECIAL_P1_TIE_SHORT_2 tlLabel = "SPEC_P1_15_2" iDraw = 15 iTex = 2 BREAK CASE SPECIAL_P1_TIE_SHORT_3 tlLabel = "SPEC_P1_15_3" iDraw = 15 iTex = 3 BREAK CASE SPECIAL_P1_TIE_SHORT_4 tlLabel = "SPEC_P1_15_4" iDraw = 15 iTex = 4 BREAK CASE SPECIAL_P1_TIE_SHORT_5 tlLabel = "SPEC_P1_15_5" iDraw = 15 iTex = 5 BREAK CASE SPECIAL_P1_TIE_SHORT_6 tlLabel = "SPEC_P1_15_6" iDraw = 15 iTex = 6 BREAK CASE SPECIAL_P1_TIE_SHORT_7 tlLabel = "SPEC_P1_15_7" iDraw = 15 iTex = 7 BREAK CASE SPECIAL_P1_TIE_SHORT_8 tlLabel = "SPEC_P1_15_8" iDraw = 15 iTex = 8 BREAK CASE SPECIAL_P1_TIE_SHORT_9 tlLabel = "SPEC_P1_15_9" iDraw = 15 iTex = 9 BREAK CASE SPECIAL_P1_TIE_SHORT_10 tlLabel = "SPEC_P1_15_10" iDraw = 15 iTex = 10 BREAK CASE SPECIAL_P1_TIE_SHORT_11 tlLabel = "SPEC_P1_15_11" iDraw = 15 iTex = 11 BREAK CASE SPECIAL_P1_TIE_SHORT_12 tlLabel = "SPEC_P1_15_12" iDraw = 15 iTex = 12 BREAK CASE SPECIAL_P1_TIE_SHORT_13 tlLabel = "SPEC_P1_15_13" iDraw = 15 iTex = 13 BREAK CASE SPECIAL_P1_TIE_SHORT_14 tlLabel = "SPEC_P1_15_14" iDraw = 15 iTex = 14 BREAK CASE SPECIAL_P1_TIE_SHORT_15 tlLabel = "SPEC_P1_15_15" iDraw = 15 iTex = 15 BREAK CASE SPECIAL_P1_TIE_MEDIUM tlLabel = "SPEC_P1_15_0" iDraw = 16 iTex = 0 BREAK CASE SPECIAL_P1_TIE_MEDIUM_1 tlLabel = "SPEC_P1_15_1" iDraw = 16 iTex = 1 BREAK CASE SPECIAL_P1_TIE_MEDIUM_2 tlLabel = "SPEC_P1_15_2" iDraw = 16 iTex = 2 BREAK CASE SPECIAL_P1_TIE_MEDIUM_3 tlLabel = "SPEC_P1_15_3" iDraw = 16 iTex = 3 BREAK CASE SPECIAL_P1_TIE_MEDIUM_4 tlLabel = "SPEC_P1_15_4" iDraw = 16 iTex = 4 BREAK CASE SPECIAL_P1_TIE_MEDIUM_5 tlLabel = "SPEC_P1_15_5" iDraw = 16 iTex = 5 BREAK CASE SPECIAL_P1_TIE_MEDIUM_6 tlLabel = "SPEC_P1_15_6" iDraw = 16 iTex = 6 BREAK CASE SPECIAL_P1_TIE_MEDIUM_7 tlLabel = "SPEC_P1_15_7" iDraw = 16 iTex = 7 BREAK CASE SPECIAL_P1_TIE_MEDIUM_8 tlLabel = "SPEC_P1_15_8" iDraw = 16 iTex = 8 BREAK CASE SPECIAL_P1_TIE_MEDIUM_9 tlLabel = "SPEC_P1_15_9" iDraw = 16 iTex = 9 BREAK CASE SPECIAL_P1_TIE_MEDIUM_10 tlLabel = "SPEC_P1_15_10" iDraw = 16 iTex = 10 BREAK CASE SPECIAL_P1_TIE_MEDIUM_11 tlLabel = "SPEC_P1_15_11" iDraw = 16 iTex = 11 BREAK CASE SPECIAL_P1_TIE_MEDIUM_12 tlLabel = "SPEC_P1_15_12" iDraw = 16 iTex = 12 BREAK CASE SPECIAL_P1_TIE_MEDIUM_13 tlLabel = "SPEC_P1_15_13" iDraw = 16 iTex = 13 BREAK CASE SPECIAL_P1_TIE_MEDIUM_14 tlLabel = "SPEC_P1_15_14" iDraw = 16 iTex = 14 BREAK CASE SPECIAL_P1_TIE_MEDIUM_15 tlLabel = "SPEC_P1_15_15" iDraw = 16 iTex = 15 BREAK CASE SPECIAL_P1_TIE_LONG tlLabel = "SPEC_P1_15_0" iDraw = 17 iTex = 0 BREAK CASE SPECIAL_P1_TIE_LONG_1 tlLabel = "SPEC_P1_15_1" iDraw = 17 iTex = 1 BREAK CASE SPECIAL_P1_TIE_LONG_2 tlLabel = "SPEC_P1_15_2" iDraw = 17 iTex = 2 BREAK CASE SPECIAL_P1_TIE_LONG_3 tlLabel = "SPEC_P1_15_3" iDraw = 17 iTex = 3 BREAK CASE SPECIAL_P1_TIE_LONG_4 tlLabel = "SPEC_P1_15_4" iDraw = 17 iTex = 4 BREAK CASE SPECIAL_P1_TIE_LONG_5 tlLabel = "SPEC_P1_15_5" iDraw = 17 iTex = 5 BREAK CASE SPECIAL_P1_TIE_LONG_6 tlLabel = "SPEC_P1_15_6" iDraw = 17 iTex = 6 BREAK CASE SPECIAL_P1_TIE_LONG_7 tlLabel = "SPEC_P1_15_7" iDraw = 17 iTex = 7 BREAK CASE SPECIAL_P1_TIE_LONG_8 tlLabel = "SPEC_P1_15_8" iDraw = 17 iTex = 8 BREAK CASE SPECIAL_P1_TIE_LONG_9 tlLabel = "SPEC_P1_15_9" iDraw = 17 iTex = 9 BREAK CASE SPECIAL_P1_TIE_LONG_10 tlLabel = "SPEC_P1_15_10" iDraw = 17 iTex = 10 BREAK CASE SPECIAL_P1_TIE_LONG_11 tlLabel = "SPEC_P1_15_11" iDraw = 17 iTex = 11 BREAK CASE SPECIAL_P1_TIE_LONG_12 tlLabel = "SPEC_P1_15_12" iDraw = 17 iTex = 12 BREAK CASE SPECIAL_P1_TIE_LONG_13 tlLabel = "SPEC_P1_15_13" iDraw = 17 iTex = 13 BREAK CASE SPECIAL_P1_TIE_LONG_14 tlLabel = "SPEC_P1_15_14" iDraw = 17 iTex = 14 BREAK CASE SPECIAL_P1_TIE_LONG_15 tlLabel = "SPEC_P1_15_15" iDraw = 17 iTex = 15 BREAK CASE SPECIAL_P1_FIREMAN_1 tlLabel = "NO_LABEL" iDraw = 18 iTex = 0 BREAK CASE SPECIAL_P1_SCUBA_1 tlLabel = "NO_LABEL" iDraw = 19 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_SPECIAL2(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL2 g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE SPECIAL2_P1_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE SPECIAL2_P1_BAG tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P1_HARNESS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P1_BALLISTICS tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P1_SCUBA_HEADGEAR tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P1_WRESTLER_MASK_0 tlLabel = "SPEC2_P0_08_0" iDraw = 5 iTex = 0 cost = 125 BREAK CASE SPECIAL2_P1_WRESTLER_MASK_1 tlLabel = "SPEC2_P0_08_1" iDraw = 5 iTex = 1 cost = 150 BREAK CASE SPECIAL2_P1_WRESTLER_MASK_2 tlLabel = "SPEC2_P0_08_2" iDraw = 5 iTex = 2 cost = 175 BREAK CASE SPECIAL2_P1_WRESTLER_MASK_3 tlLabel = "SPEC2_P0_08_3" iDraw = 5 iTex = 3 cost = 85 BREAK CASE SPECIAL2_P1_WRESTLER_MASK_4 tlLabel = "SPEC2_P0_08_4" iDraw = 5 iTex = 4 cost = 150 BREAK CASE SPECIAL2_P1_WRESTLER_MASK_5 tlLabel = "SPEC2_P0_08_5" iDraw = 5 iTex = 5 cost = 175 BREAK CASE SPECIAL2_P1_BAG_A tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL2_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_DECL(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_DECL g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE DECL_P1_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE DECL_P1_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE DECL_P1_EXTERMINATOR tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 BREAK CASE DECL_P1_AMMUNATION_0 tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 BREAK CASE DECL_P1_AMMUNATION_1 tlLabel = "NO_LABEL" iDraw = 3 iTex = 1 BREAK CASE DECL_P1_AMMUNATION_2 tlLabel = "NO_LABEL" iDraw = 3 iTex = 2 BREAK CASE DECL_P1_AMMUNATION_3 tlLabel = "NO_LABEL" iDraw = 3 iTex = 3 BREAK CASE DECL_P1_AMMUNATION_4 tlLabel = "NO_LABEL" iDraw = 3 iTex = 4 BREAK CASE DECL_P1_AMMUNATION_5 tlLabel = "NO_LABEL" iDraw = 3 iTex = 5 BREAK CASE DECL_P1_SPORTS_0 tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 BREAK CASE DECL_P1_SPORTS_1 tlLabel = "NO_LABEL" iDraw = 4 iTex = 1 BREAK CASE DECL_P1_SPORTS_2 tlLabel = "NO_LABEL" iDraw = 4 iTex = 2 BREAK CASE DECL_P1_SPORTS_3 tlLabel = "NO_LABEL" iDraw = 4 iTex = 3 BREAK CASE DECL_P1_SPORTS_4 tlLabel = "NO_LABEL" iDraw = 4 iTex = 4 BREAK CASE DECL_P1_SPORTS_5 tlLabel = "NO_LABEL" iDraw = 4 iTex = 5 BREAK CASE DECL_P1_SPORTS_6 tlLabel = "NO_LABEL" iDraw = 4 iTex = 6 BREAK CASE DECL_P1_VARSITY_0 tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 BREAK CASE DECL_P1_VARSITY_1 tlLabel = "NO_LABEL" iDraw = 5 iTex = 1 BREAK CASE DECL_P1_VARSITY_2 tlLabel = "NO_LABEL" iDraw = 5 iTex = 2 BREAK CASE DECL_P1_VARSITY_3 tlLabel = "NO_LABEL" iDraw = 5 iTex = 3 BREAK CASE DECL_P1_VARSITY_4 tlLabel = "NO_LABEL" iDraw = 5 iTex = 4 BREAK CASE DECL_P1_VARSITY_5 tlLabel = "NO_LABEL" iDraw = 5 iTex = 5 BREAK CASE DECL_P1_VARSITY_6 tlLabel = "NO_LABEL" iDraw = 5 iTex = 6 BREAK CASE DECL_P1_VARSITY_7 tlLabel = "NO_LABEL" iDraw = 5 iTex = 7 BREAK CASE DECL_P1_VARSITY_8 tlLabel = "NO_LABEL" iDraw = 5 iTex = 8 BREAK CASE DECL_P1_VARSITY_9 tlLabel = "NO_LABEL" iDraw = 5 iTex = 9 BREAK CASE DECL_P1_VARSITY_10 tlLabel = "NO_LABEL" iDraw = 5 iTex = 10 BREAK CASE DECL_P1_VARSITY_11 tlLabel = "NO_LABEL" iDraw = 5 iTex = 11 BREAK CASE DECL_P1_VARSITY_12 tlLabel = "NO_LABEL" iDraw = 5 iTex = 12 BREAK CASE DECL_P1_VARSITY_13 tlLabel = "NO_LABEL" iDraw = 5 iTex = 13 BREAK CASE DECL_P1_VARSITY_14 tlLabel = "NO_LABEL" iDraw = 5 iTex = 14 BREAK CASE DECL_P1_VARSITY_15 tlLabel = "NO_LABEL" iDraw = 5 iTex = 15 BREAK CASE DECL_P1_CARDIGAN_0 tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 BREAK CASE DECL_P1_CARDIGAN_1 tlLabel = "NO_LABEL" iDraw = 6 iTex = 1 BREAK CASE DECL_P1_CARDIGAN_2 tlLabel = "NO_LABEL" iDraw = 6 iTex = 2 BREAK CASE DECL_P1_CARDIGAN_3 tlLabel = "NO_LABEL" iDraw = 6 iTex = 3 BREAK CASE DECL_P1_CARDIGAN_4 tlLabel = "NO_LABEL" iDraw = 6 iTex = 4 BREAK CASE DECL_P1_CARDIGAN_5 tlLabel = "NO_LABEL" iDraw = 6 iTex = 5 BREAK CASE DECL_P1_CARDIGAN_6 tlLabel = "NO_LABEL" iDraw = 6 iTex = 6 BREAK CASE DECL_P1_BASKETBALL_0 tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 BREAK CASE DECL_P1_BASKETBALL_1 tlLabel = "NO_LABEL" iDraw = 7 iTex = 1 BREAK CASE DECL_P1_BASKETBALL_2 tlLabel = "NO_LABEL" iDraw = 7 iTex = 2 BREAK CASE DECL_P1_BASKETBALL_3 tlLabel = "NO_LABEL" iDraw = 7 iTex = 3 BREAK CASE DECL_P1_BASKETBALL_4 tlLabel = "NO_LABEL" iDraw = 7 iTex = 4 BREAK CASE DECL_P1_BASKETBALL_5 tlLabel = "NO_LABEL" iDraw = 7 iTex = 5 BREAK CASE DECL_P1_BASKETBALL_6 tlLabel = "NO_LABEL" iDraw = 7 iTex = 6 BREAK CASE DECL_P1_BASKETBALL_7 tlLabel = "NO_LABEL" iDraw = 7 iTex = 7 BREAK CASE DECL_P1_MASK_0 tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 BREAK CASE DECL_P1_MASK_1 tlLabel = "NO_LABEL" iDraw = 8 iTex = 1 BREAK CASE DECL_P1_MASK_2 tlLabel = "NO_LABEL" iDraw = 8 iTex = 2 BREAK CASE DECL_P1_MASK_3 tlLabel = "NO_LABEL" iDraw = 8 iTex = 3 BREAK CASE DECL_P1_UPTOWN_A tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 BREAK CASE DECL_P1_UPTOWN_B tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, DECL_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item /// Prices for beard items go in GET_SP_HAIRDO_PRICE() PROC FILL_PED_COMP_DATA_FRANKLIN_BERD(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_BERD g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE BERD_P1_NONE tlLabel = "BERD_P1_0_0" iDraw = 0 iTex = 0 BREAK CASE BERD_P1_1_0 tlLabel = "BERD_P1_1_0" iDraw = 1 iTex = 0 BREAK CASE BERD_P1_2_0 tlLabel = "BERD_P1_2_0" iDraw = 2 iTex = 0 BREAK CASE BERD_P1_3_0 tlLabel = "BERD_P1_3_0" iDraw = 3 iTex = 0 BREAK CASE BERD_P1_4_0 tlLabel = "BERD_P1_4_0" iDraw = 4 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, BERD_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_TEETH(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TEETH g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE TEETH_P1_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, TEETH_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_JBIB(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_JBIB g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE JBIB_P1_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE JBIB_P1_COLLAR_A tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE JBIB_P1_COLLAR_A_1 tlLabel = "NO_LABEL" iDraw = 1 iTex = 1 BREAK CASE JBIB_P1_COLLAR_A_2 tlLabel = "NO_LABEL" iDraw = 1 iTex = 2 BREAK CASE JBIB_P1_COLLAR_A_3 tlLabel = "NO_LABEL" iDraw = 1 iTex = 3 BREAK CASE JBIB_P1_COLLAR_B tlLabel = "JBIB_P1_1_0" iDraw = 2 iTex = 0 BREAK CASE JBIB_P1_COLLAR_B_1 tlLabel = "JBIB_P1_1_1" iDraw = 2 iTex = 1 BREAK CASE JBIB_P1_COLLAR_B_2 tlLabel = "JBIB_P1_1_2" iDraw = 2 iTex = 2 BREAK CASE JBIB_P1_COLLAR_B_3 tlLabel = "JBIB_P1_1_3" iDraw = 2 iTex = 3 BREAK CASE JBIB_P1_WAISTCOAT_A tlLabel = "JBIB_P1_3_0" iDraw = 3 iTex = 0 BREAK CASE JBIB_P1_WAISTCOAT_A_1 tlLabel = "JBIB_P1_3_1" iDraw = 3 iTex = 1 BREAK CASE JBIB_P1_WAISTCOAT_A_2 tlLabel = "JBIB_P1_3_2" iDraw = 3 iTex = 2 BREAK CASE JBIB_P1_WAISTCOAT_A_3 tlLabel = "JBIB_P1_3_3" iDraw = 3 iTex = 3 BREAK CASE JBIB_P1_WAISTCOAT_A_4 tlLabel = "JBIB_P1_3_4" iDraw = 3 iTex = 4 BREAK CASE JBIB_P1_WAISTCOAT_A_5 tlLabel = "JBIB_P1_3_5" iDraw = 3 iTex = 5 BREAK CASE JBIB_P1_WAISTCOAT_A_6 tlLabel = "JBIB_P1_3_6" iDraw = 3 iTex = 6 BREAK CASE JBIB_P1_WAISTCOAT_A_7 tlLabel = "JBIB_P1_3_7" iDraw = 3 iTex = 7 BREAK CASE JBIB_P1_WAISTCOAT_A_8 tlLabel = "JBIB_P1_3_8" iDraw = 3 iTex = 8 BREAK CASE JBIB_P1_WAISTCOAT_A_9 tlLabel = "JBIB_P1_3_9" iDraw = 3 iTex = 9 BREAK CASE JBIB_P1_WAISTCOAT_A_10 tlLabel = "JBIB_P1_3_10" iDraw = 3 iTex = 10 BREAK CASE JBIB_P1_WAISTCOAT_A_11 tlLabel = "JBIB_P1_3_11" iDraw = 3 iTex = 11 BREAK CASE JBIB_P1_WAISTCOAT_A_12 tlLabel = "JBIB_P1_3_12" iDraw = 3 iTex = 12 BREAK CASE JBIB_P1_WAISTCOAT_A_13 tlLabel = "JBIB_P1_3_13" iDraw = 3 iTex = 13 BREAK CASE JBIB_P1_WAISTCOAT_A_14 tlLabel = "JBIB_P1_3_14" iDraw = 3 iTex = 14 BREAK CASE JBIB_P1_WAISTCOAT_A_15 tlLabel = "JBIB_P1_3_15" iDraw = 3 iTex = 15 BREAK CASE JBIB_P1_WAISTCOAT_B tlLabel = "JBIB_P1_3_0" iDraw = 4 iTex = 0 BREAK CASE JBIB_P1_WAISTCOAT_B_1 tlLabel = "JBIB_P1_3_1" iDraw = 4 iTex = 1 BREAK CASE JBIB_P1_WAISTCOAT_B_2 tlLabel = "JBIB_P1_3_2" iDraw = 4 iTex = 2 BREAK CASE JBIB_P1_WAISTCOAT_B_3 tlLabel = "JBIB_P1_3_3" iDraw = 4 iTex = 3 BREAK CASE JBIB_P1_WAISTCOAT_B_4 tlLabel = "JBIB_P1_3_4" iDraw = 4 iTex = 4 BREAK CASE JBIB_P1_WAISTCOAT_B_5 tlLabel = "JBIB_P1_3_5" iDraw = 4 iTex = 5 BREAK CASE JBIB_P1_WAISTCOAT_B_6 tlLabel = "JBIB_P1_3_6" iDraw = 4 iTex = 6 BREAK CASE JBIB_P1_WAISTCOAT_B_7 tlLabel = "JBIB_P1_3_7" iDraw = 4 iTex = 7 BREAK CASE JBIB_P1_WAISTCOAT_B_8 tlLabel = "JBIB_P1_3_8" iDraw = 4 iTex = 8 BREAK CASE JBIB_P1_WAISTCOAT_B_9 tlLabel = "JBIB_P1_3_9" iDraw = 4 iTex = 9 BREAK CASE JBIB_P1_WAISTCOAT_B_10 tlLabel = "JBIB_P1_3_10" iDraw = 4 iTex = 10 BREAK CASE JBIB_P1_WAISTCOAT_B_11 tlLabel = "JBIB_P1_3_11" iDraw = 4 iTex = 11 BREAK CASE JBIB_P1_WAISTCOAT_B_12 tlLabel = "JBIB_P1_3_12" iDraw = 4 iTex = 12 BREAK CASE JBIB_P1_WAISTCOAT_B_13 tlLabel = "JBIB_P1_3_13" iDraw = 4 iTex = 13 BREAK CASE JBIB_P1_WAISTCOAT_B_14 tlLabel = "JBIB_P1_3_14" iDraw = 4 iTex = 14 BREAK CASE JBIB_P1_WAISTCOAT_B_15 tlLabel = "JBIB_P1_3_15" iDraw = 4 iTex = 15 BREAK CASE JBIB_P1_SHIRT_A tlLabel = "JBIB_P1_5_0" iDraw = 5 iTex = 0 BREAK CASE JBIB_P1_SHIRT_B tlLabel = "JBIB_P1_6_0" iDraw = 6 iTex = 0 BREAK CASE JBIB_P1_SHIRT_B_1 tlLabel = "JBIB_P1_6_1" iDraw = 6 iTex = 1 BREAK CASE JBIB_P1_HOODIE_1 tlLabel = "JBIB_P1_7_0" iDraw = 7 iTex = 0 BREAK CASE JBIB_P1_POLO_SHIRT_1 tlLabel = "JBIB_P1_8_0" iDraw = 8 iTex = 0 BREAK CASE JBIB_P1_COLLAR_C tlLabel = "JBIB_P1_9_0" iDraw = 9 iTex = 0 BREAK CASE JBIB_P1_TSHIRT_0 tlLabel = "JBIB_P1_10_0" iDraw = 10 iTex = 0 BREAK CASE JBIB_P1_TSHIRT_1 tlLabel = "JBIB_P1_10_1" iDraw = 10 iTex = 1 cost = 48 BREAK CASE JBIB_P1_TSHIRT_2 tlLabel = "JBIB_P1_10_2" iDraw = 10 iTex = 2 cost = 35 BREAK CASE JBIB_P1_TSHIRT_3 tlLabel = "JBIB_P1_10_3" iDraw = 10 iTex = 3 cost = 32 BREAK CASE JBIB_P1_TSHIRT_4 tlLabel = "JBIB_P1_10_4" iDraw = 10 iTex = 4 cost = 35 BREAK CASE JBIB_P1_TSHIRT_5 tlLabel = "JBIB_P1_10_5" iDraw = 10 iTex = 5 cost = 48 BREAK CASE JBIB_P1_TSHIRT_6 tlLabel = "JBIB_P1_10_6" iDraw = 10 iTex = 6 cost = 52 BREAK CASE JBIB_P1_TSHIRT_7 tlLabel = "JBIB_P1_10_7" iDraw = 10 iTex = 7 cost = 38 BREAK CASE JBIB_P1_TSHIRT_8 tlLabel = "JBIB_P1_10_8" iDraw = 10 iTex = 8 cost = 42 BREAK CASE JBIB_P1_TSHIRT_9 tlLabel = "JBIB_P1_10_9" iDraw = 10 iTex = 9 cost = 38 BREAK CASE JBIB_P1_TSHIRT_10 tlLabel = "JBIB_P1_10_10" iDraw = 10 iTex = 10 cost = 35 BREAK CASE JBIB_P1_TSHIRT_11 tlLabel = "JBIB_P1_10_11" iDraw = 10 iTex = 11 cost = 48 BREAK CASE JBIB_P1_TSHIRT_12 tlLabel = "JBIB_P1_10_12" iDraw = 10 iTex = 12 cost = 42 BREAK CASE JBIB_P1_TSHIRT_13 tlLabel = "JBIB_P1_10_13" iDraw = 10 iTex = 13 cost = 45 BREAK CASE JBIB_P1_TSHIRT_14 tlLabel = "JBIB_P1_10_14" iDraw = 10 iTex = 14 cost = 45 BREAK CASE JBIB_P1_TSHIRT_15 tlLabel = "JBIB_P1_10_15" iDraw = 10 iTex = 15 cost = 49 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, JBIB_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_OUTFIT(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_OUTFIT g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem // Always set bOutfitOnly param to TRUE for the default outfit CASE OUTFIT_P1_DEFAULT tlLabel = "OUTFIT_P1_0" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE OUTFIT_P1_WHITE_TUXEDO tlLabel = "OUTFIT_P1_2" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_GOLF tlLabel = "OUTFIT_P1_4" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_SCUBA_LAND tlLabel = "OUTFIT_P1_7" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_STEALTH tlLabel = "OUTFIT_P1_10" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_TRIATHLON tlLabel = "OUTFIT_P1_11" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_FIREMAN tlLabel = "OUTFIT_P1_12" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_EXTERMINATOR tlLabel = "OUTFIT_P1_13" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_BLACK_BOILER tlLabel = "OUTFIT_P1_15" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_SKYDIVING tlLabel = "OUTFIT_P1_16" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_TUXEDO tlLabel = "OUTFIT_P1_17" iDraw = 0 iTex = 0 cost = 10000 BREAK CASE OUTFIT_P1_BLUE_BOILER_SUIT tlLabel = "OUTFIT_P1_18" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_PREP_BOILER_SUIT_1 tlLabel = "OUTFIT_P1_19" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P1_PREP_BOILER_SUIT_2 tlLabel = "OUTFIT_P1_20" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P1_PREP_BOILER_SUIT_3 tlLabel = "OUTFIT_P1_21" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P1_HOODIE_AND_SWEATS tlLabel = "OUTFIT_P1_22" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_GREEN_SHIRT_JEANS tlLabel = "OUTFIT_P1_23" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_SUIT_1 tlLabel = "OUTFIT_P1_24" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_HOODIE_AND_JEANS_1 tlLabel = "OUTFIT_P1_25" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_TRACKSUIT_JEANS tlLabel = "OUTFIT_P1_26" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_WHITE_SHIRT_JEANS tlLabel = "OUTFIT_P1_27" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_3PC_SUIT_0 tlLabel = "OUTFIT_P1_28" iDraw = 0 iTex = 0 cost = 4000 BREAK CASE OUTFIT_P1_3PC_SUIT_1 tlLabel = "OUTFIT_P1_29" iDraw = 0 iTex = 0 cost = 4500 BREAK CASE OUTFIT_P1_3PC_SUIT_2 tlLabel = "OUTFIT_P1_30" iDraw = 0 iTex = 0 cost = 4500 BREAK CASE OUTFIT_P1_3PC_SUIT_3 tlLabel = "OUTFIT_P1_31" iDraw = 0 iTex = 0 cost = 4650 BREAK CASE OUTFIT_P1_3PC_SUIT_4 tlLabel = "OUTFIT_P1_32" iDraw = 0 iTex = 0 cost = 4900 BREAK CASE OUTFIT_P1_3PC_SUIT_5 tlLabel = "OUTFIT_P1_33" iDraw = 0 iTex = 0 cost = 5000 BREAK CASE OUTFIT_P1_3PC_SUIT_6 tlLabel = "OUTFIT_P1_34" iDraw = 0 iTex = 0 cost = 4750 BREAK CASE OUTFIT_P1_3PC_SUIT_7 tlLabel = "OUTFIT_P1_35" iDraw = 0 iTex = 0 cost = 4750 BREAK CASE OUTFIT_P1_3PC_SUIT_8 tlLabel = "OUTFIT_P1_36" iDraw = 0 iTex = 0 cost = 5200 BREAK CASE OUTFIT_P1_3PC_SUIT_9 tlLabel = "OUTFIT_P1_37" iDraw = 0 iTex = 0 cost = 5200 BREAK CASE OUTFIT_P1_3PC_SUIT_10 tlLabel = "OUTFIT_P1_38" iDraw = 0 iTex = 0 cost = 5500 BREAK CASE OUTFIT_P1_3PC_SUIT_11 tlLabel = "OUTFIT_P1_39" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P1_3PC_SUIT_12 tlLabel = "OUTFIT_P1_40" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P1_3PC_SUIT_13 tlLabel = "OUTFIT_P1_41" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P1_3PC_SUIT_14 tlLabel = "OUTFIT_P1_42" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P1_3PC_SUIT_15 tlLabel = "OUTFIT_P1_43" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P1_UNDERWEAR tlLabel = "OUTFIT_P1_47" iDraw = 0 iTex = 0 cost = 3000 BREAK CASE OUTFIT_P1_HOODIE_AND_JEANS_2 tlLabel = "OUTFIT_P1_48" iDraw = 0 iTex = 0 cost = 3000 BREAK CASE OUTFIT_P1_HOODIE_AND_JEANS_3 tlLabel = "OUTFIT_P1_49" iDraw = 0 iTex = 0 cost = 3000 BREAK CASE OUTFIT_P1_STEALTH_NO_MASK tlLabel = "OUTFIT_P1_10" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_MOTO_X tlLabel = "OUTFIT_P1_50" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_UPTOWN_1 tlLabel = "OUTFIT_P1_51" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_UPTOWN_2 tlLabel = "OUTFIT_P1_52" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_UPTOWN_3 tlLabel = "OUTFIT_P1_53" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P1_UPTOWN_4 tlLabel = "OUTFIT_P1_54" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, OUTFIT_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_PROPGROUP(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPGROUP g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem CASE PROPGROUP_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P1_HOCKEY_MASK tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P1_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P1_SCUBA_LAND tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P1_FIREMAN tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P1_GREEN_CAP tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P1_BUGSTARS_CAP tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P1_UPTOWN_1 tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P1_BLACK_SHADES tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P1_BLACK_CAP_SHADES tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, PROPGROUP_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN_PROPS(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPS g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_FRANKLIN) SWITCH eItem // None CASE PROPS_HEAD_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_EYES_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES BREAK CASE PROPS_EARS_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_MOUTH_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_MOUTH BREAK CASE PROPS_LHAND_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_HAND BREAK CASE PROPS_RHAND_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_HAND BREAK CASE PROPS_LWRIST_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST BREAK CASE PROPS_RWRIST_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_WRIST BREAK CASE PROPS_HIP_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HIP BREAK // Ears CASE PROPS_P1_HEADSET tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_0 tlLabel = "PROPS_P1_EA1_0" iDraw = 1 iTex = 0 cost = 4590 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_1 tlLabel = "PROPS_P1_EA1_1" iDraw = 1 iTex = 1 cost = 4100 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_2 tlLabel = "PROPS_P1_EA1_2" iDraw = 1 iTex = 2 cost = 3850 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_3 tlLabel = "PROPS_P1_EA1_3" iDraw = 1 iTex = 3 cost = 1850 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_4 tlLabel = "PROPS_P1_EA1_4" iDraw = 1 iTex = 4 cost = 5250 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_5 tlLabel = "PROPS_P1_EA1_5" iDraw = 1 iTex = 5 cost = 2700 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_6 tlLabel = "PROPS_P1_EA1_6" iDraw = 1 iTex = 6 cost = 3100 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_ROUND_7 tlLabel = "PROPS_P1_EA1_7" iDraw = 1 iTex = 7 cost = 5050 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_0 tlLabel = "PROPS_P1_EA2_0" iDraw = 2 iTex = 0 cost = 2500 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_1 tlLabel = "PROPS_P1_EA2_1" iDraw = 2 iTex = 1 cost = 1950 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_2 tlLabel = "PROPS_P1_EA2_2" iDraw = 2 iTex = 2 cost = 3900 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_3 tlLabel = "PROPS_P1_EA2_3" iDraw = 2 iTex = 3 cost = 3550 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_4 tlLabel = "PROPS_P1_EA2_4" iDraw = 2 iTex = 4 cost = 4500 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_5 tlLabel = "PROPS_P1_EA2_5" iDraw = 2 iTex = 5 cost = 2700 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_6 tlLabel = "PROPS_P1_EA2_6" iDraw = 2 iTex = 6 cost = 3100 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_P1_EARRING_SQUARE_7 tlLabel = "PROPS_P1_EA2_7" iDraw = 2 iTex = 7 cost = 2950 ePropType = PROP_TYPE_EARS BREAK // Eyes CASE PROPS_P1_SCUBA_MASK tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_0 tlLabel = "PROPS_P1_E1_0" iDraw = 1 iTex = 0 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_1 tlLabel = "PROPS_P1_E1_1" iDraw = 1 iTex = 1 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_2 tlLabel = "PROPS_P1_E1_2" iDraw = 1 iTex = 2 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_3 tlLabel = "PROPS_P1_E1_3" iDraw = 1 iTex = 3 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_4 tlLabel = "PROPS_P1_E1_4" iDraw = 1 iTex = 4 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_5 tlLabel = "PROPS_P1_E1_5" iDraw = 1 iTex = 5 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_6 tlLabel = "PROPS_P1_E1_6" iDraw = 1 iTex = 6 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_7 tlLabel = "PROPS_P1_E1_7" iDraw = 1 iTex = 7 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_8 tlLabel = "PROPS_P1_E1_8" iDraw = 1 iTex = 8 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_A_9 tlLabel = "PROPS_P1_E1_9" iDraw = 1 iTex = 9 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_GOGGLES tlLabel = "PROPS_P1_E2" iDraw = 2 iTex = 0 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_B_0 tlLabel = "PROPS_P1_E3" iDraw = 3 iTex = 0 cost = 110 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_0 tlLabel = "PROPS_P1_E4_0" iDraw = 4 iTex = 0 cost = 120 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_1 tlLabel = "PROPS_P1_E4_1" iDraw = 4 iTex = 1 cost = 128 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_2 tlLabel = "PROPS_P1_E4_2" iDraw = 4 iTex = 2 cost = 130 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_3 tlLabel = "PROPS_P1_E4_3" iDraw = 4 iTex = 3 cost = 140 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_4 tlLabel = "PROPS_P1_E4_4" iDraw = 4 iTex = 4 cost = 145 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_5 tlLabel = "PROPS_P1_E4_5" iDraw = 4 iTex = 5 cost = 135 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_C_6 tlLabel = "PROPS_P1_E4_6" iDraw = 4 iTex = 6 cost = 138 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_0 tlLabel = "PROPS_P1_E5_0" iDraw = 5 iTex = 0 cost = 110 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_1 tlLabel = "PROPS_P1_E5_1" iDraw = 5 iTex = 1 cost = 112 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_2 tlLabel = "PROPS_P1_E5_2" iDraw = 5 iTex = 2 cost = 115 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_3 tlLabel = "PROPS_P1_E5_3" iDraw = 5 iTex = 3 cost = 118 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_4 tlLabel = "PROPS_P1_E5_4" iDraw = 5 iTex = 4 cost = 120 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_5 tlLabel = "PROPS_P1_E5_5" iDraw = 5 iTex = 5 cost = 125 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_6 tlLabel = "PROPS_P1_E5_6" iDraw = 5 iTex = 6 cost = 128 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_7 tlLabel = "PROPS_P1_E5_7" iDraw = 5 iTex = 7 cost = 138 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_8 tlLabel = "PROPS_P1_E5_8" iDraw = 5 iTex = 8 cost = 140 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_D_9 tlLabel = "PROPS_P1_E5_9" iDraw = 5 iTex = 9 cost = 155 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_0 tlLabel = "PROPS_P1_E6_0" iDraw = 6 iTex = 0 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_1 tlLabel = "PROPS_P1_E6_1" iDraw = 6 iTex = 1 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_2 tlLabel = "PROPS_P1_E6_2" iDraw = 6 iTex = 2 cost = 58 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_3 tlLabel = "PROPS_P1_E6_3" iDraw = 6 iTex = 3 cost = 58 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_4 tlLabel = "PROPS_P1_E6_4" iDraw = 6 iTex = 4 cost = 60 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_5 tlLabel = "PROPS_P1_E6_5" iDraw = 6 iTex = 5 cost = 62 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_6 tlLabel = "PROPS_P1_E6_6" iDraw = 6 iTex = 6 cost = 65 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_7 tlLabel = "PROPS_P1_E6_7" iDraw = 6 iTex = 7 cost = 68 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_8 tlLabel = "PROPS_P1_E6_8" iDraw = 6 iTex = 8 cost = 68 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_E_9 tlLabel = "PROPS_P1_E6_9" iDraw = 6 iTex = 9 cost = 72 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_0 tlLabel = "PROPS_P1_E7_0" iDraw = 7 iTex = 0 cost = 145 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_1 tlLabel = "PROPS_P1_E7_1" iDraw = 7 iTex = 1 cost = 149 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_2 tlLabel = "PROPS_P1_E7_2" iDraw = 7 iTex = 2 cost = 139 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_3 tlLabel = "PROPS_P1_E7_3" iDraw = 7 iTex = 3 cost = 149 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_4 tlLabel = "PROPS_P1_E7_4" iDraw = 7 iTex = 4 cost = 135 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_5 tlLabel = "PROPS_P1_E7_5" iDraw = 7 iTex = 5 cost = 138 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_6 tlLabel = "PROPS_P1_E7_6" iDraw = 7 iTex = 6 cost = 140 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_7 tlLabel = "PROPS_P1_E7_7" iDraw = 7 iTex = 7 cost = 145 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_8 tlLabel = "PROPS_P1_E7_8" iDraw = 7 iTex = 8 cost = 159 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_F_9 tlLabel = "PROPS_P1_E7_9" iDraw = 7 iTex = 9 cost = 155 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_0 tlLabel = "PROPS_P1_E8_0" iDraw = 8 iTex = 0 cost = 198 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_1 tlLabel = "PROPS_P1_E8_1" iDraw = 8 iTex = 1 cost = 210 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_2 tlLabel = "PROPS_P1_E8_2" iDraw = 8 iTex = 2 cost = 185 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_3 tlLabel = "PROPS_P1_E8_3" iDraw = 8 iTex = 3 cost = 220 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_4 tlLabel = "PROPS_P1_E8_4" iDraw = 8 iTex = 4 cost = 190 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_5 tlLabel = "PROPS_P1_E8_5" iDraw = 8 iTex = 5 cost = 200 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_6 tlLabel = "PROPS_P1_E8_6" iDraw = 8 iTex = 6 cost = 208 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_G_7 tlLabel = "PROPS_P1_E8_7" iDraw = 8 iTex = 7 cost = 210 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_0 tlLabel = "PROPS_P1_E9_0" iDraw = 9 iTex = 0 cost = 165 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_1 tlLabel = "PROPS_P1_E9_1" iDraw = 9 iTex = 1 cost = 185 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_2 tlLabel = "PROPS_P1_E9_2" iDraw = 9 iTex = 2 cost = 190 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_3 tlLabel = "PROPS_P1_E9_3" iDraw = 9 iTex = 3 cost = 178 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_4 tlLabel = "PROPS_P1_E9_4" iDraw = 9 iTex = 4 cost = 180 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_5 tlLabel = "PROPS_P1_E9_5" iDraw = 9 iTex = 5 cost = 168 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_6 tlLabel = "PROPS_P1_E9_6" iDraw = 9 iTex = 6 cost = 170 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_7 tlLabel = "PROPS_P1_E9_7" iDraw = 9 iTex = 7 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_8 tlLabel = "PROPS_P1_E9_8" iDraw = 9 iTex = 8 cost = 170 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_H_9 tlLabel = "PROPS_P1_E9_9" iDraw = 9 iTex = 9 cost = 178 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_0 tlLabel = "PROPS_P1_E10_0" iDraw = 10 iTex = 0 cost = 140 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_1 tlLabel = "PROPS_P1_E10_1" iDraw = 10 iTex = 1 cost = 145 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_2 tlLabel = "PROPS_P1_E10_2" iDraw = 10 iTex = 2 cost = 150 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_3 tlLabel = "PROPS_P1_E10_3" iDraw = 10 iTex = 3 cost = 165 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_4 tlLabel = "PROPS_P1_E10_4" iDraw = 10 iTex = 4 cost = 168 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_5 tlLabel = "PROPS_P1_E10_5" iDraw = 10 iTex = 5 cost = 178 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_SUNGLASSES_I_6 tlLabel = "PROPS_P1_E10_6" iDraw = 10 iTex = 6 cost = 160 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P1_GLASSES_RANGE_0 tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 cost = 100 ePropType = PROP_TYPE_GLASSES BREAK // Head CASE PROPS_P1_HOCKEY_MASK tlLabel = "PROPS_P1_H0_0" iDraw = 0 iTex = 0 cost = 320 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_EAR_DEFENDERS tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_BIKE_HELMET tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MIME_HAT tlLabel = "PROPS_P1_H3_0" iDraw = 3 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_HELI_HEADSET tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_FIREMAN_HAT tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_1 tlLabel = "NO_LABEL" iDraw = 6 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_2 tlLabel = "NO_LABEL" iDraw = 6 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_3 tlLabel = "NO_LABEL" iDraw = 6 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_4 tlLabel = "NO_LABEL" iDraw = 6 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_5 tlLabel = "NO_LABEL" iDraw = 6 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_6 tlLabel = "NO_LABEL" iDraw = 6 iTex = 6 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_7 tlLabel = "NO_LABEL" iDraw = 6 iTex = 7 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CRASH_HELMET_8 tlLabel = "NO_LABEL" iDraw = 6 iTex = 8 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_HARD_HAT tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_MONSTER_GREEN tlLabel = "PROPS_P1_H8_0" iDraw = 8 iTex = 0 cost = 270 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_MONSTER_RED tlLabel = "PROPS_P1_H8_1" iDraw = 8 iTex = 1 cost = 270 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_PIG tlLabel = "PROPS_P1_H9_0" iDraw = 9 iTex = 0 cost = 200 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_PIG_DARK tlLabel = "PROPS_P1_H9_1" iDraw = 9 iTex = 1 cost = 200 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_SKULL_GREY tlLabel = "PROPS_P1_H10_0" iDraw = 10 iTex = 0 cost = 350 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_SKULL_YELLOW tlLabel = "PROPS_P1_H10_1" iDraw = 10 iTex = 1 cost = 350 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_MONKEY tlLabel = "PROPS_P1_H11_0" iDraw = 11 iTex = 0 cost = 450 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_HOCKEY_WHITE tlLabel = "PROPS_P1_H12_0" iDraw = 12 iTex = 0 cost = 500 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_HOCKEY_RED tlLabel = "PROPS_P1_H12_1" iDraw = 12 iTex = 1 cost = 500 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_APE tlLabel = "PROPS_P1_H13_0" iDraw = 13 iTex = 0 cost = 50 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_APE_DARK tlLabel = "PROPS_P1_H13_1" iDraw = 13 iTex = 1 cost = 50 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_TRIBAL_1 tlLabel = "PROPS_P1_H14_0" iDraw = 14 iTex = 0 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_TRIBAL_2 tlLabel = "PROPS_P1_H14_1" iDraw = 14 iTex = 1 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MASK_TRIBAL_3 tlLabel = "PROPS_P1_H14_2" iDraw = 14 iTex = 2 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_BUGSTAR_CAP tlLabel = "NO_LABEL" iDraw = 15 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_GREEN_CAP tlLabel = "PROPS_P1_H19_0" iDraw = 16 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_1 tlLabel = "PROPS_P1_H19_1" iDraw = 16 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_2 tlLabel = "PROPS_P1_H19_2" iDraw = 16 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_3 tlLabel = "PROPS_P1_H19_3" iDraw = 16 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_4 tlLabel = "PROPS_P1_H19_4" iDraw = 16 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_5 tlLabel = "PROPS_P1_H19_5" iDraw = 16 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_6 tlLabel = "PROPS_P1_H19_6" iDraw = 16 iTex = 6 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_7 tlLabel = "PROPS_P1_H19_7" iDraw = 16 iTex = 7 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_8 tlLabel = "PROPS_P1_H19_8" iDraw = 16 iTex = 8 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_9 tlLabel = "PROPS_P1_H19_9" iDraw = 16 iTex = 9 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_10 tlLabel = "PROPS_P1_H19_10" iDraw = 16 iTex = 10 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_11 tlLabel = "PROPS_P1_H19_11" iDraw = 16 iTex = 11 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_12 tlLabel = "PROPS_P1_H19_12" iDraw = 16 iTex = 12 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_13 tlLabel = "PROPS_P1_H19_13" iDraw = 16 iTex = 13 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_14 tlLabel = "PROPS_P1_H19_14" iDraw = 16 iTex = 14 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_BACK_15 tlLabel = "PROPS_P1_H19_15" iDraw = 16 iTex = 15 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MOTO_X_HELMET_0 tlLabel = "NO_LABEL" iDraw = 17 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MOTO_X_HELMET_1 tlLabel = "NO_LABEL" iDraw = 17 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MOTO_X_HELMET_2 tlLabel = "NO_LABEL" iDraw = 17 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MOTO_X_HELMET_3 tlLabel = "NO_LABEL" iDraw = 17 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MOTO_X_HELMET_4 tlLabel = "NO_LABEL" iDraw = 17 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_MOTO_X_HELMET_5 tlLabel = "NO_LABEL" iDraw = 17 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_HEADPHONES tlLabel = "NO_LABEL" iDraw = 18 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_0 tlLabel = "PROPS_P1_H19_0" iDraw = 19 iTex = 0 cost = 30 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_1 tlLabel = "PROPS_P1_H19_1" iDraw = 19 iTex = 1 cost =30 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_2 tlLabel = "PROPS_P1_H19_2" iDraw = 19 iTex = 2 cost =32 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_3 tlLabel = "PROPS_P1_H19_3" iDraw = 19 iTex = 3 cost =35 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_4 tlLabel = "PROPS_P1_H19_4" iDraw = 19 iTex = 4 cost =38 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_5 tlLabel = "PROPS_P1_H19_5" iDraw = 19 iTex = 5 cost =42 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_6 tlLabel = "PROPS_P1_H19_6" iDraw = 19 iTex = 6 cost =42 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_7 tlLabel = "PROPS_P1_H19_7" iDraw = 19 iTex = 7 cost =40 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_8 tlLabel = "PROPS_P1_H19_8" iDraw = 19 iTex = 8 cost =45 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_9 tlLabel = "PROPS_P1_H19_9" iDraw = 19 iTex = 9 cost =48 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_10 tlLabel = "PROPS_P1_H19_10" iDraw = 19 iTex = 10 cost =25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_11 tlLabel = "PROPS_P1_H19_11" iDraw = 19 iTex = 11 cost =25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_12 tlLabel = "PROPS_P1_H19_12" iDraw = 19 iTex = 12 cost =28 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_13 tlLabel = "PROPS_P1_H19_13" iDraw = 19 iTex = 13 cost =28 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_14 tlLabel = "PROPS_P1_H19_14" iDraw = 19 iTex = 14 cost =30 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_CAP_FRONT_15 tlLabel = "PROPS_P1_H19_15" iDraw = 19 iTex = 15 cost =35 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_FLIGHT_CAP tlLabel = "NO_LABEL" iDraw = 20 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P1_FIGHTER_JET_HELMET tlLabel = "NO_LABEL" iDraw = 21 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_P1_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FRANKLIN(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) SWITCH eType CASE COMP_TYPE_HEAD FILL_PED_COMP_DATA_FRANKLIN_HEAD(eItem) BREAK CASE COMP_TYPE_HAIR FILL_PED_COMP_DATA_FRANKLIN_HAIR(eItem) BREAK CASE COMP_TYPE_TORSO FILL_PED_COMP_DATA_FRANKLIN_TORSO(eItem) BREAK CASE COMP_TYPE_LEGS FILL_PED_COMP_DATA_FRANKLIN_LEGS(eItem) BREAK CASE COMP_TYPE_FEET FILL_PED_COMP_DATA_FRANKLIN_FEET(eItem) BREAK CASE COMP_TYPE_HAND FILL_PED_COMP_DATA_FRANKLIN_HAND(eItem) BREAK CASE COMP_TYPE_SPECIAL FILL_PED_COMP_DATA_FRANKLIN_SPECIAL(eItem) BREAK CASE COMP_TYPE_SPECIAL2 FILL_PED_COMP_DATA_FRANKLIN_SPECIAL2(eItem) BREAK CASE COMP_TYPE_DECL FILL_PED_COMP_DATA_FRANKLIN_DECL(eItem) BREAK CASE COMP_TYPE_BERD FILL_PED_COMP_DATA_FRANKLIN_BERD(eItem) BREAK CASE COMP_TYPE_TEETH FILL_PED_COMP_DATA_FRANKLIN_TEETH(eItem) BREAK CASE COMP_TYPE_JBIB FILL_PED_COMP_DATA_FRANKLIN_JBIB(eItem) BREAK CASE COMP_TYPE_OUTFIT FILL_PED_COMP_DATA_FRANKLIN_OUTFIT(eItem) BREAK CASE COMP_TYPE_PROPGROUP FILL_PED_COMP_DATA_FRANKLIN_PROPGROUP(eItem) BREAK CASE COMP_TYPE_PROPS FILL_PED_COMP_DATA_FRANKLIN_PROPS(eItem) BREAK ENDSWITCH ENDPROC // -----------------TREVOR -------------------------------------------- /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_HEAD(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HEAD g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE HEAD_P2_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE HEAD_P2_NONE_1 tlLabel = "NO_LABEL" iDraw = 0 iTex = 1 BREAK CASE HEAD_P2_NONE_2 tlLabel = "NO_LABEL" iDraw = 0 iTex = 2 BREAK CASE HEAD_P2_NONE_3 tlLabel = "NO_LABEL" iDraw = 0 iTex = 3 BREAK CASE HEAD_P2_NONE_4 tlLabel = "NO_LABEL" iDraw = 0 iTex = 4 BREAK CASE HEAD_P2_NONE_5 tlLabel = "NO_LABEL" iDraw = 0 iTex = 5 BREAK CASE HEAD_P2_NONE_6 tlLabel = "NO_LABEL" iDraw = 0 iTex = 6 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HEAD_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item /// Prices for hair items go in GET_SP_HAIRDO_PRICE() PROC FILL_PED_COMP_DATA_TREVOR_HAIR(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAIR g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE HAIR_P2_MESSY tlLabel = "HAIR_P2_0_0" iDraw = 0 iTex = 0 BREAK CASE HAIR_P2_FROZEN tlLabel = "HAIR_P2_0_1" iDraw = 0 iTex = 1 BREAK CASE HAIR_P2_SHAVED tlLabel = "HAIR_P2_1_0" iDraw = 1 iTex = 0 BREAK CASE HAIR_P2_CURLS tlLabel = "HAIR_P2_2_0" iDraw = 2 iTex = 0 BREAK CASE HAIR_P2_SIDE_SHED tlLabel = "HAIR_P2_3_0" iDraw = 3 iTex = 0 BREAK CASE HAIR_P2_MESSY2 tlLabel = "HAIR_P2_4_0" iDraw = 4 iTex = 0 BREAK CASE HAIR_P2_MESSY3 tlLabel = "HAIR_P2_5_0" iDraw = 5 iTex = 0 BREAK CASE HAIR_P2_SHAVED2 tlLabel = "HAIR_P2_6_0" iDraw = 6 iTex = 0 BREAK CASE HAIR_P2_PROLOGUE tlLabel = "HAIR_P2_7_0" iDraw = 7 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HAIR_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_TORSO_1(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE TORSO_P2_WHITE_TSHIRT tlLabel = "TORSO_P2_0_0" iDraw = 0 iTex = 0 BREAK CASE TORSO_P2_VNECK_1 tlLabel = "TORSO_P2_0_1" iDraw = 0 iTex = 1 cost = 25 BREAK CASE TORSO_P2_VNECK_2 tlLabel = "TORSO_P2_0_2" iDraw = 0 iTex = 2 BREAK CASE TORSO_P2_VNECK_3 tlLabel = "TORSO_P2_0_3" iDraw = 0 iTex = 3 cost = 15 BREAK CASE TORSO_P2_VNECK_4 tlLabel = "TORSO_P2_0_4" iDraw = 0 iTex = 4 cost = 25 BREAK CASE TORSO_P2_VNECK_5 tlLabel = "TORSO_P2_0_5" iDraw = 0 iTex = 5 cost = 25 BREAK CASE TORSO_P2_VNECK_6 tlLabel = "TORSO_P2_0_6" iDraw = 0 iTex = 6 cost = 22 BREAK CASE TORSO_P2_VNECK_7 tlLabel = "TORSO_P2_0_7" iDraw = 0 iTex = 7 cost = 22 BREAK CASE TORSO_P2_VNECK_8 tlLabel = "TORSO_P2_0_8" iDraw = 0 iTex = 8 cost = 20 BREAK CASE TORSO_P2_VNECK_9 tlLabel = "TORSO_P2_0_9" iDraw = 0 iTex = 9 cost = 20 BREAK CASE TORSO_P2_VNECK_10 tlLabel = "TORSO_P2_0_10" iDraw = 0 iTex = 10 cost = 24 BREAK CASE TORSO_P2_VNECK_11 tlLabel = "TORSO_P2_0_11" iDraw = 0 iTex = 11 cost = 26 BREAK CASE TORSO_P2_VNECK_12 tlLabel = "TORSO_P2_0_12" iDraw = 0 iTex = 12 cost = 28 BREAK CASE TORSO_P2_VNECK_13 tlLabel = "TORSO_P2_0_13" iDraw = 0 iTex = 13 cost = 29 BREAK CASE TORSO_P2_VNECK_14 tlLabel = "TORSO_P2_0_14" iDraw = 0 iTex = 14 cost = 22 BREAK CASE TORSO_P2_VNECK_15 tlLabel = "TORSO_P2_0_15" iDraw = 0 iTex = 15 cost = 20 BREAK CASE TORSO_P2_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_BALLISTICS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_TANK_TOP_0 tlLabel = "TORSO_P2_3_0" iDraw = 3 iTex = 0 cost =35 BREAK CASE TORSO_P2_TANK_TOP_1 tlLabel = "TORSO_P2_3_1" iDraw = 3 iTex = 1 cost =22 BREAK CASE TORSO_P2_TANK_TOP_2 tlLabel = "TORSO_P2_3_2" iDraw = 3 iTex = 2 cost =25 BREAK CASE TORSO_P2_TANK_TOP_3 tlLabel = "TORSO_P2_3_3" iDraw = 3 iTex = 3 cost =38 BREAK CASE TORSO_P2_TANK_TOP_4 tlLabel = "TORSO_P2_3_4" iDraw = 3 iTex = 4 cost =40 BREAK CASE TORSO_P2_TANK_TOP_5 tlLabel = "TORSO_P2_3_5" iDraw = 3 iTex = 5 cost =40 BREAK CASE TORSO_P2_TANK_TOP_6 tlLabel = "TORSO_P2_3_6" iDraw = 3 iTex = 6 cost =40 BREAK CASE TORSO_P2_TANK_TOP_7 tlLabel = "TORSO_P2_3_7" iDraw = 3 iTex = 7 cost =40 BREAK CASE TORSO_P2_TANK_TOP_8 tlLabel = "TORSO_P2_3_8" iDraw = 3 iTex = 8 cost =40 BREAK CASE TORSO_P2_LUDENDORFF tlLabel = "TORSO_P2_4_0" iDraw = 4 iTex = 0 BREAK CASE TORSO_P2_DOWN_JACKET_1 tlLabel = "TORSO_P2_4_1" iDraw = 4 iTex = 1 cost = 500 BREAK CASE TORSO_P2_DOWN_JACKET_2 tlLabel = "TORSO_P2_4_2" iDraw = 4 iTex = 2 cost = 560 BREAK CASE TORSO_P2_DOWN_JACKET_3 tlLabel = "TORSO_P2_4_3" iDraw = 4 iTex = 3 cost = 600 BREAK CASE TORSO_P2_DOWN_JACKET_4 tlLabel = "TORSO_P2_4_4tu" iDraw = 4 iTex = 4 cost = 650 BREAK CASE TORSO_P2_DOWN_JACKET_5 tlLabel = "TORSO_P2_4_5tu" iDraw = 4 iTex = 5 cost = 500 BREAK CASE TORSO_P2_DOWN_JACKET_6 tlLabel = "TORSO_P2_4_6tu" iDraw = 4 iTex = 6 cost = 560 BREAK CASE TORSO_P2_DOWN_JACKET_7 tlLabel = "TORSO_P2_4_7" iDraw = 4 iTex = 7 cost = 500 BREAK CASE TORSO_P2_DOWN_JACKET_8 tlLabel = "TORSO_P2_4_8" iDraw = 4 iTex = 8 cost = 650 BREAK CASE TORSO_P2_DOWN_JACKET_9 tlLabel = "TORSO_P2_4_9" iDraw = 4 iTex = 9 cost = 540 BREAK CASE TORSO_P2_DOWN_JACKET_10 tlLabel = "TORSO_P2_4_10" iDraw = 4 iTex = 10 cost = 690 BREAK CASE TORSO_P2_DOWN_JACKET_11 tlLabel = "TORSO_P2_4_11" iDraw = 4 iTex = 11 cost = 560 BREAK CASE TORSO_P2_DOWN_JACKET_12 tlLabel = "TORSO_P2_4_12" iDraw = 4 iTex = 12 cost = 590 BREAK CASE TORSO_P2_DOWN_JACKET_13 tlLabel = "TORSO_P2_4_13" iDraw = 4 iTex = 13 cost = 690 BREAK CASE TORSO_P2_DOWN_JACKET_14 tlLabel = "TORSO_P2_4_14" iDraw = 4 iTex = 14 cost = 540 BREAK CASE TORSO_P2_DOWN_JACKET_15 tlLabel = "TORSO_P2_4_15" iDraw = 4 iTex = 15 cost = 500 BREAK CASE TORSO_P2_DOCK_WORKER tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_BOILER_SUIT_BLUE tlLabel = "NO_LABEL" iDraw = 5 iTex = 1 bOutfitOnly = TRUE BREAK CASE TORSO_P2_PREP_BOILER_SUIT_1 tlLabel = "NO_LABEL" iDraw = 5 iTex = 2 bOutfitOnly = TRUE BREAK CASE TORSO_P2_PREP_BOILER_SUIT_2 tlLabel = "NO_LABEL" iDraw = 5 iTex = 3 bOutfitOnly = TRUE BREAK CASE TORSO_P2_PREP_BOILER_SUIT_3 tlLabel = "NO_LABEL" iDraw = 5 iTex = 4 bOutfitOnly = TRUE BREAK CASE TORSO_P2_DOCK_WORKER_B tlLabel = "NO_LABEL" iDraw = 5 iTex = 5 bOutfitOnly = TRUE BREAK CASE TORSO_P2_SCUBA tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_SECURITY tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_PROLOGUE tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_TRIATHLON tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_GOLF tlLabel = "TORSO_P2_11_0" iDraw = 11 iTex = 0 BREAK CASE TORSO_P2_TSHIRT_1 tlLabel = "TORSO_P2_11_1" iDraw = 11 iTex = 1 BREAK CASE TORSO_P2_TSHIRT_2 tlLabel = "TORSO_P2_11_2" iDraw = 11 iTex = 2 cost = 25 BREAK CASE TORSO_P2_TSHIRT_3 tlLabel = "TORSO_P2_11_3" iDraw = 11 iTex = 3 cost = 27 BREAK CASE TORSO_P2_TSHIRT_4 tlLabel = "TORSO_P2_11_4" iDraw = 11 iTex = 4 cost = 22 BREAK CASE TORSO_P2_TSHIRT_5 tlLabel = "TORSO_P2_11_5" iDraw = 11 iTex = 5 cost = 350 BREAK CASE TORSO_P2_TSHIRT_6 tlLabel = "TORSO_P2_11_6" iDraw = 11 iTex = 6 cost = 27 BREAK CASE TORSO_P2_TSHIRT_7 tlLabel = "TORSO_P2_11_7" iDraw = 11 iTex = 7 cost = 370 BREAK CASE TORSO_P2_TSHIRT_8 tlLabel = "TORSO_P2_11_8" iDraw = 11 iTex = 8 cost = 25 BREAK CASE TORSO_P2_TSHIRT_9 tlLabel = "TORSO_P2_11_9" iDraw = 11 iTex = 9 cost = 22 BREAK CASE TORSO_P2_TSHIRT_10 tlLabel = "TORSO_P2_11_10" iDraw = 11 iTex = 10 cost = 25 BREAK CASE TORSO_P2_TSHIRT_11 tlLabel = "TORSO_P2_11_11" iDraw = 11 iTex = 11 BREAK CASE TORSO_P2_TSHIRT_12 tlLabel = "TORSO_P2_11_12" iDraw = 11 iTex = 12 cost = 22 BREAK CASE TORSO_P2_TSHIRT_13 tlLabel = "TORSO_P2_11_13" iDraw = 11 iTex = 13 cost = 27 BREAK CASE TORSO_P2_TSHIRT_14 tlLabel = "TORSO_P2_11_14" iDraw = 11 iTex = 14 cost = 25 BREAK CASE TORSO_P2_TSHIRT_15 tlLabel = "TORSO_P2_11_15" iDraw = 11 iTex = 15 cost = 27 BREAK CASE TORSO_P2_MOTO_X tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE eStyle = COMP_STYLE_CRAZY BREAK CASE TORSO_P2_DRESS tlLabel = "TORSO_P2_13_0" iDraw = 13 iTex = 0 BREAK CASE TORSO_P2_DRESS_1 tlLabel = "TORSO_P2_13_1" iDraw = 13 iTex = 1 cost = 39 BREAK CASE TORSO_P2_DRESS_2 tlLabel = "TORSO_P2_13_2" iDraw = 13 iTex = 2 cost = 42 BREAK CASE TORSO_P2_DRESS_3 tlLabel = "TORSO_P2_13_3" iDraw = 13 iTex = 3 cost = 49 BREAK CASE TORSO_P2_DRESS_4 tlLabel = "TORSO_P2_13_4" iDraw = 13 iTex = 4 cost = 35 BREAK CASE TORSO_P2_DRESS_5 tlLabel = "TORSO_P2_13_5" iDraw = 13 iTex = 5 cost = 50 BREAK CASE TORSO_P2_DRESS_6 tlLabel = "TORSO_P2_13_6" iDraw = 13 iTex = 6 cost = 50 BREAK CASE TORSO_P2_DRESS_7 tlLabel = "TORSO_P2_13_7" iDraw = 13 iTex = 7 cost = 50 BREAK CASE TORSO_P2_STEALTH tlLabel = "TORSO_P2_14_0" iDraw = 14 iTex = 0 BREAK CASE TORSO_P2_HOODIE_1 tlLabel = "TORSO_P2_14_1" iDraw = 14 iTex = 1 cost = 88 BREAK CASE TORSO_P2_HOODIE_2 tlLabel = "TORSO_P2_14_2" iDraw = 14 iTex = 2 cost = 60 BREAK CASE TORSO_P2_HOODIE_3 tlLabel = "TORSO_P2_14_3" iDraw = 14 iTex = 3 cost = 80 BREAK CASE TORSO_P2_HOODIE_4 tlLabel = "TORSO_P2_14_4" iDraw = 14 iTex = 4 cost = 70 BREAK CASE TORSO_P2_HOODIE_5 tlLabel = "TORSO_P2_14_5" iDraw = 14 iTex = 5 cost = 80 BREAK CASE TORSO_P2_HOODIE_6 tlLabel = "TORSO_P2_14_6" iDraw = 14 iTex = 6 cost = 70 BREAK CASE TORSO_P2_HOODIE_7 tlLabel = "TORSO_P2_14_7" iDraw = 14 iTex = 7 cost = 90 BREAK CASE TORSO_P2_HOODIE_8 tlLabel = "TORSO_P2_14_8" iDraw = 14 iTex = 8 cost = 95 BREAK CASE TORSO_P2_HOODIE_9 tlLabel = "TORSO_P2_14_9" iDraw = 14 iTex = 9 cost = 105 BREAK CASE TORSO_P2_HOODIE_10 tlLabel = "TORSO_P2_14_10" iDraw = 14 iTex = 10 cost = 95 BREAK CASE TORSO_P2_HOODIE_11 tlLabel = "TORSO_P2_14_11" iDraw = 14 iTex = 11 cost = 110 BREAK CASE TORSO_P2_HOODIE_12 tlLabel = "TORSO_P2_14_12" iDraw = 14 iTex = 12 cost = 98 BREAK CASE TORSO_P2_HOODIE_13 tlLabel = "TORSO_P2_14_13" iDraw = 14 iTex = 13 cost = 88 BREAK CASE TORSO_P2_HOODIE_14 tlLabel = "TORSO_P2_14_14" iDraw = 14 iTex = 14 cost = 98 BREAK CASE TORSO_P2_HOODIE_15 tlLabel = "TORSO_P2_14_15" iDraw = 14 iTex = 15 cost = 110 BREAK CASE TORSO_P2_TENNIS tlLabel = "TORSO_P2_15_0" iDraw = 15 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_NONE tlLabel = "TORSO_P2_16_0" iDraw = 16 iTex = 0 BREAK CASE TORSO_P2_LADIES tlLabel = "TORSO_P2_17_0" iDraw = 17 iTex = 0 bOutfitOnly = TRUE BREAK CASE TORSO_P2_DENIM_JACKET tlLabel = "TORSO_P2_18_0" iDraw = 18 iTex = 0 BREAK CASE TORSO_P2_JACKET_1 tlLabel = "TORSO_P2_18_1" iDraw = 18 iTex = 1 cost = 520 BREAK CASE TORSO_P2_JACKET_2 tlLabel = "TORSO_P2_18_2" iDraw = 18 iTex = 2 cost = 490 BREAK CASE TORSO_P2_JACKET_3 tlLabel = "TORSO_P2_18_3" iDraw = 18 iTex = 3 cost = 450 BREAK CASE TORSO_P2_JACKET_4 tlLabel = "TORSO_P2_18_4" iDraw = 18 iTex = 4 cost = 420 BREAK CASE TORSO_P2_JACKET_5 tlLabel = "TORSO_P2_18_5" iDraw = 18 iTex = 5 cost = 420 BREAK CASE TORSO_P2_DENIM_SHIRT tlLabel = "TORSO_P2_19_0" iDraw = 19 iTex = 0 cost = 85 BREAK CASE TORSO_P2_SHIRT_1 tlLabel = "TORSO_P2_19_1" iDraw = 19 iTex = 1 cost = 85 BREAK CASE TORSO_P2_SHIRT_2 tlLabel = "TORSO_P2_19_2" iDraw = 19 iTex = 2 cost = 75 BREAK CASE TORSO_P2_SHIRT_3 tlLabel = "TORSO_P2_19_3" iDraw = 19 iTex = 3 cost = 68 BREAK CASE TORSO_P2_SHIRT_4 tlLabel = "TORSO_P2_19_4" iDraw = 19 iTex = 4 cost = 68 BREAK CASE TORSO_P2_SHIRT_5 tlLabel = "TORSO_P2_19_5" iDraw = 19 iTex = 5 cost = 78 BREAK CASE TORSO_P2_SHIRT_6 tlLabel = "TORSO_P2_19_6" iDraw = 19 iTex = 6 cost = 85 BREAK CASE TORSO_P2_SHIRT_7 tlLabel = "TORSO_P2_19_7" iDraw = 19 iTex = 7 cost = 68 BREAK CASE TORSO_P2_SHIRT_8 tlLabel = "TORSO_P2_19_8" iDraw = 19 iTex = 8 cost = 75 BREAK CASE TORSO_P2_SHIRT_9 tlLabel = "TORSO_P2_19_9" iDraw = 19 iTex = 9 cost = 75 BREAK CASE TORSO_P2_SHIRT_10 tlLabel = "TORSO_P2_19_10" iDraw = 19 iTex = 10 cost = 78 BREAK CASE TORSO_P2_SHIRT_11 tlLabel = "TORSO_P2_19_11" iDraw = 19 iTex = 11 cost = 75 BREAK CASE TORSO_P2_SHIRT_12 tlLabel = "TORSO_P2_19_12" iDraw = 19 iTex = 12 cost = 75 BREAK CASE TORSO_P2_SHIRT_13 tlLabel = "TORSO_P2_19_13" iDraw = 19 iTex = 13 cost = 75 BREAK CASE TORSO_P2_SHIRT_14 tlLabel = "TORSO_P2_19_14" iDraw = 19 iTex = 14 cost = 78 BREAK CASE TORSO_P2_SHIRT_15 tlLabel = "TORSO_P2_19_15" iDraw = 19 iTex = 15 cost = 78 BREAK CASE TORSO_P2_BOWLING_SHIRT tlLabel = "TORSO_P2_20_0" iDraw = 20 iTex = 0 cost = 40 BREAK CASE TORSO_P2_BOWLING_SHIRT_1 tlLabel = "TORSO_P2_20_1" iDraw = 20 iTex = 1 cost = 32 BREAK CASE TORSO_P2_BOWLING_SHIRT_2 tlLabel = "TORSO_P2_20_2" iDraw = 20 iTex = 2 cost = 32 BREAK CASE TORSO_P2_BOWLING_SHIRT_3 tlLabel = "TORSO_P2_20_3" iDraw = 20 iTex = 3 cost = 32 BREAK CASE TORSO_P2_BOWLING_SHIRT_4 tlLabel = "TORSO_P2_20_4" iDraw = 20 iTex = 4 BREAK CASE TORSO_P2_BOWLING_SHIRT_5 tlLabel = "TORSO_P2_20_5" iDraw = 20 iTex = 5 cost = 38 BREAK CASE TORSO_P2_BOWLING_SHIRT_6 tlLabel = "TORSO_P2_20_6" iDraw = 20 iTex = 6 cost = 35 BREAK CASE TORSO_P2_BOWLING_SHIRT_7 tlLabel = "TORSO_P2_20_7" iDraw = 20 iTex = 7 cost = 38 BREAK CASE TORSO_P2_BOWLING_SHIRT_8 tlLabel = "TORSO_P2_20_8" iDraw = 20 iTex = 8 cost = 29 BREAK CASE TORSO_P2_BOWLING_SHIRT_9 tlLabel = "TORSO_P2_20_9" iDraw = 20 iTex = 9 cost = 32 BREAK CASE TORSO_P2_BOWLING_SHIRT_10 tlLabel = "TORSO_P2_20_10" iDraw = 20 iTex = 10 cost = 29 BREAK CASE TORSO_P2_BOWLING_SHIRT_11 tlLabel = "TORSO_P2_20_11" iDraw = 20 iTex = 11 cost = 35 BREAK CASE TORSO_P2_BOWLING_SHIRT_12 tlLabel = "TORSO_P2_20_12" iDraw = 20 iTex = 12 cost = 32 BREAK CASE TORSO_P2_BOWLING_SHIRT_13 tlLabel = "TORSO_P2_20_13" iDraw = 20 iTex = 13 cost = 35 BREAK CASE TORSO_P2_BOWLING_SHIRT_14 tlLabel = "TORSO_P2_20_14" iDraw = 20 iTex = 14 cost = 32 BREAK CASE TORSO_P2_BOWLING_SHIRT_15 tlLabel = "TORSO_P2_20_15" iDraw = 20 iTex = 15 cost = 40 BREAK DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_TORSO_2(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE TORSO_P2_BLOUSON tlLabel = "TORSO_P2_21_0" iDraw = 21 iTex = 0 cost = 32 BREAK CASE TORSO_P2_BLOUSON_1 tlLabel = "TORSO_P2_21_1" iDraw = 21 iTex = 1 cost = 39 BREAK CASE TORSO_P2_BLOUSON_2 tlLabel = "TORSO_P2_21_2" iDraw = 21 iTex = 2 cost = 40 BREAK CASE TORSO_P2_BLOUSON_3 tlLabel = "TORSO_P2_21_3" iDraw = 21 iTex = 3 cost = 42 BREAK CASE TORSO_P2_BLOUSON_4 tlLabel = "TORSO_P2_21_4" iDraw = 21 iTex = 4 cost = 45 BREAK CASE TORSO_P2_BLOUSON_5 tlLabel = "TORSO_P2_21_5" iDraw = 21 iTex = 5 cost = 48 BREAK CASE TORSO_P2_BLOUSON_6 tlLabel = "TORSO_P2_21_6" iDraw = 21 iTex = 6 cost = 52 BREAK CASE TORSO_P2_BLOUSON_7 tlLabel = "TORSO_P2_21_7" iDraw = 21 iTex = 7 cost = 55 BREAK CASE TORSO_P2_LEATHER_JACKET tlLabel = "TORSO_P2_22_0" iDraw = 22 iTex = 0 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_1 tlLabel = "TORSO_P2_22_1" iDraw = 22 iTex = 1 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_2 tlLabel = "TORSO_P2_22_2" iDraw = 22 iTex = 2 cost = 560 BREAK CASE TORSO_P2_LEATHER_JACKET_3 tlLabel = "TORSO_P2_22_3" iDraw = 22 iTex = 3 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_4 tlLabel = "TORSO_P2_22_4" iDraw = 22 iTex = 4 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_5 tlLabel = "TORSO_P2_22_5" iDraw = 22 iTex = 5 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_6 tlLabel = "TORSO_P2_22_6" iDraw = 22 iTex = 6 cost = 560 BREAK CASE TORSO_P2_LEATHER_JACKET_7 tlLabel = "TORSO_P2_22_7" iDraw = 22 iTex = 7 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_8 tlLabel = "TORSO_P2_22_8" iDraw = 22 iTex = 8 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_9 tlLabel = "TORSO_P2_22_9" iDraw = 22 iTex = 9 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_10 tlLabel = "TORSO_P2_22_10" iDraw = 22 iTex = 10 cost = 390 BREAK CASE TORSO_P2_LEATHER_JACKET_11 tlLabel = "TORSO_P2_22_11" iDraw = 22 iTex = 11 cost = 3950 BREAK CASE TORSO_P2_GILET tlLabel = "TORSO_P2_23_0" iDraw = 23 iTex = 0 cost = 150 BREAK CASE TORSO_P2_GILET_1 tlLabel = "TORSO_P2_23_1" iDraw = 23 iTex = 1 BREAK CASE TORSO_P2_GILET_2 tlLabel = "TORSO_P2_23_2" iDraw = 23 iTex = 2 cost = 150 BREAK CASE TORSO_P2_GILET_3 tlLabel = "TORSO_P2_23_3" iDraw = 23 iTex = 3 cost = 150 BREAK CASE TORSO_P2_GILET_4 tlLabel = "TORSO_P2_23_4" iDraw = 23 iTex = 4 cost = 160 BREAK CASE TORSO_P2_GILET_5 tlLabel = "TORSO_P2_23_5" iDraw = 23 iTex = 5 BREAK CASE TORSO_P2_YELLOW_VEST tlLabel = "TORSO_P2_24_0" iDraw = 24 iTex = 0 cost = 19 BREAK CASE TORSO_P2_YELLOW_VEST_1 tlLabel = "TORSO_P2_24_1" iDraw = 24 iTex = 1 cost = 20 BREAK CASE TORSO_P2_YELLOW_VEST_2 tlLabel = "TORSO_P2_24_2" iDraw = 24 iTex = 2 cost = 19 BREAK CASE TORSO_P2_YELLOW_VEST_3 tlLabel = "TORSO_P2_24_3" iDraw = 24 iTex = 3 cost = 22 BREAK CASE TORSO_P2_YELLOW_VEST_4 tlLabel = "TORSO_P2_24_4" iDraw = 24 iTex = 4 cost = 20 BREAK CASE TORSO_P2_YELLOW_VEST_5 tlLabel = "TORSO_P2_24_5" iDraw = 24 iTex = 5 cost = 28 BREAK CASE TORSO_P2_YELLOW_VEST_6 tlLabel = "TORSO_P2_24_6" iDraw = 24 iTex = 6 cost = 28 BREAK CASE TORSO_P2_YELLOW_VEST_7 tlLabel = "TORSO_P2_24_7" iDraw = 24 iTex = 7 cost = 25 BREAK CASE TORSO_P2_YELLOW_VEST_8 tlLabel = "TORSO_P2_24_8" iDraw = 24 iTex = 8 cost = 22 BREAK CASE TORSO_P2_YELLOW_VEST_9 tlLabel = "TORSO_P2_24_9" iDraw = 24 iTex = 9 cost = 19 BREAK CASE TORSO_P2_YELLOW_VEST_10 tlLabel = "TORSO_P2_24_10" iDraw = 24 iTex = 10 cost = 22 BREAK CASE TORSO_P2_YELLOW_VEST_11 tlLabel = "TORSO_P2_24_11" iDraw = 24 iTex = 11 cost = 19 BREAK CASE TORSO_P2_YELLOW_VEST_12 tlLabel = "TORSO_P2_24_12" iDraw = 24 iTex = 12 cost = 20 BREAK CASE TORSO_P2_YELLOW_VEST_13 tlLabel = "TORSO_P2_24_13" iDraw = 24 iTex = 13 cost = 25 BREAK CASE TORSO_P2_YELLOW_VEST_14 tlLabel = "TORSO_P2_24_14" iDraw = 24 iTex = 14 cost = 20 BREAK CASE TORSO_P2_YELLOW_VEST_15 tlLabel = "TORSO_P2_24_15" iDraw = 24 iTex = 15 cost = 28 BREAK CASE TORSO_P2_LONG_SLEEVE tlLabel = "TORSO_P2_25_0" iDraw = 25 iTex = 0 cost = 35 BREAK CASE TORSO_P2_LONG_SLEEVE_1 tlLabel = "TORSO_P2_25_1" iDraw = 25 iTex = 1 cost = 40 BREAK CASE TORSO_P2_LONG_SLEEVE_2 tlLabel = "TORSO_P2_25_2" iDraw = 25 iTex = 2 cost = 45 BREAK CASE TORSO_P2_LONG_SLEEVE_3 tlLabel = "TORSO_P2_25_3" iDraw = 25 iTex = 3 cost = 45 BREAK CASE TORSO_P2_LONG_SLEEVE_4 tlLabel = "TORSO_P2_25_4" iDraw = 25 iTex = 4 cost = 49 BREAK CASE TORSO_P2_LONG_SLEEVE_5 tlLabel = "TORSO_P2_25_5" iDraw = 25 iTex = 5 cost = 820 BREAK CASE TORSO_P2_LONG_SLEEVE_6 tlLabel = "TORSO_P2_25_6" iDraw = 25 iTex = 6 cost = 790 BREAK CASE TORSO_P2_LONG_SLEEVE_7 tlLabel = "TORSO_P2_25_7" iDraw = 25 iTex = 7 cost = 820 BREAK CASE TORSO_P2_LONG_SLEEVE_8 tlLabel = "TORSO_P2_25_8" iDraw = 25 iTex = 8 cost = 929 BREAK CASE TORSO_P2_LONG_SLEEVE_9 tlLabel = "TORSO_P2_25_9" iDraw = 25 iTex = 9 cost = 40 BREAK CASE TORSO_P2_LONG_SLEEVE_10 tlLabel = "TORSO_P2_25_10" iDraw = 25 iTex = 10 cost = 850 BREAK CASE TORSO_P2_LONG_SLEEVE_11 tlLabel = "TORSO_P2_25_11" iDraw = 25 iTex = 11 cost = 790 BREAK CASE TORSO_P2_CHEAPSUIT_0 tlLabel = "TORSO_P2_26_0" iDraw = 26 iTex = 0 BREAK CASE TORSO_P2_CHEAPSUIT_1 tlLabel = "TORSO_P2_26_1" iDraw = 26 iTex = 1 BREAK CASE TORSO_P2_CHEAPSUIT_2 tlLabel = "TORSO_P2_26_2" iDraw = 26 iTex = 2 BREAK CASE TORSO_P2_CHEAPSUIT_3 tlLabel = "TORSO_P2_26_3" iDraw = 26 iTex = 3 BREAK CASE TORSO_P2_CHEAPSUIT_4 tlLabel = "TORSO_P2_26_4" iDraw = 26 iTex = 4 BREAK CASE TORSO_P2_CHEAPSUIT_5 tlLabel = "TORSO_P2_26_5" iDraw = 26 iTex = 5 BREAK CASE TORSO_P2_CHEAPSUIT_6 tlLabel = "TORSO_P2_26_6" iDraw = 26 iTex = 6 BREAK CASE TORSO_P2_CHEAPSUIT_7 tlLabel = "TORSO_P2_26_7" iDraw = 26 iTex = 7 BREAK CASE TORSO_P2_CHEAPSUIT_8 tlLabel = "TORSO_P2_26_8" iDraw = 26 iTex = 8 BREAK CASE TORSO_P2_CHEAPSUIT_9 tlLabel = "TORSO_P2_26_9" iDraw = 26 iTex = 9 BREAK CASE TORSO_P2_STYLESUIT_JACKET tlLabel = "TORSO_P2_27_0" iDraw = 27 iTex = 0 cost = 2200 BREAK CASE TORSO_P2_STYLESUIT_JACKET_1 tlLabel = "TORSO_P2_27_1" iDraw = 27 iTex = 1 cost = 2500 BREAK CASE TORSO_P2_STYLESUIT_JACKET_2 tlLabel = "TORSO_P2_27_2" iDraw = 27 iTex = 2 cost = 2500 BREAK CASE TORSO_P2_STYLESUIT_JACKET_3 tlLabel = "TORSO_P2_27_3" iDraw = 27 iTex = 3 cost = 2200 BREAK CASE TORSO_P2_STYLESUIT_JACKET_4 tlLabel = "TORSO_P2_27_4" iDraw = 27 iTex = 4 cost = 2500 BREAK CASE TORSO_P2_STYLESUIT_JACKET_5 tlLabel = "TORSO_P2_27_5" iDraw = 27 iTex = 5 cost = 2500 BREAK CASE TORSO_P2_STYLESUIT_JACKET_6 tlLabel = "TORSO_P2_27_6" iDraw = 27 iTex = 6 cost = 2200 BREAK CASE TORSO_P2_WOOL_SWEATER tlLabel = "TORSO_P2_28_0" iDraw = 28 iTex = 0 cost = 1100 BREAK CASE TORSO_P2_WOOL_SWEATER_1 tlLabel = "TORSO_P2_28_1" iDraw = 28 iTex = 1 cost = 1200 BREAK CASE TORSO_P2_WOOL_SWEATER_2 tlLabel = "TORSO_P2_28_2" iDraw = 28 iTex = 2 cost = 1220 BREAK CASE TORSO_P2_WOOL_SWEATER_3 tlLabel = "TORSO_P2_28_3" iDraw = 28 iTex = 3 cost = 1250 BREAK CASE TORSO_P2_WOOL_SWEATER_4 tlLabel = "TORSO_P2_28_4" iDraw = 28 iTex = 4 cost = 1300 BREAK CASE TORSO_P2_WOOL_SWEATER_5 tlLabel = "TORSO_P2_28_5" iDraw = 28 iTex = 5 cost = 1360 BREAK CASE TORSO_P2_WOOL_SWEATER_6 tlLabel = "TORSO_P2_28_6" iDraw = 28 iTex = 6 cost = 35 BREAK CASE TORSO_P2_WOOL_SWEATER_7 tlLabel = "TORSO_P2_28_7" iDraw = 28 iTex = 7 cost = 38 BREAK CASE TORSO_P2_WOOL_SWEATER_8 tlLabel = "TORSO_P2_28_8" iDraw = 28 iTex = 8 cost = 40 BREAK CASE TORSO_P2_WOOL_SWEATER_9 tlLabel = "TORSO_P2_28_9" iDraw = 28 iTex = 9 cost = 42 BREAK CASE TORSO_P2_WOOL_SWEATER_10 tlLabel = "TORSO_P2_28_10" iDraw = 28 iTex = 10 cost = 50 BREAK CASE TORSO_P2_WOOL_SWEATER_11 tlLabel = "TORSO_P2_28_11" iDraw = 28 iTex = 11 cost = 45 BREAK CASE TORSO_P2_WOOL_SWEATER_12 tlLabel = "TORSO_P2_28_12" iDraw = 28 iTex = 12 cost = 45 BREAK CASE TORSO_P2_WOOL_SWEATER_13 tlLabel = "TORSO_P2_28_13" iDraw = 28 iTex = 13 cost = 44 BREAK CASE TORSO_P2_WOOL_SWEATER_14 tlLabel = "TORSO_P2_28_14" iDraw = 28 iTex = 14 cost = 46 BREAK CASE TORSO_P2_WOOL_SWEATER_15 tlLabel = "TORSO_P2_28_15" iDraw = 28 iTex = 15 cost = 52 BREAK CASE TORSO_P2_STYLESUIT_TEE_0 tlLabel = "TORSO_P2_29_0" iDraw = 29 iTex = 0 cost = 3200 BREAK CASE TORSO_P2_STYLESUIT_TEE_1 tlLabel = "TORSO_P2_29_1" iDraw = 29 iTex = 1 cost = 3200 BREAK CASE TORSO_P2_STYLESUIT_TEE_2 tlLabel = "TORSO_P2_29_2" iDraw = 29 iTex = 2 cost = 2550 BREAK CASE TORSO_P2_STYLESUIT_TEE_3 tlLabel = "TORSO_P2_29_3" iDraw = 29 iTex = 3 cost = 2750 BREAK CASE TORSO_P2_STYLESUIT_TEE_4 tlLabel = "TORSO_P2_29_4" iDraw = 29 iTex = 4 cost = 2590 BREAK CASE TORSO_P2_STYLESUIT_TEE_5 tlLabel = "TORSO_P2_29_5" iDraw = 29 iTex = 5 cost = 2750 BREAK CASE TORSO_P2_STYLESUIT_TEE_6 tlLabel = "TORSO_P2_29_6" iDraw = 29 iTex = 6 cost = 2550 BREAK CASE TORSO_P2_STYLESUIT_TEE_7 tlLabel = "TORSO_P2_29_7" iDraw = 29 iTex = 7 cost = 2590 BREAK CASE TORSO_P2_STYLESUIT_TEE_8 tlLabel = "TORSO_P2_29_8" iDraw = 29 iTex = 8 cost = 2720 BREAK CASE TORSO_P2_STYLESUIT_TEE_9 tlLabel = "TORSO_P2_29_9" iDraw = 29 iTex = 9 cost = 2750 BREAK CASE TORSO_P2_STYLESUIT_VNECK tlLabel = "TORSO_P2_30_0" iDraw = 30 iTex = 0 cost = 3250 BREAK CASE TORSO_P2_STYLESUIT_VNECK_1 tlLabel = "TORSO_P2_30_1" iDraw = 30 iTex = 1 cost = 2950 BREAK CASE TORSO_P2_STYLESUIT_VNECK_2 tlLabel = "TORSO_P2_30_2" iDraw = 30 iTex = 2 cost = 3100 BREAK CASE TORSO_P2_STYLESUIT_VNECK_3 tlLabel = "TORSO_P2_30_3" iDraw = 30 iTex = 3 cost = 3150 BREAK CASE TORSO_P2_STYLESUIT_VNECK_4 tlLabel = "TORSO_P2_30_4" iDraw = 30 iTex = 4 cost = 3240 BREAK CASE TORSO_P2_STYLESUIT_VNECK_5 tlLabel = "TORSO_P2_30_5" iDraw = 30 iTex = 5 cost = 3350 BREAK CASE TORSO_P2_STYLESUIT_VNECK_6 tlLabel = "TORSO_P2_30_6" iDraw = 30 iTex = 6 cost = 3400 BREAK CASE TORSO_P2_STYLESUIT_VNECK_7 tlLabel = "TORSO_P2_30_7" iDraw = 30 iTex = 7 cost = 3280 BREAK CASE TORSO_P2_TUXEDO tlLabel = "TORSO_P2_31_0" iDraw = 31 iTex = 0 BREAK DEFAULT // Bail so we can process DLC EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_TORSO(PED_COMP_NAME_ENUM eItem) IF eItem < TORSO_P2_BLOUSON FILL_PED_COMP_DATA_TREVOR_TORSO_1(eItem) ELSE FILL_PED_COMP_DATA_TREVOR_TORSO_2(eItem) ENDIF IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(COMP_TYPE_TORSO, eItem, TORSO_P2_DLC) ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_LEGS(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_LEGS g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE LEGS_P2_BLUE_JEANS tlLabel = "LEGS_P2_0_0" iDraw = 0 iTex = 0 BREAK CASE LEGS_P2_JEANS_1 tlLabel = "LEGS_P2_0_1" iDraw = 0 iTex = 1 cost = 95 BREAK CASE LEGS_P2_JEANS_2 tlLabel = "LEGS_P2_0_2" iDraw = 0 iTex = 2 cost = 129 BREAK CASE LEGS_P2_JEANS_3 tlLabel = "LEGS_P2_0_3" iDraw = 0 iTex = 3 cost = 115 BREAK CASE LEGS_P2_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_BALLISTICS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_NAVY_COP tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_PARAMEDIC tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_DOCK_WORKER tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_BOILER_SUIT_BLUE tlLabel = "NO_LABEL" iDraw = 5 iTex = 1 bOutfitOnly = TRUE BREAK CASE LEGS_P2_PREP_BOILER_SUIT_1 tlLabel = "NO_LABEL" iDraw = 5 iTex = 2 bOutfitOnly = TRUE BREAK CASE LEGS_P2_PREP_BOILER_SUIT_2 tlLabel = "NO_LABEL" iDraw = 5 iTex = 3 bOutfitOnly = TRUE BREAK CASE LEGS_P2_PREP_BOILER_SUIT_3 tlLabel = "NO_LABEL" iDraw = 5 iTex = 4 bOutfitOnly = TRUE BREAK CASE LEGS_P2_SCUBA tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_SECURITY tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_PROLOGUE tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_TRIATHLON tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_GOLF tlLabel = "LEGS_P2_11_0" iDraw = 11 iTex = 0 BREAK CASE LEGS_P2_GOLF_1 tlLabel = "LEGS_P2_11_1" iDraw = 11 iTex = 1 cost = 750 BREAK CASE LEGS_P2_GOLF_2 tlLabel = "LEGS_P2_11_2" iDraw = 11 iTex = 2 cost = 650 BREAK CASE LEGS_P2_GOLF_3 tlLabel = "LEGS_P2_11_3" iDraw = 11 iTex = 3 cost = 850 BREAK CASE LEGS_P2_GOLF_4 tlLabel = "LEGS_P2_11_4" iDraw = 11 iTex = 4 cost = 850 BREAK CASE LEGS_P2_GOLF_5 tlLabel = "LEGS_P2_11_5" iDraw = 11 iTex = 5 cost = 750 BREAK CASE LEGS_P2_GOLF_6 tlLabel = "LEGS_P2_11_6" iDraw = 11 iTex = 6 cost = 690 BREAK CASE LEGS_P2_GOLF_7 tlLabel = "LEGS_P2_11_7" iDraw = 11 iTex = 7 cost = 820 BREAK CASE LEGS_P2_GOLF_8 tlLabel = "LEGS_P2_11_8" iDraw = 11 iTex = 8 cost = 650 BREAK CASE LEGS_P2_GOLF_9 tlLabel = "LEGS_P2_11_9" iDraw = 11 iTex = 9 cost = 690 BREAK CASE LEGS_P2_GOLF_10 tlLabel = "LEGS_P2_11_10" iDraw = 11 iTex = 10 cost = 690 BREAK CASE LEGS_P2_GOLF_11 tlLabel = "LEGS_P2_11_11" iDraw = 11 iTex = 11 cost = 820 BREAK CASE LEGS_P2_MOTO_X tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_MIME tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_STEALTH tlLabel = "LEGS_P2_14_0" iDraw = 14 iTex = 0 BREAK CASE LEGS_P2_TENNIS tlLabel = "LEGS_P2_15_0" iDraw = 15 iTex = 0 BREAK CASE LEGS_P2_LADIES_SWEAT tlLabel = "LEGS_P2_16_0" iDraw = 16 iTex = 0 bOutfitOnly = TRUE BREAK CASE LEGS_P2_WORKPANTS tlLabel = "LEGS_P2_17_0" iDraw = 17 iTex = 0 cost = 58 BREAK CASE LEGS_P2_WORKPANTS_1 tlLabel = "LEGS_P2_17_1" iDraw = 17 iTex = 1 cost = 68 BREAK CASE LEGS_P2_WORKPANTS_2 tlLabel = "LEGS_P2_17_2" iDraw = 17 iTex = 2 cost = 65 BREAK CASE LEGS_P2_WORKPANTS_3 tlLabel = "LEGS_P2_17_3" iDraw = 17 iTex = 3 cost = 60 BREAK CASE LEGS_P2_WORKPANTS_4 tlLabel = "LEGS_P2_17_4" iDraw = 17 iTex = 4 cost = 65 BREAK CASE LEGS_P2_WORKPANTS_5 tlLabel = "LEGS_P2_17_5" iDraw = 17 iTex = 5 cost = 63 BREAK CASE LEGS_P2_WORKPANTS_6 tlLabel = "LEGS_P2_17_6" iDraw = 17 iTex = 6 cost = 60 BREAK CASE LEGS_P2_WORKPANTS_7 tlLabel = "LEGS_P2_17_7" iDraw = 17 iTex = 7 cost = 58 BREAK CASE LEGS_P2_CARGOPANTS tlLabel = "LEGS_P2_18_0" iDraw = 18 iTex = 0 BREAK CASE LEGS_P2_CARGOPANTS_1 tlLabel = "LEGS_P2_18_1" iDraw = 18 iTex = 1 BREAK CASE LEGS_P2_CARGOPANTS_2 tlLabel = "LEGS_P2_18_2" iDraw = 18 iTex = 2 cost = 99 BREAK CASE LEGS_P2_CARGOPANTS_3 tlLabel = "LEGS_P2_18_3" iDraw = 18 iTex = 3 cost = 105 BREAK CASE LEGS_P2_CARGOPANTS_4 tlLabel = "LEGS_P2_18_4" iDraw = 18 iTex = 4 cost = 110 BREAK CASE LEGS_P2_CARGOPANTS_5 tlLabel = "LEGS_P2_18_5" iDraw = 18 iTex = 5 cost = 110 BREAK CASE LEGS_P2_CARGOPANTS_6 tlLabel = "LEGS_P2_18_6" iDraw = 18 iTex = 6 cost = 99 BREAK CASE LEGS_P2_CARGOPANTS_7 tlLabel = "LEGS_P2_18_7" iDraw = 18 iTex = 7 cost = 110 BREAK CASE LEGS_P2_CARGOPANTS_8 tlLabel = "LEGS_P2_18_8" iDraw = 18 iTex = 8 cost = 110 BREAK CASE LEGS_P2_CARGOPANTS_9 tlLabel = "LEGS_P2_18_9" iDraw = 18 iTex = 9 cost = 105 BREAK CASE LEGS_P2_CARGOPANTS_10 tlLabel = "LEGS_P2_18_10" iDraw = 18 iTex = 10 cost = 105 BREAK CASE LEGS_P2_BEACH tlLabel = "LEGS_P2_19_0" iDraw = 19 iTex = 0 cost = 15 BREAK CASE LEGS_P2_BEACH_1 tlLabel = "LEGS_P2_19_1" iDraw = 19 iTex = 1 cost = 15 BREAK CASE LEGS_P2_BEACH_2 tlLabel = "LEGS_P2_19_2" iDraw = 19 iTex = 2 cost = 15 BREAK CASE LEGS_P2_BEACH_3 tlLabel = "LEGS_P2_19_3" iDraw = 19 iTex = 3 cost = 15 BREAK CASE LEGS_P2_BEACH_4 tlLabel = "LEGS_P2_19_4" iDraw = 19 iTex = 4 cost = 15 BREAK CASE LEGS_P2_BEACH_5 tlLabel = "LEGS_P2_19_5" iDraw = 19 iTex = 5 cost = 15 BREAK CASE LEGS_P2_BEACH_6 tlLabel = "LEGS_P2_19_6" iDraw = 19 iTex = 6 cost = 15 BREAK CASE LEGS_P2_BEACH_7 tlLabel = "LEGS_P2_19_7" iDraw = 19 iTex = 7 cost = 15 BREAK CASE LEGS_P2_SUIT_PANTS tlLabel = "LEGS_P2_20_0" iDraw = 20 iTex = 0 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_1 tlLabel = "LEGS_P2_20_1" iDraw = 20 iTex = 1 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_2 tlLabel = "LEGS_P2_20_2" iDraw = 20 iTex = 2 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_3 tlLabel = "LEGS_P2_20_3" iDraw = 20 iTex = 3 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_4 tlLabel = "LEGS_P2_20_4" iDraw = 20 iTex = 4 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_5 tlLabel = "LEGS_P2_20_5" iDraw = 20 iTex = 5 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_6 tlLabel = "LEGS_P2_20_6" iDraw = 20 iTex = 6 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_7 tlLabel = "LEGS_P2_20_7" iDraw = 20 iTex = 7 cost = 600 BREAK CASE LEGS_P2_SUIT_PANTS_8 tlLabel = "LEGS_P2_20_8" iDraw = 20 iTex = 8 cost = 600 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS tlLabel = "LEGS_P2_21_0" iDraw = 21 iTex = 0 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_1 tlLabel = "LEGS_P2_21_1" iDraw = 21 iTex = 1 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_2 tlLabel = "LEGS_P2_21_2" iDraw = 21 iTex = 2 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_3 tlLabel = "LEGS_P2_21_3" iDraw = 21 iTex = 3 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_4 tlLabel = "LEGS_P2_21_4" iDraw = 21 iTex = 4 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_5 tlLabel = "LEGS_P2_21_5" iDraw = 21 iTex = 5 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_6 tlLabel = "LEGS_P2_21_6" iDraw = 21 iTex = 6 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_7 tlLabel = "LEGS_P2_21_7" iDraw = 21 iTex = 7 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_8 tlLabel = "LEGS_P2_21_8" iDraw = 21 iTex = 8 cost = 80 BREAK CASE LEGS_P2_CHEAP_SUIT_PANTS_9 tlLabel = "LEGS_P2_21_9" iDraw = 21 iTex = 9 cost = 80 BREAK CASE LEGS_P2_UNDERWEAR tlLabel = "LEGS_P2_22_0" iDraw = 22 iTex = 0 BREAK CASE LEGS_P2_UNDERWEAR_1 tlLabel = "LEGS_P2_22_1" iDraw = 22 iTex = 1 cost = 12 BREAK CASE LEGS_P2_UNDERWEAR_2 tlLabel = "LEGS_P2_22_2" iDraw = 22 iTex = 2 cost = 12 BREAK CASE LEGS_P2_UNDERWEAR_3 tlLabel = "LEGS_P2_22_3" iDraw = 22 iTex = 3 cost = 22 BREAK CASE LEGS_P2_UNDERWEAR_4 tlLabel = "LEGS_P2_22_4" iDraw = 22 iTex = 4 cost = 18 BREAK CASE LEGS_P2_UNDERWEAR_5 tlLabel = "LEGS_P2_22_5" iDraw = 22 iTex = 5 cost = 20 BREAK CASE LEGS_P2_UNDERWEAR_6 tlLabel = "LEGS_P2_22_6" iDraw = 22 iTex = 6 cost = 30 BREAK CASE LEGS_P2_UNDERWEAR_7 tlLabel = "LEGS_P2_22_7" iDraw = 22 iTex = 7 cost = 30 BREAK CASE LEGS_P2_UNDERWEAR_8 tlLabel = "LEGS_P2_22_8" iDraw = 22 iTex = 8 cost = 30 BREAK CASE LEGS_P2_UNDERWEAR_9 tlLabel = "LEGS_P2_22_9" iDraw = 22 iTex = 9 cost = 30 BREAK CASE LEGS_P2_SWEAT_PANTS tlLabel = "LEGS_P2_23_0" iDraw = 23 iTex = 0 BREAK CASE LEGS_P2_CHEAP_TUXEDO_PANTS tlLabel = "LEGS_P2_24_0" iDraw = 24 iTex = 0 BREAK CASE // normal version #IF NOT IS_JAPANESE_BUILD LEGS_P2_TOILET tlLabel = "NO_LABEL" iDraw = 25 iTex = 0 bOutfitOnly = TRUE BREAK #ENDIF // japanese version (use underwear legs instead- should never get called though) #IF IS_JAPANESE_BUILD LEGS_P2_TOILET tlLabel = "NO_LABEL" iDraw = 22 iTex = 0 bOutfitOnly = TRUE BREAK #ENDIF CASE LEGS_P2_UNDERWEAR_BF_0 tlLabel = "NO_LABEL" iDraw = 26 iTex = 0 BREAK CASE LEGS_P2_UNDERWEAR_BF_1 tlLabel = "NO_LABEL" iDraw = 26 iTex = 1 BREAK CASE LEGS_P2_UNDERWEAR_BF_2 tlLabel = "NO_LABEL" iDraw = 26 iTex = 2 BREAK CASE LEGS_P2_UNDERWEAR_BF_3 tlLabel = "NO_LABEL" iDraw = 26 iTex = 3 BREAK CASE LEGS_P2_UNDERWEAR_BF_4 tlLabel = "NO_LABEL" iDraw = 26 iTex = 4 BREAK CASE LEGS_P2_UNDERWEAR_BF_5 tlLabel = "NO_LABEL" iDraw = 26 iTex = 5 BREAK CASE LEGS_P2_UNDERWEAR_BF_6 tlLabel = "NO_LABEL" iDraw = 26 iTex = 6 BREAK CASE LEGS_P2_UNDERWEAR_BF_7 tlLabel = "NO_LABEL" iDraw = 26 iTex = 7 BREAK CASE LEGS_P2_UNDERWEAR_BF_8 tlLabel = "NO_LABEL" iDraw = 26 iTex = 8 BREAK CASE LEGS_P2_UNDERWEAR_BF_9 tlLabel = "NO_LABEL" iDraw = 26 iTex = 9 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_FEET(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_FEET g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE FEET_P2_BLACK_BOOTS tlLabel = "FEET_P2_0_0" iDraw = 0 iTex = 0 BREAK CASE FEET_P2_LEATHER_BOOTS_1 tlLabel = "FEET_P2_0_1" iDraw = 0 iTex = 1 cost = 22 BREAK CASE FEET_P2_LEATHER_BOOTS_2 tlLabel = "FEET_P2_0_2" iDraw = 0 iTex = 2 cost = 45 BREAK CASE FEET_P2_LEATHER_BOOTS_3 tlLabel = "FEET_P2_0_3" iDraw = 0 iTex = 3 cost = 65 BREAK CASE FEET_P2_LEATHER_BOOTS_4 tlLabel = "FEET_P2_0_4" iDraw = 0 iTex = 4 cost = 58 BREAK CASE FEET_P2_LEATHER_BOOTS_5 tlLabel = "FEET_P2_0_5" iDraw = 0 iTex = 5 cost = 72 BREAK CASE FEET_P2_LEATHER_BOOTS_6 tlLabel = "FEET_P2_0_6" iDraw = 0 iTex = 6 cost = 68 BREAK CASE FEET_P2_LEATHER_BOOTS_7 tlLabel = "FEET_P2_0_7" iDraw = 0 iTex = 7 cost = 60 BREAK CASE FEET_P2_DUMMY tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE FEET_P2_BALLISTICS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_TRIATHLON tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_DOCK_WORKER tlLabel = "FEET_P2_5_0" iDraw = 5 iTex = 0 BREAK CASE FEET_P2_ARM_GUARDS tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_SCUBA_LAND tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_DRESSY_SHOES tlLabel = "FEET_P2_8_0" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_LOAFERS tlLabel = "FEET_P2_9_0" iDraw = 9 iTex = 0 BREAK CASE FEET_P2_LOAFERS_1 tlLabel = "FEET_P2_9_1" iDraw = 9 iTex = 1 cost = 680 BREAK CASE FEET_P2_LOAFERS_2 tlLabel = "FEET_P2_9_2" iDraw = 9 iTex = 2 cost = 650 BREAK CASE FEET_P2_LOAFERS_3 tlLabel = "FEET_P2_9_3" iDraw = 9 iTex = 3 cost = 670 BREAK CASE FEET_P2_LOAFERS_4 tlLabel = "FEET_P2_9_4" iDraw = 9 iTex = 4 cost = 700 BREAK CASE FEET_P2_LOAFERS_5 tlLabel = "FEET_P2_9_5" iDraw = 9 iTex = 5 cost = 680 BREAK CASE FEET_P2_LOAFERS_6 tlLabel = "FEET_P2_9_6" iDraw = 9 iTex = 6 cost = 720 BREAK CASE FEET_P2_LOAFERS_7 tlLabel = "FEET_P2_9_7" iDraw = 9 iTex = 7 cost = 740 BREAK CASE FEET_P2_LOAFERS_8 tlLabel = "FEET_P2_9_8" iDraw = 9 iTex = 8 cost = 760 BREAK CASE FEET_P2_LOAFERS_9 tlLabel = "FEET_P2_9_9" iDraw = 9 iTex = 9 cost = 780 BREAK CASE FEET_P2_LOAFERS_10 tlLabel = "FEET_P2_9_10" iDraw = 9 iTex = 10 cost = 750 BREAK CASE FEET_P2_LOAFERS_11 tlLabel = "FEET_P2_9_11" iDraw = 9 iTex = 11 cost = 700 BREAK CASE FEET_P2_REDWINGS tlLabel = "FEET_P2_10_0" iDraw = 10 iTex = 0 BREAK CASE FEET_P2_TOILET tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_WINTER_BOOTS tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_LUDENDORFF tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_MOTO_X tlLabel = "NO_LABEL" iDraw = 14 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_SHOES_0 tlLabel = "NO_LABEL" iDraw = 15 iTex = 0 bOutfitOnly = TRUE BREAK CASE FEET_P2_DUMMY_2 tlLabel = "NO_LABEL" iDraw = 16 iTex = 0 BREAK CASE FEET_P2_BARE_FEET tlLabel = "NO_LABEL" iDraw = 17 iTex = 0 BREAK CASE FEET_P2_OXFORDS_0 tlLabel = "FEET_P2_18_0" iDraw = 18 iTex = 0 cost = 790 BREAK CASE FEET_P2_OXFORDS_1 tlLabel = "FEET_P2_18_1" iDraw = 18 iTex = 1 cost = 750 BREAK CASE FEET_P2_OXFORDS_2 tlLabel = "FEET_P2_18_2" iDraw = 18 iTex = 2 cost = 860 BREAK CASE FEET_P2_OXFORDS_3 tlLabel = "FEET_P2_18_3" iDraw = 18 iTex = 3 cost = 750 BREAK CASE FEET_P2_OXFORDS_4 tlLabel = "FEET_P2_18_4" iDraw = 18 iTex = 4 cost = 790 BREAK CASE FEET_P2_OXFORDS_5 tlLabel = "FEET_P2_18_5" iDraw = 18 iTex = 5 cost = 840 BREAK CASE FEET_P2_OXFORDS_6 tlLabel = "FEET_P2_18_6" iDraw = 18 iTex = 6 cost = 820 BREAK CASE FEET_P2_OXFORDS_7 tlLabel = "FEET_P2_18_7" iDraw = 18 iTex = 7 cost = 800 BREAK CASE FEET_P2_OXFORDS_8 tlLabel = "FEET_P2_18_8" iDraw = 18 iTex = 8 cost = 850 BREAK CASE FEET_P2_OXFORDS_9 tlLabel = "FEET_P2_18_9" iDraw = 18 iTex = 9 cost = 870 BREAK CASE FEET_P2_OXFORDS_10 tlLabel = "FEET_P2_18_10" iDraw = 18 iTex = 10 cost = 720 BREAK CASE FEET_P2_OXFORDS_11 tlLabel = "FEET_P2_18_11" iDraw = 18 iTex = 11 cost = 740 BREAK CASE FEET_P2_OXFORDS_12 tlLabel = "FEET_P2_18_12" iDraw = 18 iTex = 12 cost = 800 BREAK CASE FEET_P2_OXFORDS_13 tlLabel = "FEET_P2_18_13" iDraw = 18 iTex = 13 cost = 750 BREAK CASE FEET_P2_OXFORDS_14 tlLabel = "FEET_P2_18_14" iDraw = 18 iTex = 14 cost = 770 BREAK CASE FEET_P2_OXFORDS_15 tlLabel = "FEET_P2_18_15" iDraw = 18 iTex = 15 cost = 860 BREAK CASE FEET_P2_SQ_LOAFERS_0 tlLabel = "FEET_P2_19_0" iDraw = 19 iTex = 0 cost = 850 BREAK CASE FEET_P2_SQ_LOAFERS_1 tlLabel = "FEET_P2_19_1" iDraw = 19 iTex = 1 cost = 800 BREAK CASE FEET_P2_SQ_LOAFERS_2 tlLabel = "FEET_P2_19_2" iDraw = 19 iTex = 2 cost = 780 BREAK CASE FEET_P2_SQ_LOAFERS_3 tlLabel = "FEET_P2_19_3" iDraw = 19 iTex = 3 cost = 890 BREAK CASE FEET_P2_SQ_LOAFERS_4 tlLabel = "FEET_P2_19_4" iDraw = 19 iTex = 4 cost = 820 BREAK CASE FEET_P2_SQ_LOAFERS_5 tlLabel = "FEET_P2_19_5" iDraw = 19 iTex = 5 cost = 840 BREAK CASE FEET_P2_SQ_LOAFERS_6 tlLabel = "FEET_P2_19_6" iDraw = 19 iTex = 6 cost = 870 BREAK CASE FEET_P2_SQ_LOAFERS_7 tlLabel = "FEET_P2_19_7" iDraw = 19 iTex = 7 cost = 930 BREAK CASE FEET_P2_SQ_LOAFERS_8 tlLabel = "FEET_P2_19_8" iDraw = 19 iTex = 8 cost = 880 BREAK CASE FEET_P2_SQ_LOAFERS_9 tlLabel = "FEET_P2_19_9" iDraw = 19 iTex = 9 cost = 900 BREAK CASE FEET_P2_SQ_LOAFERS_10 tlLabel = "FEET_P2_19_10" iDraw = 19 iTex = 10 cost = 920 BREAK CASE FEET_P2_SQ_LOAFERS_11 tlLabel = "FEET_P2_19_11" iDraw = 19 iTex = 11 cost = 970 BREAK CASE FEET_P2_SQ_LOAFERS_12 tlLabel = "FEET_P2_19_12" iDraw = 19 iTex = 12 cost = 990 BREAK CASE FEET_P2_SQ_LOAFERS_13 tlLabel = "FEET_P2_19_13" iDraw = 19 iTex = 13 cost = 960 BREAK CASE FEET_P2_SQ_LOAFERS_14 tlLabel = "FEET_P2_19_14" iDraw = 19 iTex = 14 cost = 980 BREAK CASE FEET_P2_SQ_LOAFERS_15 tlLabel = "FEET_P2_19_15" iDraw = 19 iTex = 15 cost = 950 BREAK CASE FEET_P2_WINGTIPS_0 tlLabel = "FEET_P2_20_0" iDraw = 20 iTex = 0 cost = 110 BREAK CASE FEET_P2_WINGTIPS_1 tlLabel = "FEET_P2_20_1" iDraw = 20 iTex = 1 cost = 115 BREAK CASE FEET_P2_WINGTIPS_2 tlLabel = "FEET_P2_20_2" iDraw = 20 iTex = 2 cost = 120 BREAK CASE FEET_P2_WINGTIPS_3 tlLabel = "FEET_P2_20_3" iDraw = 20 iTex = 3 cost = 110 BREAK CASE FEET_P2_WINGTIPS_4 tlLabel = "FEET_P2_20_4" iDraw = 20 iTex = 4 cost = 125 BREAK CASE FEET_P2_WINGTIPS_5 tlLabel = "FEET_P2_20_5" iDraw = 20 iTex = 5 cost = 128 BREAK CASE FEET_P2_WINGTIPS_6 tlLabel = "FEET_P2_20_6" iDraw = 20 iTex = 6 cost = 135 BREAK CASE FEET_P2_WINGTIPS_7 tlLabel = "FEET_P2_20_7" iDraw = 20 iTex = 7 cost = 130 BREAK CASE FEET_P2_WINGTIPS_8 tlLabel = "FEET_P2_20_8" iDraw = 20 iTex = 8 cost = 145 BREAK CASE FEET_P2_WINGTIPS_9 tlLabel = "FEET_P2_20_9" iDraw = 20 iTex = 9 cost = 110 BREAK CASE FEET_P2_WINGTIPS_10 tlLabel = "FEET_P2_20_10" iDraw = 20 iTex = 10 cost = 120 BREAK CASE FEET_P2_WINGTIPS_11 tlLabel = "FEET_P2_20_11" iDraw = 20 iTex = 11 cost = 150 BREAK CASE FEET_P2_WINGTIPS_12 tlLabel = "FEET_P2_20_12" iDraw = 20 iTex = 12 cost = 125 BREAK CASE FEET_P2_WINGTIPS_13 tlLabel = "FEET_P2_20_13" iDraw = 20 iTex = 13 cost = 120 BREAK CASE FEET_P2_WINGTIPS_14 tlLabel = "FEET_P2_20_14" iDraw = 20 iTex = 14 cost = 130 BREAK CASE FEET_P2_WINGTIPS_15 tlLabel = "FEET_P2_20_15" iDraw = 20 iTex = 15 cost = 110 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_HAND(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAND g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE HAND_P2_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE HAND_P2_FROZEN tlLabel = "NO_LABEL" iDraw = 0 iTex = 1 bOutfitOnly = TRUE BREAK CASE HAND_P2_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P2_DOCK_WORKER tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P2_SCUBA tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P2_FINGERLESS_GLOVES tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE HAND_P2_MOTO_X tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, HAND_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_SPECIAL(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE SPECIAL_P2_WATCH tlLabel = "SPEC_P2_0_0" iDraw = 0 iTex = 0 BREAK CASE SPECIAL_P2_WATCH_1 tlLabel = "SPEC_P2_0_1" iDraw = 0 iTex = 1 BREAK CASE SPECIAL_P2_FIREMAN_ACCS tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_BALLISTICS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_PARACHUTE tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_DOCK_WORKER tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_SCUBA tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_BALACLAVA tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_SECURITY tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_CLOWN tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_STAR_TATTOOS tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_NCHEIFMASK tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_BOWTIE tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 BREAK CASE SPECIAL_P2_TOILET tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_MASK tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_DUMMY tlLabel = "NO_LABEL" iDraw = 14 iTex = 0 BREAK CASE SPECIAL_P2_FIREMAN_ACCS_1 tlLabel = "NO_LABEL" iDraw = 15 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL_P2_SCUBA_1 tlLabel = "NO_LABEL" iDraw = 16 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_SPECIAL2(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL2 g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE SPECIAL2_P2_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE SPECIAL2_P2_BAG tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE SPECIAL2_P2_BAG_1 tlLabel = "NO_LABEL" iDraw = 1 iTex = 1 BREAK CASE SPECIAL2_P2_BAG_2 tlLabel = "NO_LABEL" iDraw = 1 iTex = 2 BREAK CASE SPECIAL2_P2_BAG_3 tlLabel = "NO_LABEL" iDraw = 1 iTex = 3 BREAK CASE SPECIAL2_P2_COP_ACCS tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P2_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P2_DUMMY tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 BREAK CASE SPECIAL2_P2_MASK tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE BREAK CASE SPECIAL2_P2_WRESTLER_MASK_0 tlLabel = "SPEC2_P0_08_0" iDraw = 6 iTex = 0 cost = 125 BREAK CASE SPECIAL2_P2_WRESTLER_MASK_1 tlLabel = "SPEC2_P0_08_1" iDraw = 6 iTex = 1 cost = 150 BREAK CASE SPECIAL2_P2_WRESTLER_MASK_2 tlLabel = "SPEC2_P0_08_2" iDraw = 6 iTex = 2 cost = 175 BREAK CASE SPECIAL2_P2_WRESTLER_MASK_3 tlLabel = "SPEC2_P0_08_3" iDraw = 6 iTex = 3 cost = 85 BREAK CASE SPECIAL2_P2_WRESTLER_MASK_4 tlLabel = "SPEC2_P0_08_4" iDraw = 6 iTex = 4 cost = 150 BREAK CASE SPECIAL2_P2_WRESTLER_MASK_5 tlLabel = "SPEC2_P0_08_5" iDraw = 6 iTex = 5 cost = 175 BREAK CASE SPECIAL2_P2_MASK_MONSTER_GREEN tlLabel = "PROPS_P1_H8_0" iDraw = 7 iTex = 0 cost = 270 BREAK CASE SPECIAL2_P2_MASK_MONSTER_RED tlLabel = "PROPS_P1_H8_1" iDraw = 7 iTex = 1 cost = 270 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL2_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_DECL(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_DECL g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE DECL_P2_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE DECL_P2_FIREMAN tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 BREAK CASE DECL_P2_PARAMEDIC tlLabel = "NO_LABEL" iDraw = 2 iTex = 0 BREAK CASE DECL_P2_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 BREAK CASE DECL_P2_COP tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 BREAK CASE DECL_P2_AMMUNATION_0 tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 BREAK CASE DECL_P2_AMMUNATION_1 tlLabel = "NO_LABEL" iDraw = 5 iTex = 1 BREAK CASE DECL_P2_AMMUNATION_2 tlLabel = "NO_LABEL" iDraw = 5 iTex = 2 BREAK CASE DECL_P2_AMMUNATION_3 tlLabel = "NO_LABEL" iDraw = 5 iTex = 3 BREAK CASE DECL_P2_AMMUNATION_4 tlLabel = "NO_LABEL" iDraw = 5 iTex = 4 BREAK CASE DECL_P2_AMMUNATION_5 tlLabel = "NO_LABEL" iDraw = 5 iTex = 5 BREAK CASE DECL_P2_BOWLING_0 tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 BREAK CASE DECL_P2_BOWLING_1 tlLabel = "NO_LABEL" iDraw = 6 iTex = 1 BREAK CASE DECL_P2_BOWLING_2 tlLabel = "NO_LABEL" iDraw = 6 iTex = 2 BREAK CASE DECL_P2_BOWLING_3 tlLabel = "NO_LABEL" iDraw = 6 iTex = 3 BREAK CASE DECL_P2_BOWLING_4 tlLabel = "NO_LABEL" iDraw = 6 iTex = 4 BREAK CASE DECL_P2_BOWLING_5 tlLabel = "NO_LABEL" iDraw = 6 iTex = 5 BREAK CASE DECL_P2_BOWLING_6 tlLabel = "NO_LABEL" iDraw = 6 iTex = 6 BREAK CASE DECL_P2_BOWLING_7 tlLabel = "NO_LABEL" iDraw = 6 iTex = 7 BREAK CASE DECL_P2_BOWLING_8 tlLabel = "NO_LABEL" iDraw = 6 iTex = 8 BREAK CASE DECL_P2_BOWLING_9 tlLabel = "NO_LABEL" iDraw = 6 iTex = 9 BREAK CASE DECL_P2_LOGO_0 tlLabel = "NO_LABEL" iDraw = 7 iTex = 0 BREAK CASE DECL_P2_SPORTS_0 tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 BREAK CASE DECL_P2_SPORTS_1 tlLabel = "NO_LABEL" iDraw = 8 iTex = 1 BREAK CASE DECL_P2_SPORTS_2 tlLabel = "NO_LABEL" iDraw = 8 iTex = 2 BREAK CASE DECL_P2_SPORTS_3 tlLabel = "NO_LABEL" iDraw = 8 iTex = 3 BREAK CASE DECL_P2_SPORTS_4 tlLabel = "NO_LABEL" iDraw = 8 iTex = 4 BREAK CASE DECL_P2_SPORTS_5 tlLabel = "NO_LABEL" iDraw = 8 iTex = 5 BREAK CASE DECL_P2_SPORTS_6 tlLabel = "NO_LABEL" iDraw = 8 iTex = 6 BREAK CASE DECL_P2_MASK_0 tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 BREAK CASE DECL_P2_MASK_1 tlLabel = "NO_LABEL" iDraw = 9 iTex = 1 BREAK CASE DECL_P2_MASK_2 tlLabel = "NO_LABEL" iDraw = 9 iTex = 2 BREAK CASE DECL_P2_MASK_3 tlLabel = "NO_LABEL" iDraw = 9 iTex = 3 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, DECL_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item /// Prices for beard items go in GET_SP_HAIRDO_PRICE() PROC FILL_PED_COMP_DATA_TREVOR_BERD(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_BERD g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE BERD_P2_NONE tlLabel = "BERD_P2_0_0" iDraw = 0 iTex = 0 BREAK CASE BERD_P2_PROLOGUE tlLabel = "BERD_P2_1_0" iDraw = 1 iTex = 0 BREAK CASE BERD_P2_2_0 tlLabel = "BERD_P2_2_0" iDraw = 2 iTex = 0 BREAK CASE BERD_P2_3_0 tlLabel = "BERD_P2_3_0" iDraw = 3 iTex = 0 BREAK CASE BERD_P2_4_0 tlLabel = "BERD_P2_4_0" iDraw = 4 iTex = 0 BREAK CASE BERD_P2_5_0 tlLabel = "BERD_P2_5_0" iDraw = 5 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, BERD_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_TEETH(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TEETH g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE TEETH_P2_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, TEETH_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_JBIB(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_JBIB g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE JBIB_P2_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, JBIB_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_OUTFIT(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_OUTFIT g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem // Always set bOutfitOnly param to TRUE for the default outfit CASE OUTFIT_P2_DEFAULT tlLabel = "OUTFIT_P2_0" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE OUTFIT_P2_BALLISTICS tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_DOCK_WORKER tlLabel = "OUTFIT_P2_5" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_HIGHWAY_PATROL tlLabel = "OUTFIT_P2_6" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_GOLF tlLabel = "OUTFIT_P2_7" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TENNIS tlLabel = "OUTFIT_P2_8" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_SCUBA_WATER tlLabel = "OUTFIT_P2_9" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_SCUBA_LAND tlLabel = "OUTFIT_P2_10" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_STEALTH tlLabel = "OUTFIT_P2_12" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TRIATHLON tlLabel = "OUTFIT_P2_13" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_UNDERWEAR tlLabel = "OUTFIT_P2_14" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_SECURITY tlLabel = "OUTFIT_P2_15" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TOILET tlLabel = "OUTFIT_P2_16" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_PROLOGUE tlLabel = "OUTFIT_P2_17" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TUXEDO tlLabel = "OUTFIT_P2_18" iDraw = 0 iTex = 0 cost = 10000 BREAK CASE OUTFIT_P2_LADIES tlLabel = "OUTFIT_P2_19" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_BLUE_BOILER_SUIT tlLabel = "OUTFIT_P2_20" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_PREP_BOILER_SUIT_1 tlLabel = "OUTFIT_P2_21" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P2_PREP_BOILER_SUIT_2 tlLabel = "OUTFIT_P2_22" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P2_PREP_BOILER_SUIT_3 tlLabel = "OUTFIT_P2_23" iDraw = 0 iTex = 0 cost = 105 BREAK CASE OUTFIT_P2_HUNTING tlLabel = "OUTFIT_P2_24" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TSHIRT_CARGOPANTS_1 tlLabel = "OUTFIT_P2_25" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_DENIM tlLabel = "OUTFIT_P2_26" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_LUDENDORFF tlLabel = "OUTFIT_P2_27" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_CHEAPSUIT_0 tlLabel = "OUTFIT_P2_28" iDraw = 0 iTex = 0 cost = 119 BREAK CASE OUTFIT_P2_CHEAPSUIT_1 tlLabel = "OUTFIT_P2_29" iDraw = 0 iTex = 0 cost = 99 BREAK CASE OUTFIT_P2_CHEAPSUIT_2 tlLabel = "OUTFIT_P2_30" iDraw = 0 iTex = 0 cost = 129 BREAK CASE OUTFIT_P2_CHEAPSUIT_3 tlLabel = "OUTFIT_P2_44" iDraw = 0 iTex = 0 cost = 125 BREAK CASE OUTFIT_P2_CHEAPSUIT_4 tlLabel = "OUTFIT_P2_45" iDraw = 0 iTex = 0 cost = 120 BREAK CASE OUTFIT_P2_CHEAPSUIT_5 tlLabel = "OUTFIT_P2_46" iDraw = 0 iTex = 0 cost = 139 BREAK CASE OUTFIT_P2_CHEAPSUIT_6 tlLabel = "OUTFIT_P2_47" iDraw = 0 iTex = 0 cost = 149 BREAK CASE OUTFIT_P2_CHEAPSUIT_7 tlLabel = "OUTFIT_P2_48" iDraw = 0 iTex = 0 cost = 145 BREAK CASE OUTFIT_P2_CHEAPSUIT_8 tlLabel = "OUTFIT_P2_49" iDraw = 0 iTex = 0 cost = 140 BREAK CASE OUTFIT_P2_CHEAPSUIT_9 tlLabel = "OUTFIT_P2_50" iDraw = 0 iTex = 0 cost = 135 BREAK CASE OUTFIT_P2_STYLESUIT_0 tlLabel = "OUTFIT_P2_31" iDraw = 0 iTex = 0 cost = 4900 BREAK CASE OUTFIT_P2_STYLESUIT_1 tlLabel = "OUTFIT_P2_32" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P2_STYLESUIT_2 tlLabel = "OUTFIT_P2_33" iDraw = 0 iTex = 0 cost = 4500 BREAK CASE OUTFIT_P2_STYLESUIT_3 tlLabel = "OUTFIT_P2_34" iDraw = 0 iTex = 0 cost = 4900 BREAK CASE OUTFIT_P2_STYLESUIT_4 tlLabel = "OUTFIT_P2_35" iDraw = 0 iTex = 0 cost = 4500 BREAK CASE OUTFIT_P2_STYLESUIT_5 tlLabel = "OUTFIT_P2_36" iDraw = 0 iTex = 0 cost = 5900 BREAK CASE OUTFIT_P2_STYLESUIT_6 tlLabel = "OUTFIT_P2_37" iDraw = 0 iTex = 0 cost = 5500 BREAK CASE OUTFIT_P2_TSHIRT_CARGOPANTS_2 tlLabel = "OUTFIT_P2_38" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TSHIRT_JEANS_1 tlLabel = "OUTFIT_P2_39" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TSHIRT_CARGOPANTS_3 tlLabel = "OUTFIT_P2_40" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_MOTO_X tlLabel = "OUTFIT_P2_41" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TANKTOP_SWEATPANTS_1 tlLabel = "OUTFIT_P2_42" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_TSHIRT_JEANS_2 tlLabel = "OUTFIT_P2_43" iDraw = 0 iTex = 0 BREAK CASE OUTFIT_P2_STEALTH_NO_MASK tlLabel = "OUTFIT_P2_12" iDraw = 0 iTex = 0 BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, OUTFIT_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_PROPGROUP(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPGROUP g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem CASE PROPGROUP_NONE tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P2_COP tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P2_DOCK_WORKER tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P2_HIGHWAY_PATROL tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P2_SCUBA_WATER tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P2_SCUBA_LAND tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P2_SECURITY tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE PROPGROUP_P2_TRIATHLON tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P2_SUNGLASSES tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_P2_BALLISTICS tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, PROPGROUP_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR_PROPS(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPS g_sTempCompData[0].iPedID = ENUM_TO_INT(CHAR_TREVOR) SWITCH eItem // None CASE PROPS_HEAD_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_EYES_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES BREAK CASE PROPS_EARS_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_MOUTH_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_MOUTH BREAK CASE PROPS_LHAND_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_HAND BREAK CASE PROPS_RHAND_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_HAND BREAK CASE PROPS_LWRIST_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST BREAK CASE PROPS_RWRIST_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_WRIST BREAK CASE PROPS_HIP_NONE tlLabel = "NO_LABEL" iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HIP BREAK // Ears CASE PROPS_P2_HEADSET tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_EARS BREAK // Eyes CASE PROPS_P2_SCUBA_MASK tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES tlLabel = "PROPS_P2_E1" iDraw = 1 iTex = 0 cost = 45 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES tlLabel = "PROPS_P2_E2" iDraw = 2 iTex = 0 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_1 tlLabel = "PROPS_P2_E2_1" iDraw = 2 iTex = 1 cost = 50 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_2 tlLabel = "PROPS_P2_E2_2" iDraw = 2 iTex = 2 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_3 tlLabel = "PROPS_P2_E2_3" iDraw = 2 iTex = 3 cost = 52 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_4 tlLabel = "PROPS_P2_E2_4" iDraw = 2 iTex = 4 cost = 54 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_5 tlLabel = "PROPS_P2_E2_5" iDraw = 2 iTex = 5 cost = 54 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_6 tlLabel = "PROPS_P2_E2_6" iDraw = 2 iTex = 6 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_7 tlLabel = "PROPS_P2_E2_7" iDraw = 2 iTex = 7 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_8 tlLabel = "PROPS_P2_E2_8" iDraw = 2 iTex = 8 cost = 58 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_9 tlLabel = "PROPS_P2_E2_9" iDraw = 2 iTex = 9 cost = 58 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_0 tlLabel = "PROPS_P2_E3" iDraw = 3 iTex = 0 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_1 tlLabel = "PROPS_P2_E3_1" iDraw = 3 iTex = 1 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_2 tlLabel = "PROPS_P2_E3_2" iDraw = 3 iTex = 2 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_3 tlLabel = "PROPS_P2_E3_3" iDraw = 3 iTex = 3 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_4 tlLabel = "PROPS_P2_E3_4" iDraw = 3 iTex = 4 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_5 tlLabel = "PROPS_P2_E3_5" iDraw = 3 iTex = 5 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_6 tlLabel = "PROPS_P2_E3_6" iDraw = 3 iTex = 6 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_7 tlLabel = "PROPS_P2_E3_7" iDraw = 3 iTex = 7 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_8 tlLabel = "PROPS_P2_E3_8" iDraw = 3 iTex = 8 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_A_9 tlLabel = "PROPS_P2_E3_9" iDraw = 3 iTex = 9 cost = 75 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_WORK_MASK tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_BIKE_GOGGLES tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GOGGLES tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_0 tlLabel = "PROPS_P2_E7_0" iDraw = 7 iTex = 0 cost = 60 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_1 tlLabel = "PROPS_P2_E7_1" iDraw = 7 iTex = 1 cost = 50 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_2 tlLabel = "PROPS_P2_E7_2" iDraw = 7 iTex = 2 cost = 50 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_3 tlLabel = "PROPS_P2_E7_3" iDraw = 7 iTex = 3 cost = 59 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_4 tlLabel = "PROPS_P2_E7_4" iDraw = 7 iTex = 4 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_5 tlLabel = "PROPS_P2_E7_5" iDraw = 7 iTex = 5 cost = 55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_6 tlLabel = "PROPS_P2_E7_6" iDraw = 7 iTex = 6 cost = 65 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_7 tlLabel = "PROPS_P2_E7_7" iDraw = 7 iTex = 7 cost = 59 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_8 tlLabel = "PROPS_P2_E7_8" iDraw = 7 iTex = 8 cost = 79 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SHADES_B_9 tlLabel = "PROPS_P2_E7_9" iDraw = 7 iTex = 9 cost = 79 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_0 tlLabel = "PROPS_P2_E8_0" iDraw = 8 iTex = 0 cost = 150 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_1 tlLabel = "PROPS_P2_E8_1" iDraw = 8 iTex = 1 cost = 150 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_2 tlLabel = "PROPS_P2_E8_2" iDraw = 8 iTex = 2 cost = 170 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_3 tlLabel = "PROPS_P2_E8_3" iDraw = 8 iTex = 3 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_4 tlLabel = "PROPS_P2_E8_4" iDraw = 8 iTex = 4 cost = 180 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_5 tlLabel = "PROPS_P2_E8_5" iDraw = 8 iTex = 5 cost = 185 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_6 tlLabel = "PROPS_P2_E8_6" iDraw = 8 iTex = 6 cost = 189 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_7 tlLabel = "PROPS_P2_E8_7" iDraw = 8 iTex = 7 cost = 195 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_8 tlLabel = "PROPS_P2_E8_8" iDraw = 8 iTex = 8 cost = 210 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_B_9 tlLabel = "PROPS_P2_E8_9" iDraw = 8 iTex = 9 cost = 215 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_0 tlLabel = "PROPS_P2_E9_0" iDraw = 9 iTex = 0 cost = 165 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_1 tlLabel = "PROPS_P2_E9_1" iDraw = 9 iTex = 1 cost = 165 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_2 tlLabel = "PROPS_P2_E9_2" iDraw = 9 iTex = 2 cost = 169 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_3 tlLabel = "PROPS_P2_E9_3" iDraw = 9 iTex = 3 cost = 169 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_4 tlLabel = "PROPS_P2_E9_4" iDraw = 9 iTex = 4 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_5 tlLabel = "PROPS_P2_E9_5" iDraw = 9 iTex = 5 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_6 tlLabel = "PROPS_P2_E9_6" iDraw = 9 iTex = 6 cost = 175 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_7 tlLabel = "PROPS_P2_E9_7" iDraw = 9 iTex = 7 cost = 189 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_8 tlLabel = "PROPS_P2_E9_8" iDraw = 9 iTex = 8 cost = 195 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SUNGLASSES_C_9 tlLabel = "PROPS_P2_E9_9" iDraw = 9 iTex = 9 cost = 195 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_0 tlLabel = "PROPS_P2_E10_0" iDraw = 10 iTex = 0 cost = 49 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_1 tlLabel = "PROPS_P2_E10_1" iDraw = 10 iTex = 1 cost =50 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_2 tlLabel = "PROPS_P2_E10_2" iDraw = 10 iTex = 2 cost =52 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_3 tlLabel = "PROPS_P2_E10_3" iDraw = 10 iTex = 3 cost =55 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_4 tlLabel = "PROPS_P2_E10_4" iDraw = 10 iTex = 4 cost =60 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_5 tlLabel = "PROPS_P2_E10_5" iDraw = 10 iTex = 5 cost =58 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_6 tlLabel = "PROPS_P2_E10_6" iDraw = 10 iTex = 6 cost =60 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_7 tlLabel = "PROPS_P2_E10_7" iDraw = 10 iTex = 7 cost =63 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_8 tlLabel = "PROPS_P2_E10_8" iDraw = 10 iTex = 8 cost =65 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_SQUARE_GLASSES_9 tlLabel = "PROPS_P2_E10_9" iDraw = 10 iTex = 9 cost =68 ePropType = PROP_TYPE_GLASSES BREAK CASE PROPS_P2_GLASSES_RANGE_0 tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 cost = 100 ePropType = PROP_TYPE_GLASSES BREAK // Head CASE PROPS_P2_FIREMAN_HAT tlLabel = "NO_LABEL" iDraw = 0 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_COP_HAT tlLabel = "NO_LABEL" iDraw = 1 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_HOCKEY_MASK tlLabel = "PROPS_P2_H2_0" iDraw = 2 iTex = 0 cost = 320 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_EAR_DEFENDERS tlLabel = "NO_LABEL" iDraw = 3 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_HARD_HAT tlLabel = "NO_LABEL" iDraw = 4 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_COP_HELMET tlLabel = "NO_LABEL" iDraw = 5 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_SECURITY_HELMET tlLabel = "NO_LABEL" iDraw = 6 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_BEANIE_HAT tlLabel = "PROPS_P2_H7_0" iDraw = 7 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_BEANIE_HAT_1 tlLabel = "PROPS_P2_H7_1" iDraw = 7 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CLOWN_HAT tlLabel = "NO_LABEL" iDraw = 8 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET tlLabel = "NO_LABEL" iDraw = 9 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_1 tlLabel = "NO_LABEL" iDraw = 9 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_2 tlLabel = "NO_LABEL" iDraw = 9 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_3 tlLabel = "NO_LABEL" iDraw = 9 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_4 tlLabel = "NO_LABEL" iDraw = 9 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_5 tlLabel = "NO_LABEL" iDraw = 9 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_6 tlLabel = "NO_LABEL" iDraw = 9 iTex = 6 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_7 tlLabel = "NO_LABEL" iDraw = 9 iTex = 7 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_8 tlLabel = "NO_LABEL" iDraw = 9 iTex = 8 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_9 tlLabel = "NO_LABEL" iDraw = 9 iTex = 9 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_10 tlLabel = "NO_LABEL" iDraw = 9 iTex = 10 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_11 tlLabel = "NO_LABEL" iDraw = 9 iTex = 11 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_12 tlLabel = "NO_LABEL" iDraw = 9 iTex = 12 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_13 tlLabel = "NO_LABEL" iDraw = 9 iTex = 13 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_14 tlLabel = "NO_LABEL" iDraw = 9 iTex = 14 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CRASH_HELMET_15 tlLabel = "NO_LABEL" iDraw = 9 iTex = 15 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_HEADBAND tlLabel = "NO_LABEL" iDraw = 10 iTex = 0 bOutfitOnly = TRUE ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET tlLabel = "NO_LABEL" iDraw = 11 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_1 tlLabel = "NO_LABEL" iDraw = 11 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_2 tlLabel = "NO_LABEL" iDraw = 11 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_3 tlLabel = "NO_LABEL" iDraw = 11 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_4 tlLabel = "NO_LABEL" iDraw = 11 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_5 tlLabel = "NO_LABEL" iDraw = 11 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_6 tlLabel = "NO_LABEL" iDraw = 11 iTex = 6 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMY_HELMET_7 tlLabel = "NO_LABEL" iDraw = 11 iTex = 7 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_PILOT_HEADPHONES tlLabel = "NO_LABEL" iDraw = 12 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_HEADPHONES tlLabel = "NO_LABEL" iDraw = 13 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_MONSTER_GREEN tlLabel = "PROPS_P1_H8_0" iDraw = 14 iTex = 0 cost = 270 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_MONSTER_RED tlLabel = "PROPS_P1_H8_1" iDraw = 14 iTex = 1 cost = 270 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_PIG tlLabel = "PROPS_P1_H9_0" iDraw = 15 iTex = 0 cost = 200 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_PIG_DARK tlLabel = "PROPS_P1_H9_1" iDraw = 15 iTex = 1 cost = 200 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_SKULL_GREY tlLabel = "PROPS_P1_H10_0" iDraw = 16 iTex = 0 cost = 350 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_SKULL_YELLOW tlLabel = "PROPS_P1_H10_1" iDraw = 16 iTex = 1 cost = 350 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_MONKEY tlLabel = "PROPS_P1_H11_0" iDraw = 17 iTex = 0 cost = 450 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_HOCKEY_WHITE tlLabel = "PROPS_P1_H12_0" iDraw = 18 iTex = 0 cost = 500 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_HOCKEY_RED tlLabel = "PROPS_P1_H12_1" iDraw = 18 iTex = 1 cost = 500 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_APE tlLabel = "PROPS_P1_H13_0" iDraw = 19 iTex = 0 cost = 50 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_APE_DARK tlLabel = "PROPS_P1_H13_1" iDraw = 19 iTex = 1 cost = 50 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_TRIBAL_1 tlLabel = "PROPS_P1_H14_0" iDraw = 20 iTex = 0 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_TRIBAL_2 tlLabel = "PROPS_P1_H14_1" iDraw = 20 iTex = 1 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MASK_TRIBAL_3 tlLabel = "PROPS_P1_H14_2" iDraw = 20 iTex = 2 cost = 99 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_FLIGHT_CAP tlLabel = "NO_LABEL" iDraw = 21 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_SWIM_CAP tlLabel = "NO_LABEL" iDraw = 22 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MOTO_X_0 tlLabel = "NO_LABEL" iDraw = 23 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MOTO_X_1 tlLabel = "NO_LABEL" iDraw = 23 iTex = 1 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MOTO_X_2 tlLabel = "NO_LABEL" iDraw = 23 iTex = 2 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MOTO_X_3 tlLabel = "NO_LABEL" iDraw = 23 iTex = 3 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MOTO_X_4 tlLabel = "NO_LABEL" iDraw = 23 iTex = 4 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_MOTO_X_5 tlLabel = "NO_LABEL" iDraw = 23 iTex = 5 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_ARMOURED_HELMET tlLabel = "NO_LABEL" iDraw = 24 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_BLACK_HELMET tlLabel = "NO_LABEL" iDraw = 25 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_0 tlLabel = "PROPS_P1_H26_0" iDraw = 26 iTex = 0 cost = 20 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_1 tlLabel = "PROPS_P1_H26_1" iDraw = 26 iTex = 1 cost = 25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_2 tlLabel = "PROPS_P1_H26_2" iDraw = 26 iTex = 2 cost = 25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_3 tlLabel = "PROPS_P1_H26_3" iDraw = 26 iTex = 3 cost = 22 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_4 tlLabel = "PROPS_P1_H26_4" iDraw = 26 iTex = 4 cost = 20 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_5 tlLabel = "PROPS_P1_H26_5" iDraw = 26 iTex = 5 cost = 25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_6 tlLabel = "PROPS_P1_H26_6" iDraw = 26 iTex = 6 cost = 28 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_7 tlLabel = "PROPS_P1_H26_7" iDraw = 26 iTex = 7 cost = 24 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_8 tlLabel = "PROPS_P1_H26_8" iDraw = 26 iTex = 8 cost = 25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_9 tlLabel = "PROPS_P1_H26_9" iDraw = 26 iTex = 9 cost = 22 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_10 tlLabel = "PROPS_P1_H26_10" iDraw = 26 iTex = 10 cost = 18 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_11 tlLabel = "PROPS_P1_H26_11" iDraw = 26 iTex = 11 cost = 20 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_12 tlLabel = "PROPS_P1_H26_12" iDraw = 26 iTex = 12 cost = 24 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_13 tlLabel = "PROPS_P1_H26_13" iDraw = 26 iTex = 13 cost = 22 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_14 tlLabel = "PROPS_P1_H26_14" iDraw = 26 iTex = 14 cost = 25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_CAP_15 tlLabel = "PROPS_P1_H26_15" iDraw = 26 iTex = 15 cost = 25 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_P2_FIGHTER_JET_HELMET tlLabel = "NO_LABEL" iDraw = 27 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK DEFAULT // Bail so we can process DLC FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_P2_DLC) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_TREVOR(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) SWITCH eType CASE COMP_TYPE_HEAD FILL_PED_COMP_DATA_TREVOR_HEAD(eItem) BREAK CASE COMP_TYPE_HAIR FILL_PED_COMP_DATA_TREVOR_HAIR(eItem) BREAK CASE COMP_TYPE_TORSO FILL_PED_COMP_DATA_TREVOR_TORSO(eItem) BREAK CASE COMP_TYPE_LEGS FILL_PED_COMP_DATA_TREVOR_LEGS(eItem) BREAK CASE COMP_TYPE_FEET FILL_PED_COMP_DATA_TREVOR_FEET(eItem) BREAK CASE COMP_TYPE_HAND FILL_PED_COMP_DATA_TREVOR_HAND(eItem) BREAK CASE COMP_TYPE_SPECIAL FILL_PED_COMP_DATA_TREVOR_SPECIAL(eItem) BREAK CASE COMP_TYPE_SPECIAL2 FILL_PED_COMP_DATA_TREVOR_SPECIAL2(eItem) BREAK CASE COMP_TYPE_DECL FILL_PED_COMP_DATA_TREVOR_DECL(eItem) BREAK CASE COMP_TYPE_BERD FILL_PED_COMP_DATA_TREVOR_BERD(eItem) BREAK CASE COMP_TYPE_TEETH FILL_PED_COMP_DATA_TREVOR_TEETH(eItem) BREAK CASE COMP_TYPE_JBIB FILL_PED_COMP_DATA_TREVOR_JBIB(eItem) BREAK CASE COMP_TYPE_OUTFIT FILL_PED_COMP_DATA_TREVOR_OUTFIT(eItem) BREAK CASE COMP_TYPE_PROPGROUP FILL_PED_COMP_DATA_TREVOR_PROPGROUP(eItem) BREAK CASE COMP_TYPE_PROPS FILL_PED_COMP_DATA_TREVOR_PROPS(eItem) BREAK ENDSWITCH ENDPROC // ---------FREE MODE- MALE ------------------------------------------------------------- /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_HAIR(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAIR SWITCH eItem CASE HAIR_FMM_0_0 iDraw = 0 iTex = 0 cost = 500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[0])) BREAK CASE HAIR_FMM_1_0 iDraw = 1 iTex = 0 cost = 190 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[1])) BREAK CASE HAIR_FMM_1_1 iDraw = 1 iTex = 1 cost = 185 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[2])) BREAK CASE HAIR_FMM_1_2 iDraw = 1 iTex = 2 cost = 180 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[3])) BREAK CASE HAIR_FMM_1_3 iDraw = 1 iTex = 3 cost = 175 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[4])) BREAK CASE HAIR_FMM_1_4 iDraw = 1 iTex = 4 cost = 170 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[5])) BREAK CASE HAIR_FMM_1_5 iDraw = 1 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_2_0 iDraw = 2 iTex = 0 cost = 580 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[6])) BREAK CASE HAIR_FMM_2_1 iDraw = 2 iTex = 1 cost = 575 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[7])) BREAK CASE HAIR_FMM_2_2 iDraw = 2 iTex = 2 cost = 570 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[8])) BREAK CASE HAIR_FMM_2_3 iDraw = 2 iTex = 3 cost = 565 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[9])) BREAK CASE HAIR_FMM_2_4 iDraw = 2 iTex = 4 cost = 560 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[10])) BREAK CASE HAIR_FMM_2_5 iDraw = 2 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_3_0 iDraw = 3 iTex = 0 cost = 1100 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[11])) BREAK CASE HAIR_FMM_3_1 iDraw = 3 iTex = 1 cost = 1095 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[12])) BREAK CASE HAIR_FMM_3_2 iDraw = 3 iTex = 2 cost = 1090 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[13])) BREAK CASE HAIR_FMM_3_3 iDraw = 3 iTex = 3 cost = 1085 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[14])) BREAK CASE HAIR_FMM_3_4 iDraw = 3 iTex = 4 cost = 1080 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[15])) BREAK CASE HAIR_FMM_3_5 iDraw = 3 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_4_0 iDraw = 4 iTex = 0 cost = 520 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[16])) BREAK CASE HAIR_FMM_4_1 iDraw = 4 iTex = 1 cost = 515 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[17])) BREAK CASE HAIR_FMM_4_2 iDraw = 4 iTex = 2 cost = 510 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[18])) BREAK CASE HAIR_FMM_4_3 iDraw = 4 iTex = 3 cost = 505 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[19])) BREAK CASE HAIR_FMM_4_4 iDraw = 4 iTex = 4 cost = 500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[20])) BREAK CASE HAIR_FMM_4_5 iDraw = 4 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_4_6 iDraw = 4 iTex = 6 cost = 0 BREAK CASE HAIR_FMM_5_0 iDraw = 5 iTex = 0 cost = 295 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[21])) BREAK CASE HAIR_FMM_5_1 iDraw = 5 iTex = 1 cost = 290 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[22])) BREAK CASE HAIR_FMM_5_2 iDraw = 5 iTex = 2 cost = 285 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[23])) BREAK CASE HAIR_FMM_5_3 iDraw = 5 iTex = 3 cost = 280 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[24])) BREAK CASE HAIR_FMM_5_4 iDraw = 5 iTex = 4 cost = 275 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[25])) BREAK CASE HAIR_FMM_5_5 iDraw = 5 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_6_0 iDraw = 6 iTex = 0 cost = 950 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[26])) BREAK CASE HAIR_FMM_6_1 iDraw = 6 iTex = 1 cost = 945 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[27])) BREAK CASE HAIR_FMM_6_2 iDraw = 6 iTex = 2 cost = 940 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[28])) BREAK CASE HAIR_FMM_6_3 iDraw = 6 iTex = 3 cost = 935 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[29])) BREAK CASE HAIR_FMM_6_4 iDraw = 6 iTex = 4 cost = 930 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[30])) BREAK CASE HAIR_FMM_6_5 iDraw = 6 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_7_0 iDraw = 7 iTex = 0 cost = 440 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[31])) BREAK CASE HAIR_FMM_7_1 iDraw = 7 iTex = 1 cost = 435 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[32])) BREAK CASE HAIR_FMM_7_2 iDraw = 7 iTex = 2 cost = 430 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[33])) BREAK CASE HAIR_FMM_7_3 iDraw = 7 iTex = 3 cost = 425 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[34])) BREAK CASE HAIR_FMM_7_4 iDraw = 7 iTex = 4 cost = 420 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[35])) BREAK CASE HAIR_FMM_7_5 iDraw = 7 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_7_6 iDraw = 7 iTex = 6 cost = 0 BREAK CASE HAIR_FMM_8_0 iDraw = 8 iTex = 0 cost = 1150 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[36])) BREAK CASE HAIR_FMM_8_1 iDraw = 8 iTex = 1 cost = 1145 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[37])) BREAK CASE HAIR_FMM_8_2 iDraw = 8 iTex = 2 cost = 1140 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[38])) BREAK CASE HAIR_FMM_8_3 iDraw = 8 iTex = 3 cost = 1135 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[39])) BREAK CASE HAIR_FMM_8_4 iDraw = 8 iTex = 4 cost = 1130 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[40])) BREAK CASE HAIR_FMM_9_0 iDraw = 9 iTex = 0 cost = 395 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[41])) BREAK CASE HAIR_FMM_9_1 iDraw = 9 iTex = 1 cost = 390 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[42])) BREAK CASE HAIR_FMM_9_2 iDraw = 9 iTex = 2 cost = 385 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[43])) BREAK CASE HAIR_FMM_9_3 iDraw = 9 iTex = 3 cost = 380 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[44])) BREAK CASE HAIR_FMM_9_4 iDraw = 9 iTex = 4 cost = 375 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[45])) BREAK CASE HAIR_FMM_9_5 iDraw = 9 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_9_6 iDraw = 9 iTex = 6 cost = 0 BREAK CASE HAIR_FMM_10_0 iDraw = 10 iTex = 0 cost = 500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[46])) BREAK CASE HAIR_FMM_10_1 iDraw = 10 iTex = 1 cost = 495 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[47])) BREAK CASE HAIR_FMM_10_2 iDraw = 10 iTex = 2 cost = 490 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[48])) BREAK CASE HAIR_FMM_10_3 iDraw = 10 iTex = 3 cost = 485 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[49])) BREAK CASE HAIR_FMM_10_4 iDraw = 10 iTex = 4 cost = 480 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[50])) BREAK CASE HAIR_FMM_10_5 iDraw = 10 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_11_0 iDraw = 11 iTex = 0 cost = 1050 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[51])) BREAK CASE HAIR_FMM_11_1 iDraw = 11 iTex = 1 cost = 1045 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[52])) BREAK CASE HAIR_FMM_11_2 iDraw = 11 iTex = 2 cost = 1040 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[53])) BREAK CASE HAIR_FMM_11_3 iDraw = 11 iTex = 3 cost = 1035 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[54])) BREAK CASE HAIR_FMM_11_4 iDraw = 11 iTex = 4 cost = 1030 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[55])) BREAK CASE HAIR_FMM_11_5 iDraw = 11 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_12_0 iDraw = 12 iTex = 0 cost = 550 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[56])) BREAK CASE HAIR_FMM_12_1 iDraw = 12 iTex = 1 cost = 545 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[57])) BREAK CASE HAIR_FMM_12_2 iDraw = 12 iTex = 2 cost = 540 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[58])) BREAK CASE HAIR_FMM_12_3 iDraw = 12 iTex = 3 cost = 535 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[59])) BREAK CASE HAIR_FMM_12_4 iDraw = 12 iTex = 4 cost = 530 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[60])) BREAK CASE HAIR_FMM_13_0 iDraw = 13 iTex = 0 cost = 1200 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[61])) BREAK CASE HAIR_FMM_13_1 iDraw = 13 iTex = 1 cost = 1195 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[62])) BREAK CASE HAIR_FMM_13_2 iDraw = 13 iTex = 2 cost = 1190 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[63])) BREAK CASE HAIR_FMM_13_3 iDraw = 13 iTex = 3 cost = 1185 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[64])) BREAK CASE HAIR_FMM_13_4 iDraw = 13 iTex = 4 cost = 1180 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[65])) BREAK CASE HAIR_FMM_13_5 iDraw = 13 iTex = 5 cost = 0 BREAK CASE HAIR_FMM_14_0 iDraw = 14 iTex = 0 cost = 2000 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[66])) BREAK CASE HAIR_FMM_14_1 iDraw = 14 iTex = 1 cost = 1995 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[67])) BREAK CASE HAIR_FMM_14_2 iDraw = 14 iTex = 2 cost = 1990 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[68])) BREAK CASE HAIR_FMM_14_3 iDraw = 14 iTex = 3 cost = 1985 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[69])) BREAK CASE HAIR_FMM_14_4 iDraw = 14 iTex = 4 cost = 1980 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[70])) BREAK CASE HAIR_FMM_15_0 iDraw = 15 iTex = 0 cost = 475 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[71])) BREAK CASE HAIR_FMM_15_1 iDraw = 15 iTex = 1 cost = 470 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[72])) BREAK CASE HAIR_FMM_15_2 iDraw = 15 iTex = 2 cost = 465 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[73])) BREAK CASE HAIR_FMM_15_3 iDraw = 15 iTex = 3 cost = 460 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[74])) BREAK CASE HAIR_FMM_15_4 iDraw = 15 iTex = 4 cost = 455 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_male_expenditure_tunable[75])) BREAK CASE HAIR_FMM_15_5 iDraw = 15 iTex = 5 cost = 0 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, HAIR_FMM_DLC, iDLCHash) EXIT BREAK ENDSWITCH tlLabel = "H_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_TORSO(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO SWITCH eItem CASE TORSO_FMM_0_0 iDraw = 0 iTex = 0 BREAK CASE TORSO_FMM_1_0 iDraw = 1 iTex = 0 BREAK CASE TORSO_FMM_2_0 iDraw = 2 iTex = 0 BREAK CASE TORSO_FMM_3_0 iDraw = 3 iTex = 0 BREAK CASE TORSO_FMM_4_0 iDraw = 4 iTex = 0 BREAK CASE TORSO_FMM_5_0 iDraw = 5 iTex = 0 BREAK CASE TORSO_FMM_6_0 iDraw = 6 iTex = 0 BREAK CASE TORSO_FMM_7_0 iDraw = 7 iTex = 0 BREAK CASE TORSO_FMM_8_0 iDraw = 8 iTex = 0 BREAK CASE TORSO_FMM_9_0 iDraw = 9 iTex = 0 BREAK CASE TORSO_FMM_10_0 iDraw = 10 iTex = 0 BREAK CASE TORSO_FMM_11_0 iDraw = 11 iTex = 0 BREAK CASE TORSO_FMM_12_0 iDraw = 12 iTex = 0 BREAK CASE TORSO_FMM_13_0 iDraw = 13 iTex = 0 BREAK CASE TORSO_FMM_14_0 iDraw = 14 iTex = 0 BREAK CASE TORSO_FMM_15_0 iDraw = 15 iTex = 0 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, TORSO_FMM_DLC, iDLCHash) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_LEGS(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_LEGS SWITCH eItem CASE LEGS_FMM_0_0 iDraw = 0 iTex = 0 cost = 335 BREAK CASE LEGS_FMM_0_1 iDraw = 0 iTex = 1 cost = 460 BREAK CASE LEGS_FMM_0_2 iDraw = 0 iTex = 2 cost = 455 BREAK CASE LEGS_FMM_0_3 iDraw = 0 iTex = 3 cost = 470 BREAK CASE LEGS_FMM_0_4 iDraw = 0 iTex = 4 cost = 650 BREAK CASE LEGS_FMM_0_5 iDraw = 0 iTex = 5 cost = 385 BREAK CASE LEGS_FMM_0_6 iDraw = 0 iTex = 6 cost = 455 BREAK CASE LEGS_FMM_0_7 iDraw = 0 iTex = 7 cost = 2150 BREAK CASE LEGS_FMM_0_8 iDraw = 0 iTex = 8 cost = 375 BREAK CASE LEGS_FMM_0_9 iDraw = 0 iTex = 9 cost = 2190 BREAK CASE LEGS_FMM_0_10 iDraw = 0 iTex = 10 cost = 285 BREAK CASE LEGS_FMM_0_11 iDraw = 0 iTex = 11 cost = 295 BREAK CASE LEGS_FMM_0_12 iDraw = 0 iTex = 12 cost = 445 BREAK CASE LEGS_FMM_0_13 iDraw = 0 iTex = 13 cost = 2240 BREAK CASE LEGS_FMM_0_14 iDraw = 0 iTex = 14 cost = 465 BREAK CASE LEGS_FMM_0_15 iDraw = 0 iTex = 15 cost = 1740 BREAK CASE LEGS_FMM_1_0 iDraw = 1 iTex = 0 cost = 1415 BREAK CASE LEGS_FMM_1_1 iDraw = 1 iTex = 1 cost = 325 BREAK CASE LEGS_FMM_1_2 iDraw = 1 iTex = 2 cost = 345 BREAK CASE LEGS_FMM_1_3 iDraw = 1 iTex = 3 cost = 355 BREAK CASE LEGS_FMM_1_4 iDraw = 1 iTex = 4 cost = 395 BREAK CASE LEGS_FMM_1_5 iDraw = 1 iTex = 5 cost = 315 BREAK CASE LEGS_FMM_1_6 iDraw = 1 iTex = 6 cost = 275 BREAK CASE LEGS_FMM_1_7 iDraw = 1 iTex = 7 cost = 265 BREAK CASE LEGS_FMM_1_8 iDraw = 1 iTex = 8 cost = 305 BREAK CASE LEGS_FMM_1_9 iDraw = 1 iTex = 9 cost = 255 BREAK CASE LEGS_FMM_1_10 iDraw = 1 iTex = 10 cost = 235 BREAK CASE LEGS_FMM_1_11 iDraw = 1 iTex = 11 cost = 245 BREAK CASE LEGS_FMM_1_12 iDraw = 1 iTex = 12 cost = 215 BREAK CASE LEGS_FMM_1_13 iDraw = 1 iTex = 13 cost = 1865 BREAK CASE LEGS_FMM_1_14 iDraw = 1 iTex = 14 cost = 450 BREAK CASE LEGS_FMM_1_15 iDraw = 1 iTex = 15 cost = 415 BREAK CASE LEGS_FMM_2_0 iDraw = 2 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_1 iDraw = 2 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_2 iDraw = 2 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_3 iDraw = 2 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_4 iDraw = 2 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_5 iDraw = 2 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_6 iDraw = 2 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_7 iDraw = 2 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_8 iDraw = 2 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_9 iDraw = 2 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_10 iDraw = 2 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_11 iDraw = 2 iTex = 11 cost = 100 BREAK CASE LEGS_FMM_2_12 iDraw = 2 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_13 iDraw = 2 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_14 iDraw = 2 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_2_15 iDraw = 2 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_3_0 iDraw = 3 iTex = 0 cost = 55 BREAK CASE LEGS_FMM_3_1 iDraw = 3 iTex = 1 cost = 60 BREAK CASE LEGS_FMM_3_2 iDraw = 3 iTex = 2 cost = 100 BREAK CASE LEGS_FMM_3_3 iDraw = 3 iTex = 3 cost = 65 BREAK CASE LEGS_FMM_3_4 iDraw = 3 iTex = 4 cost = 65 BREAK CASE LEGS_FMM_3_5 iDraw = 3 iTex = 5 cost = 100 BREAK CASE LEGS_FMM_3_6 iDraw = 3 iTex = 6 cost = 100 BREAK CASE LEGS_FMM_3_7 iDraw = 3 iTex = 7 cost = 65 BREAK CASE LEGS_FMM_3_8 iDraw = 3 iTex = 8 cost = 90 BREAK CASE LEGS_FMM_3_9 iDraw = 3 iTex = 9 cost = 75 BREAK CASE LEGS_FMM_3_10 iDraw = 3 iTex = 10 cost = 65 BREAK CASE LEGS_FMM_3_11 iDraw = 3 iTex = 11 cost = 100 BREAK CASE LEGS_FMM_3_12 iDraw = 3 iTex = 12 cost = 100 BREAK CASE LEGS_FMM_3_13 iDraw = 3 iTex = 13 cost = 225 BREAK CASE LEGS_FMM_3_14 iDraw = 3 iTex = 14 cost = 205 BREAK CASE LEGS_FMM_3_15 iDraw = 3 iTex = 15 cost = 215 BREAK CASE LEGS_FMM_4_0 iDraw = 4 iTex = 0 cost = 490 BREAK CASE LEGS_FMM_4_1 iDraw = 4 iTex = 1 cost = 485 BREAK CASE LEGS_FMM_4_2 iDraw = 4 iTex = 2 cost = 2500 BREAK CASE LEGS_FMM_4_3 iDraw = 4 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_4 iDraw = 4 iTex = 4 cost = 485 BREAK CASE LEGS_FMM_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_6 iDraw = 4 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_7 iDraw = 4 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_8 iDraw = 4 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_9 iDraw = 4 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_10 iDraw = 4 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_11 iDraw = 4 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_12 iDraw = 4 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_13 iDraw = 4 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_14 iDraw = 4 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_4_15 iDraw = 4 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_5_0 iDraw = 5 iTex = 0 cost = 100 BREAK CASE LEGS_FMM_5_1 iDraw = 5 iTex = 1 cost = 105 BREAK CASE LEGS_FMM_5_2 iDraw = 5 iTex = 2 cost = 80 BREAK CASE LEGS_FMM_5_3 iDraw = 5 iTex = 3 cost = 90 BREAK CASE LEGS_FMM_5_4 iDraw = 5 iTex = 4 cost = 100 BREAK CASE LEGS_FMM_5_5 iDraw = 5 iTex = 5 cost = 95 BREAK CASE LEGS_FMM_5_6 iDraw = 5 iTex = 6 cost = 100 BREAK CASE LEGS_FMM_5_7 iDraw = 5 iTex = 7 cost = 90 BREAK CASE LEGS_FMM_5_8 iDraw = 5 iTex = 8 cost = 85 BREAK CASE LEGS_FMM_5_9 iDraw = 5 iTex = 9 cost = 80 BREAK CASE LEGS_FMM_5_10 iDraw = 5 iTex = 10 cost = 80 BREAK CASE LEGS_FMM_5_11 iDraw = 5 iTex = 11 cost = 100 BREAK CASE LEGS_FMM_5_12 iDraw = 5 iTex = 12 cost = 95 BREAK CASE LEGS_FMM_5_13 iDraw = 5 iTex = 13 cost = 440 BREAK CASE LEGS_FMM_5_14 iDraw = 5 iTex = 14 cost = 380 BREAK CASE LEGS_FMM_5_15 iDraw = 5 iTex = 15 cost = 80 BREAK CASE LEGS_FMM_6_0 iDraw = 6 iTex = 0 cost = 115 BREAK CASE LEGS_FMM_6_1 iDraw = 6 iTex = 1 cost = 140 BREAK CASE LEGS_FMM_6_2 iDraw = 6 iTex = 2 cost = 135 BREAK CASE LEGS_FMM_6_3 iDraw = 6 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_4 iDraw = 6 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_5 iDraw = 6 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_6 iDraw = 6 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_7 iDraw = 6 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_8 iDraw = 6 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_9 iDraw = 6 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_10 iDraw = 6 iTex = 10 cost = 255 BREAK CASE LEGS_FMM_6_11 iDraw = 6 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_12 iDraw = 6 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_13 iDraw = 6 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_14 iDraw = 6 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_6_15 iDraw = 6 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_7_0 iDraw = 7 iTex = 0 cost = 325 BREAK CASE LEGS_FMM_7_1 iDraw = 7 iTex = 1 cost = 115 BREAK CASE LEGS_FMM_7_2 iDraw = 7 iTex = 2 cost = 135 BREAK CASE LEGS_FMM_7_3 iDraw = 7 iTex = 3 cost = 125 BREAK CASE LEGS_FMM_7_4 iDraw = 7 iTex = 4 cost = 120 BREAK CASE LEGS_FMM_7_5 iDraw = 7 iTex = 5 cost = 130 BREAK CASE LEGS_FMM_7_6 iDraw = 7 iTex = 6 cost = 110 BREAK CASE LEGS_FMM_7_7 iDraw = 7 iTex = 7 cost = 345 BREAK CASE LEGS_FMM_7_8 iDraw = 7 iTex = 8 cost = 745 BREAK CASE LEGS_FMM_7_9 iDraw = 7 iTex = 9 cost = 120 BREAK CASE LEGS_FMM_7_10 iDraw = 7 iTex = 10 cost = 135 BREAK CASE LEGS_FMM_7_11 iDraw = 7 iTex = 11 cost = 345 BREAK CASE LEGS_FMM_7_12 iDraw = 7 iTex = 12 cost = 130 BREAK CASE LEGS_FMM_7_13 iDraw = 7 iTex = 13 cost = 140 BREAK CASE LEGS_FMM_7_14 iDraw = 7 iTex = 14 cost = 130 BREAK CASE LEGS_FMM_7_15 iDraw = 7 iTex = 15 cost = 660 BREAK CASE LEGS_FMM_8_0 iDraw = 8 iTex = 0 cost = 150 BREAK CASE LEGS_FMM_8_1 iDraw = 8 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_2 iDraw = 8 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_3 iDraw = 8 iTex = 3 cost = 150 BREAK CASE LEGS_FMM_8_4 iDraw = 8 iTex = 4 cost = 150 BREAK CASE LEGS_FMM_8_5 iDraw = 8 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_6 iDraw = 8 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_7 iDraw = 8 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_8 iDraw = 8 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_9 iDraw = 8 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_10 iDraw = 8 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_11 iDraw = 8 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_12 iDraw = 8 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_13 iDraw = 8 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_8_14 iDraw = 8 iTex = 14 cost = 150 BREAK CASE LEGS_FMM_8_15 iDraw = 8 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_9_0 iDraw = 9 iTex = 0 cost = 75 BREAK CASE LEGS_FMM_9_1 iDraw = 9 iTex = 1 cost = 90 BREAK CASE LEGS_FMM_9_2 iDraw = 9 iTex = 2 cost = 145 BREAK CASE LEGS_FMM_9_3 iDraw = 9 iTex = 3 cost = 150 BREAK CASE LEGS_FMM_9_4 iDraw = 9 iTex = 4 cost = 110 BREAK CASE LEGS_FMM_9_5 iDraw = 9 iTex = 5 cost = 95 BREAK CASE LEGS_FMM_9_6 iDraw = 9 iTex = 6 cost = 155 BREAK CASE LEGS_FMM_9_7 iDraw = 9 iTex = 7 cost = 255 BREAK CASE LEGS_FMM_9_8 iDraw = 9 iTex = 8 cost = 165 BREAK CASE LEGS_FMM_9_9 iDraw = 9 iTex = 9 cost = 1150 BREAK CASE LEGS_FMM_9_10 iDraw = 9 iTex = 10 cost = 1150 BREAK CASE LEGS_FMM_9_11 iDraw = 9 iTex = 11 cost = 1210 BREAK CASE LEGS_FMM_9_12 iDraw = 9 iTex = 12 cost = 1125 BREAK CASE LEGS_FMM_9_13 iDraw = 9 iTex = 13 cost = 1135 BREAK CASE LEGS_FMM_9_14 iDraw = 9 iTex = 14 cost = 1145 BREAK CASE LEGS_FMM_9_15 iDraw = 9 iTex = 15 cost = 1145 BREAK CASE LEGS_FMM_10_0 iDraw = 10 iTex = 0 cost = 845 BREAK CASE LEGS_FMM_10_1 iDraw = 10 iTex = 1 cost = 480 BREAK CASE LEGS_FMM_10_2 iDraw = 10 iTex = 2 cost = 475 BREAK CASE LEGS_FMM_10_3 iDraw = 10 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_7 iDraw = 10 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_10 iDraw = 10 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_11 iDraw = 10 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_12 iDraw = 10 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_13 iDraw = 10 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_14 iDraw = 10 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_10_15 iDraw = 10 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_11_0 iDraw = 11 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_1 iDraw = 11 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_2 iDraw = 11 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_3 iDraw = 11 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_4 iDraw = 11 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_5 iDraw = 11 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_6 iDraw = 11 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_7 iDraw = 11 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_8 iDraw = 11 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_9 iDraw = 11 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_10 iDraw = 11 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_11 iDraw = 11 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_12 iDraw = 11 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_13 iDraw = 11 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_14 iDraw = 11 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_11_15 iDraw = 11 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_0 iDraw = 12 iTex = 0 cost = 220 BREAK CASE LEGS_FMM_12_1 iDraw = 12 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_2 iDraw = 12 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_3 iDraw = 12 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_4 iDraw = 12 iTex = 4 cost = 100 BREAK CASE LEGS_FMM_12_5 iDraw = 12 iTex = 5 cost = 65 BREAK CASE LEGS_FMM_12_6 iDraw = 12 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_7 iDraw = 12 iTex = 7 cost = 50 BREAK CASE LEGS_FMM_12_8 iDraw = 12 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_9 iDraw = 12 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_10 iDraw = 12 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_11 iDraw = 12 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_12 iDraw = 12 iTex = 12 cost = 100 BREAK CASE LEGS_FMM_12_13 iDraw = 12 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_14 iDraw = 12 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_12_15 iDraw = 12 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_13_0 iDraw = 13 iTex = 0 cost = 460 BREAK CASE LEGS_FMM_13_1 iDraw = 13 iTex = 1 cost = 475 BREAK CASE LEGS_FMM_13_2 iDraw = 13 iTex = 2 cost = 470 BREAK CASE LEGS_FMM_13_3 iDraw = 13 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_4 iDraw = 13 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_5 iDraw = 13 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_6 iDraw = 13 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_7 iDraw = 13 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_8 iDraw = 13 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_9 iDraw = 13 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_10 iDraw = 13 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_11 iDraw = 13 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_12 iDraw = 13 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_13 iDraw = 13 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_14 iDraw = 13 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_13_15 iDraw = 13 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_0 iDraw = 14 iTex = 0 cost = 50 BREAK CASE LEGS_FMM_14_1 iDraw = 14 iTex = 1 cost = 100 BREAK CASE LEGS_FMM_14_2 iDraw = 14 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_3 iDraw = 14 iTex = 3 cost = 100 BREAK CASE LEGS_FMM_14_4 iDraw = 14 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_5 iDraw = 14 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_6 iDraw = 14 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_7 iDraw = 14 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_8 iDraw = 14 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_9 iDraw = 14 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_10 iDraw = 14 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_11 iDraw = 14 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_12 iDraw = 14 iTex = 12 cost = 100 BREAK CASE LEGS_FMM_14_13 iDraw = 14 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_14 iDraw = 14 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE LEGS_FMM_14_15 iDraw = 14 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMM_15_0 iDraw = 15 iTex = 0 cost = 90 BREAK CASE LEGS_FMM_15_1 iDraw = 15 iTex = 1 cost = 105 BREAK CASE LEGS_FMM_15_2 iDraw = 15 iTex = 2 cost = 100 BREAK CASE LEGS_FMM_15_3 iDraw = 15 iTex = 3 cost = 240 BREAK CASE LEGS_FMM_15_4 iDraw = 15 iTex = 4 cost = 95 BREAK CASE LEGS_FMM_15_5 iDraw = 15 iTex = 5 cost = 95 BREAK CASE LEGS_FMM_15_6 iDraw = 15 iTex = 6 cost = 100 BREAK CASE LEGS_FMM_15_7 iDraw = 15 iTex = 7 cost = 105 BREAK CASE LEGS_FMM_15_8 iDraw = 15 iTex = 8 cost = 100 BREAK CASE LEGS_FMM_15_9 iDraw = 15 iTex = 9 cost = 295 BREAK CASE LEGS_FMM_15_10 iDraw = 15 iTex = 10 cost = 250 BREAK CASE LEGS_FMM_15_11 iDraw = 15 iTex = 11 cost = 285 BREAK CASE LEGS_FMM_15_12 iDraw = 15 iTex = 12 cost = 275 BREAK CASE LEGS_FMM_15_13 iDraw = 15 iTex = 13 cost = 105 BREAK CASE LEGS_FMM_15_14 iDraw = 15 iTex = 14 cost = 100 BREAK CASE LEGS_FMM_15_15 iDraw = 15 iTex = 15 cost = 95 BREAK ENDSWITCH tlLabel = "L_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleLowersDiscount[i] * g_sMPTunableGroups.fmale_lowers_group_modifier)) ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_FMM_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= LEGS_FMM_DLC g_sTempCompData[0].iPedID = 3 // FMM0 FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_FMM_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_lowers_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_FEET(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_FEET SWITCH eItem CASE FEET_FMM_0_0 iDraw = 0 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_1 iDraw = 0 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_2 iDraw = 0 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_3 iDraw = 0 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_4 iDraw = 0 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_5 iDraw = 0 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_6 iDraw = 0 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_7 iDraw = 0 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_8 iDraw = 0 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_9 iDraw = 0 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_10 iDraw = 0 iTex = 10 cost = 300 BREAK CASE FEET_FMM_0_11 iDraw = 0 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_12 iDraw = 0 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_13 iDraw = 0 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_14 iDraw = 0 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_0_15 iDraw = 0 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_1_0 iDraw = 1 iTex = 0 cost = 285 BREAK CASE FEET_FMM_1_1 iDraw = 1 iTex = 1 cost = 180 BREAK CASE FEET_FMM_1_2 iDraw = 1 iTex = 2 cost = 190 BREAK CASE FEET_FMM_1_3 iDraw = 1 iTex = 3 cost = 190 BREAK CASE FEET_FMM_1_4 iDraw = 1 iTex = 4 cost = 165 BREAK CASE FEET_FMM_1_5 iDraw = 1 iTex = 5 cost = 200 BREAK CASE FEET_FMM_1_6 iDraw = 1 iTex = 6 cost = 480 BREAK CASE FEET_FMM_1_7 iDraw = 1 iTex = 7 cost = 155 BREAK CASE FEET_FMM_1_8 iDraw = 1 iTex = 8 cost = 350 BREAK CASE FEET_FMM_1_9 iDraw = 1 iTex = 9 cost = 290 BREAK CASE FEET_FMM_1_10 iDraw = 1 iTex = 10 cost = 165 BREAK CASE FEET_FMM_1_11 iDraw = 1 iTex = 11 cost = 165 BREAK CASE FEET_FMM_1_12 iDraw = 1 iTex = 12 cost = 170 BREAK CASE FEET_FMM_1_13 iDraw = 1 iTex = 13 cost = 155 BREAK CASE FEET_FMM_1_14 iDraw = 1 iTex = 14 cost = 165 BREAK CASE FEET_FMM_1_15 iDraw = 1 iTex = 15 cost = 165 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMM_2_0 iDraw = 2 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_1 iDraw = 2 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_2 iDraw = 2 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_3 iDraw = 2 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_4 iDraw = 2 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_5 iDraw = 2 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_6 iDraw = 2 iTex = 6 cost = 160 BREAK CASE FEET_FMM_2_7 iDraw = 2 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_8 iDraw = 2 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_9 iDraw = 2 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_10 iDraw = 2 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_11 iDraw = 2 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_12 iDraw = 2 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_13 iDraw = 2 iTex = 13 cost = 205 BREAK CASE FEET_FMM_2_14 iDraw = 2 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_2_15 iDraw = 2 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_3_0 iDraw = 3 iTex = 0 cost = 560 BREAK CASE FEET_FMM_3_1 iDraw = 3 iTex = 1 cost = 275 BREAK CASE FEET_FMM_3_2 iDraw = 3 iTex = 2 cost = 290 BREAK CASE FEET_FMM_3_3 iDraw = 3 iTex = 3 cost = 300 BREAK CASE FEET_FMM_3_4 iDraw = 3 iTex = 4 cost = 360 BREAK CASE FEET_FMM_3_5 iDraw = 3 iTex = 5 cost = 270 BREAK CASE FEET_FMM_3_6 iDraw = 3 iTex = 6 cost = 265 BREAK CASE FEET_FMM_3_7 iDraw = 3 iTex = 7 cost = 295 BREAK CASE FEET_FMM_3_8 iDraw = 3 iTex = 8 cost = 355 BREAK CASE FEET_FMM_3_9 iDraw = 3 iTex = 9 cost = 340 BREAK CASE FEET_FMM_3_10 iDraw = 3 iTex = 10 cost = 285 BREAK CASE FEET_FMM_3_11 iDraw = 3 iTex = 11 cost = 310 BREAK CASE FEET_FMM_3_12 iDraw = 3 iTex = 12 cost = 350 BREAK CASE FEET_FMM_3_13 iDraw = 3 iTex = 13 cost = 305 BREAK CASE FEET_FMM_3_14 iDraw = 3 iTex = 14 cost = 280 BREAK CASE FEET_FMM_3_15 iDraw = 3 iTex = 15 cost = 320 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMM_4_0 iDraw = 4 iTex = 0 cost = 115 BREAK CASE FEET_FMM_4_1 iDraw = 4 iTex = 1 cost = 115 BREAK CASE FEET_FMM_4_2 iDraw = 4 iTex = 2 cost = 110 BREAK CASE FEET_FMM_4_3 iDraw = 4 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_4 iDraw = 4 iTex = 4 cost = 125 BREAK CASE FEET_FMM_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_6 iDraw = 4 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_7 iDraw = 4 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_8 iDraw = 4 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_9 iDraw = 4 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_10 iDraw = 4 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_11 iDraw = 4 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_12 iDraw = 4 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_13 iDraw = 4 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_14 iDraw = 4 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_4_15 iDraw = 4 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_0 iDraw = 5 iTex = 0 cost = 50 BREAK CASE FEET_FMM_5_1 iDraw = 5 iTex = 1 cost = 35 BREAK CASE FEET_FMM_5_2 iDraw = 5 iTex = 2 cost = 50 BREAK CASE FEET_FMM_5_3 iDraw = 5 iTex = 3 cost = 50 BREAK CASE FEET_FMM_5_4 iDraw = 5 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_5 iDraw = 5 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_6 iDraw = 5 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_7 iDraw = 5 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_8 iDraw = 5 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_9 iDraw = 5 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_10 iDraw = 5 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_11 iDraw = 5 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_12 iDraw = 5 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_13 iDraw = 5 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_14 iDraw = 5 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_5_15 iDraw = 5 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE FEET_FMM_6_0 iDraw = 6 iTex = 0 cost = 65 BREAK CASE FEET_FMM_6_1 iDraw = 6 iTex = 1 cost = 65 BREAK CASE FEET_FMM_6_2 iDraw = 6 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_3 iDraw = 6 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_4 iDraw = 6 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_5 iDraw = 6 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_6 iDraw = 6 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_7 iDraw = 6 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_8 iDraw = 6 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_9 iDraw = 6 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_10 iDraw = 6 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_11 iDraw = 6 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_12 iDraw = 6 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_13 iDraw = 6 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_14 iDraw = 6 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_6_15 iDraw = 6 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_7_0 iDraw = 7 iTex = 0 cost = 165 BREAK CASE FEET_FMM_7_1 iDraw = 7 iTex = 1 cost = 165 BREAK CASE FEET_FMM_7_2 iDraw = 7 iTex = 2 cost = 185 BREAK CASE FEET_FMM_7_3 iDraw = 7 iTex = 3 cost = 175 BREAK CASE FEET_FMM_7_4 iDraw = 7 iTex = 4 cost = 185 BREAK CASE FEET_FMM_7_5 iDraw = 7 iTex = 5 cost = 460 BREAK CASE FEET_FMM_7_6 iDraw = 7 iTex = 6 cost = 185 BREAK CASE FEET_FMM_7_7 iDraw = 7 iTex = 7 cost = 190 BREAK CASE FEET_FMM_7_8 iDraw = 7 iTex = 8 cost = 165 BREAK CASE FEET_FMM_7_9 iDraw = 7 iTex = 9 cost = 165 BREAK CASE FEET_FMM_7_10 iDraw = 7 iTex = 10 cost = 185 BREAK CASE FEET_FMM_7_11 iDraw = 7 iTex = 11 cost = 175 BREAK CASE FEET_FMM_7_12 iDraw = 7 iTex = 12 cost = 235 BREAK CASE FEET_FMM_7_13 iDraw = 7 iTex = 13 cost = 445 BREAK CASE FEET_FMM_7_14 iDraw = 7 iTex = 14 cost = 185 BREAK CASE FEET_FMM_7_15 iDraw = 7 iTex = 15 cost = 190 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMM_8_0 iDraw = 8 iTex = 0 cost = 175 BREAK CASE FEET_FMM_8_1 iDraw = 8 iTex = 1 cost = 215 BREAK CASE FEET_FMM_8_2 iDraw = 8 iTex = 2 cost = 225 BREAK CASE FEET_FMM_8_3 iDraw = 8 iTex = 3 cost = 230 BREAK CASE FEET_FMM_8_4 iDraw = 8 iTex = 4 cost = 235 BREAK CASE FEET_FMM_8_5 iDraw = 8 iTex = 5 cost = 215 BREAK CASE FEET_FMM_8_6 iDraw = 8 iTex = 6 cost = 205 BREAK CASE FEET_FMM_8_7 iDraw = 8 iTex = 7 cost = 245 BREAK CASE FEET_FMM_8_8 iDraw = 8 iTex = 8 cost = 225 BREAK CASE FEET_FMM_8_9 iDraw = 8 iTex = 9 cost = 215 BREAK CASE FEET_FMM_8_10 iDraw = 8 iTex = 10 cost = 225 BREAK CASE FEET_FMM_8_11 iDraw = 8 iTex = 11 cost = 230 BREAK CASE FEET_FMM_8_12 iDraw = 8 iTex = 12 cost = 235 BREAK CASE FEET_FMM_8_13 iDraw = 8 iTex = 13 cost = 215 BREAK CASE FEET_FMM_8_14 iDraw = 8 iTex = 14 cost = 425 BREAK CASE FEET_FMM_8_15 iDraw = 8 iTex = 15 cost = 245 BREAK CASE FEET_FMM_9_0 iDraw = 9 iTex = 0 cost = 225 BREAK CASE FEET_FMM_9_1 iDraw = 9 iTex = 1 cost = 135 BREAK CASE FEET_FMM_9_2 iDraw = 9 iTex = 2 cost = 130 BREAK CASE FEET_FMM_9_3 iDraw = 9 iTex = 3 cost = 110 BREAK CASE FEET_FMM_9_4 iDraw = 9 iTex = 4 cost = 140 BREAK CASE FEET_FMM_9_5 iDraw = 9 iTex = 5 cost = 95 BREAK CASE FEET_FMM_9_6 iDraw = 9 iTex = 6 cost = 100 BREAK CASE FEET_FMM_9_7 iDraw = 9 iTex = 7 cost = 110 BREAK CASE FEET_FMM_9_8 iDraw = 9 iTex = 8 cost = 95 BREAK CASE FEET_FMM_9_9 iDraw = 9 iTex = 9 cost = 105 BREAK CASE FEET_FMM_9_10 iDraw = 9 iTex = 10 cost = 105 BREAK CASE FEET_FMM_9_11 iDraw = 9 iTex = 11 cost = 115 BREAK CASE FEET_FMM_9_12 iDraw = 9 iTex = 12 cost = 115 BREAK CASE FEET_FMM_9_13 iDraw = 9 iTex = 13 cost = 115 BREAK CASE FEET_FMM_9_14 iDraw = 9 iTex = 14 cost = 500 BREAK CASE FEET_FMM_9_15 iDraw = 9 iTex = 15 cost = 440 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMM_10_0 iDraw = 10 iTex = 0 cost = 1090 BREAK CASE FEET_FMM_10_1 iDraw = 10 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_2 iDraw = 10 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_3 iDraw = 10 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_7 iDraw = 10 iTex = 7 cost = 600 BREAK CASE FEET_FMM_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_10 iDraw = 10 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_11 iDraw = 10 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_12 iDraw = 10 iTex = 12 cost = 1865 BREAK CASE FEET_FMM_10_13 iDraw = 10 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_10_14 iDraw = 10 iTex = 14 cost = 490 BREAK CASE FEET_FMM_10_15 iDraw = 10 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_0 iDraw = 11 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_1 iDraw = 11 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_2 iDraw = 11 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_3 iDraw = 11 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_4 iDraw = 11 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_5 iDraw = 11 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_6 iDraw = 11 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_7 iDraw = 11 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_8 iDraw = 11 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_9 iDraw = 11 iTex = 9 cost = 470 BREAK CASE FEET_FMM_11_10 iDraw = 11 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_11 iDraw = 11 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_12 iDraw = 11 iTex = 12 cost = 1795 BREAK CASE FEET_FMM_11_13 iDraw = 11 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_11_14 iDraw = 11 iTex = 14 cost = 1830 BREAK CASE FEET_FMM_11_15 iDraw = 11 iTex = 15 cost = 455 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMM_12_0 iDraw = 12 iTex = 0 cost = 455 BREAK CASE FEET_FMM_12_1 iDraw = 12 iTex = 1 cost = 2110 BREAK CASE FEET_FMM_12_2 iDraw = 12 iTex = 2 cost = 380 BREAK CASE FEET_FMM_12_3 iDraw = 12 iTex = 3 cost = 1655 BREAK CASE FEET_FMM_12_4 iDraw = 12 iTex = 4 cost = 2500 BREAK CASE FEET_FMM_12_5 iDraw = 12 iTex = 5 cost = 415 BREAK CASE FEET_FMM_12_6 iDraw = 12 iTex = 6 cost = 730 BREAK CASE FEET_FMM_12_7 iDraw = 12 iTex = 7 cost = 445 BREAK CASE FEET_FMM_12_8 iDraw = 12 iTex = 8 cost = 425 BREAK CASE FEET_FMM_12_9 iDraw = 12 iTex = 9 cost = 410 BREAK CASE FEET_FMM_12_10 iDraw = 12 iTex = 10 cost = 480 BREAK CASE FEET_FMM_12_11 iDraw = 12 iTex = 11 cost = 485 BREAK CASE FEET_FMM_12_12 iDraw = 12 iTex = 12 cost = 480 BREAK CASE FEET_FMM_12_13 iDraw = 12 iTex = 13 cost = 395 BREAK CASE FEET_FMM_12_14 iDraw = 12 iTex = 14 cost = 495 BREAK CASE FEET_FMM_12_15 iDraw = 12 iTex = 15 cost = 2090 BREAK CASE FEET_FMM_13_0 iDraw = 13 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_1 iDraw = 13 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_2 iDraw = 13 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_3 iDraw = 13 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_4 iDraw = 13 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_5 iDraw = 13 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_6 iDraw = 13 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_7 iDraw = 13 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_8 iDraw = 13 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_9 iDraw = 13 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_10 iDraw = 13 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_11 iDraw = 13 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_12 iDraw = 13 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_13 iDraw = 13 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_14 iDraw = 13 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE FEET_FMM_13_15 iDraw = 13 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE FEET_FMM_14_0 iDraw = 14 iTex = 0 cost = 450 BREAK CASE FEET_FMM_14_1 iDraw = 14 iTex = 1 cost = 685 BREAK CASE FEET_FMM_14_2 iDraw = 14 iTex = 2 cost = 420 BREAK CASE FEET_FMM_14_3 iDraw = 14 iTex = 3 cost = 365 BREAK CASE FEET_FMM_14_4 iDraw = 14 iTex = 4 cost = 465 BREAK CASE FEET_FMM_14_5 iDraw = 14 iTex = 5 cost = 405 BREAK CASE FEET_FMM_14_6 iDraw = 14 iTex = 6 cost = 400 BREAK CASE FEET_FMM_14_7 iDraw = 14 iTex = 7 cost = 440 BREAK CASE FEET_FMM_14_8 iDraw = 14 iTex = 8 cost = 385 BREAK CASE FEET_FMM_14_9 iDraw = 14 iTex = 9 cost = 435 BREAK CASE FEET_FMM_14_10 iDraw = 14 iTex = 10 cost = 375 BREAK CASE FEET_FMM_14_11 iDraw = 14 iTex = 11 cost = 390 BREAK CASE FEET_FMM_14_12 iDraw = 14 iTex = 12 cost = 475 BREAK CASE FEET_FMM_14_13 iDraw = 14 iTex = 13 cost = 430 BREAK CASE FEET_FMM_14_14 iDraw = 14 iTex = 14 cost = 490 BREAK CASE FEET_FMM_14_15 iDraw = 14 iTex = 15 cost = 490 BREAK CASE FEET_FMM_15_0 iDraw = 15 iTex = 0 cost = 615 BREAK CASE FEET_FMM_15_1 iDraw = 15 iTex = 1 cost = 315 BREAK CASE FEET_FMM_15_2 iDraw = 15 iTex = 2 cost = 415 BREAK CASE FEET_FMM_15_3 iDraw = 15 iTex = 3 cost = 425 BREAK CASE FEET_FMM_15_4 iDraw = 15 iTex = 4 cost = 435 BREAK CASE FEET_FMM_15_5 iDraw = 15 iTex = 5 cost = 445 BREAK CASE FEET_FMM_15_6 iDraw = 15 iTex = 6 cost = 640 BREAK CASE FEET_FMM_15_7 iDraw = 15 iTex = 7 cost = 460 BREAK CASE FEET_FMM_15_8 iDraw = 15 iTex = 8 cost = 465 BREAK CASE FEET_FMM_15_9 iDraw = 15 iTex = 9 cost = 745 BREAK CASE FEET_FMM_15_10 iDraw = 15 iTex = 10 cost = 845 BREAK CASE FEET_FMM_15_11 iDraw = 15 iTex = 11 cost = 1420 BREAK CASE FEET_FMM_15_12 iDraw = 15 iTex = 12 cost = 475 BREAK CASE FEET_FMM_15_13 iDraw = 15 iTex = 13 cost = 470 BREAK CASE FEET_FMM_15_14 iDraw = 15 iTex = 14 cost = 1000 BREAK CASE FEET_FMM_15_15 iDraw = 15 iTex = 15 cost = 690 BREAK ENDSWITCH INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleFeetDiscount[i] * g_sMPTunableGroups.fmale_shoes_group_modifier)) ENDIF tlLabel = "F_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_FMM_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= FEET_FMM_DLC g_sTempCompData[0].iPedID = 3 // FMM0 FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_FMM_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_shoes_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_BERD(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_BERD SWITCH eItem CASE BERD_FMM_0_0 iDraw = 0 iTex = 0 cost = 0 BREAK // No mask CASE BERD_FMM_1_0 iDraw = 1 iTex = 0 cost = 965 BREAK CASE BERD_FMM_1_1 iDraw = 1 iTex = 1 cost = 960 BREAK CASE BERD_FMM_1_2 iDraw = 1 iTex = 2 cost = 9500 BREAK CASE BERD_FMM_1_3 iDraw = 1 iTex = 3 cost = 975 BREAK CASE BERD_FMM_2_0 iDraw = 2 iTex = 0 cost = 1185 BREAK CASE BERD_FMM_2_1 iDraw = 2 iTex = 1 cost = 15000 BREAK CASE BERD_FMM_2_2 iDraw = 2 iTex = 2 cost = 1115 BREAK CASE BERD_FMM_2_3 iDraw = 2 iTex = 3 cost = 1105 BREAK CASE BERD_FMM_3_0 iDraw = 3 iTex = 0 cost = 25000 BREAK CASE BERD_FMM_4_0 iDraw = 4 iTex = 0 cost = 510 BREAK CASE BERD_FMM_4_1 iDraw = 4 iTex = 1 cost = 530 BREAK CASE BERD_FMM_4_2 iDraw = 4 iTex = 2 cost = 5500 BREAK CASE BERD_FMM_4_3 iDraw = 4 iTex = 3 cost = 535 BREAK CASE BERD_FMM_5_0 iDraw = 5 iTex = 0 cost = 1510 BREAK CASE BERD_FMM_5_1 iDraw = 5 iTex = 1 cost = 1530 BREAK CASE BERD_FMM_5_2 iDraw = 5 iTex = 2 cost = 14500 BREAK CASE BERD_FMM_5_3 iDraw = 5 iTex = 3 cost = 13000 BREAK CASE BERD_FMM_6_0 iDraw = 6 iTex = 0 cost = 8000 BREAK CASE BERD_FMM_6_1 iDraw = 6 iTex = 1 cost = 1265 BREAK CASE BERD_FMM_6_2 iDraw = 6 iTex = 2 cost = 8500 BREAK CASE BERD_FMM_6_3 iDraw = 6 iTex = 3 cost = 1210 BREAK CASE BERD_FMM_7_0 iDraw = 7 iTex = 0 cost = 2360 BREAK CASE BERD_FMM_7_1 iDraw = 7 iTex = 1 cost = 22500 BREAK CASE BERD_FMM_7_2 iDraw = 7 iTex = 2 cost = 2375 BREAK CASE BERD_FMM_7_3 iDraw = 7 iTex = 3 cost = 2485 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, BERD_FMM_DLC, iDLCHash) #IF USE_TU_CHANGES // // // // handled by APPLY_CLOTHING_DISCOUNT/ // // // // IF g_sTempCompData[0].iCost > 0 // g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_masks_group_modifier)) // ENDIF // // // // // // // // // // // // // // // // // // // #ENDIF EXIT BREAK ENDSWITCH tlLabel = "M_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex INT i = ENUM_TO_INT(eItem) - 1 IF i >= 0 AND i < 26 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleMasksDiscount[i] * g_sMPTunableGroups.fmale_masks_group_modifier)) ENDIF FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_HAND(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAND SWITCH eItem CASE HAND_FMM_0_0 iDraw = 0 iTex = 0 BREAK CASE HAND_FMM_1_0 iDraw = 1 iTex = 0 BREAK CASE HAND_FMM_2_0 iDraw = 2 iTex = 0 BREAK CASE HAND_FMM_3_0 iDraw = 3 iTex = 0 BREAK CASE HAND_FMM_4_0 iDraw = 4 iTex = 0 BREAK CASE HAND_FMM_5_0 iDraw = 5 iTex = 0 BREAK CASE HAND_FMM_6_0 iDraw = 6 iTex = 0 BREAK CASE HAND_FMM_7_0 iDraw = 7 iTex = 0 BREAK CASE HAND_FMM_8_0 iDraw = 8 iTex = 0 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, HAND_FMM_DLC, iDLCHash) EXIT BREAK ENDSWITCH tlLabel = "HA_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_HEAD(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) // BOOL bOutfitOnly = FALSE // INT cost = 10 // default item cost. // TEXT_LABEL_15 tlLabel // INT iDraw = 0 // INT iTex = 0 // PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY // PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HEAD // SWITCH eItem // DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, HEAD_FMM_DLC, iDLCHash) // EXIT // BREAK // ENDSWITCH // // tlLabel = "HE_FMM_" // tlLabel += iDraw // tlLabel += "_" // tlLabel += iTex // // FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_TEETH(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TEETH SWITCH eItem CASE TEETH_FMM_0_0 iDraw = 0 iTex = 0 cost = 0 BREAK // chains CASE TEETH_FMM_1_0 iDraw = 1 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_1_1 iDraw = 1 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_1_2 iDraw = 1 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // big chains CASE TEETH_FMM_2_0 iDraw = 2 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_2_1 iDraw = 2 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_2_2 iDraw = 2 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // earrings CASE TEETH_FMM_3_0 iDraw = 3 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_3_1 iDraw = 3 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_3_2 iDraw = 3 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // sweatbands CASE TEETH_FMM_4_0 iDraw = 4 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_1 iDraw = 4 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_2 iDraw = 4 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_3 iDraw = 4 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_4 iDraw = 4 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_6 iDraw = 4 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_7 iDraw = 4 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_8 iDraw = 4 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_9 iDraw = 4 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_10 iDraw = 4 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_11 iDraw = 4 iTex = 11 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_12 iDraw = 4 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_13 iDraw = 4 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_14 iDraw = 4 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_4_15 iDraw = 4 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC // scarves CASE TEETH_FMM_5_0 iDraw = 5 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_5_1 iDraw = 5 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_5_2 iDraw = 5 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_5_3 iDraw = 5 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_5_4 iDraw = 5 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_5_5 iDraw = 5 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // scarves CASE TEETH_FMM_6_0 iDraw = 6 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_6_1 iDraw = 6 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_6_2 iDraw = 6 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_6_3 iDraw = 6 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_6_4 iDraw = 6 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_6_5 iDraw = 6 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // blank CASE TEETH_FMM_7_0 iDraw = 7 iTex = 0 BREAK CASE TEETH_FMM_8_0 iDraw = 8 iTex = 0 BREAK CASE TEETH_FMM_9_0 iDraw = 9 iTex = 0 BREAK // Ties CASE TEETH_FMM_10_0 iDraw = 10 iTex = 0 IF g_sMPTunables.iExpense_modifier_White_Tie != -1 cost = g_sMPTunables.iExpense_modifier_White_Tie ELSE cost = 115 ENDIF BREAK CASE TEETH_FMM_10_1 iDraw = 10 iTex = 1 IF g_sMPTunables.iExpense_modifier_Gray_Tie != -1 cost = g_sMPTunables.iExpense_modifier_Gray_Tie ELSE cost = 125 ENDIF BREAK CASE TEETH_FMM_10_2 iDraw = 10 iTex = 2 IF g_sMPTunables.iExpense_modifier_Black_Tie != -1 cost = g_sMPTunables.iExpense_modifier_Black_Tie ELSE cost = 130 ENDIF BREAK CASE TEETH_FMM_10_3 iDraw = 10 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_7 iDraw = 10 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_10 iDraw = 10 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_11 iDraw = 10 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_12 iDraw = 10 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_13 iDraw = 10 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_14 iDraw = 10 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_10_15 iDraw = 10 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // Bowties CASE TEETH_FMM_11_0 iDraw = 11 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_1 iDraw = 11 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_2 iDraw = 11 iTex = 2 IF g_sMPTunables.iExpense_modifier_Black_Bowtie != -1 cost = g_sMPTunables.iExpense_modifier_Black_Bowtie ELSE cost = 725 ENDIF BREAK CASE TEETH_FMM_11_3 iDraw = 11 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_4 iDraw = 11 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_5 iDraw = 11 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_6 iDraw = 11 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_7 iDraw = 11 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_8 iDraw = 11 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_9 iDraw = 11 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_10 iDraw = 11 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_11 iDraw = 11 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_12 iDraw = 11 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_13 iDraw = 11 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_14 iDraw = 11 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_11_15 iDraw = 11 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // Skinny ties CASE TEETH_FMM_12_0 iDraw = 12 iTex = 0 IF g_sMPTunables.iExpense_modifier_White_Skinny_Tie != -1 cost = g_sMPTunables.iExpense_modifier_White_Skinny_Tie ELSE cost = 65 ENDIF BREAK CASE TEETH_FMM_12_1 iDraw = 12 iTex = 1 IF g_sMPTunables.iExpense_modifier_Gray_Skinny_Tie != -1 cost = g_sMPTunables.iExpense_modifier_Gray_Skinny_Tie ELSE cost = 65 ENDIF BREAK CASE TEETH_FMM_12_2 iDraw = 12 iTex = 2 IF g_sMPTunables.iExpense_modifier_Black_Skinny_Tie != -1 cost = g_sMPTunables.iExpense_modifier_Black_Skinny_Tie ELSE cost = 95 ENDIF BREAK CASE TEETH_FMM_12_3 iDraw = 12 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_4 iDraw = 12 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_5 iDraw = 12 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_6 iDraw = 12 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_7 iDraw = 12 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_8 iDraw = 12 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_9 iDraw = 12 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_10 iDraw = 12 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_11 iDraw = 12 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_12 iDraw = 12 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_13 iDraw = 12 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_14 iDraw = 12 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE TEETH_FMM_12_15 iDraw = 12 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC // blank CASE TEETH_FMM_13_0 iDraw = 13 iTex = 0 BREAK CASE TEETH_FMM_14_0 iDraw = 14 iTex = 0 BREAK CASE TEETH_FMM_15_0 iDraw = 15 iTex = 0 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, TEETH_FMM_DLC, iDLCHash) #IF USE_TU_CHANGES IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_accessories_group_modifier)) ENDIF #ENDIF EXIT BREAK ENDSWITCH cost = ROUND((TO_FLOAT(cost) * g_sMPTunableGroups.fmale_accessories_group_modifier)) tlLabel = "T_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_DECL(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_DECL SWITCH eItem CASE DECL_FMM_0_0 tlLabel = "D_FMM_0_0" iDraw = 0 iTex = 0 cost = 0 BREAK CASE DECL_FMM_1_0 tlLabel = "D_FMM_1_0" iDraw = 1 iTex = 0 cost = 5000 BREAK CASE DECL_FMM_2_0 tlLabel = "D_FMM_2_0" iDraw = 2 iTex = 0 cost = 10000 BREAK CASE DECL_FMM_3_0 tlLabel = "D_FMM_1_0" iDraw = 3 iTex = 0 cost = 5000 BREAK CASE DECL_FMM_4_0 tlLabel = "D_FMM_2_0" iDraw = 4 iTex = 0 cost = 10000 BREAK CASE DECL_FMM_5_0 tlLabel = "D_FMM_1_0" iDraw = 5 iTex = 0 cost = 5000 BREAK CASE DECL_FMM_6_0 tlLabel = "D_FMM_2_0" iDraw = 6 iTex = 0 cost = 10000 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, DECL_FMM_DLC, iDLCHash) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_PROPS(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPS INT iType = 0 SWITCH eItem CASE PROPS_HEAD_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_EYES_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES BREAK CASE PROPS_EARS_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_MOUTH_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_MOUTH BREAK CASE PROPS_LHAND_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_HAND BREAK CASE PROPS_RHAND_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_HAND BREAK CASE PROPS_LWRIST_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST BREAK CASE PROPS_RWRIST_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_WRIST BREAK CASE PROPS_HIP_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HIP BREAK CASE PROPS_FMM_EARDEFENDERS_0_0 tlLabel = "HT_FMM_0_0" iDraw = 0 iTex = 0 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_1 tlLabel = "HT_FMM_0_1" iDraw = 0 iTex = 1 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_2 tlLabel = "HT_FMM_0_2" iDraw = 0 iTex = 2 cost = 85 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_3 tlLabel = "HT_FMM_0_3" iDraw = 0 iTex = 3 cost = 75 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_4 tlLabel = "HT_FMM_0_4" iDraw = 0 iTex = 4 cost = 235 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_5 tlLabel = "HT_FMM_0_5" iDraw = 0 iTex = 5 cost = 80 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_6 tlLabel = "HT_FMM_0_6" iDraw = 0 iTex = 6 cost = 85 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_EARDEFENDERS_0_7 tlLabel = "HT_FMM_0_7" iDraw = 0 iTex = 7 cost = 90 ePropType = PROP_TYPE_HEAD iType = 1 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_DUNCE_HAT_1_0 tlLabel = "HT_FMM_1_0" iDraw = 1 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_FMM_HAT_2_0 tlLabel = "HT_FMM_2_0" iDraw = 2 iTex = 0 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_1 tlLabel = "HT_FMM_2_1" iDraw = 2 iTex = 1 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_2 tlLabel = "HT_FMM_2_2" iDraw = 2 iTex = 2 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_3 tlLabel = "HT_FMM_2_3" iDraw = 2 iTex = 3 cost = 320 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_4 tlLabel = "HT_FMM_2_4" iDraw = 2 iTex = 4 cost = 185 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_5 tlLabel = "HT_FMM_2_5" iDraw = 2 iTex = 5 cost = 245 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_6 tlLabel = "HT_FMM_2_6" iDraw = 2 iTex = 6 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_2_7 tlLabel = "HT_FMM_2_7" iDraw = 2 iTex = 7 cost = 40 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_3_0 tlLabel = "HT_FMM_3_0" iDraw = 3 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_3_1 tlLabel = "HT_FMM_3_1" iDraw = 3 iTex = 1 cost = 60 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_3_2 tlLabel = "HT_FMM_3_2" iDraw = 3 iTex = 2 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_3_3 tlLabel = "HT_FMM_3_3" iDraw = 3 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_3_4 tlLabel = "HT_FMM_3_4" iDraw = 3 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_3_5 tlLabel = "HT_FMM_3_5" iDraw = 3 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_3_6 tlLabel = "HT_FMM_3_6" iDraw = 3 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_3_7 tlLabel = "HT_FMM_3_7" iDraw = 3 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_4_0 tlLabel = "HT_FMM_4_0" iDraw = 4 iTex = 0 cost = 415 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_4_1 tlLabel = "HT_FMM_4_1" iDraw = 4 iTex = 1 cost = 315 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_4_2 tlLabel = "HT_FMM_4_2" iDraw = 4 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_4_3 tlLabel = "HT_FMM_4_3" iDraw = 4 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_4_4 tlLabel = "HT_FMM_4_4" iDraw = 4 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_4_5 tlLabel = "HT_FMM_4_5" iDraw = 4 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_4_6 tlLabel = "HT_FMM_4_6" iDraw = 4 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_4_7 tlLabel = "HT_FMM_4_7" iDraw = 4 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_5_0 tlLabel = "HT_FMM_5_0" iDraw = 5 iTex = 0 cost = 75 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_5_1 tlLabel = "HT_FMM_5_1" iDraw = 5 iTex = 1 cost = 60 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_5_2 tlLabel = "HT_FMM_5_2" iDraw = 5 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_5_3 tlLabel = "HT_FMM_5_3" iDraw = 5 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_5_4 tlLabel = "HT_FMM_5_4" iDraw = 5 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_5_5 tlLabel = "HT_FMM_5_5" iDraw = 5 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_5_6 tlLabel = "HT_FMM_5_6" iDraw = 5 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_5_7 tlLabel = "HT_FMM_5_7" iDraw = 5 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_6_0 tlLabel = "HT_FMM_6_0" iDraw = 6 iTex = 0 cost = 160 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_1 tlLabel = "HT_FMM_6_1" iDraw = 6 iTex = 1 cost = 265 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_2 tlLabel = "HT_FMM_6_2" iDraw = 6 iTex = 2 cost = 170 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_3 tlLabel = "HT_FMM_6_3" iDraw = 6 iTex = 3 cost = 135 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_4 tlLabel = "HT_FMM_6_4" iDraw = 6 iTex = 4 cost = 570 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_5 tlLabel = "HT_FMM_6_5" iDraw = 6 iTex = 5 cost = 560 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_6 tlLabel = "HT_FMM_6_6" iDraw = 6 iTex = 6 cost = 140 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_6_7 tlLabel = "HT_FMM_6_7" iDraw = 6 iTex = 7 cost = 130 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_0 tlLabel = "HT_FMM_7_0" iDraw = 7 iTex = 0 cost = 260 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_1 tlLabel = "HT_FMM_7_1" iDraw = 7 iTex = 1 cost = 215 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_2 tlLabel = "HT_FMM_7_2" iDraw = 7 iTex = 2 cost = 430 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_3 tlLabel = "HT_FMM_7_3" iDraw = 7 iTex = 3 cost = 160 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_4 tlLabel = "HT_FMM_7_4" iDraw = 7 iTex = 4 cost = 200 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_5 tlLabel = "HT_FMM_7_5" iDraw = 7 iTex = 5 cost = 155 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_6 tlLabel = "HT_FMM_7_6" iDraw = 7 iTex = 6 cost = 155 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_7_7 tlLabel = "HT_FMM_7_7" iDraw = 7 iTex = 7 cost = 165 ePropType = PROP_TYPE_HEAD iType = 1 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_HAT_8_0 tlLabel = "HT_FMM_8_0" iDraw = 8 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_1 tlLabel = "HT_FMM_8_1" iDraw = 8 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_2 tlLabel = "HT_FMM_8_2" iDraw = 8 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_3 tlLabel = "HT_FMM_8_3" iDraw = 8 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_4 tlLabel = "HT_FMM_8_4" iDraw = 8 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_5 tlLabel = "HT_FMM_8_5" iDraw = 8 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_6 tlLabel = "HT_FMM_8_6" iDraw = 8 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_8_7 tlLabel = "HT_FMM_8_7" iDraw = 8 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_0 tlLabel = "HT_FMM_9_0" iDraw = 9 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_1 tlLabel = "HT_FMM_9_1" iDraw = 9 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_2 tlLabel = "HT_FMM_9_2" iDraw = 9 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_3 tlLabel = "HT_FMM_9_3" iDraw = 9 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_4 tlLabel = "HT_FMM_9_4" iDraw = 9 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_5 tlLabel = "HT_FMM_9_5" iDraw = 9 iTex = 5 cost = 100 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_9_6 tlLabel = "HT_FMM_9_6" iDraw = 9 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_9_7 tlLabel = "HT_FMM_9_7" iDraw = 9 iTex = 7 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_10_0 tlLabel = "HT_FMM_10_0" iDraw = 10 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_10_1 tlLabel = "HT_FMM_10_1" iDraw = 10 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_10_2 tlLabel = "HT_FMM_10_2" iDraw = 10 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_10_3 tlLabel = "HT_FMM_10_3" iDraw = 10 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_10_4 tlLabel = "HT_FMM_10_4" iDraw = 10 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_10_5 tlLabel = "HT_FMM_10_5" iDraw = 10 iTex = 5 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_10_6 tlLabel = "HT_FMM_10_6" iDraw = 10 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_10_7 tlLabel = "HT_FMM_10_7" iDraw = 10 iTex = 7 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_11_0 tlLabel = "HT_FMM_11_0" iDraw = 11 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_1 tlLabel = "HT_FMM_11_1" iDraw = 11 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_2 tlLabel = "HT_FMM_11_2" iDraw = 11 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_3 tlLabel = "HT_FMM_11_3" iDraw = 11 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_4 tlLabel = "HT_FMM_11_4" iDraw = 11 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_5 tlLabel = "HT_FMM_11_5" iDraw = 11 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_6 tlLabel = "HT_FMM_11_6" iDraw = 11 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_11_7 tlLabel = "HT_FMM_11_7" iDraw = 11 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_12_0 tlLabel = "HT_FMM_12_0" iDraw = 12 iTex = 0 cost = 1715 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_12_1 tlLabel = "HT_FMM_12_1" iDraw = 12 iTex = 1 cost = 3900 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_12_2 tlLabel = "HT_FMM_12_2" iDraw = 12 iTex = 2 cost = 1550 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_12_3 tlLabel = "HT_FMM_12_3" iDraw = 12 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_12_4 tlLabel = "HT_FMM_12_4" iDraw = 12 iTex = 4 cost = 4250 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_12_5 tlLabel = "HT_FMM_12_5" iDraw = 12 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_HAT_12_6 tlLabel = "HT_FMM_12_6" iDraw = 12 iTex = 6 cost = 4460 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_12_7 tlLabel = "HT_FMM_12_7" iDraw = 12 iTex = 7 cost = 4970 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_0 tlLabel = "HT_FMM_13_0" iDraw = 13 iTex = 0 cost = 290 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_1 tlLabel = "HT_FMM_13_1" iDraw = 13 iTex = 1 cost = 305 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_2 tlLabel = "HT_FMM_13_2" iDraw = 13 iTex = 2 cost = 4170 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_3 tlLabel = "HT_FMM_13_3" iDraw = 13 iTex = 3 cost = 335 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_4 tlLabel = "HT_FMM_13_4" iDraw = 13 iTex = 4 cost = 4940 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_5 tlLabel = "HT_FMM_13_5" iDraw = 13 iTex = 5 cost = 275 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_6 tlLabel = "HT_FMM_13_6" iDraw = 13 iTex = 6 cost = 5000 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_13_7 tlLabel = "HT_FMM_13_7" iDraw = 13 iTex = 7 cost = 3620 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_0 tlLabel = "HT_FMM_14_0" iDraw = 14 iTex = 0 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_1 tlLabel = "HT_FMM_14_1" iDraw = 14 iTex = 1 cost = 25 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_2 tlLabel = "HT_FMM_14_2" iDraw = 14 iTex = 2 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_3 tlLabel = "HT_FMM_14_3" iDraw = 14 iTex = 3 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_4 tlLabel = "HT_FMM_14_4" iDraw = 14 iTex = 4 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_5 tlLabel = "HT_FMM_14_5" iDraw = 14 iTex = 5 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_6 tlLabel = "HT_FMM_14_6" iDraw = 14 iTex = 6 cost = 350 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_14_7 tlLabel = "HT_FMM_14_7" iDraw = 14 iTex = 7 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_0 tlLabel = "HT_FMM_15_0" iDraw = 15 iTex = 0 cost = 365 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_1 tlLabel = "HT_FMM_15_1" iDraw = 15 iTex = 1 cost = 380 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_2 tlLabel = "HT_FMM_15_2" iDraw = 15 iTex = 2 cost = 595 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_3 tlLabel = "HT_FMM_15_3" iDraw = 15 iTex = 3 cost = 595 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_4 tlLabel = "HT_FMM_15_4" iDraw = 15 iTex = 4 cost = 600 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_5 tlLabel = "HT_FMM_15_5" iDraw = 15 iTex = 5 cost = 590 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_6 tlLabel = "HT_FMM_15_6" iDraw = 15 iTex = 6 cost = 395 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMM_HAT_15_7 tlLabel = "HT_FMM_15_7" iDraw = 15 iTex = 7 cost = 555 ePropType = PROP_TYPE_HEAD iType = 1 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_HELMET_16_0 tlLabel = "HE_FMM_16_0" iDraw = 16 iTex = 0 cost = 1060 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_1 tlLabel = "HE_FMM_16_1" iDraw = 16 iTex = 1 cost = 1400 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_2 tlLabel = "HE_FMM_16_2" iDraw = 16 iTex = 2 cost = 1315 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_3 tlLabel = "HE_FMM_16_3" iDraw = 16 iTex = 3 cost = 1230 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_4 tlLabel = "HE_FMM_16_4" iDraw = 16 iTex = 4 cost = 1145 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_5 tlLabel = "HE_FMM_16_5" iDraw = 16 iTex = 5 cost = 8450 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_6 tlLabel = "HE_FMM_16_6" iDraw = 16 iTex = 6 cost = 675 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_16_7 tlLabel = "HE_FMM_16_7" iDraw = 16 iTex = 7 cost = 8750 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_0 tlLabel = "HE_FMM_17_0" iDraw = 17 iTex = 0 cost = 975 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_1 tlLabel = "HE_FMM_17_1" iDraw = 17 iTex = 1 cost = 750 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_2 tlLabel = "HE_FMM_17_2" iDraw = 17 iTex = 2 cost = 865 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_3 tlLabel = "HE_FMM_17_3" iDraw = 17 iTex = 3 cost = 890 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_4 tlLabel = "HE_FMM_17_4" iDraw = 17 iTex = 4 cost = 730 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_5 tlLabel = "HE_FMM_17_5" iDraw = 17 iTex = 5 cost = 650 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_6 tlLabel = "HE_FMM_17_6" iDraw = 17 iTex = 6 cost = 645 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_17_7 tlLabel = "HE_FMM_17_7" iDraw = 17 iTex = 7 cost = 755 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_0 tlLabel = "HE_FMM_18_0" iDraw = 18 iTex = 0 cost = 13850 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_1 tlLabel = "HE_FMM_18_1" iDraw = 18 iTex = 1 cost = 2900 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_2 tlLabel = "HE_FMM_18_2" iDraw = 18 iTex = 2 cost = 2895 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_3 tlLabel = "HE_FMM_18_3" iDraw = 18 iTex = 3 cost = 12500 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_4 tlLabel = "HE_FMM_18_4" iDraw = 18 iTex = 4 cost = 15000 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_5 tlLabel = "HE_FMM_18_5" iDraw = 18 iTex = 5 cost = 14750 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_6 tlLabel = "HE_FMM_18_6" iDraw = 18 iTex = 6 cost = 13150 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMM_HELMET_18_7 tlLabel = "HE_FMM_18_7" iDraw = 18 iTex = 7 cost = 2925 ePropType = PROP_TYPE_HEAD iType = 2 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMM_GLASSES_0_0 tlLabel = "G_FMM_0_0" iDraw = 0 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_1 tlLabel = "G_FMM_0_1" iDraw = 0 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_2 tlLabel = "G_FMM_0_2" iDraw = 0 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_3 tlLabel = "G_FMM_0_3" iDraw = 0 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_4 tlLabel = "G_FMM_0_4" iDraw = 0 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_5 tlLabel = "G_FMM_0_5" iDraw = 0 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_6 tlLabel = "G_FMM_0_6" iDraw = 0 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_7 tlLabel = "G_FMM_0_7" iDraw = 0 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_0_8 tlLabel = "G_FMM_0_8" iDraw = 0 iTex = 8 cost = 50 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_0_9 tlLabel = "G_FMM_0_9" iDraw = 0 iTex = 9 cost = 50 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_0_10 tlLabel = "G_FMM_0_10" iDraw = 0 iTex = 10 cost = 50 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_1_0 tlLabel = "G_FMM_1_0" iDraw = 1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_1_1 tlLabel = "G_FMM_1_1" iDraw = 1 iTex = 1 cost = 180 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_1_2 tlLabel = "G_FMM_1_2" iDraw = 1 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_1_3 tlLabel = "G_FMM_1_3" iDraw = 1 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_1_4 tlLabel = "G_FMM_1_4" iDraw = 1 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_1_5 tlLabel = "G_FMM_1_5" iDraw = 1 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_1_6 tlLabel = "G_FMM_1_6" iDraw = 1 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_1_7 tlLabel = "G_FMM_1_7" iDraw = 1 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_2_0 tlLabel = "G_FMM_2_0" iDraw = 2 iTex = 0 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_1 tlLabel = "G_FMM_2_1" iDraw = 2 iTex = 1 cost = 140 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_2 tlLabel = "G_FMM_2_2" iDraw = 2 iTex = 2 cost = 380 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_3 tlLabel = "G_FMM_2_3" iDraw = 2 iTex = 3 cost = 135 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_4 tlLabel = "G_FMM_2_4" iDraw = 2 iTex = 4 cost = 130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_5 tlLabel = "G_FMM_2_5" iDraw = 2 iTex = 5 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_6 tlLabel = "G_FMM_2_6" iDraw = 2 iTex = 6 cost = 140 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_7 tlLabel = "G_FMM_2_7" iDraw = 2 iTex = 7 cost = 390 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_2_8 tlLabel = "CLO_EXM_G_2_8" iDraw = 2 iTex = 8 cost = 950 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_2_9 tlLabel = "CLO_EXM_G_2_9" iDraw = 2 iTex = 9 cost = 565 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_2_10 tlLabel = "CLO_EXM_G_2_10" iDraw = 2 iTex = 10 cost = 630 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_3_0 tlLabel = "G_FMM_3_0" iDraw = 3 iTex = 0 cost = 70 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_1 tlLabel = "G_FMM_3_1" iDraw = 3 iTex = 1 cost = 60 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_2 tlLabel = "G_FMM_3_2" iDraw = 3 iTex = 2 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_3 tlLabel = "G_FMM_3_3" iDraw = 3 iTex = 3 cost = 95 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_4 tlLabel = "G_FMM_3_4" iDraw = 3 iTex = 4 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_5 tlLabel = "G_FMM_3_5" iDraw = 3 iTex = 5 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_6 tlLabel = "G_FMM_3_6" iDraw = 3 iTex = 6 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_7 tlLabel = "G_FMM_3_7" iDraw = 3 iTex = 7 cost = 90 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_3_8 tlLabel = "CLO_EXM_G_3_8" iDraw = 3 iTex = 8 cost = 650 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_3_9 tlLabel = "CLO_EXM_G_3_9" iDraw = 3 iTex = 9 cost = 265 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_3_10 tlLabel = "CLO_EXM_G_3_10" iDraw = 3 iTex = 10 cost = 330 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_4_0 tlLabel = "G_FMM_4_0" iDraw = 4 iTex = 0 cost = 245 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_1 tlLabel = "G_FMM_4_1" iDraw = 4 iTex = 1 cost = 250 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_2 tlLabel = "G_FMM_4_2" iDraw = 4 iTex = 2 cost = 210 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_3 tlLabel = "G_FMM_4_3" iDraw = 4 iTex = 3 cost = 245 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_4 tlLabel = "G_FMM_4_4" iDraw = 4 iTex = 4 cost = 205 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_5 tlLabel = "G_FMM_4_5" iDraw = 4 iTex = 5 cost = 205 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_6 tlLabel = "G_FMM_4_6" iDraw = 4 iTex = 6 cost = 215 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_7 tlLabel = "G_FMM_4_7" iDraw = 4 iTex = 7 cost = 215 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_4_8 tlLabel = "CLO_EXM_G_4_8" iDraw = 4 iTex = 8 cost = 995 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_4_9 tlLabel = "CLO_EXM_G_4_9" iDraw = 4 iTex = 9 cost = 610 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_4_10 tlLabel = "CLO_EXM_G_4_10" iDraw = 4 iTex = 10 cost = 675 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_5_0 tlLabel = "G_FMM_5_0" iDraw = 5 iTex = 0 cost = 4050 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_1 tlLabel = "G_FMM_5_1" iDraw = 5 iTex = 1 cost = 4060 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_2 tlLabel = "G_FMM_5_2" iDraw = 5 iTex = 2 cost = 170 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_3 tlLabel = "G_FMM_5_3" iDraw = 5 iTex = 3 cost = 135 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_4 tlLabel = "G_FMM_5_4" iDraw = 5 iTex = 4 cost = 120 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_5 tlLabel = "G_FMM_5_5" iDraw = 5 iTex = 5 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_6 tlLabel = "G_FMM_5_6" iDraw = 5 iTex = 6 cost = 140 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_7 tlLabel = "G_FMM_5_7" iDraw = 5 iTex = 7 cost = 130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_5_8 tlLabel = "CLO_EXM_G_5_8" iDraw = 5 iTex = 8 cost = 1760 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_5_9 tlLabel = "CLO_EXM_G_5_9" iDraw = 5 iTex = 9 cost = 1375 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_5_10 tlLabel = "CLO_EXM_G_5_10" iDraw = 5 iTex = 10 cost = 1440 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_6_0 tlLabel = "G_FMM_6_0" iDraw = 6 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_1 tlLabel = "G_FMM_6_1" iDraw = 6 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_2 tlLabel = "G_FMM_6_2" iDraw = 6 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_3 tlLabel = "G_FMM_6_3" iDraw = 6 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_4 tlLabel = "G_FMM_6_4" iDraw = 6 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_5 tlLabel = "G_FMM_6_5" iDraw = 6 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_6 tlLabel = "G_FMM_6_6" iDraw = 6 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_6_7 tlLabel = "G_FMM_6_7" iDraw = 6 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_7_0 tlLabel = "G_FMM_7_0" iDraw = 7 iTex = 0 cost = 180 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_1 tlLabel = "G_FMM_7_1" iDraw = 7 iTex = 1 cost = 500 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_2 tlLabel = "G_FMM_7_2" iDraw = 7 iTex = 2 cost = 115 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_3 tlLabel = "G_FMM_7_3" iDraw = 7 iTex = 3 cost = 220 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_4 tlLabel = "G_FMM_7_4" iDraw = 7 iTex = 4 cost = 185 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_5 tlLabel = "G_FMM_7_5" iDraw = 7 iTex = 5 cost = 1445 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_6 tlLabel = "G_FMM_7_6" iDraw = 7 iTex = 6 cost = 530 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_7 tlLabel = "G_FMM_7_7" iDraw = 7 iTex = 7 cost = 650 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_7_8 tlLabel = "CLO_EXM_G_7_8" iDraw = 7 iTex = 8 cost = 1170 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_7_9 tlLabel = "CLO_EXM_G_7_9" iDraw = 7 iTex = 9 cost = 785 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_7_10 tlLabel = "CLO_EXM_G_7_10" iDraw = 7 iTex = 10 cost = 850 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG ENDSWITCH SWITCH eItem CASE PROPS_FMM_GLASSES_8_0 tlLabel = "G_FMM_8_0" iDraw = 8 iTex = 0 cost = 4260 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_1 tlLabel = "G_FMM_8_1" iDraw = 8 iTex = 1 cost = 4310 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_2 tlLabel = "G_FMM_8_2" iDraw = 8 iTex = 2 cost = 4130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_3 tlLabel = "G_FMM_8_3" iDraw = 8 iTex = 3 cost = 135 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_4 tlLabel = "G_FMM_8_4" iDraw = 8 iTex = 4 cost = 120 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_5 tlLabel = "G_FMM_8_5" iDraw = 8 iTex = 5 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_6 tlLabel = "G_FMM_8_6" iDraw = 8 iTex = 6 cost = 140 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_7 tlLabel = "G_FMM_8_7" iDraw = 8 iTex = 7 cost = 130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_8_8 tlLabel = "CLO_EXM_G_8_8" iDraw = 8 iTex = 8 cost = 1885 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_8_9 tlLabel = "CLO_EXM_G_8_9" iDraw = 8 iTex = 9 cost = 1500 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_8_10 tlLabel = "CLO_EXM_G_8_10" iDraw = 8 iTex = 10 cost = 1565 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_9_0 tlLabel = "G_FMM_9_0" iDraw = 9 iTex = 0 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_1 tlLabel = "G_FMM_9_1" iDraw = 9 iTex = 1 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_2 tlLabel = "G_FMM_9_2" iDraw = 9 iTex = 2 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_3 tlLabel = "G_FMM_9_3" iDraw = 9 iTex = 3 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_4 tlLabel = "G_FMM_9_4" iDraw = 9 iTex = 4 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_5 tlLabel = "G_FMM_9_5" iDraw = 9 iTex = 5 cost = 4290 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_6 tlLabel = "G_FMM_9_6" iDraw = 9 iTex = 6 cost = 4150 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_7 tlLabel = "G_FMM_9_7" iDraw = 9 iTex = 7 cost = 4295 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_9_8 tlLabel = "CLO_EXM_G_9_8" iDraw = 9 iTex = 8 cost = 2315 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_9_9 tlLabel = "CLO_EXM_G_9_9" iDraw = 9 iTex = 9 cost = 1930 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_9_10 tlLabel = "CLO_EXM_G_9_10" iDraw = 9 iTex = 10 cost = 1995 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_10_0 tlLabel = "G_FMM_10_0" iDraw = 10 iTex = 0 cost = 6240 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_1 tlLabel = "G_FMM_10_1" iDraw = 10 iTex = 1 cost = 4955 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_2 tlLabel = "G_FMM_10_2" iDraw = 10 iTex = 2 cost = 5590 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_3 tlLabel = "G_FMM_10_3" iDraw = 10 iTex = 3 cost = 4920 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_4 tlLabel = "G_FMM_10_4" iDraw = 10 iTex = 4 cost = 4990 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_5 tlLabel = "G_FMM_10_5" iDraw = 10 iTex = 5 cost = 4780 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_6 tlLabel = "G_FMM_10_6" iDraw = 10 iTex = 6 cost = 4775 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_7 tlLabel = "G_FMM_10_7" iDraw = 10 iTex = 7 cost = 4800 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_10_8 tlLabel = "CLO_EXM_G_10_8" iDraw = 10 iTex = 8 cost = 2835 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_10_9 tlLabel = "CLO_EXM_G_10_9" iDraw = 10 iTex = 9 cost = 2450 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_10_10 tlLabel = "CLO_EXM_G_10_10" iDraw = 10 iTex = 10 cost = 2515 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_11_0 tlLabel = "G_FMM_11_0" iDraw = 11 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_11_1 tlLabel = "G_FMM_11_1" iDraw = 11 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_11_2 tlLabel = "G_FMM_11_2" iDraw = 11 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_11_3 tlLabel = "G_FMM_11_3" iDraw = 11 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_11_4 tlLabel = "G_FMM_11_4" iDraw = 11 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_11_5 tlLabel = "G_FMM_11_5" iDraw = 11 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_11_7 tlLabel = "G_FMM_11_7" iDraw = 11 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_12_0 tlLabel = "G_FMM_12_0" iDraw = 12 iTex = 0 cost = 385 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_1 tlLabel = "G_FMM_12_1" iDraw = 12 iTex = 1 cost = 310 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_2 tlLabel = "G_FMM_12_2" iDraw = 12 iTex = 2 cost = 3655 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_3 tlLabel = "G_FMM_12_3" iDraw = 12 iTex = 3 cost = 4055 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_4 tlLabel = "G_FMM_12_4" iDraw = 12 iTex = 4 cost = 3595 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_5 tlLabel = "G_FMM_12_5" iDraw = 12 iTex = 5 cost = 3605 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_6 tlLabel = "G_FMM_12_6" iDraw = 12 iTex = 6 cost = 3645 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_7 tlLabel = "G_FMM_12_7" iDraw = 12 iTex = 7 cost = 320 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_12_8 tlLabel = "CLO_EXM_G_12_8" iDraw = 12 iTex = 8 cost = 2820 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_12_9 tlLabel = "CLO_EXM_G_12_9" iDraw = 12 iTex = 9 cost = 2435 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_12_10 tlLabel = "CLO_EXM_G_12_10" iDraw = 12 iTex = 10 cost = 2500 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_13_0 tlLabel = "G_FMM_13_0" iDraw = 13 iTex = 0 cost = 230 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_1 tlLabel = "G_FMM_13_1" iDraw = 13 iTex = 1 cost = 1605 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_2 tlLabel = "G_FMM_13_2" iDraw = 13 iTex = 2 cost = 2230 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_3 tlLabel = "G_FMM_13_3" iDraw = 13 iTex = 3 cost = 220 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_4 tlLabel = "G_FMM_13_4" iDraw = 13 iTex = 4 cost = 185 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_5 tlLabel = "G_FMM_13_5" iDraw = 13 iTex = 5 cost = 2070 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_6 tlLabel = "G_FMM_13_6" iDraw = 13 iTex = 6 cost = 2205 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_7 tlLabel = "G_FMM_13_7" iDraw = 13 iTex = 7 cost = 1690 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_13_8 tlLabel = "CLO_EXM_G_13_8" iDraw = 13 iTex = 8 cost = 2715 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_13_9 tlLabel = "CLO_EXM_G_13_9" iDraw = 13 iTex = 9 cost = 2330 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_13_10 tlLabel = "CLO_EXM_G_13_10" iDraw = 13 iTex = 10 cost = 2395 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_14_0 tlLabel = "G_FMM_14_0" iDraw = 14 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_1 tlLabel = "G_FMM_14_1" iDraw = 14 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_2 tlLabel = "G_FMM_14_2" iDraw = 14 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_3 tlLabel = "G_FMM_14_3" iDraw = 14 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_4 tlLabel = "G_FMM_14_4" iDraw = 14 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_5 tlLabel = "G_FMM_14_5" iDraw = 14 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_6 tlLabel = "G_FMM_14_6" iDraw = 14 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_14_7 tlLabel = "G_FMM_14_7" iDraw = 14 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_GLASSES_15_0 tlLabel = "G_FMM_15_0" iDraw = 15 iTex = 0 cost = 515 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_1 tlLabel = "G_FMM_15_1" iDraw = 15 iTex = 1 cost = 60 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_2 tlLabel = "G_FMM_15_2" iDraw = 15 iTex = 2 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_3 tlLabel = "G_FMM_15_3" iDraw = 15 iTex = 3 cost = 95 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_4 tlLabel = "G_FMM_15_4" iDraw = 15 iTex = 4 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_5 tlLabel = "G_FMM_15_5" iDraw = 15 iTex = 5 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_6 tlLabel = "G_FMM_15_6" iDraw = 15 iTex = 6 cost = 485 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_7 tlLabel = "G_FMM_15_7" iDraw = 15 iTex = 7 cost = 545 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMM_GLASSES_15_8 tlLabel = "CLO_EXM_G_15_8" iDraw = 15 iTex = 8 cost = 645 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_15_9 tlLabel = "CLO_EXM_G_15_9" iDraw = 15 iTex = 9 cost = 260 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMM_GLASSES_15_10 tlLabel = "CLO_EXM_G_15_10" iDraw = 15 iTex = 10 cost = 325 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG ENDSWITCH SWITCH eItem CASE PROPS_FMM_WATCH_0_0 tlLabel = "W_FMM_0_0" iDraw = 0 iTex = 0 cost = 5000 ePropType = PROP_TYPE_L_WRIST iType = 4 BREAK CASE PROPS_FMM_WATCH_0_1 tlLabel = "W_FMM_0_1" iDraw = 0 iTex = 1 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_WATCH_0_2 tlLabel = "W_FMM_0_2" iDraw = 0 iTex = 2 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_WATCH_0_3 tlLabel = "W_FMM_0_3" iDraw = 0 iTex = 3 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_WATCH_0_4 tlLabel = "W_FMM_0_4" iDraw = 0 iTex = 4 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_WATCH_1_0 tlLabel = "W_FMM_1_0" iDraw = 1 iTex = 0 cost = 695 ePropType = PROP_TYPE_L_WRIST iType = 4 BREAK CASE PROPS_FMM_WATCH_1_1 tlLabel = "W_FMM_1_1" iDraw = 1 iTex = 1 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE PROPS_FMM_WATCH_1_2 tlLabel = "W_FMM_1_2" iDraw = 1 iTex = 2 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH IF iType = 1 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMM_EARDEFENDERS_0_0) IF i >= 0 AND i < 121 IF i > 8 i -= 1 //Because PROPS_FMM_DUNCE_HAT_1_0 puts this out of sync ENDIF cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleHatsDiscount[i] * g_sMPTunableGroups.fmale_hats_group_modifier)) ENDIF ELIF iType = 2 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMM_HELMET_16_0) IF i >= 0 AND i < 24 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleHelmetsDiscount[i] * g_sMPTunableGroups.fmale_helmets_group_modifier)) ENDIF ELIF iType = 3 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMM_GLASSES_0_0) IF i >= 0 AND i < 128 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleGlassesDiscount[i] * g_sMPTunableGroups.fmale_glasses_group_modifier)) ENDIF ELIF iType = 4 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMM_WATCH_0_0) IF i >= 0 AND i < 15 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleWatchesDiscount[i] * g_sMPTunableGroups.fmale_watches_group_modifier)) ENDIF ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_FMM_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= PROPS_FMM_DLC g_sTempCompData[0].iPedID = 3 // FMM0 FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_FMM_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_PROP)) g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_hats_group_modifier)) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_GLASSES, ENUM_TO_INT(SHOP_PED_PROP)) g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_glasses_group_modifier)) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_WATCH, ENUM_TO_INT(SHOP_PED_PROP)) g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_watches_group_modifier)) //ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) // g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_helmets_group_modifier)) ENDIF ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_JBIB(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_JBIB SWITCH eItem CASE JBIB_FMM_0_0 iDraw = 0 iTex = 0 cost = 250 BREAK CASE JBIB_FMM_0_1 iDraw = 0 iTex = 1 cost = 210 BREAK CASE JBIB_FMM_0_2 iDraw = 0 iTex = 2 cost = 50 BREAK CASE JBIB_FMM_0_3 iDraw = 0 iTex = 3 cost = 90 BREAK CASE JBIB_FMM_0_4 iDraw = 0 iTex = 4 cost = 210 BREAK CASE JBIB_FMM_0_5 iDraw = 0 iTex = 5 cost = 200 BREAK CASE JBIB_FMM_0_6 iDraw = 0 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_0_7 iDraw = 0 iTex = 7 cost = 130 BREAK CASE JBIB_FMM_0_8 iDraw = 0 iTex = 8 cost = 220 BREAK CASE JBIB_FMM_0_9 iDraw = 0 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_0_10 iDraw = 0 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_0_11 iDraw = 0 iTex = 11 cost = 220 BREAK CASE JBIB_FMM_0_12 iDraw = 0 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_0_13 iDraw = 0 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_0_14 iDraw = 0 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_0_15 iDraw = 0 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_1_0 iDraw = 1 iTex = 0 cost = 45 BREAK CASE JBIB_FMM_1_1 iDraw = 1 iTex = 1 cost = 60 BREAK CASE JBIB_FMM_1_2 iDraw = 1 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_1_3 iDraw = 1 iTex = 3 cost = 40 BREAK CASE JBIB_FMM_1_4 iDraw = 1 iTex = 4 cost = 315 BREAK CASE JBIB_FMM_1_5 iDraw = 1 iTex = 5 cost = 215 BREAK CASE JBIB_FMM_1_6 iDraw = 1 iTex = 6 cost = 265 BREAK CASE JBIB_FMM_1_7 iDraw = 1 iTex = 7 cost = 45 BREAK CASE JBIB_FMM_1_8 iDraw = 1 iTex = 8 cost = 205 BREAK CASE JBIB_FMM_1_9 iDraw = 1 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_1_10 iDraw = 1 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_1_11 iDraw = 1 iTex = 11 cost = 60 BREAK CASE JBIB_FMM_1_12 iDraw = 1 iTex = 12 cost = 55 BREAK CASE JBIB_FMM_1_13 iDraw = 1 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_1_14 iDraw = 1 iTex = 14 cost = 170 BREAK CASE JBIB_FMM_1_15 iDraw = 1 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMM_2_0 iDraw = 2 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_1 iDraw = 2 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_2 iDraw = 2 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_3 iDraw = 2 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_4 iDraw = 2 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_5 iDraw = 2 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_6 iDraw = 2 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_7 iDraw = 2 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_8 iDraw = 2 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_9 iDraw = 2 iTex = 9 cost = 160 BREAK CASE JBIB_FMM_2_10 iDraw = 2 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_11 iDraw = 2 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_12 iDraw = 2 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_13 iDraw = 2 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_14 iDraw = 2 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_2_15 iDraw = 2 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_3_0 iDraw = 3 iTex = 0 cost = 205 BREAK CASE JBIB_FMM_3_1 iDraw = 3 iTex = 1 cost = 110 BREAK CASE JBIB_FMM_3_2 iDraw = 3 iTex = 2 cost = 150 BREAK CASE JBIB_FMM_3_3 iDraw = 3 iTex = 3 cost = 115 BREAK CASE JBIB_FMM_3_4 iDraw = 3 iTex = 4 cost = 115 BREAK CASE JBIB_FMM_3_5 iDraw = 3 iTex = 5 cost = 150 BREAK CASE JBIB_FMM_3_6 iDraw = 3 iTex = 6 cost = 150 BREAK CASE JBIB_FMM_3_7 iDraw = 3 iTex = 7 cost = 115 BREAK CASE JBIB_FMM_3_8 iDraw = 3 iTex = 8 cost = 140 BREAK CASE JBIB_FMM_3_9 iDraw = 3 iTex = 9 cost = 125 BREAK CASE JBIB_FMM_3_10 iDraw = 3 iTex = 10 cost = 115 BREAK CASE JBIB_FMM_3_11 iDraw = 3 iTex = 11 cost = 150 BREAK CASE JBIB_FMM_3_12 iDraw = 3 iTex = 12 cost = 150 BREAK CASE JBIB_FMM_3_13 iDraw = 3 iTex = 13 cost = 275 BREAK CASE JBIB_FMM_3_14 iDraw = 3 iTex = 14 cost = 460 BREAK CASE JBIB_FMM_3_15 iDraw = 3 iTex = 15 cost = 260 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMM_4_0 iDraw = 4 iTex = 0 cost = 965 BREAK CASE JBIB_FMM_4_1 iDraw = 4 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_2 iDraw = 4 iTex = 2 cost = 2520 BREAK CASE JBIB_FMM_4_3 iDraw = 4 iTex = 3 cost = 350 BREAK CASE JBIB_FMM_4_4 iDraw = 4 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_6 iDraw = 4 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_7 iDraw = 4 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_8 iDraw = 4 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_9 iDraw = 4 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_10 iDraw = 4 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_11 iDraw = 4 iTex = 11 cost = 150 BREAK CASE JBIB_FMM_4_12 iDraw = 4 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_13 iDraw = 4 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_4_14 iDraw = 4 iTex = 14 cost = 3125 BREAK CASE JBIB_FMM_4_15 iDraw = 4 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_0 iDraw = 5 iTex = 0 cost = 80 BREAK CASE JBIB_FMM_5_1 iDraw = 5 iTex = 1 cost = 45 BREAK CASE JBIB_FMM_5_2 iDraw = 5 iTex = 2 cost = 50 BREAK CASE JBIB_FMM_5_3 iDraw = 5 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_4 iDraw = 5 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_5 iDraw = 5 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_6 iDraw = 5 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_7 iDraw = 5 iTex = 7 cost = 50 BREAK CASE JBIB_FMM_5_8 iDraw = 5 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_9 iDraw = 5 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_10 iDraw = 5 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_11 iDraw = 5 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_12 iDraw = 5 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_13 iDraw = 5 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_14 iDraw = 5 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_5_15 iDraw = 5 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMM_6_0 iDraw = 6 iTex = 0 cost = 2485 BREAK CASE JBIB_FMM_6_1 iDraw = 6 iTex = 1 cost = 535 BREAK CASE JBIB_FMM_6_2 iDraw = 6 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_6_3 iDraw = 6 iTex = 3 cost = 2945 BREAK CASE JBIB_FMM_6_4 iDraw = 6 iTex = 4 cost = 3080 BREAK CASE JBIB_FMM_6_5 iDraw = 6 iTex = 5 cost = 2990 BREAK CASE JBIB_FMM_6_6 iDraw = 6 iTex = 6 cost = 3750 BREAK CASE JBIB_FMM_6_7 iDraw = 6 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_6_8 iDraw = 6 iTex = 8 cost = 515 BREAK CASE JBIB_FMM_6_9 iDraw = 6 iTex = 9 cost = 530 BREAK CASE JBIB_FMM_6_10 iDraw = 6 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_6_11 iDraw = 6 iTex = 11 cost = 2810 BREAK CASE JBIB_FMM_7_0 iDraw = 7 iTex = 0 cost = 150 BREAK CASE JBIB_FMM_7_1 iDraw = 7 iTex = 1 cost = 155 BREAK CASE JBIB_FMM_7_2 iDraw = 7 iTex = 2 cost = 320 BREAK CASE JBIB_FMM_7_3 iDraw = 7 iTex = 3 cost = 140 BREAK CASE JBIB_FMM_7_4 iDraw = 7 iTex = 4 cost = 150 BREAK CASE JBIB_FMM_7_5 iDraw = 7 iTex = 5 cost = 145 BREAK CASE JBIB_FMM_7_6 iDraw = 7 iTex = 6 cost = 150 BREAK CASE JBIB_FMM_7_7 iDraw = 7 iTex = 7 cost = 140 BREAK CASE JBIB_FMM_7_8 iDraw = 7 iTex = 8 cost = 135 BREAK CASE JBIB_FMM_7_9 iDraw = 7 iTex = 9 cost = 130 BREAK CASE JBIB_FMM_7_10 iDraw = 7 iTex = 10 cost = 130 BREAK CASE JBIB_FMM_7_11 iDraw = 7 iTex = 11 cost = 150 BREAK CASE JBIB_FMM_7_12 iDraw = 7 iTex = 12 cost = 145 BREAK CASE JBIB_FMM_7_13 iDraw = 7 iTex = 13 cost = 740 BREAK CASE JBIB_FMM_7_14 iDraw = 7 iTex = 14 cost = 790 BREAK CASE JBIB_FMM_7_15 iDraw = 7 iTex = 15 cost = 130 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMM_8_0 iDraw = 8 iTex = 0 cost = 45 BREAK CASE JBIB_FMM_8_1 iDraw = 8 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_2 iDraw = 8 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_3 iDraw = 8 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_4 iDraw = 8 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_5 iDraw = 8 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_6 iDraw = 8 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_7 iDraw = 8 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_8 iDraw = 8 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_9 iDraw = 8 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_10 iDraw = 8 iTex = 10 cost = 65 BREAK CASE JBIB_FMM_8_11 iDraw = 8 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_12 iDraw = 8 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_8_13 iDraw = 8 iTex = 13 cost = 40 BREAK CASE JBIB_FMM_8_14 iDraw = 8 iTex = 14 cost = 45 BREAK CASE JBIB_FMM_8_15 iDraw = 8 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_9_0 iDraw = 9 iTex = 0 cost = 265 BREAK CASE JBIB_FMM_9_1 iDraw = 9 iTex = 1 cost = 340 BREAK CASE JBIB_FMM_9_2 iDraw = 9 iTex = 2 cost = 335 BREAK CASE JBIB_FMM_9_3 iDraw = 9 iTex = 3 cost = 330 BREAK CASE JBIB_FMM_9_4 iDraw = 9 iTex = 4 cost = 345 BREAK CASE JBIB_FMM_9_5 iDraw = 9 iTex = 5 cost = 550 BREAK CASE JBIB_FMM_9_6 iDraw = 9 iTex = 6 cost = 340 BREAK CASE JBIB_FMM_9_7 iDraw = 9 iTex = 7 cost = 295 BREAK CASE JBIB_FMM_9_8 iDraw = 9 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_9_9 iDraw = 9 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_9_10 iDraw = 9 iTex = 10 cost = 545 BREAK CASE JBIB_FMM_9_11 iDraw = 9 iTex = 11 cost = 345 BREAK CASE JBIB_FMM_9_12 iDraw = 9 iTex = 12 cost = 315 BREAK CASE JBIB_FMM_9_13 iDraw = 9 iTex = 13 cost = 520 BREAK CASE JBIB_FMM_9_14 iDraw = 9 iTex = 14 cost = 325 BREAK CASE JBIB_FMM_9_15 iDraw = 9 iTex = 15 cost = 330 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMM_10_0 iDraw = 10 iTex = 0 cost = 505 BREAK CASE JBIB_FMM_10_1 iDraw = 10 iTex = 1 cost = 470 BREAK CASE JBIB_FMM_10_2 iDraw = 10 iTex = 2 cost = 475 BREAK CASE JBIB_FMM_10_3 iDraw = 10 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_7 iDraw = 10 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_10 iDraw = 10 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_11 iDraw = 10 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_12 iDraw = 10 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_13 iDraw = 10 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_14 iDraw = 10 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_10_15 iDraw = 10 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_0 iDraw = 11 iTex = 0 cost = 120 BREAK CASE JBIB_FMM_11_1 iDraw = 11 iTex = 1 cost = 360 BREAK CASE JBIB_FMM_11_2 iDraw = 11 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_3 iDraw = 11 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_4 iDraw = 11 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_5 iDraw = 11 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_6 iDraw = 11 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_7 iDraw = 11 iTex = 7 cost = 90 BREAK CASE JBIB_FMM_11_8 iDraw = 11 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_9 iDraw = 11 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_10 iDraw = 11 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_11 iDraw = 11 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_12 iDraw = 11 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_13 iDraw = 11 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_11_14 iDraw = 11 iTex = 14 cost = 2450 BREAK CASE JBIB_FMM_11_15 iDraw = 11 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMM_12_0 iDraw = 12 iTex = 0 cost = 420 BREAK CASE JBIB_FMM_12_1 iDraw = 12 iTex = 1 cost = 415 BREAK CASE JBIB_FMM_12_2 iDraw = 12 iTex = 2 cost = 695 BREAK CASE JBIB_FMM_12_3 iDraw = 12 iTex = 3 cost = 385 BREAK CASE JBIB_FMM_12_4 iDraw = 12 iTex = 4 cost = 330 BREAK CASE JBIB_FMM_12_5 iDraw = 12 iTex = 5 cost = 345 BREAK CASE JBIB_FMM_12_6 iDraw = 12 iTex = 6 cost = 340 BREAK CASE JBIB_FMM_12_7 iDraw = 12 iTex = 7 cost = 450 BREAK CASE JBIB_FMM_12_8 iDraw = 12 iTex = 8 cost = 295 BREAK CASE JBIB_FMM_12_9 iDraw = 12 iTex = 9 cost = 340 BREAK CASE JBIB_FMM_12_10 iDraw = 12 iTex = 10 cost = 1060 BREAK CASE JBIB_FMM_12_11 iDraw = 12 iTex = 11 cost = 1040 BREAK CASE JBIB_FMM_12_12 iDraw = 12 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_12_13 iDraw = 12 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_12_14 iDraw = 12 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_12_15 iDraw = 12 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_0 iDraw = 13 iTex = 0 cost = 420 BREAK CASE JBIB_FMM_13_1 iDraw = 13 iTex = 1 cost = 415 BREAK CASE JBIB_FMM_13_2 iDraw = 13 iTex = 2 cost = 680 BREAK CASE JBIB_FMM_13_3 iDraw = 13 iTex = 3 cost = 385 BREAK CASE JBIB_FMM_13_4 iDraw = 13 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_5 iDraw = 13 iTex = 5 cost = 345 BREAK CASE JBIB_FMM_13_6 iDraw = 13 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_7 iDraw = 13 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_8 iDraw = 13 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_9 iDraw = 13 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_10 iDraw = 13 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_11 iDraw = 13 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_12 iDraw = 13 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_13 iDraw = 13 iTex = 13 cost = 1065 BREAK CASE JBIB_FMM_13_14 iDraw = 13 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE JBIB_FMM_13_15 iDraw = 13 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMM_14_0 iDraw = 14 iTex = 0 cost = 420 BREAK CASE JBIB_FMM_14_1 iDraw = 14 iTex = 1 cost = 415 BREAK CASE JBIB_FMM_14_2 iDraw = 14 iTex = 2 cost = 440 BREAK CASE JBIB_FMM_14_3 iDraw = 14 iTex = 3 cost = 385 BREAK CASE JBIB_FMM_14_4 iDraw = 14 iTex = 4 cost = 330 BREAK CASE JBIB_FMM_14_5 iDraw = 14 iTex = 5 cost = 445 BREAK CASE JBIB_FMM_14_6 iDraw = 14 iTex = 6 cost = 340 BREAK CASE JBIB_FMM_14_7 iDraw = 14 iTex = 7 cost = 440 BREAK CASE JBIB_FMM_14_8 iDraw = 14 iTex = 8 cost = 295 BREAK CASE JBIB_FMM_14_9 iDraw = 14 iTex = 9 cost = 340 BREAK CASE JBIB_FMM_14_10 iDraw = 14 iTex = 10 cost = 325 BREAK CASE JBIB_FMM_14_11 iDraw = 14 iTex = 11 cost = 435 BREAK CASE JBIB_FMM_14_12 iDraw = 14 iTex = 12 cost = 445 BREAK CASE JBIB_FMM_14_13 iDraw = 14 iTex = 13 cost = 440 BREAK CASE JBIB_FMM_14_14 iDraw = 14 iTex = 14 cost = 325 BREAK CASE JBIB_FMM_14_15 iDraw = 14 iTex = 15 cost = 325 BREAK CASE JBIB_FMM_15_0 iDraw = 15 iTex = 0 BREAK ENDSWITCH tlLabel = "U_FMM_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex IF eItem = JBIB_FMM_1_7 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) tlLabel = "REW_RS" cost = ROUND((TO_FLOAT(1250) * g_sMPTunables.ftshirt_trans_mp_fm_rockstar_expenditure_tunable * g_sMPTunableGroups.fmale_uppers_group_modifier)) ELSE cost = ROUND((TO_FLOAT(45) * g_sMPTunables.fMaleUppersDiscount[ENUM_TO_INT(JBIB_FMM_1_7)] * g_sMPTunableGroups.fmale_uppers_group_modifier)) ENDIF ELIF eItem = JBIB_FMM_1_1 //IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE) tlLabel = "REW_LSB" cost = ROUND((TO_FLOAT(450) * g_sMPTunables.ftshirt_trans_mp_fm_lsbelle_expenditure_tunable * g_sMPTunableGroups.fmale_uppers_group_modifier)) ELIF eItem = JBIB_FMM_1_12 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) tlLabel = "REW_REDSK" cost = ROUND((TO_FLOAT(500) * g_sMPTunables.ftshirt_trans_mp_fm_redskull_expenditure_tunable * g_sMPTunableGroups.fmale_uppers_group_modifier)) ELSE cost = ROUND((TO_FLOAT(55) * g_sMPTunables.fMaleUppersDiscount[ENUM_TO_INT(JBIB_FMM_1_12)] * g_sMPTunableGroups.fmale_uppers_group_modifier)) ENDIF ELSE INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 237 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[i] * g_sMPTunableGroups.fmale_uppers_group_modifier)) ENDIF ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, JBIB_FMM_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= JBIB_FMM_DLC g_sTempCompData[0].iPedID = 3 // FMM0 FILL_PED_COMP_DATA_DLC(eType, eItem, JBIB_FMM_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_uppers_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_SPECIAL(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL SWITCH eItem CASE SPECIAL_FMM_0_0 tlLabel = "U_FMM_0_0" iDraw = 0 iTex = 0 cost = 250 BREAK CASE SPECIAL_FMM_0_1 tlLabel = "U_FMM_0_1" iDraw = 0 iTex = 1 cost = 210 BREAK CASE SPECIAL_FMM_0_2 tlLabel = "U_FMM_0_2" iDraw = 0 iTex = 2 cost = 50 BREAK CASE SPECIAL_FMM_0_3 tlLabel = "U_FMM_0_3" iDraw = 0 iTex = 3 cost = 90 BREAK CASE SPECIAL_FMM_0_4 tlLabel = "U_FMM_0_4" iDraw = 0 iTex = 4 cost = 210 BREAK CASE SPECIAL_FMM_0_5 tlLabel = "U_FMM_0_5" iDraw = 0 iTex = 5 cost = 200 BREAK CASE SPECIAL_FMM_0_6 tlLabel = "U_FMM_0_6" iDraw = 0 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_0_7 tlLabel = "U_FMM_0_7" iDraw = 0 iTex = 7 cost = 130 BREAK CASE SPECIAL_FMM_0_8 tlLabel = "U_FMM_0_8" iDraw = 0 iTex = 8 cost = 220 BREAK CASE SPECIAL_FMM_0_9 tlLabel = "U_FMM_0_9" iDraw = 0 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_0_10 tlLabel = "U_FMM_0_10" iDraw = 0 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_0_11 tlLabel = "U_FMM_0_11" iDraw = 0 iTex = 11 cost = 220 BREAK CASE SPECIAL_FMM_0_12 tlLabel = "U_FMM_0_12" iDraw = 0 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_0_13 tlLabel = "U_FMM_0_13" iDraw = 0 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_0_14 tlLabel = "U_FMM_0_14" iDraw = 0 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_0_15 tlLabel = "U_FMM_0_15" iDraw = 0 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_1_0 tlLabel = "U_FMM_1_0" iDraw = 1 iTex = 0 cost = 45 BREAK CASE SPECIAL_FMM_1_1 tlLabel = "U_FMM_1_1" iDraw = 1 iTex = 1 cost = 60 BREAK CASE SPECIAL_FMM_1_2 tlLabel = "U_FMM_1_2" iDraw = 1 iTex = 2 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_1_3 tlLabel = "U_FMM_1_3" iDraw = 1 iTex = 3 cost = 40 BREAK CASE SPECIAL_FMM_1_4 tlLabel = "U_FMM_1_4" iDraw = 1 iTex = 4 cost =315 BREAK CASE SPECIAL_FMM_1_5 tlLabel = "U_FMM_1_5" iDraw = 1 iTex = 5 cost =215 BREAK CASE SPECIAL_FMM_1_6 tlLabel = "U_FMM_1_6" iDraw = 1 iTex = 6 cost =265 BREAK CASE SPECIAL_FMM_1_7 tlLabel = "U_FMM_1_7" iDraw = 1 iTex = 7 cost =45 BREAK CASE SPECIAL_FMM_1_8 tlLabel = "U_FMM_1_8" iDraw = 1 iTex = 8 cost =205 BREAK CASE SPECIAL_FMM_1_9 tlLabel = "U_FMM_1_9" iDraw = 1 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_1_10 tlLabel = "U_FMM_1_10" iDraw = 1 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_1_11 tlLabel = "U_FMM_1_11" iDraw = 1 iTex = 11 cost = 60 BREAK CASE SPECIAL_FMM_1_12 tlLabel = "U_FMM_1_12" iDraw = 1 iTex = 12 cost =55 BREAK CASE SPECIAL_FMM_1_13 tlLabel = "U_FMM_1_13" iDraw = 1 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_1_14 tlLabel = "U_FMM_1_14" iDraw = 1 iTex = 14 cost = 170 BREAK CASE SPECIAL_FMM_1_15 tlLabel = "U_FMM_1_15" iDraw = 1 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_2_0 tlLabel = "U_FMM_0_0" iDraw = 2 iTex = 0 cost = 250 BREAK CASE SPECIAL_FMM_2_1 tlLabel = "U_FMM_0_1" iDraw = 2 iTex = 1 cost = 210 BREAK CASE SPECIAL_FMM_2_2 tlLabel = "U_FMM_0_2" iDraw = 2 iTex = 2 cost = 50 BREAK CASE SPECIAL_FMM_2_3 tlLabel = "U_FMM_0_3" iDraw = 2 iTex = 3 cost = 90 BREAK CASE SPECIAL_FMM_2_4 tlLabel = "U_FMM_0_4" iDraw = 2 iTex = 4 cost = 210 BREAK CASE SPECIAL_FMM_2_5 tlLabel = "U_FMM_0_5" iDraw = 2 iTex = 5 cost = 200 BREAK CASE SPECIAL_FMM_2_6 tlLabel = "U_FMM_0_6" iDraw = 2 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_2_7 tlLabel = "U_FMM_0_7" iDraw = 2 iTex = 7 cost = 130 BREAK CASE SPECIAL_FMM_2_8 tlLabel = "U_FMM_0_8" iDraw = 2 iTex = 8 cost = 220 BREAK CASE SPECIAL_FMM_2_9 tlLabel = "U_FMM_0_9" iDraw = 2 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_2_10 tlLabel = "U_FMM_0_10" iDraw = 2 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_2_11 tlLabel = "U_FMM_0_11" iDraw = 2 iTex = 11 cost = 220 BREAK CASE SPECIAL_FMM_2_12 tlLabel = "U_FMM_0_12" iDraw = 2 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_2_13 tlLabel = "U_FMM_0_13" iDraw = 2 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_2_14 tlLabel = "U_FMM_0_14" iDraw = 2 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_2_15 tlLabel = "U_FMM_0_15" iDraw = 2 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_0 tlLabel = "SP_FMM_3_0" iDraw = 3 iTex = 0 IF g_sMPTunables.iexpense_modifier_Black_Vest != -1 cost = g_sMPTunables.iexpense_modifier_Black_Vest ELSE cost = 165 ENDIF BREAK CASE SPECIAL_FMM_3_1 tlLabel = "SP_FMM_3_1" iDraw = 3 iTex = 1 IF g_sMPTunables.iexpense_modifier_Gray_Vest != -1 cost = g_sMPTunables.iexpense_modifier_Gray_Vest ELSE cost = 120 ENDIF BREAK CASE SPECIAL_FMM_3_2 tlLabel = "SP_FMM_3_2" iDraw = 3 iTex = 2 IF g_sMPTunables.iexpense_modifier_Blue_Vest != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Vest ELSE cost = 115 ENDIF BREAK CASE SPECIAL_FMM_3_3 tlLabel = "SP_FMM_3_3" iDraw = 3 iTex = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_4 tlLabel = "SP_FMM_3_4" iDraw = 3 iTex = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_5 tlLabel = "SP_FMM_3_5" iDraw = 3 iTex = 5 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_6 tlLabel = "SP_FMM_3_6" iDraw = 3 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_7 tlLabel = "SP_FMM_3_7" iDraw = 3 iTex = 7 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_8 tlLabel = "SP_FMM_3_8" iDraw = 3 iTex = 8 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_9 tlLabel = "SP_FMM_3_9" iDraw = 3 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_10 tlLabel = "SP_FMM_3_10" iDraw = 3 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_11 tlLabel = "SP_FMM_3_11" iDraw = 3 iTex = 11 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_12 tlLabel = "SP_FMM_3_12" iDraw = 3 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_13 tlLabel = "SP_FMM_3_13" iDraw = 3 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_14 tlLabel = "SP_FMM_3_14" iDraw = 3 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_3_15 tlLabel = "SP_FMM_3_15" iDraw = 3 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_4_0 tlLabel = "SP_FMM_3_0" iDraw = 4 iTex = 0 IF g_sMPTunables.iexpense_modifier_Black_Vest != -1 cost = g_sMPTunables.iexpense_modifier_Black_Vest ELSE cost = 165 ENDIF BREAK CASE SPECIAL_FMM_4_1 tlLabel = "SP_FMM_3_1" iDraw = 4 iTex = 1 IF g_sMPTunables.iexpense_modifier_Gray_Vest != -1 cost = g_sMPTunables.iexpense_modifier_Gray_Vest ELSE cost = 120 ENDIF BREAK CASE SPECIAL_FMM_4_2 tlLabel = "SP_FMM_3_2" iDraw = 4 iTex = 2 IF g_sMPTunables.iexpense_modifier_Blue_Vest != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Vest ELSE cost = 115 ENDIF BREAK CASE SPECIAL_FMM_4_3 tlLabel = "SP_FMM_3_3" iDraw = 4 iTex = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_4 tlLabel = "SP_FMM_3_4" iDraw = 4 iTex = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_5 tlLabel = "SP_FMM_3_5" iDraw = 4 iTex = 5 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_6 tlLabel = "SP_FMM_3_6" iDraw = 4 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_7 tlLabel = "SP_FMM_3_7" iDraw = 4 iTex = 7 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_8 tlLabel = "SP_FMM_3_8" iDraw = 4 iTex = 8 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_9 tlLabel = "SP_FMM_3_9" iDraw = 4 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_10 tlLabel = "SP_FMM_3_10" iDraw = 4 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_11 tlLabel = "SP_FMM_3_11" iDraw = 4 iTex = 11 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_12 tlLabel = "SP_FMM_3_12" iDraw = 4 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_13 tlLabel = "SP_FMM_3_13" iDraw = 4 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_14 tlLabel = "SP_FMM_3_14" iDraw = 4 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_4_15 tlLabel = "SP_FMM_3_15" iDraw = 4 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_0 tlLabel = "U_FMM_5_0" iDraw = 5 iTex = 0 cost = 80 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[80])) BREAK CASE SPECIAL_FMM_5_1 tlLabel = "U_FMM_5_1" iDraw = 5 iTex = 1 cost = 45 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[81])) BREAK CASE SPECIAL_FMM_5_2 tlLabel = "U_FMM_5_2" iDraw = 5 iTex = 2 cost = 50 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[82])) BREAK CASE SPECIAL_FMM_5_3 tlLabel = "U_FMM_5_3" iDraw = 5 iTex = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_4 tlLabel = "U_FMM_5_4" iDraw = 5 iTex = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_5 tlLabel = "U_FMM_5_5" iDraw = 5 iTex = 5 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_6 tlLabel = "U_FMM_5_6" iDraw = 5 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_7 tlLabel = "U_FMM_5_7" iDraw = 5 iTex = 7 cost = 50 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[87])) BREAK CASE SPECIAL_FMM_5_8 tlLabel = "U_FMM_5_8" iDraw = 5 iTex = 8 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_9 tlLabel = "U_FMM_5_9" iDraw = 5 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_10 tlLabel = "U_FMM_5_10" iDraw = 5 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_11 tlLabel = "U_FMM_5_11" iDraw = 5 iTex = 11 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_12 tlLabel = "U_FMM_5_12" iDraw = 5 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_13 tlLabel = "U_FMM_5_13" iDraw = 5 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_14 tlLabel = "U_FMM_5_14" iDraw = 5 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_5_15 tlLabel = "U_FMM_5_15" iDraw = 5 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_6_0 tlLabel = "SP_FMM_6_0" iDraw = 6 iTex = 0 IF g_sMPTunables.iexpense_modifier_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_White_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_6_1 tlLabel = "SP_FMM_6_1" iDraw = 6 iTex = 1 IF g_sMPTunables.iexpense_modifier_Silver_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Silver_Shirt ELSE cost = 415 ENDIF BREAK CASE SPECIAL_FMM_6_2 tlLabel = "SP_FMM_6_2" iDraw = 6 iTex = 2 IF g_sMPTunables.iexpense_modifier_Black_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Black_Shirt ELSE cost = 440 ENDIF BREAK CASE SPECIAL_FMM_6_3 tlLabel = "SP_FMM_6_3" iDraw = 6 iTex = 3 IF g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_6_4 tlLabel = "SP_FMM_6_4" iDraw = 6 iTex = 4 IF g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_6_5 tlLabel = "SP_FMM_6_5" iDraw = 6 iTex = 5 IF g_sMPTunables.iexpense_modifier_Pink_Check_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Check_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_6_6 tlLabel = "SP_FMM_6_6" iDraw = 6 iTex = 6 IF g_sMPTunables.iexpense_modifier_Salmon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Salmon_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_6_7 tlLabel = "SP_FMM_6_7" iDraw = 6 iTex = 7 IF g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_6_8 tlLabel = "SP_FMM_6_8" iDraw = 6 iTex = 8 IF g_sMPTunables.iexpense_modifier_Fuchsia_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Fuchsia_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_6_9 tlLabel = "SP_FMM_6_9" iDraw = 6 iTex = 9 IF g_sMPTunables.iexpense_modifier_Off_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Off_White_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_6_10 tlLabel = "SP_FMM_6_10" iDraw = 6 iTex = 10 IF g_sMPTunables.iexpense_modifier_Mint_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Mint_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_6_11 tlLabel = "SP_FMM_6_11" iDraw = 6 iTex = 11 IF g_sMPTunables.iexpense_modifier_Tan_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Tan_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_6_12 tlLabel = "SP_FMM_6_12" iDraw = 6 iTex = 12 IF g_sMPTunables.iexpense_modifier_Dark_Salmon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Dark_Salmon_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_6_13 tlLabel = "SP_FMM_6_13" iDraw = 6 iTex = 13 IF g_sMPTunables.iexpense_modifier_Blue_Check_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Check_Shirt ELSE cost = 750 ENDIF BREAK CASE SPECIAL_FMM_6_14 tlLabel = "SP_FMM_6_14" iDraw = 6 iTex = 14 IF g_sMPTunables.iexpense_modifier_Pink_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_6_15 tlLabel = "SP_FMM_6_15" iDraw = 6 iTex = 15 IF g_sMPTunables.iexpense_modifier_Lemon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Lemon_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_7_0 tlLabel = "SP_FMM_6_0" iDraw = 7 iTex = 0 IF g_sMPTunables.iexpense_modifier_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_White_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_7_1 tlLabel = "SP_FMM_6_1" iDraw = 7 iTex = 1 IF g_sMPTunables.iexpense_modifier_Silver_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Silver_Shirt ELSE cost = 415 ENDIF BREAK CASE SPECIAL_FMM_7_2 tlLabel = "SP_FMM_6_2" iDraw = 7 iTex = 2 IF g_sMPTunables.iexpense_modifier_Black_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Black_Shirt ELSE cost = 440 ENDIF BREAK CASE SPECIAL_FMM_7_3 tlLabel = "SP_FMM_6_3" iDraw = 7 iTex = 3 IF g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_7_4 tlLabel = "SP_FMM_6_4" iDraw = 7 iTex = 4 IF g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_7_5 tlLabel = "SP_FMM_6_5" iDraw = 7 iTex = 5 IF g_sMPTunables.iexpense_modifier_Pink_Check_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Check_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_7_6 tlLabel = "SP_FMM_6_6" iDraw = 7 iTex = 6 IF g_sMPTunables.iexpense_modifier_Salmon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Salmon_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_7_7 tlLabel = "SP_FMM_6_7" iDraw = 7 iTex = 7 IF g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_7_8 tlLabel = "SP_FMM_6_8" iDraw = 7 iTex = 8 IF g_sMPTunables.iexpense_modifier_Fuchsia_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Fuchsia_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_7_9 tlLabel = "SP_FMM_6_9" iDraw = 7 iTex = 9 IF g_sMPTunables.iexpense_modifier_Off_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Off_White_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_7_10 tlLabel = "SP_FMM_6_10" iDraw = 7 iTex = 10 IF g_sMPTunables.iexpense_modifier_Mint_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Mint_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_7_11 tlLabel = "SP_FMM_6_11" iDraw = 7 iTex = 11 IF g_sMPTunables.iexpense_modifier_Tan_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Tan_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_7_12 tlLabel = "SP_FMM_6_12" iDraw = 7 iTex = 12 IF g_sMPTunables.iexpense_modifier_Dark_Salmon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Dark_Salmon_Shirt ELSE cost = 435 ENDIF BREAK CASE SPECIAL_FMM_7_13 tlLabel = "SP_FMM_6_13" iDraw = 7 iTex = 13 IF g_sMPTunables.iexpense_modifier_Blue_Check_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Check_Shirt ELSE cost = 750 ENDIF BREAK CASE SPECIAL_FMM_7_14 tlLabel = "SP_FMM_6_14" iDraw = 7 iTex = 14 IF g_sMPTunables.iexpense_modifier_Pink_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_7_15 tlLabel = "SP_FMM_6_15" iDraw = 7 iTex = 15 IF g_sMPTunables.iexpense_modifier_Lemon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Lemon_Shirt ELSE cost = 435 ENDIF BREAK ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_8_0 tlLabel = "U_FMM_8_0" iDraw = 8 iTex = 0 cost = 45 BREAK CASE SPECIAL_FMM_8_1 tlLabel = "U_FMM_8_1" iDraw = 8 iTex = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_2 tlLabel = "U_FMM_8_2" iDraw = 8 iTex = 2 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_3 tlLabel = "U_FMM_8_3" iDraw = 8 iTex = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_4 tlLabel = "U_FMM_8_4" iDraw = 8 iTex = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_5 tlLabel = "U_FMM_8_5" iDraw = 8 iTex = 5 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_6 tlLabel = "U_FMM_8_6" iDraw = 8 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_7 tlLabel = "U_FMM_8_7" iDraw = 8 iTex = 7 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_8 tlLabel = "U_FMM_8_8" iDraw = 8 iTex = 8 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_9 tlLabel = "U_FMM_8_9" iDraw = 8 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_10 tlLabel = "U_FMM_8_10" iDraw = 8 iTex = 10 cost = 65 BREAK CASE SPECIAL_FMM_8_11 tlLabel = "U_FMM_8_11" iDraw = 8 iTex = 11 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_12 tlLabel = "U_FMM_8_12" iDraw = 8 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_8_13 tlLabel = "U_FMM_8_13" iDraw = 8 iTex = 13 cost = 40 BREAK CASE SPECIAL_FMM_8_14 tlLabel = "U_FMM_8_14" iDraw = 8 iTex = 14 cost = 45 BREAK CASE SPECIAL_FMM_8_15 tlLabel = "U_FMM_8_15" iDraw = 8 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_9_0 tlLabel = "U_FMM_9_0" iDraw = 9 iTex = 0 cost = 265 BREAK CASE SPECIAL_FMM_9_1 tlLabel = "U_FMM_9_1" iDraw = 9 iTex = 1 cost = 340 BREAK CASE SPECIAL_FMM_9_2 tlLabel = "U_FMM_9_2" iDraw = 9 iTex = 2 cost = 335 BREAK CASE SPECIAL_FMM_9_3 tlLabel = "U_FMM_9_3" iDraw = 9 iTex = 3 cost = 330 BREAK CASE SPECIAL_FMM_9_4 tlLabel = "U_FMM_9_4" iDraw = 9 iTex = 4 cost = 345 BREAK CASE SPECIAL_FMM_9_5 tlLabel = "U_FMM_9_5" iDraw = 9 iTex = 5 cost = 550 BREAK CASE SPECIAL_FMM_9_6 tlLabel = "U_FMM_9_6" iDraw = 9 iTex = 6 cost = 340 BREAK CASE SPECIAL_FMM_9_7 tlLabel = "U_FMM_9_7" iDraw = 9 iTex = 7 cost = 295 BREAK CASE SPECIAL_FMM_9_8 tlLabel = "U_FMM_9_8" iDraw = 9 iTex = 8 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_9_9 tlLabel = "U_FMM_9_9" iDraw = 9 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_9_10 tlLabel = "U_FMM_9_10" iDraw = 9 iTex = 10 cost = 545 BREAK CASE SPECIAL_FMM_9_11 tlLabel = "U_FMM_9_11" iDraw = 9 iTex = 11 cost = 345 BREAK CASE SPECIAL_FMM_9_12 tlLabel = "U_FMM_9_12" iDraw = 9 iTex = 12 cost = 315 BREAK CASE SPECIAL_FMM_9_13 tlLabel = "U_FMM_9_13" iDraw = 9 iTex = 13 cost = 520 BREAK CASE SPECIAL_FMM_9_14 tlLabel = "U_FMM_9_14" iDraw = 9 iTex = 14 cost = 325 BREAK CASE SPECIAL_FMM_9_15 tlLabel = "U_FMM_9_15" iDraw = 9 iTex = 15 cost = 330 BREAK ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_10_0 tlLabel = "SP_FMM_10_0" iDraw = 10 iTex = 0 IF g_sMPTunables.iexpense_modifier_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_White_Shirt ELSE cost = 405 ENDIF BREAK CASE SPECIAL_FMM_10_1 tlLabel = "SP_FMM_10_1" iDraw = 10 iTex = 1 IF g_sMPTunables.iexpense_modifier_Silver_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Silver_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_10_2 tlLabel = "SP_FMM_10_2" iDraw = 10 iTex = 2 IF g_sMPTunables.iexpense_modifier_Charcoal_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Charcoal_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_10_3 tlLabel = "SP_FMM_10_3" iDraw = 10 iTex = 3 IF g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt ELSE cost = 385 ENDIF BREAK CASE SPECIAL_FMM_10_4 tlLabel = "SP_FMM_10_4" iDraw = 10 iTex = 4 IF g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt ELSE cost = 385 ENDIF BREAK CASE SPECIAL_FMM_10_5 tlLabel = "SP_FMM_10_5" iDraw = 10 iTex = 5 IF g_sMPTunables.iexpense_modifier_Pink_Check_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Check_Shirt ELSE cost = 395 ENDIF BREAK CASE SPECIAL_FMM_10_6 tlLabel = "SP_FMM_10_6" iDraw = 10 iTex = 6 IF g_sMPTunables.iexpense_modifier_Blue_Woven_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Woven_Shirt ELSE cost = 500 ENDIF BREAK CASE SPECIAL_FMM_10_7 tlLabel = "SP_FMM_10_7" iDraw = 10 iTex = 7 IF g_sMPTunables.iexpense_modifier_Salmon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Salmon_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_10_8 tlLabel = "SP_FMM_10_8" iDraw = 10 iTex = 8 IF g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_10_9 tlLabel = "SP_FMM_10_9" iDraw = 10 iTex = 9 IF g_sMPTunables.iexpense_modifier_Fuchsia_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Fuchsia_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_10_10 tlLabel = "SP_FMM_10_10" iDraw = 10 iTex = 10 IF g_sMPTunables.iexpense_modifier_Off_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Off_White_Shirt ELSE cost = 405 ENDIF BREAK CASE SPECIAL_FMM_10_11 tlLabel = "SP_FMM_10_11" iDraw = 10 iTex = 11 IF g_sMPTunables.iexpense_modifier_Mint_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Mint_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_10_12 tlLabel = "SP_FMM_10_12" iDraw = 10 iTex = 12 IF g_sMPTunables.iexpense_modifier_Blue_Striped_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Striped_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_10_13 tlLabel = "SP_FMM_10_13" iDraw = 10 iTex = 13 IF g_sMPTunables.iexpense_modifier_Pink_Striped_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Striped_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_10_14 tlLabel = "SP_FMM_10_14" iDraw = 10 iTex = 14 IF g_sMPTunables.iexpense_modifier_Tan_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Tan_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_10_15 tlLabel = "SP_FMM_10_15" iDraw = 10 iTex = 15 IF g_sMPTunables.iexpense_modifier_Ocean_Stripe_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Ocean_Stripe_Shirt ELSE cost = 460 ENDIF BREAK CASE SPECIAL_FMM_11_0 tlLabel = "SP_FMM_10_0" iDraw = 11 iTex = 0 IF g_sMPTunables.iexpense_modifier_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_White_Shirt ELSE cost = 405 ENDIF BREAK CASE SPECIAL_FMM_11_1 tlLabel = "SP_FMM_10_1" iDraw = 11 iTex = 1 IF g_sMPTunables.iexpense_modifier_Silver_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Silver_Shirt ELSE cost = 400 ENDIF BREAK CASE SPECIAL_FMM_11_2 tlLabel = "SP_FMM_10_2" iDraw = 11 iTex = 2 IF g_sMPTunables.iexpense_modifier_Charcoal_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Charcoal_Shirt ELSE cost = 425 ENDIF BREAK CASE SPECIAL_FMM_11_3 tlLabel = "SP_FMM_10_3" iDraw = 11 iTex = 3 IF g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Blue_Shirt ELSE cost = 385 ENDIF BREAK CASE SPECIAL_FMM_11_4 tlLabel = "SP_FMM_10_4" iDraw = 11 iTex = 4 IF g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Barely_Blue_Shirt ELSE cost = 385 ENDIF BREAK CASE SPECIAL_FMM_11_5 tlLabel = "SP_FMM_10_5" iDraw = 11 iTex = 5 IF g_sMPTunables.iexpense_modifier_Pink_Check_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Check_Shirt ELSE cost = 395 ENDIF BREAK CASE SPECIAL_FMM_11_6 tlLabel = "SP_FMM_10_6" iDraw = 11 iTex = 6 IF g_sMPTunables.iexpense_modifier_Blue_Woven_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Woven_Shirt ELSE cost = 500 ENDIF BREAK CASE SPECIAL_FMM_11_7 tlLabel = "SP_FMM_10_7" iDraw = 11 iTex = 7 IF g_sMPTunables.iexpense_modifier_Salmon_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Salmon_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_11_8 tlLabel = "SP_FMM_10_8" iDraw = 11 iTex = 8 IF g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pale_Olive_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_11_9 tlLabel = "SP_FMM_10_9" iDraw = 11 iTex = 9 IF g_sMPTunables.iexpense_modifier_Fuchsia_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Fuchsia_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_11_10 tlLabel = "SP_FMM_10_10" iDraw = 11 iTex = 10 IF g_sMPTunables.iexpense_modifier_Off_White_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Off_White_Shirt ELSE cost = 405 ENDIF BREAK CASE SPECIAL_FMM_11_11 tlLabel = "SP_FMM_10_11" iDraw = 11 iTex = 11 IF g_sMPTunables.iexpense_modifier_Mint_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Mint_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_11_12 tlLabel = "SP_FMM_10_12" iDraw = 11 iTex = 12 IF g_sMPTunables.iexpense_modifier_Blue_Striped_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Blue_Striped_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_11_13 tlLabel = "SP_FMM_10_13" iDraw = 11 iTex = 13 IF g_sMPTunables.iexpense_modifier_Pink_Striped_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Pink_Striped_Shirt ELSE cost = 420 ENDIF BREAK CASE SPECIAL_FMM_11_14 tlLabel = "SP_FMM_10_14" iDraw = 11 iTex = 14 IF g_sMPTunables.iexpense_modifier_Tan_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Tan_Shirt ELSE cost = 410 ENDIF BREAK CASE SPECIAL_FMM_11_15 tlLabel = "SP_FMM_10_15" iDraw = 11 iTex = 15 IF g_sMPTunables.iexpense_modifier_Ocean_Stripe_Shirt != -1 cost = g_sMPTunables.iexpense_modifier_Ocean_Stripe_Shirt ELSE cost = 460 ENDIF BREAK ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_12_0 tlLabel = "U_FMM_12_0" iDraw = 12 iTex = 0 cost = 420 BREAK CASE SPECIAL_FMM_12_1 tlLabel = "U_FMM_12_1" iDraw = 12 iTex = 1 cost = 415 BREAK CASE SPECIAL_FMM_12_2 tlLabel = "U_FMM_12_2" iDraw = 12 iTex = 2 cost = 695 BREAK CASE SPECIAL_FMM_12_3 tlLabel = "U_FMM_12_3" iDraw = 12 iTex = 3 cost = 385 BREAK CASE SPECIAL_FMM_12_4 tlLabel = "U_FMM_12_4" iDraw = 12 iTex = 4 cost = 330 BREAK CASE SPECIAL_FMM_12_5 tlLabel = "U_FMM_12_5" iDraw = 12 iTex = 5 cost = 345 BREAK CASE SPECIAL_FMM_12_6 tlLabel = "U_FMM_12_6" iDraw = 12 iTex = 6 cost = 340 BREAK CASE SPECIAL_FMM_12_7 tlLabel = "U_FMM_12_7" iDraw = 12 iTex = 7 cost = 450 BREAK CASE SPECIAL_FMM_12_8 tlLabel = "U_FMM_12_8" iDraw = 12 iTex = 8 cost = 295 BREAK CASE SPECIAL_FMM_12_9 tlLabel = "U_FMM_12_9" iDraw = 12 iTex = 9 cost = 340 BREAK CASE SPECIAL_FMM_12_10 tlLabel = "U_FMM_12_10" iDraw = 12 iTex = 10 cost = 1060 BREAK CASE SPECIAL_FMM_12_11 tlLabel = "U_FMM_12_11" iDraw = 12 iTex = 11 cost = 1040 BREAK CASE SPECIAL_FMM_12_12 tlLabel = "U_FMM_12_12" iDraw = 12 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_12_13 tlLabel = "U_FMM_12_13" iDraw = 12 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_12_14 tlLabel = "U_FMM_12_14" iDraw = 12 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_12_15 tlLabel = "U_FMM_12_15" iDraw = 12 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_0 tlLabel = "U_FMM_13_0" iDraw = 13 iTex = 0 cost = 420 BREAK CASE SPECIAL_FMM_13_1 tlLabel = "U_FMM_13_1" iDraw = 13 iTex = 1 cost = 415 BREAK CASE SPECIAL_FMM_13_2 tlLabel = "U_FMM_13_2" iDraw = 13 iTex = 2 cost = 680 BREAK CASE SPECIAL_FMM_13_3 tlLabel = "U_FMM_13_3" iDraw = 13 iTex = 3 cost = 385 BREAK CASE SPECIAL_FMM_13_4 tlLabel = "U_FMM_13_4" iDraw = 13 iTex = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_5 tlLabel = "U_FMM_13_5" iDraw = 13 iTex = 5 cost = 345 BREAK CASE SPECIAL_FMM_13_6 tlLabel = "U_FMM_13_6" iDraw = 13 iTex = 6 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_7 tlLabel = "U_FMM_13_7" iDraw = 13 iTex = 7 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_8 tlLabel = "U_FMM_13_8" iDraw = 13 iTex = 8 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_9 tlLabel = "U_FMM_13_9" iDraw = 13 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_10 tlLabel = "U_FMM_13_10" iDraw = 13 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_11 tlLabel = "U_FMM_13_11" iDraw = 13 iTex = 11 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_12 tlLabel = "U_FMM_13_12" iDraw = 13 iTex = 12 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_13 tlLabel = "U_FMM_13_13" iDraw = 13 iTex = 13 cost = 1065 BREAK CASE SPECIAL_FMM_13_14 tlLabel = "U_FMM_13_14" iDraw = 13 iTex = 14 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_13_15 tlLabel = "U_FMM_13_15" iDraw = 13 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE SPECIAL_FMM_14_0 tlLabel = "U_FMM_1_0" iDraw = 14 iTex = 0 cost = 45 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[16])) BREAK CASE SPECIAL_FMM_14_1 tlLabel = "U_FMM_1_1" iDraw = 14 iTex = 1 cost = 60 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[17])) BREAK CASE SPECIAL_FMM_14_2 tlLabel = "U_FMM_1_2" iDraw = 14 iTex = 2 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_14_3 tlLabel = "U_FMM_1_3" iDraw = 14 iTex = 3 cost = 40 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[19])) BREAK CASE SPECIAL_FMM_14_4 tlLabel = "U_FMM_1_4" iDraw = 14 iTex = 4 cost = 315 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[20])) BREAK CASE SPECIAL_FMM_14_5 tlLabel = "U_FMM_1_5" iDraw = 14 iTex = 5 cost = 215 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[21])) BREAK CASE SPECIAL_FMM_14_6 tlLabel = "U_FMM_1_6" iDraw = 14 iTex = 6 cost = 265 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[22])) BREAK CASE SPECIAL_FMM_14_7 tlLabel = "U_FMM_1_7" iDraw = 14 iTex = 7 cost = 45 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[23])) BREAK CASE SPECIAL_FMM_14_8 tlLabel = "U_FMM_1_8" iDraw = 14 iTex = 8 cost = 205 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[24])) BREAK CASE SPECIAL_FMM_14_9 tlLabel = "U_FMM_1_9" iDraw = 14 iTex = 9 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_14_10 tlLabel = "U_FMM_1_10" iDraw = 14 iTex = 10 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_14_11 tlLabel = "U_FMM_1_11" iDraw = 14 iTex = 11 cost = 60 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[27])) BREAK CASE SPECIAL_FMM_14_12 tlLabel = "U_FMM_1_12" iDraw = 14 iTex = 12 cost = 55 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[28])) BREAK CASE SPECIAL_FMM_14_13 tlLabel = "U_FMM_1_13" iDraw = 14 iTex = 13 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_14_14 tlLabel = "U_FMM_1_14" iDraw = 14 iTex = 14 cost = 170 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[30])) BREAK CASE SPECIAL_FMM_14_15 tlLabel = "U_FMM_1_15" iDraw = 14 iTex = 15 bOutfitOnly = TRUE BREAK // moved to DLC CASE SPECIAL_FMM_15_0 tlLabel = "U_FMM_15_0" iDraw = 15 iTex = 0 cost = 0 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[32])) BREAK ENDSWITCH IF eItem = SPECIAL_FMM_1_7 OR eItem = SPECIAL_FMM_14_7 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) tlLabel = "REW_RS" cost = ROUND((TO_FLOAT(1250) * g_sMPTunables.ftshirt_trans_mp_fm_rockstar_expenditure_tunable)) ELSE cost = ROUND((TO_FLOAT(45) * g_sMPTunables.fMaleUppersDiscount[ENUM_TO_INT(JBIB_FMM_1_7)])) ENDIF ELIF eItem = SPECIAL_FMM_1_1 OR eItem = SPECIAL_FMM_14_1 //IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE) tlLabel = "REW_LSB" cost = ROUND((TO_FLOAT(450) * g_sMPTunables.ftshirt_trans_mp_fm_lsbelle_expenditure_tunable)) ELIF eItem = SPECIAL_FMM_1_12 OR eItem = SPECIAL_FMM_14_12 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) tlLabel = "REW_REDSK" cost = ROUND((TO_FLOAT(500) * g_sMPTunables.ftshirt_trans_mp_fm_redskull_expenditure_tunable)) ELSE cost = ROUND((TO_FLOAT(55) * g_sMPTunables.fMaleUppersDiscount[ENUM_TO_INT(JBIB_FMM_1_12)])) ENDIF ELSE IF eItem >= SPECIAL_FMM_0_0 AND eItem < SPECIAL_FMM_2_0 INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 237 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[i])) ENDIF ELIF eItem >= SPECIAL_FMM_2_0 AND eItem < SPECIAL_FMM_3_0 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(SPECIAL_FMM_2_0) IF i >= 0 AND i < 237 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[i])) ENDIF ELIF eItem >= SPECIAL_FMM_8_0 AND eItem < SPECIAL_FMM_10_0 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(SPECIAL_FMM_10_0) + ENUM_TO_INT(JBIB_FMM_8_0) IF i >= 0 AND i < 237 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[i])) ENDIF ELIF eItem >= SPECIAL_FMM_12_0 AND eItem < SPECIAL_FMM_14_0 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(SPECIAL_FMM_10_0) + ENUM_TO_INT(JBIB_FMM_12_0) IF i >= 0 AND i < 237 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fMaleUppersDiscount[i])) ENDIF ENDIF ENDIF cost = ROUND((TO_FLOAT(cost) * g_sMPTunableGroups.fmale_uppers_group_modifier)) #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL_FMM_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= SPECIAL_FMM_DLC g_sTempCompData[0].iPedID = 3 // FMM0 FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL_FMM_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.fmale_uppers_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_SPECIAL2(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL2 SWITCH eItem CASE SPECIAL2_FMM_0_0 iDraw = 0 iTex = 0 BREAK CASE SPECIAL2_FMM_1_0 iDraw = 1 iTex = 0 BREAK CASE SPECIAL2_FMM_1_1 iDraw = 1 iTex = 1 BREAK CASE SPECIAL2_FMM_1_2 iDraw = 1 iTex = 2 BREAK CASE SPECIAL2_FMM_1_3 iDraw = 1 iTex = 3 BREAK CASE SPECIAL2_FMM_1_4 iDraw = 1 iTex = 4 BREAK CASE SPECIAL2_FMM_2_0 iDraw = 2 iTex = 0 BREAK CASE SPECIAL2_FMM_2_1 iDraw = 2 iTex = 1 BREAK CASE SPECIAL2_FMM_2_2 iDraw = 2 iTex = 2 BREAK CASE SPECIAL2_FMM_2_3 iDraw = 2 iTex = 3 BREAK CASE SPECIAL2_FMM_2_4 iDraw = 2 iTex = 4 BREAK CASE SPECIAL2_FMM_3_0 iDraw = 3 iTex = 0 BREAK CASE SPECIAL2_FMM_3_1 iDraw = 3 iTex = 1 BREAK CASE SPECIAL2_FMM_3_2 iDraw = 3 iTex = 2 BREAK CASE SPECIAL2_FMM_3_3 iDraw = 3 iTex = 3 BREAK CASE SPECIAL2_FMM_3_4 iDraw = 3 iTex = 4 BREAK CASE SPECIAL2_FMM_4_0 iDraw = 4 iTex = 0 BREAK CASE SPECIAL2_FMM_4_1 iDraw = 4 iTex = 1 BREAK CASE SPECIAL2_FMM_4_2 iDraw = 4 iTex = 2 BREAK CASE SPECIAL2_FMM_4_3 iDraw = 4 iTex = 3 BREAK CASE SPECIAL2_FMM_4_4 iDraw = 4 iTex = 4 BREAK CASE SPECIAL2_FMM_5_0 iDraw = 5 iTex = 0 BREAK CASE SPECIAL2_FMM_5_1 iDraw = 5 iTex = 1 BREAK CASE SPECIAL2_FMM_5_2 iDraw = 5 iTex = 2 BREAK CASE SPECIAL2_FMM_5_3 iDraw = 5 iTex = 3 BREAK CASE SPECIAL2_FMM_5_4 iDraw = 5 iTex = 4 BREAK CASE SPECIAL2_FMM_6_0 iDraw = 6 iTex = 0 BREAK CASE SPECIAL2_FMM_6_1 iDraw = 6 iTex = 1 BREAK CASE SPECIAL2_FMM_6_2 iDraw = 6 iTex = 2 BREAK CASE SPECIAL2_FMM_6_3 iDraw = 6 iTex = 3 BREAK CASE SPECIAL2_FMM_6_4 iDraw = 6 iTex = 4 BREAK CASE SPECIAL2_FMM_7_0 iDraw = 7 iTex = 0 BREAK CASE SPECIAL2_FMM_7_1 iDraw = 7 iTex = 1 BREAK CASE SPECIAL2_FMM_7_2 iDraw = 7 iTex = 2 BREAK CASE SPECIAL2_FMM_7_3 iDraw = 7 iTex = 3 BREAK CASE SPECIAL2_FMM_7_4 iDraw = 7 iTex = 4 BREAK CASE SPECIAL2_FMM_8_0 iDraw = 8 iTex = 0 BREAK CASE SPECIAL2_FMM_8_1 iDraw = 8 iTex = 1 BREAK CASE SPECIAL2_FMM_8_2 iDraw = 8 iTex = 2 BREAK CASE SPECIAL2_FMM_8_3 iDraw = 8 iTex = 3 BREAK CASE SPECIAL2_FMM_8_4 iDraw = 8 iTex = 4 BREAK CASE SPECIAL2_FMM_9_0 iDraw = 9 iTex = 0 BREAK CASE SPECIAL2_FMM_9_1 iDraw = 9 iTex = 1 BREAK CASE SPECIAL2_FMM_9_2 iDraw = 9 iTex = 2 BREAK CASE SPECIAL2_FMM_9_3 iDraw = 9 iTex = 3 BREAK CASE SPECIAL2_FMM_9_4 iDraw = 9 iTex = 4 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL2_FMM_DLC, iDLCHash) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_M_FM_OUTFIT(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_OUTFIT SWITCH eItem // Always set bOutfitOnly param to TRUE for the default outfit CASE OUTFIT_FMM_DEFAULT iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE OUTFIT_FMM_SUB_1 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S1" BREAK CASE OUTFIT_FMM_SUB_2 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S2" BREAK CASE OUTFIT_FMM_SUB_3 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S3" BREAK CASE OUTFIT_FMM_SUB_4 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S4" BREAK CASE OUTFIT_FMM_SUB_5 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S5" BREAK CASE OUTFIT_FMM_SUB_6 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S6" BREAK CASE OUTFIT_FMM_SUB_7 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S7" BREAK CASE OUTFIT_FMM_SUB_8 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S8" BREAK CASE OUTFIT_FMM_SUB_9 iDraw = 0 iTex = 0 tlLabel = "O_FMM_S9" BREAK CASE OUTFIT_FMM_PONS_1 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P1" BREAK CASE OUTFIT_FMM_PONS_2 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P2" BREAK CASE OUTFIT_FMM_PONS_3 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P3" BREAK CASE OUTFIT_FMM_PONS_4 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P4" BREAK CASE OUTFIT_FMM_PONS_5 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P5" BREAK CASE OUTFIT_FMM_PONS_6 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P6" BREAK CASE OUTFIT_FMM_PONS_7 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P7" BREAK CASE OUTFIT_FMM_PONS_8 iDraw = 0 iTex = 0 tlLabel = "O_FMM_P8" BREAK CASE OUTFIT_FMM_BIN_1 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B1" BREAK CASE OUTFIT_FMM_BIN_2 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B2" BREAK CASE OUTFIT_FMM_BIN_3 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B3" BREAK CASE OUTFIT_FMM_BIN_4 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B4" BREAK CASE OUTFIT_FMM_BIN_5 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B5" BREAK CASE OUTFIT_FMM_BIN_6 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B6" BREAK CASE OUTFIT_FMM_BIN_7 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B7" BREAK CASE OUTFIT_FMM_BIN_8 iDraw = 0 iTex = 0 tlLabel = "O_FMM_B8" BREAK #IF USE_TU_CHANGES DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 3 // FMM0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, OUTFIT_FMM_DLC, iDLCHash) EXIT BREAK #ENDIF ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FMM_PROPGROUP(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPGROUP SWITCH eItem CASE PROPGROUP_NONE iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_1 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_2 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_3 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_4 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_5 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_6 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_7 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_8 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_SUB_9 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_1 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_2 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_3 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_4 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_5 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_6 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_7 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_PONS_8 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_1 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_2 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_3 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_4 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_5 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_6 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_7 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMM_BIN_8 iDraw = 0 iTex = 0 BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMPONENT_ITEM_DATA_M_FM(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) SWITCH eType CASE COMP_TYPE_HAIR FILL_PED_COMP_DATA_M_FM_HAIR(eItem, iDLCHash) BREAK // MAIN UPPER CASE COMP_TYPE_JBIB FILL_PED_COMP_DATA_M_FM_JBIB(eItem, iDLCHash) BREAK // SECONDARY UPPER CASE COMP_TYPE_SPECIAL FILL_PED_COMP_DATA_M_FM_SPECIAL(eItem, iDLCHash) BREAK // Body Armour CASE COMP_TYPE_SPECIAL2 FILL_PED_COMP_DATA_M_FM_SPECIAL2(eItem, iDLCHash) BREAK // SKIN CASE COMP_TYPE_TORSO FILL_PED_COMP_DATA_M_FM_TORSO(eItem, iDLCHash) BREAK CASE COMP_TYPE_LEGS FILL_PED_COMP_DATA_M_FM_LEGS(eItem, iDLCHash) BREAK CASE COMP_TYPE_FEET FILL_PED_COMP_DATA_M_FM_FEET(eItem, iDLCHash) BREAK CASE COMP_TYPE_BERD FILL_PED_COMP_DATA_M_FM_BERD(eItem, iDLCHash) BREAK // Accessories CASE COMP_TYPE_TEETH FILL_PED_COMP_DATA_M_FM_TEETH(eItem, iDLCHash) BREAK // Used to display crew logos CASE COMP_TYPE_DECL FILL_PED_COMP_DATA_M_FM_DECL(eItem, iDLCHash) BREAK CASE COMP_TYPE_PROPS FILL_PED_COMP_DATA_M_FM_PROPS(eItem, iDLCHash) BREAK CASE COMP_TYPE_OUTFIT FILL_PED_COMP_DATA_M_FM_OUTFIT(eItem, iDLCHash) BREAK CASE COMP_TYPE_HAND FILL_PED_COMP_DATA_M_FM_HAND(eItem, iDLCHash) BREAK CASE COMP_TYPE_HEAD FILL_PED_COMP_DATA_M_FM_HEAD(eItem, iDLCHash) BREAK #IF USE_TU_CHANGES CASE COMP_TYPE_PROPGROUP FILL_PED_COMP_DATA_FMM_PROPGROUP(eItem) BREAK #ENDIF ENDSWITCH // TEMP - remove once Kevin has unlocks covered. // IF eType != COMP_TYPE_HAIR // SET_BIT(g_sTempCompData[0].iProperties, PED_COMPONENT_AVAILABLE_BIT) // ENDIF ENDPROC // ---------FREE MODE- FEMALE ------------------------------------------------------------- /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_HAIR(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAIR SWITCH eItem CASE HAIR_FMF_0_0 iDraw = 0 iTex = 0 cost = 500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[0])) BREAK CASE HAIR_FMF_1_0 iDraw = 1 iTex = 0 cost = 500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[1])) BREAK CASE HAIR_FMF_1_1 iDraw = 1 iTex = 1 cost = 495 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[2])) BREAK CASE HAIR_FMF_1_2 iDraw = 1 iTex = 2 cost = 490 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[3])) BREAK CASE HAIR_FMF_1_3 iDraw = 1 iTex = 3 cost = 485 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[4])) BREAK CASE HAIR_FMF_1_4 iDraw = 1 iTex = 4 cost = 480 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[5])) BREAK CASE HAIR_FMF_1_5 iDraw = 1 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_2_0 iDraw = 2 iTex = 0 cost = 440 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[6])) BREAK CASE HAIR_FMF_2_1 iDraw = 2 iTex = 1 cost = 435 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[7])) BREAK CASE HAIR_FMF_2_2 iDraw = 2 iTex = 2 cost = 430 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[8])) BREAK CASE HAIR_FMF_2_3 iDraw = 2 iTex = 3 cost = 425 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[9])) BREAK CASE HAIR_FMF_2_4 iDraw = 2 iTex = 4 cost = 420 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[10])) BREAK CASE HAIR_FMF_2_5 iDraw = 2 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_3_0 iDraw = 3 iTex = 0 cost = 190 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[11])) BREAK CASE HAIR_FMF_3_1 iDraw = 3 iTex = 1 cost = 185 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[12])) BREAK CASE HAIR_FMF_3_2 iDraw = 3 iTex = 2 cost = 180 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[13])) BREAK CASE HAIR_FMF_3_3 iDraw = 3 iTex = 3 cost = 175 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[14])) BREAK CASE HAIR_FMF_3_4 iDraw = 3 iTex = 4 cost = 170 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[15])) BREAK CASE HAIR_FMF_4_0 iDraw = 4 iTex = 0 cost = 295 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[16])) BREAK CASE HAIR_FMF_4_1 iDraw = 4 iTex = 1 cost = 290 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[17])) BREAK CASE HAIR_FMF_4_2 iDraw = 4 iTex = 2 cost = 285 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[18])) BREAK CASE HAIR_FMF_4_3 iDraw = 4 iTex = 3 cost = 280 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[19])) BREAK CASE HAIR_FMF_4_4 iDraw = 4 iTex = 4 cost = 275 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[20])) BREAK CASE HAIR_FMF_4_5 iDraw = 4 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_5_0 iDraw = 5 iTex = 0 cost = 2000 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[21])) BREAK CASE HAIR_FMF_5_1 iDraw = 5 iTex = 1 cost = 1995 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[22])) BREAK CASE HAIR_FMF_5_2 iDraw = 5 iTex = 2 cost = 1990 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[23])) BREAK CASE HAIR_FMF_5_3 iDraw = 5 iTex = 3 cost = 1985 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[24])) BREAK CASE HAIR_FMF_5_4 iDraw = 5 iTex = 4 cost = 1980 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[25])) BREAK CASE HAIR_FMF_5_5 iDraw = 5 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_6_0 iDraw = 6 iTex = 0 cost = 1150 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[26])) BREAK CASE HAIR_FMF_6_1 iDraw = 6 iTex = 1 cost = 1145 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[27])) BREAK CASE HAIR_FMF_6_2 iDraw = 6 iTex = 2 cost = 1140 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[28])) BREAK CASE HAIR_FMF_6_3 iDraw = 6 iTex = 3 cost = 1135 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[29])) BREAK CASE HAIR_FMF_6_4 iDraw = 6 iTex = 4 cost = 1130 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[30])) BREAK CASE HAIR_FMF_7_0 iDraw = 7 iTex = 0 cost = 550 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[31])) BREAK CASE HAIR_FMF_7_1 iDraw = 7 iTex = 1 cost = 545 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[32])) BREAK CASE HAIR_FMF_7_2 iDraw = 7 iTex = 2 cost = 540 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[33])) BREAK CASE HAIR_FMF_7_3 iDraw = 7 iTex = 3 cost = 535 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[34])) BREAK CASE HAIR_FMF_7_4 iDraw = 7 iTex = 4 cost = 530 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[35])) BREAK CASE HAIR_FMF_7_5 iDraw = 7 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_8_0 iDraw = 8 iTex = 0 cost = 580 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[36])) BREAK CASE HAIR_FMF_8_1 iDraw = 8 iTex = 1 cost = 575 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[37])) BREAK CASE HAIR_FMF_8_2 iDraw = 8 iTex = 2 cost = 570 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[38])) BREAK CASE HAIR_FMF_8_3 iDraw = 8 iTex = 3 cost = 565 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[39])) BREAK CASE HAIR_FMF_8_4 iDraw = 8 iTex = 4 cost = 560 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[40])) BREAK CASE HAIR_FMF_8_5 iDraw = 8 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_9_0 iDraw = 9 iTex = 0 cost = 1100 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[41])) BREAK CASE HAIR_FMF_9_1 iDraw = 9 iTex = 1 cost = 1095 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[42])) BREAK CASE HAIR_FMF_9_2 iDraw = 9 iTex = 2 cost = 1090 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[43])) BREAK CASE HAIR_FMF_9_3 iDraw = 9 iTex = 3 cost = 1085 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[44])) BREAK CASE HAIR_FMF_9_4 iDraw = 9 iTex = 4 cost = 1080 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[45])) BREAK CASE HAIR_FMF_9_5 iDraw = 9 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_10_0 iDraw = 10 iTex = 0 cost = 520 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[46])) BREAK CASE HAIR_FMF_10_1 iDraw = 10 iTex = 1 cost = 515 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[47])) BREAK CASE HAIR_FMF_10_2 iDraw = 10 iTex = 2 cost = 510 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[48])) BREAK CASE HAIR_FMF_10_3 iDraw = 10 iTex = 3 cost = 505 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[49])) BREAK CASE HAIR_FMF_10_4 iDraw = 10 iTex = 4 cost = 500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[50])) BREAK CASE HAIR_FMF_10_5 iDraw = 10 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_10_6 iDraw = 10 iTex = 6 cost = 0 BREAK CASE HAIR_FMF_11_0 iDraw = 11 iTex = 0 cost = 395 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[51])) BREAK CASE HAIR_FMF_11_1 iDraw = 11 iTex = 1 cost = 390 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[52])) BREAK CASE HAIR_FMF_11_2 iDraw = 11 iTex = 2 cost = 385 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[53])) BREAK CASE HAIR_FMF_11_3 iDraw = 11 iTex = 3 cost = 380 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[54])) BREAK CASE HAIR_FMF_11_4 iDraw = 11 iTex = 4 cost = 375 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[55])) BREAK CASE HAIR_FMF_11_5 iDraw = 11 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_11_6 iDraw = 11 iTex = 6 cost = 0 BREAK CASE HAIR_FMF_12_0 iDraw = 12 iTex = 0 cost = 1050 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[56])) BREAK CASE HAIR_FMF_12_1 iDraw = 12 iTex = 1 cost = 1045 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[57])) BREAK CASE HAIR_FMF_12_2 iDraw = 12 iTex = 2 cost = 1040 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[58])) BREAK CASE HAIR_FMF_12_3 iDraw = 12 iTex = 3 cost = 1035 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[59])) BREAK CASE HAIR_FMF_12_4 iDraw = 12 iTex = 4 cost = 1030 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[60])) BREAK CASE HAIR_FMF_12_5 iDraw = 12 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_13_0 iDraw = 13 iTex = 0 cost = 1200 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[61])) BREAK CASE HAIR_FMF_13_1 iDraw = 13 iTex = 1 cost = 1195 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[62])) BREAK CASE HAIR_FMF_13_2 iDraw = 13 iTex = 2 cost = 1190 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[63])) BREAK CASE HAIR_FMF_13_3 iDraw = 13 iTex = 3 cost = 1185 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[64])) BREAK CASE HAIR_FMF_13_4 iDraw = 13 iTex = 4 cost = 1180 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[65])) BREAK CASE HAIR_FMF_13_5 iDraw = 13 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_14_0 iDraw = 14 iTex = 0 cost = 475 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[66])) BREAK CASE HAIR_FMF_14_1 iDraw = 14 iTex = 1 cost = 470 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[67])) BREAK CASE HAIR_FMF_14_2 iDraw = 14 iTex = 2 cost = 465 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[68])) BREAK CASE HAIR_FMF_14_3 iDraw = 14 iTex = 3 cost = 460 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[69])) BREAK CASE HAIR_FMF_14_4 iDraw = 14 iTex = 4 cost = 455 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[70])) BREAK CASE HAIR_FMF_14_5 iDraw = 14 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_15_0 iDraw = 15 iTex = 0 cost = 950 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[71])) BREAK CASE HAIR_FMF_15_1 iDraw = 15 iTex = 1 cost = 945 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[72])) BREAK CASE HAIR_FMF_15_2 iDraw = 15 iTex = 2 cost = 940 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[73])) BREAK CASE HAIR_FMF_15_3 iDraw = 15 iTex = 3 cost = 935 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[74])) BREAK CASE HAIR_FMF_15_4 iDraw = 15 iTex = 4 cost = 930 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fhaircut_female_expenditure_tunable[75])) BREAK CASE HAIR_FMF_15_5 iDraw = 15 iTex = 5 cost = 0 BREAK CASE HAIR_FMF_15_6 iDraw = 15 iTex = 6 cost = 0 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, HAIR_FMF_DLC, iDLCHash) EXIT BREAK ENDSWITCH tlLabel = "H_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_JBIB(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_JBIB SWITCH eItem CASE JBIB_FMF_0_0 iDraw = 0 iTex = 0 cost = 250 BREAK CASE JBIB_FMF_0_1 iDraw = 0 iTex = 1 cost = 225 BREAK CASE JBIB_FMF_0_2 iDraw = 0 iTex = 2 cost = 50 BREAK CASE JBIB_FMF_0_3 iDraw = 0 iTex = 3 cost = 40 BREAK CASE JBIB_FMF_0_4 iDraw = 0 iTex = 4 cost = 40 BREAK CASE JBIB_FMF_0_5 iDraw = 0 iTex = 5 cost = 40 BREAK CASE JBIB_FMF_0_6 iDraw = 0 iTex = 6 cost = 40 BREAK CASE JBIB_FMF_0_7 iDraw = 0 iTex = 7 cost = 45 BREAK CASE JBIB_FMF_0_8 iDraw = 0 iTex = 8 cost = 40 BREAK CASE JBIB_FMF_0_9 iDraw = 0 iTex = 9 cost = 40 BREAK CASE JBIB_FMF_0_10 iDraw = 0 iTex = 10 cost = 135 BREAK CASE JBIB_FMF_0_11 iDraw = 0 iTex = 11 cost = 60 BREAK CASE JBIB_FMF_0_12 iDraw = 0 iTex = 12 cost = 220 BREAK CASE JBIB_FMF_0_13 iDraw = 0 iTex = 13 cost = 45 BREAK CASE JBIB_FMF_0_14 iDraw = 0 iTex = 14 cost = 45 BREAK CASE JBIB_FMF_0_15 iDraw = 0 iTex = 15 cost = 125 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMF_1_0 iDraw = 1 iTex = 0 cost = 390 BREAK CASE JBIB_FMF_1_1 iDraw = 1 iTex = 1 cost = 230 BREAK CASE JBIB_FMF_1_2 iDraw = 1 iTex = 2 cost = 355 BREAK CASE JBIB_FMF_1_3 iDraw = 1 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_1_4 iDraw = 1 iTex = 4 cost = 5000 BREAK CASE JBIB_FMF_1_5 iDraw = 1 iTex = 5 cost = 2725 BREAK CASE JBIB_FMF_1_6 iDraw = 1 iTex = 6 cost = 3265 BREAK CASE JBIB_FMF_1_7 iDraw = 1 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_1_8 iDraw = 1 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_1_9 iDraw = 1 iTex = 9 cost = 3625 BREAK CASE JBIB_FMF_1_10 iDraw = 1 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_1_11 iDraw = 1 iTex = 11 cost = 4220 BREAK CASE JBIB_FMF_1_12 iDraw = 1 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_1_13 iDraw = 1 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_1_14 iDraw = 1 iTex = 14 cost = 310 BREAK CASE JBIB_FMF_1_15 iDraw = 1 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_2_0 iDraw = 2 iTex = 0 cost = 45 BREAK CASE JBIB_FMF_2_1 iDraw = 2 iTex = 1 cost = 210 BREAK CASE JBIB_FMF_2_2 iDraw = 2 iTex = 2 cost = 75 BREAK CASE JBIB_FMF_2_3 iDraw = 2 iTex = 3 cost = 50 BREAK CASE JBIB_FMF_2_4 iDraw = 2 iTex = 4 cost = 60 BREAK CASE JBIB_FMF_2_5 iDraw = 2 iTex = 5 cost = 50 BREAK CASE JBIB_FMF_2_6 iDraw = 2 iTex = 6 cost = 295 BREAK CASE JBIB_FMF_2_7 iDraw = 2 iTex = 7 cost = 80 BREAK CASE JBIB_FMF_2_8 iDraw = 2 iTex = 8 cost = 75 BREAK CASE JBIB_FMF_2_9 iDraw = 2 iTex = 9 cost = 2250 BREAK CASE JBIB_FMF_2_10 iDraw = 2 iTex = 10 cost = 275 BREAK CASE JBIB_FMF_2_11 iDraw = 2 iTex = 11 cost = 445 BREAK CASE JBIB_FMF_2_12 iDraw = 2 iTex = 12 cost = 50 BREAK CASE JBIB_FMF_2_13 iDraw = 2 iTex = 13 cost = 40 BREAK CASE JBIB_FMF_2_14 iDraw = 2 iTex = 14 cost = 45 BREAK CASE JBIB_FMF_2_15 iDraw = 2 iTex = 15 cost = 470 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMF_3_0 iDraw = 3 iTex = 0 cost = 95 BREAK CASE JBIB_FMF_3_1 iDraw = 3 iTex = 1 cost = 95 BREAK CASE JBIB_FMF_3_2 iDraw = 3 iTex = 2 cost = 360 BREAK CASE JBIB_FMF_3_3 iDraw = 3 iTex = 3 cost = 100 BREAK CASE JBIB_FMF_3_4 iDraw = 3 iTex = 4 cost = 60 BREAK CASE JBIB_FMF_3_5 iDraw = 3 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_3_6 iDraw = 3 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_3_7 iDraw = 3 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_3_8 iDraw = 3 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_3_9 iDraw = 3 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_3_10 iDraw = 3 iTex = 10 cost = 295 BREAK CASE JBIB_FMF_3_11 iDraw = 3 iTex = 11 cost = 460 BREAK CASE JBIB_FMF_3_12 iDraw = 3 iTex = 12 cost = 1980 BREAK CASE JBIB_FMF_3_13 iDraw = 3 iTex = 13 cost = 2110 BREAK CASE JBIB_FMF_3_14 iDraw = 3 iTex = 14 cost = 95 BREAK CASE JBIB_FMF_3_15 iDraw = 3 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_4_0 iDraw = 4 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_1 iDraw = 4 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_2 iDraw = 4 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_3 iDraw = 4 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_4 iDraw = 4 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_6 iDraw = 4 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_7 iDraw = 4 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_8 iDraw = 4 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_9 iDraw = 4 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_10 iDraw = 4 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_11 iDraw = 4 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_12 iDraw = 4 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_4_13 iDraw = 4 iTex = 13 cost = 40 BREAK CASE JBIB_FMF_4_14 iDraw = 4 iTex = 14 cost = 40 BREAK CASE JBIB_FMF_4_15 iDraw = 4 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_5_0 iDraw = 5 iTex = 0 cost = 45 BREAK CASE JBIB_FMF_5_1 iDraw = 5 iTex = 1 cost = 60 BREAK CASE JBIB_FMF_5_2 iDraw = 5 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_3 iDraw = 5 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_4 iDraw = 5 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_5 iDraw = 5 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_6 iDraw = 5 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_7 iDraw = 5 iTex = 7 cost = 375 BREAK CASE JBIB_FMF_5_8 iDraw = 5 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_9 iDraw = 5 iTex = 9 cost = 90 BREAK CASE JBIB_FMF_5_10 iDraw = 5 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_11 iDraw = 5 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_12 iDraw = 5 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_13 iDraw = 5 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_14 iDraw = 5 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_5_15 iDraw = 5 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_6_0 iDraw = 6 iTex = 0 cost = 900 BREAK CASE JBIB_FMF_6_1 iDraw = 6 iTex = 1 cost = 1000 BREAK CASE JBIB_FMF_6_2 iDraw = 6 iTex = 2 cost = 1050 BREAK CASE JBIB_FMF_6_3 iDraw = 6 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_4 iDraw = 6 iTex = 4 cost = 1000 BREAK CASE JBIB_FMF_6_5 iDraw = 6 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_6 iDraw = 6 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_7 iDraw = 6 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_8 iDraw = 6 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_9 iDraw = 6 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_10 iDraw = 6 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_11 iDraw = 6 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_12 iDraw = 6 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_13 iDraw = 6 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_14 iDraw = 6 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_6_15 iDraw = 6 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_7_0 iDraw = 7 iTex = 0 cost = 2975 BREAK CASE JBIB_FMF_7_1 iDraw = 7 iTex = 1 cost = 1100 BREAK CASE JBIB_FMF_7_2 iDraw = 7 iTex = 2 cost = 1825 BREAK CASE JBIB_FMF_7_3 iDraw = 7 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_4 iDraw = 7 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_5 iDraw = 7 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_6 iDraw = 7 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_7 iDraw = 7 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_8 iDraw = 7 iTex = 8 cost = 1750 BREAK CASE JBIB_FMF_7_9 iDraw = 7 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_10 iDraw = 7 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_11 iDraw = 7 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_12 iDraw = 7 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_13 iDraw = 7 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_14 iDraw = 7 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_7_15 iDraw = 7 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_8_0 iDraw = 8 iTex = 0 cost = 1025 BREAK CASE JBIB_FMF_8_1 iDraw = 8 iTex = 1 cost = 1075 BREAK CASE JBIB_FMF_8_2 iDraw = 8 iTex = 2 cost = 2805 BREAK CASE JBIB_FMF_8_3 iDraw = 8 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_4 iDraw = 8 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_5 iDraw = 8 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_6 iDraw = 8 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_7 iDraw = 8 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_8 iDraw = 8 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_9 iDraw = 8 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_10 iDraw = 8 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_11 iDraw = 8 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_12 iDraw = 8 iTex = 12 cost = 2250 BREAK CASE JBIB_FMF_8_13 iDraw = 8 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_14 iDraw = 8 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_8_15 iDraw = 8 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_9_0 iDraw = 9 iTex = 0 cost = 495 BREAK CASE JBIB_FMF_9_1 iDraw = 9 iTex = 1 cost = 95 BREAK CASE JBIB_FMF_9_2 iDraw = 9 iTex = 2 cost = 95 BREAK CASE JBIB_FMF_9_3 iDraw = 9 iTex = 3 cost = 525 BREAK CASE JBIB_FMF_9_4 iDraw = 9 iTex = 4 cost = 100 BREAK CASE JBIB_FMF_9_5 iDraw = 9 iTex = 5 cost = 110 BREAK CASE JBIB_FMF_9_6 iDraw = 9 iTex = 6 cost = 100 BREAK CASE JBIB_FMF_9_7 iDraw = 9 iTex = 7 cost = 110 BREAK CASE JBIB_FMF_9_8 iDraw = 9 iTex = 8 cost = 130 BREAK CASE JBIB_FMF_9_9 iDraw = 9 iTex = 9 cost = 560 BREAK CASE JBIB_FMF_9_10 iDraw = 9 iTex = 10 cost = 295 BREAK CASE JBIB_FMF_9_11 iDraw = 9 iTex = 11 cost = 975 BREAK CASE JBIB_FMF_9_12 iDraw = 9 iTex = 12 cost = 160 BREAK CASE JBIB_FMF_9_13 iDraw = 9 iTex = 13 cost = 100 BREAK CASE JBIB_FMF_9_14 iDraw = 9 iTex = 14 cost = 1700 BREAK CASE JBIB_FMF_9_15 iDraw = 9 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_10_0 iDraw = 10 iTex = 0 cost = 380 BREAK CASE JBIB_FMF_10_1 iDraw = 10 iTex = 1 cost = 95 BREAK CASE JBIB_FMF_10_2 iDraw = 10 iTex = 2 cost = 95 BREAK CASE JBIB_FMF_10_3 iDraw = 10 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_7 iDraw = 10 iTex = 7 cost = 110 BREAK CASE JBIB_FMF_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_10 iDraw = 10 iTex = 10 cost = 95 BREAK CASE JBIB_FMF_10_11 iDraw = 10 iTex = 11 cost = 90 BREAK CASE JBIB_FMF_10_12 iDraw = 10 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_13 iDraw = 10 iTex = 13 cost = 85 BREAK CASE JBIB_FMF_10_14 iDraw = 10 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_10_15 iDraw = 10 iTex = 15 cost = 215 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMF_11_0 iDraw = 11 iTex = 0 cost = 90 BREAK CASE JBIB_FMF_11_1 iDraw = 11 iTex = 1 cost = 95 BREAK CASE JBIB_FMF_11_2 iDraw = 11 iTex = 2 cost = 95 BREAK CASE JBIB_FMF_11_3 iDraw = 11 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_4 iDraw = 11 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_5 iDraw = 11 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_6 iDraw = 11 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_7 iDraw = 11 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_8 iDraw = 11 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_9 iDraw = 11 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_10 iDraw = 11 iTex = 10 cost = 150 BREAK CASE JBIB_FMF_11_11 iDraw = 11 iTex = 11 cost = 65 BREAK CASE JBIB_FMF_11_12 iDraw = 11 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_13 iDraw = 11 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_14 iDraw = 11 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_11_15 iDraw = 11 iTex = 15 cost = 145 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMF_12_0 iDraw = 12 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_1 iDraw = 12 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_2 iDraw = 12 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_3 iDraw = 12 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_4 iDraw = 12 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_5 iDraw = 12 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_6 iDraw = 12 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_7 iDraw = 12 iTex = 7 cost = 1560 BREAK CASE JBIB_FMF_12_8 iDraw = 12 iTex = 8 cost = 195 BREAK CASE JBIB_FMF_12_9 iDraw = 12 iTex = 9 cost = 200 BREAK CASE JBIB_FMF_12_10 iDraw = 12 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_11 iDraw = 12 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_12 iDraw = 12 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_13 iDraw = 12 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_14 iDraw = 12 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_12_15 iDraw = 12 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH SWITCH eItem CASE JBIB_FMF_13_0 iDraw = 13 iTex = 0 cost = 975 BREAK CASE JBIB_FMF_13_1 iDraw = 13 iTex = 1 cost = 2670 BREAK CASE JBIB_FMF_13_2 iDraw = 13 iTex = 2 cost = 480 BREAK CASE JBIB_FMF_13_3 iDraw = 13 iTex = 3 cost = 400 BREAK CASE JBIB_FMF_13_4 iDraw = 13 iTex = 4 cost = 2500 BREAK CASE JBIB_FMF_13_5 iDraw = 13 iTex = 5 cost = 2060 BREAK CASE JBIB_FMF_13_6 iDraw = 13 iTex = 6 cost = 2620 BREAK CASE JBIB_FMF_13_7 iDraw = 13 iTex = 7 cost = 475 BREAK CASE JBIB_FMF_13_8 iDraw = 13 iTex = 8 cost = 490 BREAK CASE JBIB_FMF_13_9 iDraw = 13 iTex = 9 cost = 2280 BREAK CASE JBIB_FMF_13_10 iDraw = 13 iTex = 10 cost = 485 BREAK CASE JBIB_FMF_13_11 iDraw = 13 iTex = 11 cost = 2390 BREAK CASE JBIB_FMF_13_12 iDraw = 13 iTex = 12 cost = 2610 BREAK CASE JBIB_FMF_13_13 iDraw = 13 iTex = 13 cost = 1450 BREAK CASE JBIB_FMF_13_14 iDraw = 13 iTex = 14 cost = 2720 BREAK CASE JBIB_FMF_13_15 iDraw = 13 iTex = 15 cost = 4995 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMF_14_0 iDraw = 14 iTex = 0 cost = 265 BREAK CASE JBIB_FMF_14_1 iDraw = 14 iTex = 1 cost = 385 BREAK CASE JBIB_FMF_14_2 iDraw = 14 iTex = 2 cost = 345 BREAK CASE JBIB_FMF_14_3 iDraw = 14 iTex = 3 cost = 330 BREAK CASE JBIB_FMF_14_4 iDraw = 14 iTex = 4 cost = 430 BREAK CASE JBIB_FMF_14_5 iDraw = 14 iTex = 5 cost = 375 BREAK CASE JBIB_FMF_14_6 iDraw = 14 iTex = 6 cost = 375 BREAK CASE JBIB_FMF_14_7 iDraw = 14 iTex = 7 cost = 295 BREAK CASE JBIB_FMF_14_8 iDraw = 14 iTex = 8 cost = 360 BREAK CASE JBIB_FMF_14_9 iDraw = 14 iTex = 9 cost = 325 BREAK CASE JBIB_FMF_14_10 iDraw = 14 iTex = 10 cost = 340 BREAK CASE JBIB_FMF_14_11 iDraw = 14 iTex = 11 cost = 435 BREAK CASE JBIB_FMF_14_12 iDraw = 14 iTex = 12 cost = 300 BREAK CASE JBIB_FMF_14_13 iDraw = 14 iTex = 13 cost = 315 BREAK CASE JBIB_FMF_14_14 iDraw = 14 iTex = 14 cost = 415 BREAK CASE JBIB_FMF_14_15 iDraw = 14 iTex = 15 cost = 420 BREAK ENDSWITCH SWITCH eItem CASE JBIB_FMF_15_0 iDraw = 15 iTex = 0 cost = 325 BREAK CASE JBIB_FMF_15_1 iDraw = 15 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_2 iDraw = 15 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_3 iDraw = 15 iTex = 3 cost = 130 BREAK CASE JBIB_FMF_15_4 iDraw = 15 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_5 iDraw = 15 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_6 iDraw = 15 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_7 iDraw = 15 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_8 iDraw = 15 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_9 iDraw = 15 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_10 iDraw = 15 iTex = 10 cost = 450 BREAK CASE JBIB_FMF_15_11 iDraw = 15 iTex = 11 cost = 465 BREAK CASE JBIB_FMF_15_12 iDraw = 15 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_13 iDraw = 15 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_14 iDraw = 15 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE JBIB_FMF_15_15 iDraw = 15 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC ENDSWITCH tlLabel = "U_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex IF eItem = JBIB_FMF_0_4 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) tlLabel = "REW_RS" cost = ROUND((TO_FLOAT(1250) * g_sMPTunables.ftshirt_trans_mp_fm_rockstar_expenditure_tunable * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ELSE cost = ROUND((TO_FLOAT(40) * g_sMPTunables.fFemaleUppersDiscount[ENUM_TO_INT(JBIB_FMF_0_4)] * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ENDIF ELIF eItem = JBIB_FMF_0_7 //IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE) tlLabel = "REW_LSB" cost = ROUND((TO_FLOAT(450) * g_sMPTunables.ftshirt_trans_mp_fm_lsbelle_expenditure_tunable * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ELIF eItem = JBIB_FMF_0_9 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) tlLabel = "REW_REDSK" cost = ROUND((TO_FLOAT(500) * g_sMPTunables.ftshirt_trans_mp_fm_redskull_expenditure_tunable * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ELSE cost = ROUND((TO_FLOAT(40) * g_sMPTunables.fFemaleUppersDiscount[ENUM_TO_INT(JBIB_FMF_0_9)] * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ENDIF ELSE INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[i] * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ENDIF ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, HAIR_FMF_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= JBIB_FMF_DLC g_sTempCompData[0].iPedID = 4 // FMF0 FILL_PED_COMP_DATA_DLC(eType, eItem, JBIB_FMF_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_SPECIAL(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL SWITCH eItem CASE SPECIAL_FMF_0_0 tlLabel = "U_FMF_0_0" iDraw = 0 iTex = 0 cost = 250 BREAK CASE SPECIAL_FMF_0_1 tlLabel = "U_FMF_0_1" iDraw = 0 iTex = 1 cost = 225 BREAK CASE SPECIAL_FMF_0_2 tlLabel = "U_FMF_0_2" iDraw = 0 iTex = 2 cost = 50 BREAK CASE SPECIAL_FMF_0_3 tlLabel = "U_FMF_0_3" iDraw = 0 iTex = 3 cost = 40 BREAK CASE SPECIAL_FMF_0_4 tlLabel = "U_FMF_0_4" iDraw = 0 iTex = 4 cost = 40 BREAK CASE SPECIAL_FMF_0_5 tlLabel = "U_FMF_0_5" iDraw = 0 iTex = 5 cost = 40 BREAK CASE SPECIAL_FMF_0_6 tlLabel = "U_FMF_0_6" iDraw = 0 iTex = 6 cost = 40 BREAK CASE SPECIAL_FMF_0_7 tlLabel = "U_FMF_0_7" iDraw = 0 iTex = 7 cost = 45 BREAK CASE SPECIAL_FMF_0_8 tlLabel = "U_FMF_0_8" iDraw = 0 iTex = 8 cost = 40 BREAK CASE SPECIAL_FMF_0_9 tlLabel = "U_FMF_0_9" iDraw = 0 iTex = 9 cost = 40 BREAK CASE SPECIAL_FMF_0_10 tlLabel = "U_FMF_0_10" iDraw = 0 iTex = 10 cost = 135 BREAK CASE SPECIAL_FMF_0_11 tlLabel = "U_FMF_0_11" iDraw = 0 iTex = 11 cost = 60 BREAK CASE SPECIAL_FMF_0_12 tlLabel = "U_FMF_0_12" iDraw = 0 iTex = 12 cost = 220 BREAK CASE SPECIAL_FMF_0_13 tlLabel = "U_FMF_0_13" iDraw = 0 iTex = 13 cost = 45 BREAK CASE SPECIAL_FMF_0_14 tlLabel = "U_FMF_0_14" iDraw = 0 iTex = 14 cost = 45 BREAK CASE SPECIAL_FMF_0_15 tlLabel = "U_FMF_0_15" iDraw = 0 iTex = 15 cost = 125 BREAK CASE SPECIAL_FMF_1_0 tlLabel = "U_FMF_0_0" iDraw = 1 iTex = 0 cost = 250 BREAK CASE SPECIAL_FMF_1_1 tlLabel = "U_FMF_0_1" iDraw = 1 iTex = 1 cost = 60 BREAK CASE SPECIAL_FMF_1_2 tlLabel = "U_FMF_0_2" iDraw = 1 iTex = 2 cost = 50 BREAK CASE SPECIAL_FMF_1_3 tlLabel = "U_FMF_0_3" iDraw = 1 iTex = 3 cost = 40 BREAK CASE SPECIAL_FMF_1_4 tlLabel = "U_FMF_0_4" iDraw = 1 iTex = 4 cost = 40 BREAK CASE SPECIAL_FMF_1_5 tlLabel = "U_FMF_0_5" iDraw = 1 iTex = 5 cost = 40 BREAK CASE SPECIAL_FMF_1_6 tlLabel = "U_FMF_0_6" iDraw = 1 iTex = 6 cost = 40 BREAK CASE SPECIAL_FMF_1_7 tlLabel = "U_FMF_0_7" iDraw = 1 iTex = 7 cost = 45 BREAK CASE SPECIAL_FMF_1_8 tlLabel = "U_FMF_0_8" iDraw = 1 iTex = 8 cost = 40 BREAK CASE SPECIAL_FMF_1_9 tlLabel = "U_FMF_0_9" iDraw = 1 iTex = 9 cost = 40 BREAK CASE SPECIAL_FMF_1_10 tlLabel = "U_FMF_0_10" iDraw = 1 iTex = 10 cost = 135 BREAK CASE SPECIAL_FMF_1_11 tlLabel = "U_FMF_0_11" iDraw = 1 iTex = 11 cost = 60 BREAK CASE SPECIAL_FMF_1_12 tlLabel = "U_FMF_0_12" iDraw = 1 iTex = 12 cost = 220 BREAK CASE SPECIAL_FMF_1_13 tlLabel = "U_FMF_0_13" iDraw = 1 iTex = 13 cost = 45 BREAK CASE SPECIAL_FMF_1_14 tlLabel = "U_FMF_0_14" iDraw = 1 iTex = 14 cost = 45 BREAK CASE SPECIAL_FMF_1_15 tlLabel = "U_FMF_0_15" iDraw = 1 iTex = 15 cost = 125 BREAK CASE SPECIAL_FMF_2_0 iDraw = 2 iTex = 0 BREAK CASE SPECIAL_FMF_3_0 iDraw = 3 iTex = 0 BREAK CASE SPECIAL_FMF_4_0 tlLabel = "U_FMF_4_0" iDraw = 4 iTex = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_1 tlLabel = "U_FMF_4_1" iDraw = 4 iTex = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_2 tlLabel = "U_FMF_4_2" iDraw = 4 iTex = 2 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_3 tlLabel = "U_FMF_4_3" iDraw = 4 iTex = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_4 tlLabel = "U_FMF_4_4" iDraw = 4 iTex = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_5 tlLabel = "U_FMF_4_5" iDraw = 4 iTex = 5 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_6 tlLabel = "U_FMF_4_6" iDraw = 4 iTex = 6 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_7 tlLabel = "U_FMF_4_7" iDraw = 4 iTex = 7 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_8 tlLabel = "U_FMF_4_8" iDraw = 4 iTex = 8 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_9 tlLabel = "U_FMF_4_9" iDraw = 4 iTex = 9 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_10 tlLabel = "U_FMF_4_10" iDraw = 4 iTex = 10 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_11 tlLabel = "U_FMF_4_11" iDraw = 4 iTex = 11 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_12 tlLabel = "U_FMF_4_12" iDraw = 4 iTex = 12 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_4_13 tlLabel = "U_FMF_4_13" iDraw = 4 iTex = 13 cost = 40 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[77])) BREAK CASE SPECIAL_FMF_4_14 tlLabel = "U_FMF_4_14" iDraw = 4 iTex = 14 cost = 40 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[78])) BREAK CASE SPECIAL_FMF_4_15 tlLabel = "U_FMF_4_15" iDraw = 4 iTex = 15 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_0 tlLabel = "U_FMF_5_0" iDraw = 5 iTex = 0 cost = 45 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[80])) BREAK CASE SPECIAL_FMF_5_1 tlLabel = "U_FMF_5_1" iDraw = 5 iTex = 1 cost = 60 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[81])) BREAK CASE SPECIAL_FMF_5_2 tlLabel = "U_FMF_5_2" iDraw = 5 iTex = 2 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_3 tlLabel = "U_FMF_5_3" iDraw = 5 iTex = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_4 tlLabel = "U_FMF_5_4" iDraw = 5 iTex = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_5 tlLabel = "U_FMF_5_5" iDraw = 5 iTex = 5 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_6 tlLabel = "U_FMF_5_6" iDraw = 5 iTex = 6 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_7 tlLabel = "U_FMF_5_7" iDraw = 5 iTex = 7 cost = 375 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[87])) BREAK CASE SPECIAL_FMF_5_8 tlLabel = "U_FMF_5_8" iDraw = 5 iTex = 8 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_9 tlLabel = "U_FMF_5_9" iDraw = 5 iTex = 9 cost = 90 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[89])) BREAK CASE SPECIAL_FMF_5_10 tlLabel = "U_FMF_5_10" iDraw = 5 iTex = 10 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_11 tlLabel = "U_FMF_5_11" iDraw = 5 iTex = 11 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_12 tlLabel = "U_FMF_5_12" iDraw = 5 iTex = 12 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_13 tlLabel = "U_FMF_5_13" iDraw = 5 iTex = 13 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_14 tlLabel = "U_FMF_5_14" iDraw = 5 iTex = 14 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_5_15 tlLabel = "U_FMF_5_15" iDraw = 5 iTex = 15 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_6_0 iDraw = 6 iTex = 0 BREAK CASE SPECIAL_FMF_7_0 iDraw = 7 iTex = 0 BREAK CASE SPECIAL_FMF_8_0 iDraw = 8 iTex = 0 BREAK CASE SPECIAL_FMF_9_0 iDraw = 9 iTex = 0 BREAK CASE SPECIAL_FMF_10_0 iDraw = 10 iTex = 0 BREAK CASE SPECIAL_FMF_11_0 tlLabel = "U_FMF_11_0" iDraw = 11 iTex = 0 cost = 90 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[176])) BREAK CASE SPECIAL_FMF_11_1 tlLabel = "U_FMF_11_1" iDraw = 11 iTex = 1 cost = 95 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[177])) BREAK CASE SPECIAL_FMF_11_2 tlLabel = "U_FMF_11_2" iDraw = 11 iTex = 2 cost = 95 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[178])) BREAK CASE SPECIAL_FMF_11_3 tlLabel = "U_FMF_11_3" iDraw = 11 iTex = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_4 tlLabel = "U_FMF_11_4" iDraw = 11 iTex = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_5 tlLabel = "U_FMF_11_5" iDraw = 11 iTex = 5 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_6 tlLabel = "U_FMF_11_6" iDraw = 11 iTex = 6 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_7 tlLabel = "U_FMF_11_7" iDraw = 11 iTex = 7 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_8 tlLabel = "U_FMF_11_8" iDraw = 11 iTex = 8 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_9 tlLabel = "U_FMF_11_9" iDraw = 11 iTex = 9 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_10 tlLabel = "U_FMF_11_10" iDraw = 11 iTex = 10 cost = 150 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[186])) BREAK CASE SPECIAL_FMF_11_11 tlLabel = "U_FMF_11_11" iDraw = 11 iTex = 11 cost = 65 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[187])) BREAK CASE SPECIAL_FMF_11_12 tlLabel = "U_FMF_11_12" iDraw = 11 iTex = 12 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_13 tlLabel = "U_FMF_11_13" iDraw = 11 iTex = 13 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_14 tlLabel = "U_FMF_11_14" iDraw = 11 iTex = 14 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_11_15 tlLabel = "U_FMF_11_15" iDraw = 11 iTex = 15 cost = 145 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[191])) BREAK CASE SPECIAL_FMF_12_0 tlLabel = "U_FMF_12_0" iDraw = 12 iTex = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_1 tlLabel = "U_FMF_12_1" iDraw = 12 iTex = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_2 tlLabel = "U_FMF_12_2" iDraw = 12 iTex = 2 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_3 tlLabel = "U_FMF_12_3" iDraw = 12 iTex = 3 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_4 tlLabel = "U_FMF_12_4" iDraw = 12 iTex = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_5 tlLabel = "U_FMF_12_5" iDraw = 12 iTex = 5 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_6 tlLabel = "U_FMF_12_6" iDraw = 12 iTex = 6 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_7 tlLabel = "U_FMF_12_7" iDraw = 12 iTex = 7 cost = 1560 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[199])) BREAK CASE SPECIAL_FMF_12_8 tlLabel = "U_FMF_12_8" iDraw = 12 iTex = 8 cost = 195 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[200])) BREAK CASE SPECIAL_FMF_12_9 tlLabel = "U_FMF_12_9" iDraw = 12 iTex = 9 cost = 200 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[201])) BREAK CASE SPECIAL_FMF_12_10 tlLabel = "U_FMF_12_10" iDraw = 12 iTex = 10 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_11 tlLabel = "U_FMF_12_11" iDraw = 12 iTex = 11 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_12 tlLabel = "U_FMF_12_12" iDraw = 12 iTex = 12 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_13 tlLabel = "U_FMF_12_13" iDraw = 12 iTex = 13 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_14 tlLabel = "U_FMF_12_14" iDraw = 12 iTex = 14 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_12_15 tlLabel = "U_FMF_12_15" iDraw = 12 iTex = 15 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_13_0 tlLabel = "U_FMF_13_0" iDraw = 13 iTex = 0 cost = 975 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[208])) BREAK CASE SPECIAL_FMF_13_1 tlLabel = "U_FMF_13_1" iDraw = 13 iTex = 1 cost = 2670 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[209])) BREAK CASE SPECIAL_FMF_13_2 tlLabel = "U_FMF_13_2" iDraw = 13 iTex = 2 cost = 480 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[210])) BREAK CASE SPECIAL_FMF_13_3 tlLabel = "U_FMF_13_3" iDraw = 13 iTex = 3 cost = 400 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[211])) BREAK CASE SPECIAL_FMF_13_4 tlLabel = "U_FMF_13_4" iDraw = 13 iTex = 4 cost = 2500 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[212])) BREAK CASE SPECIAL_FMF_13_5 tlLabel = "U_FMF_13_5" iDraw = 13 iTex = 5 cost = 2060 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[213])) BREAK CASE SPECIAL_FMF_13_6 tlLabel = "U_FMF_13_6" iDraw = 13 iTex = 6 cost = 2620 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[214])) BREAK CASE SPECIAL_FMF_13_7 tlLabel = "U_FMF_13_7" iDraw = 13 iTex = 7 cost = 475 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[215])) BREAK CASE SPECIAL_FMF_13_8 tlLabel = "U_FMF_13_8" iDraw = 13 iTex = 8 cost = 490 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[216])) BREAK CASE SPECIAL_FMF_13_9 tlLabel = "U_FMF_13_9" iDraw = 13 iTex = 9 cost = 2280 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[217])) BREAK CASE SPECIAL_FMF_13_10 tlLabel = "U_FMF_13_10" iDraw = 13 iTex = 10 cost = 485 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[218])) BREAK CASE SPECIAL_FMF_13_11 tlLabel = "U_FMF_13_11" iDraw = 13 iTex = 11 cost = 2390 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[219])) BREAK CASE SPECIAL_FMF_13_12 tlLabel = "U_FMF_13_12" iDraw = 13 iTex = 12 cost = 2610 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[220])) BREAK CASE SPECIAL_FMF_13_13 tlLabel = "U_FMF_13_13" iDraw = 13 iTex = 13 cost = 1450 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[221])) BREAK CASE SPECIAL_FMF_13_14 tlLabel = "U_FMF_13_14" iDraw = 13 iTex = 14 cost = 2720 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[222])) BREAK CASE SPECIAL_FMF_13_15 tlLabel = "U_FMF_13_15" iDraw = 13 iTex = 15 cost = 4995 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[223])) BREAK CASE SPECIAL_FMF_14_0 iDraw = 14 iTex = 0 BREAK CASE SPECIAL_FMF_15_0 tlLabel = "U_FMF_15_0" iDraw = 15 iTex = 0 cost = 325 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[240])) BREAK CASE SPECIAL_FMF_15_1 tlLabel = "U_FMF_15_1" iDraw = 15 iTex = 1 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_2 tlLabel = "U_FMF_15_2" iDraw = 15 iTex = 2 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_3 tlLabel = "U_FMF_15_3" iDraw = 15 iTex = 3 cost = 130 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[243])) BREAK CASE SPECIAL_FMF_15_4 tlLabel = "U_FMF_15_4" iDraw = 15 iTex = 4 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_5 tlLabel = "U_FMF_15_5" iDraw = 15 iTex = 5 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_6 tlLabel = "U_FMF_15_6" iDraw = 15 iTex = 6 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_7 tlLabel = "U_FMF_15_7" iDraw = 15 iTex = 7 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_8 tlLabel = "U_FMF_15_8" iDraw = 15 iTex = 8 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_9 tlLabel = "U_FMF_15_9" iDraw = 15 iTex = 9 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_10 tlLabel = "U_FMF_15_10" iDraw = 15 iTex = 10 cost = 450 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[250])) BREAK CASE SPECIAL_FMF_15_11 tlLabel = "U_FMF_15_11" iDraw = 15 iTex = 11 cost = 465 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[251])) BREAK CASE SPECIAL_FMF_15_12 tlLabel = "U_FMF_15_12" iDraw = 15 iTex = 12 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_13 tlLabel = "U_FMF_15_13" iDraw = 15 iTex = 13 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_14 tlLabel = "U_FMF_15_14" iDraw = 15 iTex = 14 bOutfitOnly = TRUE BREAK // Moved to DLC CASE SPECIAL_FMF_15_15 tlLabel = "U_FMF_15_15" iDraw = 15 iTex = 15 bOutfitOnly = TRUE BREAK // Moved to DLC DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL_FMF_DLC, iDLCHash) #IF USE_TU_CHANGES IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_uppers_group_modifier)) ENDIF #ENDIF EXIT BREAK ENDSWITCH IF eItem = SPECIAL_FMF_0_4 OR eItem = SPECIAL_FMF_1_4 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) tlLabel = "REW_RS" cost = ROUND((TO_FLOAT(1250) * g_sMPTunables.ftshirt_trans_mp_fm_rockstar_expenditure_tunable)) ELSE cost = ROUND((TO_FLOAT(40) * g_sMPTunables.fFemaleUppersDiscount[ENUM_TO_INT(JBIB_FMF_0_4)])) ENDIF ELIF eItem = SPECIAL_FMF_0_7 OR eItem = SPECIAL_FMF_1_7 //IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE) tlLabel = "REW_LSB" cost = ROUND((TO_FLOAT(450) * g_sMPTunables.ftshirt_trans_mp_fm_lsbelle_expenditure_tunable)) ELIF eItem = SPECIAL_FMF_0_9 OR eItem = SPECIAL_FMF_1_9 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) tlLabel = "REW_REDSK" cost = ROUND((TO_FLOAT(500) * g_sMPTunables.ftshirt_trans_mp_fm_redskull_expenditure_tunable)) ELSE cost = ROUND((TO_FLOAT(40) * g_sMPTunables.fFemaleUppersDiscount[ENUM_TO_INT(JBIB_FMF_0_9)])) ENDIF ELSE IF eItem >= SPECIAL_FMF_0_0 AND eItem < SPECIAL_FMF_1_0 INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[i])) ENDIF ELIF eItem >= SPECIAL_FMF_1_0 AND eItem < SPECIAL_FMF_2_0 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(SPECIAL_FMF_1_0) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleUppersDiscount[i])) ENDIF ENDIF ENDIF cost = ROUND((TO_FLOAT(cost) * g_sMPTunableGroups.ffemale_uppers_group_modifier)) FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_SPECIAL2(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_SPECIAL2 SWITCH eItem CASE SPECIAL2_FMF_0_0 iDraw = 0 iTex = 0 BREAK CASE SPECIAL2_FMF_1_0 iDraw = 1 iTex = 0 BREAK CASE SPECIAL2_FMF_1_1 iDraw = 1 iTex = 1 BREAK CASE SPECIAL2_FMF_1_2 iDraw = 1 iTex = 2 BREAK CASE SPECIAL2_FMF_1_3 iDraw = 1 iTex = 3 BREAK CASE SPECIAL2_FMF_1_4 iDraw = 1 iTex = 4 BREAK CASE SPECIAL2_FMF_2_0 iDraw = 2 iTex = 0 BREAK CASE SPECIAL2_FMF_2_1 iDraw = 2 iTex = 1 BREAK CASE SPECIAL2_FMF_2_2 iDraw = 2 iTex = 2 BREAK CASE SPECIAL2_FMF_2_3 iDraw = 2 iTex = 3 BREAK CASE SPECIAL2_FMF_2_4 iDraw = 2 iTex = 4 BREAK CASE SPECIAL2_FMF_3_0 iDraw = 3 iTex = 0 BREAK CASE SPECIAL2_FMF_3_1 iDraw = 3 iTex = 1 BREAK CASE SPECIAL2_FMF_3_2 iDraw = 3 iTex = 2 BREAK CASE SPECIAL2_FMF_3_3 iDraw = 3 iTex = 3 BREAK CASE SPECIAL2_FMF_3_4 iDraw = 3 iTex = 4 BREAK CASE SPECIAL2_FMF_4_0 iDraw = 4 iTex = 0 BREAK CASE SPECIAL2_FMF_4_1 iDraw = 4 iTex = 1 BREAK CASE SPECIAL2_FMF_4_2 iDraw = 4 iTex = 2 BREAK CASE SPECIAL2_FMF_4_3 iDraw = 4 iTex = 3 BREAK CASE SPECIAL2_FMF_4_4 iDraw = 4 iTex = 4 BREAK CASE SPECIAL2_FMF_5_0 iDraw = 5 iTex = 0 BREAK CASE SPECIAL2_FMF_5_1 iDraw = 5 iTex = 1 BREAK CASE SPECIAL2_FMF_5_2 iDraw = 5 iTex = 2 BREAK CASE SPECIAL2_FMF_5_3 iDraw = 5 iTex = 3 BREAK CASE SPECIAL2_FMF_5_4 iDraw = 5 iTex = 4 BREAK CASE SPECIAL2_FMF_6_0 iDraw = 6 iTex = 0 BREAK CASE SPECIAL2_FMF_6_1 iDraw = 6 iTex = 1 BREAK CASE SPECIAL2_FMF_6_2 iDraw = 6 iTex = 2 BREAK CASE SPECIAL2_FMF_6_3 iDraw = 6 iTex = 3 BREAK CASE SPECIAL2_FMF_6_4 iDraw = 6 iTex = 4 BREAK CASE SPECIAL2_FMF_7_0 iDraw = 7 iTex = 0 BREAK CASE SPECIAL2_FMF_7_1 iDraw = 7 iTex = 1 BREAK CASE SPECIAL2_FMF_7_2 iDraw = 7 iTex = 2 BREAK CASE SPECIAL2_FMF_7_3 iDraw = 7 iTex = 3 BREAK CASE SPECIAL2_FMF_7_4 iDraw = 7 iTex = 4 BREAK ENDSWITCH #IF USE_TU_CHANGES IF eItem >= SPECIAL2_FMF_DLC g_sTempCompData[0].iPedID = 4 // FMF0 FILL_PED_COMP_DATA_DLC(eType, eItem, SPECIAL2_FMF_DLC, iDLCHash) EXIT ENDIF #ENDIF FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_TORSO(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TORSO SWITCH eItem CASE TORSO_FMF_0_0 iDraw = 0 iTex = 0 BREAK CASE TORSO_FMF_1_0 iDraw = 1 iTex = 0 BREAK CASE TORSO_FMF_2_0 iDraw = 2 iTex = 0 BREAK CASE TORSO_FMF_3_0 iDraw = 3 iTex = 0 BREAK CASE TORSO_FMF_4_0 iDraw = 4 iTex = 0 BREAK CASE TORSO_FMF_5_0 iDraw = 5 iTex = 0 BREAK CASE TORSO_FMF_6_0 iDraw = 6 iTex = 0 BREAK CASE TORSO_FMF_7_0 iDraw = 7 iTex = 0 BREAK CASE TORSO_FMF_8_0 iDraw = 8 iTex = 0 BREAK CASE TORSO_FMF_9_0 iDraw = 9 iTex = 0 BREAK CASE TORSO_FMF_10_0 iDraw = 10 iTex = 0 BREAK CASE TORSO_FMF_11_0 iDraw = 11 iTex = 0 BREAK CASE TORSO_FMF_12_0 iDraw = 12 iTex = 0 BREAK CASE TORSO_FMF_13_0 iDraw = 13 iTex = 0 BREAK CASE TORSO_FMF_14_0 iDraw = 14 iTex = 0 BREAK CASE TORSO_FMF_15_0 iDraw = 15 iTex = 0 BREAK ENDSWITCH #IF USE_TU_CHANGES IF eItem >= TORSO_FMF_DLC g_sTempCompData[0].iPedID = 4 // FMF0 FILL_PED_COMP_DATA_DLC(eType, eItem, TORSO_FMF_DLC, iDLCHash) EXIT ENDIF #ENDIF FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_LEGS(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_LEGS SWITCH eItem CASE LEGS_FMF_0_0 iDraw = 0 iTex = 0 cost = 270 BREAK CASE LEGS_FMF_0_1 iDraw = 0 iTex = 1 cost = 750 BREAK CASE LEGS_FMF_0_2 iDraw = 0 iTex = 2 cost = 450 BREAK CASE LEGS_FMF_0_3 iDraw = 0 iTex = 3 cost = 4875 BREAK CASE LEGS_FMF_0_4 iDraw = 0 iTex = 4 cost = 1760 BREAK CASE LEGS_FMF_0_5 iDraw = 0 iTex = 5 cost = 1090 BREAK CASE LEGS_FMF_0_6 iDraw = 0 iTex = 6 cost = 2465 BREAK CASE LEGS_FMF_0_7 iDraw = 0 iTex = 7 cost = 305 BREAK CASE LEGS_FMF_0_8 iDraw = 0 iTex = 8 cost = 290 BREAK CASE LEGS_FMF_0_9 iDraw = 0 iTex = 9 cost = 410 BREAK CASE LEGS_FMF_0_10 iDraw = 0 iTex = 10 cost = 255 BREAK CASE LEGS_FMF_0_11 iDraw = 0 iTex = 11 cost = 255 BREAK CASE LEGS_FMF_0_12 iDraw = 0 iTex = 12 cost = 405 BREAK CASE LEGS_FMF_0_13 iDraw = 0 iTex = 13 cost = 5000 BREAK CASE LEGS_FMF_0_14 iDraw = 0 iTex = 14 cost = 4480 BREAK CASE LEGS_FMF_0_15 iDraw = 0 iTex = 15 cost = 4335 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_1_0 iDraw = 1 iTex = 0 cost = 375 BREAK CASE LEGS_FMF_1_1 iDraw = 1 iTex = 1 cost = 265 BREAK CASE LEGS_FMF_1_2 iDraw = 1 iTex = 2 cost = 275 BREAK CASE LEGS_FMF_1_3 iDraw = 1 iTex = 3 cost = 280 BREAK CASE LEGS_FMF_1_4 iDraw = 1 iTex = 4 cost = 300 BREAK CASE LEGS_FMF_1_5 iDraw = 1 iTex = 5 cost = 265 BREAK CASE LEGS_FMF_1_6 iDraw = 1 iTex = 6 cost = 255 BREAK CASE LEGS_FMF_1_7 iDraw = 1 iTex = 7 cost = 250 BREAK CASE LEGS_FMF_1_8 iDraw = 1 iTex = 8 cost = 260 BREAK CASE LEGS_FMF_1_9 iDraw = 1 iTex = 9 cost = 250 BREAK CASE LEGS_FMF_1_10 iDraw = 1 iTex = 10 cost = 225 BREAK CASE LEGS_FMF_1_11 iDraw = 1 iTex = 11 cost = 230 BREAK CASE LEGS_FMF_1_12 iDraw = 1 iTex = 12 cost = 215 BREAK CASE LEGS_FMF_1_13 iDraw = 1 iTex = 13 cost = 650 BREAK CASE LEGS_FMF_1_14 iDraw = 1 iTex = 14 cost = 425 BREAK CASE LEGS_FMF_1_15 iDraw = 1 iTex = 15 cost = 345 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_2_0 iDraw = 2 iTex = 0 cost = 115 BREAK CASE LEGS_FMF_2_1 iDraw = 2 iTex = 1 cost = 110 BREAK CASE LEGS_FMF_2_2 iDraw = 2 iTex = 2 cost = 250 BREAK CASE LEGS_FMF_2_3 iDraw = 2 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_4 iDraw = 2 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_5 iDraw = 2 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_6 iDraw = 2 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_7 iDraw = 2 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_8 iDraw = 2 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_9 iDraw = 2 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_10 iDraw = 2 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_11 iDraw = 2 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_12 iDraw = 2 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_13 iDraw = 2 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_14 iDraw = 2 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_2_15 iDraw = 2 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMF_3_0 iDraw = 3 iTex = 0 cost = 290 BREAK CASE LEGS_FMF_3_1 iDraw = 3 iTex = 1 cost = 115 BREAK CASE LEGS_FMF_3_2 iDraw = 3 iTex = 2 cost = 135 BREAK CASE LEGS_FMF_3_3 iDraw = 3 iTex = 3 cost = 125 BREAK CASE LEGS_FMF_3_4 iDraw = 3 iTex = 4 cost = 120 BREAK CASE LEGS_FMF_3_5 iDraw = 3 iTex = 5 cost = 130 BREAK CASE LEGS_FMF_3_6 iDraw = 3 iTex = 6 cost = 110 BREAK CASE LEGS_FMF_3_7 iDraw = 3 iTex = 7 cost = 525 BREAK CASE LEGS_FMF_3_8 iDraw = 3 iTex = 8 cost = 115 BREAK CASE LEGS_FMF_3_9 iDraw = 3 iTex = 9 cost = 535 BREAK CASE LEGS_FMF_3_10 iDraw = 3 iTex = 10 cost = 135 BREAK CASE LEGS_FMF_3_11 iDraw = 3 iTex = 11 cost = 120 BREAK CASE LEGS_FMF_3_12 iDraw = 3 iTex = 12 cost = 130 BREAK CASE LEGS_FMF_3_13 iDraw = 3 iTex = 13 cost = 140 BREAK CASE LEGS_FMF_3_14 iDraw = 3 iTex = 14 cost = 130 BREAK CASE LEGS_FMF_3_15 iDraw = 3 iTex = 15 cost = 520 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_4_0 iDraw = 4 iTex = 0 cost = 215 BREAK CASE LEGS_FMF_4_1 iDraw = 4 iTex = 1 cost = 220 BREAK CASE LEGS_FMF_4_2 iDraw = 4 iTex = 2 cost = 225 BREAK CASE LEGS_FMF_4_3 iDraw = 4 iTex = 3 cost = 245 BREAK CASE LEGS_FMF_4_4 iDraw = 4 iTex = 4 cost = 215 BREAK CASE LEGS_FMF_4_5 iDraw = 4 iTex = 5 cost = 630 BREAK CASE LEGS_FMF_4_6 iDraw = 4 iTex = 6 cost = 250 BREAK CASE LEGS_FMF_4_7 iDraw = 4 iTex = 7 cost = 260 BREAK CASE LEGS_FMF_4_8 iDraw = 4 iTex = 8 cost = 200 BREAK CASE LEGS_FMF_4_9 iDraw = 4 iTex = 9 cost = 225 BREAK CASE LEGS_FMF_4_10 iDraw = 4 iTex = 10 cost = 230 BREAK CASE LEGS_FMF_4_11 iDraw = 4 iTex = 11 cost = 725 BREAK CASE LEGS_FMF_4_12 iDraw = 4 iTex = 12 cost = 650 BREAK CASE LEGS_FMF_4_13 iDraw = 4 iTex = 13 cost = 230 BREAK CASE LEGS_FMF_4_14 iDraw = 4 iTex = 14 cost = 230 BREAK CASE LEGS_FMF_4_15 iDraw = 4 iTex = 15 cost = 280 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_5_0 iDraw = 5 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_1 iDraw = 5 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_2 iDraw = 5 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_3 iDraw = 5 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_4 iDraw = 5 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_5 iDraw = 5 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_6 iDraw = 5 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_7 iDraw = 5 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_8 iDraw = 5 iTex = 8 cost = 330 BREAK CASE LEGS_FMF_5_9 iDraw = 5 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_10 iDraw = 5 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_11 iDraw = 5 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_12 iDraw = 5 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_13 iDraw = 5 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_5_14 iDraw = 5 iTex = 14 cost = 320 BREAK CASE LEGS_FMF_5_15 iDraw = 5 iTex = 15 cost = 315 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_6_0 iDraw = 6 iTex = 0 cost = 850 BREAK CASE LEGS_FMF_6_1 iDraw = 6 iTex = 1 cost = 535 BREAK CASE LEGS_FMF_6_2 iDraw = 6 iTex = 2 cost = 530 BREAK CASE LEGS_FMF_6_3 iDraw = 6 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_4 iDraw = 6 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_5 iDraw = 6 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_6 iDraw = 6 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_7 iDraw = 6 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_8 iDraw = 6 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_9 iDraw = 6 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_10 iDraw = 6 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_11 iDraw = 6 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_12 iDraw = 6 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_13 iDraw = 6 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_14 iDraw = 6 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_6_15 iDraw = 6 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMF_7_0 iDraw = 7 iTex = 0 cost = 890 BREAK CASE LEGS_FMF_7_1 iDraw = 7 iTex = 1 cost = 440 BREAK CASE LEGS_FMF_7_2 iDraw = 7 iTex = 2 cost = 455 BREAK CASE LEGS_FMF_7_3 iDraw = 7 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_4 iDraw = 7 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_5 iDraw = 7 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_6 iDraw = 7 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_7 iDraw = 7 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_8 iDraw = 7 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_9 iDraw = 7 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_10 iDraw = 7 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_11 iDraw = 7 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_12 iDraw = 7 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_13 iDraw = 7 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_14 iDraw = 7 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_7_15 iDraw = 7 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMF_8_0 iDraw = 8 iTex = 0 cost = 295 BREAK CASE LEGS_FMF_8_1 iDraw = 8 iTex = 1 cost = 180 BREAK CASE LEGS_FMF_8_2 iDraw = 8 iTex = 2 cost = 150 BREAK CASE LEGS_FMF_8_3 iDraw = 8 iTex = 3 cost = 150 BREAK CASE LEGS_FMF_8_4 iDraw = 8 iTex = 4 cost = 155 BREAK CASE LEGS_FMF_8_5 iDraw = 8 iTex = 5 cost = 840 BREAK CASE LEGS_FMF_8_6 iDraw = 8 iTex = 6 cost = 205 BREAK CASE LEGS_FMF_8_7 iDraw = 8 iTex = 7 cost = 150 BREAK CASE LEGS_FMF_8_8 iDraw = 8 iTex = 8 cost = 950 BREAK CASE LEGS_FMF_8_9 iDraw = 8 iTex = 9 cost = 580 BREAK CASE LEGS_FMF_8_10 iDraw = 8 iTex = 10 cost = 200 BREAK CASE LEGS_FMF_8_11 iDraw = 8 iTex = 11 cost = 665 BREAK CASE LEGS_FMF_8_12 iDraw = 8 iTex = 12 cost = 780 BREAK CASE LEGS_FMF_8_13 iDraw = 8 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_8_14 iDraw = 8 iTex = 14 cost = 615 BREAK CASE LEGS_FMF_8_15 iDraw = 8 iTex = 15 cost = 250 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_9_0 iDraw = 9 iTex = 0 cost = 495 BREAK CASE LEGS_FMF_9_1 iDraw = 9 iTex = 1 cost = 435 BREAK CASE LEGS_FMF_9_2 iDraw = 9 iTex = 2 cost = 420 BREAK CASE LEGS_FMF_9_3 iDraw = 9 iTex = 3 cost = 390 BREAK CASE LEGS_FMF_9_4 iDraw = 9 iTex = 4 cost = 485 BREAK CASE LEGS_FMF_9_5 iDraw = 9 iTex = 5 cost = 380 BREAK CASE LEGS_FMF_9_6 iDraw = 9 iTex = 6 cost = 1295 BREAK CASE LEGS_FMF_9_7 iDraw = 9 iTex = 7 cost = 1135 BREAK CASE LEGS_FMF_9_8 iDraw = 9 iTex = 8 cost = 1425 BREAK CASE LEGS_FMF_9_9 iDraw = 9 iTex = 9 cost = 1645 BREAK CASE LEGS_FMF_9_10 iDraw = 9 iTex = 10 cost = 1925 BREAK CASE LEGS_FMF_9_11 iDraw = 9 iTex = 11 cost = 2250 BREAK CASE LEGS_FMF_9_12 iDraw = 9 iTex = 12 cost = 365 BREAK CASE LEGS_FMF_9_13 iDraw = 9 iTex = 13 cost = 360 BREAK CASE LEGS_FMF_9_14 iDraw = 9 iTex = 14 cost = 2245 BREAK CASE LEGS_FMF_9_15 iDraw = 9 iTex = 15 cost = 2170 BREAK CASE LEGS_FMF_10_0 iDraw = 10 iTex = 0 cost = 50 BREAK CASE LEGS_FMF_10_1 iDraw = 10 iTex = 1 cost = 100 BREAK CASE LEGS_FMF_10_2 iDraw = 10 iTex = 2 cost = 65 BREAK CASE LEGS_FMF_10_3 iDraw = 10 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_7 iDraw = 10 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_10 iDraw = 10 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_11 iDraw = 10 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_12 iDraw = 10 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_13 iDraw = 10 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_14 iDraw = 10 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_10_15 iDraw = 10 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMF_11_0 iDraw = 11 iTex = 0 cost = 275 BREAK CASE LEGS_FMF_11_1 iDraw = 11 iTex = 1 cost = 300 BREAK CASE LEGS_FMF_11_2 iDraw = 11 iTex = 2 cost = 145 BREAK CASE LEGS_FMF_11_3 iDraw = 11 iTex = 3 cost = 150 BREAK CASE LEGS_FMF_11_4 iDraw = 11 iTex = 4 cost = 110 BREAK CASE LEGS_FMF_11_5 iDraw = 11 iTex = 5 cost = 95 BREAK CASE LEGS_FMF_11_6 iDraw = 11 iTex = 6 cost = 155 BREAK CASE LEGS_FMF_11_7 iDraw = 11 iTex = 7 cost = 155 BREAK CASE LEGS_FMF_11_8 iDraw = 11 iTex = 8 cost = 510 BREAK CASE LEGS_FMF_11_9 iDraw = 11 iTex = 9 cost = 165 BREAK CASE LEGS_FMF_11_10 iDraw = 11 iTex = 10 cost = 465 BREAK CASE LEGS_FMF_11_11 iDraw = 11 iTex = 11 cost = 250 BREAK CASE LEGS_FMF_11_12 iDraw = 11 iTex = 12 cost = 110 BREAK CASE LEGS_FMF_11_13 iDraw = 11 iTex = 13 cost = 470 BREAK CASE LEGS_FMF_11_14 iDraw = 11 iTex = 14 cost = 480 BREAK CASE LEGS_FMF_11_15 iDraw = 11 iTex = 15 cost = 155 BREAK CASE LEGS_FMF_12_0 iDraw = 12 iTex = 0 cost = 275 BREAK CASE LEGS_FMF_12_1 iDraw = 12 iTex = 1 cost = 395 BREAK CASE LEGS_FMF_12_2 iDraw = 12 iTex = 2 cost = 285 BREAK CASE LEGS_FMF_12_3 iDraw = 12 iTex = 3 cost = 560 BREAK CASE LEGS_FMF_12_4 iDraw = 12 iTex = 4 cost = 595 BREAK CASE LEGS_FMF_12_5 iDraw = 12 iTex = 5 cost = 295 BREAK CASE LEGS_FMF_12_6 iDraw = 12 iTex = 6 cost = 230 BREAK CASE LEGS_FMF_12_7 iDraw = 12 iTex = 7 cost = 215 BREAK CASE LEGS_FMF_12_8 iDraw = 12 iTex = 8 cost = 270 BREAK CASE LEGS_FMF_12_9 iDraw = 12 iTex = 9 cost = 295 BREAK CASE LEGS_FMF_12_10 iDraw = 12 iTex = 10 cost = 285 BREAK CASE LEGS_FMF_12_11 iDraw = 12 iTex = 11 cost = 215 BREAK CASE LEGS_FMF_12_12 iDraw = 12 iTex = 12 cost = 210 BREAK CASE LEGS_FMF_12_13 iDraw = 12 iTex = 13 cost = 290 BREAK CASE LEGS_FMF_12_14 iDraw = 12 iTex = 14 cost = 230 BREAK CASE LEGS_FMF_12_15 iDraw = 12 iTex = 15 cost = 215 BREAK ENDSWITCH SWITCH eItem CASE LEGS_FMF_13_0 iDraw = 13 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_1 iDraw = 13 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_2 iDraw = 13 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_3 iDraw = 13 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_4 iDraw = 13 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_5 iDraw = 13 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_6 iDraw = 13 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_7 iDraw = 13 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_8 iDraw = 13 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_9 iDraw = 13 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_10 iDraw = 13 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_11 iDraw = 13 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_12 iDraw = 13 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_13 iDraw = 13 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_14 iDraw = 13 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_13_15 iDraw = 13 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_0 iDraw = 14 iTex = 0 cost = 90 BREAK CASE LEGS_FMF_14_1 iDraw = 14 iTex = 1 cost = 105 BREAK CASE LEGS_FMF_14_2 iDraw = 14 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_3 iDraw = 14 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_4 iDraw = 14 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_5 iDraw = 14 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_6 iDraw = 14 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_7 iDraw = 14 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_8 iDraw = 14 iTex = 8 cost = 100 BREAK CASE LEGS_FMF_14_9 iDraw = 14 iTex = 9 cost = 105 BREAK CASE LEGS_FMF_14_10 iDraw = 14 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_11 iDraw = 14 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_12 iDraw = 14 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_13 iDraw = 14 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_14 iDraw = 14 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_14_15 iDraw = 14 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE LEGS_FMF_15_0 iDraw = 15 iTex = 0 cost = 230 BREAK CASE LEGS_FMF_15_1 iDraw = 15 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_2 iDraw = 15 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_3 iDraw = 15 iTex = 3 cost = 130 BREAK CASE LEGS_FMF_15_4 iDraw = 15 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_5 iDraw = 15 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_6 iDraw = 15 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_7 iDraw = 15 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_8 iDraw = 15 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_9 iDraw = 15 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_10 iDraw = 15 iTex = 10 cost = 350 BREAK CASE LEGS_FMF_15_11 iDraw = 15 iTex = 11 cost = 335 BREAK CASE LEGS_FMF_15_12 iDraw = 15 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_13 iDraw = 15 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_14 iDraw = 15 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE LEGS_FMF_15_15 iDraw = 15 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH tlLabel = "L_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleLowersDiscount[i] * g_sMPTunableGroups.ffemale_lowers_group_modifier)) ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_FMF_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= LEGS_FMF_DLC g_sTempCompData[0].iPedID = 4 // FMF0 FILL_PED_COMP_DATA_DLC(eType, eItem, LEGS_FMF_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_lowers_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_FEET(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_FEET SWITCH eItem CASE FEET_FMF_0_0 iDraw = 0 iTex = 0 cost = 1765 BREAK CASE FEET_FMF_0_1 iDraw = 0 iTex = 1 cost = 760 BREAK CASE FEET_FMF_0_2 iDraw = 0 iTex = 2 cost = 760 BREAK CASE FEET_FMF_0_3 iDraw = 0 iTex = 3 cost = 765 BREAK CASE FEET_FMF_0_4 iDraw = 0 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_5 iDraw = 0 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_6 iDraw = 0 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_7 iDraw = 0 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_8 iDraw = 0 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_9 iDraw = 0 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_10 iDraw = 0 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_11 iDraw = 0 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_12 iDraw = 0 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_13 iDraw = 0 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_14 iDraw = 0 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_0_15 iDraw = 0 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_1_0 iDraw = 1 iTex = 0 cost = 85 BREAK CASE FEET_FMF_1_1 iDraw = 1 iTex = 1 cost = 80 BREAK CASE FEET_FMF_1_2 iDraw = 1 iTex = 2 cost = 90 BREAK CASE FEET_FMF_1_3 iDraw = 1 iTex = 3 cost = 90 BREAK CASE FEET_FMF_1_4 iDraw = 1 iTex = 4 cost = 95 BREAK CASE FEET_FMF_1_5 iDraw = 1 iTex = 5 cost = 100 BREAK CASE FEET_FMF_1_6 iDraw = 1 iTex = 6 cost = 60 BREAK CASE FEET_FMF_1_7 iDraw = 1 iTex = 7 cost = 55 BREAK CASE FEET_FMF_1_8 iDraw = 1 iTex = 8 cost = 100 BREAK CASE FEET_FMF_1_9 iDraw = 1 iTex = 9 cost = 1255 BREAK CASE FEET_FMF_1_10 iDraw = 1 iTex = 10 cost = 65 BREAK CASE FEET_FMF_1_11 iDraw = 1 iTex = 11 cost = 1050 BREAK CASE FEET_FMF_1_12 iDraw = 1 iTex = 12 cost = 1895 BREAK CASE FEET_FMF_1_13 iDraw = 1 iTex = 13 cost = 185 BREAK CASE FEET_FMF_1_14 iDraw = 1 iTex = 14 cost = 190 BREAK CASE FEET_FMF_1_15 iDraw = 1 iTex = 15 cost = 115 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMF_2_0 iDraw = 2 iTex = 0 cost = 415 BREAK CASE FEET_FMF_2_1 iDraw = 2 iTex = 1 cost = 115 BREAK CASE FEET_FMF_2_2 iDraw = 2 iTex = 2 cost = 135 BREAK CASE FEET_FMF_2_3 iDraw = 2 iTex = 3 cost = 125 BREAK CASE FEET_FMF_2_4 iDraw = 2 iTex = 4 cost = 105 BREAK CASE FEET_FMF_2_5 iDraw = 2 iTex = 5 cost = 130 BREAK CASE FEET_FMF_2_6 iDraw = 2 iTex = 6 cost = 3530 BREAK CASE FEET_FMF_2_7 iDraw = 2 iTex = 7 cost = 2610 BREAK CASE FEET_FMF_2_8 iDraw = 2 iTex = 8 cost = 1295 BREAK CASE FEET_FMF_2_9 iDraw = 2 iTex = 9 cost = 120 BREAK CASE FEET_FMF_2_10 iDraw = 2 iTex = 10 cost = 160 BREAK CASE FEET_FMF_2_11 iDraw = 2 iTex = 11 cost = 160 BREAK CASE FEET_FMF_2_12 iDraw = 2 iTex = 12 cost = 145 BREAK CASE FEET_FMF_2_13 iDraw = 2 iTex = 13 cost = 105 BREAK CASE FEET_FMF_2_14 iDraw = 2 iTex = 14 cost = 115 BREAK CASE FEET_FMF_2_15 iDraw = 2 iTex = 15 cost = 150 BREAK CASE FEET_FMF_3_0 iDraw = 3 iTex = 0 cost = 540 BREAK CASE FEET_FMF_3_1 iDraw = 3 iTex = 1 cost = 115 BREAK CASE FEET_FMF_3_2 iDraw = 3 iTex = 2 cost = 110 BREAK CASE FEET_FMF_3_3 iDraw = 3 iTex = 3 cost = 120 BREAK CASE FEET_FMF_3_4 iDraw = 3 iTex = 4 cost = 460 BREAK CASE FEET_FMF_3_5 iDraw = 3 iTex = 5 cost = 120 BREAK CASE FEET_FMF_3_6 iDraw = 3 iTex = 6 cost = 120 BREAK CASE FEET_FMF_3_7 iDraw = 3 iTex = 7 cost = 415 BREAK CASE FEET_FMF_3_8 iDraw = 3 iTex = 8 cost = 135 BREAK CASE FEET_FMF_3_9 iDraw = 3 iTex = 9 cost = 140 BREAK CASE FEET_FMF_3_10 iDraw = 3 iTex = 10 cost = 160 BREAK CASE FEET_FMF_3_11 iDraw = 3 iTex = 11 cost = 120 BREAK CASE FEET_FMF_3_12 iDraw = 3 iTex = 12 cost = 1025 BREAK CASE FEET_FMF_3_13 iDraw = 3 iTex = 13 cost = 1560 BREAK CASE FEET_FMF_3_14 iDraw = 3 iTex = 14 cost = 145 BREAK CASE FEET_FMF_3_15 iDraw = 3 iTex = 15 cost = 120 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMF_4_0 iDraw = 4 iTex = 0 cost = 365 BREAK CASE FEET_FMF_4_1 iDraw = 4 iTex = 1 cost = 100 BREAK CASE FEET_FMF_4_2 iDraw = 4 iTex = 2 cost = 65 BREAK CASE FEET_FMF_4_3 iDraw = 4 iTex = 3 cost = 85 BREAK CASE FEET_FMF_4_4 iDraw = 4 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_6 iDraw = 4 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_7 iDraw = 4 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_8 iDraw = 4 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_9 iDraw = 4 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_10 iDraw = 4 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_11 iDraw = 4 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_12 iDraw = 4 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_13 iDraw = 4 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_14 iDraw = 4 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_4_15 iDraw = 4 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_0 iDraw = 5 iTex = 0 cost = 50 BREAK CASE FEET_FMF_5_1 iDraw = 5 iTex = 1 cost = 35 BREAK CASE FEET_FMF_5_2 iDraw = 5 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_3 iDraw = 5 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_4 iDraw = 5 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_5 iDraw = 5 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_6 iDraw = 5 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_7 iDraw = 5 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_8 iDraw = 5 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_9 iDraw = 5 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_10 iDraw = 5 iTex = 10 cost = 50 BREAK CASE FEET_FMF_5_11 iDraw = 5 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_12 iDraw = 5 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_13 iDraw = 5 iTex = 13 cost = 50 BREAK CASE FEET_FMF_5_14 iDraw = 5 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_5_15 iDraw = 5 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE FEET_FMF_6_0 iDraw = 6 iTex = 0 cost = 2395 BREAK CASE FEET_FMF_6_1 iDraw = 6 iTex = 1 cost = 3675 BREAK CASE FEET_FMF_6_2 iDraw = 6 iTex = 2 cost = 320 BREAK CASE FEET_FMF_6_3 iDraw = 6 iTex = 3 cost = 3875 BREAK CASE FEET_FMF_6_4 iDraw = 6 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_5 iDraw = 6 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_6 iDraw = 6 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_7 iDraw = 6 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_8 iDraw = 6 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_9 iDraw = 6 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_10 iDraw = 6 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_11 iDraw = 6 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_12 iDraw = 6 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_13 iDraw = 6 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_14 iDraw = 6 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_6_15 iDraw = 6 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_7_0 iDraw = 7 iTex = 0 cost = 2050 BREAK CASE FEET_FMF_7_1 iDraw = 7 iTex = 1 cost = 375 BREAK CASE FEET_FMF_7_2 iDraw = 7 iTex = 2 cost = 2105 BREAK CASE FEET_FMF_7_3 iDraw = 7 iTex = 3 cost = 345 BREAK CASE FEET_FMF_7_4 iDraw = 7 iTex = 4 cost = 380 BREAK CASE FEET_FMF_7_5 iDraw = 7 iTex = 5 cost = 340 BREAK CASE FEET_FMF_7_6 iDraw = 7 iTex = 6 cost = 385 BREAK CASE FEET_FMF_7_7 iDraw = 7 iTex = 7 cost = 4135 BREAK CASE FEET_FMF_7_8 iDraw = 7 iTex = 8 cost = 370 BREAK CASE FEET_FMF_7_9 iDraw = 7 iTex = 9 cost = 375 BREAK CASE FEET_FMF_7_10 iDraw = 7 iTex = 10 cost = 385 BREAK CASE FEET_FMF_7_11 iDraw = 7 iTex = 11 cost = 365 BREAK CASE FEET_FMF_7_12 iDraw = 7 iTex = 12 cost = 325 BREAK CASE FEET_FMF_7_13 iDraw = 7 iTex = 13 cost = 325 BREAK CASE FEET_FMF_7_14 iDraw = 7 iTex = 14 cost = 370 BREAK CASE FEET_FMF_7_15 iDraw = 7 iTex = 15 cost = 330 BREAK ENDSWITCH SWITCH eItem CASE FEET_FMF_8_0 iDraw = 8 iTex = 0 cost = 1025 BREAK CASE FEET_FMF_8_1 iDraw = 8 iTex = 1 cost = 390 BREAK CASE FEET_FMF_8_2 iDraw = 8 iTex = 2 cost = 400 BREAK CASE FEET_FMF_8_3 iDraw = 8 iTex = 3 cost = 390 BREAK CASE FEET_FMF_8_4 iDraw = 8 iTex = 4 cost = 365 BREAK CASE FEET_FMF_8_5 iDraw = 8 iTex = 5 cost = 410 BREAK CASE FEET_FMF_8_6 iDraw = 8 iTex = 6 cost = 4125 BREAK CASE FEET_FMF_8_7 iDraw = 8 iTex = 7 cost = 4365 BREAK CASE FEET_FMF_8_8 iDraw = 8 iTex = 8 cost = 5365 BREAK CASE FEET_FMF_8_9 iDraw = 8 iTex = 9 cost = 6225 BREAK CASE FEET_FMF_8_10 iDraw = 8 iTex = 10 cost = 3755 BREAK CASE FEET_FMF_8_11 iDraw = 8 iTex = 11 cost = 405 BREAK CASE FEET_FMF_8_12 iDraw = 8 iTex = 12 cost = 4115 BREAK CASE FEET_FMF_8_13 iDraw = 8 iTex = 13 cost = 2240 BREAK CASE FEET_FMF_8_14 iDraw = 8 iTex = 14 cost = 3850 BREAK CASE FEET_FMF_8_15 iDraw = 8 iTex = 15 cost = 3110 BREAK CASE FEET_FMF_9_0 iDraw = 9 iTex = 0 cost = 1950 BREAK CASE FEET_FMF_9_1 iDraw = 9 iTex = 1 cost = 455 BREAK CASE FEET_FMF_9_2 iDraw = 9 iTex = 2 cost = 405 BREAK CASE FEET_FMF_9_3 iDraw = 9 iTex = 3 cost = 410 BREAK CASE FEET_FMF_9_4 iDraw = 9 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_5 iDraw = 9 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_6 iDraw = 9 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_7 iDraw = 9 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_8 iDraw = 9 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_9 iDraw = 9 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_10 iDraw = 9 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_11 iDraw = 9 iTex = 11 cost = 415 BREAK CASE FEET_FMF_9_12 iDraw = 9 iTex = 12 cost = 4425 BREAK CASE FEET_FMF_9_13 iDraw = 9 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_14 iDraw = 9 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_9_15 iDraw = 9 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE FEET_FMF_10_0 iDraw = 10 iTex = 0 cost = 115 BREAK CASE FEET_FMF_10_1 iDraw = 10 iTex = 1 cost = 65 BREAK CASE FEET_FMF_10_2 iDraw = 10 iTex = 2 cost = 85 BREAK CASE FEET_FMF_10_3 iDraw = 10 iTex = 3 cost = 75 BREAK CASE FEET_FMF_10_4 iDraw = 10 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_5 iDraw = 10 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_6 iDraw = 10 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_7 iDraw = 10 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_8 iDraw = 10 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_9 iDraw = 10 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_10 iDraw = 10 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_11 iDraw = 10 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_12 iDraw = 10 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_13 iDraw = 10 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_14 iDraw = 10 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_10_15 iDraw = 10 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_0 iDraw = 11 iTex = 0 cost = 115 BREAK CASE FEET_FMF_11_1 iDraw = 11 iTex = 1 cost = 360 BREAK CASE FEET_FMF_11_2 iDraw = 11 iTex = 2 cost = 135 BREAK CASE FEET_FMF_11_3 iDraw = 11 iTex = 3 cost = 175 BREAK CASE FEET_FMF_11_4 iDraw = 11 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_5 iDraw = 11 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_6 iDraw = 11 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_7 iDraw = 11 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_8 iDraw = 11 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_9 iDraw = 11 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_10 iDraw = 11 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_11 iDraw = 11 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_12 iDraw = 11 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_13 iDraw = 11 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_14 iDraw = 11 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_11_15 iDraw = 11 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_0 iDraw = 12 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_1 iDraw = 12 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_2 iDraw = 12 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_3 iDraw = 12 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_4 iDraw = 12 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_5 iDraw = 12 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_6 iDraw = 12 iTex = 6 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_7 iDraw = 12 iTex = 7 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_8 iDraw = 12 iTex = 8 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_9 iDraw = 12 iTex = 9 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_10 iDraw = 12 iTex = 10 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_11 iDraw = 12 iTex = 11 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_12 iDraw = 12 iTex = 12 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_13 iDraw = 12 iTex = 13 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_14 iDraw = 12 iTex = 14 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC CASE FEET_FMF_12_15 iDraw = 12 iTex = 15 cost = 0 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE FEET_FMF_13_0 iDraw = 13 iTex = 0 cost = 675 BREAK CASE FEET_FMF_13_1 iDraw = 13 iTex = 1 cost = 100 BREAK CASE FEET_FMF_13_2 iDraw = 13 iTex = 2 cost = 400 BREAK CASE FEET_FMF_13_3 iDraw = 13 iTex = 3 cost = 340 BREAK CASE FEET_FMF_13_4 iDraw = 13 iTex = 4 cost = 195 BREAK CASE FEET_FMF_13_5 iDraw = 13 iTex = 5 cost = 215 BREAK CASE FEET_FMF_13_6 iDraw = 13 iTex = 6 cost = 120 BREAK CASE FEET_FMF_13_7 iDraw = 13 iTex = 7 cost = 165 BREAK CASE FEET_FMF_13_8 iDraw = 13 iTex = 8 cost = 100 BREAK CASE FEET_FMF_13_9 iDraw = 13 iTex = 9 cost = 1040 BREAK CASE FEET_FMF_13_10 iDraw = 13 iTex = 10 cost = 100 BREAK CASE FEET_FMF_13_11 iDraw = 13 iTex = 11 cost = 120 BREAK CASE FEET_FMF_13_12 iDraw = 13 iTex = 12 cost = 210 BREAK CASE FEET_FMF_13_13 iDraw = 13 iTex = 13 cost = 205 BREAK CASE FEET_FMF_13_14 iDraw = 13 iTex = 14 cost = 200 BREAK CASE FEET_FMF_13_15 iDraw = 13 iTex = 15 cost = 100 BREAK CASE FEET_FMF_14_0 iDraw = 14 iTex = 0 cost = 1420 BREAK CASE FEET_FMF_14_1 iDraw = 14 iTex = 1 cost = 445 BREAK CASE FEET_FMF_14_2 iDraw = 14 iTex = 2 cost = 435 BREAK CASE FEET_FMF_14_3 iDraw = 14 iTex = 3 cost = 420 BREAK CASE FEET_FMF_14_4 iDraw = 14 iTex = 4 cost = 425 BREAK CASE FEET_FMF_14_5 iDraw = 14 iTex = 5 cost = 435 BREAK CASE FEET_FMF_14_6 iDraw = 14 iTex = 6 cost = 425 BREAK CASE FEET_FMF_14_7 iDraw = 14 iTex = 7 cost = 430 BREAK CASE FEET_FMF_14_8 iDraw = 14 iTex = 8 cost = 3215 BREAK CASE FEET_FMF_14_9 iDraw = 14 iTex = 9 cost = 3320 BREAK CASE FEET_FMF_14_10 iDraw = 14 iTex = 10 cost = 440 BREAK CASE FEET_FMF_14_11 iDraw = 14 iTex = 11 cost = 440 BREAK CASE FEET_FMF_14_12 iDraw = 14 iTex = 12 cost = 445 BREAK CASE FEET_FMF_14_13 iDraw = 14 iTex = 13 cost = 450 BREAK CASE FEET_FMF_14_14 iDraw = 14 iTex = 14 cost = 450 BREAK CASE FEET_FMF_14_15 iDraw = 14 iTex = 15 cost = 1255 BREAK CASE FEET_FMF_15_0 iDraw = 15 iTex = 0 cost = 750 BREAK CASE FEET_FMF_15_1 iDraw = 15 iTex = 1 cost = 165 BREAK CASE FEET_FMF_15_2 iDraw = 15 iTex = 2 cost = 460 BREAK CASE FEET_FMF_15_3 iDraw = 15 iTex = 3 cost = 190 BREAK CASE FEET_FMF_15_4 iDraw = 15 iTex = 4 cost = 195 BREAK CASE FEET_FMF_15_5 iDraw = 15 iTex = 5 cost = 200 BREAK CASE FEET_FMF_15_6 iDraw = 15 iTex = 6 cost = 205 BREAK CASE FEET_FMF_15_7 iDraw = 15 iTex = 7 cost = 210 BREAK CASE FEET_FMF_15_8 iDraw = 15 iTex = 8 cost = 215 BREAK CASE FEET_FMF_15_9 iDraw = 15 iTex = 9 cost = 220 BREAK CASE FEET_FMF_15_10 iDraw = 15 iTex = 10 cost = 455 BREAK CASE FEET_FMF_15_11 iDraw = 15 iTex = 11 cost = 175 BREAK CASE FEET_FMF_15_12 iDraw = 15 iTex = 12 cost = 800 BREAK CASE FEET_FMF_15_13 iDraw = 15 iTex = 13 cost = 790 BREAK CASE FEET_FMF_15_14 iDraw = 15 iTex = 14 cost = 175 BREAK CASE FEET_FMF_15_15 iDraw = 15 iTex = 15 cost = 190 BREAK ENDSWITCH tlLabel = "F_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex INT i = ENUM_TO_INT(eItem) IF i >= 0 AND i < 256 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleFeetDiscount[i] * g_sMPTunableGroups.ffemale_shoes_group_modifier)) ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_FMF_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= FEET_FMF_DLC g_sTempCompData[0].iPedID = 4 // FMF0 FILL_PED_COMP_DATA_DLC(eType, eItem, FEET_FMF_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_shoes_group_modifier)) ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_BERD(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_BERD SWITCH eItem CASE BERD_FMF_0_0 iDraw = 0 iTex = 0 cost = 0 BREAK CASE BERD_FMF_1_0 iDraw = 1 iTex = 0 cost = 965 BREAK CASE BERD_FMF_1_1 iDraw = 1 iTex = 1 cost = 960 BREAK CASE BERD_FMF_1_2 iDraw = 1 iTex = 2 cost = 9500 BREAK CASE BERD_FMF_1_3 iDraw = 1 iTex = 3 cost = 975 BREAK CASE BERD_FMF_2_0 iDraw = 2 iTex = 0 cost = 1185 BREAK CASE BERD_FMF_2_1 iDraw = 2 iTex = 1 cost = 15000 BREAK CASE BERD_FMF_2_2 iDraw = 2 iTex = 2 cost = 1115 BREAK CASE BERD_FMF_2_3 iDraw = 2 iTex = 3 cost = 1105 BREAK CASE BERD_FMF_3_0 iDraw = 3 iTex = 0 cost = 25000 BREAK CASE BERD_FMF_4_0 iDraw = 4 iTex = 0 cost = 510 BREAK CASE BERD_FMF_4_1 iDraw = 4 iTex = 1 cost = 530 BREAK CASE BERD_FMF_4_2 iDraw = 4 iTex = 2 cost = 5500 BREAK CASE BERD_FMF_4_3 iDraw = 4 iTex = 3 cost = 535 BREAK CASE BERD_FMF_5_0 iDraw = 5 iTex = 0 cost = 1510 BREAK CASE BERD_FMF_5_1 iDraw = 5 iTex = 1 cost = 1530 BREAK CASE BERD_FMF_5_2 iDraw = 5 iTex = 2 cost = 14500 BREAK CASE BERD_FMF_5_3 iDraw = 5 iTex = 3 cost = 13000 BREAK CASE BERD_FMF_6_0 iDraw = 6 iTex = 0 cost = 8000 BREAK CASE BERD_FMF_6_1 iDraw = 6 iTex = 1 cost = 1265 BREAK CASE BERD_FMF_6_2 iDraw = 6 iTex = 2 cost = 8500 BREAK CASE BERD_FMF_6_3 iDraw = 6 iTex = 3 cost = 1210 BREAK CASE BERD_FMF_7_0 iDraw = 7 iTex = 0 cost = 2360 BREAK CASE BERD_FMF_7_1 iDraw = 7 iTex = 1 cost = 22500 BREAK CASE BERD_FMF_7_2 iDraw = 7 iTex = 2 cost = 2375 BREAK CASE BERD_FMF_7_3 iDraw = 7 iTex = 3 cost = 2485 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, BERD_FMF_DLC, iDLCHash) #IF USE_TU_CHANGES IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_masks_group_modifier)) ENDIF #ENDIF EXIT BREAK ENDSWITCH tlLabel = "M_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex INT i = ENUM_TO_INT(eItem) - 1 IF i >= 0 AND i < 26 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleMasksDiscount[i] * g_sMPTunableGroups.ffemale_masks_group_modifier)) ENDIF FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_HAND(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HAND SWITCH eItem CASE HAND_FMF_0_0 iDraw = 0 iTex = 0 BREAK CASE HAND_FMF_1_0 iDraw = 1 iTex = 0 BREAK CASE HAND_FMF_2_0 iDraw = 2 iTex = 0 BREAK CASE HAND_FMF_3_0 iDraw = 3 iTex = 0 BREAK CASE HAND_FMF_4_0 iDraw = 4 iTex = 0 BREAK CASE HAND_FMF_5_0 iDraw = 5 iTex = 0 BREAK CASE HAND_FMF_6_0 iDraw = 6 iTex = 0 BREAK CASE HAND_FMF_7_0 iDraw = 7 iTex = 0 BREAK CASE HAND_FMF_8_0 iDraw = 8 iTex = 0 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, HAND_FMF_DLC, iDLCHash) EXIT BREAK ENDSWITCH tlLabel = "HA_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_HEAD(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) // BOOL bOutfitOnly = FALSE // INT cost = 10 // default item cost. // TEXT_LABEL_15 tlLabel // INT iDraw = 0 // INT iTex = 0 // PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY // PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_HEAD // SWITCH eItem // DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, HEAD_FMF_DLC, iDLCHash) // EXIT // BREAK // ENDSWITCH // // tlLabel = "HE_FMF_" // tlLabel += iDraw // tlLabel += "_" // tlLabel += iTex // // FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_TEETH(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_TEETH SWITCH eItem CASE TEETH_FMF_0_0 iDraw = 0 iTex = 0 cost = 0 BREAK CASE TEETH_FMF_1_0 iDraw = 1 iTex = 0 IF g_sMPTunables.iExpense_modifier_Gold_Deco_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Gold_Deco_Earrings ELSE cost = 310 ENDIF BREAK CASE TEETH_FMF_1_1 iDraw = 1 iTex = 1 IF g_sMPTunables.iExpense_modifier_Silver_Deco_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Silver_Deco_Earrings ELSE cost = 125 ENDIF BREAK CASE TEETH_FMF_1_2 iDraw = 1 iTex = 2 IF g_sMPTunables.iExpense_modifier_Pearl_Deco_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Pearl_Deco_Earrings ELSE cost = 145 ENDIF BREAK CASE TEETH_FMF_1_3 iDraw = 1 iTex = 3 IF g_sMPTunables.iExpense_modifier_Copper_Deco_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Copper_Deco_Earrings ELSE cost = 130 ENDIF BREAK CASE TEETH_FMF_1_4 iDraw = 1 iTex = 4 IF g_sMPTunables.iExpense_modifier_Two_Tone_Deco_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Two_Tone_Deco_Earrings ELSE cost = 265 ENDIF BREAK CASE TEETH_FMF_1_5 iDraw = 1 iTex = 5 IF g_sMPTunables.iExpense_modifier_Sapphire_Deco_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Sapphire_Deco_Earrings ELSE cost = 280 ENDIF BREAK CASE TEETH_FMF_2_0 iDraw = 2 iTex = 0 IF g_sMPTunables.iExpense_modifier_Gold_Hoop_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Gold_Hoop_Earrings ELSE cost = 295 ENDIF BREAK CASE TEETH_FMF_2_1 iDraw = 2 iTex = 1 IF g_sMPTunables.iExpense_modifier_Silver_Hoop_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Silver_Hoop_Earrings ELSE cost = 95 ENDIF BREAK CASE TEETH_FMF_2_2 iDraw = 2 iTex = 2 IF g_sMPTunables.iExpense_modifier_Pink_Hoop_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Pink_Hoop_Earrings ELSE cost =85 ENDIF BREAK CASE TEETH_FMF_2_3 iDraw = 2 iTex = 3 IF g_sMPTunables.iExpense_modifier_Copper_Hoop_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Copper_Hoop_Earrings ELSE cost =95 ENDIF BREAK CASE TEETH_FMF_2_4 iDraw = 2 iTex = 4 IF g_sMPTunables.iExpense_modifier_Purple_Hoop_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_Purple_Hoop_Earrings ELSE cost = 105 ENDIF BREAK CASE TEETH_FMF_2_5 iDraw = 2 iTex = 5 IF g_sMPTunables.iExpense_modifier_White_Hoop_Earrings != -1 cost = g_sMPTunables.iExpense_modifier_White_Hoop_Earrings ELSE cost = 95 ENDIF BREAK CASE TEETH_FMF_3_0 iDraw = 3 iTex = 0 IF g_sMPTunables.iExpense_modifier_Harsh_Souls_Sweatband != -1 cost = g_sMPTunables.iExpense_modifier_Harsh_Souls_Sweatband ELSE cost =35 ENDIF BREAK CASE TEETH_FMF_3_1 iDraw = 3 iTex = 1 IF g_sMPTunables.iExpense_modifier_Prolaps_Sweatband != -1 cost = g_sMPTunables.iExpense_modifier_Prolaps_Sweatband ELSE cost =35 ENDIF BREAK CASE TEETH_FMF_3_2 iDraw = 3 iTex = 2 IF g_sMPTunables.iExpense_modifier_LC_Sweatband != -1 cost = g_sMPTunables.iExpense_modifier_LC_Sweatband ELSE cost =30 ENDIF BREAK CASE TEETH_FMF_3_3 iDraw = 3 iTex = 3 IF g_sMPTunables.iExpense_modifier_Aqua_Striped_Sweatband != -1 cost = g_sMPTunables.iExpense_modifier_Aqua_Striped_Sweatband ELSE cost =40 ENDIF BREAK CASE TEETH_FMF_3_4 iDraw = 3 iTex = 4 IF g_sMPTunables.iExpense_modifier_Pink_Check_Sweatband != -1 cost = g_sMPTunables.iExpense_modifier_Pink_Check_Sweatband ELSE cost =35 ENDIF BREAK CASE TEETH_FMF_3_5 iDraw = 3 iTex = 5 IF g_sMPTunables.iExpense_modifier_Squeezers_Sweatband != -1 cost = g_sMPTunables.iExpense_modifier_Squeezers_Sweatband ELSE cost =35 ENDIF BREAK CASE TEETH_FMF_4_0 iDraw = 4 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_4_1 iDraw = 4 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_4_2 iDraw = 4 iTex = 2 IF g_sMPTunables.iExpense_modifier_Silver_Bangles != -1 cost = g_sMPTunables.iExpense_modifier_Silver_Bangles ELSE cost = 355 ENDIF BREAK CASE TEETH_FMF_4_3 iDraw = 4 iTex = 3 IF g_sMPTunables.iExpense_modifier_Gold_Bangles != -1 cost = g_sMPTunables.iExpense_modifier_Gold_Bangles ELSE cost = 370 ENDIF BREAK CASE TEETH_FMF_4_4 iDraw = 4 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_4_5 iDraw = 4 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_5_0 iDraw = 5 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_5_1 iDraw = 5 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_5_2 iDraw = 5 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_5_3 iDraw = 5 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_5_4 iDraw = 5 iTex = 4 IF g_sMPTunables.iExpense_modifier_White_Leather_Straps != -1 cost = g_sMPTunables.iExpense_modifier_White_Leather_Straps ELSE cost = 110 ENDIF BREAK CASE TEETH_FMF_5_5 iDraw = 5 iTex = 5 IF g_sMPTunables.iExpense_modifier_Rainbow_Leather_Straps != -1 cost = g_sMPTunables.iExpense_modifier_Rainbow_Leather_Straps ELSE cost = 160 ENDIF BREAK CASE TEETH_FMF_6_0 iDraw = 6 iTex = 0 IF g_sMPTunables.iExpense_modifier_Onyx_Pendant != -1 cost = g_sMPTunables.iExpense_modifier_Onyx_Pendant ELSE cost = 385 ENDIF BREAK CASE TEETH_FMF_6_1 iDraw = 6 iTex = 1 IF g_sMPTunables.iExpense_modifier_Pearl_Pendant != -1 cost = g_sMPTunables.iExpense_modifier_Pearl_Pendant ELSE cost = 190 ENDIF BREAK CASE TEETH_FMF_6_2 iDraw = 6 iTex = 2 IF g_sMPTunables.iExpense_modifier_Jade_Pendant != -1 cost = g_sMPTunables.iExpense_modifier_Jade_Pendant ELSE cost = 235 ENDIF BREAK CASE TEETH_FMF_6_3 iDraw = 6 iTex = 3 IF g_sMPTunables.iExpense_modifier_Carnelian_Pendant != -1 cost = g_sMPTunables.iExpense_modifier_Carnelian_Pendant ELSE cost = 220 ENDIF BREAK CASE TEETH_FMF_6_4 iDraw = 6 iTex = 4 IF g_sMPTunables.iExpense_modifier_Aquamarine_Pendant != -1 cost = g_sMPTunables.iExpense_modifier_Aquamarine_Pendant ELSE cost = 250 ENDIF BREAK CASE TEETH_FMF_6_5 iDraw = 6 iTex = 5 IF g_sMPTunables.iExpense_modifier_Amethyst_Pendant != -1 cost = g_sMPTunables.iExpense_modifier_Amethyst_Pendant ELSE cost = 205 ENDIF BREAK CASE TEETH_FMF_7_0 iDraw = 7 iTex = 0 IF g_sMPTunables.iExpense_modifier_Gold_Necklace != -1 cost = g_sMPTunables.iExpense_modifier_Gold_Necklace ELSE cost = 445 ENDIF BREAK CASE TEETH_FMF_7_1 iDraw = 7 iTex = 1 IF g_sMPTunables.iExpense_modifier_Silver_Necklace != -1 cost = g_sMPTunables.iExpense_modifier_Silver_Necklace ELSE cost = 175 ENDIF BREAK CASE TEETH_FMF_7_2 iDraw = 7 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_7_3 iDraw = 7 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_7_4 iDraw = 7 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_7_5 iDraw = 7 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_8_0 iDraw = 8 iTex = 0 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_8_1 iDraw = 8 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_8_2 iDraw = 8 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_8_3 iDraw = 8 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_8_4 iDraw = 8 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_8_5 iDraw = 8 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_9_0 iDraw = 9 iTex = 0 IF g_sMPTunables.iExpense_modifier_Scarf != -1 cost = g_smptunables.iExpense_modifier_Scarf ELSE cost = 340 ENDIF BREAK CASE TEETH_FMF_9_1 iDraw = 9 iTex = 1 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_9_2 iDraw = 9 iTex = 2 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_9_3 iDraw = 9 iTex = 3 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_9_4 iDraw = 9 iTex = 4 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC CASE TEETH_FMF_9_5 iDraw = 9 iTex = 5 cost = 0 bOutfitOnly = TRUE BREAK // Moved to DLC DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, TEETH_FMF_DLC, iDLCHash) #IF USE_TU_CHANGES IF g_sTempCompData[0].iCost > 0 g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_accessories_group_modifier)) ENDIF #ENDIF EXIT BREAK ENDSWITCH cost = ROUND((TO_FLOAT(cost) * g_sMPTunableGroups.ffemale_accessories_group_modifier)) tlLabel = "T_FMF_" tlLabel += iDraw tlLabel += "_" tlLabel += iTex FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_DECL(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_DECL SWITCH eItem CASE DECL_FMF_0_0 tlLabel = "D_FMM_0_0" iDraw = 0 iTex = 0 cost = 0 BREAK CASE DECL_FMF_1_0 tlLabel = "D_FMM_2_0" iDraw = 1 iTex = 0 cost = 10000 BREAK CASE DECL_FMF_2_0 tlLabel = "D_FMM_1_0" iDraw = 2 iTex = 0 cost = 5000 BREAK CASE DECL_FMF_3_0 tlLabel = "D_FMM_2_0" iDraw = 3 iTex = 0 cost = 10000 BREAK CASE DECL_FMF_4_0 tlLabel = "D_FMM_1_0" iDraw = 4 iTex = 0 cost = 5000 BREAK CASE DECL_FMF_5_0 tlLabel = "D_FMM_2_0" iDraw = 5 iTex = 0 cost = 10000 BREAK DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, DECL_FMF_DLC, iDLCHash) EXIT BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_PROPS(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPS INT iType = 0 SWITCH eItem CASE PROPS_HEAD_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_EYES_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES BREAK CASE PROPS_EARS_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_EARS BREAK CASE PROPS_MOUTH_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_MOUTH BREAK CASE PROPS_LHAND_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_HAND BREAK CASE PROPS_RHAND_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_HAND BREAK CASE PROPS_LWRIST_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST BREAK CASE PROPS_RWRIST_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_R_WRIST BREAK CASE PROPS_HIP_NONE iDraw = -1 iTex = 0 cost = 0 ePropType = PROP_TYPE_HIP BREAK CASE PROPS_FMF_EARDEFENDERS_0_0 tlLabel = "HT_FMF_0_0" iDraw = 0 iTex = 0 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_1 tlLabel = "HT_FMF_0_1" iDraw = 0 iTex = 1 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_2 tlLabel = "HT_FMF_0_2" iDraw = 0 iTex = 2 cost = 85 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_3 tlLabel = "HT_FMF_0_3" iDraw = 0 iTex = 3 cost = 75 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_4 tlLabel = "HT_FMF_0_4" iDraw = 0 iTex = 4 cost = 235 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_5 tlLabel = "HT_FMF_0_5" iDraw = 0 iTex = 5 cost = 80 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_6 tlLabel = "HT_FMF_0_6" iDraw = 0 iTex = 6 cost = 85 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_EARDEFENDERS_0_7 tlLabel = "HT_FMF_0_7" iDraw = 0 iTex = 7 cost = 90 ePropType = PROP_TYPE_HEAD iType = 1 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_DUNCE_HAT_1_0 tlLabel = "HT_FMF_1_0" iDraw = 1 iTex = 0 ePropType = PROP_TYPE_HEAD BREAK CASE PROPS_FMF_HAT_2_0 tlLabel = "HT_FMF_2_0" iDraw = 2 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_2_1 tlLabel = "HT_FMF_2_1" iDraw = 2 iTex = 1 cost = 5000 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_2_2 tlLabel = "HT_FMF_2_2" iDraw = 2 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_2_3 tlLabel = "HT_FMF_2_3" iDraw = 2 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_2_4 tlLabel = "HT_FMF_2_4" iDraw = 2 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_2_5 tlLabel = "HT_FMF_2_5" iDraw = 2 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_2_6 tlLabel = "HT_FMF_2_6" iDraw = 2 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_2_7 tlLabel = "HT_FMF_2_7" iDraw = 2 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_0 tlLabel = "HT_FMF_3_0" iDraw = 3 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_1 tlLabel = "HT_FMF_3_1" iDraw = 3 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_2 tlLabel = "HT_FMF_3_2" iDraw = 3 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_3 tlLabel = "HT_FMF_3_3" iDraw = 3 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_4 tlLabel = "HT_FMF_3_4" iDraw = 3 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_5 tlLabel = "HT_FMF_3_5" iDraw = 3 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_6 tlLabel = "HT_FMF_3_6" iDraw = 3 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_3_7 tlLabel = "HT_FMF_3_7" iDraw = 3 iTex = 7 cost = 120 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_0 tlLabel = "HT_FMF_4_0" iDraw = 4 iTex = 0 cost = 400 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_1 tlLabel = "HT_FMF_4_1" iDraw = 4 iTex = 1 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_2 tlLabel = "HT_FMF_4_2" iDraw = 4 iTex = 2 cost = 375 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_3 tlLabel = "HT_FMF_4_3" iDraw = 4 iTex = 3 cost = 75 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_4 tlLabel = "HT_FMF_4_4" iDraw = 4 iTex = 4 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_5 tlLabel = "HT_FMF_4_5" iDraw = 4 iTex = 5 cost = 65 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_6 tlLabel = "HT_FMF_4_6" iDraw = 4 iTex = 6 cost = 85 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_4_7 tlLabel = "HT_FMF_4_7" iDraw = 4 iTex = 7 cost = 325 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_0 tlLabel = "HT_FMF_5_0" iDraw = 5 iTex = 0 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_1 tlLabel = "HT_FMF_5_1" iDraw = 5 iTex = 1 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_2 tlLabel = "HT_FMF_5_2" iDraw = 5 iTex = 2 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_3 tlLabel = "HT_FMF_5_3" iDraw = 5 iTex = 3 cost = 40 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_4 tlLabel = "HT_FMF_5_4" iDraw = 5 iTex = 4 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_5 tlLabel = "HT_FMF_5_5" iDraw = 5 iTex = 5 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_6 tlLabel = "HT_FMF_5_6" iDraw = 5 iTex = 6 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_5_7 tlLabel = "HT_FMF_5_7" iDraw = 5 iTex = 7 cost = 255 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_0 tlLabel = "HT_FMF_6_0" iDraw = 6 iTex = 0 cost = 360 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_1 tlLabel = "HT_FMF_6_1" iDraw = 6 iTex = 1 cost = 195 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_2 tlLabel = "HT_FMF_6_2" iDraw = 6 iTex = 2 cost = 3970 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_3 tlLabel = "HT_FMF_6_3" iDraw = 6 iTex = 3 cost = 135 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_4 tlLabel = "HT_FMF_6_4" iDraw = 6 iTex = 4 cost = 1355 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_5 tlLabel = "HT_FMF_6_5" iDraw = 6 iTex = 5 cost = 110 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_6 tlLabel = "HT_FMF_6_6" iDraw = 6 iTex = 6 cost = 140 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_6_7 tlLabel = "HT_FMF_6_7" iDraw = 6 iTex = 7 cost = 130 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_0 tlLabel = "HT_FMF_7_0" iDraw = 7 iTex = 0 cost = 230 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_1 tlLabel = "HT_FMF_7_1" iDraw = 7 iTex = 1 cost = 195 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_2 tlLabel = "HT_FMF_7_2" iDraw = 7 iTex = 2 cost = 515 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_3 tlLabel = "HT_FMF_7_3" iDraw = 7 iTex = 3 cost = 545 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_4 tlLabel = "HT_FMF_7_4" iDraw = 7 iTex = 4 cost = 195 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_5 tlLabel = "HT_FMF_7_5" iDraw = 7 iTex = 5 cost = 155 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_6 tlLabel = "HT_FMF_7_6" iDraw = 7 iTex = 6 cost = 155 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_7_7 tlLabel = "HT_FMF_7_7" iDraw = 7 iTex = 7 cost = 1440 ePropType = PROP_TYPE_HEAD iType = 1 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HAT_8_0 tlLabel = "HT_FMF_8_0" iDraw = 8 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_1 tlLabel = "HT_FMF_8_1" iDraw = 8 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_2 tlLabel = "HT_FMF_8_2" iDraw = 8 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_3 tlLabel = "HT_FMF_8_3" iDraw = 8 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_4 tlLabel = "HT_FMF_8_4" iDraw = 8 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_5 tlLabel = "HT_FMF_8_5" iDraw = 8 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_6 tlLabel = "HT_FMF_8_6" iDraw = 8 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_8_7 tlLabel = "HT_FMF_8_7" iDraw = 8 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_9_0 tlLabel = "HT_FMF_9_0" iDraw = 9 iTex = 0 cost = 35 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_1 tlLabel = "HT_FMF_9_1" iDraw = 9 iTex = 1 cost = 25 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_2 tlLabel = "HT_FMF_9_2" iDraw = 9 iTex = 2 cost = 30 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_3 tlLabel = "HT_FMF_9_3" iDraw = 9 iTex = 3 cost = 25 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_4 tlLabel = "HT_FMF_9_4" iDraw = 9 iTex = 4 cost = 50 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_5 tlLabel = "HT_FMF_9_5" iDraw = 9 iTex = 5 cost = 40 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_6 tlLabel = "HT_FMF_9_6" iDraw = 9 iTex = 6 cost = 575 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_9_7 tlLabel = "HT_FMF_9_7" iDraw = 9 iTex = 7 cost = 605 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_10_0 tlLabel = "HT_FMF_10_0" iDraw = 10 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_1 tlLabel = "HT_FMF_10_1" iDraw = 10 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_2 tlLabel = "HT_FMF_10_2" iDraw = 10 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_3 tlLabel = "HT_FMF_10_3" iDraw = 10 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_4 tlLabel = "HT_FMF_10_4" iDraw = 10 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_5 tlLabel = "HT_FMF_10_5" iDraw = 10 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_6 tlLabel = "HT_FMF_10_6" iDraw = 10 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_10_7 tlLabel = "HT_FMF_10_7" iDraw = 10 iTex = 7 cost = 285 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_11_0 tlLabel = "HT_FMF_11_0" iDraw = 11 iTex = 0 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_11_1 tlLabel = "HT_FMF_11_1" iDraw = 11 iTex = 1 cost = 2125 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_11_2 tlLabel = "HT_FMF_11_2" iDraw = 11 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_11_3 tlLabel = "HT_FMF_11_3" iDraw = 11 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_11_4 tlLabel = "HT_FMF_11_4" iDraw = 11 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_11_5 tlLabel = "HT_FMF_11_5" iDraw = 11 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_11_6 tlLabel = "HT_FMF_11_6" iDraw = 11 iTex = 6 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_11_7 tlLabel = "HT_FMF_11_7" iDraw = 11 iTex = 7 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_12_0 tlLabel = "HT_FMF_12_0" iDraw = 12 iTex = 0 cost = 75 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_12_1 tlLabel = "HT_FMF_12_1" iDraw = 12 iTex = 1 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_12_2 tlLabel = "HT_FMF_12_2" iDraw = 12 iTex = 2 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_12_3 tlLabel = "HT_FMF_12_3" iDraw = 12 iTex = 3 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_12_4 tlLabel = "HT_FMF_12_4" iDraw = 12 iTex = 4 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_12_5 tlLabel = "HT_FMF_12_5" iDraw = 12 iTex = 5 cost = 0 ePropType = PROP_TYPE_HEAD iType = 1 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_HAT_12_6 tlLabel = "HT_FMF_12_6" iDraw = 12 iTex = 6 cost = 75 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_12_7 tlLabel = "HT_FMF_12_7" iDraw = 12 iTex = 7 cost = 295 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_0 tlLabel = "HT_FMF_13_0" iDraw = 13 iTex = 0 cost = 195 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_1 tlLabel = "HT_FMF_13_1" iDraw = 13 iTex = 1 cost = 200 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_2 tlLabel = "HT_FMF_13_2" iDraw = 13 iTex = 2 cost = 160 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_3 tlLabel = "HT_FMF_13_3" iDraw = 13 iTex = 3 cost = 855 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_4 tlLabel = "HT_FMF_13_4" iDraw = 13 iTex = 4 cost = 1615 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_5 tlLabel = "HT_FMF_13_5" iDraw = 13 iTex = 5 cost = 1130 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_6 tlLabel = "HT_FMF_13_6" iDraw = 13 iTex = 6 cost = 165 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_13_7 tlLabel = "HT_FMF_13_7" iDraw = 13 iTex = 7 cost = 215 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_0 tlLabel = "HT_FMF_14_0" iDraw = 14 iTex = 0 cost = 145 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_1 tlLabel = "HT_FMF_14_1" iDraw = 14 iTex = 1 cost = 250 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_2 tlLabel = "HT_FMF_14_2" iDraw = 14 iTex = 2 cost = 110 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_3 tlLabel = "HT_FMF_14_3" iDraw = 14 iTex = 3 cost = 145 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_4 tlLabel = "HT_FMF_14_4" iDraw = 14 iTex = 4 cost = 105 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_5 tlLabel = "HT_FMF_14_5" iDraw = 14 iTex = 5 cost = 105 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_6 tlLabel = "HT_FMF_14_6" iDraw = 14 iTex = 6 cost = 115 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_14_7 tlLabel = "HT_FMF_14_7" iDraw = 14 iTex = 7 cost = 115 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_0 tlLabel = "HT_FMF_15_0" iDraw = 15 iTex = 0 cost = 390 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_1 tlLabel = "HT_FMF_15_1" iDraw = 15 iTex = 1 cost = 395 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_2 tlLabel = "HT_FMF_15_2" iDraw = 15 iTex = 2 cost = 595 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_3 tlLabel = "HT_FMF_15_3" iDraw = 15 iTex = 3 cost = 425 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_4 tlLabel = "HT_FMF_15_4" iDraw = 15 iTex = 4 cost = 600 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_5 tlLabel = "HT_FMF_15_5" iDraw = 15 iTex = 5 cost = 590 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_6 tlLabel = "HT_FMF_15_6" iDraw = 15 iTex = 6 cost = 595 ePropType = PROP_TYPE_HEAD iType = 1 BREAK CASE PROPS_FMF_HAT_15_7 tlLabel = "HT_FMF_15_7" iDraw = 15 iTex = 7 cost = 555 ePropType = PROP_TYPE_HEAD iType = 1 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_HELMET_16_0 tlLabel = "HE_FMF_16_0" iDraw = 16 iTex = 0 cost = 1060 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_1 tlLabel = "HE_FMF_16_1" iDraw = 16 iTex = 1 cost = 1400 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_2 tlLabel = "HE_FMF_16_2" iDraw = 16 iTex = 2 cost = 1315 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_3 tlLabel = "HE_FMF_16_3" iDraw = 16 iTex = 3 cost = 1230 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_4 tlLabel = "HE_FMF_16_4" iDraw = 16 iTex = 4 cost = 1145 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_5 tlLabel = "HE_FMF_16_5" iDraw = 16 iTex = 5 cost = 8450 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_6 tlLabel = "HE_FMF_16_6" iDraw = 16 iTex = 6 cost = 675 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_16_7 tlLabel = "HE_FMF_16_7" iDraw = 16 iTex = 7 cost = 8750 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_0 tlLabel = "HE_FMF_17_0" iDraw = 17 iTex = 0 cost = 975 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_1 tlLabel = "HE_FMF_17_1" iDraw = 17 iTex = 1 cost = 750 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_2 tlLabel = "HE_FMF_17_2" iDraw = 17 iTex = 2 cost = 865 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_3 tlLabel = "HE_FMF_17_3" iDraw = 17 iTex = 3 cost = 890 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_4 tlLabel = "HE_FMF_17_4" iDraw = 17 iTex = 4 cost = 730 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_5 tlLabel = "HE_FMF_17_5" iDraw = 17 iTex = 5 cost = 650 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_6 tlLabel = "HE_FMF_17_6" iDraw = 17 iTex = 6 cost = 645 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_17_7 tlLabel = "HE_FMF_17_7" iDraw = 17 iTex = 7 cost = 755 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_0 tlLabel = "HE_FMF_18_0" iDraw = 18 iTex = 0 cost = 13850 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_1 tlLabel = "HE_FMF_18_1" iDraw = 18 iTex = 1 cost = 2900 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_2 tlLabel = "HE_FMF_18_2" iDraw = 18 iTex = 2 cost = 2895 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_3 tlLabel = "HE_FMF_18_3" iDraw = 18 iTex = 3 cost = 12500 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_4 tlLabel = "HE_FMF_18_4" iDraw = 18 iTex = 4 cost = 15000 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_5 tlLabel = "HE_FMF_18_5" iDraw = 18 iTex = 5 cost = 14750 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_6 tlLabel = "HE_FMF_18_6" iDraw = 18 iTex = 6 cost = 13150 ePropType = PROP_TYPE_HEAD iType = 2 BREAK CASE PROPS_FMF_HELMET_18_7 tlLabel = "HE_FMF_18_7" iDraw = 18 iTex = 7 cost = 2925 ePropType = PROP_TYPE_HEAD iType = 2 BREAK ENDSWITCH SWITCH eItem CASE PROPS_FMF_GLASSES_0_0 tlLabel = "G_FMF_0_0" iDraw = 0 iTex = 0 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_1 tlLabel = "G_FMF_0_1" iDraw = 0 iTex = 1 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_2 tlLabel = "G_FMF_0_2" iDraw = 0 iTex = 2 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_3 tlLabel = "G_FMF_0_3" iDraw = 0 iTex = 3 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_4 tlLabel = "G_FMF_0_4" iDraw = 0 iTex = 4 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_5 tlLabel = "G_FMF_0_5" iDraw = 0 iTex = 5 cost = 80 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_6 tlLabel = "G_FMF_0_6" iDraw = 0 iTex = 6 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_7 tlLabel = "G_FMF_0_7" iDraw = 0 iTex = 7 cost = 90 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_0_8 tlLabel = "CLO_EXF_G_0_8" iDraw = 0 iTex = 8 cost = 820 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_0_9 tlLabel = "CLO_EXF_G_0_9" iDraw = 0 iTex = 9 cost = 435 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_0_10 tlLabel = "CLO_EXF_G_0_10" iDraw = 0 iTex = 10 cost = 500 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_1_0 tlLabel = "G_FMF_1_0" iDraw = 1 iTex = 0 cost = 160 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_1 tlLabel = "G_FMF_1_1" iDraw = 1 iTex = 1 cost = 165 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_2 tlLabel = "G_FMF_1_2" iDraw = 1 iTex = 2 cost = 170 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_3 tlLabel = "G_FMF_1_3" iDraw = 1 iTex = 3 cost = 135 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_4 tlLabel = "G_FMF_1_4" iDraw = 1 iTex = 4 cost = 120 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_5 tlLabel = "G_FMF_1_5" iDraw = 1 iTex = 5 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_6 tlLabel = "G_FMF_1_6" iDraw = 1 iTex = 6 cost = 140 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_7 tlLabel = "G_FMF_1_7" iDraw = 1 iTex = 7 cost = 130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_1_8 tlLabel = "CLO_EXF_G_1_8" iDraw = 1 iTex = 8 cost = 970 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_1_9 tlLabel = "CLO_EXF_G_1_9" iDraw = 1 iTex = 9 cost = 585 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_1_10 tlLabel = "CLO_EXF_G_1_10" iDraw = 1 iTex = 10 cost = 650 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_2_0 tlLabel = "G_FMF_2_0" iDraw = 2 iTex = 0 cost = 180 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_1 tlLabel = "G_FMF_2_1" iDraw = 2 iTex = 1 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_2 tlLabel = "G_FMF_2_2" iDraw = 2 iTex = 2 cost = 115 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_3 tlLabel = "G_FMF_2_3" iDraw = 2 iTex = 3 cost = 120 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_4 tlLabel = "G_FMF_2_4" iDraw = 2 iTex = 4 cost = 595 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_5 tlLabel = "G_FMF_2_5" iDraw = 2 iTex = 5 cost = 160 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_6 tlLabel = "G_FMF_2_6" iDraw = 2 iTex = 6 cost = 545 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_7 tlLabel = "G_FMF_2_7" iDraw = 2 iTex = 7 cost = 590 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_2_8 tlLabel = "CLO_EXF_G_2_8" iDraw = 2 iTex = 8 cost = 1125 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_2_9 tlLabel = "CLO_EXF_G_2_9" iDraw = 2 iTex = 9 cost = 740 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_2_10 tlLabel = "CLO_EXF_G_2_10" iDraw = 2 iTex = 10 cost = 805 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_3_0 tlLabel = "G_FMF_3_0" iDraw = 3 iTex = 0 cost = 6250 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_1 tlLabel = "G_FMF_3_1" iDraw = 3 iTex = 1 cost = 4065 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_2 tlLabel = "G_FMF_3_2" iDraw = 3 iTex = 2 cost = 3585 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_3 tlLabel = "G_FMF_3_3" iDraw = 3 iTex = 3 cost = 4075 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_4 tlLabel = "G_FMF_3_4" iDraw = 3 iTex = 4 cost = 4935 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_5 tlLabel = "G_FMF_3_5" iDraw = 3 iTex = 5 cost = 130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_6 tlLabel = "G_FMF_3_6" iDraw = 3 iTex = 6 cost = 5600 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_7 tlLabel = "G_FMF_3_7" iDraw = 3 iTex = 7 cost = 4790 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_3_8 tlLabel = "CLO_EXF_G_3_8" iDraw = 3 iTex = 8 cost = 2315 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_3_9 tlLabel = "CLO_EXF_G_3_9" iDraw = 3 iTex = 9 cost = 1930 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_3_10 tlLabel = "CLO_EXF_G_3_10" iDraw = 3 iTex = 10 cost = 1995 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_4_0 tlLabel = "G_FMF_4_0" iDraw = 4 iTex = 0 cost = 2245 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_1 tlLabel = "G_FMF_4_1" iDraw = 4 iTex = 1 cost = 250 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_2 tlLabel = "G_FMF_4_2" iDraw = 4 iTex = 2 cost = 210 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_3 tlLabel = "G_FMF_4_3" iDraw = 4 iTex = 3 cost = 245 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_4 tlLabel = "G_FMF_4_4" iDraw = 4 iTex = 4 cost = 1205 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_5 tlLabel = "G_FMF_4_5" iDraw = 4 iTex = 5 cost = 205 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_6 tlLabel = "G_FMF_4_6" iDraw = 4 iTex = 6 cost = 2215 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_7 tlLabel = "G_FMF_4_7" iDraw = 4 iTex = 7 cost = 215 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_4_8 tlLabel = "CLO_EXF_G_4_8" iDraw = 4 iTex = 8 cost = 2835 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_4_9 tlLabel = "CLO_EXF_G_4_9" iDraw = 4 iTex = 9 cost = 2450 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_4_10 tlLabel = "CLO_EXF_G_4_10" iDraw = 4 iTex = 10 cost = 2515 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_5_0 tlLabel = "G_FMF_5_0" iDraw = 5 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_1 tlLabel = "G_FMF_5_1" iDraw = 5 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_2 tlLabel = "G_FMF_5_2" iDraw = 5 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_3 tlLabel = "G_FMF_5_3" iDraw = 5 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_4 tlLabel = "G_FMF_5_4" iDraw = 5 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_5 tlLabel = "G_FMF_5_5" iDraw = 5 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_6 tlLabel = "G_FMF_5_6" iDraw = 5 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_7 tlLabel = "G_FMF_5_7" iDraw = 5 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_5_8 tlLabel = "G_FMF_5_8" iDraw = 5 iTex = 8 cost = 50 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_5_9 tlLabel = "G_FMF_5_9" iDraw = 5 iTex = 9 cost = 50 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_5_10 tlLabel = "G_FMF_5_10" iDraw = 5 iTex = 10 cost = 50 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_6_0 tlLabel = "G_FMF_6_0" iDraw = 6 iTex = 0 cost = 5000 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_6_1 tlLabel = "G_FMF_6_1" iDraw = 6 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_2 tlLabel = "G_FMF_6_2" iDraw = 6 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_3 tlLabel = "G_FMF_6_3" iDraw = 6 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_4 tlLabel = "G_FMF_6_4" iDraw = 6 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_5 tlLabel = "G_FMF_6_5" iDraw = 6 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_6 tlLabel = "G_FMF_6_6" iDraw = 6 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_7 tlLabel = "G_FMF_6_7" iDraw = 6 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_6_8 tlLabel = "CLO_EXF_G_6_8" iDraw = 6 iTex = 8 cost = 2820 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_6_9 tlLabel = "CLO_EXF_G_6_9" iDraw = 6 iTex = 9 cost = 2435 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_6_10 tlLabel = "CLO_EXF_G_6_10" iDraw = 6 iTex = 10 cost = 2500 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_7_0 tlLabel = "G_FMF_7_0" iDraw = 7 iTex = 0 cost = 4815 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_1 tlLabel = "G_FMF_7_1" iDraw = 7 iTex = 1 cost = 4795 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_2 tlLabel = "G_FMF_7_2" iDraw = 7 iTex = 2 cost = 4305 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_3 tlLabel = "G_FMF_7_3" iDraw = 7 iTex = 3 cost = 4305 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_4 tlLabel = "G_FMF_7_4" iDraw = 7 iTex = 4 cost = 4965 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_5 tlLabel = "G_FMF_7_5" iDraw = 7 iTex = 5 cost = 480 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_6 tlLabel = "G_FMF_7_6" iDraw = 7 iTex = 6 cost = 465 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_7 tlLabel = "G_FMF_7_7" iDraw = 7 iTex = 7 cost = 4320 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_7_8 tlLabel = "CLO_EXF_G_7_8" iDraw = 7 iTex = 8 cost = 2390 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_7_9 tlLabel = "CLO_EXF_G_7_9" iDraw = 7 iTex = 9 cost = 2005 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_7_10 tlLabel = "CLO_EXF_G_7_10" iDraw = 7 iTex = 10 cost = 2070 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG ENDSWITCH SWITCH eItem CASE PROPS_FMF_GLASSES_8_0 tlLabel = "G_FMF_8_0" iDraw = 8 iTex = 0 cost = 500 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_8_1 tlLabel = "G_FMF_8_1" iDraw = 8 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_2 tlLabel = "G_FMF_8_2" iDraw = 8 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_3 tlLabel = "G_FMF_8_3" iDraw = 8 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_4 tlLabel = "G_FMF_8_4" iDraw = 8 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_5 tlLabel = "G_FMF_8_5" iDraw = 8 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_6 tlLabel = "G_FMF_8_6" iDraw = 8 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_7 tlLabel = "G_FMF_8_7" iDraw = 8 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_8_8 tlLabel = "CLO_EXF_G_8_8" iDraw = 8 iTex = 8 cost = 645 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_8_9 tlLabel = "CLO_EXF_G_8_9" iDraw = 8 iTex = 9 cost = 260 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_8_10 tlLabel = "CLO_EXF_G_8_10" iDraw = 8 iTex = 10 cost = 325 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_9_0 tlLabel = "G_FMF_9_0" iDraw = 9 iTex = 0 cost = 70 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_1 tlLabel = "G_FMF_9_1" iDraw = 9 iTex = 1 cost = 60 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_2 tlLabel = "G_FMF_9_2" iDraw = 9 iTex = 2 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_3 tlLabel = "G_FMF_9_3" iDraw = 9 iTex = 3 cost = 570 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_4 tlLabel = "G_FMF_9_4" iDraw = 9 iTex = 4 cost = 525 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_5 tlLabel = "G_FMF_9_5" iDraw = 9 iTex = 5 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_6 tlLabel = "G_FMF_9_6" iDraw = 9 iTex = 6 cost = 75 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_7 tlLabel = "G_FMF_9_7" iDraw = 9 iTex = 7 cost = 90 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_9_8 tlLabel = "CLO_EXF_G_9_8" iDraw = 9 iTex = 8 cost = 645 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_9_9 tlLabel = "CLO_EXF_G_9_9" iDraw = 9 iTex = 9 cost = 260 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_9_10 tlLabel = "CLO_EXF_G_9_10" iDraw = 9 iTex = 10 cost = 325 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_10_0 tlLabel = "G_FMF_10_0" iDraw = 10 iTex = 0 cost = 4065 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_1 tlLabel = "G_FMF_10_1" iDraw = 10 iTex = 1 cost = 65 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_2 tlLabel = "G_FMF_10_2" iDraw = 10 iTex = 2 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_3 tlLabel = "G_FMF_10_3" iDraw = 10 iTex = 3 cost = 4275 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_4 tlLabel = "G_FMF_10_4" iDraw = 10 iTex = 4 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_5 tlLabel = "G_FMF_10_5" iDraw = 10 iTex = 5 cost = 80 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_6 tlLabel = "G_FMF_10_6" iDraw = 10 iTex = 6 cost = 85 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_7 tlLabel = "G_FMF_10_7" iDraw = 10 iTex = 7 cost = 90 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_10_8 tlLabel = "CLO_EXF_G_10_8" iDraw = 10 iTex = 8 cost = 2315 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_10_9 tlLabel = "CLO_EXF_G_10_9" iDraw = 10 iTex = 9 cost = 1930 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_10_10 tlLabel = "CLO_EXF_G_10_10" iDraw = 10 iTex = 10 cost = 1995 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_11_0 tlLabel = "G_FMF_11_0" iDraw = 11 iTex = 0 cost = 3660 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_1 tlLabel = "G_FMF_11_1" iDraw = 11 iTex = 1 cost = 4165 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_2 tlLabel = "G_FMF_11_2" iDraw = 11 iTex = 2 cost = 3670 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_3 tlLabel = "G_FMF_11_3" iDraw = 11 iTex = 3 cost = 135 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_4 tlLabel = "G_FMF_11_4" iDraw = 11 iTex = 4 cost = 3620 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_5 tlLabel = "G_FMF_11_5" iDraw = 11 iTex = 5 cost = 3610 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_6 tlLabel = "G_FMF_11_6" iDraw = 11 iTex = 6 cost = 4140 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_11_7 tlLabel = "G_FMF_11_7" iDraw = 11 iTex = 7 cost = 130 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_12_0 tlLabel = "G_FMF_12_0" iDraw = 12 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_1 tlLabel = "G_FMF_12_1" iDraw = 12 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_2 tlLabel = "G_FMF_12_2" iDraw = 12 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_3 tlLabel = "G_FMF_12_3" iDraw = 12 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_4 tlLabel = "G_FMF_12_4" iDraw = 12 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_5 tlLabel = "G_FMF_12_5" iDraw = 12 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_6 tlLabel = "G_FMF_12_6" iDraw = 12 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_12_7 tlLabel = "G_FMF_12_7" iDraw = 12 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_0 tlLabel = "G_FMF_13_0" iDraw = 13 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_1 tlLabel = "G_FMF_13_1" iDraw = 13 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_2 tlLabel = "G_FMF_13_2" iDraw = 13 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_3 tlLabel = "G_FMF_13_3" iDraw = 13 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_4 tlLabel = "G_FMF_13_4" iDraw = 13 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_5 tlLabel = "G_FMF_13_5" iDraw = 13 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_6 tlLabel = "G_FMF_13_6" iDraw = 13 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_13_7 tlLabel = "G_FMF_13_7" iDraw = 13 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_14_0 tlLabel = "G_FMF_14_0" iDraw = 14 iTex = 0 cost = 325 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_1 tlLabel = "G_FMF_14_1" iDraw = 14 iTex = 1 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_2 tlLabel = "G_FMF_14_2" iDraw = 14 iTex = 2 cost = 115 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_3 tlLabel = "G_FMF_14_3" iDraw = 14 iTex = 3 cost = 120 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_4 tlLabel = "G_FMF_14_4" iDraw = 14 iTex = 4 cost = 135 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_5 tlLabel = "G_FMF_14_5" iDraw = 14 iTex = 5 cost = 110 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_6 tlLabel = "G_FMF_14_6" iDraw = 14 iTex = 6 cost = 115 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_7 tlLabel = "G_FMF_14_7" iDraw = 14 iTex = 7 cost = 120 ePropType = PROP_TYPE_EYES iType = 3 BREAK CASE PROPS_FMF_GLASSES_14_8 tlLabel = "CLO_EXF_G_14_8" iDraw = 14 iTex = 8 cost = 1490 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_14_9 tlLabel = "CLO_EXF_G_14_9" iDraw = 14 iTex = 9 cost = 1105 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_14_10 tlLabel = "CLO_EXF_G_14_10" iDraw = 14 iTex = 10 cost = 1170 ePropType = PROP_TYPE_EYES iType = 3 BREAK // New for NG CASE PROPS_FMF_GLASSES_15_0 tlLabel = "G_FMF_15_0" iDraw = 15 iTex = 0 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_1 tlLabel = "G_FMF_15_1" iDraw = 15 iTex = 1 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_2 tlLabel = "G_FMF_15_2" iDraw = 15 iTex = 2 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_3 tlLabel = "G_FMF_15_3" iDraw = 15 iTex = 3 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_4 tlLabel = "G_FMF_15_4" iDraw = 15 iTex = 4 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_5 tlLabel = "G_FMF_15_5" iDraw = 15 iTex = 5 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_6 tlLabel = "G_FMF_15_6" iDraw = 15 iTex = 6 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_GLASSES_15_7 tlLabel = "G_FMF_15_7" iDraw = 15 iTex = 7 cost = 0 ePropType = PROP_TYPE_EYES iType = 3 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH SWITCH eItem CASE PROPS_FMF_WATCH_0_0 tlLabel = "W_FMF_0_0" iDraw = 0 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_WATCH_0_1 tlLabel = "W_FMF_0_1" iDraw = 0 iTex = 1 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_WATCH_0_2 tlLabel = "W_FMF_0_2" iDraw = 0 iTex = 2 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_WATCH_0_3 tlLabel = "W_FMF_0_3" iDraw = 0 iTex = 3 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_WATCH_0_4 tlLabel = "W_FMF_0_4" iDraw = 0 iTex = 4 cost = 825 ePropType = PROP_TYPE_L_WRIST iType = 4 BREAK CASE PROPS_FMF_WATCH_1_0 tlLabel = "W_FMF_1_0" iDraw = 1 iTex = 0 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_WATCH_1_1 tlLabel = "W_FMF_1_1" iDraw = 1 iTex = 1 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC CASE PROPS_FMF_WATCH_1_2 tlLabel = "W_FMF_1_2" iDraw = 1 iTex = 2 cost = 0 ePropType = PROP_TYPE_L_WRIST iType = 4 bOutfitOnly = TRUE BREAK // moved to DLC ENDSWITCH IF iType = 1 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMF_EARDEFENDERS_0_0) IF i >= 0 AND i < 121 IF i > 8 i -= 1 //Because PROPS_FMF_DUNCE_HAT_1_0 puts this out of sync ENDIF cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleHatsDiscount[i] * g_sMPTunableGroups.ffemale_hats_group_modifier)) ENDIF ELIF iType = 2 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMF_HELMET_16_0) IF i >= 0 AND i < 24 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleHelmetsDiscount[i] * g_sMPTunableGroups.ffemale_helmets_group_modifier)) ENDIF ELIF iType = 3 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMF_GLASSES_0_0) IF i >= 0 AND i < 128 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleGlassesDiscount[i] * g_sMPTunableGroups.ffemale_glasses_group_modifier)) ENDIF ELIF iType = 4 INT i = ENUM_TO_INT(eItem) - ENUM_TO_INT(PROPS_FMF_WATCH_0_0) IF i >= 0 AND i < 10 cost = ROUND((TO_FLOAT(cost) * g_sMPTunables.fFemaleWatchesDiscount[i] * g_sMPTunableGroups.ffemale_watches_group_modifier)) ENDIF ENDIF #IF NOT USE_TU_CHANGES FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) IF g_sTempCompData[0].iBitset = -1 FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_FMF_DLC, iDLCHash) ENDIF #ENDIF #IF USE_TU_CHANGES IF eItem >= PROPS_FMF_DLC g_sTempCompData[0].iPedID = 4 // FMF0 FILL_PED_COMP_DATA_DLC(eType, eItem, PROPS_FMF_DLC, iDLCHash) IF g_sTempCompData[0].iCost > 0 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_PROP)) g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_hats_group_modifier)) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_GLASSES, ENUM_TO_INT(SHOP_PED_PROP)) g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_glasses_group_modifier)) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_WATCH, ENUM_TO_INT(SHOP_PED_PROP)) g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_watches_group_modifier)) //ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) // g_sTempCompData[0].iCost = ROUND((TO_FLOAT(g_sTempCompData[0].iCost) * g_sMPTunableGroups.ffemale_helmets_group_modifier)) ENDIF ENDIF ELSE FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDIF #ENDIF ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_F_FM_OUTFIT(PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_OUTFIT SWITCH eItem // Always set bOutfitOnly param to TRUE for the default outfit CASE OUTFIT_FMF_DEFAULT iDraw = 0 iTex = 0 bOutfitOnly = TRUE BREAK CASE OUTFIT_FMF_SUB_1 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S1" BREAK CASE OUTFIT_FMF_SUB_2 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S2" BREAK CASE OUTFIT_FMF_SUB_3 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S3" BREAK CASE OUTFIT_FMF_SUB_4 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S4" BREAK CASE OUTFIT_FMF_SUB_5 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S5" BREAK CASE OUTFIT_FMF_SUB_6 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S6" BREAK CASE OUTFIT_FMF_SUB_7 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S7" BREAK CASE OUTFIT_FMF_SUB_8 iDraw = 0 iTex = 0 tlLabel = "O_FMF_S8" BREAK CASE OUTFIT_FMF_PONS_1 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P1" BREAK CASE OUTFIT_FMF_PONS_2 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P2" BREAK CASE OUTFIT_FMF_PONS_3 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P3" BREAK CASE OUTFIT_FMF_PONS_4 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P4" BREAK CASE OUTFIT_FMF_PONS_5 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P5" BREAK CASE OUTFIT_FMF_PONS_6 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P6" BREAK CASE OUTFIT_FMF_PONS_7 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P7" BREAK CASE OUTFIT_FMF_PONS_8 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P8" BREAK CASE OUTFIT_FMF_PONS_9 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P9" BREAK CASE OUTFIT_FMF_PONS_10 iDraw = 0 iTex = 0 tlLabel = "O_FMF_P10" BREAK CASE OUTFIT_FMF_BIN_1 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B1" BREAK CASE OUTFIT_FMF_BIN_2 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B2" BREAK CASE OUTFIT_FMF_BIN_3 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B3" BREAK CASE OUTFIT_FMF_BIN_4 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B4" BREAK CASE OUTFIT_FMF_BIN_5 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B5" BREAK CASE OUTFIT_FMF_BIN_6 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B6" BREAK CASE OUTFIT_FMF_BIN_7 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B7" BREAK CASE OUTFIT_FMF_BIN_8 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B8" BREAK CASE OUTFIT_FMF_BIN_9 iDraw = 0 iTex = 0 tlLabel = "O_FMF_B9" BREAK #IF USE_TU_CHANGES DEFAULT #IF USE_TU_CHANGES g_sTempCompData[0].iPedID = 4 // FMF0 #ENDIF FILL_PED_COMP_DATA_DLC(eType, eItem, OUTFIT_FMF_DLC, iDLCHash) EXIT BREAK #ENDIF ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMP_DATA_FMF_PROPGROUP(PED_COMP_NAME_ENUM eItem) BOOL bOutfitOnly = FALSE INT cost = 10 // default item cost. TEXT_LABEL_15 tlLabel INT iDraw = 0 INT iTex = 0 PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY PED_COMP_STYLE_ENUM eStyle = COMP_STYLE_SENSIBLE PED_COMP_TYPE_ENUM eType = COMP_TYPE_PROPGROUP SWITCH eItem CASE PROPGROUP_NONE iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_2 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_3 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_4 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_5 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_6 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_7 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_SUB_8 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_1 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_2 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_3 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_4 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_6 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_7 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_8 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_9 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_PONS_10 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_1 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_2 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_4 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_5 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_6 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_7 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_8 iDraw = 0 iTex = 0 BREAK CASE PROPGROUP_FMF_BIN_9 iDraw = 0 iTex = 0 BREAK ENDSWITCH FILL_PED_COMPONENT_ITEM_DATA(g_sTempCompData[0], eType, eItem, tlLabel, iDraw, iTex, cost, bOutfitOnly, ePropType, eStyle) ENDPROC /// PURPOSE: Sets all the appropriate bits and details for specific ped and component item PROC FILL_PED_COMPONENT_ITEM_DATA_F_FM(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) SWITCH eType CASE COMP_TYPE_HAIR FILL_PED_COMP_DATA_F_FM_HAIR(eItem, iDLCHash) BREAK // MAIN UPPER CASE COMP_TYPE_JBIB FILL_PED_COMP_DATA_F_FM_JBIB(eItem, iDLCHash) BREAK // SECONDARY UPPER CASE COMP_TYPE_SPECIAL FILL_PED_COMP_DATA_F_FM_SPECIAL(eItem, iDLCHash) BREAK // Body Armour CASE COMP_TYPE_SPECIAL2 FILL_PED_COMP_DATA_F_FM_SPECIAL2(eItem, iDLCHash) BREAK // SKIN CASE COMP_TYPE_TORSO FILL_PED_COMP_DATA_F_FM_TORSO(eItem, iDLCHash) BREAK CASE COMP_TYPE_LEGS FILL_PED_COMP_DATA_F_FM_LEGS(eItem, iDLCHash) BREAK CASE COMP_TYPE_FEET FILL_PED_COMP_DATA_F_FM_FEET(eItem, iDLCHash) BREAK CASE COMP_TYPE_BERD FILL_PED_COMP_DATA_F_FM_BERD(eItem, iDLCHash) BREAK // Accessories CASE COMP_TYPE_TEETH FILL_PED_COMP_DATA_F_FM_TEETH(eItem, iDLCHash) BREAK // Used to display crew logos CASE COMP_TYPE_DECL FILL_PED_COMP_DATA_F_FM_DECL(eItem, iDLCHash) BREAK CASE COMP_TYPE_PROPS FILL_PED_COMP_DATA_F_FM_PROPS(eItem, iDLCHash) BREAK CASE COMP_TYPE_OUTFIT FILL_PED_COMP_DATA_F_FM_OUTFIT(eItem, iDLCHash) BREAK CASE COMP_TYPE_HAND FILL_PED_COMP_DATA_F_FM_HAND(eItem, iDLCHash) BREAK CASE COMP_TYPE_HEAD FILL_PED_COMP_DATA_F_FM_HEAD(eItem, iDLCHash) BREAK #IF USE_TU_CHANGES CASE COMP_TYPE_PROPGROUP FILL_PED_COMP_DATA_FMF_PROPGROUP(eItem) BREAK #ENDIF ENDSWITCH // TEMP - remove once Kevin has unlocks covered. // IF eType != COMP_TYPE_HAIR // SET_BIT(g_sTempCompData[0].iProperties, PED_COMPONENT_AVAILABLE_BIT) // ENDIF ENDPROC // ---------GET PED COMP DATA STRUCT FUNCTIONS --------------------------------- /// PURPOSE: Resets the global struct used by the get_ped_comp_data_struct functions PROC RESET_GLOBAL_PED_COMP_STRUCT() g_sTempCompData[0].iItemBit = -1 g_sTempCompData[0].iBitset = -1 g_sTempCompData[0].iPedID = -1 g_sTempCompData[0].iDrawable = -1 g_sTempCompData[0].iTexture = -1 g_sTempCompData[0].iCost = 0 g_sTempCompData[0].iProperties = 0 g_sTempCompData[0].ePropType = PROP_TYPE_DUMMY g_sTempCompData[0].ePropPos = ANCHOR_HEAD g_sTempCompData[0].eStyle = COMP_STYLE_EMPTY g_sTempCompData[0].sLabel = "NO_LABEL" ENDPROC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_MICHAEL(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMP_DATA_MICHAEL(eType, eItem) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_MICHAEL_TORSO(PED_COMP_NAME_ENUM eItem) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMP_DATA_MICHAEL_TORSO(eItem) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_MICHAEL_LEGS(PED_COMP_NAME_ENUM eItem) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMP_DATA_MICHAEL_LEGS(eItem) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_FRANKLIN(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMP_DATA_FRANKLIN(eType, eItem) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_TREVOR(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMP_DATA_TREVOR(eType, eItem) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) RESET_GLOBAL_PED_COMP_STRUCT() UNUSED_PARAMETER(iDLCHash) // ------SINGLEPLAYER--------------------- IF (ePedModel = PLAYER_ZERO) FILL_PED_COMP_DATA_MICHAEL(eType, eItem) ELIF (ePedModel = PLAYER_ONE) FILL_PED_COMP_DATA_FRANKLIN(eType, eItem) ELIF (ePedModel = PLAYER_TWO) FILL_PED_COMP_DATA_TREVOR(eType, eItem) ENDIF RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_M_FM(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMPONENT_ITEM_DATA_M_FM(eType, eItem, iDLCHash) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_F_FM(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) RESET_GLOBAL_PED_COMP_STRUCT() FILL_PED_COMPONENT_ITEM_DATA_F_FM(eType, eItem, iDLCHash) RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: Returns the peds component details for the specified component item FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMP_DATA_FOR_ITEM_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHash = -1) RESET_GLOBAL_PED_COMP_STRUCT() // ------MULTIPLAYER--------------------- IF (ePedModel = MP_M_FREEMODE_01) FILL_PED_COMPONENT_ITEM_DATA_M_FM(eType, eItem, iDLCHash) ELIF (ePedModel = MP_F_FREEMODE_01) FILL_PED_COMPONENT_ITEM_DATA_F_FM(eType, eItem, iDLCHash) ENDIF RETURN g_sTempCompData[0] ENDFUNC /// PURPOSE: /// Returns prop data for the alternate version of the specified prop /// PARAMS: /// iAlternateID: Which of the available alternates we need data for /// iPropID: Returns the prop ID of the alternate prop /// iTextureID: Returns the texture ID of the alternate prop /// iAltPropNameHash:Returns the hash of the item PROC EXPENSIVE_GET_PROP_ALT_DATA(INT iItemToCheckNameHash, INT iAlternateID, INT &iPropID, INT &iTextureID, INT &iAltPropNameHash, PED_COMP_NAME_ENUM &eAltPropName) INT iAltPropCount = GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iItemToCheckNameHash) //Check we have any alternate props and the alternate ID is valid IF iAltPropCount > 0 AND iAlternateID < iAltPropCount AND iAlternateID > -1 scrShopPedProp propItem INT iRetNameHash = 0 INT iVarPropEnum = 0 INT iVarProAnchor = 0 GET_VARIANT_PROP(iItemToCheckNameHash, iAlternateID, iRetNameHash, iVarPropEnum, iVarProAnchor) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" INIT_SHOP_PED_PROP(propItem) GET_SHOP_PED_PROP(iRetNameHash, propItem) iAltPropNameHash = iRetNameHash iPropID = propItem.m_propIndex iTextureID = propItem.m_textureIndex eAltPropName = GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), propItem.m_propIndex, propItem.m_textureIndex, ANCHOR_HEAD) EXIT ELSE CASSERTLN(DEBUG_SHOPS, "EXPENSIVE_GET_PROP_ALT_DATA alt prop hash returned is 0. from checking item: ", iItemToCheckNameHash, " for alternate: ", iAlternateID) ENDIF ELSE DEBUG_PRINTCALLSTACK() CASSERTLN(DEBUG_SHOPS, "EXPENSIVE_GET_PROP_ALT_DATA Invalid iAlternateID: ", iAlternateID, " or no alternate props available: ", iAltPropCount) ENDIF ENDPROC /// PURPOSE: Looks up the DLC for the DLC outfit enum PROC SETUP_DLC_OUTFIT_DATA(PED_COMP_OUTFIT_DATA_STRUCT &sData, MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM eDLCItem) #IF NOT USE_TU_CHANGES sData.eItems[COMP_TYPE_HEAD] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_HAIR] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_TORSO] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_LEGS] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_FEET] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_HAND] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_SPECIAL] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_SPECIAL2] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_DECL] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_BERD] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_TEETH] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_JBIB] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_PROPGROUP] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_PROPS] = DUMMY_PED_COMP INT iPedID = 0 IF eModel = PLAYER_ZERO iPedID = 0 sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(PROPGROUP_P0_DLC)+(ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem))) ELIF eModel = PLAYER_ONE iPedID = 1 sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(PROPGROUP_P1_DLC)+(ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem))) ELIF eModel = PLAYER_TWO iPedID = 2 sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(PROPGROUP_P2_DLC)+(ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem))) ELIF eModel = MP_M_FREEMODE_01 iPedID = 3 ELIF eModel = MP_F_FREEMODE_01 iPedID = 4 ENDIF scrShopPedOutfit outfitItem scrShopPedComponent componentItem INIT_SHOP_PED_COMPONENT(componentItem) scrShopPedComponent subComponentItem INIT_SHOP_PED_COMPONENT(subComponentItem) INT iDLCItem INT iDLCCompIndex INT iCompHash // INT iDLCTypeCount INT iDLCItemCount = SETUP_SHOP_PED_OUTFIT_QUERY(iPedID, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_OUTFIT(iDLCItem, outfitItem) IF NOT IS_CONTENT_ITEM_LOCKED(outfitItem.m_lockHash) //IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) REPEAT outfitItem.m_numberOfComponents iDLCCompIndex iCompHash = GET_SHOP_PED_OUTFIT_COMPONENT(outfitItem.m_nameHash, iDLCCompIndex) IF iCompHash != -1 GET_SHOP_PED_COMPONENT(iCompHash, componentItem) IF NOT IS_CONTENT_ITEM_LOCKED(componentItem.m_lockHash) // The ped component system needs to know the PED_COMP_NAME_ENUM for each outfit item, // which kinda sucks as it means we now need to loop through all the dlc items to // match this dlc item to the correct PED_COMP_NAME_ENUM. INT iSubItem INT iSubTypeCount = 0 INT iSubCompCount = SETUP_SHOP_PED_APPAREL_QUERY(iPedID, 0, 11, ENUM_TO_INT(SHOP_PED_COMPONENT)) REPEAT iSubCompCount iSubItem GET_SHOP_PED_QUERY_COMPONENT(iSubItem, subComponentItem) IF NOT IS_CONTENT_ITEM_LOCKED(subComponentItem.m_lockHash) // Only check ped comps that are of the same type... IF subComponentItem.m_eCompType = componentItem.m_eCompType IF subComponentItem.m_nameHash = componentItem.m_nameHash sData.eItems[GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, componentItem.m_eCompType))] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(eModel, INT_TO_ENUM(PED_COMPONENT, componentItem.m_eCompType))) + iSubTypeCount) iSubItem = iSubCompCount+1 // Bail ENDIF iSubTypeCount++ ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDREPEAT EXIT //ENDIF //iDLCTypeCount++ ENDIF ENDREPEAT #ENDIF #IF USE_TU_CHANGES sData.eItems[COMP_TYPE_HEAD] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_HAIR] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_TORSO] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_LEGS] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_FEET] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_HAND] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_SPECIAL] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_SPECIAL2] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_DECL] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_BERD] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_TEETH] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_JBIB] = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0) sData.eItems[COMP_TYPE_PROPGROUP] = DUMMY_PED_COMP sData.eItems[COMP_TYPE_PROPS] = DUMMY_PED_COMP sData.bUsesTattooDecals = FALSE INT iPedID = 0 IF eModel = PLAYER_ZERO iPedID = 0 sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(PROPGROUP_P0_DLC)+(ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem))) ELIF eModel = PLAYER_ONE iPedID = 1 sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(PROPGROUP_P1_DLC)+(ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem))) ELIF eModel = PLAYER_TWO iPedID = 2 sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(PROPGROUP_P2_DLC)+(ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem))) ELIF eModel = MP_M_FREEMODE_01 iPedID = 3 ELIF eModel = MP_F_FREEMODE_01 iPedID = 4 ENDIF scrShopPedOutfit outfitItem scrOutfitCompStruct compInfo scrShopPedComponent componentItem INT iDLCCompIndex SETUP_SHOP_PED_OUTFIT_QUERY(iPedID, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) GET_SHOP_PED_QUERY_OUTFIT(ENUM_TO_INT(eItem-eDLCItem), outfitItem) CPRINTLN(DEBUG_PED_COMP, "SETUP_DLC_OUTFIT_DATA - outfit ", ENUM_TO_INT(eItem-eDLCItem), " has ", outfitItem.m_numberOfComponents, " components") IF NOT IS_CONTENT_ITEM_LOCKED(outfitItem.m_lockHash) REPEAT outfitItem.m_numberOfComponents iDLCCompIndex IF GET_SHOP_PED_OUTFIT_COMPONENT_VARIANT(outfitItem.m_nameHash, iDLCCompIndex, compInfo) IF compInfo.nameHash != 0 AND compInfo.nameHash != -1 AND compInfo.nameHash != 1849449579 // 1849449579 = "0" // The DECL slot is used for DECL ped components and tattoo decls so we need to work out which one to use. IF INT_TO_ENUM(PED_COMPONENT, compInfo.eCompType) = PED_COMP_DECL INIT_SHOP_PED_COMPONENT(componentItem) GET_SHOP_PED_COMPONENT(compInfo.nameHash, componentItem) IF compInfo.nameHash != componentItem.m_nameHash sData.bUsesTattooDecals = TRUE CPRINTLN(DEBUG_PED_COMP, "...this outfits uses a tattoo decl, hash = ", compInfo.nameHash) ENDIF ENDIF IF INT_TO_ENUM(PED_COMPONENT, compInfo.eCompType) = PED_COMP_DECL AND sData.bUsesTattooDecals sData.eItems[GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, compInfo.eCompType))] = INT_TO_ENUM(PED_COMP_NAME_ENUM, compInfo.nameHash) sData.bUsesTattooDecals = TRUE ELSE sData.eItems[GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, compInfo.eCompType))] = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, compInfo.nameHash, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, compInfo.eCompType)), iPedID) ENDIF ELIF compInfo.enumValue != -1 sData.eItems[GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, compInfo.eCompType))] = INT_TO_ENUM(PED_COMP_NAME_ENUM, compInfo.enumValue) ENDIF ENDIF ENDREPEAT // DLC props need to be handled as a propgroup. // We therefore assign the propgroup to the outfit hash and then process it in SETUP_DLC_PROPGROUP_DATA. IF outfitItem.m_numberOfProps = 0 sData.eItems[COMP_TYPE_PROPGROUP] = DUMMY_PED_COMP ELSE sData.eItems[COMP_TYPE_PROPGROUP] = INT_TO_ENUM(PED_COMP_NAME_ENUM, outfitItem.m_nameHash) ENDIF ENDIF #ENDIF ENDPROC /// PURPOSE: Looks up the props for the DLC outfit enum /// NOTE: These are only used as part of DLC outfits so the DLC propgroup enum should match the DLC outifit enum value. PROC SETUP_DLC_PROPGROUP_DATA(PED_COMP_PROPS_DATA_STRUCT &sData, MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM eDLCItem) #IF NOT USE_TU_CHANGES sData.eItems[ANCHOR_HEAD] = PROPS_HEAD_NONE sData.eItems[ANCHOR_EYES] = PROPS_EYES_NONE sData.eItems[ANCHOR_EARS] = PROPS_EARS_NONE sData.eItems[ANCHOR_MOUTH] = PROPS_MOUTH_NONE sData.eItems[ANCHOR_LEFT_HAND] = PROPS_LHAND_NONE sData.eItems[ANCHOR_RIGHT_HAND] = PROPS_RHAND_NONE sData.eItems[ANCHOR_LEFT_WRIST] = PROPS_LWRIST_NONE sData.eItems[ANCHOR_RIGHT_WRIST] = PROPS_RWRIST_NONE sData.eItems[ANCHOR_HIP] = PROPS_HIP_NONE INT iPedID = 0 IF eModel = PLAYER_ZERO iPedID = 0 ELIF eModel = PLAYER_ONE iPedID = 1 ELIF eModel = PLAYER_TWO iPedID = 2 ELIF eModel = MP_M_FREEMODE_01 iPedID = 3 ELIF eModel = MP_F_FREEMODE_01 iPedID = 4 ENDIF scrShopPedOutfit outfitItem scrShopPedProp propItem INIT_SHOP_PED_PROP(propItem) scrShopPedProp subPropItem INIT_SHOP_PED_PROP(subPropItem) INT iDLCItem INT iDLCPropIndex INT iPropHash INT iDLCTypeCount INT iDLCItemCount = SETUP_SHOP_PED_OUTFIT_QUERY(iPedID, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) REPEAT iDLCItemCount iDLCItem GET_SHOP_PED_QUERY_OUTFIT(iDLCItem, outfitItem) IF NOT IS_CONTENT_ITEM_LOCKED(outfitItem.m_lockHash) IF iDLCTypeCount = (ENUM_TO_INT(eItem)-ENUM_TO_INT(eDLCItem)) REPEAT outfitItem.m_numberOfProps iDLCPropIndex iPropHash = GET_SHOP_PED_OUTFIT_PROP(outfitItem.m_nameHash, iDLCPropIndex) IF iPropHash != -1 GET_SHOP_PED_PROP(iPropHash, propItem) IF NOT IS_CONTENT_ITEM_LOCKED(propItem.m_lockHash) // The ped component system needs to know the PED_COMP_NAME_ENUM for each outfit item, // which kinda sucks as it means we now need to loop through all the dlc items to // match this dlc item to the correct PED_COMP_NAME_ENUM. INT iSubItem INT iSubTypeCount = 0 INT iSubCompCount = SETUP_SHOP_PED_APPAREL_QUERY(iPedID, 0, 11, ENUM_TO_INT(SHOP_PED_PROP)) REPEAT iSubCompCount iSubItem GET_SHOP_PED_QUERY_PROP(iSubItem, subPropItem) IF NOT IS_CONTENT_ITEM_LOCKED(subPropItem.m_lockHash) IF subPropItem.m_nameHash = propItem.m_nameHash sData.eItems[propItem.m_eAnchorPoint] = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(eModel)) + iSubTypeCount) iSubItem = iSubCompCount+1 // Bail ENDIF iSubTypeCount++ ENDIF ENDREPEAT ENDIF ENDIF ENDREPEAT EXIT ENDIF iDLCTypeCount++ ENDIF ENDREPEAT #ENDIF #IF USE_TU_CHANGES UNUSED_PARAMETER(eDLCItem) IF ENUM_TO_INT(eItem) != 0 AND eItem != DUMMY_PED_COMP sData.eItems[ANCHOR_HEAD] = PROPS_HEAD_NONE sData.eItems[ANCHOR_EYES] = PROPS_EYES_NONE sData.eItems[ANCHOR_EARS] = PROPS_EARS_NONE sData.eItems[ANCHOR_MOUTH] = PROPS_MOUTH_NONE sData.eItems[ANCHOR_LEFT_HAND] = PROPS_LHAND_NONE sData.eItems[ANCHOR_RIGHT_HAND] = PROPS_RHAND_NONE sData.eItems[ANCHOR_LEFT_WRIST] = PROPS_LWRIST_NONE sData.eItems[ANCHOR_RIGHT_WRIST] = PROPS_RWRIST_NONE sData.eItems[ANCHOR_HIP] = PROPS_HIP_NONE INT iPedID = 0 IF eModel = PLAYER_ZERO iPedID = 0 ELIF eModel = PLAYER_ONE iPedID = 1 ELIF eModel = PLAYER_TWO iPedID = 2 ELIF eModel = MP_M_FREEMODE_01 iPedID = 3 ELIF eModel = MP_F_FREEMODE_01 iPedID = 4 ENDIF // The DLC propgroup stores the name hash of the outfit. scrShopPedOutfit outfitItem scrOutfitPropStruct propInfo INT iDLCPropIndex //SETUP_SHOP_PED_OUTFIT_QUERY(iPedID, 0)//ENUM_TO_INT(CLO_SHOP_LOW)) GET_SHOP_PED_OUTFIT(ENUM_TO_INT(eItem), outfitItem) CPRINTLN(DEBUG_PED_COMP, "SETUP_DLC_PROPGROUP_DATA - outfit ", ENUM_TO_INT(eItem), " has ", outfitItem.m_numberOfComponents, " components") IF NOT IS_CONTENT_ITEM_LOCKED(outfitItem.m_lockHash) REPEAT outfitItem.m_numberOfProps iDLCPropIndex IF GET_SHOP_PED_OUTFIT_PROP_VARIANT(outfitItem.m_nameHash, iDLCPropIndex, propInfo) AND propInfo.anchorPoint != -1 IF propInfo.nameHash != 0 AND propInfo.nameHash != -1 AND propInfo.nameHash != 1849449579 // 1849449579 = "0" CPRINTLN(DEBUG_PED_COMP, "...dlc prop ", propInfo.nameHash) sData.eItems[propInfo.anchorPoint] = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, propInfo.nameHash, COMP_TYPE_PROPS, iPedID) ELIF propInfo.enumValue != -1 CPRINTLN(DEBUG_PED_COMP, "...disk prop ", propInfo.enumValue) sData.eItems[propInfo.anchorPoint] = INT_TO_ENUM(PED_COMP_NAME_ENUM, propInfo.enumValue) ENDIF ENDIF ENDREPEAT ENDIF ENDIF #ENDIF ENDPROC /// PURPOSE: Returns the peds component details for the specified component item /// NOTE: The data returned will let us know: /// - If the ped model can have the item /// - If the item is available to wear just now /// - If the item has been acquired /// - The items component variation for the ped model /// - The component type /// - If the item is an outfit - if so we can use GET_PED_COMPONENT_DATA_FOR_OUTFIT to get the individual items /// - If the item is a propgroup - if so we can use GET_PED_COMPONENT_DATA_FOR_PROPGROUP to get the individual prop items /// /// NOTES: When setting up a new component item, add an enum in ped_component_globals.sch and /// assign the correct value (range between 0 and 31). /// If the item is an outfit, make sure the default outfit enum is assigned to 0. Also all outfits /// should just use 0 for the texture and drawable variaitons. /// If the item should be either available/acquired from the start then add them to /// SETUP_DEFAULT_PLAYER_INFO proc in player_ped_data.sch. //FUNC PED_COMP_ITEM_DATA_STRUCT GET_PED_COMPONENT_DATA_FOR_ITEM(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) // // RESET_GLOBAL_PED_COMP_STRUCT() // // // ------SINGLEPLAYER--------------------- // IF (ePedModel = PLAYER_ZERO) // FILL_PED_COMP_DATA_MICHAEL(eType, eItem) // // ELIF (ePedModel = PLAYER_ONE) // FILL_PED_COMP_DATA_FRANKLIN(eType, eItem) // // ELIF (ePedModel = PLAYER_TWO) // FILL_PED_COMP_DATA_TREVOR(eType, eItem) // // // ------MULTIPLAYER--------------------- // ELIF (ePedModel = MP_M_FREEMODE_01) // FILL_PED_COMPONENT_ITEM_DATA_M_FM(eType, eItem) // // ELIF (ePedModel = MP_F_FREEMODE_01) // FILL_PED_COMPONENT_ITEM_DATA_F_FM(eType, eItem) // ENDIF // // RETURN g_sTempCompData[0] //ENDFUNC // /// PURPOSE: Returns the peds component items for the specified component outfit /// NOTE: Default component set to -1 FUNC PED_COMP_OUTFIT_DATA_STRUCT GET_PED_COMPONENT_DATA_FOR_OUTFIT(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eItem) INT i PED_COMP_OUTFIT_DATA_STRUCT sData // Reset the array FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1 sData.eItems[i] = DUMMY_PED_COMP ENDFOR sData.bUsesTattooDecals = FALSE SWITCH ePedModel // MICHAEL CASE PLAYER_ZERO SWITCH eItem #if USE_CLF_DLC CASE OUTFIT_P0_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT, LEGS_P0_GREY_SUIT, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK #endif #if USE_NRM_DLC CASE OUTFIT_P0_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT, LEGS_P0_GREY_SUIT, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK #endif #if not use_CLF_dlc #if not USE_NRM_DLC CASE OUTFIT_P0_DEFAULT IF g_savedGlobals.sFlow.controls.flagIDs[FLOWFLAG_MIC_HAS_HAGGARD_SUIT] FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_01, LEGS_P0_GREY_SUIT_1, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) ELSE FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT, LEGS_P0_GREY_SUIT, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) ENDIF BREAK #endif #endif CASE OUTFIT_P0_FIREMAN FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_FIREMAN, LEGS_P0_FIREMAN, FEET_P0_1, HAND_P0_FIREMAN, SPECIAL_P0_FIREMAN_ACCS, SPECIAL2_P0_NONE, DECL_P0_FIREMAN, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_FIREMAN) BREAK CASE OUTFIT_P0_BALLISTICS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BALLISTICS, LEGS_P0_BALLISTICS, FEET_P0_1, HAND_P0_FIREMAN, SPECIAL_P0_BALLISTICS, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_BALLISTICS) BREAK CASE OUTFIT_P0_NAVY_JANITOR FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BOILER_SUIT_2, LEGS_P0_BOILER_SUIT_2, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_JANITOR_ACCS, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_HIGHWAY_PATROL FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_HIGHWAY_PATROL, LEGS_P0_HIGHWAY_PATROL, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_COP_BELT_2, DECL_P0_HIGHWAY_PATROL, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_HIGHWAY_PATROL) BREAK CASE OUTFIT_P0_GOLF FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, g_savedGlobals.sPlayerData.sInfo.eGolfTop[0], g_savedGlobals.sPlayerData.sInfo.eGolfPants[0], FEET_P0_1, HAND_P0_GOLF, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_GOLF) BREAK CASE OUTFIT_P0_BED FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BED, LEGS_P0_BED, FEET_P0_BED, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_YOGA FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_YOGA_0, LEGS_P0_YOGA_BAREFOOT, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_EPSILON FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_EPSILON, LEGS_P0_EPSILON, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_TENNIS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_TENNIS, LEGS_P0_TENNIS, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SCUBA_WATER FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_SCUBA, LEGS_P0_SCUBA, FEET_P0_SCUBA_WATER, HAND_P0_PADDED_GLOVES, SPECIAL_P0_SCUBA_ACCS, SPECIAL2_P0_SCUBA_HEADGEAR, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_SCUBA_WATER) BREAK CASE OUTFIT_P0_SCUBA_LAND FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_SCUBA, LEGS_P0_SCUBA, FEET_P0_SCUBA_LAND, HAND_P0_PADDED_GLOVES, SPECIAL_P0_POUCHES, SPECIAL2_P0_SCUBA_HEADGEAR, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_SCUBA_LAND) BREAK CASE OUTFIT_P0_STEALTH FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_STEALTH, LEGS_P0_STEALTH, FEET_P0_BLACK_TRACKSUIT, HAND_P0_PADDED_GLOVES, SPECIAL_P0_BALACLAVA_B, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_TRIATHLON FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_TRIATHLON, LEGS_P0_TRIATHLON, FEET_P0_TRIATHLON, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SECURITY FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_SECURITY, LEGS_P0_SECURITY, FEET_P0_SECURITY_BOOTS, HAND_P0_NONE, SPECIAL_P0_SECURITY_ACCS, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_SECURITY) BREAK CASE OUTFIT_P0_EXTERMINATOR FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_EXTERMINATOR, LEGS_P0_EXTERMINATOR, FEET_P0_1, HAND_P0_PADDED_GLOVES, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_EXTERMINATOR, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_MOVIE_TUXEDO FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_MOVIE_TUXEDO, LEGS_P0_BLACK_TROUSERS, FEET_P0_DRESS_LOAFERS, HAND_P0_NONE, SPECIAL_P0_TIE_BLACK, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_LUDENDORFF FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_LUDENDORFF, LEGS_P0_LUDENDORFF, FEET_P0_1, HAND_P0_PADDED_GLOVES, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_RAPPEL FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_STEALTH, LEGS_P0_STEALTH, FEET_P0_BLACK_TRACKSUIT, HAND_P0_PADDED_GLOVES, SPECIAL_P0_NONE, SPECIAL2_P0_HARNESS, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_RAPPEL) BREAK CASE OUTFIT_P0_BLUE_BOILER_SUIT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BOILER_SUIT_1, LEGS_P0_BOILER_SUIT_1, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_PREP_BOILER_SUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BOILER_SUIT_3, LEGS_P0_BOILER_SUIT_3, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_PREP_BOILER_SUIT_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BOILER_SUIT_4, LEGS_P0_BOILER_SUIT_4, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_PREP_BOILER_SUIT_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BOILER_SUIT_5, LEGS_P0_BOILER_SUIT_5, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_PROLOGUE FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_CHECK_SHIRT_0, LEGS_P0_JEANS, FEET_P0_BOOTS, HAND_P0_BROWN_LEATHER, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_COMMANDO FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_STEALTH, LEGS_P0_STEALTH, FEET_P0_BLACK_TRACKSUIT, HAND_P0_PADDED_GLOVES, SPECIAL_P0_POUCHES, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_DENIM FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_DENIM_SHIRT_0, LEGS_P0_CASUAL_JEANS, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_BLACK_SUIT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_03, LEGS_P0_GREY_SUIT_3, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_LEATHER_AND_JEANS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_LEATHER_JACKET_0, LEGS_P0_CASUAL_JEANS, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_EPSILON_WITH_MEDAL FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_EPSILON, LEGS_P0_EPSILON, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_EPSILON_MEDAL, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_DARK_GRAY_SUIT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_02, LEGS_P0_GREY_SUIT_2, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SHIRT_AND_PANTS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_DRESS_SHIRT, LEGS_P0_GREY_SUIT_3, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_JEWEL_HEIST FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_03, LEGS_P0_GREY_SUIT_3, FEET_P0_BLACK_SHOES, HAND_P0_BLACK_LEATHER_GLOVES, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_TIE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_YOGA_FLIP_FLOPS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_YOGA_0, LEGS_P0_YOGA_0, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_POLOSHIRT_PANTS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_YOGA_1, LEGS_P0_GREY_SUIT_4, FEET_P0_SKATE_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SHIRT_SHORTS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_OPEN_SHIRT, LEGS_P0_LONG_SHORTS_1, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_VEST, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_POLOSHIRT_JEANS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_YOGA_0, LEGS_P0_CASUAL_JEANS, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_NAVY_SUIT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_04, LEGS_P0_GREY_SUIT_4, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_05, LEGS_P0_GREY_SUIT_5, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_06, LEGS_P0_GREY_SUIT_6, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_07, LEGS_P0_GREY_SUIT_7, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_08, LEGS_P0_GREY_SUIT_8, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_9 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_09, LEGS_P0_GREY_SUIT_9, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_10 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_10, LEGS_P0_GREY_SUIT_10, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_11 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_11, LEGS_P0_GREY_SUIT_11, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_12 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_12, LEGS_P0_GREY_SUIT_12, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_13 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_13, LEGS_P0_GREY_SUIT_13, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_14 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_14, LEGS_P0_GREY_SUIT_14, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SUIT_15 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_GREY_SUIT_15, LEGS_P0_GREY_SUIT_15, FEET_P0_BLACK_SHOES, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_MOTO_X FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_MOTO_X, LEGS_P0_MOTO_X, FEET_P0_MOTO_X, HAND_P0_MOTO_X, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_STEALTH_NO_MASK FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_STEALTH, LEGS_P0_STEALTH, FEET_P0_BLACK_TRACKSUIT, HAND_P0_PADDED_GLOVES, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_SCUBA_WATER_NO_MASK FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_SCUBA, LEGS_P0_SCUBA, FEET_P0_SCUBA_WATER, HAND_P0_PADDED_GLOVES, SPECIAL_P0_SCUBA_ACCS, SPECIAL2_P0_SCUBA_HEADGEAR, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_P0_SCUBA_WATER_NO_MASK) BREAK CASE OUTFIT_P0_BARECHEST_SHORTS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BARE_CHEST, LEGS_P0_YOGA_BAREFOOT, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P0_BARECHEST_BOXERS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P0_BARE_CHEST, LEGS_P0_BED, FEET_P0_1, HAND_P0_NONE, SPECIAL_P0_NONE, SPECIAL2_P0_NONE, DECL_P0_NONE, DUMMY_PED_COMP, TEETH_P0_NONE, JBIB_P0_NONE, PROPGROUP_NONE) BREAK DEFAULT SETUP_DLC_OUTFIT_DATA(sData, ePedModel, eItem, OUTFIT_P0_DLC) BREAK ENDSWITCH BREAK // FRANKLIN CASE PLAYER_ONE SWITCH eItem CASE OUTFIT_P1_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_BLUE_SHIRT, LEGS_P1_BLACK_JEANS, FEET_P1_NUBUCK_BOOTS, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_WHITE_TUXEDO FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_WHITE_TUXEDO, LEGS_P1_WHITE_TUXEDO, FEET_P1_BROGUES_0, HAND_P1_NONE, SPECIAL_P1_BOWTIE, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_SHIRT_B_1, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_GOLF FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, g_savedGlobals.sPlayerData.sInfo.eGolfTop[1], g_savedGlobals.sPlayerData.sInfo.eGolfPants[1], FEET_P1_DUMMY, HAND_P1_GOLF, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_POLO_SHIRT_1, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_SCUBA_WATER FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_SCUBA, LEGS_P1_SCUBA, FEET_P1_SCUBA_WATER, HAND_P1_BLACK_GLOVES, SPECIAL_P1_SCUBA, SPECIAL2_P1_SCUBA_HEADGEAR, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_SCUBA_WATER) BREAK CASE OUTFIT_P1_SCUBA_LAND FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_SCUBA, LEGS_P1_SCUBA, FEET_P1_SCUBA_LAND, HAND_P1_BLACK_GLOVES, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_SCUBA_LAND) BREAK CASE OUTFIT_P1_STEALTH FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, HAIR_P1_MASK, TORSO_P1_STEALTH, LEGS_P1_STEALTH, FEET_P1_DUMMY, HAND_P1_BLACK_GLOVES, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_TRIATHLON FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_TRIATHLON, LEGS_P1_TRIATHLON, FEET_P1_TRIATHLON, HAND_P1_NONE, SPECIAL_P1_WATCH_AND_BRACELET, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_FIREMAN FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_FIREMAN, LEGS_P1_FIREMAN, FEET_P1_DUMMY, HAND_P1_FIREMAN, SPECIAL_P1_FIREMAN, SPECIAL2_P1_NONE, DECL_P1_FIREMAN, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_FIREMAN) BREAK CASE OUTFIT_P1_EXTERMINATOR FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_RED_BOILER, LEGS_P1_RED_BOILER, FEET_P1_BLACK_BOILER, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_EXTERMINATOR, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_BUGSTARS_CAP) BREAK CASE OUTFIT_P1_BLACK_BOILER FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_BLACK_BOILER, LEGS_P1_BLACK_BOILER, FEET_P1_BLACK_BOILER, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_SKYDIVING FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_SKYDIVING, LEGS_P1_SKYDIVING, FEET_P1_DUMMY, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_TUXEDO FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_TUXEDO_AND_SHIRT, LEGS_P1_WHITE_TUXEDO, FEET_P1_SMART_SHOES, HAND_P1_NONE, SPECIAL_P1_BOWTIE, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_SHIRT_B_1, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_BLUE_BOILER_SUIT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_BLUE_BOILER, LEGS_P1_BLUE_BOILER, FEET_P1_BLACK_BOILER, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_PREP_BOILER_SUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_NAVY_BOILER, LEGS_P1_NAVY_BOILER, FEET_P1_BLACK_BOILER, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_PREP_BOILER_SUIT_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_GRAY_BOILER, LEGS_P1_GRAY_BOILER, FEET_P1_BLACK_BOILER, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_PREP_BOILER_SUIT_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_GREEN_BOILER, LEGS_P1_GREEN_BOILER, FEET_P1_BLACK_BOILER, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_HOODIE_AND_SWEATS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_HOODIE_12, LEGS_P1_SWEATPANTS, FEET_P1_TRAINERS, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_GREEN_SHIRT_JEANS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_YELLOW_SHIRT, LEGS_P1_BLACK_JEANS, FEET_P1_SNEAKERS_B_0, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_SUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_SUIT, LEGS_P1_SUIT, FEET_P1_SUIT_1, HAND_P1_BLACK_GLOVES, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_SHIRT_A, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_HOODIE_AND_JEANS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_HOODIE_2, LEGS_P1_BLACK_JEANS, FEET_P1_NUBUCK_BOOTS, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_TRACKSUIT_JEANS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_TRACKSUIT_2, LEGS_P1_BLACK_JEANS, FEET_P1_SNEAKERS_A_0, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_WHITE_SHIRT_JEANS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_OFF_WHITE_SHIRT, LEGS_P1_BLACK_JEANS, FEET_P1_SNEAKERS_A_0, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_GREEN_CAP) BREAK CASE OUTFIT_P1_3PC_SUIT_0 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT, LEGS_P1_SUIT, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_1, LEGS_P1_SUIT_1, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_1, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_1, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_2, LEGS_P1_SUIT_2, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_2, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_2, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_3, LEGS_P1_SUIT_3, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_3, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_3, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_4, LEGS_P1_SUIT_4, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_4, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_4, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_5, LEGS_P1_SUIT_5, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_5, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_5, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_6, LEGS_P1_SUIT_6, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_6, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_6, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_7, LEGS_P1_SUIT_7, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_7, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_7, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_8, LEGS_P1_SUIT_8, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_8, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_8, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_9 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_9, LEGS_P1_SUIT_9, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_9, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_9, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_10 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_10, LEGS_P1_SUIT_10, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_10, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_10, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_11 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_11, LEGS_P1_SUIT_11, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_11, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_11, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_12 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_12, LEGS_P1_SUIT_12, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_12, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_12, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_13 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_13, LEGS_P1_SUIT_13, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_13, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_13, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_14 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_14, LEGS_P1_SUIT_14, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_14, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_14, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_3PC_SUIT_15 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_3PCSUIT_15, LEGS_P1_SUIT_15, FEET_P1_SUIT, HAND_P1_NONE, SPECIAL_P1_TIE_SHORT_15, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_WAISTCOAT_B_15, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_UNDERWEAR FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_BARE_CHEST, LEGS_P1_BOXERS, FEET_P1_DUMMY, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_HOODIE_AND_JEANS_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_HOODIE_2, LEGS_P1_BLACK_JEANS, FEET_P1_TRAINERS, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_HOODIE_AND_JEANS_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_HOODIE, LEGS_P1_BLACK_JEANS, FEET_P1_TRAINERS, HAND_P1_NONE, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_STEALTH_NO_MASK FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_STEALTH, LEGS_P1_STEALTH, FEET_P1_DUMMY, HAND_P1_BLACK_GLOVES, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_MOTO_X FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_MOTO_X, LEGS_P1_MOTO_X, FEET_P1_MOTO_X, HAND_P1_MOTO_X, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P1_UPTOWN_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_BASKETBALL_8, LEGS_P1_STEALTH, FEET_P1_DUMMY, HAND_P1_NONE, SPECIAL_P1_WATCH_AND_BRACELET, SPECIAL2_P1_NONE, DECL_P1_UPTOWN_A, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_UPTOWN_1) BREAK CASE OUTFIT_P1_UPTOWN_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_BAGGY_TEE_6, LEGS_P1_MOTO_X_1, FEET_P1_MOTO_X_1, HAND_P1_NONE, SPECIAL_P1_WATCH_AND_BRACELET, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_BLACK_SHADES) BREAK CASE OUTFIT_P1_UPTOWN_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_UPTOWN_LNGSLEEVE, LEGS_P1_STEALTH_1, FEET_P1_DUMMY, HAND_P1_BLACK_GLOVES, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_P1_BLACK_CAP_SHADES) BREAK CASE OUTFIT_P1_UPTOWN_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P1_VARSITY_10, LEGS_P1_BLACK_JEANS, FEET_P1_NUBUCK_BOOTS_2, HAND_P1_BLACK_GLOVES, SPECIAL_P1_DUMMY, SPECIAL2_P1_NONE, DECL_P1_UPTOWN_B, DUMMY_PED_COMP, TEETH_P1_NONE, JBIB_P1_NONE, PROPGROUP_NONE) BREAK DEFAULT SETUP_DLC_OUTFIT_DATA(sData, ePedModel, eItem, OUTFIT_P1_DLC) BREAK ENDSWITCH BREAK // TREVOR CASE PLAYER_TWO SWITCH eItem CASE OUTFIT_P2_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_WHITE_TSHIRT, LEGS_P2_SWEAT_PANTS, FEET_P2_REDWINGS, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_BALLISTICS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_BALLISTICS, LEGS_P2_BALLISTICS, FEET_P2_DUMMY, HAND_P2_FIREMAN, SPECIAL_P2_BALLISTICS, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_BALLISTICS) BREAK CASE OUTFIT_P2_DOCK_WORKER FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_DOCK_WORKER, LEGS_P2_DOCK_WORKER, FEET_P2_DOCK_WORKER, HAND_P2_DOCK_WORKER, SPECIAL_P2_DOCK_WORKER, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_DOCK_WORKER) BREAK CASE OUTFIT_P2_HIGHWAY_PATROL FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_HIGHWAY_PATROL, LEGS_P2_HIGHWAY_PATROL, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_HIGHWAY_PATROL, DECL_P2_HIGHWAY_PATROL, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_HIGHWAY_PATROL) BREAK CASE OUTFIT_P2_GOLF FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, g_savedGlobals.sPlayerData.sInfo.eGolfTop[2], g_savedGlobals.sPlayerData.sInfo.eGolfPants[2], FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TENNIS FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_TENNIS, LEGS_P2_TENNIS, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_TRIATHLON) BREAK CASE OUTFIT_P2_SCUBA_WATER FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_SCUBA, LEGS_P2_SCUBA, FEET_P2_SCUBA_WATER, HAND_P2_SCUBA, SPECIAL_P2_SCUBA, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_SCUBA_WATER) BREAK CASE OUTFIT_P2_SCUBA_LAND FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_SCUBA, LEGS_P2_SCUBA, FEET_P2_SCUBA_LAND, HAND_P2_SCUBA, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_SCUBA_LAND) BREAK CASE OUTFIT_P2_STEALTH FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STEALTH, LEGS_P2_STEALTH, FEET_P2_DUMMY, HAND_P2_FINGERLESS_GLOVES, SPECIAL_P2_BALACLAVA, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TRIATHLON FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_TRIATHLON, LEGS_P2_TRIATHLON, FEET_P2_TRIATHLON, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_UNDERWEAR FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_NONE, LEGS_P2_UNDERWEAR, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_SECURITY FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_SECURITY, LEGS_P2_SECURITY, FEET_P2_SHOES_0, HAND_P2_NONE, SPECIAL_P2_SECURITY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_SECURITY) BREAK CASE OUTFIT_P2_TOILET // normal version #IF NOT IS_JAPANESE_BUILD FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_WHITE_TSHIRT, LEGS_P2_TOILET, FEET_P2_TOILET, HAND_P2_NONE, SPECIAL_P2_TOILET, SPECIAL2_P2_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK #ENDIF // japanese version #IF IS_JAPANESE_BUILD FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_WHITE_TSHIRT, LEGS_P2_UNDERWEAR, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P1_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK #ENDIF CASE OUTFIT_P2_PROLOGUE FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_PROLOGUE, LEGS_P2_PROLOGUE, FEET_P2_WINTER_BOOTS, HAND_P2_FINGERLESS_GLOVES, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TUXEDO FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_TUXEDO, LEGS_P2_CHEAP_TUXEDO_PANTS, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_BOWTIE, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_LADIES FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_LADIES, LEGS_P2_LADIES_SWEAT, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_BLUE_BOILER_SUIT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_BOILER_SUIT_BLUE, LEGS_P2_BOILER_SUIT_BLUE, FEET_P2_DOCK_WORKER, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_PREP_BOILER_SUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_PREP_BOILER_SUIT_1, LEGS_P2_PREP_BOILER_SUIT_1, FEET_P2_DOCK_WORKER, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_PREP_BOILER_SUIT_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_PREP_BOILER_SUIT_2, LEGS_P2_PREP_BOILER_SUIT_2, FEET_P2_DOCK_WORKER, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_PREP_BOILER_SUIT_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_PREP_BOILER_SUIT_3, LEGS_P2_PREP_BOILER_SUIT_3, FEET_P2_DOCK_WORKER, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_HUNTING FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_GILET_5, LEGS_P2_CARGOPANTS_10, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TSHIRT_CARGOPANTS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_WHITE_TSHIRT, LEGS_P2_CARGOPANTS_1, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_DENIM FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_DENIM_JACKET, LEGS_P2_BLUE_JEANS, FEET_P2_REDWINGS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_LUDENDORFF FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_LUDENDORFF, LEGS_P2_BLUE_JEANS, FEET_P2_LUDENDORFF, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_0 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_0, LEGS_P2_CHEAP_SUIT_PANTS, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_1, LEGS_P2_CHEAP_SUIT_PANTS_1, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_2, LEGS_P2_CHEAP_SUIT_PANTS_2, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_3, LEGS_P2_CHEAP_SUIT_PANTS_3, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_4, LEGS_P2_CHEAP_SUIT_PANTS_4, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_5, LEGS_P2_CHEAP_SUIT_PANTS_5, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_6, LEGS_P2_CHEAP_SUIT_PANTS_6, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_7, LEGS_P2_CHEAP_SUIT_PANTS_7, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_8, LEGS_P2_CHEAP_SUIT_PANTS_8, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_CHEAPSUIT_9 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_CHEAPSUIT_9, LEGS_P2_CHEAP_SUIT_PANTS_9, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_0 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET, LEGS_P2_SUIT_PANTS , FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET_1, LEGS_P2_SUIT_PANTS_1, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET_2, LEGS_P2_SUIT_PANTS_2, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET_3, LEGS_P2_SUIT_PANTS_3, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET_4, LEGS_P2_SUIT_PANTS_4, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET_5, LEGS_P2_SUIT_PANTS_5, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STYLESUIT_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STYLESUIT_JACKET_6, LEGS_P2_SUIT_PANTS_6, FEET_P2_LOAFERS, HAND_P2_NONE, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TSHIRT_CARGOPANTS_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_VNECK_2, LEGS_P2_CARGOPANTS, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TSHIRT_JEANS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_TSHIRT_1, LEGS_P2_BLUE_JEANS, FEET_P2_REDWINGS, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TSHIRT_CARGOPANTS_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_WHITE_TSHIRT, LEGS_P2_CARGOPANTS_9, FEET_P2_DUMMY, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_MOTO_X FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_MOTO_X, LEGS_P2_MOTO_X, FEET_P2_MOTO_X, HAND_P2_MOTO_X, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_TANKTOP_SWEATPANTS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_TANK_TOP_1, LEGS_P2_SWEAT_PANTS, FEET_P2_REDWINGS, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_P2_SUNGLASSES) BREAK CASE OUTFIT_P2_TSHIRT_JEANS_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_WHITE_TSHIRT, LEGS_P2_BLUE_JEANS, FEET_P2_REDWINGS, HAND_P2_NONE, SPECIAL_P2_WATCH, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK CASE OUTFIT_P2_STEALTH_NO_MASK FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_P2_STEALTH, LEGS_P2_STEALTH, FEET_P2_DUMMY, HAND_P2_FINGERLESS_GLOVES, SPECIAL_P2_DUMMY, SPECIAL2_P2_NONE, DECL_P2_NONE, DUMMY_PED_COMP, TEETH_P2_NONE, JBIB_P2_NONE, PROPGROUP_NONE) BREAK DEFAULT SETUP_DLC_OUTFIT_DATA(sData, ePedModel, eItem, OUTFIT_P2_DLC) BREAK ENDSWITCH BREAK // FMM CASE MP_M_FREEMODE_01 SWITCH eItem #IF USE_TU_CHANGES CASE OUTFIT_FMM_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_0_0, LEGS_FMM_0_0, FEET_FMM_0_10, DUMMY_PED_COMP, SPECIAL_FMM_0_0, DUMMY_PED_COMP, DUMMY_PED_COMP, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_0_0, PROPGROUP_NONE) BREAK CASE OUTFIT_FMM_SUB_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_7_15, FEET_FMM_2_6, DUMMY_PED_COMP, SPECIAL_FMM_0_2, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_3_14, PROPGROUP_FMM_SUB_1) BREAK CASE OUTFIT_FMM_SUB_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_0_0, LEGS_FMM_15_8, FEET_FMM_2_13, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_9_4, PROPGROUP_FMM_SUB_2) BREAK CASE OUTFIT_FMM_SUB_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_4_0, LEGS_FMM_1_15, FEET_FMM_1_9, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_14_11, PROPGROUP_FMM_SUB_3) BREAK CASE OUTFIT_FMM_SUB_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_4_2, FEET_FMM_0_10, DUMMY_PED_COMP, SPECIAL_FMM_1_5, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_7_15, PROPGROUP_FMM_SUB_4) BREAK CASE OUTFIT_FMM_SUB_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_5_13, FEET_FMM_8_13, DUMMY_PED_COMP, SPECIAL_FMM_0_3, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_7_6, PROPGROUP_FMM_SUB_5) BREAK CASE OUTFIT_FMM_SUB_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_7_4, FEET_FMM_7_1, DUMMY_PED_COMP, SPECIAL_FMM_0_7, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_7_5, PROPGROUP_FMM_SUB_6) BREAK CASE OUTFIT_FMM_SUB_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_3_13, FEET_FMM_8_8, DUMMY_PED_COMP, SPECIAL_FMM_1_11, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_3_13, PROPGROUP_FMM_SUB_7) BREAK CASE OUTFIT_FMM_SUB_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_0_0, LEGS_FMM_7_0, FEET_FMM_0_10, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_0_8, PROPGROUP_FMM_SUB_8) BREAK CASE OUTFIT_FMM_SUB_9 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_4_0, LEGS_FMM_8_3, FEET_FMM_1_8, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_14_3, PROPGROUP_FMM_SUB_9) BREAK CASE OUTFIT_FMM_PONS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_13_1, FEET_FMM_11_12, DUMMY_PED_COMP, SPECIAL_FMM_13_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_4_0, PROPGROUP_FMM_PONS_1) BREAK CASE OUTFIT_FMM_PONS_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_13_1, FEET_FMM_10_0, DUMMY_PED_COMP, SPECIAL_FMM_13_3, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_10_2, JBIB_FMM_10_1, PROPGROUP_FMM_PONS_2) BREAK CASE OUTFIT_FMM_PONS_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_10_2, FEET_FMM_10_14, DUMMY_PED_COMP, SPECIAL_FMM_12_9, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_10_2, PROPGROUP_FMM_PONS_3) BREAK CASE OUTFIT_FMM_PONS_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_0_4, FEET_FMM_15_0, DUMMY_PED_COMP, SPECIAL_FMM_2_2, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_6_1, PROPGROUP_FMM_PONS_4) BREAK CASE OUTFIT_FMM_PONS_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_8_0, FEET_FMM_14_8, DUMMY_PED_COMP, SPECIAL_FMM_2_11, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_6_6, PROPGROUP_FMM_PONS_5) BREAK CASE OUTFIT_FMM_PONS_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_4_2, FEET_FMM_4_1, DUMMY_PED_COMP, SPECIAL_FMM_14_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_6_4, PROPGROUP_FMM_PONS_6) BREAK CASE OUTFIT_FMM_PONS_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_4_1, FEET_FMM_10_12, DUMMY_PED_COMP, SPECIAL_FMM_12_10, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_4_0, PROPGROUP_FMM_PONS_7) BREAK CASE OUTFIT_FMM_PONS_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_4_0, FEET_FMM_0_10, DUMMY_PED_COMP, SPECIAL_FMM_0_1, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_4_2, PROPGROUP_FMM_PONS_8) BREAK CASE OUTFIT_FMM_BIN_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_5_0, LEGS_FMM_6_2, FEET_FMM_5_0, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_5_7, PROPGROUP_FMM_BIN_1) BREAK CASE OUTFIT_FMM_BIN_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_5_0, LEGS_FMM_12_0, FEET_FMM_6_0, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_5_0, PROPGROUP_FMM_BIN_2) BREAK CASE OUTFIT_FMM_BIN_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_7_12, FEET_FMM_6_0, DUMMY_PED_COMP, SPECIAL_FMM_0_11, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_7_2, PROPGROUP_FMM_BIN_3) BREAK CASE OUTFIT_FMM_BIN_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_0_0, LEGS_FMM_5_0, FEET_FMM_7_2, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_0_2, PROPGROUP_FMM_BIN_4) BREAK CASE OUTFIT_FMM_BIN_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_6_0, LEGS_FMM_2_11, FEET_FMM_7_0, DUMMY_PED_COMP, SPECIAL_FMM_5_2, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_3_0, PROPGROUP_FMM_BIN_5) BREAK CASE OUTFIT_FMM_BIN_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_7_4, FEET_FMM_9_0, DUMMY_PED_COMP, SPECIAL_FMM_0_2, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_7_0, PROPGROUP_FMM_BIN_6) BREAK CASE OUTFIT_FMM_BIN_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_1_0, LEGS_FMM_3_15, FEET_FMM_2_6, DUMMY_PED_COMP, SPECIAL_FMM_0_3, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_3_15, PROPGROUP_FMM_BIN_7) BREAK CASE OUTFIT_FMM_BIN_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_2_0, LEGS_FMM_4_0, FEET_FMM_0_10, DUMMY_PED_COMP, SPECIAL_FMM_15_0, SPECIAL2_FMM_0_0, DECL_FMM_0_0, BERD_FMM_0_0, TEETH_FMM_0_0, JBIB_FMM_2_9, PROPGROUP_FMM_BIN_8) BREAK DEFAULT SETUP_DLC_OUTFIT_DATA(sData, ePedModel, eItem, OUTFIT_FMM_DLC) BREAK #ENDIF #IF NOT USE_TU_CHANGES CASE OUTFIT_FMM_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMM_0_0, LEGS_FMM_0_0, FEET_FMM_0_0, DUMMY_PED_COMP, SPECIAL_FMM_0_0, DUMMY_PED_COMP, DUMMY_PED_COMP, BERD_FMM_0_0, DUMMY_PED_COMP, JBIB_FMM_0_0, PROPGROUP_NONE) BREAK #ENDIF ENDSWITCH BREAK // FMF CASE MP_F_FREEMODE_01 SWITCH eItem CASE OUTFIT_FMF_DEFAULT FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_0_0, LEGS_FMF_0_0, FEET_FMF_0_0, DUMMY_PED_COMP, SPECIAL_FMF_0_0, DUMMY_PED_COMP, DUMMY_PED_COMP, BERD_FMF_0_0, DUMMY_PED_COMP, JBIB_FMF_0_0, PROPGROUP_NONE) BREAK #IF USE_TU_CHANGES CASE OUTFIT_FMF_SUB_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_5_0, LEGS_FMF_8_8, FEET_FMF_15_1, DUMMY_PED_COMP, SPECIAL_FMF_4_13, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_1_5, PROPGROUP_NONE) BREAK CASE OUTFIT_FMF_SUB_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_0_1, FEET_FMF_6_0, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_2_0, JBIB_FMF_13_7, PROPGROUP_FMF_SUB_2) BREAK CASE OUTFIT_FMF_SUB_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_1_0, LEGS_FMF_4_9, FEET_FMF_15_1, DUMMY_PED_COMP, SPECIAL_FMF_0_3, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_1_9, PROPGROUP_FMF_SUB_3) BREAK CASE OUTFIT_FMF_SUB_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_2_0, LEGS_FMF_5_8, FEET_FMF_13_9, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_2_1, PROPGROUP_FMF_SUB_4) BREAK CASE OUTFIT_FMF_SUB_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_9_0, LEGS_FMF_0_7, FEET_FMF_6_2, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_2_0, JBIB_FMF_9_9, PROPGROUP_FMF_SUB_5) BREAK CASE OUTFIT_FMF_SUB_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_1_0, LEGS_FMF_8_12, FEET_FMF_15_1, DUMMY_PED_COMP, SPECIAL_FMF_0_7, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_6_0, JBIB_FMF_1_0, PROPGROUP_FMF_SUB_6) BREAK CASE OUTFIT_FMF_SUB_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_8_11, FEET_FMF_7_0, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_9_0, JBIB_FMF_4_14, PROPGROUP_FMF_SUB_7) BREAK CASE OUTFIT_FMF_SUB_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_1_0, LEGS_FMF_12_1, FEET_FMF_3_0, DUMMY_PED_COMP, SPECIAL_FMF_13_5, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_1_1, PROPGROUP_FMF_SUB_8) BREAK CASE OUTFIT_FMF_PONS_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_5_0, LEGS_FMF_7_2, FEET_FMF_6_1, DUMMY_PED_COMP, SPECIAL_FMF_13_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_6_2, PROPGROUP_FMF_PONS_1) BREAK CASE OUTFIT_FMF_PONS_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_9_0, LEGS_FMF_8_6, FEET_FMF_14_15, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_1_1, JBIB_FMF_9_0, PROPGROUP_FMF_PONS_2) BREAK CASE OUTFIT_FMF_PONS_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_5_0, LEGS_FMF_9_8, FEET_FMF_6_0, DUMMY_PED_COMP, SPECIAL_FMF_0_10, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_6_0, JBIB_FMF_6_0, PROPGROUP_FMF_PONS_3) BREAK CASE OUTFIT_FMF_PONS_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_6_0, LEGS_FMF_8_1, FEET_FMF_0_1, DUMMY_PED_COMP, SPECIAL_FMF_12_9, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_1_4, JBIB_FMF_7_8, PROPGROUP_FMF_PONS_4) BREAK CASE OUTFIT_FMF_PONS_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_5_0, LEGS_FMF_0_0, FEET_FMF_0_0, DUMMY_PED_COMP, SPECIAL_FMF_0_10, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_8_2, PROPGROUP_NONE) BREAK CASE OUTFIT_FMF_PONS_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_9_15, FEET_FMF_6_0, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_4_3, JBIB_FMF_13_6, PROPGROUP_FMF_PONS_6) BREAK CASE OUTFIT_FMF_PONS_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_9_0, LEGS_FMF_14_8, FEET_FMF_13_5, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_4_3, JBIB_FMF_9_3, PROPGROUP_FMF_PONS_7) BREAK CASE OUTFIT_FMF_PONS_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_2_0, LEGS_FMF_0_8, FEET_FMF_6_2, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_6_2, JBIB_FMF_2_7, PROPGROUP_FMF_PONS_8) BREAK CASE OUTFIT_FMF_PONS_9 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_5_0, LEGS_FMF_9_6, FEET_FMF_14_11, DUMMY_PED_COMP, SPECIAL_FMF_13_3, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_8_0, PROPGROUP_FMF_PONS_9) BREAK CASE OUTFIT_FMF_PONS_10 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_6_0, LEGS_FMF_6_0, FEET_FMF_6_1, DUMMY_PED_COMP, SPECIAL_FMF_0_7, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_6_1, JBIB_FMF_7_2, PROPGROUP_FMF_PONS_10) BREAK CASE OUTFIT_FMF_BIN_1 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_3_0, FEET_FMF_4_0, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_5_9, PROPGROUP_FMF_BIN_1) BREAK CASE OUTFIT_FMF_BIN_2 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_3_14, FEET_FMF_4_0, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_4_14, PROPGROUP_FMF_BIN_2) BREAK CASE OUTFIT_FMF_BIN_3 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_3_1, FEET_FMF_4_1, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_2_1, JBIB_FMF_5_0, PROPGROUP_NONE) BREAK CASE OUTFIT_FMF_BIN_4 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_3_0, LEGS_FMF_1_4, FEET_FMF_1_0, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_3_1, PROPGROUP_FMF_BIN_4) BREAK CASE OUTFIT_FMF_BIN_5 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_0_0, LEGS_FMF_4_9, FEET_FMF_11_2, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_7_1, JBIB_FMF_0_11, PROPGROUP_FMF_BIN_5) BREAK CASE OUTFIT_FMF_BIN_6 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_5_0, LEGS_FMF_8_7, FEET_FMF_3_5, DUMMY_PED_COMP, SPECIAL_FMF_0_9, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_5_4, JBIB_FMF_1_11, PROPGROUP_FMF_BIN_6) BREAK CASE OUTFIT_FMF_BIN_7 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_7_0, LEGS_FMF_14_9, FEET_FMF_11_0, DUMMY_PED_COMP, SPECIAL_FMF_15_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_2_4, JBIB_FMF_10_0, PROPGROUP_FMF_BIN_7) BREAK CASE OUTFIT_FMF_BIN_8 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_4_0, LEGS_FMF_2_2, FEET_FMF_11_3, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_4_13, PROPGROUP_FMF_BIN_8) BREAK CASE OUTFIT_FMF_BIN_9 FILL_PED_COMPONENT_OUTFIT_DATA(sData, DUMMY_PED_COMP, DUMMY_PED_COMP, TORSO_FMF_15_0, LEGS_FMF_8_3, FEET_FMF_5_13, DUMMY_PED_COMP, SPECIAL_FMF_2_0, SPECIAL2_FMF_0_0, DECL_FMF_0_0, BERD_FMF_0_0, TEETH_FMF_0_0, JBIB_FMF_15_10, PROPGROUP_FMF_BIN_9) BREAK DEFAULT SETUP_DLC_OUTFIT_DATA(sData, ePedModel, eItem, OUTFIT_FMF_DLC) BREAK #ENDIF ENDSWITCH BREAK ENDSWITCH RETURN sData ENDFUNC /// PURPOSE: Returns the peds prop items for the specified prop group FUNC PED_COMP_PROPS_DATA_STRUCT GET_PED_COMPONENT_DATA_FOR_PROPGROUP(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eItem) INT i PED_COMP_PROPS_DATA_STRUCT sData // Reset the array FOR i = 0 TO NUMBER_OF_PED_PROP_TYPES-1 sData.eItems[i] = DUMMY_PED_COMP ENDFOR SWITCH ePedModel CASE PLAYER_ZERO // MICHAEL SWITCH eItem CASE PROPGROUP_NONE FILL_PED_COMPONENT_PROPS_DATA(sData) BREAK CASE PROPGROUP_P0_FIREMAN FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P0_FIREMAN_HAT) BREAK CASE PROPGROUP_P0_COP FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P0_SECURITY_CAP) BREAK CASE PROPGROUP_P0_HIGHWAY_PATROL FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P0_COP_HELMET) BREAK CASE PROPGROUP_P0_GOLF FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P0_GOLF_VISOR) BREAK CASE PROPGROUP_P0_SCUBA_WATER FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P0_SCUBA_MASK, PROPS_P0_HEADSET) BREAK CASE PROPGROUP_P0_SCUBA_LAND FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P0_EXTERMINATOR_MASK, PROPS_P0_HEADSET) BREAK CASE PROPGROUP_P0_SECURITY FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P0_SECURITY_HELMET) BREAK CASE PROPGROUP_P0_RAPPEL FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P0_EXTERMINATOR_MASK) BREAK CASE PROPGROUP_P0_BALLISTICS FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P0_ARMOURED_HELMET) BREAK CASE PROPGROUP_P0_SCUBA_WATER_NO_MASK FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_EYES_NONE, PROPS_P0_HEADSET) BREAK DEFAULT SETUP_DLC_PROPGROUP_DATA(sData, ePedModel, eItem, PROPGROUP_P0_DLC) BREAK ENDSWITCH BREAK CASE PLAYER_ONE // FRANKLIN SWITCH eItem CASE PROPGROUP_NONE FILL_PED_COMPONENT_PROPS_DATA(sData) BREAK CASE PROPGROUP_P1_HOCKEY_MASK FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P1_HOCKEY_MASK) BREAK CASE PROPGROUP_P1_SCUBA_WATER FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P1_SCUBA_MASK, PROPS_P1_HEADSET) BREAK CASE PROPGROUP_P1_SCUBA_LAND FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_EYES_NONE, PROPS_P1_HEADSET) BREAK CASE PROPGROUP_P1_FIREMAN FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P1_FIREMAN_HAT) BREAK CASE PROPGROUP_P1_GREEN_CAP FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P1_GREEN_CAP) BREAK CASE PROPGROUP_P1_BUGSTARS_CAP FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P1_BUGSTAR_CAP) BREAK CASE PROPGROUP_P1_UPTOWN_1 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P1_GREEN_CAP, PROPS_P1_SUNGLASSES_C_0) BREAK CASE PROPGROUP_P1_BLACK_SHADES FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P1_SUNGLASSES_C_0) BREAK CASE PROPGROUP_P1_BLACK_CAP_SHADES FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P1_CAP_FRONT_5, PROPS_P1_SUNGLASSES_C_0) BREAK DEFAULT SETUP_DLC_PROPGROUP_DATA(sData, ePedModel, eItem, PROPGROUP_P1_DLC) BREAK ENDSWITCH BREAK CASE PLAYER_TWO // TREVOR SWITCH eItem CASE PROPGROUP_NONE FILL_PED_COMPONENT_PROPS_DATA(sData) BREAK CASE PROPGROUP_P2_COP FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P2_COP_HAT) BREAK CASE PROPGROUP_P2_DOCK_WORKER FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P2_BEANIE_HAT, PROPS_P2_GLASSES) BREAK CASE PROPGROUP_P2_HIGHWAY_PATROL FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P2_COP_HELMET) BREAK CASE PROPGROUP_P2_SCUBA_WATER FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P2_SCUBA_MASK, PROPS_P2_HEADSET) BREAK CASE PROPGROUP_P2_SCUBA_LAND FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_EYES_NONE, PROPS_P2_HEADSET) BREAK CASE PROPGROUP_P2_SECURITY FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P2_SECURITY_HELMET) BREAK CASE PROPGROUP_P2_TRIATHLON FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P2_HEADBAND) BREAK CASE PROPGROUP_P2_SUNGLASSES FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_P2_SUNGLASSES_B_0) BREAK CASE PROPGROUP_P2_BALLISTICS FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_P2_ARMOURED_HELMET) BREAK DEFAULT SETUP_DLC_PROPGROUP_DATA(sData, ePedModel, eItem, PROPGROUP_P2_DLC) BREAK ENDSWITCH BREAK #IF USE_TU_CHANGES CASE MP_M_FREEMODE_01 SWITCH eItem CASE PROPGROUP_NONE FILL_PED_COMPONENT_PROPS_DATA(sData) BREAK CASE PROPGROUP_FMM_SUB_1 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_15_6, PROPS_FMM_GLASSES_1_1) BREAK CASE PROPGROUP_FMM_SUB_2 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_10_7) BREAK CASE PROPGROUP_FMM_SUB_3 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_2_4, PROPS_FMM_GLASSES_9_3) BREAK CASE PROPGROUP_FMM_SUB_4 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_4_1, PROPS_FMM_GLASSES_10_3) BREAK CASE PROPGROUP_FMM_SUB_5 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_10_5) BREAK CASE PROPGROUP_FMM_SUB_6 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_15_2, PROPS_FMM_GLASSES_2_1) BREAK CASE PROPGROUP_FMM_SUB_7 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_4_0) BREAK CASE PROPGROUP_FMM_SUB_8 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_5_1, PROPS_FMM_GLASSES_5_1) BREAK CASE PROPGROUP_FMM_SUB_9 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_6_1, PROPS_FMM_GLASSES_3_4) BREAK CASE PROPGROUP_FMM_PONS_1 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_10_2) BREAK CASE PROPGROUP_FMM_PONS_2 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_8_6) BREAK CASE PROPGROUP_FMM_PONS_3 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_8_6) BREAK CASE PROPGROUP_FMM_PONS_4 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_5_5) BREAK CASE PROPGROUP_FMM_PONS_5 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_7_5, PROPS_FMM_GLASSES_13_2) BREAK CASE PROPGROUP_FMM_PONS_6 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_7_2, PROPS_FMM_GLASSES_5_0) BREAK CASE PROPGROUP_FMM_PONS_7 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_13_2) BREAK CASE PROPGROUP_FMM_PONS_8 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_5_1) BREAK CASE PROPGROUP_FMM_BIN_1 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_7_3) BREAK CASE PROPGROUP_FMM_BIN_2 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_4_1, PROPS_FMM_GLASSES_9_1) BREAK CASE PROPGROUP_FMM_BIN_3 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_10_0) BREAK CASE PROPGROUP_FMM_BIN_4 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_2_0) BREAK CASE PROPGROUP_FMM_BIN_5 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_4_0, PROPS_FMM_GLASSES_2_6) BREAK CASE PROPGROUP_FMM_BIN_6 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_4_1) BREAK CASE PROPGROUP_FMM_BIN_7 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMM_GLASSES_10_0) BREAK CASE PROPGROUP_FMM_BIN_8 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMM_HAT_4_0) BREAK DEFAULT SETUP_DLC_PROPGROUP_DATA(sData, ePedModel, eItem, PROPGROUP_FMM_DLC) BREAK ENDSWITCH BREAK CASE MP_F_FREEMODE_01 SWITCH eItem CASE PROPGROUP_NONE FILL_PED_COMPONENT_PROPS_DATA(sData) BREAK CASE PROPGROUP_FMF_SUB_2 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_0, PROPS_FMF_GLASSES_7_1) BREAK CASE PROPGROUP_FMF_SUB_3 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_1, PROPS_FMF_GLASSES_2_1) BREAK CASE PROPGROUP_FMF_SUB_4 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_6_2, PROPS_FMF_GLASSES_6_0) BREAK CASE PROPGROUP_FMF_SUB_5 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_3, PROPS_FMF_GLASSES_1_4) BREAK CASE PROPGROUP_FMF_SUB_6 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_2) BREAK CASE PROPGROUP_FMF_SUB_7 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_13_6, PROPS_FMF_GLASSES_4_4) BREAK CASE PROPGROUP_FMF_SUB_8 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_13_7, PROPS_FMF_GLASSES_2_6) BREAK CASE PROPGROUP_FMF_PONS_1 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_6_0) BREAK CASE PROPGROUP_FMF_PONS_2 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_6_0) BREAK CASE PROPGROUP_FMF_PONS_3 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_4_0) BREAK CASE PROPGROUP_FMF_PONS_4 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_2_5) BREAK CASE PROPGROUP_FMF_PONS_6 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_7_1) BREAK CASE PROPGROUP_FMF_PONS_7 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_13_0, PROPS_FMF_GLASSES_1_1) BREAK CASE PROPGROUP_FMF_PONS_8 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_13_2, PROPS_FMF_GLASSES_1_4, PROPS_EARS_NONE, PROPS_MOUTH_NONE, PROPS_LHAND_NONE, PROPS_RHAND_NONE, PROPS_FMF_WATCH_0_4) BREAK CASE PROPGROUP_FMF_PONS_9 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_14_4, PROPS_FMF_GLASSES_7_5) BREAK CASE PROPGROUP_FMF_PONS_10 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_6_0) BREAK CASE PROPGROUP_FMF_BIN_1 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_13_7) BREAK CASE PROPGROUP_FMF_BIN_2 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_0, PROPS_FMF_GLASSES_10_3) BREAK CASE PROPGROUP_FMF_BIN_4 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_HEAD_NONE, PROPS_FMF_GLASSES_10_1) BREAK CASE PROPGROUP_FMF_BIN_5 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_7) BREAK CASE PROPGROUP_FMF_BIN_6 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_9_1) BREAK CASE PROPGROUP_FMF_BIN_7 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_4, PROPS_FMF_GLASSES_7_3) BREAK CASE PROPGROUP_FMF_BIN_8 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_4_6, PROPS_FMF_GLASSES_2_6) BREAK CASE PROPGROUP_FMF_BIN_9 FILL_PED_COMPONENT_PROPS_DATA(sData, PROPS_FMF_HAT_13_4, PROPS_FMF_GLASSES_3_6) BREAK DEFAULT SETUP_DLC_PROPGROUP_DATA(sData, ePedModel, eItem, PROPGROUP_FMM_DLC) BREAK ENDSWITCH BREAK #ENDIF ENDSWITCH RETURN sData ENDFUNC #IF IS_DEBUG_BUILD /// PURPOSE: /// Grabs the name of this item from text file and prints to TTY /// SP only PROC PRINT_PED_COMP_ITEM_NAME_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) PED_COMP_ITEM_DATA_STRUCT mItemDetails mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem) CPRINTLN(DEBUG_PED_COMP, "Item is: ", GET_PED_COMP_TYPE_STRING(eType), " [", mItemDetails.iDrawable, ",", mItemDetails.iTexture, "]") IF NOT ARE_STRINGS_EQUAL(mItemDetails.sLabel, "NO_LABEL") CPRINTLN(DEBUG_PED_COMP, GET_STRING_FROM_TEXT_FILE(mItemDetails.sLabel)) ELSE CPRINTLN(DEBUG_PED_COMP, "No Label") ENDIF ENDPROC /// PURPOSE: /// Prints all of the ped comp info for the clothes the ped is currently wearing /// SP player characters only PROC PRINT_CURRENT_PED_COMP_INFO_SP(PED_INDEX mPed) INT iType INT iPropPos PED_PROP_POSITION ePropPos PED_COMP_TYPE_ENUM eType PED_COMP_NAME_ENUM eItem MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) PED_COMP_ITEM_DATA_STRUCT mItemDetails STRING sPedName SWITCH ePedModel CASE PLAYER_ZERO sPedName = "Michael" BREAK CASE PLAYER_ONE sPedName = "Franklin" BREAK CASE PLAYER_TWO sPedName = "Trevor" BREAK ENDSWITCH // normal items FOR iType = 0 TO NUMBER_OF_PED_COMP_TYPES -1 eType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iType) IF eType <> COMP_TYPE_OUTFIT AND eType <> COMP_TYPE_PROPGROUP AND eType <> COMP_TYPE_PROPS eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType) mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem) CPRINTLN(DEBUG_PED_COMP, "PCPCI: For : ", sPedName, ", ", GET_PED_COMP_TYPE_STRING(eType), " [", mItemDetails.iDrawable, ",", mItemDetails.iTexture, "]") IF NOT ARE_STRINGS_EQUAL(mItemDetails.sLabel, "NO_LABEL") CPRINTLN(DEBUG_PED_COMP, GET_STRING_FROM_TEXT_FILE(mItemDetails.sLabel)) ELSE CPRINTLN(DEBUG_PED_COMP, "No Label") ENDIF ENDIF ENDFOR // props FOR iPropPos = 0 TO NUMBER_OF_PED_PROP_TYPES -1 ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos) eItem = GET_PED_PROP_CURRENT_FROM_LOOKUP(mPed, ePropPos) mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem) CPRINTLN(DEBUG_PED_COMP, "PCPCI: Props for : ", sPedName, ", ", GET_PROP_POSITION_STRING(ePropPos), " [", mItemDetails.iDrawable, ",", mItemDetails.iTexture, "]") IF NOT ARE_STRINGS_EQUAL(mItemDetails.sLabel, "NO_LABEL") CPRINTLN(DEBUG_PED_COMP, GET_STRING_FROM_TEXT_FILE(mItemDetails.sLabel)) ELSE CPRINTLN(DEBUG_PED_COMP, "No Label") ENDIF ENDFOR ENDPROC /// PURPOSE: /// Grabs the name of this item from text file and prints to TTY /// MP Only PROC PRINT_PED_COMP_ITEM_NAME_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) PED_COMP_ITEM_DATA_STRUCT mItemDetails mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem) CPRINTLN(DEBUG_PED_COMP, "Item is: ", GET_PED_COMP_TYPE_STRING(eType), " [", mItemDetails.iDrawable, ",", mItemDetails.iTexture, "]") IF NOT ARE_STRINGS_EQUAL(mItemDetails.sLabel, "NO_LABEL") CPRINTLN(DEBUG_PED_COMP, GET_STRING_FROM_TEXT_FILE(mItemDetails.sLabel)) ELSE CPRINTLN(DEBUG_PED_COMP, "No Label") ENDIF ENDPROC /// PURPOSE: /// Prints all of the ped comp info for the clothes the ped is currently wearing /// MP player characters only PROC PRINT_CURRENT_PED_COMP_INFO_MP(PED_INDEX mPed) INT iType INT iPropPos PED_PROP_POSITION ePropPos PED_COMP_TYPE_ENUM eType PED_COMP_NAME_ENUM eItem MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) PED_COMP_ITEM_DATA_STRUCT mItemDetails STRING sPedName SWITCH ePedModel CASE MP_M_FREEMODE_01 sPedName = "Male MP" BREAK CASE MP_F_FREEMODE_01 sPedName = "Female MP" BREAK ENDSWITCH // normal items FOR iType = 0 TO NUMBER_OF_PED_COMP_TYPES -1 eType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iType) IF eType <> COMP_TYPE_OUTFIT AND eType <> COMP_TYPE_PROPGROUP AND eType <> COMP_TYPE_PROPS eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType) mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem) CPRINTLN(DEBUG_PED_COMP, "PCPCI: For : ", sPedName, ", ", GET_PED_COMP_TYPE_STRING(eType), " [", mItemDetails.iDrawable, ",", mItemDetails.iTexture, "]") IF NOT ARE_STRINGS_EQUAL(mItemDetails.sLabel, "NO_LABEL") CPRINTLN(DEBUG_PED_COMP, GET_STRING_FROM_TEXT_FILE(mItemDetails.sLabel)) ELSE CPRINTLN(DEBUG_PED_COMP, "No Label") ENDIF ENDIF ENDFOR // props FOR iPropPos = 0 TO NUMBER_OF_PED_PROP_TYPES -1 ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos) eItem = GET_PED_PROP_CURRENT_FROM_LOOKUP(mPed, ePropPos) mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem) CPRINTLN(DEBUG_PED_COMP, "PCPCI: Props for : ", sPedName, ", ", GET_PROP_POSITION_STRING(ePropPos), " [", mItemDetails.iDrawable, ",", mItemDetails.iTexture, "]") IF NOT ARE_STRINGS_EQUAL(mItemDetails.sLabel, "NO_LABEL") CPRINTLN(DEBUG_PED_COMP, GET_STRING_FROM_TEXT_FILE(mItemDetails.sLabel)) ELSE CPRINTLN(DEBUG_PED_COMP, "No Label") ENDIF ENDFOR ENDPROC #ENDIF /// PURPOSE: Checks to see if the component item has been acquired for the ped model FUNC BOOL IS_PED_COMP_ITEM_ACQUIRED_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_ACQUIRED_BIT)) ENDFUNC /// PURPOSE: Checks to see if the component item has been acquired for the ped model FUNC BOOL IS_PED_COMP_ITEM_ACQUIRED_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_ACQUIRED_BIT)) ENDFUNC /// PURPOSE: /// Quick function for checking if a ped is wearing a varition of an item /// Just uses lower and upper limit enums /// (Could do a version that checks drawables- wouldn't need enum limits, but would be more expensive) FUNC BOOL IS_PED_WEARING_VARIATION_OF_ITEM(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eLowerLimit, PED_COMP_NAME_ENUM eUpperLimit) PED_COMP_NAME_ENUM eCurrentItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType) IF eCurrentItem >= eLowerLimit AND eCurrentItem <= eUpperLimit RETURN TRUE ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Quick function for getting an acquired variation of an item /// Just uses lower and upper limit enums /// (Could do a version that checks drawables- wouldn't need enum limits, but would be more expensive) FUNC PED_COMP_NAME_ENUM GET_ACQUIRED_VARIAITON_OF_ITEM_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eLowerLimit, PED_COMP_NAME_ENUM eUpperLimit) INT iItem PED_COMP_NAME_ENUM eItem FOR iItem = ENUM_TO_INT(eLowerLimit) TO ENUM_TO_INT(eUpperLimit) -1 eItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem) IF IS_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, eType, eItem) RETURN eItem ENDIF ENDFOR RETURN DUMMY_PED_COMP // no variations of this item acquired ENDFUNC /// PURPOSE: /// Returns TRUE if these legs have feet attached /// (This is currently singleplayer only) FUNC BOOL DO_LEGS_CONTAIN_FEET(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eLegsItem, PED_COMP_NAME_ENUM &eReturnItem) eReturnItem = DUMMY_PED_COMP // if we need to use dummy feet it will get set SWITCH ePedModel CASE PLAYER_ZERO // MICHAEL IF eLegsItem = LEGS_P0_FIREMAN OR eLegsItem = LEGS_P0_NAVY_JANITOR OR eLegsItem = LEGS_P0_BALLISTICS OR eLegsItem = LEGS_P0_NAVY_COP OR eLegsItem = LEGS_P0_HIGHWAY_PATROL OR (eLegsItem >= LEGS_P0_EXTERMINATOR AND eLegsItem <= LEGS_P0_BOILER_SUIT_5) OR (eLegsItem >= LEGS_P0_CARGO_SHORTS_0 AND eLegsItem <= LEGS_P0_CARGO_SHORTS_4) // cargo shorts OR eLegsItem = LEGS_P0_LUDENDORFF OR (eLegsItem >= LEGS_P0_GOLF AND eLegsItem <= LEGS_P0_GOLF_7) // golf pants OR (eLegsItem >= LEGS_P0_YOGA_0 AND eLegsItem <= LEGS_P0_YOGA_15) // yoga shorts OR (eLegsItem >= LEGS_P0_BED AND eLegsItem <= LEGS_P0_BOXERS_7) // boxers OR eLegsItem = LEGS_P0_EPSILON OR (eLegsItem >= LEGS_P0_CASUAL_JEANS AND eLegsItem <= LEGS_P0_CASUAL_JEANS_2)// jeans OR (eLegsItem >= LEGS_P0_REGULAR_PANTS AND eLegsItem <= LEGS_P0_REGULAR_PANTS_3)// pants OR eLegsItem = LEGS_P0_SMART_JEANS // jeans OR (eLegsItem >= LEGS_P0_TENNIS AND eLegsItem <= LEGS_P0_TENNIS_2) // tennis shorts OR eLegsItem = LEGS_P0_YOGA_BAREFOOT // yoga shorts OR (eLegsItem >= LEGS_P0_LONG_SHORTS_0 AND eLegsItem <= LEGS_P0_LONG_SHORTS_15) // long shorts OR eLegsItem = LEGS_P0_JEANS_BAREFEET // jeans with barefeet //CPRINTLN(DEBUG_PED_COMP, "M: Legs do contain feet. eLegsItem = ", eLegsItem) eReturnItem = FEET_P0_1 RETURN TRUE // these legs do have feet attached ENDIF BREAK CASE PLAYER_ONE // FRANKLIN IF eLegsItem = LEGS_P1_BALLISTICS OR (eLegsItem >= LEGS_P1_GOLF_0 AND eLegsItem <= LEGS_P1_GOLF_7) // golf pants OR eLegsItem = LEGS_P1_FIREMAN OR eLegsItem = LEGS_P1_TENNIS // tennis shorts OR (eLegsItem >= LEGS_P1_STEALTH AND eLegsItem <= LEGS_P1_STEALTH_1) OR eLegsItem = LEGS_P1_SKYDIVING OR (eLegsItem >= LEGS_P1_BOXERS AND eLegsItem <= LEGS_P1_BOXERS_5) // boxers //CPRINTLN(DEBUG_PED_COMP, "F: Legs do contain feet. eLegsItem = ", eLegsItem) eReturnItem = FEET_P1_DUMMY RETURN TRUE // these legs do have feet attached ENDIF BREAK CASE PLAYER_TWO // TREVOR IF eLegsItem = LEGS_P2_FIREMAN OR eLegsItem = LEGS_P2_BALLISTICS OR eLegsItem = LEGS_P2_NAVY_COP OR eLegsItem = LEGS_P2_PARAMEDIC OR eLegsItem = LEGS_P2_HIGHWAY_PATROL OR (eLegsItem >= LEGS_P2_GOLF AND eLegsItem <= LEGS_P2_GOLF_11) // golf pants OR eLegsItem = LEGS_P2_MIME OR eLegsItem = LEGS_P2_STEALTH //black pants OR eLegsItem = LEGS_P2_TENNIS // tennis shorts OR eLegsItem = LEGS_P2_LADIES_SWEAT //sweat pants OR (eLegsItem >= LEGS_P2_WORKPANTS AND eLegsItem <= LEGS_P2_WORKPANTS_7) // work pants OR (eLegsItem >= LEGS_P2_CARGOPANTS AND eLegsItem <= LEGS_P2_CARGOPANTS_10) // cargo pants OR (eLegsItem >= LEGS_P2_BEACH AND eLegsItem <= LEGS_P2_BEACH_7) // beach shorts OR (eLegsItem >= LEGS_P2_CHEAP_SUIT_PANTS AND eLegsItem <= LEGS_P2_CHEAP_SUIT_PANTS_9) // cheap suit pants OR (eLegsItem >= LEGS_P2_UNDERWEAR AND eLegsItem <= LEGS_P2_UNDERWEAR_9) // underwear OR (eLegsItem >= LEGS_P2_UNDERWEAR_BF_0 AND eLegsItem <= LEGS_P2_UNDERWEAR_BF_9) // underwear with bare feet //CPRINTLN(DEBUG_PED_COMP, "T: Legs do contain feet. eLegsItem = ", eLegsItem) eReturnItem = FEET_P2_DUMMY RETURN TRUE // these legs do have feet attached ENDIF BREAK ENDSWITCH //CPRINTLN(DEBUG_PED_COMP, "Legs do not contain feet. eLegsItem = ", eLegsItem) RETURN FALSE // these legs don't have feet attached ENDFUNC /// PURPOSE: /// Returns FALSE if combining these items would leave player with no feet or feet clipping /// (This ignores outfit only items) FUNC BOOL DO_LEGS_AND_FEET_CHECK(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eLegsItem, PED_COMP_NAME_ENUM eFeetItem) PED_COMP_NAME_ENUM eDummyItem #IF USE_TU_CHANGES INT iDLCLegsHash = -1 INT iDLCLegsCheck = -1 INT iDLCFeetHash INT iDLCFeetCheck #ENDIF SWITCH ePedModel CASE PLAYER_ZERO // MICHAEL IF eFeetItem = FEET_P0_1 OR eFeetItem = FEET_P0_BED IF NOT DO_LEGS_CONTAIN_FEET(ePedModel, eLegsItem, eDummyItem) CPRINTLN(DEBUG_PED_COMP, "Legs with no feet can't be worn with dummy feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELSE IF DO_LEGS_CONTAIN_FEET(ePedModel, eLegsItem, eDummyItem) CPRINTLN(DEBUG_PED_COMP, "Legs with feet attached can't be worn with other feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF BREAK CASE PLAYER_ONE // FRANKLIN IF eFeetItem = FEET_P1_DUMMY IF NOT DO_LEGS_CONTAIN_FEET(ePedModel, eLegsItem, eDummyItem) CPRINTLN(DEBUG_PED_COMP, "Legs with no feet can't be worn with dummy feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELSE IF DO_LEGS_CONTAIN_FEET(ePedModel, eLegsItem, eDummyItem) CPRINTLN(DEBUG_PED_COMP, "Legs with feet attached can't be worn with other feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ELSE // are these feet suitable for use with these pants? IF (eLegsItem >= LEGS_P1_SUIT AND eLegsItem <= LEGS_P1_SUIT_15) IF (eFeetItem >= FEET_P1_TRAINERS AND eFeetItem <= FEET_P1_TRAINERS_11) OR (eFeetItem >= FEET_P1_SNEAKERS_A_0 AND eFeetItem <= FEET_P1_SNEAKERS_A_15) OR (eFeetItem >= FEET_P1_SNEAKERS_B_0 AND eFeetItem <= FEET_P1_SNEAKERS_B_11) OR (eFeetItem >= FEET_P1_SKATE_SHOES_0 AND eFeetItem <= FEET_P1_SKATE_SHOES_7) OR (eFeetItem >= FEET_P1_SUIT AND eFeetItem <= FEET_P1_SUIT_8) OR (eFeetItem >= FEET_P1_LOAFERS_0 AND eFeetItem <= FEET_P1_LOAFERS_11) OR (eFeetItem >= FEET_P1_OXFORDS_0 AND eFeetItem <= FEET_P1_OXFORDS_15) OR (eFeetItem >= FEET_P1_SQ_LOAFERS_0 AND eFeetItem <= FEET_P1_SQ_LOAFERS_15) OR (eFeetItem >= FEET_P1_WINGTIPS_0 AND eFeetItem <= FEET_P1_WINGTIPS_15) // these are suitable ELSE CPRINTLN(DEBUG_PED_COMP, "F: Suit pants must be worn with shoes / low top sneakers. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELSE // suit shoes can't be worn with shorts IF (eFeetItem >= FEET_P1_SUIT AND eFeetItem <= FEET_P1_SUIT_8) OR (eFeetItem >= FEET_P1_LOAFERS_0 AND eFeetItem <= FEET_P1_LOAFERS_11) OR (eFeetItem >= FEET_P1_OXFORDS_0 AND eFeetItem <= FEET_P1_OXFORDS_15) OR (eFeetItem >= FEET_P1_SQ_LOAFERS_0 AND eFeetItem <= FEET_P1_SQ_LOAFERS_15) OR (eFeetItem >= FEET_P1_WINGTIPS_0 AND eFeetItem <= FEET_P1_WINGTIPS_15) IF (eLegsItem >= LEGS_P1_BEIGE_SHORTS AND eLegsItem <= LEGS_P1_CARGO_SHORTS_3) OR (eLegsItem >= LEGS_P1_BASKETBALL_SHORTS_0 AND eLegsItem <= LEGS_P1_BASKETBALL_SHORTS_13) OR (eLegsItem >= LEGS_P1_SHORTS_0 AND eLegsItem <= LEGS_P1_SHORTS_5) CPRINTLN(DEBUG_PED_COMP, "F: Suit shoes can't be worn with shorts. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF ENDIF ENDIF ENDIF BREAK CASE PLAYER_TWO // TREVOR IF eFeetItem = FEET_P2_DUMMY OR eFeetItem = FEET_P2_DUMMY_2 IF NOT DO_LEGS_CONTAIN_FEET(ePedModel, eLegsItem, eDummyItem) CPRINTLN(DEBUG_PED_COMP, "Legs with no feet can't be worn with dummy feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELSE IF DO_LEGS_CONTAIN_FEET(ePedModel, eLegsItem, eDummyItem) CPRINTLN(DEBUG_PED_COMP, "Legs with feet attached can't be worn with other feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ELSE // Trevor's suit pants can't be worn with his redwing boots or his dock worker boots IF eFeetItem = FEET_P2_REDWINGS OR eFeetItem = FEET_P2_DOCK_WORKER IF eLegsItem >= LEGS_P2_SUIT_PANTS AND eLegsItem <= LEGS_P2_SUIT_PANTS_8 OR eLegsItem = LEGS_P2_CHEAP_TUXEDO_PANTS CPRINTLN(DEBUG_PED_COMP, "Trevor can't wear redwing / dock worker boots with suit pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF ENDIF ENDIF BREAK CASE MP_M_FREEMODE_01 #IF USE_TU_CHANGES iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 3) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) #ENDIF #IF USE_TU_CHANGES iDLCFeetHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eFeetItem, COMP_TYPE_FEET, 3) iDLCFeetCheck = GET_DLC_DRAW_TAG(iDLCFeetHash) #ENDIF // Knee high boots only work with knee high compat pants for now. IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Knee high boots can only be worn with knee high compat pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Knee high boots can only be worn with knee high compat pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF IF (eLegsItem >= LEGS_FMM_DLC) // Plain and padded pants can't be worn with some feet IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Biker pants can only be worn with certain shoes. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF ENDIF // Metal Plated Leather Boots can only be worn with the metal plated trousers.ARENA_DRAW_5 ARENA_DRAW_7 IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_ARENA_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Metal plated boots can only be worn with metal plated pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_ARENA_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Metal plated boots can only be worn with metal plated pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // Santa boots can only be worn with santa pants. IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Santa boots can only be worn with santa pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Santa boots can only be worn with santa pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // Morph boots can only be worn with morph pants. IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Morph boots can only be worn with morph pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Morph boots can only be worn with morph pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF //url:bugstar:3203181 - Male clothing - The dropped crotch pants clip with sports shoe socks IF (eFeetItem >= FEET_FMM_6_0 AND eFeetItem <= FEET_FMM_10_15) OR iDLCFeetCheck = 6 OR iDLCFeetCheck = 7 OR iDLCFeetCheck = 8 OR iDLCFeetCheck = 9 OR iDLCFeetCheck = 10 IF (eLegsItem >= LEGS_FMM_DLC) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Socks not compatible with these pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF ENDIF // utility pants can't be worn with some feet. IF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMM_0_0 AND eFeetItem <= FEET_FMM_0_15) OR (eFeetItem >= FEET_FMM_4_0 AND eFeetItem <= FEET_FMM_4_15) OR (eFeetItem >= FEET_FMM_12_0 AND eFeetItem <= FEET_FMM_12_15) OR (eFeetItem >= FEET_FMM_14_0 AND eFeetItem <= FEET_FMM_14_15) OR (eFeetItem >= FEET_FMM_15_0 AND eFeetItem <= FEET_FMM_15_15) OR iDLCFeetCheck = 0 OR iDLCFeetCheck = 4 OR iDLCFeetCheck = 12 OR iDLCFeetCheck = 14 OR iDLCFeetCheck = 15 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dirtyy boots OR iDLCFeetHash = HASH("DLC_MP_VAL_M_FEET1_0") OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Utility pants can only be worn with certain shoes. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // slim fit suit pants can't be worn with some feet IF (eLegsItem >= LEGS_FMM_11_0 AND eLegsItem <= LEGS_FMM_11_15) #IF USE_TU_CHANGES OR iDLCLegsCheck = 11 #ENDIF IF (eFeetItem >= FEET_FMM_15_0 AND eFeetItem <= FEET_FMM_15_15) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "MP Male slim fit suit pants can only be worn with certain shoes. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // DLC High Life suit pants can't be worn with some feet #IF USE_TU_CHANGES ELIF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_TUX_PANTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SKINNY, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMM_10_0 AND eFeetItem <= FEET_FMM_10_15) OR (eFeetItem >= FEET_FMM_11_0 AND eFeetItem <= FEET_FMM_11_15) OR iDLCFeetCheck = 10 OR iDLCFeetCheck = 11 //safe ELSE CPRINTLN(DEBUG_PED_COMP, "MP Male high life suit pants can only be worn with certain shoes. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // Other skinny pants not suitable for some shoes ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SKINNY, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eFeetItem >= FEET_FMM_6_0 AND eFeetItem <= FEET_FMM_10_15) OR iDLCFeetCheck = 6 OR iDLCFeetCheck = 7 OR iDLCFeetCheck = 8 OR iDLCFeetCheck = 9 OR iDLCFeetCheck = 10 CPRINTLN(DEBUG_PED_COMP, "MP Male skinny pants can only be worn with certain shoes. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ELSE // safe ENDIF // DLC LTS pants can only be worn with pilot school boots ELIF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "MP Male LTS pants can only be worn with pilot school boots. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // DLC Heist pants can only be worn with pilot school boots ELIF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "MP Male Heist pants can only be worn with pilot school boots. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // Pyjama pants can only be worn with bare feet and flip flops ELIF (eLegsItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BARE_FEET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eFeetItem >= FEET_FMM_3_0 AND eFeetItem <= FEET_FMM_3_15) // Loafers OR (eFeetItem >= FEET_FMM_5_0 AND eFeetItem <= FEET_FMM_5_15) // Flip-flops OR iDLCFeetCheck = 3 OR iDLCFeetCheck = 5 OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_0") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_1") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_2") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_3") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_4") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_5") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_6") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_7") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_8") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_9") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_10") OR iDLCFeetHash = HASH("DLC_MP_BEACH_M_FEET0_11") // safe ELSE CPRINTLN(DEBUG_PED_COMP, "MP Male Heist pants can only be worn with pilot school boots. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF #ENDIF ENDIF BREAK CASE MP_F_FREEMODE_01 #IF USE_TU_CHANGES iDLCFeetHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eFeetItem, COMP_TYPE_FEET, 4) iDLCFeetCheck = GET_DLC_DRAW_TAG(iDLCFeetHash) iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 4) // Knee high boots only work with knee high compat pants for now. IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Knee high boots can only be worn with knee high compat pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Knee high boots can only be worn with knee high compat pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // Santa boots can only be worn with santa pants. IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Santa boots can only be worn with santa pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Santa boots can only be worn with santa pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // Morph boots can only be worn with morph pants. IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Morph boots can only be worn with morph pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Morph boots can only be worn with morph pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // Block ankle boots and cropped jeans IF (eFeetItem >= FEET_FMF_8_0 AND eFeetItem <= FEET_FMF_8_15) OR iDLCFeetCheck = 8 IF (eLegsItem >= LEGS_FMF_DLC) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_IE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Ankle boots can't be worn with tappered jeans. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF ENDIF // Metal Plated Leather Boots can only be worn with the metal plated trousers.ARENA_DRAW_5 ARENA_DRAW_7 IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_ARENA_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Metal plated boots can only be worn with metal plated pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ELIF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_ARENA_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) // safe ELSE CPRINTLN(DEBUG_PED_COMP, "Metal plated boots can only be worn with metal plated pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // only allow the following feet to be worn with the stocking legs. IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eFeetItem >= FEET_FMF_7_0 AND eFeetItem <= FEET_FMF_7_15) OR (eFeetItem >= FEET_FMF_8_0 AND eFeetItem <= FEET_FMF_8_15) OR (eFeetItem >= FEET_FMF_9_0 AND eFeetItem <= FEET_FMF_9_15) OR iDLCFeetCheck = 7 OR iDLCFeetCheck = 8 OR iDLCFeetCheck = 9 OR iDLCFeetCheck = 12 CPRINTLN(DEBUG_PED_COMP, "MP Female stockings are compatible with these feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN TRUE ELIF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Each pair of stockings has a matching set of high heels SWITCH iDLCFeetHash CASE HASH("DLC_MP_VAL_F_FEET0_0") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS1_0")) BREAK CASE HASH("DLC_MP_VAL_F_FEET0_1") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS1_1")) BREAK CASE HASH("DLC_MP_VAL_F_FEET0_2") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS1_2")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_0") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_0")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_1") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_1")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_2") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_2")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_3") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_3")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_4") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_4")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_5") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_5")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_6") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_6")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_7") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_7")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_8") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_8")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_9") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_9")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_10") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_10")) BREAK CASE HASH("DLC_MP_VAL2_F_FEET_0_11") RETURN (iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_1_11")) BREAK ENDSWITCH ELSE RETURN FALSE ENDIF // DLC LTS pants can only be worn with pilot school boots ELIF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // safe RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "MP Female LTS pants can only be worn with pilot school boots. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // DLC Heist pants can only be worn with pilot school boots ELIF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // safe RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "MP Female Heist pants can only be worn with pilot school boots. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // Pyjama pants can only be worn with bare feet and flip flops ELIF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BARE_FEET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eFeetItem >= FEET_FMF_5_0 AND eFeetItem <= FEET_FMF_5_15) // Flip-flops OR iDLCFeetCheck = 5 OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET000") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET001") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET002") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET003") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET004") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET005") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET006") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET007") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET008") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET009") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET010") OR iDLCFeetHash = HASH("DLC_MP_BEACH_F_FEET011") // safe ELSE CPRINTLN(DEBUG_PED_COMP, "MP feale pyjama pants can only be worn with flip flops and bare feet. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_X17_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "MP feale chino pants can't be worn with trial boots. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF #ENDIF // knee high boots don't work with some pants IF (eFeetItem >= FEET_FMF_9_0 AND eFeetItem <= FEET_FMF_9_15) #IF USE_TU_CHANGES OR iDLCFeetCheck = 9 #ENDIF IF (eLegsItem >= LEGS_FMF_1_0 AND eLegsItem <= LEGS_FMF_1_15) OR (eLegsItem >= LEGS_FMF_2_0 AND eLegsItem <= LEGS_FMF_2_15) OR (eLegsItem >= LEGS_FMF_3_0 AND eLegsItem <= LEGS_FMF_3_15) OR (eLegsItem >= LEGS_FMF_4_0 AND eLegsItem <= LEGS_FMF_4_15) OR (eLegsItem >= LEGS_FMF_6_0 AND eLegsItem <= LEGS_FMF_6_15) OR (eLegsItem >= LEGS_FMF_11_0 AND eLegsItem <= LEGS_FMF_11_15) OR (eLegsItem >= LEGS_FMF_13_0 AND eLegsItem <= LEGS_FMF_13_15) CPRINTLN(DEBUG_PED_COMP, "MP Female knee high boots can only be worn with certain legs. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF #IF USE_TU_CHANGES IF (eLegsItem >= LEGS_FMF_DLC) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) IF iDLCLegsCheck = 0 OR iDLCLegsCheck = 1 OR iDLCLegsCheck = 2 OR iDLCLegsCheck = 3 OR iDLCLegsCheck = 4 OR iDLCLegsCheck = 6 OR iDLCLegsCheck = 11 OR iDLCLegsCheck = 13 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "MP Female knee high boots can only be worn with certain legs. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF #ENDIF // Ugg boots ELIF (eFeetItem >= FEET_FMF_2_0 AND eFeetItem <= FEET_FMF_2_15) #IF USE_TU_CHANGES OR iDLCFeetCheck = 2 #ENDIF IF (eLegsItem >= LEGS_FMF_1_0 AND eLegsItem <= LEGS_FMF_1_15) OR (eLegsItem >= LEGS_FMF_3_0 AND eLegsItem <= LEGS_FMF_3_15) OR (eLegsItem >= LEGS_FMF_6_0 AND eLegsItem <= LEGS_FMF_6_15) OR (eLegsItem >= LEGS_FMF_11_0 AND eLegsItem <= LEGS_FMF_11_15) CPRINTLN(DEBUG_PED_COMP, "MP Female fur boots can only be worn with certain legs. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF #IF USE_TU_CHANGES IF (eLegsItem >= LEGS_FMF_DLC) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) IF iDLCLegsCheck = 1 OR iDLCLegsCheck = 3 OR iDLCLegsCheck = 6 OR iDLCLegsCheck = 11 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "MP Female fur boots can only be worn with certain legs. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF #ENDIF // Combat boots ELIF (eFeetItem >= FEET_FMF_7_0 AND eFeetItem <= FEET_FMF_7_15) #IF USE_TU_CHANGES OR iDLCFeetCheck = 7 #ENDIF IF (eLegsItem >= LEGS_FMF_0_0 AND eLegsItem <= LEGS_FMF_0_15) CPRINTLN(DEBUG_PED_COMP, "MP Female combat boots can't be worn with skinny jeans. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // Strappy heels ELIF (eFeetItem >= FEET_FMF_14_0 AND eFeetItem <= FEET_FMF_14_15) #IF USE_TU_CHANGES OR iDLCFeetCheck = 14 #ENDIF IF (eLegsItem >= LEGS_FMF_0_0 AND eLegsItem <= LEGS_FMF_0_15) CPRINTLN(DEBUG_PED_COMP, "MP Female Strappy heels can't be worn with skinny jeans. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF #IF USE_TU_CHANGES IF (eLegsItem >= LEGS_FMF_DLC) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) IF iDLCLegsCheck = 0 CPRINTLN(DEBUG_PED_COMP, "MP Female Strappy heels can't be worn with skinny jeans. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF IF iDLCLegsCheck = 13 CPRINTLN(DEBUG_PED_COMP, "MP Female Strappy heels can't be worn with leggings. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF #ENDIF #IF USE_TU_CHANGES // Stocking heels ELIF (eFeetItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eFeetItem, COMP_TYPE_FEET, 4), DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) // allow stocking heels with stockings ELSE CPRINTLN(DEBUG_PED_COMP, "MP Female stocking heels can't be worn with these lowers. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF // High tops ELIF (eFeetItem >= FEET_FMF_11_0 AND eFeetItem <= FEET_FMF_11_15) OR iDLCFeetCheck = 11 IF (eLegsItem >= LEGS_FMF_6_0 AND eLegsItem <= LEGS_FMF_6_15) CPRINTLN(DEBUG_PED_COMP, "MP Female high tops can only be worn with certain legs. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF IF (eLegsItem >= LEGS_FMF_DLC) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) IF iDLCLegsCheck = 6 OR iDLCLegsHash = HASH("DLC_MP_LOW2_F_LEGS_0_0") OR iDLCLegsHash = HASH("DLC_MP_LOW2_F_LEGS_0_1") OR iDLCLegsHash = HASH("DLC_MP_LOW2_F_LEGS_0_2") OR iDLCLegsHash = HASH("DLC_MP_LOW2_F_LEGS_0_3") CPRINTLN(DEBUG_PED_COMP, "MP Female high tops can't be worn with suit pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF ENDIF // Folded boots ELIF (eFeetItem >= FEET_FMF_12_0 AND eFeetItem <= FEET_FMF_12_15) OR iDLCFeetCheck = 12 IF (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "MP Female folded boots can't be worn with bagy cargo pants. eLegsItem= ", eLegsItem, " eFeetItem = ", eFeetItem) RETURN FALSE ENDIF #ENDIF ENDIF BREAK ENDSWITCH RETURN TRUE // These legs and feet cen be combined ENDFUNC /// PURPOSE: /// Returns FALSE if the decl and jbib can't be worn together FUNC BOOL DO_DECAL_CHECK_MP(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eDecalItem, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) // MP male IF ePedModel = MP_M_FREEMODE_01 // Allow when the item has been forced. INT iDLCDeclHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eDecalItem, COMP_TYPE_DECL, 3) IF eType = COMP_TYPE_SPECIAL INT iDLCSpecialHash = -1 IF eItem >= SPECIAL_FMM_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_SPECIAL, 3) ENDIF // No need to validate jbibs decls with accs IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_ACCS_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_CLOTH, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_4_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_5_0") RETURN TRUE ENDIF ENDIF ENDIF ELIF eType = COMP_TYPE_JBIB INT iDLCJbibHash = -1 INT iDLCJbibCheck = -1 IF eItem >= JBIB_FMM_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF // No need to validate accs decls with jbibs IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_ACCS_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELIF eDecalItem = DECL_FMM_0_0 RETURN TRUE // no decal, fine with all jbibs ELIF eDecalItem = DECL_FMM_1_0 OR eDecalItem = DECL_FMM_2_0 IF (eItem >= JBIB_FMM_3_0 AND eItem <= JBIB_FMM_3_15) OR iDLCJbibCheck = 3 RETURN TRUE ENDIF ELIF eDecalItem = DECL_FMM_3_0 OR eDecalItem = DECL_FMM_4_0 IF (eItem >= JBIB_FMM_6_0 AND eItem <= JBIB_FMM_6_11) OR iDLCJbibCheck = 6 RETURN TRUE ENDIF ELIF eDecalItem = DECL_FMM_5_0 OR eDecalItem = DECL_FMM_6_0 IF (eItem >= JBIB_FMM_7_0 AND eItem <= JBIB_FMM_7_15) OR iDLCJbibCheck = 7 RETURN TRUE ENDIF // Baseball Tees ELIF (eItem >= JBIB_FMM_8_0 AND eItem <= JBIB_FMM_8_15) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_0_0") RETURN TRUE ENDIF // Polos ELIF (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_3_0") RETURN TRUE ENDIF ELIF eDecalItem >= DECL_FMM_DLC IF (iDLCJbibHash != -1) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_LTS_M_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_LOW_M_DECL_0_0") RETURN TRUE ENDIF #IF FEATURE_DLC_1_2022 // Leather Jacket (closed) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_SUM2_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SUM2_M_DECL_1_0") RETURN TRUE ENDIF // Leather Jacket (open) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_SUM2_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SUM2_M_DECL_2_0") RETURN TRUE ENDIF #ENDIF #IF FEATURE_FIXER // Hoodie down ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_M_DECL_0_0") RETURN TRUE ENDIF // Hoodie up ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_M_DECL_1_0") RETURN TRUE ENDIF // Blouson Jacket - closed ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_M_DECL_2_0") RETURN TRUE ENDIF // Blouson Jacket - open ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_M_DECL_3_0") RETURN TRUE ENDIF // Chore Jacket - closed ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_M_DECL_4_0") RETURN TRUE ENDIF // Chore Jacket - open ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_M_DECL_5_0") RETURN TRUE ENDIF #ENDIF // Baseball Tees ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_0_0") RETURN TRUE ENDIF // Sports T-Shirts ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_1_0") RETURN TRUE ENDIF // Tucked Polos ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_2_0") RETURN TRUE ENDIF // Polos ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_3_0") RETURN TRUE ENDIF // Baggy Polos ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_4_0") RETURN TRUE ENDIF // Sweaters ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_5_0") RETURN TRUE ENDIF // Racing Jackets ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_6_0") RETURN TRUE ENDIF // Leather Jackets ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_7_0") RETURN TRUE ENDIF // Leather Bomber Jacket closed ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_37, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_37_0") RETURN TRUE ENDIF // Leather Bomber Jacket open ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_38, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_M_DECL_38_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_AR_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SMUG_M_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SMUG_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_M_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_M_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_M_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_M_DECL_4_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_STUNT_M_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_STUNT_M_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_IE_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_IE_M_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_IE_M_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_6_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_7_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_M_DECL_10_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_4_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_5_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_6_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_7_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_8_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_9_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_10_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_11_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_12_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_13_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) SWITCH iDLCDeclHash CASE HASH("DLC_MP_BIKER_M_DECL_0_0") CASE HASH("DLC_MP_BIKER_M_DECL_0_1") CASE HASH("DLC_MP_BIKER_M_DECL_0_2") CASE HASH("DLC_MP_BIKER_M_DECL_0_3") CASE HASH("DLC_MP_BIKER_M_DECL_0_4") CASE HASH("DLC_MP_BIKER_M_DECL_0_5") CASE HASH("DLC_MP_BIKER_M_DECL_0_6") CASE HASH("DLC_MP_BIKER_M_DECL_0_7") CASE HASH("DLC_MP_BIKER_M_DECL_0_8") CASE HASH("DLC_MP_GR_M_DECL_5_0") CASE HASH("DLC_MP_GR_M_DECL_5_1") CASE HASH("DLC_MP_GR_M_DECL_5_2") CASE HASH("DLC_MP_GR_M_DECL_5_3") CASE HASH("DLC_MP_GR_M_DECL_5_4") CASE HASH("DLC_MP_GR_M_DECL_5_5") CASE HASH("DLC_MP_GR_M_DECL_5_6") CASE HASH("DLC_MP_GR_M_DECL_5_7") CASE HASH("DLC_MP_GR_M_DECL_5_8") CASE HASH("DLC_MP_GR_M_DECL_5_9") CASE HASH("DLC_MP_GR_M_DECL_5_10") RETURN TRUE BREAK ENDSWITCH ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_9_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_18_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_27, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_19_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_28, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_20_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_14_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_15_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_M_DECL_16_0") RETURN TRUE ENDIF ENDIF // Look up the forced components for this DLC item. IF iDLCDeclHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCDeclHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iDLCDeclHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_JBIB) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF iRetNameHash = iDLCJbibHash RETURN TRUE ENDIF // Forced on-disk item ELSE IF INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) = eItem RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF // And the inverse. IF iDLCJbibHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCJbibHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iDLCJbibHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF iRetNameHash = iDLCDeclHash RETURN TRUE ENDIF // Forced on-disk item ELSE IF INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) = eDecalItem RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ENDIF // MP female ELIF ePedModel = MP_F_FREEMODE_01 // Allow when the item has been forced. INT iDLCDeclHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eDecalItem, COMP_TYPE_DECL, 4) IF eType = COMP_TYPE_SPECIAL INT iDLCSpecialHash = -1 IF eItem >= SPECIAL_FMM_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_SPECIAL, 4) ENDIF // No need to validate jbibs decls with accs IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_ACCS_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_CLOTH, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_4_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_5_0") RETURN TRUE ENDIF ENDIF ENDIF ELIF eType = COMP_TYPE_JBIB INT iDLCJbibHash = -1 INT iDLCJbibCheck = -1 IF eItem >= JBIB_FMF_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF // No need to validate accs decls with jbibs IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_ACCS_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELIF eDecalItem = DECL_FMF_0_0 RETURN TRUE // no decal, fine with all jbibs ELIF eDecalItem = DECL_FMF_1_0 IF (eItem >= JBIB_FMF_1_0 AND eItem <= JBIB_FMF_1_15) OR iDLCJbibCheck = 1 RETURN TRUE ENDIF ELIF eDecalItem = DECL_FMF_2_0 OR eDecalItem = DECL_FMF_3_0 IF (eItem >= JBIB_FMF_8_0 AND eItem <= JBIB_FMF_8_15) OR iDLCJbibCheck = 8 RETURN TRUE ENDIF ELIF eDecalItem = DECL_FMF_4_0 OR eDecalItem = DECL_FMF_5_0 IF (eItem >= JBIB_FMF_10_0 AND eItem <= JBIB_FMF_10_15) OR iDLCJbibCheck = 10 RETURN TRUE ENDIF // Polos ELIF (eItem >= JBIB_FMF_14_0 AND eItem <= JBIB_FMF_14_15) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_3_0") RETURN TRUE ENDIF ELIF eDecalItem >= DECL_FMF_DLC IF (iDLCJbibHash != -1) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_LTS_F_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_LOW_F_DECL_0_0") RETURN TRUE ENDIF #IF FEATURE_DLC_1_2022 // Leather Jacket (closed) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_SUM2_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SUM2_F_DECL_0_0") RETURN TRUE ENDIF // Leather Jacket (open) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_SUM2_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SUM2_F_DECL_1_0") RETURN TRUE ENDIF #ENDIF #IF FEATURE_FIXER // Sweater ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_0_0") RETURN TRUE ENDIF // Hoodie down ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_1_0") RETURN TRUE ENDIF // Hoodie up ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_2_0") RETURN TRUE ENDIF // Blouson Jacket - closed ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_3_0") RETURN TRUE ENDIF // Blouson Jacket - open ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_4_0") RETURN TRUE ENDIF // Blouse ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_5_0") RETURN TRUE ENDIF // Chore Jacket - closed ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_6_0") RETURN TRUE ENDIF // Chore Jacket - open ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_FIXER_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_FIXER_F_DECL_7_0") RETURN TRUE ENDIF #ENDIF // Baseball Tees ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_0_0") RETURN TRUE ENDIF // Sports T-Shirts ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_1_0") RETURN TRUE ENDIF // Tucked Polos ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_2_0") RETURN TRUE ENDIF // Polos ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_3_0") RETURN TRUE ENDIF // Baggy Polos ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_4_0") RETURN TRUE ENDIF // Sweaters ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_5_0") RETURN TRUE ENDIF // Racing Jackets ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_6_0") RETURN TRUE ENDIF // Leather Jackets ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_7_0") RETURN TRUE ENDIF // Leather Bomber Jacket closed ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_36, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_36_0") RETURN TRUE ENDIF // Leather Bomber Jacket open ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CREW_LOGO_TUNER_37, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_TUNER_F_DECL_37_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_AR_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SMUG_F_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_SMUG_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_F_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_F_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_23, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_F_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_GR_F_DECL_4_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_STUNT_F_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_STUNT_F_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_IE_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_IE_F_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_IE_F_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_0_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_6_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_7_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_10_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_X17_F_DECL_11_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_1_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_2_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_3_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_4_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_5_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_6_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_7_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_8_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_9_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_10_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_11_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_12_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_13_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_25_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_26_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) SWITCH iDLCDeclHash CASE HASH("DLC_MP_BIKER_F_DECL_0_0") CASE HASH("DLC_MP_BIKER_F_DECL_0_1") CASE HASH("DLC_MP_BIKER_F_DECL_0_2") CASE HASH("DLC_MP_BIKER_F_DECL_0_3") CASE HASH("DLC_MP_BIKER_F_DECL_0_4") CASE HASH("DLC_MP_BIKER_F_DECL_0_5") CASE HASH("DLC_MP_BIKER_F_DECL_0_6") CASE HASH("DLC_MP_BIKER_F_DECL_0_7") CASE HASH("DLC_MP_BIKER_F_DECL_0_8") CASE HASH("DLC_MP_GR_F_DECL_5_0") CASE HASH("DLC_MP_GR_F_DECL_5_1") CASE HASH("DLC_MP_GR_F_DECL_5_2") CASE HASH("DLC_MP_GR_F_DECL_5_3") CASE HASH("DLC_MP_GR_F_DECL_5_4") CASE HASH("DLC_MP_GR_F_DECL_5_5") CASE HASH("DLC_MP_GR_F_DECL_5_6") CASE HASH("DLC_MP_GR_F_DECL_5_7") CASE HASH("DLC_MP_GR_F_DECL_5_8") CASE HASH("DLC_MP_GR_F_DECL_5_9") CASE HASH("DLC_MP_GR_F_DECL_5_10") RETURN TRUE BREAK ENDSWITCH ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_30, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_27_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_32, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_28_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_29_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_15_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_16_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_17_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_18_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_20_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_21_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_22_0") RETURN TRUE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_23_0") RETURN TRUE ENDIF ENDIF // Look up the forced components for this DLC item. IF iDLCDeclHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCDeclHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iDLCDeclHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_JBIB) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF iRetNameHash = iDLCJbibHash RETURN TRUE ENDIF // Forced on-disk item ELSE IF INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) = eItem RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF // And the inverse. IF iDLCJbibHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCJbibHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iDLCJbibHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF iRetNameHash = iDLCDeclHash RETURN TRUE ENDIF // Forced on-disk item ELSE IF INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) = eDecalItem RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF ELIF (eItem >= JBIB_FMF_8_0 AND eItem <= JBIB_FMF_8_15) OR iDLCJbibCheck = 8 IF iDLCDeclHash = HASH("DLC_MP_BIKER_F_DECL_14_0") RETURN TRUE ENDIF ENDIF ENDIF ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "This decal can't be worn with this jbib. eDecalItem= ", eDecalItem, ", eType = ", eType, ", eItem = ", eItem) RETURN FALSE// This decal can't be worn with this jbib ENDFUNC /// PURPOSE: /// Returns whether the hair and hat passed in can be worn together /// IF this list changes, update SETUP_MP_CLOTHES_HATS FUNC BOOL DO_HAT_AND_HAIR_CHECK_MP(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eHat, PED_COMP_NAME_ENUM eHair) // female IF eModel = MP_F_FREEMODE_01 IF (eHair >= HAIR_FMF_11_0 AND eHair <= HAIR_FMF_11_6) OR (eHair >= HAIR_FMF_4_0 AND eHair <= HAIR_FMF_4_5) IF (eHat >=PROPS_FMF_HAT_2_0 AND eHat <=PROPS_FMF_HAT_2_7) OR (eHat >=PROPS_FMF_HAT_3_0 AND eHat <=PROPS_FMF_HAT_3_7) OR (eHat >=PROPS_FMF_HAT_4_0 AND eHat <=PROPS_FMF_HAT_4_7) OR (eHat >=PROPS_FMF_HAT_5_0 AND eHat <=PROPS_FMF_HAT_5_7) OR (eHat >=PROPS_FMF_HAT_7_0 AND eHat <=PROPS_FMF_HAT_7_7) OR (eHat >=PROPS_FMF_HAT_9_0 AND eHat <=PROPS_FMF_HAT_9_7) OR (eHat >=PROPS_FMF_HAT_11_0 AND eHat <=PROPS_FMF_HAT_11_7) OR (eHat >=PROPS_FMF_HAT_12_0 AND eHat <=PROPS_FMF_HAT_12_7) OR (eHat >=PROPS_FMF_HAT_13_0 AND eHat <=PROPS_FMF_HAT_13_7) CPRINTLN(DEBUG_PED_COMP, "loose tied hair / pony tail- blocking hat that would clip.") RETURN FALSE ENDIF // 1710532 - christmas hats need blocked here IF eHat >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(eModel) GET_PED_COMP_DATA_FOR_ITEM_MP(eModel, COMP_TYPE_PROPS, eHat) IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES") RETURN FALSE ENDIF ENDIF // 1740438 - hats with incompatible hairstyles need blocking here IF eHat >= PROPS_FMF_DLC INT iDLCHatNameHash = -1 iDLCHatNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eHat, COMP_TYPE_PROPS, 3) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHatNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_PROP)) CPRINTLN(DEBUG_PED_COMP, "hats with incompatible hairstyles need blocking here.") RETURN FALSE ENDIF SWITCH g_iLastDLCItemNameHash CASE HASH("DLC_MP_BEACH_F_HEAD2_0") CASE HASH("DLC_MP_BEACH_F_HEAD2_1") CASE HASH("DLC_MP_BEACH_F_HEAD2_2") CASE HASH("DLC_MP_BEACH_F_HEAD2_3") CASE HASH("DLC_MP_BEACH_F_HEAD2_4") CASE HASH("DLC_MP_BEACH_F_HEAD2_5") CASE HASH("DLC_MP_BEACH_F_HEAD2_6") CPRINTLN(DEBUG_PED_COMP, "hats \"", g_iLastDLCItemNameHash, "\" with incompatible hairstyles need blocking here [Cowgirl Hat].") RETURN FALSE BREAK CASE HASH("DLC_MP_BEACH_F_HEAD4_0") CASE HASH("DLC_MP_BEACH_F_HEAD4_1") CASE HASH("DLC_MP_BEACH_F_HEAD4_2") CASE HASH("DLC_MP_BEACH_F_HEAD4_3") CASE HASH("DLC_MP_BEACH_F_HEAD4_4") CASE HASH("DLC_MP_BEACH_F_HEAD4_5") CASE HASH("DLC_MP_BEACH_F_HEAD4_6") CPRINTLN(DEBUG_PED_COMP, "hats \"", g_iLastDLCItemNameHash, "\" with incompatible hairstyles need blocking here [Sun Hat].") RETURN FALSE BREAK ENDSWITCH CPRINTLN(DEBUG_PED_COMP, "hats \"", g_iLastDLCItemNameHash, "\" with compatible hairstyles.. no point blocking") ENDIF ELIF (eHair >= HAIR_FMF_15_0 AND eHair <= HAIR_FMF_15_6) OR (eHair >= HAIR_FMF_6_0 AND eHair <= HAIR_FMF_6_4) IF (eHat >= PROPS_FMF_HELMET_16_0 AND eHat <= PROPS_FMF_HELMET_18_7) CPRINTLN(DEBUG_PED_COMP, "wavy bob / braids- blocking helmet that would clip.") RETURN FALSE ENDIF ENDIF ENDIF RETURN TRUE // this hat and hair combo is valid ENDFUNC /// PURPOSE: /// Returns whether the jbib component passed in is a jacket or not. /// (This is currently multiplayer only) FUNC BOOL IS_JBIB_COMPONENT_A_JACKET(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem, INT iDLCJBIBHash = -1) SWITCH eModel // male CASE MP_M_FREEMODE_01 IF (eItem >= JBIB_FMM_3_0 AND eItem < JBIB_FMM_4_0) // Draw 3 OR (eItem >= JBIB_FMM_4_0 AND eItem < JBIB_FMM_5_0) // Draw 4 OR (eItem >= JBIB_FMM_6_0 AND eItem < JBIB_FMM_7_0) // Draw 6 OR (eItem >= JBIB_FMM_7_0 AND eItem < JBIB_FMM_8_0) // Draw 7 OR (eItem >= JBIB_FMM_10_0 AND eItem < JBIB_FMM_11_0) // Draw 10 RETURN TRUE ENDIF IF iDLCJBIBHash = -1 AND eItem >= JBIB_FMM_DLC iDLCJBIBHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJBIBHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK // female CASE MP_F_FREEMODE_01 IF (eItem >= JBIB_FMF_1_0 AND eItem < JBIB_FMF_2_0) // Draw 1 OR (eItem >= JBIB_FMF_6_0 AND eItem < JBIB_FMF_7_0) // Draw 6 OR (eItem >= JBIB_FMF_7_0 AND eItem < JBIB_FMF_8_0) // Draw 7 OR (eItem >= JBIB_FMF_8_0 AND eItem < JBIB_FMF_9_0) // Draw 8 OR (eItem >= JBIB_FMF_10_0 AND eItem < JBIB_FMF_11_0) // Draw 10 RETURN TRUE ENDIF IF iDLCJBIBHash = -1 AND eItem >= JBIB_FMF_DLC iDLCJBIBHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJBIBHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL IS_JBIB_COMPONENT_AN_OPEN_JACKET(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem, INT iDLCJBIBHash = -1) SWITCH eModel // male CASE MP_M_FREEMODE_01 IF (eItem >= JBIB_FMM_3_0 AND eItem < JBIB_FMM_4_0) // Draw 3 OR (eItem >= JBIB_FMM_4_0 AND eItem < JBIB_FMM_5_0) // Draw 4 OR (eItem >= JBIB_FMM_7_0 AND eItem < JBIB_FMM_8_0) // Draw 7 RETURN TRUE ENDIF IF iDLCJBIBHash = -1 AND eItem >= JBIB_FMF_DLC iDLCJBIBHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJBIBHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK // female CASE MP_F_FREEMODE_01 IF (eItem >= JBIB_FMF_1_0 AND eItem < JBIB_FMF_2_0) // Draw 1 OR (eItem >= JBIB_FMF_7_0 AND eItem < JBIB_FMF_8_0) // Draw 7 OR (eItem >= JBIB_FMF_8_0 AND eItem < JBIB_FMF_9_0) // Draw 8 RETURN TRUE ENDIF IF iDLCJBIBHash = -1 AND eItem >= JBIB_FMF_DLC iDLCJBIBHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJBIBHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: /// Returns whether the jbib component passed in is a jacket or not. /// (This is currently multiplayer only) FUNC BOOL IS_JBIB_COMPONENT_AN_OPEN_CHECK_SHIRT(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem) SWITCH eModel // male CASE MP_M_FREEMODE_01 IF (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF BREAK // female CASE MP_F_FREEMODE_01 IF (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: /// Returns whether the jbib component passed in is a jacket or not. /// (This is currently multiplayer only) FUNC BOOL IS_JBIB_COMPONENT_AN_OPEN_SHORT_SHIRT(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem) SWITCH eModel // male CASE MP_M_FREEMODE_01 IF (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF BREAK // female CASE MP_F_FREEMODE_01 IF (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL IS_JBIB_COMPONENT_A_JACKET_ONLY_ITEM(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eItem) SWITCH eModel // male CASE MP_M_FREEMODE_01 IF (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF BREAK // female CASE MP_F_FREEMODE_01 IF (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL SHOULD_JBIB_USE_JACKET_SCARF(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eJbibItem) IF ePedModel = MP_M_FREEMODE_01 // Set these to use jacket scarfs then fail when we check if it's a jacket scarf. INT iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 3) IF iDLCJbibHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_LOW_DRAW_8, 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_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_DRAW_1, 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hoodie OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tucked shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Loose shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racing Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_USE_JACKET_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny RETURN TRUE ENDIF ENDIF // Set these to use jacket scarfs, no fail. IF iDLCJbibHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF RETURN IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) ELIF ePedModel = MP_F_FREEMODE_01 INT iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 4) INT iDLCJbibCheck = -1 IF iDLCJbibHash != -1 iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF //checked and adjusted works with jbibs - on disc: 001, 006, 007, 008, 009, 010 Business : 000, 001 LTS: 000 Beach: 001 Hipster: 003, 004 Heist: 005, 006, 007, 008, 009, 011, 012 IF (eJbibItem >= JBIB_FMF_1_0 AND eJbibItem < JBIB_FMF_2_0) // Draw 1 OR (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem < JBIB_FMF_4_0) // Draw 3 OR (eJbibItem >= JBIB_FMF_6_0 AND eJbibItem < JBIB_FMF_7_0) // Draw 6 OR (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem < JBIB_FMF_8_0) // Draw 7 OR (eJbibItem >= JBIB_FMF_8_0 AND eJbibItem < JBIB_FMF_9_0) // Draw 8 OR (eJbibItem >= JBIB_FMF_9_0 AND eJbibItem < JBIB_FMF_10_0) // Draw 9 OR (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem < JBIB_FMF_11_0) // Draw 10 OR (eJbibItem >= JBIB_FMF_14_0 AND eJbibItem < JBIB_FMF_15_0) // Draw 14 OR (iDLCJbibCheck = 1) OR (iDLCJbibCheck = 3) OR (iDLCJbibCheck = 6) OR (iDLCJbibCheck = 7) OR (iDLCJbibCheck = 8) OR (iDLCJbibCheck = 9) OR (iDLCJbibCheck = 10) OR (iDLCJbibCheck = 14) #IF USE_TU_CHANGES OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, 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_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_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racing Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit #ENDIF RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_DLC_SPECIAL_HASH_CHECK_SHIRT(INT iDLCSpecialHash) IF iDLCSpecialHash != -1 RETURN FALSE ENDIF SWITCH iDLCSpecialHash CASE HASH("DLC_MP_BUSI_M_ACCS4_0") CASE HASH("DLC_MP_BUSI_M_ACCS5_0") CASE HASH("DLC_MP_BUSI_M_ACCS4_1") CASE HASH("DLC_MP_BUSI_M_ACCS5_1") CASE HASH("DLC_MP_BUSI_M_ACCS4_2") CASE HASH("DLC_MP_BUSI_M_ACCS5_2") CASE HASH("DLC_MP_BUSI_M_ACCS4_3") CASE HASH("DLC_MP_BUSI_M_ACCS5_3") CASE HASH("DLC_MP_BUSI_M_ACCS4_4") CASE HASH("DLC_MP_BUSI_M_ACCS5_4") CASE HASH("DLC_MP_BUSI_M_ACCS4_5") CASE HASH("DLC_MP_BUSI_M_ACCS5_5") CASE HASH("DLC_MP_BUSI_M_ACCS4_6") CASE HASH("DLC_MP_BUSI_M_ACCS5_6") CASE HASH("DLC_MP_BUSI_M_ACCS4_7") CASE HASH("DLC_MP_BUSI_M_ACCS5_7") CASE HASH("DLC_MP_BUSI_M_ACCS4_8") CASE HASH("DLC_MP_BUSI_M_ACCS5_8") CASE HASH("DLC_MP_BUSI_M_ACCS4_9") CASE HASH("DLC_MP_BUSI_M_ACCS5_9") CASE HASH("DLC_MP_BUSI_M_ACCS4_10") CASE HASH("DLC_MP_BUSI_M_ACCS5_10") CASE HASH("DLC_MP_BUSI_M_ACCS4_11") CASE HASH("DLC_MP_BUSI_M_ACCS5_11") CASE HASH("DLC_MP_BUSI_M_ACCS4_12") CASE HASH("DLC_MP_BUSI_M_ACCS5_12") CASE HASH("DLC_MP_BUSI_M_ACCS4_13") CASE HASH("DLC_MP_BUSI_M_ACCS5_13") CASE HASH("DLC_MP_BUSI_M_ACCS4_14") CASE HASH("DLC_MP_BUSI_M_ACCS5_14") CASE HASH("DLC_MP_BUSI_M_ACCS4_15") CASE HASH("DLC_MP_BUSI_M_ACCS5_15") RETURN TRUE BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Gets the Jbib version of the Special item passed in (MP only) /// Returns dummy ped comp if there isn't one FUNC PED_COMP_NAME_ENUM GET_JBIB_FROM_SPECIAL(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eSpecialItem, INT iSpecialVariation) PED_COMP_NAME_ENUM eJbibItem = DUMMY_PED_COMP // male IF ePedModel = MP_M_FREEMODE_01 IF eSpecialItem <= SPECIAL_FMM_0_15 eJbibItem = JBIB_FMM_0_0 ELIF eSpecialItem <= SPECIAL_FMM_1_15 eJbibItem = JBIB_FMM_1_0 ELIF eSpecialItem <= SPECIAL_FMM_2_15 eJbibItem = JBIB_FMM_0_0 ELIF eSpecialItem <= SPECIAL_FMM_3_15 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMM_4_15 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMM_5_15 eJbibItem = JBIB_FMM_5_0 ELIF eSpecialItem <= SPECIAL_FMM_6_15 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMM_7_15 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMM_8_15 eJbibItem = JBIB_FMM_8_0 ELIF eSpecialItem <= SPECIAL_FMM_9_15 eJbibItem = JBIB_FMM_9_0 ELIF eSpecialItem <= SPECIAL_FMM_10_15 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMM_11_15 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMM_12_15 eJbibItem = JBIB_FMM_12_0 ELIF eSpecialItem <= SPECIAL_FMM_13_15 eJbibItem = JBIB_FMM_13_0 ELIF eSpecialItem <= SPECIAL_FMM_14_15 eJbibItem = JBIB_FMM_1_0 ELIF eSpecialItem <= SPECIAL_FMM_15_0 eJbibItem = JBIB_FMM_15_0 #IF USE_TU_CHANGES ELIF eSpecialItem >= SPECIAL_FMM_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) 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_JBIB) //CPRINTLN(DEBUG_PED_COMP, " **** Found JBIB version of this dlc SPECIAL - special hash = ", iItemNameHash, ", jbib name hash = ", iRetNameHash, ", jbib enum = ", iRetCompEnum) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eJbibItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_JBIB, 3) RETURN eJbibItem // Forced on-disk item ELSE eJbibItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) RETURN eJbibItem ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF // female ELIF ePedModel = MP_F_FREEMODE_01 IF eSpecialItem <= SPECIAL_FMF_0_15 eJbibItem = JBIB_FMF_0_0 ELIF eSpecialItem <= SPECIAL_FMF_1_15 eJbibItem = JBIB_FMF_0_0 ELIF eSpecialItem <= SPECIAL_FMF_2_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_3_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_4_15 eJbibItem = JBIB_FMF_4_0 ELIF eSpecialItem <= SPECIAL_FMF_5_15 eJbibItem = JBIB_FMF_5_0 ELIF eSpecialItem <= SPECIAL_FMF_6_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_7_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_8_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_9_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_10_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_11_15 eJbibItem = JBIB_FMF_11_0 ELIF eSpecialItem <= SPECIAL_FMF_12_15 eJbibItem = JBIB_FMF_12_0 ELIF eSpecialItem <= SPECIAL_FMF_13_15 eJbibItem = JBIB_FMF_13_0 ELIF eSpecialItem <= SPECIAL_FMF_14_0 eJbibItem = DUMMY_PED_COMP ELIF eSpecialItem <= SPECIAL_FMF_15_15 eJbibItem = JBIB_FMF_15_0 #IF USE_TU_CHANGES ELIF eSpecialItem >= SPECIAL_FMF_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 4) 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_JBIB) //CPRINTLN(DEBUG_PED_COMP, " **** Found JBIB version of this dlc SPECIAL - special hash = ", iItemNameHash, ", jbib name hash = ", iRetNameHash, ", jbib enum = ", iRetCompEnum) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eJbibItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_JBIB, 4) RETURN eJbibItem // Forced on-disk item ELSE eJbibItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) RETURN eJbibItem ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ENDIF IF eJbibItem <> DUMMY_PED_COMP eJbibItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(eJbibItem)+iSpecialVariation)) ENDIF RETURN eJbibItem ENDFUNC /// PURPOSE: /// Returns FALSE if the teeth component and other item can't be worn together FUNC BOOL DO_TEETH_CHECK_MP(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eTeethItem, PED_COMP_TYPE_ENUM eTypeToCompare, PED_COMP_NAME_ENUM eJbibItem, PED_COMP_NAME_ENUM eSpecialItem, PED_COMP_NAME_ENUM eTorsoItem, PED_INDEX mPed, BOOL bAllowOpenCollarForTie = FALSE, PED_COMP_NAME_ENUM eSpecial2Item = DUMMY_PED_COMP, PED_COMP_NAME_ENUM ePropItem = DUMMY_PED_COMP, PED_COMP_NAME_ENUM eBerdItem = DUMMY_PED_COMP, PED_COMP_NAME_ENUM eLegsItem = DUMMY_PED_COMP) UNUSED_PARAMETER(eBerdItem) PED_COMP_NAME_ENUM eCurrentJbib // only used in tie checks at the moment // MP male IF ePedModel = MP_M_FREEMODE_01 INT iDLCTeethCheck = -1 INT iDLCTeethHash = -1 IF g_eDLCCached_Teeth = eTeethItem iDLCTeethHash = g_iDLCCached_TeethHash iDLCTeethCheck = g_iDLCCached_TeethCheck ELIF eTeethItem >= TEETH_FMM_DLC iDLCTeethHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eTeethItem, COMP_TYPE_TEETH, 3) iDLCTeethCheck = GET_DLC_DRAW_TAG(iDLCTeethHash) g_eDLCCached_Teeth = eTeethItem g_iDLCCached_TeethHash = iDLCTeethHash g_iDLCCached_TeethCheck = iDLCTeethCheck ENDIF INT iDLCJbibCheck = -1 INT iDLCJbibHash = -1 IF g_eDLCCached_Jbib = eJbibItem iDLCJbibHash = g_iDLCCached_JbibHash iDLCJbibCheck = g_iDLCCached_JbibCheck ELIF eJbibItem >= JBIB_FMM_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 3) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) g_eDLCCached_Jbib = eJbibItem g_iDLCCached_JbibHash = iDLCJbibHash g_iDLCCached_JbibCheck = iDLCJbibCheck ENDIF INT iDLCSpecialCheck = -1 INT iDLCSpecialHash = -1 IF g_eDLCCached_Special = eSpecialItem iDLCSpecialHash = g_iDLCCached_SpecialHash iDLCSpecialCheck = g_iDLCCached_SpecialCheck ELIF eSpecialItem >= SPECIAL_FMM_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) iDLCSpecialCheck = GET_DLC_DRAW_TAG(iDLCSpecialHash) CPRINTLN(DEBUG_PED_COMP, "DO_TEETH_CHECK_MP - iDLCSpecialCheck = ", iDLCSpecialCheck) g_eDLCCached_Special = eSpecialItem g_iDLCCached_SpecialHash = iDLCSpecialHash g_iDLCCached_SpecialCheck = iDLCSpecialCheck ENDIF INT iDLCBerdCheck = -1 INT iDLCBerdHash = -1 IF g_eDLCCached_Berd = eBerdItem iDLCBerdHash = g_iDLCCached_BerdHash iDLCBerdCheck = g_iDLCCached_BerdCheck ELIF eBerdItem >= BERD_FMM_DLC iDLCBerdHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eBerdItem, COMP_TYPE_BERD, 3) iDLCBerdCheck = GET_DLC_DRAW_TAG(iDLCBerdHash) CPRINTLN(DEBUG_PED_COMP, "DO_TEETH_CHECK_MP - iDLCBerdCheck = ", iDLCBerdCheck) g_eDLCCached_Berd = eBerdItem g_iDLCCached_BerdHash = iDLCBerdHash g_iDLCCached_BerdCheck = iDLCBerdCheck ENDIF // Only defaults work with fixed suits. IF eJbibItem <> DUMMY_PED_COMP IF 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_SCUBA_GEAR, 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)) IF eTeethItem != TEETH_FMM_0_0 RETURN FALSE ENDIF ENDIF ENDIF // Block all necklaces with the large headscarfs IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_SMUG_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Neck scarf IF eTeethItem != TEETH_FMM_0_0 CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with teeth item. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF // Glow necklaces blocked when wearing a jacket. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_HOOP_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) CPRINTLN(DEBUG_PED_COMP, "[1] Hooped necklace can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Can't wear teeth with pilot suit. IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eTeethItem != TEETH_FMM_0_0 AND NOT (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "Can't wear pilot suit with teeth item. eTeethItem= ", eTeethItem, " eJbibItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF // Epsilon chains only works with Epsilon top. IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EPSILON_CHAIN_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear big epsilon chain with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EPSILON_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) // covers all 3 chains IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear this epsilon chain with epsilon top. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EPSILON_CHAIN_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eSpecialItem = SPECIAL_FMM_15_0 RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear big epsilon chain with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF #IF FEATURE_TUNER // Frontier scarf only works with Frontier top. IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear frontier scarf with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear frontier scarf with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF #ENDIF // Tassel scarf doesnt work with caps. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_DESERT_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (ePropItem != DUMMY_PED_COMP) INT iDLCPropHash = -1 IF (ePropItem >= PROPS_FMM_DLC) iDLCPropHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, ePropItem, COMP_TYPE_PROPS, 3) ENDIF IF (ePropItem >= PROPS_FMM_HAT_3_0 AND ePropItem <= PROPS_FMM_HAT_3_7) OR (ePropItem >= PROPS_FMM_HAT_9_0 AND ePropItem <= PROPS_FMM_HAT_9_7) OR (ePropItem >= PROPS_FMM_HAT_13_0 AND ePropItem <= PROPS_FMM_HAT_13_7) CPRINTLN(DEBUG_PED_COMP, "This hat can't be worn with the desert scarf. eTeethItem= ", eTeethItem, " ePropItem = ", ePropItem) RETURN FALSE ENDIF SWITCH iDLCPropHash CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_0") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_1") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_2") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_3") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_4") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_5") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_6") CASE HASH("DLC_MP_XMAS2_M_PHEAD_5_7") CASE HASH("DLC_MP_XMAS2_M_PHEAD_2_0") CASE HASH("DLC_MP_XMAS2_M_PHEAD_2_1") CASE HASH("DLC_MP_XMAS2_M_PHEAD_2_2") CASE HASH("DLC_MP_XMAS2_M_PHEAD_2_3") CASE HASH("DLC_MP_EXEC_M_PHEAD_1_0") CASE HASH("DLC_MP_BEACH_M_HEAD0_0") CASE HASH("DLC_MP_BEACH_M_HEAD0_1") CASE HASH("DLC_MP_BEACH_M_HEAD0_2") CASE HASH("DLC_MP_BEACH_M_HEAD0_3") CASE HASH("DLC_MP_BEACH_M_HEAD0_4") CASE HASH("DLC_MP_BEACH_M_HEAD0_5") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_0") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_1") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_2") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_3") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_4") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_5") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_6") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_7") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_8") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_9") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_10") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_11") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_12") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_13") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_14") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_15") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_16") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_17") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_18") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_19") CASE HASH("DLC_MP_STUNT_M_PHEAD_10_20") CASE HASH("DLC_MP_GR_M_PHEAD_7_0") CASE HASH("DLC_MP_GR_M_PHEAD_7_1") CASE HASH("DLC_MP_GR_M_PHEAD_7_2") CASE HASH("DLC_MP_GR_M_PHEAD_7_3") CASE HASH("DLC_MP_GR_M_PHEAD_7_4") CASE HASH("DLC_MP_GR_M_PHEAD_7_5") CASE HASH("DLC_MP_GR_M_PHEAD_7_6") CASE HASH("DLC_MP_GR_M_PHEAD_7_7") CASE HASH("DLC_MP_GR_M_PHEAD_7_8") CASE HASH("DLC_MP_GR_M_PHEAD_7_9") CASE HASH("DLC_MP_GR_M_PHEAD_7_10") CPRINTLN(DEBUG_PED_COMP, "This dlc hat can't be worn with the desert scarf. eTeethItem= ", eTeethItem, " ePropItem = ", ePropItem) RETURN FALSE BREAK ENDSWITCH ENDIF IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with desert scarf. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF // Can't wear jacket scarfs with non jacket items. IF eJbibItem <> DUMMY_PED_COMP IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_JACKET_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_SCARFS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block luxe jackets OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_LOW_DRAW_8, 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_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_DRAW_1, 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hoodie OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Cashmere Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tucked shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Loose shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Quilted Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Oriental Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Leather Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Turtleneck OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Retro Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racing Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Retro Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit CPRINTLN(DEBUG_PED_COMP, "This jacket scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELIF SHOULD_JBIB_USE_JACKET_SCARF(ePedModel, eJbibItem) // wearing a jacket so we are safe ELSE CPRINTLN(DEBUG_PED_COMP, "This jacket scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_SCARFS, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "This scarf can't be worn with this jbib - blocked. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELIF SHOULD_JBIB_USE_JACKET_SCARF(ePedModel, eJbibItem) CPRINTLN(DEBUG_PED_COMP, "This scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_DESERT_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tassel scarf // Block some shirts. IF (eJbibItem >= JBIB_FMM_12_0 AND eJbibItem <= JBIB_FMM_12_15) OR (eJbibItem >= JBIB_FMM_14_0 AND eJbibItem <= JBIB_FMM_14_15) OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 14 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racing Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit CPRINTLN(DEBUG_PED_COMP, "This scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELSE // safe ENDIF ELSE // not wearing a jacket so we are safe ENDIF ENDIF ENDIF IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with scarf. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LUXE_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) // wearing a luxe jacket so we are safe ELSE CPRINTLN(DEBUG_PED_COMP, "This luxe scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ENDIF // Dungarees + scarfs/chains IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BIG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eLegsItem <> DUMMY_PED_COMP INT iDLCLegsHash = -1 IF eLegsItem >= LEGS_FMM_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 3) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This scarf can't be worn with these dungarees") RETURN FALSE ENDIF ENDIF ENDIF //Bead Necklace IF eJbibItem <> DUMMY_PED_COMP IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BEAD_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Poloneck CPRINTLN(DEBUG_PED_COMP, "Bead necklace can be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Bead necklace can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ENDIF // Luxe chains IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eJbibItem <> DUMMY_PED_COMP // Lowrider2 chains don't work with leather jacket as it sticks out, the rest work with the same rules. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BIG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eJbibItem >= JBIB_FMM_6_0 AND eJbibItem <= JBIB_FMM_6_11) OR iDLCJbibCheck = 6 CPRINTLN(DEBUG_PED_COMP, "[1] This big chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Bare chest doesn't work with alt_chain IF eJbibItem = JBIB_FMM_15_0 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[1] This alt chain can't be worn with this bare chest jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF // These item's don't work with any chain ELIF (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) OR (eJbibItem >= JBIB_FMM_12_0 AND eJbibItem <= JBIB_FMM_12_15) OR (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15) OR (eJbibItem >= JBIB_FMM_14_0 AND eJbibItem <= JBIB_FMM_14_15) OR iDLCJbibCheck = 11 OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 13 OR iDLCJbibCheck = 14 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_CHAINS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SCRUFFY_JACKET, 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_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, 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_HEIST_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_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_JAN_DRAW_1, 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hoodie OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Quilted Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Oriental Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Leather Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Turtleneck OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Long suit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Retro Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Motocross Jersey OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Retro Jacket 2 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit CPRINTLN(DEBUG_PED_COMP, "[2] This luxe chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE // Everything else works with alt_chain ELSE IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[3] This luxe chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) OR (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) //OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) //OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (eSpecialItem >= SPECIAL_FMM_12_0 AND eSpecialItem <= SPECIAL_FMM_12_15) OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR iDLCSpecialCheck = 3 OR iDLCSpecialCheck = 4 OR iDLCSpecialCheck = 6 OR iDLCSpecialCheck = 7 //OR iDLCSpecialCheck = 10 //OR iDLCSpecialCheck = 11 OR iDLCSpecialCheck = 12 OR iDLCSpecialCheck = 13 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BLOCK_CHAINS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX CPRINTLN(DEBUG_PED_COMP, "This luxe chain can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF // Can't wear big chains with body armour IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BIG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eSpecial2Item != DUMMY_PED_COMP) RETURN FALSE ENDIF ENDIF // Can't wear pilot school gas pipe with non pilot school helmet. IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, ePropItem, COMP_TYPE_PROPS, 3), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) // Safe ELIF eTypeToCompare = COMP_TYPE_PROPS OR (eTypeToCompare = COMP_TYPE_BERD AND eBerdItem != BERD_FMM_0_0) RETURN FALSE ENDIF ELSE IF ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, ePropItem, COMP_TYPE_PROPS, 3), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP)) AND eTeethItem != TEETH_FMM_0_0 RETURN FALSE ELSE // Safe ENDIF ENDIF // Can't wear full bowties with shirts IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_FULL_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_9_0 AND eJbibItem <= JBIB_FMM_9_15) OR (eJbibItem >= JBIB_FMM_12_0 AND eJbibItem <= JBIB_FMM_12_15) OR (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15) OR (eJbibItem >= JBIB_FMM_14_0 AND eJbibItem <= JBIB_FMM_14_15) OR iDLCJbibCheck = 9 OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 13 OR iDLCJbibCheck = 14 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, 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_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hoodie OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Turtleneck OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Motocross Jersey OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Racing Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stuntman Shiny OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_14, 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)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Classic Racing Suit CPRINTLN(DEBUG_PED_COMP, "[1] This full bowtie can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) OR (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (eSpecialItem >= SPECIAL_FMM_9_0 AND eSpecialItem <= SPECIAL_FMM_9_15) OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (eSpecialItem >= SPECIAL_FMM_12_0 AND eSpecialItem <= SPECIAL_FMM_12_15) OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR iDLCSpecialCheck = 3 OR iDLCSpecialCheck = 4 OR iDLCSpecialCheck = 6 OR iDLCSpecialCheck = 7 OR iDLCSpecialCheck = 9 OR iDLCSpecialCheck = 10 OR iDLCSpecialCheck = 11 OR iDLCSpecialCheck = 12 OR iDLCSpecialCheck = 13 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALLOW_TIES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_CLOSED_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[1] This full bowtie can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF IF (eTeethItem >= TEETH_FMM_1_0 AND eTeethItem <= TEETH_FMM_1_2) OR iDLCTeethCheck = 1 IF eTorsoItem <> DUMMY_PED_COMP IF eTorsoItem <> TORSO_FMM_15_0 CPRINTLN(DEBUG_PED_COMP, "[1] This chain can't be worn with this torso. eTeethItem= ", eTeethItem, " eTorsoItem = ", eTorsoItem) RETURN FALSE ENDIF ENDIF IF eJbibItem <> DUMMY_PED_COMP IF eJbibItem <> JBIB_FMM_15_0 CPRINTLN(DEBUG_PED_COMP, "[2] This chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Can't wear chains with heist gear IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OUTFIT_CHECKS, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "[2] This chain can't be worn with this OUTFIT_CHECKS jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF (eTeethItem >= TEETH_FMM_2_0 AND eTeethItem <= TEETH_FMM_2_2) OR iDLCTeethCheck = 2 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_0_0 AND eJbibItem <= JBIB_FMM_0_15) OR (eJbibItem >= JBIB_FMM_1_0 AND eJbibItem <= JBIB_FMM_1_15) OR (eJbibItem >= JBIB_FMM_2_0 AND eJbibItem <= JBIB_FMM_2_15) OR (eJbibItem >= JBIB_FMM_5_0 AND eJbibItem <= JBIB_FMM_5_15) OR (eJbibItem >= JBIB_FMM_8_0 AND eJbibItem <= JBIB_FMM_8_15) OR iDLCJbibCheck = 0 OR iDLCJbibCheck = 1 OR iDLCJbibCheck = 2 OR iDLCJbibCheck = 5 OR iDLCJbibCheck = 8 // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "[3] This chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMM_0_0 AND eSpecialItem <= SPECIAL_FMM_0_15) OR (eSpecialItem >= SPECIAL_FMM_1_0 AND eSpecialItem <= SPECIAL_FMM_1_15) OR (eSpecialItem >= SPECIAL_FMM_2_0 AND eSpecialItem <= SPECIAL_FMM_2_15) OR (eSpecialItem >= SPECIAL_FMM_5_0 AND eSpecialItem <= SPECIAL_FMM_5_15) OR (eSpecialItem >= SPECIAL_FMM_8_0 AND eSpecialItem <= SPECIAL_FMM_8_15) OR eSpecialItem = SPECIAL_FMM_15_0 OR iDLCSpecialCheck = 0 OR iDLCSpecialCheck = 1 OR iDLCSpecialCheck = 2 OR iDLCSpecialCheck = 5 OR iDLCSpecialCheck = 8 OR iDLCSpecialCheck = 15 // teeth item can be worn with this eSpecialItem ELSE CPRINTLN(DEBUG_PED_COMP, "[4] This teeth item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ELIF eSpecial2Item <> DUMMY_PED_COMP IF NOT (eSpecial2Item >= SPECIAL2_FMM_1_0 AND eSpecial2Item <= SPECIAL2_FMM_9_0) // teeth item can be worn with this eSpecial2Item ELSE CPRINTLN(DEBUG_PED_COMP, "[5] This teeth item can't be worn with this special2. eTeethItem= ", eTeethItem, " eSpecial2Item = ", eSpecial2Item) RETURN FALSE ENDIF ENDIF ELIF (eTeethItem >= TEETH_FMM_4_0 AND eTeethItem <= TEETH_FMM_4_15) OR iDLCTeethCheck = 4 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_0_0 AND eJbibItem <= JBIB_FMM_0_15) OR (eJbibItem >= JBIB_FMM_1_0 AND eJbibItem <= JBIB_FMM_1_15) OR (eJbibItem >= JBIB_FMM_2_0 AND eJbibItem <= JBIB_FMM_2_15) OR (eJbibItem >= JBIB_FMM_5_0 AND eJbibItem <= JBIB_FMM_5_15) OR (eJbibItem >= JBIB_FMM_8_0 AND eJbibItem <= JBIB_FMM_8_15) OR (eJbibItem >= JBIB_FMM_9_0 AND eJbibItem <= JBIB_FMM_9_15) OR (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) OR (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15) OR eJbibItem = JBIB_FMM_15_0 OR iDLCJbibCheck = 0 OR iDLCJbibCheck = 1 OR iDLCJbibCheck = 2 OR iDLCJbibCheck = 5 OR iDLCJbibCheck = 8 OR iDLCJbibCheck = 9 OR iDLCJbibCheck = 11 OR iDLCJbibCheck = 13 OR iDLCJbibCheck = 15 // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "[5] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF /*ELIF (eTeethItem >= TEETH_FMM_5_0 AND eTeethItem <= TEETH_FMM_5_5) OR iDLCTeethCheck = 5 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_0_0 AND eJbibItem <= JBIB_FMM_0_15) OR (eJbibItem >= JBIB_FMM_1_0 AND eJbibItem <= JBIB_FMM_1_15) OR (eJbibItem >= JBIB_FMM_2_0 AND eJbibItem <= JBIB_FMM_2_15) OR (eJbibItem >= JBIB_FMM_5_0 AND eJbibItem <= JBIB_FMM_5_15) OR (eJbibItem >= JBIB_FMM_8_0 AND eJbibItem <= JBIB_FMM_8_15) OR iDLCJbibCheck = 0 OR iDLCJbibCheck = 1 OR iDLCJbibCheck = 2 OR iDLCJbibCheck = 5 OR iDLCJbibCheck = 8 // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "[6] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF*/ ELIF (eTeethItem >= TEETH_FMM_6_0 AND eTeethItem <= TEETH_FMM_6_5) OR iDLCTeethCheck = 6 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_6_0 AND eJbibItem <= JBIB_FMM_6_11) OR (eJbibItem >= JBIB_FMM_10_0 AND eJbibItem <= JBIB_FMM_10_15) OR iDLCJbibCheck = 6 OR iDLCJbibCheck = 10 // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "[7] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // high roller tie ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eSpecialItem <> DUMMY_PED_COMP // only works with high roller shirt IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // teeth item can be worn with this special ELSE RETURN FALSE ENDIF ENDIF // long ties ELIF (eTeethItem >= TEETH_FMM_10_0 AND eTeethItem <= TEETH_FMM_10_15) OR (eTeethItem >= TEETH_FMM_12_0 AND eTeethItem <= TEETH_FMM_12_15) OR iDLCTeethCheck = 10 OR iDLCTeethCheck = 12 OR (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15) // tucked in shirt OR IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) // jackets- then relies on the special item check OR iDLCJbibCheck = 13 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tucked shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Loose shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Long suit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest CPRINTLN(DEBUG_PED_COMP, "[8] This teeth item can't be worn with this tucked shirt. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELSE // teeth item can be worn with this jbib ENDIF ELSE CPRINTLN(DEBUG_PED_COMP, "[8] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR iDLCSpecialCheck = 10 OR iDLCSpecialCheck = 13 OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALLOW_TIES, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ELSE // teeth item can be worn with this eSpecialItem ENDIF ELSE // if current jbib is the tucked shirt, ignore the special eCurrentJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) IF (eCurrentJbib >= JBIB_FMM_13_0 AND eCurrentJbib <= JBIB_FMM_13_15) OR (eCurrentJbib >= JBIB_FMM_DLC AND GET_DLC_DRAW_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJbib, COMP_TYPE_JBIB, 3)) = 13) CPRINTLN(DEBUG_PED_COMP, "[9] Allowing tie with tucked shirt jbib: ignore special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF // allow the open collared version for shops / wardrobe menu building so we can display the option // and force equip the closed collar version IF bAllowOpenCollarForTie = TRUE IF (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR iDLCSpecialCheck = 11 CPRINTLN(DEBUG_PED_COMP, "[10] Allowing tie with open collared special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "[11] This teeth item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // bow ties ELIF (eTeethItem >= TEETH_FMM_11_0 AND eTeethItem <= TEETH_FMM_11_15) OR iDLCTeethCheck = 11 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15) // tucked in shirt OR (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) // waistcoat OR IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) // jackets- then relies on the special item check OR iDLCJbibCheck = 13 OR iDLCJbibCheck = 11 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tucked shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Loose shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest CPRINTLN(DEBUG_PED_COMP, "[8] This teeth item can't be worn with this tucked shirt. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELSE // teeth item can be worn with this jbib ENDIF ELSE CPRINTLN(DEBUG_PED_COMP, "[12] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR iDLCSpecialCheck = 4 OR iDLCSpecialCheck = 6 OR iDLCSpecialCheck = 10 OR iDLCSpecialCheck = 13 OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALLOW_TIES, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_CUFFED_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_0") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_1") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_2") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_3") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_4") // Valentines DLC IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ELSE // teeth item can be worn with this eSpecialItem ENDIF ELSE // if current jbib is the tucked shirt, ignore the special eCurrentJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) IF (eCurrentJbib >= JBIB_FMM_13_0 AND eCurrentJbib <= JBIB_FMM_13_15) OR (eCurrentJbib >= JBIB_FMM_DLC AND GET_DLC_DRAW_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJbib, COMP_TYPE_JBIB, 3)) = 13) CPRINTLN(DEBUG_PED_COMP, "[13] Allowing tie with tucked shirt jbib: ignore special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF // allow the open collared version for shops / wardrobe menu building so we can display the option // and force equip the closed collar version IF bAllowOpenCollarForTie = TRUE IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR iDLCSpecialCheck = 3 OR iDLCSpecialCheck = 7 OR iDLCSpecialCheck = 11 IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest CPRINTLN(DEBUG_PED_COMP, "[14] Allowing tie with open collared special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "[15] This teeth item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // vest ties ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_VEST_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) // waistcoat OR iDLCJbibCheck = 11 // Double Breasted Jacket // Valentine's 2 OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_0") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_1") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_2") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_3") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_4") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_5") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_6") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_7") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_8") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_9") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_10") OR iDLCJbibHash = HASH("DLC_MP_VAL2_M_JBIB_0_11") // Luxe2 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Business1 OR iDLCJbibHash = HASH("DLC_MP_BUSI_M_JBIB4_0") OR iDLCJbibHash = HASH("DLC_MP_BUSI_M_JBIB4_1") OR iDLCJbibHash = HASH("DLC_MP_BUSI_M_JBIB4_2") // Valentine's 1 OR iDLCJbibHash = HASH("DLC_MP_VAL_M_JBIB0_0") OR iDLCJbibHash = HASH("DLC_MP_VAL_M_JBIB0_1") OR iDLCJbibHash = HASH("DLC_MP_VAL_M_JBIB0_2") OR iDLCJbibHash = HASH("DLC_MP_VAL_M_JBIB0_3") //OR IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) // jackets- then relies on the special item check IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "[16] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELSE CPRINTLN(DEBUG_PED_COMP, "[16] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR iDLCSpecialCheck = 4 OR iDLCSpecialCheck = 6 OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // these ones need to have a valid jacket but we cover that with the jbib check. OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_CUFFED_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_0") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_1") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_2") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_3") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_4") // Valentines DLC IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ELSE // teeth item can be worn with this eSpecialItem ENDIF ELSE // allow the open collared version for shops / wardrobe menu building so we can display the option // and force equip the closed collar version IF bAllowOpenCollarForTie = TRUE IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) // waistcoat OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) // business shirt OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) // business shirt vest OR iDLCSpecialCheck = 3 OR iDLCSpecialCheck = 7 OR iDLCSpecialCheck = 11 IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest CPRINTLN(DEBUG_PED_COMP, "[14] Allowing tie with open collared special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "[15] This teeth item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // tux ties ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TUX_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "[17] This teeth item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TUX_TIE_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TUX_TIE_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // teeth item can be worn with this eSpecialItem ELSE CPRINTLN(DEBUG_PED_COMP, "[18] This teeth item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // loose bowtie ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eSpecialItem <> DUMMY_PED_COMP // only works with open collar shirts and vests IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_0")) // Valentines OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_1")) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_2")) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_3")) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_4")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_0")) // Business2 OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_1")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_2")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_3")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_4")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_5")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_6")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_7")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_8")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_9")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_10")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_11")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_12")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_13")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_14")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_15")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_0_0")) // Independence OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_0_1")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_0")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_1")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_2")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_3")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_4")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_5")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_6")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_7")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_8")) OR (iDLCSpecialHash = HASH("DLC_MP_BIKER_M_SPECIAL_9_0")) // Biker OR (iDLCSpecialHash = HASH("DLC_MP_BIKER_M_SPECIAL_9_1")) // Biker OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest // teeth item can be worn with this special ELSE RETURN FALSE ENDIF ELSE // allow the closed collared version for shops / wardrobe menu building so we can display the option // and force equip the open collar version IF bAllowOpenCollarForTie = TRUE IF (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) // business shirt OR (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR iDLCSpecialCheck = 4 OR iDLCSpecialCheck = 6 OR iDLCSpecialCheck = 10 IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest CPRINTLN(DEBUG_PED_COMP, "[19] Allowing loose bowtie with closed collared special so we can force. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "[19] This loose bowtie item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // loose tie ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP // only works with open jackets IF (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <= JBIB_FMM_4_15) OR (eJbibItem >= JBIB_FMM_10_0 AND eJbibItem <= JBIB_FMM_10_15) OR iDLCJbibCheck = 4 OR iDLCJbibCheck = 10 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJBIBHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) // teeth item can be worn with this special ELSE CPRINTLN(DEBUG_PED_COMP, "[20] This loose tie item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem, " DLCDraw = ", iDLCJbibCheck, " DLCHash = ", iDLCJbibHash) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP // only works with open collar shirts IF (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) //OR (eSpecialItem >= SPECIAL_FMM_15_0 AND eSpecialItem <= SPECIAL_FMM_15_0) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_0")) // Valentines OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_1")) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_2")) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_3")) OR (iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_4")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_0")) // Business2 OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_1")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_2")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_3")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_4")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_5")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_6")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_7")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_8")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_9")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_10")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_11")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_12")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_13")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_14")) OR (iDLCSpecialHash = HASH("DLC_MP_BUSI2_M_ACCS1_15")) OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_0_0")) // Independence OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_0_1")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_0")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_1")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_2")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_3")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_4")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_5")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_6")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_7")) // OR (iDLCSpecialHash = HASH("DLC_MP_IND_M_SPECIAL_2_8")) OR (iDLCSpecialHash = HASH("DLC_MP_BIKER_M_SPECIAL_9_0")) // Biker OR (iDLCSpecialHash = HASH("DLC_MP_BIKER_M_SPECIAL_9_1")) // Biker OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest // teeth item can be worn with this special ELSE RETURN FALSE ENDIF ELSE // allow the open collared version for shops / wardrobe menu building so we can display the option // and force equip the closed collar version IF bAllowOpenCollarForTie = TRUE IF (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR iDLCSpecialCheck = 10 IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Sweater Vest CPRINTLN(DEBUG_PED_COMP, "[21] Allowing loose tie with open collared special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN TRUE ENDIF ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "[21] This loose tie item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // slack tie ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SLACK_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP // only works with open suit jackets and loose shirts IF (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <= JBIB_FMM_4_15) OR (eJbibItem >= JBIB_FMM_12_0 AND eJbibItem <= JBIB_FMM_12_15) OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 4 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJBIBHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) // teeth item can be worn with this special ELSE CPRINTLN(DEBUG_PED_COMP, "[22] This slack tie item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem, ", iDLCJbibHash = ", iDLCJbibHash) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP // only works with untucked shirts IF (eSpecialItem >= SPECIAL_FMM_12_0 AND eSpecialItem <= SPECIAL_FMM_12_15) //OR (eSpecialItem >= SPECIAL_FMM_15_0 AND eSpecialItem <= SPECIAL_FMM_15_0) OR IS_DLC_SPECIAL_HASH_CHECK_SHIRT(iDLCSpecialHash) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) // teeth item can be worn with this special ELSE CPRINTLN(DEBUG_PED_COMP, "[23] This slack tie item can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // scarfs ELIF (eTeethItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) OR (iDLCJbibCheck = 11) CPRINTLN(DEBUG_PED_COMP, "[24] This scarf item can't be worn with this draw_11 jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "[24] This scarf item can't be worn with this heist jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "[24] This scarf item can't be worn with this pilot school jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELSE // CPRINTLN(DEBUG_PED_COMP, "[24] This scarf item can be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) ENDIF ENDIF IF eSpecial2Item <> DUMMY_PED_COMP IF NOT (eSpecial2Item >= SPECIAL2_FMM_1_0 AND eSpecial2Item <= SPECIAL2_FMM_9_0) // teeth item can be worn with this eSpecial2Item ELSE CPRINTLN(DEBUG_PED_COMP, "Scarf can't be worn with this special2. eTeethItem= ", eTeethItem, " eSpecial2Item = ", eSpecial2Item) RETURN FALSE ENDIF ENDIF IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with scarf. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF // MP female ELIF ePedModel = MP_F_FREEMODE_01 INT iDLCTeethCheck = -1 INT iDLCTeethHash = -1 IF g_eDLCCached_Teeth = eTeethItem iDLCTeethHash = g_iDLCCached_TeethHash iDLCTeethCheck = g_iDLCCached_TeethCheck ELIF eTeethItem >= TEETH_FMF_DLC iDLCTeethHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eTeethItem, COMP_TYPE_TEETH, 4) iDLCTeethCheck = GET_DLC_DRAW_TAG(iDLCTeethHash) g_eDLCCached_Teeth = eTeethItem g_iDLCCached_TeethHash = iDLCTeethHash g_iDLCCached_TeethCheck = iDLCTeethCheck ENDIF INT iDLCJbibCheck = -1 INT iDLCJbibHash = -1 IF g_eDLCCached_Jbib = eJbibItem iDLCJbibHash = g_iDLCCached_JbibHash iDLCJbibCheck = g_iDLCCached_JbibCheck ELIF eJbibItem >= JBIB_FMF_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 4) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) g_eDLCCached_Jbib = eJbibItem g_iDLCCached_JbibHash = iDLCJbibHash g_iDLCCached_JbibCheck = iDLCJbibCheck ENDIF INT iDLCSpecialCheck = -1 INT iDLCSpecialHash = -1 IF g_eDLCCached_Special = eSpecialItem iDLCSpecialHash = g_iDLCCached_SpecialHash iDLCSpecialCheck = g_iDLCCached_SpecialCheck ELIF eSpecialItem >= SPECIAL_FMF_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 4) iDLCSpecialCheck = GET_DLC_DRAW_TAG(iDLCSpecialHash) CPRINTLN(DEBUG_PED_COMP, "DO_TEETH_CHECK_MP - iDLCSpecialCheck = ", iDLCSpecialCheck) g_eDLCCached_Special = eSpecialItem g_iDLCCached_SpecialHash = iDLCSpecialHash g_iDLCCached_SpecialCheck = iDLCSpecialCheck ENDIF INT iDLCBerdCheck = -1 INT iDLCBerdHash = -1 IF g_eDLCCached_Berd = eBerdItem iDLCBerdHash = g_iDLCCached_BerdHash iDLCBerdCheck = g_iDLCCached_BerdCheck ELIF eBerdItem >= BERD_FMF_DLC iDLCBerdHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eBerdItem, COMP_TYPE_BERD, 4) iDLCBerdCheck = GET_DLC_DRAW_TAG(iDLCBerdHash) CPRINTLN(DEBUG_PED_COMP, "DO_TEETH_CHECK_MP - iDLCBerdCheck = ", iDLCBerdCheck) g_eDLCCached_Berd = eBerdItem g_iDLCCached_BerdHash = iDLCBerdHash g_iDLCCached_BerdCheck = iDLCBerdCheck ENDIF INT iDLCPropHash = -1 IF ePropItem >= PROPS_FMF_DLC iDLCPropHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, ePropItem, COMP_TYPE_PROPS, 4) ENDIF // Only defaults work with morph suit. IF eJbibItem <> DUMMY_PED_COMP IF 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_SCUBA_GEAR, 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eTeethItem != TEETH_FMF_0_0 RETURN FALSE ENDIF ENDIF ENDIF // Block all necklaces with the large headscarfs IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_SMUG_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Neck scarf IF eTeethItem = TEETH_FMF_0_0 // Sweatbands OR (eTeethItem >= TEETH_FMF_3_0 AND eTeethItem <= TEETH_FMF_3_5) OR iDLCTeethCheck = 3 OR iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LG CUFFS (TEETH) // Bangles OR (eTeethItem >= TEETH_FMF_4_0 AND eTeethItem <= TEETH_FMF_4_5) OR iDLCTeethCheck = 4 // Leather straps OR (eTeethItem >= TEETH_FMF_5_0 AND eTeethItem <= TEETH_FMF_5_5) OR iDLCTeethCheck = 5 // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with teeth item. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF // Block all earrings with headscarfs IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eTeethItem >= TEETH_FMF_1_0 AND eTeethItem <= TEETH_FMF_2_5 OR iDLCTeethCheck = 1 OR iDLCTeethCheck = 2 OR (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with teeth earrings. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF // Glow necklaces blocked when wearing a jacket. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_HOOP_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) CPRINTLN(DEBUG_PED_COMP, "[1] Hooped necklace can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Can't wear teeth with pilot suit. IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eTeethItem != TEETH_FMF_0_0 AND NOT (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "Can't wear pilot suit with teeth item. eTeethItem= ", eTeethItem, " eJbibItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF // Large Epsilon chain onlky works with Epsilon top. IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EPSILON_CHAIN_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear big epsilon chain with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EPSILON_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) // covers all 3 chains IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear this epsilon chain with epsilon top. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EPSILON_CHAIN_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eSpecialItem = SPECIAL_FMF_6_0 RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear big epsilon chain with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF #IF FEATURE_TUNER // Frontier scarf only works with Frontier top. IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear frontier scarf with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear frontier scarf with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF #ENDIF // Tassel scarf doesnt work with caps. IF iDLCTeethHash = HASH("DLC_MP_APA_F_TEETH_0_0") OR iDLCTeethHash = HASH("DLC_MP_APA_F_TEETH_0_1") OR iDLCTeethHash = HASH("DLC_MP_APA_F_TEETH_0_2") IF (ePropItem != DUMMY_PED_COMP) SWITCH iDLCPropHash CASE HASH("DLC_MP_XMAS2_F_PHEAD_2_0") CASE HASH("DLC_MP_XMAS2_F_PHEAD_2_1") CASE HASH("DLC_MP_XMAS2_F_PHEAD_2_2") CASE HASH("DLC_MP_XMAS2_F_PHEAD_2_3") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_0") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_1") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_2") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_3") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_4") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_5") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_6") CASE HASH("DLC_MP_XMAS2_F_PHEAD_5_7") CASE HASH("DLC_MP_EXEC_F_PHEAD_1_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_0") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_1") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_2") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_3") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_4") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_5") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_6") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_7") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_8") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_9") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_10") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_11") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_12") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_13") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_14") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_15") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_16") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_17") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_18") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_19") CASE HASH("DLC_MP_STUNT_F_PHEAD_10_20") CASE HASH("DLC_MP_GR_F_PHEAD_7_0") CASE HASH("DLC_MP_GR_F_PHEAD_7_1") CASE HASH("DLC_MP_GR_F_PHEAD_7_2") CASE HASH("DLC_MP_GR_F_PHEAD_7_3") CASE HASH("DLC_MP_GR_F_PHEAD_7_4") CASE HASH("DLC_MP_GR_F_PHEAD_7_5") CASE HASH("DLC_MP_GR_F_PHEAD_7_6") CASE HASH("DLC_MP_GR_F_PHEAD_7_7") CASE HASH("DLC_MP_GR_F_PHEAD_7_8") CASE HASH("DLC_MP_GR_F_PHEAD_7_9") CASE HASH("DLC_MP_GR_F_PHEAD_7_10") CPRINTLN(DEBUG_PED_COMP, "This dlc hat can't be worn with the desert scarf. eTeethItem= ", eTeethItem, " ePropItem = ", ePropItem) RETURN FALSE BREAK ENDSWITCH ENDIF IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with desert scarf. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't tassel scarf with utility vest. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF // Can't wear jacket scarfs with non jacket items. IF eJbibItem <> DUMMY_PED_COMP IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_JACKET_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_SCARFS, 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_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, 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_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, 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)) // Firesuit CPRINTLN(DEBUG_PED_COMP, "This jacket scarf can't be worn with this luxe jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELIF SHOULD_JBIB_USE_JACKET_SCARF(ePedModel, eJbibItem) // wearing a jacket so we are safe ELSE CPRINTLN(DEBUG_PED_COMP, "This jacket scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELSE IF SHOULD_JBIB_USE_JACKET_SCARF(ePedModel, eJbibItem) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_SCARFS, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "This scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ELSE // not wearing a jacket so we are safe ENDIF ENDIF IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with scarf. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF ENDIF IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LUXE_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) // wearing a luxe jacket so we are safe ELSE CPRINTLN(DEBUG_PED_COMP, "This luxe scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELSE IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BLOCK_SCARFS, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't scarf with BLOCK_SCARFS accs. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ELIF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BLOCK_CHAINS, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't chain with BLOCK_CHAINS accs. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF // Can't wear pilot school gas pipe with non pilot school helmet. IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, ePropItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) // Safe ELIF eTypeToCompare = COMP_TYPE_PROPS OR (eTypeToCompare = COMP_TYPE_BERD AND eBerdItem != BERD_FMF_0_0) RETURN FALSE ENDIF ELSE IF ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, ePropItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP)) AND eTeethItem != TEETH_FMF_0_0 RETURN FALSE ELSE // Safe ENDIF ENDIF // Dungarees + scarfs/chains IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BIG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eTeethItem >= TEETH_FMF_8_0 AND eTeethItem <= TEETH_FMF_8_5) OR iDLCTeethCheck = 8 IF eLegsItem <> DUMMY_PED_COMP INT iDLCLegsHash = -1 IF eLegsItem >= LEGS_FMF_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 4) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This scarf can't be worn with these dungarees") RETURN FALSE ENDIF ENDIF ENDIF // Can't wear ties/bowties with non shirt items. IF iDLCTeethHash != -1 AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eTypeToCompare = COMP_TYPE_JBIB 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_10, 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_25, 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 (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15) // Suit jacket/blazer OR iDLCJbibCheck = 7 // Safe ELIF 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_11, 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)) // bowties only IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELSE RETURN FALSE ENDIF ELSE RETURN FALSE ENDIF ELIF eTypeToCompare = COMP_TYPE_SPECIAL IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_CLOSED_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Ties need to check for alt version. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Short version IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELSE RETURN FALSE ENDIF ELSE // Large version IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ELSE // Safe ENDIF ENDIF ELSE // Safe ENDIF ELSE RETURN FALSE ENDIF ENDIF ENDIF // Can't wear prop earrings and teeth earrings or blockers. IF ePropItem <> DUMMY_PED_COMP IF (iDLCPropHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_PROP))) OR (iDLCPropHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_BLOCK_EARRINGS, ENUM_TO_INT(SHOP_PED_PROP))) IF eTeethItem >= TEETH_FMF_1_0 AND eTeethItem <= TEETH_FMF_2_5 OR iDLCTeethCheck = 1 OR iDLCTeethCheck = 2 OR (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This teeth item can't be worn with prop item. eTeethItem= ", eTeethItem, " iDLCPropHash = ", iDLCPropHash) RETURN FALSE ENDIF ENDIF ENDIF // Hoop Necklaces follow same rules as chains but have some exceptions. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_HOOP_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF // Chains IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF eJbibItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_CHAINS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block CPRINTLN(DEBUG_PED_COMP, "[1] Chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE // Jackets don't care what chain we use. ELIF IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) // Skip // Tops that have chain sitting on top use alt_chain ELIF (eJbibItem >= JBIB_FMF_2_0 AND eJbibItem <= JBIB_FMF_2_15) OR (eJbibItem >= JBIB_FMF_11_0 AND eJbibItem <= JBIB_FMF_11_15) OR iDLCJbibCheck = 2 OR iDLCJbibCheck = 11 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_EXEC_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) // - Independence, jbib 1, blue-american OR iDLCJbibHash = HASH("DLC_MP_IND_F_JBIB_1_0") OR iDLCJbibHash = HASH("DLC_MP_IND_F_JBIB_1_1") // check if alt chain works with tank tops OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[1] This alt chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF // These item's don't work with any chain ELIF (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem <= JBIB_FMF_3_15) OR (eJbibItem >= JBIB_FMF_9_0 AND eJbibItem <= JBIB_FMF_9_15) OR (eJbibItem >= JBIB_FMF_14_0 AND eJbibItem <= JBIB_FMF_14_15) OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 9 OR iDLCJbibCheck = 14 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, 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)) OR 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_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, 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_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_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, 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)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VNECK_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // V Neck sweater CPRINTLN(DEBUG_PED_COMP, "[2] This chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE // Everything else works with standard chain ELSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[3] This alt chain can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP // Tops that have chain sitting on top use alt_chain IF (eSpecialItem >= SPECIAL_FMF_11_0 AND eSpecialItem <= SPECIAL_FMF_11_15) OR iDLCSpecialCheck = 11 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OFF_SHOULDER_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LUXE_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iDLCSpecialHash = HASH("DLC_MP_HEIST_F_SPECIAL_12_0") OR iDLCSpecialHash = HASH("DLC_MP_HEIST_F_SPECIAL_12_1") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_0") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_1") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_2") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_3") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_2") OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_EXEC_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_EXEC_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_EXEC_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_EXEC_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) // check if alt chain works with tank tops OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BLOCK_CHAINS, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[1] This luxe chain can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF // These item's don't work with any chain ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[2] This luxe chain can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE // Everything else works with standard chain ELSE // Only process when we are wearing a jacket. IF GET_JBIB_FROM_SPECIAL(ePedModel, eSpecialItem, 0) != DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[3] This luxe chain can't be worn with this special. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF ENDIF ENDIF IF eSpecial2Item <> DUMMY_PED_COMP IF NOT (eSpecial2Item >= SPECIAL2_FMF_1_0 AND eSpecial2Item <= SPECIAL2_FMF_7_0) // teeth item can be worn with this eSpecial2Item ELSE CPRINTLN(DEBUG_PED_COMP, "[4] This teeth item can't be worn with this special2. eTeethItem= ", eTeethItem, " eSpecial2Item = ", eSpecial2Item) RETURN FALSE ENDIF ENDIF ENDIF //Bead Necklace IF eJbibItem <> DUMMY_PED_COMP IF iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BEAD_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Poloneck CPRINTLN(DEBUG_PED_COMP, "Bead necklace can be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Bead necklace can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ENDIF // Sweatbands IF (eTeethItem >= TEETH_FMF_3_0 AND eTeethItem <= TEETH_FMF_3_5) OR iDLCTeethCheck = 3 OR iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LG CUFFS (TEETH) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem <= JBIB_FMF_3_15) OR (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15) OR (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15) OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This Sweatbands item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 4), DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This long sleeve accs can't be worn with this jbib. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF // NG CUFFS (PROPS) ELIF ePropItem <> DUMMY_PED_COMP IF (iDLCPropHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_PROP))) CPRINTLN(DEBUG_PED_COMP, "This Sweatbands item can't be worn with luxe cuff. eTeethItem= ", eTeethItem, " iDLCPropHash = ", iDLCPropHash) RETURN FALSE ENDIF ENDIF // Bangles ELIF (eTeethItem >= TEETH_FMF_4_0 AND eTeethItem <= TEETH_FMF_4_5) OR iDLCTeethCheck = 4 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem <= JBIB_FMF_3_15) OR (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15) OR (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15) OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This Bangles item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 4), DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This long sleeve accs can't be worn with this jbib. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF // NG CUFFS (PROPS) ELIF ePropItem <> DUMMY_PED_COMP IF (iDLCPropHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_PROP))) scrShopPedProp propItem GET_SHOP_PED_PROP(iDLCPropHash, propItem) IF propItem.m_eAnchorPoint = ENUM_TO_INT(ANCHOR_RIGHT_WRIST) CPRINTLN(DEBUG_PED_COMP, "This Bangles item can't be worn with luxe cuff. eTeethItem= ", eTeethItem, " iDLCPropHash = ", iDLCPropHash) RETURN FALSE ENDIF ENDIF ENDIF // Leather straps ELIF (eTeethItem >= TEETH_FMF_5_0 AND eTeethItem <= TEETH_FMF_5_5) OR iDLCTeethCheck = 5 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem <= JBIB_FMF_3_15) OR (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15) OR (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15) OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This Leather straps item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF (eSpecialItem >= SPECIAL_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 4), DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "This long sleeve accs can't be worn with this jbib. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF // NG CUFFS (PROPS) ELIF ePropItem <> DUMMY_PED_COMP IF (iDLCPropHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_PROP))) CPRINTLN(DEBUG_PED_COMP, "This Leather straps item can't be worn with luxe cuff. eTeethItem= ", eTeethItem, " iDLCPropHash = ", iDLCPropHash) RETURN FALSE ENDIF ENDIF // Necklaces ELIF (eTeethItem >= TEETH_FMF_6_0 AND eTeethItem <= TEETH_FMF_6_5) OR iDLCTeethCheck = 6 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem <= JBIB_FMF_3_15) OR (eJbibItem >= JBIB_FMF_9_0 AND eJbibItem <= JBIB_FMF_9_15) OR (eJbibItem >= JBIB_FMF_14_0 AND eJbibItem <= JBIB_FMF_14_15) OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 9 OR iDLCJbibCheck = 14 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, 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_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_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tucked Rolled Tee OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Rolled Tee OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Work Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Closed Check Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Chore Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hippy Hoody OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Frill Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Football Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_EXEC_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, 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_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Classic Racing Suit CPRINTLN(DEBUG_PED_COMP, "This necklace item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Necklaces ELIF (eTeethItem >= TEETH_FMF_7_0 AND eTeethItem <= TEETH_FMF_7_5) OR iDLCTeethCheck = 7 OR (eTeethItem >= TEETH_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LONG_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_2_0 AND eJbibItem <= JBIB_FMF_2_15) OR (eJbibItem >= JBIB_FMF_3_0 AND eJbibItem <= JBIB_FMF_3_15) OR (eJbibItem >= JBIB_FMF_9_0 AND eJbibItem <= JBIB_FMF_9_15) OR (eJbibItem >= JBIB_FMF_14_0 AND eJbibItem <= JBIB_FMF_14_15) OR iDLCJbibCheck = 2 OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 9 OR iDLCJbibCheck = 14 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_3, 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_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_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Work Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Closed Check Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Chore Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hippy Hoody OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Frill Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Football Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_EXEC_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_19, 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)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BLOCK_CHAINS, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "[1] This necklace item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE // long beads with camisole/long sleeve jackets/vest shirts ELIF (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15) OR (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15) OR (eJbibItem >= JBIB_FMF_12_0 AND eJbibItem <= JBIB_FMF_12_15) OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR iDLCJbibCheck = 12 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eTeethItem >= TEETH_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LONG_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "[2] This long necklace item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LONG_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "This long necklace item can't be worn with vest shirts. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "This long necklace item can't be worn with motoX jersey accs. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "This long necklace item can't be worn with biker vest t-shirts. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF // NG CUFFS (PROPS) ELIF ePropItem <> DUMMY_PED_COMP IF (iDLCPropHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_PROP))) CPRINTLN(DEBUG_PED_COMP, "This long necklace item can't be worn with luxe cuff. eTeethItem= ", eTeethItem, " ePropItem = ", ePropItem) RETURN FALSE ENDIF ENDIF // Bow Scarf ELIF (eTeethItem >= TEETH_FMF_8_0 AND eTeethItem <= TEETH_FMF_8_5) OR iDLCTeethCheck = 8 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_0_0 AND eJbibItem <= JBIB_FMF_0_15) OR (eJbibItem >= JBIB_FMF_2_0 AND eJbibItem <= JBIB_FMF_2_15) OR (eJbibItem >= JBIB_FMF_4_0 AND eJbibItem <= JBIB_FMF_4_15) OR (eJbibItem >= JBIB_FMF_5_0 AND eJbibItem <= JBIB_FMF_5_15) OR (eJbibItem >= JBIB_FMF_9_0 AND eJbibItem <= JBIB_FMF_9_15) OR (eJbibItem >= JBIB_FMF_11_0 AND eJbibItem <= JBIB_FMF_11_15) OR (eJbibItem >= JBIB_FMF_12_0 AND eJbibItem <= JBIB_FMF_12_15) OR (eJbibItem >= JBIB_FMF_13_0 AND eJbibItem <= JBIB_FMF_13_15) OR (eJbibItem >= JBIB_FMF_15_0 AND eJbibItem <= JBIB_FMF_15_15) OR iDLCJbibCheck = 0 OR iDLCJbibCheck = 2 OR iDLCJbibCheck = 4 OR iDLCJbibCheck = 5 OR iDLCJbibCheck = 9 OR iDLCJbibCheck = 11 OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 13 OR iDLCJbibCheck = 15 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "This Bow Scarf item can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Scarves ELIF (eTeethItem >= TEETH_FMF_9_0 AND eTeethItem <= TEETH_FMF_9_5) OR iDLCTeethCheck = 9 IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_FMF_0_0 AND eJbibItem <= JBIB_FMF_0_15) OR (eJbibItem >= JBIB_FMF_4_0 AND eJbibItem <= JBIB_FMF_4_15) OR (eJbibItem >= JBIB_FMF_5_0 AND eJbibItem <= JBIB_FMF_5_15) OR (eJbibItem >= JBIB_FMF_11_0 AND eJbibItem <= JBIB_FMF_11_15) OR (eJbibItem >= JBIB_FMF_12_0 AND eJbibItem <= JBIB_FMF_12_15) OR (eJbibItem >= JBIB_FMF_13_0 AND eJbibItem <= JBIB_FMF_13_15) OR (eJbibItem >= JBIB_FMF_15_0 AND eJbibItem <= JBIB_FMF_15_15) OR iDLCJbibCheck = 0 OR iDLCJbibCheck = 4 OR iDLCJbibCheck = 5 OR iDLCJbibCheck = 11 OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 13 OR iDLCJbibCheck = 15 OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJbibItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))) // teeth item can be worn with this jbib ELSE CPRINTLN(DEBUG_PED_COMP, "Scarf can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELIF eSpecialItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Scarf can't be worn with this sweater vest. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "This scarf item can't be worn with motoX jersey accs. eTeethItem= ", eTeethItem, " eSpecialItem = ", eSpecialItem) RETURN FALSE ENDIF ENDIF IF eSpecial2Item <> DUMMY_PED_COMP IF NOT (eSpecial2Item >= SPECIAL2_FMF_1_0 AND eSpecial2Item <= SPECIAL2_FMF_7_0) // teeth item can be worn with this eSpecial2Item ELSE CPRINTLN(DEBUG_PED_COMP, "Scarf can't be worn with this special2. eTeethItem= ", eTeethItem, " eSpecial2Item = ", eSpecial2Item) RETURN FALSE ENDIF ENDIF IF eBerdItem <> DUMMY_PED_COMP IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear headscarf with bead necklace. eTeethItem= ", eTeethItem, " eBerdItem = ", eBerdItem) RETURN FALSE ENDIF ENDIF // high roller tie ELIF (eTeethItem >= TEETH_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eSpecialItem <> DUMMY_PED_COMP // only works with high roller shirt IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HIGH_ROLLER_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // teeth item can be worn with this special ELSE RETURN FALSE ENDIF ENDIF // braces ELIF (eTeethItem >= TEETH_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BRACES, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF eJbibItem <> DUMMY_PED_COMP IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "[24] This braces item can be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "[24] This braces can't be worn with this jbib. eTeethItem= ", eTeethItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF IF eLegsItem <> DUMMY_PED_COMP INT iDLCLegsHash = -1 IF eLegsItem >= LEGS_FMF_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 4) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "[24] This braces item can be worn with this legs. eTeethItem= ", eTeethItem, " eLegsItem = ", eLegsItem) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF ENDIF RETURN TRUE// This teeth item can be worn with the item checked against ENDFUNC /// PURPOSE: /// Returns FALSE if combining these items would cause a watch to clip through a sleeve /// Doesn't include outfit only items /// (This is singleplayer only) FUNC BOOL DO_WATCH_CHECK_SP(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eTorsoItem, PED_COMP_NAME_ENUM eWatchItem, PED_COMP_NAME_ENUM eJbibItem = DUMMY_PED_COMP) SWITCH eModel CASE PLAYER_ZERO // MICHAEL IF eWatchItem = SPECIAL_P0_WATCH_AND_BRACELET OR eWatchItem = SPECIAL_P0_WATCH_LEATHER_STRAP IF eTorsoItem <> DUMMY_PED_COMP IF (eTorsoItem >= TORSO_P0_GREY_SUIT AND eTorsoItem <= TORSO_P0_GREY_SUIT_15) // default suit variations OR (eTorsoItem >= TORSO_P0_SHIRT_AND_GILET_0 AND eTorsoItem <= TORSO_P0_SHIRT_AND_GILET_5) // hunting vests OR (eTorsoItem >= TORSO_P0_HOODIE_0 AND eTorsoItem <= TORSO_P0_HOODIE_15) // hoodies OR (eTorsoItem >= TORSO_P0_LEATHER_JACKET_0 AND eTorsoItem <= TORSO_P0_LEATHER_JACKET_5) // leather jackets OR (eTorsoItem >= TORSO_P0_SUIT_JACKET AND eTorsoItem <= TORSO_P0_SUIT_JACKET_15) // suit jackets OR (eTorsoItem >= TORSO_P0_VNECK AND eTorsoItem <= TORSO_P0_VNECK_9) // sweater OR (eTorsoItem >= TORSO_P0_DRESS_SHIRT AND eTorsoItem <= TORSO_P0_DRESS_SHIRT_7) // dress shirts OR (eTorsoItem >= TORSO_P0_HEAVY_JACKET AND eTorsoItem <= TORSO_P0_HEAVY_JACKET_1) // heavy jackets OR (eTorsoItem >= TORSO_P0_CHECK_SHIRT_0 AND eTorsoItem <= TORSO_P0_CHECK_SHIRT_3) // check winter shirts CPRINTLN(DEBUG_PED_COMP, "Torso with long sleeves can't be used with a watch. Torso= ", eTorsoItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ENDIF ENDIF BREAK CASE PLAYER_ONE // FRANKLIN IF eWatchItem = SPECIAL_P1_WATCH_AND_BRACELET IF eTorsoItem <> DUMMY_PED_COMP IF (eTorsoItem >= TORSO_P1_SHIRT_0 AND eTorsoItem <= TORSO_P1_SHIRT_15) // long sleeve shirts OR (eTorsoItem >= TORSO_P1_BLUE_SHIRT AND eTorsoItem <= TORSO_P1_GREEN_CHECK_SHIRT) // shirts with long sleeved tee OR (eTorsoItem >= TORSO_P1_WHITE_LNGSLEEVE AND eTorsoItem <= TORSO_P1_UPTOWN_LNGSLEEVE) // long sleeve tops OR (eTorsoItem >= TORSO_P1_VARSITY AND eTorsoItem <= TORSO_P1_VARSITY_15) // varsity jackets OR (eTorsoItem >= TORSO_P1_HOODIE AND eTorsoItem <= TORSO_P1_HOODIE_15) // hoodies OR (eTorsoItem >= TORSO_P1_ARMY_JACKET AND eTorsoItem <= TORSO_P1_ARMY_JACKET_7) // army jackets OR eTorsoItem = TORSO_P1_STEALTH // black shirt OR (eTorsoItem >= TORSO_P1_TRACKSUIT_0 AND eTorsoItem <= TORSO_P1_TRACKSUIT_15) // tracksuit tops OR (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) // suit jackets OR (eTorsoItem >= TORSO_P1_JACKET_0 AND eTorsoItem <= TORSO_P1_JACKET_13) // casual jackets OR (eTorsoItem >= TORSO_P1_WOOL_PEACOAT AND eTorsoItem <= TORSO_P1_WOOL_PEACOAT_3) // coats OR (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) // suit jackets OR (eTorsoItem >= TORSO_P1_WAISTCOAT AND eTorsoItem <= TORSO_P1_WAISTCOAT_15) // waistcoats OR (eTorsoItem >= TORSO_P1_SHOOTING_VEST_0 AND eTorsoItem <= TORSO_P1_SHOOTING_VEST_5) // shooting vests OR (eTorsoItem >= TORSO_P1_GRAY_HOODIE AND eTorsoItem <= TORSO_P1_AMMUN_HOODIE_15) // hoodies OR (eTorsoItem >= TORSO_P1_CARDIGAN_0 AND eTorsoItem <= TORSO_P1_CARDIGAN_12) // cardigans CPRINTLN(DEBUG_PED_COMP, "Torso with long sleeves can't be used with a watch. Torso= ", eTorsoItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ENDIF IF eJbibItem <> DUMMY_PED_COMP IF eJbibItem <> JBIB_P1_NONE CPRINTLN(DEBUG_PED_COMP, "Franklin's jbibs can only be worn with long sleeve torsos, so no watch. eJbibItem= ", eJbibItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ENDIF ENDIF BREAK CASE PLAYER_TWO // TREVOR IF eWatchItem = SPECIAL_P2_WATCH OR eWatchItem = SPECIAL_P2_WATCH_1 IF eTorsoItem <> DUMMY_PED_COMP IF (eTorsoItem >= TORSO_P2_LUDENDORFF AND eTorsoItem <= TORSO_P2_DOWN_JACKET_15) // down jackets OR (eTorsoItem >= TORSO_P2_STEALTH AND eTorsoItem <= TORSO_P2_HOODIE_15) // hoodies OR (eTorsoItem >= TORSO_P2_DENIM_JACKET AND eTorsoItem <= TORSO_P2_JACKET_5) // denim jackets OR (eTorsoItem = TORSO_P2_BLOUSON AND eTorsoItem <= TORSO_P2_BLOUSON_7)// blouson OR (eTorsoItem >= TORSO_P2_LEATHER_JACKET AND eTorsoItem <= TORSO_P2_LEATHER_JACKET_10) // leather jackets OR (eTorsoItem >= TORSO_P2_GILET AND eTorsoItem <= TORSO_P2_GILET_5) // shooting vests OR (eTorsoItem >= TORSO_P2_LONG_SLEEVE AND eTorsoItem <= TORSO_P2_LONG_SLEEVE_11) // shirts OR (eTorsoItem >= TORSO_P2_CHEAPSUIT_0 AND eTorsoItem <= TORSO_P2_CHEAPSUIT_9) // cheap suit jackets OR (eTorsoItem >= TORSO_P2_STYLESUIT_JACKET AND eTorsoItem <= TORSO_P2_STYLESUIT_JACKET_6) // suit jackets OR (eTorsoItem >= TORSO_P2_WOOL_SWEATER AND eTorsoItem <= TORSO_P2_WOOL_SWEATER_15)// sweater OR (eTorsoItem >= TORSO_P2_STYLESUIT_TEE_0 AND eTorsoItem <= TORSO_P2_STYLESUIT_TEE_9) // suit jackets OR (eTorsoItem >= TORSO_P2_STYLESUIT_VNECK AND eTorsoItem <= TORSO_P2_STYLESUIT_VNECK_7) // suit jacket / vneck CPRINTLN(DEBUG_PED_COMP, "Torso with long sleeves can't be used with a watch. Torso= ", eTorsoItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ENDIF ENDIF BREAK ENDSWITCH RETURN TRUE // combination passes the watch check ENDFUNC /// PURPOSE: /// Returns FALSE if combining these items would cause a watch to clip through a sleeve /// Doesn't include outfit only items /// (This is MP only) FUNC BOOL DO_WATCH_CHECK_MP(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eItemType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM eWatchItem) // MP Male IF eModel = MP_M_FREEMODE_01 INT iDLCPropHash = -1 IF (eWatchItem >= PROPS_FMM_DLC) iDLCPropHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eWatchItem, COMP_TYPE_PROPS, 3) ENDIF IF (eWatchItem >= PROPS_FMM_WATCH_0_0 AND eWatchItem <= PROPS_FMM_WATCH_1_2) OR (eWatchItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_WATCH, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) INT iDLCJbibHash = -1 INT iDLCJbibCheck = -1 IF (eItem >= JBIB_FMM_DLC) iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF // Allow army style shirt from heist pack. IF 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_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow ELIF (eItem >= JBIB_FMM_3_0 AND eItem <= JBIB_FMM_3_15) OR (eItem >= JBIB_FMM_4_0 AND eItem <= JBIB_FMM_4_15) OR (eItem >= JBIB_FMM_6_0 AND eItem <= JBIB_FMM_6_11) OR (eItem >= JBIB_FMM_7_0 AND eItem <= JBIB_FMM_7_15) OR (eItem >= JBIB_FMM_10_0 AND eItem <= JBIB_FMM_10_15) OR (eItem >= JBIB_FMM_12_0 AND eItem <= JBIB_FMM_12_15) OR (eItem >= JBIB_FMM_14_0 AND eItem <= JBIB_FMM_14_15) OR iDLCJbibCheck = 3 OR iDLCJbibCheck = 4 OR iDLCJbibCheck = 6 OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR iDLCJbibCheck = 12 OR iDLCJbibCheck = 14 OR (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) // can only be worn with long sleeve OR (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB with long sleeves can't be used with a watch. eItem= ", eItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_SPECIAL) IF (eItem >= SPECIAL_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_SPECIAL, 3), DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "SPECIAL with long sleeves can't be used with a watch. eItem= ", eItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF (eItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 3), DLC_RESTRICTION_TAG_TUX_PANTS, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS with tux tag can't be used with a watch. eItem= ", eItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ENDIF ENDIF // Watch is a prop, check for pilot helmet IF (eWatchItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) IF NOT (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB can't be used with pilot helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF NOT (eItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 3), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS can't be used with pilot helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_FEET) IF NOT (eItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "FEET can't be used with pilot helmet") RETURN FALSE ENDIF ENDIF ELIF (eWatchItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) IF NOT (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB can't be used with deadline helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF NOT (eItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 3), DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS can't be used with deadline helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_FEET) IF NOT (eItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3), DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "FEET can't be used with deadline helmet") RETURN FALSE ENDIF ENDIF ELIF (eWatchItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) IF NOT (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF NOT (eItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 3), DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_FEET) IF NOT (eItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3), DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "FEET can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_SPECIAL) IF NOT (eItem = SPECIAL_FMM_15_0) CPRINTLN(DEBUG_PED_COMP, "SPECIAL can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ENDIF ENDIF // MP Female ELIF eModel = MP_F_FREEMODE_01 INT iDLCPropHash = -1 IF (eWatchItem >= PROPS_FMM_DLC) iDLCPropHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eWatchItem, COMP_TYPE_PROPS, 4) ENDIF IF (eWatchItem >= PROPS_FMF_WATCH_0_0 AND eWatchItem <= PROPS_FMF_WATCH_1_2) OR (eWatchItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eWatchItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_WATCH, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) INT iDLCJbibHash = -1 IF (eItem >= JBIB_FMM_DLC) iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) ENDIF IF (eItem >= JBIB_FMF_3_0 AND eItem <= JBIB_FMF_3_15) OR (eItem >= JBIB_FMF_7_0 AND eItem <= JBIB_FMF_7_15) OR (eItem >= JBIB_FMF_10_0 AND eItem <= JBIB_FMF_10_15) OR (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB with long sleeves can't be used with a watch. eItem= ", eItem, " Watch = ", eWatchItem) RETURN FALSE ENDIF ENDIF ENDIF // Watch is a prop, check for pilot helmet IF (eWatchItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) IF NOT (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB can't be used with pilot helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF NOT (eItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 4), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS can't be used with pilot helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_FEET) IF NOT (eItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 4), DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "FEET can't be used with pilot helmet") RETURN FALSE ENDIF ENDIF ELIF (eWatchItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) IF NOT (eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB can't be used with deadline helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF NOT (eItem >= LEGS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 4), DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS can't be used with deadline helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_FEET) IF NOT (eItem >= FEET_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 4), DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "FEET can't be used with deadline helmet") RETURN FALSE ENDIF ENDIF ELIF (eWatchItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) IF (eItemType = COMP_TYPE_JBIB) IF NOT (eItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "JBIB can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_LEGS) IF NOT (eItem >= LEGS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 4), DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "LEGS can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_FEET) IF NOT (eItem >= FEET_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 4), DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) CPRINTLN(DEBUG_PED_COMP, "FEET can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_SPECIAL) IF NOT (eItem = SPECIAL_FMF_6_0) CPRINTLN(DEBUG_PED_COMP, "SPECIAL can't be used with MORPH_SUIT helmet") RETURN FALSE ENDIF ENDIF ENDIF ENDIF RETURN TRUE // combination passes the watch check ENDFUNC /// PURPOSE: Returns TRUE if this item is a pair of glasses /// Does not include outfit only items FUNC BOOL IS_ITEM_PAIR_OF_GLASSES(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Michael CASE PLAYER_ZERO IF eType = COMP_TYPE_PROPS IF eItem = PROPS_P0_GLASSES OR eItem = PROPS_P0_SHADES_REFLECTIVE OR (eItem >= PROPS_P0_PROGRAMMER_GLASSES AND eItem <=PROPS_P0_PROGRAMMER_GLASSES_7) OR (eItem >= PROPS_P0_GLASSES_DARK AND eItem <=PROPS_P0_GLASSES_DARK_9) OR (eItem >= PROPS_P0_SHADES AND eItem <=PROPS_P0_SHADES_9) OR eItem = PROPS_P0_SWIMMING_GOGGLES OR (eItem >= PROPS_P0_AVIATORS_0 AND eItem <=PROPS_P0_AVIATORS_11) OR (eItem >= PROPS_P0_GLASSES_THICK_RIM_0 AND eItem <=PROPS_P0_GLASSES_THICK_RIM_7) OR (eitem = PROPS_P0_GLASSES_RANGE_0) RETURN TRUE ENDIF ENDIF BREAK // Franklin CASE PLAYER_ONE IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_P1_SUNGLASSES_A_0 AND eItem <= PROPS_P1_SUNGLASSES_A_9) OR eItem = PROPS_P1_GOGGLES OR eItem = PROPS_P1_SUNGLASSES_B_0 OR (eItem >= PROPS_P1_SUNGLASSES_C_0 AND eItem <= PROPS_P1_SUNGLASSES_C_6) OR (eItem >= PROPS_P1_SUNGLASSES_D_0 AND eItem <= PROPS_P1_SUNGLASSES_D_9) OR (eItem >= PROPS_P1_SUNGLASSES_E_0 AND eItem <= PROPS_P1_SUNGLASSES_E_9) OR (eItem >= PROPS_P1_SUNGLASSES_F_0 AND eItem <= PROPS_P1_SUNGLASSES_F_9) OR (eItem >= PROPS_P1_SUNGLASSES_G_0 AND eItem <= PROPS_P1_SUNGLASSES_G_7) OR (eItem >= PROPS_P1_SUNGLASSES_H_0 AND eItem <= PROPS_P1_SUNGLASSES_H_9) OR (eItem >= PROPS_P1_SUNGLASSES_I_0 AND eItem <= PROPS_P1_SUNGLASSES_I_6) OR (eitem = PROPS_P1_GLASSES_RANGE_0) RETURN TRUE ENDIF ENDIF BREAK // Trevor CASE PLAYER_TWO IF eType = COMP_TYPE_PROPS IF eItem = PROPS_P2_SUNGLASSES OR (eItem >= PROPS_P2_GLASSES AND eItem <= PROPS_P2_GLASSES_9) OR (eItem >= PROPS_P2_SHADES_A_0 AND eItem <= PROPS_P2_SHADES_A_9) OR eItem = PROPS_P2_BIKE_GOGGLES OR eItem = PROPS_P2_GOGGLES OR (eItem >= PROPS_P2_SHADES_B_0 AND eItem <= PROPS_P2_SHADES_B_9) OR (eItem >= PROPS_P2_SUNGLASSES_B_0 AND eItem <= PROPS_P2_SUNGLASSES_B_9) OR (eItem >= PROPS_P2_SUNGLASSES_C_0 AND eItem <= PROPS_P2_SUNGLASSES_C_9) OR (eItem >= PROPS_P2_SQUARE_GLASSES_0 AND eItem <= PROPS_P2_SQUARE_GLASSES_9) OR (eitem = PROPS_P2_GLASSES_RANGE_0) RETURN TRUE ENDIF ENDIF BREAK // MP // Male CASE MP_M_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_FMM_GLASSES_0_0 AND eItem <= PROPS_FMM_GLASSES_15_10) RETURN TRUE #IF USE_TU_CHANGES ELIF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_GLASSES, ENUM_TO_INT(SHOP_PED_PROP)) #ENDIF ENDIF ENDIF BREAK // Female CASE MP_F_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_FMF_GLASSES_0_0 AND eItem <= PROPS_FMF_GLASSES_15_7) RETURN TRUE #IF USE_TU_CHANGES ELIF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_GLASSES, ENUM_TO_INT(SHOP_PED_PROP)) #ENDIF ENDIF ENDIF BREAK ENDSWITCH RETURN FALSE // not a pair of glasses ENDFUNC /// PURPOSE: Returns TRUE if the ped has a radio headset equipped FUNC BOOL IS_PED_WEARING_RADIO_HEADSET(PED_INDEX pedID) SWITCH GET_ENTITY_MODEL(pedID) CASE MP_M_FREEMODE_01 RETURN (GET_PED_PROP_INDEX(pedID, ANCHOR_HEAD) = 19) BREAK CASE MP_F_FREEMODE_01 RETURN (GET_PED_PROP_INDEX(pedID, ANCHOR_HEAD) = 19) BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Returns TRUE if this item is a watch /// Does not include outfit only items /// MP ONLY JUST NOW FUNC BOOL IS_ITEM_A_WATCH(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // MP // Male CASE MP_M_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_FMM_WATCH_0_0 AND eItem <= PROPS_FMM_WATCH_1_2) RETURN TRUE #IF USE_TU_CHANGES ELIF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_WATCH, ENUM_TO_INT(SHOP_PED_PROP)) #ENDIF ENDIF ENDIF BREAK // Female CASE MP_F_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_FMF_WATCH_0_0 AND eItem <= PROPS_FMF_WATCH_1_2) RETURN TRUE #IF USE_TU_CHANGES ELIF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_WATCH, ENUM_TO_INT(SHOP_PED_PROP)) #ENDIF ENDIF ENDIF BREAK ENDSWITCH RETURN FALSE // not a watch ENDFUNC /// PURPOSE: /// Checks if the ped component item is a pair of earrings /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a pair of earrings, FALSE otherwise FUNC BOOL IS_ITEM_EARRINGS(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode male CASE MP_M_FREEMODE_01 SWITCH eType CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EAR_PIECE, ENUM_TO_INT(SHOP_PED_PROP)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_TEETH IF eItem >= TEETH_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_TEETH IF eItem >= TEETH_FMF_1_0 AND eItem <= TEETH_FMF_2_5 RETURN TRUE ENDIF IF eItem >= TEETH_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EAR_PIECE, ENUM_TO_INT(SHOP_PED_PROP)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EARRING, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a pair of earrings ENDFUNC FUNC BOOL IS_ITEM_A_TIE(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_ALT_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TUX_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TUX_TIE_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMM_10_0 AND eItem <= TEETH_FMM_12_15) RETURN TRUE ENDIF IF (eItem >= TEETH_FMM_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_ALT_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TUX_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TUX_TIE_ALT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_FULL_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_VEST_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_CHAIN(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMM_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_ALT_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_SCARF(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_8_0 AND eItem <= TEETH_FMF_8_5) // Bow scarf OR (eItem >= TEETH_FMF_9_0 AND eItem <= TEETH_FMF_9_5) // Scarves RETURN TRUE ENDIF IF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LUXE_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMM_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LUXE_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_STRAP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_5_0 AND eItem <= TEETH_FMF_5_5) RETURN TRUE ELIF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_BANGLE(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_4_0 AND eItem <= TEETH_FMF_4_5) RETURN TRUE ELIF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_SWEATBAND(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_3_0 AND eItem <= TEETH_FMF_3_5) RETURN TRUE ELIF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_NECKLACE(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BEAD_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HOOP_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_6_0 AND eItem <= TEETH_FMF_6_5) OR (eItem >= TEETH_FMF_7_0 AND eItem <= TEETH_FMF_7_5) RETURN TRUE ENDIF IF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LONG_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BEAD_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HOOP_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_CUFF(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_CUFF, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_BRACES(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_TEETH IF (eItem >= TEETH_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_TEETH, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BRACES, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Checks if the ped component item is a helmet /// Used in shops to give a prompt to buy now or wear later /// PARAMS: /// ePedModel - which ped this prop belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a helmet, FALSE otherwise /// CURRENT ONLY SETUP FOR FREEMODE PED MODELS FUNC BOOL IS_ITEM_A_HELMET(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode male CASE MP_M_FREEMODE_01 SWITCH eType CASE COMP_TYPE_PROPS IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF eItem >= PROPS_FMM_HELMET_16_0 AND eItem <= PROPS_FMM_HELMET_18_7 #IF USE_TU_CHANGES OR eItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_PROPS IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF eItem >= PROPS_FMF_HELMET_16_0 AND eItem <= PROPS_FMF_HELMET_18_7 #IF USE_TU_CHANGES OR eItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) #ENDIF RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a helmet ENDFUNC /// PURPOSE: /// Checks if the ped component item is a hat /// PARAMS: /// ePedModel - which ped this prop belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a hat, FALSE otherwise FUNC BOOL IS_ITEM_A_HAT(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Michael CASE PLAYER_ZERO SWITCH eType CASE COMP_TYPE_PROPS IF eItem = PROPS_P0_BUGSTAR_CAP RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Franklin CASE PLAYER_ONE SWITCH eType CASE COMP_TYPE_PROPS IF eItem = PROPS_P1_BUGSTAR_CAP OR eItem >= PROPS_P1_GREEN_CAP AND eItem <= PROPS_P1_CAP_BACK_15 OR eItem >= PROPS_P1_CAP_FRONT_0 AND eItem <= PROPS_P1_CAP_FRONT_15 RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Trevor CASE PLAYER_TWO SWITCH eType CASE COMP_TYPE_PROPS IF eItem >= PROPS_P2_BEANIE_HAT AND eItem <= PROPS_P2_BEANIE_HAT_1 OR eItem >= PROPS_P2_CAP_0 AND eItem <= PROPS_P2_CAP_15 RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Freemode male CASE MP_M_FREEMODE_01 SWITCH eType CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMM_DUNCE_HAT_1_0 AND eItem <= PROPS_FMM_HAT_15_7 RETURN TRUE ELIF eItem >= PROPS_FMM_EARDEFENDERS_0_0 AND eItem <= PROPS_FMM_EARDEFENDERS_0_7 RETURN TRUE #IF USE_TU_CHANGES ELIF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF RETURN (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_PROP)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3), DLC_RESTRICTION_TAG_HAT_MENU, ENUM_TO_INT(SHOP_PED_PROP))) #ENDIF ENDIF BREAK #IF USE_TU_CHANGES CASE COMP_TYPE_BERD IF eItem >= BERD_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3) ENDIF RETURN (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3), DLC_RESTRICTION_TAG_HAT_MENU, ENUM_TO_INT(SHOP_PED_COMPONENT))) ENDIF BREAK #ENDIF ENDSWITCH BREAK // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMF_DUNCE_HAT_1_0 AND eItem <= PROPS_FMF_HAT_15_7 RETURN TRUE ELIF eItem >= PROPS_FMF_EARDEFENDERS_0_0 AND eItem <= PROPS_FMF_EARDEFENDERS_0_7 RETURN TRUE #IF USE_TU_CHANGES ELIF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF RETURN (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_PROP)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_HAT_MENU, ENUM_TO_INT(SHOP_PED_PROP))) #ENDIF ENDIF BREAK #IF USE_TU_CHANGES CASE COMP_TYPE_BERD IF eItem >= BERD_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4) ENDIF RETURN (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4), DLC_RESTRICTION_TAG_HAT_MENU, ENUM_TO_INT(SHOP_PED_COMPONENT))) ENDIF BREAK #ENDIF ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a hat ENDFUNC /// PURPOSE: /// Returns FALSE if combining these items would cause a prop to clip through another prop /// Doesn't include outfit only items /// (This is MP only) FUNC BOOL DO_PROPS_CHECK_MP(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eItemType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM ePropItem) // MP Female IF eModel = MP_F_FREEMODE_01 INT iDLCPropHash = -1 IF (ePropItem >= PROPS_FMF_DLC) iDLCPropHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, ePropItem, COMP_TYPE_PROPS, 4) ENDIF INT iDLCItemHash = -1 IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMF_DLC) iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_BERD, 4) ELIF (eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMF_DLC) iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 4) ENDIF // Hair shrink berd only works with props that force it. IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAIR_SHRINK, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF IS_ITEM_A_HAT(eModel, COMP_TYPE_PROPS, ePropItem) OR IS_ITEM_A_HELMET(eModel, COMP_TYPE_PROPS, ePropItem) IF ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_SHRINK_HAIR, ENUM_TO_INT(SHOP_PED_PROP)) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Hair shrink prop can't be used with this berd. eItem= ", eItem, " ePropItem = ", ePropItem) RETURN FALSE ENDIF ENDIF ELIF IS_ITEM_A_HAT(eModel, COMP_TYPE_PROPS, ePropItem) OR IS_ITEM_A_HELMET(eModel, COMP_TYPE_PROPS, ePropItem) IF ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_SHRINK_HAIR, ENUM_TO_INT(SHOP_PED_PROP)) IF (eItemType = COMP_TYPE_BERD) CPRINTLN(DEBUG_PED_COMP, "Only the hair shrink berd can be used with this prop. eItem= ", eItem, " ePropItem = ", ePropItem) RETURN FALSE ENDIF ENDIF ENDIF // Full face helmet IF (ePropItem >= PROPS_FMF_HELMET_18_0 AND ePropItem <= PROPS_FMF_HELMET_18_7) // Big Hipster glasses IF eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_BIG_GLASSES, ENUM_TO_INT(SHOP_PED_PROP)) CPRINTLN(DEBUG_PED_COMP, "Big Hipster glasses can't be used with a full face helmet. eItem= ", eItem, " Helmet = ", ePropItem) RETURN FALSE ENDIF ENDIF // Big Hipster glasses IF ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_BIG_GLASSES, ENUM_TO_INT(SHOP_PED_PROP)) // Full face helmet IF eItemType = COMP_TYPE_PROPS AND (eItem >= PROPS_FMF_HELMET_18_0 AND eItem <= PROPS_FMF_HELMET_18_7) CPRINTLN(DEBUG_PED_COMP, "Full face helmet can't be used with big Hipster glasses. eItem= ", eItem, " Glasses = ", ePropItem) RETURN FALSE ENDIF ENDIF // Pilot Helmet IF (ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) OR (ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_PROP))) IF eItemType = COMP_TYPE_BERD // Only allow dummy berd to work with the pilot helmet prop IF eItem != BERD_FMF_0_0 RETURN FALSE ENDIF ELIF eItemType = COMP_TYPE_PROPS // Only allow dummy props to work with the pilot helmet prop IF eItem >= INT_TO_ENUM(PED_COMP_NAME_ENUM, 10) RETURN FALSE ENDIF ENDIF ENDIF // Pilot Cap (berd hats) IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) //Only allow dummy props and glasses to work with the pilot cap berd IF ePropItem >= INT_TO_ENUM(PED_COMP_NAME_ENUM, 10) AND NOT IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, ePropItem) AND NOT IS_ITEM_A_WATCH(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ENDIF // Heist nightvision IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))) //Only allow dummy props to work with the heist nightvision IF IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, ePropItem) OR IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ENDIF // Block glasses IF (eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BLOCK_GLASSES, ENUM_TO_INT(SHOP_PED_PROP))) IF IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ELIF eItemType = COMP_TYPE_PROPS AND IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, eItem) IF (ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_BLOCK_GLASSES, ENUM_TO_INT(SHOP_PED_PROP))) RETURN FALSE ENDIF ENDIF // Block earrings IF (eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BLOCK_EARRINGS, ENUM_TO_INT(SHOP_PED_PROP))) IF IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ELIF (eItemType = COMP_TYPE_PROPS OR eItemType = COMP_TYPE_TEETH) AND IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, eItem) IF (ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_BLOCK_EARRINGS, ENUM_TO_INT(SHOP_PED_PROP))) RETURN FALSE ENDIF ENDIF #IF NOT IS_NEXTGEN_BUILD // Block earpiece with watch and earrings. IF (IS_ITEM_A_WATCH(eModel, COMP_TYPE_PROPS, ePropItem) OR IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, ePropItem)) IF eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_EAR_PIECE, ENUM_TO_INT(SHOP_PED_PROP)) CPRINTLN(DEBUG_PED_COMP, "Earpiece can't be used with watch. eItem= ", eItem, " Watch = ", ePropItem) RETURN FALSE ENDIF ELIF eItemType = COMP_TYPE_PROPS AND (IS_ITEM_A_WATCH(eModel, COMP_TYPE_PROPS, eItem) OR IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, eItem)) IF ePropItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_EAR_PIECE, ENUM_TO_INT(SHOP_PED_PROP)) CPRINTLN(DEBUG_PED_COMP, "Watch can't be used with earpiece. ePropItem= ", ePropItem, " Earpiece = ", eItem) RETURN FALSE ENDIF ENDIF #ENDIF // MP Male ELIF eModel = MP_M_FREEMODE_01 INT iDLCPropHash = -1 IF (ePropItem >= PROPS_FMM_DLC) iDLCPropHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, ePropItem, COMP_TYPE_PROPS, 3) ENDIF INT iDLCItemHash = -1 IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMM_DLC) iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_BERD, 3) ELIF (eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMM_DLC) iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 3) ENDIF // Hair shrink berd only works with props that force it. IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAIR_SHRINK, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_SHRINK_HAIR, ENUM_TO_INT(SHOP_PED_PROP)) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Hair shrink prop can't be used with this berd. eItem= ", eItem, " ePropItem = ", ePropItem) RETURN FALSE ENDIF ELSE IF ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_SHRINK_HAIR, ENUM_TO_INT(SHOP_PED_PROP)) IF (eItemType = COMP_TYPE_BERD) CPRINTLN(DEBUG_PED_COMP, "Only the hair shrink berd can be used with this prop. eItem= ", eItem, " ePropItem = ", ePropItem) RETURN FALSE ENDIF ENDIF ENDIF // Pilot Helmet IF (ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_PROP))) OR (ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_DEADLINE_OUTFIT, ENUM_TO_INT(SHOP_PED_PROP))) IF eItemType = COMP_TYPE_BERD // Only allow dummy berd to work with the pilot helmet prop IF eItem != BERD_FMM_0_0 RETURN FALSE ENDIF ELIF eItemType = COMP_TYPE_PROPS // Only allow dummy props to work with the pilot helmet prop IF eItem >= INT_TO_ENUM(PED_COMP_NAME_ENUM, 10) RETURN FALSE ENDIF ENDIF ENDIF // Pilot Cap (berd hats) IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) //Only allow dummy props and glasses to work with the pilot cap berd IF ePropItem >= INT_TO_ENUM(PED_COMP_NAME_ENUM, 10) AND NOT IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, ePropItem) AND NOT IS_ITEM_A_WATCH(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ENDIF // Heist nightvision IF (eItemType = COMP_TYPE_BERD AND eItem >= BERD_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))) //Only allow dummy props to work with the heist nightvision IF IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, ePropItem) OR IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ENDIF // Block glasses IF (eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BLOCK_GLASSES, ENUM_TO_INT(SHOP_PED_PROP))) IF IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ELIF eItemType = COMP_TYPE_PROPS AND IS_ITEM_PAIR_OF_GLASSES(eModel, COMP_TYPE_PROPS, eItem) IF (ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_BLOCK_GLASSES, ENUM_TO_INT(SHOP_PED_PROP))) RETURN FALSE ENDIF ENDIF // Block earrings IF (eItemType = COMP_TYPE_PROPS AND eItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BLOCK_EARRINGS, ENUM_TO_INT(SHOP_PED_PROP))) IF IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, ePropItem) RETURN FALSE ENDIF ELIF eItemType = COMP_TYPE_PROPS AND IS_ITEM_EARRINGS(eModel, COMP_TYPE_PROPS, eItem) IF (ePropItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHash, DLC_RESTRICTION_TAG_BLOCK_EARRINGS, ENUM_TO_INT(SHOP_PED_PROP))) RETURN FALSE ENDIF ENDIF ENDIF RETURN TRUE // combination passes the watch check ENDFUNC /// PURPOSE: /// Returns FALSE if combining these items would cause a tie to be worn without suitable shirt jbib /// Doesn't include outfit only items /// (This is currently singleplayer only) /// NOTE: Pass in DUMMY PED COMP for either jbib or torso /// Only checks tie against one of these at a time. /// /// eReturnTie- this is used to have the function return the correct tie to replace the current one with /// Needs tie, jbib and torso items for this to work FUNC BOOL DO_TIE_CHECK(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eTieItem, PED_COMP_NAME_ENUM eJbibItem, PED_COMP_NAME_ENUM eTorsoItem, PED_COMP_NAME_ENUM &eReturnTie) PED_COMP_NAME_ENUM eOffset SWITCH eModel CASE PLAYER_ZERO // MICHAEL BREAK CASE PLAYER_ONE // FRANKLIN eReturnTie = SPECIAL_P0_NONE // set to no tie, will overwrite if a replacement tie should be used // ---------short ties----------------------- IF (eTieItem >= SPECIAL_P1_TIE_SHORT AND eTieItem <= SPECIAL_P1_TIE_SHORT_15) // short used with collar only, and waistcoat jbibs (closed versions) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_P1_COLLAR_B AND eJbibItem <= JBIB_P1_COLLAR_B_3) OR (eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) // suitable jbib ELSE // check for replacement tie IF (eJbibItem >= JBIB_P1_SHIRT_B AND eJbibItem <= JBIB_P1_SHIRT_B_1) IF (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) // long tie for open jacket with shirt jbib eOffset = eTieItem - SPECIAL_P1_TIE_SHORT eReturnTie = SPECIAL_P1_TIE_LONG + eOffset CPRINTLN(DEBUG_PED_COMP, "Short tie not suitable. replacement = long") ELIF (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) // medium tie for closed jacket with shirt jbib eOffset = eTieItem - SPECIAL_P1_TIE_SHORT eReturnTie = SPECIAL_P1_TIE_MEDIUM + eOffset CPRINTLN(DEBUG_PED_COMP, "Short tie not suitable. replacement = medium") ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "Short tie can't be worn with this jbib. Tie= ", eTieItem, " Jbib = ", eJbibItem) RETURN FALSE ENDIF ENDIF // short used with open / closed jackets or waistcoats IF eTorsoItem <> DUMMY_PED_COMP IF (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) OR (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) OR (eTorsoItem >= TORSO_P1_WAISTCOAT AND eTorsoItem <= TORSO_P1_WAISTCOAT_15) // suitable torso ELSE // no replacement tie here- other torsos don't go with ties CPRINTLN(DEBUG_PED_COMP, "Short tie can't be worn with this torso. Tie= ", eTieItem, " eTorsoItem = ", eTorsoItem) RETURN FALSE ENDIF ENDIF // ---------medium ties----------------------- ELIF (eTieItem >= SPECIAL_P1_TIE_MEDIUM AND eTieItem <= SPECIAL_P1_TIE_MEDIUM_15) // medium used with full shirt jbibs (closed versions) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_P1_SHIRT_B AND eJbibItem <= JBIB_P1_SHIRT_B_1) // suitable jbib ELSE // check for replacement tie IF (eJbibItem >= JBIB_P1_COLLAR_B AND eJbibItem <= JBIB_P1_COLLAR_B_3) OR (eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) // short tie for collar only and waistcoat jbibs eOffset = eTieItem - SPECIAL_P1_TIE_MEDIUM eReturnTie = SPECIAL_P1_TIE_SHORT + eOffset CPRINTLN(DEBUG_PED_COMP, "Medium tie not suitable. replacement = short") ENDIF CPRINTLN(DEBUG_PED_COMP, "Medium tie can't be worn with this jbib. Tie= ", eTieItem, " Jbib = ", eJbibItem) RETURN FALSE ENDIF ENDIF // medium used with closed jackets IF eTorsoItem <> DUMMY_PED_COMP IF (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) // suitable torso ELSE // check for replacement tie IF (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) IF (eJbibItem >= JBIB_P1_SHIRT_B AND eJbibItem <= JBIB_P1_SHIRT_B_1) // long tie for open jacket and full shirt jbib eOffset = eTieItem - SPECIAL_P1_TIE_MEDIUM eReturnTie = SPECIAL_P1_TIE_LONG + eOffset CPRINTLN(DEBUG_PED_COMP, "Medium tie not suitable. replacement = long") ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "Medium tie can't be worn with this torso. Tie= ", eTieItem, " eTorsoItem = ", eTorsoItem) RETURN FALSE ENDIF ENDIF // ---------long ties----------------------- ELIF (eTieItem >= SPECIAL_P1_TIE_LONG AND eTieItem <= SPECIAL_P1_TIE_LONG_15) // long used with full shirt jbibs (closed versions) IF eJbibItem <> DUMMY_PED_COMP IF (eJbibItem >= JBIB_P1_SHIRT_B AND eJbibItem <= JBIB_P1_SHIRT_B_1) // suitable jbib ELSE // check for replacement tie IF (eJbibItem >= JBIB_P1_COLLAR_B AND eJbibItem <= JBIB_P1_COLLAR_B_3) OR (eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) // short tie for collar only and waistcoat jbibs eOffset = eTieItem - SPECIAL_P1_TIE_LONG eReturnTie = SPECIAL_P1_TIE_SHORT + eOffset CPRINTLN(DEBUG_PED_COMP, "Long tie not suitable. replacement = short") ENDIF CPRINTLN(DEBUG_PED_COMP, "Long tie can't be worn with this jbib. Tie= ", eTieItem, " Jbib = ", eJbibItem) RETURN FALSE ENDIF ENDIF // long used with open jackets IF eTorsoItem <> DUMMY_PED_COMP IF (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) // suitable torso ELSE // check for replacement tie IF (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) IF (eJbibItem >= JBIB_P1_SHIRT_B AND eJbibItem <= JBIB_P1_SHIRT_B_1) // medium tie for closed jacket and full shirt jbib eOffset = eTieItem - SPECIAL_P1_TIE_LONG eReturnTie = SPECIAL_P1_TIE_MEDIUM + eOffset CPRINTLN(DEBUG_PED_COMP, "Long tie not suitable. replacement = medium") ENDIF ELSE IF (eJbibItem >= JBIB_P1_COLLAR_B AND eJbibItem <= JBIB_P1_COLLAR_B_3) OR (eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) // short tie for collar only and waistcoat jbibs eOffset = eTieItem - SPECIAL_P1_TIE_LONG eReturnTie = SPECIAL_P1_TIE_SHORT + eOffset CPRINTLN(DEBUG_PED_COMP, "Long tie not suitable. replacement = short") ELSE CPRINTLN(DEBUG_PED_COMP, "Not open collar of waistcoats: eJbibItem = ", eJbibItem) ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "Long tie can't be worn with this torso. Tie= ", eTieItem, " eTorsoItem = ", eTorsoItem) RETURN FALSE ENDIF ENDIF ENDIF BREAK CASE PLAYER_TWO // TREVOR IF eTieItem = SPECIAL_P2_BOWTIE IF eTorsoItem <> TORSO_P2_TUXEDO CPRINTLN(DEBUG_PED_COMP, "Trevor's bow tie can only be worn with tuxedo top. Tie= ", eTieItem, " eTorsoItem = ", eTorsoItem) RETURN FALSE ENDIF ENDIF BREAK ENDSWITCH RETURN TRUE // combination passes the tie check ENDFUNC /// PURPOSE: /// Returns whether the equipping this item will force the character's hair to change. /// (This is currently singleplayer only) FUNC BOOL DOES_ITEM_FORCE_HAIR_CHANGE(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM &eReturnItem) eReturnItem = DUMMY_PED_COMP SWITCH eModel // Michael CASE PLAYER_ZERO SWITCH eType // With this special item... CASE COMP_TYPE_SPECIAL IF eItem = SPECIAL_P0_BALACLAVA OR eItem = SPECIAL_P0_BALACLAVA_B eReturnItem = HAIR_P0_1_0 ENDIF BREAK // With this special2 item... CASE COMP_TYPE_SPECIAL2 IF eItem = SPECIAL2_P0_SCUBA_HEADGEAR OR (eItem >=SPECIAL2_P0_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P0_WRESTLER_MASK_5) eReturnItem = HAIR_P0_1_0 ENDIF BREAK // With this DECL item CASE COMP_TYPE_DECL IF (eItem >= DECL_P0_MASK AND eItem <= DECL_P0_MASK_3) eReturnItem = HAIR_P0_1_0 ENDIF BREAK // With this prop item... CASE COMP_TYPE_PROPS IF (eItem >=PROPS_P0_MASK_MONSTER_GREEN AND eItem <= PROPS_P0_MASK_MONSTER_RED) OR (eItem >=PROPS_P0_MASK_PIG AND eItem <= PROPS_P0_MASK_PIG_DARK) OR (eItem >=PROPS_P0_MASK_SKULL_GREY AND eItem <= PROPS_P0_MASK_SKULL_YELLOW) OR eItem = PROPS_P0_MASK_MONKEY OR (eItem >=PROPS_P0_MASK_APE AND eItem <= PROPS_P0_MASK_APE_DARK) OR eItem = PROPS_P0_SWIM_CAP eReturnItem = HAIR_P0_1_0 ENDIF BREAK ENDSWITCH BREAK // Franklin CASE PLAYER_ONE SWITCH eType CASE COMP_TYPE_HAIR IF eItem = HAIR_P1_MASK eReturnItem = HAIR_P1_MASK ENDIF BREAK CASE COMP_TYPE_SPECIAL IF eItem = SPECIAL_P1_BALACLAVA eReturnItem = HAIR_P1_VERY_SHORT ENDIF BREAK CASE COMP_TYPE_SPECIAL2 IF (eItem >=SPECIAL2_P1_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P1_WRESTLER_MASK_5) eReturnItem = HAIR_P1_VERY_SHORT ENDIF BREAK CASE COMP_TYPE_DECL IF (eItem >= DECL_P1_MASK_0 AND eItem <= DECL_P1_MASK_3) eReturnItem = HAIR_P1_VERY_SHORT ENDIF BREAK CASE COMP_TYPE_PROPS IF (eItem >=PROPS_P1_MASK_MONSTER_GREEN AND eItem <= PROPS_P1_MASK_MONSTER_RED) OR (eItem >=PROPS_P1_MASK_PIG AND eItem <= PROPS_P1_MASK_PIG_DARK) OR (eItem >=PROPS_P1_MASK_SKULL_GREY AND eItem <= PROPS_P1_MASK_SKULL_YELLOW) OR eItem = PROPS_P1_MASK_MONKEY OR (eItem >=PROPS_P1_MASK_APE AND eItem <= PROPS_P1_MASK_APE_DARK) eReturnItem = HAIR_P1_VERY_SHORT ENDIF BREAK ENDSWITCH BREAK // Trevor CASE PLAYER_TWO SWITCH eType CASE COMP_TYPE_SPECIAL IF eItem = SPECIAL_P2_BALACLAVA eReturnItem = HAIR_P2_SHAVED ENDIF BREAK CASE COMP_TYPE_SPECIAL2 IF (eItem >=SPECIAL2_P2_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P2_WRESTLER_MASK_5) OR (eItem >=SPECIAL2_P2_MASK_MONSTER_GREEN AND eItem <= SPECIAL2_P2_MASK_MONSTER_RED) eReturnItem = HAIR_P2_SHAVED ENDIF BREAK CASE COMP_TYPE_DECL IF (eItem >= DECL_P2_MASK_0 AND eItem <= DECL_P2_MASK_3) eReturnItem = HAIR_P2_SHAVED ENDIF BREAK CASE COMP_TYPE_PROPS IF (eItem >=PROPS_P2_MASK_MONSTER_GREEN AND eItem <= PROPS_P2_MASK_MONSTER_RED) OR (eItem >=PROPS_P2_MASK_PIG AND eItem <= PROPS_P2_MASK_PIG_DARK) OR (eItem >=PROPS_P2_MASK_SKULL_GREY AND eItem <= PROPS_P2_MASK_SKULL_YELLOW) OR eItem = PROPS_P2_MASK_MONKEY OR (eItem >=PROPS_P2_MASK_APE AND eItem <= PROPS_P2_MASK_APE_DARK) OR eItem = PROPS_P2_SWIM_CAP eReturnItem = HAIR_P2_SHAVED ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // If hair is being forced to change, store item details (if needed) and return true IF eReturnItem <> DUMMY_PED_COMP enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODEL(eModel) // always update the item that forced the hair change // this is so that this system still works if the player // equips a mask to replace another mask CPRINTLN(DEBUG_PED_COMP, "Hairstyle force change item for ", eChar, " updated to: ", eItem) CPRINTLN(DEBUG_PED_COMP, "Hairstyle force change type for ", eChar, " updated to: ", GET_PED_COMP_TYPE_STRING(eType)) g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange = eItem g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange = eType RETURN TRUE ENDIF // Hair not forced to change RETURN FALSE ENDFUNC /// PURPOSE: /// Returns whether the equipping this item will force the character's hair to change. /// (This is currently singleplayer only) FUNC BOOL DOES_ITEM_FORCE_HAIR_CHANGE_MP(PED_INDEX mPed, MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM &eReturnItem) eReturnItem = DUMMY_PED_COMP SWITCH eModel CASE MP_M_FREEMODE_01 SWITCH eType // With this berd item... CASE COMP_TYPE_BERD IF (eItem >= BERD_FMM_1_0 AND eItem <= BERD_FMM_1_3) OR (eItem >= BERD_FMM_2_0 AND eItem <= BERD_FMM_2_3) OR (eItem = BERD_FMM_3_0) OR (eItem >= BERD_FMM_5_0 AND eItem <= BERD_FMM_5_3) OR (eItem >= BERD_FMM_7_0 AND eItem <= BERD_FMM_7_3) eReturnItem = HAIR_FMM_0_0 ENDIF // 17106618 - christmas masks need blocked here IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(eModel, PED_COMP_BERD) GET_PED_COMP_DATA_FOR_ITEM_MP(eModel, COMP_TYPE_BERD, eItem) IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES") eReturnItem = HAIR_FMM_0_0 ENDIF ENDIF PED_COMP_NAME_ENUM eBerdItem eBerdItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_BERD) IF eBerdItem >= BERD_FMM_DLC INT iItemNameHash iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eBerdItem, COMP_TYPE_BERD, 3) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_BERD, 3) IF iItemNameHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_HAIR) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_HAIR, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF BREAK ENDSWITCH BREAK CASE MP_F_FREEMODE_01 SWITCH eType // With this berd item... CASE COMP_TYPE_BERD IF (eItem >= BERD_FMF_1_0 AND eItem <= BERD_FMF_1_3) OR (eItem >= BERD_FMF_2_0 AND eItem <= BERD_FMF_2_3) OR (eItem = BERD_FMF_3_0) OR (eItem >= BERD_FMF_5_0 AND eItem <= BERD_FMF_5_3) OR (eItem >= BERD_FMF_7_0 AND eItem <= BERD_FMF_7_3) eReturnItem = HAIR_FMF_0_0 ENDIF // 17106618 - christmas masks need blocked here IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(eModel, PED_COMP_BERD) GET_PED_COMP_DATA_FOR_ITEM_MP(eModel, COMP_TYPE_BERD, eItem) IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES") eReturnItem = HAIR_FMF_0_0 ENDIF ENDIF PED_COMP_NAME_ENUM eBerdItem eBerdItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_BERD) IF eBerdItem >= BERD_FMF_DLC INT iItemNameHash iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eBerdItem, COMP_TYPE_BERD, 4) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_BERD, 4) IF iItemNameHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_HAIR) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_HAIR, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // If hair is being forced to change, store item details (if needed) and return true IF eReturnItem <> DUMMY_PED_COMP // always update the item that forced the hair change // this is so that this system still works if the player // equips a mask to replace another mask CPRINTLN(DEBUG_PED_COMP, "Hairstyle force change item for FM updated to: ", eItem) CPRINTLN(DEBUG_PED_COMP, "Hairstyle force change type for FM updated to: ", GET_PED_COMP_TYPE_STRING(eType)) SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, ENUM_TO_INT(eItem), g_iPedComponentSlot) SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_TYPE, ENUM_TO_INT(eType), g_iPedComponentSlot) RETURN TRUE ENDIF // Hair not forced to change RETURN FALSE ENDFUNC /// PURPOSE: /// Returns whether the equipping this item will force the character's beard to change. /// (This is currently singleplayer only) FUNC BOOL DOES_ITEM_FORCE_BEARD_CHANGE(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM &eReturnItem) eReturnItem = DUMMY_PED_COMP SWITCH eModel // Michael CASE PLAYER_ZERO SWITCH eType CASE COMP_TYPE_DECL IF (eItem >= DECL_P0_MASK AND eItem <= DECL_P0_MASK_3) eReturnItem = BERD_P0_NONE ENDIF BREAK CASE COMP_TYPE_PROPS IF (eItem >=PROPS_P0_MASK_MONSTER_GREEN AND eItem <= PROPS_P0_MASK_MONSTER_RED) OR (eItem >=PROPS_P0_MASK_PIG AND eItem <= PROPS_P0_MASK_PIG_DARK) OR (eItem >=PROPS_P0_MASK_SKULL_GREY AND eItem <= PROPS_P0_MASK_SKULL_YELLOW) OR eItem = PROPS_P0_MASK_MONKEY OR (eItem >=PROPS_P0_MASK_HOCKEY_WHITE AND eItem <= PROPS_P0_MASK_HOCKEY_RED) OR (eItem >=PROPS_P0_MASK_APE AND eItem <= PROPS_P0_MASK_APE_DARK) OR (eItem >=PROPS_P0_MASK_TRIBAL_1 AND eItem <= PROPS_P0_MASK_TRIBAL_3) eReturnItem = BERD_P0_NONE ENDIF BREAK ENDSWITCH BREAK // Franklin CASE PLAYER_ONE SWITCH eType CASE COMP_TYPE_DECL IF (eItem >= DECL_P1_MASK_0 AND eItem <= DECL_P1_MASK_3) eReturnItem = BERD_P1_NONE ENDIF BREAK CASE COMP_TYPE_PROPS IF (eItem >=PROPS_P1_MASK_MONSTER_GREEN AND eItem <= PROPS_P1_MASK_MONSTER_RED) OR (eItem >=PROPS_P1_MASK_PIG AND eItem <= PROPS_P1_MASK_PIG_DARK) OR (eItem >=PROPS_P1_MASK_SKULL_GREY AND eItem <= PROPS_P1_MASK_SKULL_YELLOW) OR eItem = PROPS_P1_MASK_MONKEY OR (eItem >=PROPS_P1_MASK_APE AND eItem <= PROPS_P1_MASK_APE_DARK) eReturnItem = BERD_P1_NONE ENDIF BREAK ENDSWITCH BREAK // Trevor CASE PLAYER_TWO SWITCH eType CASE COMP_TYPE_SPECIAL2 IF (eItem >=SPECIAL2_P2_MASK_MONSTER_GREEN AND eItem <= SPECIAL2_P2_MASK_MONSTER_RED) eReturnItem = BERD_P2_NONE ENDIF BREAK CASE COMP_TYPE_DECL IF (eItem >= DECL_P2_MASK_0 AND eItem <= DECL_P2_MASK_3) eReturnItem = BERD_P2_NONE ENDIF BREAK CASE COMP_TYPE_PROPS IF (eItem >=PROPS_P2_MASK_MONSTER_GREEN AND eItem <= PROPS_P2_MASK_MONSTER_RED) OR (eItem >=PROPS_P2_MASK_PIG AND eItem <= PROPS_P2_MASK_PIG_DARK) OR (eItem >=PROPS_P2_MASK_SKULL_GREY AND eItem <= PROPS_P2_MASK_SKULL_YELLOW) OR eItem = PROPS_P2_MASK_MONKEY OR (eItem >=PROPS_P2_MASK_HOCKEY_WHITE AND eItem <= PROPS_P2_MASK_HOCKEY_RED) OR (eItem >=PROPS_P2_MASK_APE AND eItem <= PROPS_P2_MASK_APE_DARK) OR (eItem >=PROPS_P2_MASK_TRIBAL_1 AND eItem <= PROPS_P2_MASK_TRIBAL_3) eReturnItem = BERD_P2_NONE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // If hair is being forced to change, store item details (if needed) and return true IF eReturnItem <> DUMMY_PED_COMP enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODEL(eModel) // always update the item that forced the beard change // this is so that this system still works if the player // equips a mask to replace another mask CPRINTLN(DEBUG_PED_COMP, "Beard force change item for ", eChar, " updated to: ", eItem) CPRINTLN(DEBUG_PED_COMP, "Beard force change type for ", eChar, " updated to: ", GET_PED_COMP_TYPE_STRING(eType)) g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange = eItem g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange = eType RETURN TRUE ENDIF // Beard not forced to change RETURN FALSE ENDFUNC /// PURPOSE: /// Checks if the ped component item is a golf top or golf pants /// Used so that the player cna customise their golf outfit /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a golf item, FALSE otherwise FUNC BOOL IS_GOLF_ITEM(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_GOLF AND eItem <= LEGS_P0_GOLF_7) RETURN TRUE ENDIF ELIF eType = COMP_TYPE_TORSO IF (eItem >= TORSO_P0_GOLF AND eItem <= TORSO_P0_POLO_SHIRT_7) RETURN TRUE ENDIF ENDIF ELIF ePedModel = PLAYER_ONE IF eType = COMP_TYPE_LEGS IF (eItem >= LEGS_P1_GOLF_0 AND eItem <= LEGS_P1_GOLF_7) RETURN TRUE ENDIF ELIF eType = COMP_TYPE_TORSO IF (eItem >= TORSO_P1_GOLF AND eItem <= TORSO_P1_SWEATER_15) RETURN TRUE ENDIF ENDIF ELIF ePedModel = PLAYER_TWO IF eType = COMP_TYPE_LEGS IF (eItem >= LEGS_P2_GOLF AND eItem <= LEGS_P2_GOLF_11) RETURN TRUE ENDIF ELIF eType = COMP_TYPE_TORSO IF (eItem >= TORSO_P2_GOLF AND eItem <= TORSO_P2_TSHIRT_15) RETURN TRUE ENDIF ENDIF ENDIF RETURN FALSE // not golf item ENDFUNC FUNC PED_COMP_NAME_ENUM GET_HEAD_REQUISITE_SP(MODEL_NAMES eModel, PED_COMP_NAME_ENUM eHair, PED_COMP_NAME_ENUM eBeard) SWITCH eModel // Michael CASE PLAYER_ZERO IF eHair = HAIR_P0_1_0 // bald has its own rules IF eBeard = BERD_P0_NONE // no beard RETURN HEAD_P0_0_1 ELIF eBeard = BERD_P0_4_0 // full beard RETURN HEAD_P0_0_5 ELSE // other RETURN HEAD_P0_0_3 ENDIF ELSE // haircuts follow same rules IF eBeard = BERD_P0_NONE // no beard RETURN HEAD_P0_0_0 ELIF eBeard = BERD_P0_4_0 // full beard RETURN HEAD_P0_0_4 ELSE // other RETURN HEAD_P0_0_2 ENDIF ENDIF BREAK // Franklin CASE PLAYER_ONE IF (eHair >= HAIR_P1_SHORT_1 AND eHair <= HAIR_P1_SHORT_16) //Shaved in styles have 1 set of rules IF eBeard = BERD_P1_NONE // no beard RETURN HEAD_P1_0_0 ELSE // beards / stubble etc RETURN HEAD_P1_0_3 ENDIF ELIF (eHair >= HAIR_P1_1_0 AND eHair <= HAIR_P1_2_0) // afros have another set of rules IF eBeard = BERD_P1_NONE // no beard RETURN HEAD_P1_0_2 ELSE // beards / stubble etc RETURN HEAD_P1_0_5 ENDIF ELIF eHair = HAIR_P1_3_0 // corn rows have their own rules IF eBeard = BERD_P1_NONE // no beard RETURN HEAD_P1_0_6 ELSE // beards / stubble etc RETURN HEAD_P1_0_7 ENDIF ELIF eHair = HAIR_P1_VERY_SHORT // bald has its own rules IF eBeard = BERD_P1_NONE // no beard RETURN HEAD_P1_0_1 ELSE // beards / stubble etc RETURN HEAD_P1_0_4 ENDIF ELSE // mask IF eBeard = BERD_P1_NONE // no beard RETURN HEAD_P1_0_1 ELSE // beards / stubble etc RETURN HEAD_P1_0_4 ENDIF ENDIF BREAK // Trevor CASE PLAYER_TWO IF eHair = HAIR_P2_SHAVED // bald rules IF eBeard = BERD_P2_NONE // no beard RETURN HEAD_P2_NONE_2 ELSE // beards / stubble etc RETURN HEAD_P2_NONE_3 ENDIF ELIF eHair = HAIR_P2_CURLS // crop spike rules IF eBeard = BERD_P2_NONE // no beard RETURN HEAD_P2_NONE_4 ELSE // beards / stubble etc RETURN HEAD_P2_NONE_6 ENDIF ELIF eHair = HAIR_P2_PROLOGUE // prologue RETURN HEAD_P2_NONE_5 ELSE // regular hair rules IF eBeard = BERD_P2_NONE // no beard RETURN HEAD_P2_NONE ELSE // beards / stubble etc RETURN HEAD_P2_NONE_1 ENDIF ENDIF BREAK ENDSWITCH RETURN DUMMY_PED_COMP ENDFUNC #if USE_CLF_DLC FUNC BOOL IS_ITEM_LOCKED_UNTIL_ENDGAMECLF(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) UNUSED_PARAMETER(ePedModel) UNUSED_PARAMETER(eType) UNUSED_PARAMETER(eItem) return false ENDFUNC #endif #if USE_NRM_DLC FUNC BOOL IS_ITEM_LOCKED_UNTIL_ENDGAMENRM(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) UNUSED_PARAMETER(ePedModel) UNUSED_PARAMETER(eType) UNUSED_PARAMETER(eItem) return false ENDFUNC #endif /// Checks if this item is blocked until the player has completed all story missions /// Used to stop the item being equipped during force valid checks FUNC BOOL IS_ITEM_LOCKED_UNTIL_ENDGAME(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) #if USE_CLF_DLC return IS_ITEM_LOCKED_UNTIL_ENDGAMECLF(ePedModel,eType,eItem) #endif #if USE_NRM_DLC return IS_ITEM_LOCKED_UNTIL_ENDGAMENRM(ePedModel,eType,eItem) #endif #if not USE_CLF_DLC #if not USE_NRM_DLC IF NOT g_savedGlobals.sFlow.controls.flagIDs[FLOWFLAG_RESPAWNED_AFTER_FINALE] // blocked until story completed IF ePedModel = PLAYER_ZERO IF etype = COMP_TYPE_TORSO IF eItem = TORSO_P0_BARE_CHEST OR (eItem >= TORSO_P0_TENNIS AND eItem <= TORSO_P0_TENNIS_2) CPRINTLN(DEBUG_PED_COMP, "M: Torso item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ELIF etype = COMP_TYPE_LEGS IF (eItem >= LEGS_P0_GOLF AND eItem <= LEGS_P0_GOLF_7) OR (eItem >= LEGS_P0_BED AND eItem <= LEGS_P0_BOXERS_7) OR (eItem >= LEGS_P0_TENNIS AND eItem <= LEGS_P0_TENNIS_2) CPRINTLN(DEBUG_PED_COMP, "M: Legs item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ELIF etype = COMP_TYPE_JBIB IF eItem = JBIB_P0_BARE_CHEST CPRINTLN(DEBUG_PED_COMP, "M: Jbib item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ENDIF ELIF ePedModel = PLAYER_ONE IF etype = COMP_TYPE_TORSO IF eItem = TORSO_P1_BARE_CHEST CPRINTLN(DEBUG_PED_COMP, "F: Torso item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ELIF etype = COMP_TYPE_LEGS IF (eItem >= LEGS_P1_GOLF_0 AND eItem <= LEGS_P1_GOLF_7) OR (eItem >= LEGS_P1_BOXERS AND eItem <= LEGS_P1_BOXERS_5) CPRINTLN(DEBUG_PED_COMP, "F: Legs item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ENDIF ELIF ePedModel = PLAYER_TWO IF etype = COMP_TYPE_TORSO IF eItem = TORSO_P2_NONE OR (eItem >= TORSO_P2_DRESS AND eItem <= TORSO_P2_DRESS_4) CPRINTLN(DEBUG_PED_COMP, "T: Torso item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ELIF etype = COMP_TYPE_LEGS IF (eItem >= LEGS_P2_GOLF AND eItem <= LEGS_P2_GOLF_11) OR (eItem >= LEGS_P2_UNDERWEAR AND eItem <= LEGS_P2_UNDERWEAR_9) OR (eItem >= LEGS_P2_UNDERWEAR_BF_0 AND eItem <= LEGS_P2_UNDERWEAR_BF_9) OR eItem = LEGS_P2_TENNIS CPRINTLN(DEBUG_PED_COMP, "T: Legs item blocked for endgame. eItem= ", eItem) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE // item not locked, or we've already completed the story #endif #endif ENDFUNC /// PURPOSE: /// Used to control which collar jbibs should be used with Franklin's torsos / ties FUNC PED_COMP_NAME_ENUM GET_COLLAR_JBIB(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eTorsoItem, PED_COMP_NAME_ENUM eJbibItem, BOOL bOpenCollar) PED_COMP_NAME_ENUM eOffset CPRINTLN(DEBUG_PED_COMP, "eTorsoItem = ", eTorsoItem, ". eJbibItem= ",eJbibItem ) // Torso checks: // white shirt collar- used with waistcoats IF (eTorsoItem >= TORSO_P1_WAISTCOAT AND eTorsoItem <= TORSO_P1_WAISTCOAT_3) IF bOpenCollar = TRUE RETURN JBIB_P1_COLLAR_A ELSE RETURN JBIB_P1_COLLAR_B ENDIF // gray shirt collar- used with waistcoats ELIF (eTorsoItem >= TORSO_P1_WAISTCOAT_4 AND eTorsoItem <= TORSO_P1_WAISTCOAT_7) IF bOpenCollar = TRUE RETURN JBIB_P1_COLLAR_A_1 ELSE RETURN JBIB_P1_COLLAR_B_1 ENDIF // blue shirt collar- used with waistcoats ELIF (eTorsoItem >= TORSO_P1_WAISTCOAT_8 AND eTorsoItem <= TORSO_P1_WAISTCOAT_11) IF bOpenCollar = TRUE RETURN JBIB_P1_COLLAR_A_2 ELSE RETURN JBIB_P1_COLLAR_B_2 ENDIF // silver shirt collar- used with waistcoats ELIF (eTorsoItem >= TORSO_P1_WAISTCOAT_12 AND eTorsoItem <= TORSO_P1_WAISTCOAT_15) IF bOpenCollar = TRUE RETURN JBIB_P1_COLLAR_A_3 ELSE RETURN JBIB_P1_COLLAR_B_3 ENDIF // silver shirt collar- used with waistcoats ELIF (eTorsoItem >= TORSO_P1_WAISTCOAT_12 AND eTorsoItem <= TORSO_P1_WAISTCOAT_15) IF bOpenCollar = TRUE RETURN JBIB_P1_COLLAR_A_3 ELSE RETURN JBIB_P1_COLLAR_B_3 ENDIF // suit jackets- use waistcoat or shirt jbibs ELIF (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) OR (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) // waistcoat jbibs (open collar) IF (eJbibItem >= JBIB_P1_WAISTCOAT_A AND eJbibItem <= JBIB_P1_WAISTCOAT_A_15) IF bOpenCollar = TRUE RETURN eJbibItem ELSE // work out the closed collar version of this eOffset = eJbibItem - JBIB_P1_WAISTCOAT_A eJbibItem = JBIB_P1_WAISTCOAT_B + eOffset RETURN eJbibItem ENDIF // waistcoat jbibs (closed collar) ELIF(eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) IF bOpenCollar = TRUE // work out the open collar version of this eOffset = eJbibItem - JBIB_P1_WAISTCOAT_B eJbibItem = JBIB_P1_WAISTCOAT_A + eOffset RETURN eJbibItem ELSE RETURN eJbibItem ENDIF // full shirt jbibs ELIF (eJbibItem = JBIB_P1_SHIRT_A) OR (eJbibItem = JBIB_P1_SHIRT_B) IF bOpenCollar = TRUE RETURN JBIB_P1_SHIRT_A ELSE RETURN JBIB_P1_SHIRT_B ENDIF ELSE // other jbib- work out version to force on // this will be hit when changing torso from waistcoat to suit jacket CPRINTLN(DEBUG_PED_COMP, "Franklin changing to suit jacket from other torso without matching jbib.") IF bOpenCollar = TRUE eJbibItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(ePedModel, COMP_TYPE_JBIB, JBIB_P1_WAISTCOAT_A, JBIB_P1_WAISTCOAT_A_15) ELSE eJbibItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(ePedModel, COMP_TYPE_JBIB, JBIB_P1_WAISTCOAT_B, JBIB_P1_WAISTCOAT_B_15) ENDIF IF eJbibItem = DUMMY_PED_COMP // if not got any of the waistcoats we must be using the full shirt jbib // work out open closed collar IF bOpenCollar = TRUE RETURN JBIB_P1_SHIRT_A ELSE RETURN JBIB_P1_SHIRT_B ENDIF ELSE // otherwise we've got the collar we need RETURN eJbibItem ENDIF ENDIF ELSE // jbib checks // collar jbibs used with waistcoat torsos (open collar) IF (eJbibItem >= JBIB_P1_COLLAR_A AND eJbibItem <= JBIB_P1_COLLAR_A_3) IF bOpenCollar = TRUE RETURN eJbibItem ELSE // work out the closed collar version of this eOffset = eJbibItem - JBIB_P1_COLLAR_A eJbibItem = JBIB_P1_COLLAR_B + eOffset RETURN eJbibItem ENDIF // collar jbibs used with waistcoat torsos (closed collar) ELIF (eJbibItem >= JBIB_P1_COLLAR_B AND eJbibItem <= JBIB_P1_COLLAR_B_3) IF bOpenCollar = TRUE // work out the open collar version of this eOffset = eJbibItem - JBIB_P1_COLLAR_B eJbibItem = JBIB_P1_COLLAR_A + eOffset RETURN eJbibItem ELSE RETURN eJbibItem ENDIF // waistcoat jbibs (open collar) ELIF (eJbibItem >= JBIB_P1_WAISTCOAT_A AND eJbibItem <= JBIB_P1_WAISTCOAT_A_15) IF bOpenCollar = TRUE RETURN eJbibItem ELSE // work out the closed collar version of this eOffset = eJbibItem - JBIB_P1_WAISTCOAT_A eJbibItem = JBIB_P1_WAISTCOAT_B + eOffset RETURN eJbibItem ENDIF // waistcoat jbibs (closed collar) ELIF(eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) IF bOpenCollar = TRUE // work out the open collar version of this eOffset = eJbibItem - JBIB_P1_WAISTCOAT_B eJbibItem = JBIB_P1_WAISTCOAT_A + eOffset RETURN eJbibItem ELSE RETURN eJbibItem ENDIF // full shirt jbibs ELIF (eJbibItem = JBIB_P1_SHIRT_A) OR (eJbibItem = JBIB_P1_SHIRT_B) IF bOpenCollar = TRUE RETURN JBIB_P1_SHIRT_A ELSE RETURN JBIB_P1_SHIRT_B ENDIF ENDIF ENDIF RETURN DUMMY_PED_COMP ENDFUNC /// PURPOSE: Any component items that must be set with another item /// If you add a new rule to this function /// you will probably need to also update IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_SP FUNC PED_COMP_NAME_ENUM GET_PED_COMPONENT_ITEM_REQUISITE_SP(PED_INDEX mPed, MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_TYPE_ENUM eTypeForReturn, PED_PROP_POSITION Anchor = ANCHOR_HEAD) PED_COMP_NAME_ENUM eReturnItem = DUMMY_PED_COMP // common SP requsiste checks // Head requisites IF eTypeForReturn = COMP_TYPE_HEAD SWITCH eType CASE COMP_TYPE_HAIR // With this hair... PED_COMP_NAME_ENUM eBeard eBeard = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_BERD) eReturnItem = GET_HEAD_REQUISITE_SP(eModel, eItem, eBeard) BREAK CASE COMP_TYPE_BERD // With this beard... PED_COMP_NAME_ENUM eHair eHair = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_HAIR) eReturnItem = GET_HEAD_REQUISITE_SP(eModel, eHair, eItem) BREAK ENDSWITCH // Hair requisistes ELIF eTypeForReturn = COMP_TYPE_HAIR DOES_ITEM_FORCE_HAIR_CHANGE(eModel, eType, eItem, eReturnItem) // Beard requisistes ELIF eTypeForReturn = COMP_TYPE_BERD DOES_ITEM_FORCE_BEARD_CHANGE(eModel, eType, eItem, eReturnItem) // feet requisites ELIF eTypeForReturn = COMP_TYPE_FEET // These feet must be used... IF eType = COMP_TYPE_LEGS IF DO_LEGS_CONTAIN_FEET(eModel, eItem, eReturnItem) CPRINTLN(DEBUG_PED_COMP, "Requisite: Legs with feet attached must use dummy feet. Legs = ", eItem) ENDIF ENDIF ELSE // character specific requisite checks SWITCH eModel // Michael CASE PLAYER_ZERO SWITCH eTypeForReturn CASE COMP_TYPE_TORSO // This torso must be used... SWITCH eType CASE COMP_TYPE_DECL// With this decal item... SWITCH eItem CASE DECL_P0_TSHIRT_8 eReturnItem = TORSO_P0_V_NECK_0 BREAK CASE DECL_P0_TSHIRT_9 eReturnItem = TORSO_P0_V_NECK_0 BREAK CASE DECL_P0_TSHIRT_10 eReturnItem = TORSO_P0_V_NECK_1 BREAK CASE DECL_P0_TSHIRT_11 eReturnItem = TORSO_P0_V_NECK_1 BREAK CASE DECL_P0_TSHIRT_12 eReturnItem = TORSO_P0_V_NECK_2 BREAK CASE DECL_P0_TSHIRT_13 eReturnItem = TORSO_P0_V_NECK_2 BREAK CASE DECL_P0_TSHIRT_14 eReturnItem = TORSO_P0_V_NECK_3 BREAK CASE DECL_P0_TSHIRT_15 eReturnItem = TORSO_P0_V_NECK_3 BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB // with this jbib // If viewing Michael's under shirt jbibs, equip an open shirt // if one is not already equipped IF (eItem >=JBIB_P0_VEST AND eItem <= JBIB_P0_VEST_5) IF NOT IS_PED_WEARING_VARIATION_OF_ITEM(mPed, COMP_TYPE_TORSO, TORSO_P0_OPEN_SHIRT, TORSO_P0_OPEN_SHIRT_15) CPRINTLN(DEBUG_PED_COMP, "Viewing under shirt. Open shirt not already equipped. Equip now.") eReturnItem =TORSO_P0_OPEN_SHIRT ENDIF ELSE // if viewing Michael's suit jbibs, equip a suit jacket // if one is not already equipped // (should only be possible to view these once Michael as bought one of the suit jackets) IF (eItem >=JBIB_P0_3_0 AND eItem <= JBIB_P0_3_9) OR (eItem >=JBIB_P0_4_0 AND eItem <= JBIB_P0_4_9) OR (eItem >=JBIB_P0_5_0 AND eItem <= JBIB_P0_5_15) IF NOT IS_PED_WEARING_VARIATION_OF_ITEM(mPed, COMP_TYPE_TORSO, TORSO_P0_SUIT_JACKET, TORSO_P0_SUIT_JACKET_15) CPRINTLN(DEBUG_PED_COMP, "Viewing suit jbib. Suit jacket not already equipped. Equip now.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P0_SUIT_JACKET, TORSO_P0_SUIT_JACKET_15) ENDIF ENDIF ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_DECL // This decal must be used... SWITCH eType CASE COMP_TYPE_TORSO // With this torso item... SWITCH eItem CASE TORSO_P0_EXTERMINATOR eReturnItem = DECL_P0_EXTERMINATOR BREAK // exterminator decal CASE TORSO_P0_HIGHWAY_PATROL eReturnItem = DECL_P0_HIGHWAY_PATROL BREAK // highway patrol decal CASE TORSO_P0_FIREMAN eReturnItem = DECL_P0_FIREMAN BREAK // fireman decal CASE TORSO_P0_HOODIE_1 eReturnItem = DECL_P0_AMMUNATION_0 BREAK // ammunation hoodies have decals CASE TORSO_P0_HOODIE_2 eReturnItem = DECL_P0_AMMUNATION_2 BREAK // ammunation hoodies have decals CASE TORSO_P0_HOODIE_3 eReturnItem = DECL_P0_AMMUNATION_1 BREAK // ammunation hoodies have decals CASE TORSO_P0_HOODIE_4 eReturnItem = DECL_P0_AMMUNATION_3 BREAK // ammunation hoodies have decals CASE TORSO_P0_HOODIE_5 eReturnItem = DECL_P0_AMMUNATION_5 BREAK // ammunation hoodies have decals CASE TORSO_P0_HOODIE_6 eReturnItem = DECL_P0_AMMUNATION_4 BREAK // ammunation hoodies have decals CASE TORSO_P0_HOODIE_12 eReturnItem = DECL_P0_SPORT_0 BREAK // sports hoodies have decals CASE TORSO_P0_HOODIE_7 eReturnItem = DECL_P0_SPORT_1 BREAK // sports hoodies have decals CASE TORSO_P0_HOODIE_11 eReturnItem = DECL_P0_SPORT_2 BREAK // sports hoodies have decals CASE TORSO_P0_HOODIE_13 eReturnItem = DECL_P0_SPORT_3 BREAK // sports hoodies have decals CASE TORSO_P0_HOODIE_8 eReturnItem = DECL_P0_SPORT_4 BREAK // sports hoodies have decals CASE TORSO_P0_HOODIE_14 eReturnItem = DECL_P0_SPORT_5 BREAK // sports hoodies have decals CASE TORSO_P0_HOODIE_15 eReturnItem = DECL_P0_SPORT_6 BREAK // sports hoodies have decals CASE TORSO_P0_YOGA_0 eReturnItem = DECL_P0_CROWN_LOGO BREAK // yoga tshirt has crown decal CASE TORSO_P0_GOLF eReturnItem = DECL_P0_T_SHIRT_LOGO_0 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_1 eReturnItem = DECL_P0_T_SHIRT_LOGO_1 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_2 eReturnItem = DECL_P0_T_SHIRT_LOGO_2 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_3 eReturnItem = DECL_P0_T_SHIRT_LOGO_3 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_4 eReturnItem = DECL_P0_T_SHIRT_LOGO_4 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_5 eReturnItem = DECL_P0_T_SHIRT_LOGO_5 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_6 eReturnItem = DECL_P0_T_SHIRT_LOGO_6 BREAK // polo shirts have decals CASE TORSO_P0_POLO_SHIRT_7 eReturnItem = DECL_P0_T_SHIRT_LOGO_7 BREAK // polo shirts have decals CASE TORSO_P0_V_NECK_4 eReturnItem = DECL_P0_TSHIRT_3 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_5 eReturnItem = DECL_P0_TSHIRT_2 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_6 eReturnItem = DECL_P0_TSHIRT_1 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_7 eReturnItem = DECL_P0_TSHIRT_0 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_8 eReturnItem = DECL_P0_TSHIRT_5 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_9 eReturnItem = DECL_P0_TSHIRT_7 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_10 eReturnItem = DECL_P0_TSHIRT_6 BREAK // tshirts with decals CASE TORSO_P0_V_NECK_11 eReturnItem = DECL_P0_TSHIRT_4 BREAK // tshirts with decals DEFAULT IF (eItem >= TORSO_P0_V_NECK_0 AND eItem <= TORSO_P0_V_NECK_3) // these torsos are forced on by the decals, so they work with multiple decals ELSE // other torsos have no decals eReturnItem = DECL_P0_NONE ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB // with this jbib // some of Michael's jbibs are available in the wardrobe, so need to clear decals when equipped IF eItem <> JBIB_P0_NONE eReturnItem = DECL_P0_NONE ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB // This JBIB must be used... IF eType = COMP_TYPE_TORSO // with this torso IF (eItem >= TORSO_P0_OPEN_SHIRT AND eItem <= TORSO_P0_OPEN_SHIRT_15) OR (eItem >= TORSO_P0_SUIT_JACKET AND eItem <= TORSO_P0_SUIT_JACKET_15) // open shirts + suit jackets handled in resriction rules ELSE // other tops have no jbib eReturnItem = JBIB_P0_NONE ENDIF ELIF eType = COMP_TYPE_DECL // with this decal // some of Michael's tshirts are listed as Decals in wardrobe, // so need to force jbibs off IF (eItem >= DECL_P0_TSHIRT_8 AND eItem <= DECL_P0_TSHIRT_15) eReturnItem = JBIB_P0_NONE ENDIF ENDIF BREAK ENDSWITCH BREAK CASE PLAYER_ONE // FRANKLIN SWITCH eTypeForReturn CASE COMP_TYPE_DECL // This decal must be used... SWITCH eType CASE COMP_TYPE_TORSO // With this torso item... SWITCH eItem CASE TORSO_P1_RED_BOILER eReturnItem = DECL_P1_EXTERMINATOR BREAK // exterminator decals CASE TORSO_P1_FIREMAN eReturnItem = DECL_P1_FIREMAN BREAK // fireman decals CASE TORSO_P1_AMMUN_HOODIE_1 eReturnItem = DECL_P1_AMMUNATION_0 BREAK // ammunation hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_2 eReturnItem = DECL_P1_AMMUNATION_2 BREAK // ammunation hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_3 eReturnItem = DECL_P1_AMMUNATION_1 BREAK // ammunation hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_4 eReturnItem = DECL_P1_AMMUNATION_3 BREAK // ammunation hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_5 eReturnItem = DECL_P1_AMMUNATION_5 BREAK // ammunation hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_6 eReturnItem = DECL_P1_AMMUNATION_4 BREAK // ammunation hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_12 eReturnItem = DECL_P1_SPORTS_0 BREAK // sports hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_7 eReturnItem = DECL_P1_SPORTS_1 BREAK // sports hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_11 eReturnItem = DECL_P1_SPORTS_2 BREAK // sports hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_13 eReturnItem = DECL_P1_SPORTS_3 BREAK // sports hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_8 eReturnItem = DECL_P1_SPORTS_4 BREAK // sports hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_14 eReturnItem = DECL_P1_SPORTS_5 BREAK // sports hoodies have decals CASE TORSO_P1_AMMUN_HOODIE_15 eReturnItem = DECL_P1_SPORTS_6 BREAK // sports hoodies have decals CASE TORSO_P1_VARSITY eReturnItem = DECL_P1_VARSITY_0 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_1 eReturnItem = DECL_P1_VARSITY_1 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_2 eReturnItem = DECL_P1_VARSITY_2 BREAK // varisty jacket shave decals CASE TORSO_P1_VARSITY_3 eReturnItem = DECL_P1_VARSITY_3 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_4 eReturnItem = DECL_P1_VARSITY_4 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_5 eReturnItem = DECL_P1_VARSITY_5 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_6 eReturnItem = DECL_P1_VARSITY_6 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_7 eReturnItem = DECL_P1_VARSITY_7 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_8 eReturnItem = DECL_P1_VARSITY_8 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_9 eReturnItem = DECL_P1_VARSITY_9 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_10 eReturnItem = DECL_P1_UPTOWN_B BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_11 eReturnItem = DECL_P1_VARSITY_11 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_12 eReturnItem = DECL_P1_VARSITY_12 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_13 eReturnItem = DECL_P1_VARSITY_13 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_14 eReturnItem = DECL_P1_VARSITY_14 BREAK // varisty jackets have decals CASE TORSO_P1_VARSITY_15 eReturnItem = DECL_P1_VARSITY_15 BREAK // varisty jackets have decals CASE TORSO_P1_CARDIGAN_0 eReturnItem = DECL_P1_CARDIGAN_0 BREAK // cardigans have decals CASE TORSO_P1_CARDIGAN_1 eReturnItem = DECL_P1_CARDIGAN_1 BREAK // cardigans have decals CASE TORSO_P1_CARDIGAN_2 eReturnItem = DECL_P1_CARDIGAN_2 BREAK // cardigans have decals CASE TORSO_P1_CARDIGAN_3 eReturnItem = DECL_P1_CARDIGAN_3 BREAK // cardigans have decals CASE TORSO_P1_CARDIGAN_4 eReturnItem = DECL_P1_CARDIGAN_4 BREAK // cardigans have decals CASE TORSO_P1_CARDIGAN_5 eReturnItem = DECL_P1_CARDIGAN_5 BREAK // cardigans have decals CASE TORSO_P1_CARDIGAN_6 eReturnItem = DECL_P1_CARDIGAN_6 BREAK // cardigans have decals CASE TORSO_P1_BASKETBALL_0 eReturnItem = DECL_P1_BASKETBALL_0 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_1 eReturnItem = DECL_P1_BASKETBALL_1 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_2 eReturnItem = DECL_P1_BASKETBALL_2 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_3 eReturnItem = DECL_P1_BASKETBALL_3 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_4 eReturnItem = DECL_P1_BASKETBALL_4 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_5 eReturnItem = DECL_P1_BASKETBALL_5 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_6 eReturnItem = DECL_P1_BASKETBALL_6 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_7 eReturnItem = DECL_P1_BASKETBALL_7 BREAK // basketball tops have decals CASE TORSO_P1_BASKETBALL_8 eReturnItem = DECL_P1_UPTOWN_A BREAK // basketball tops have decals DEFAULT eReturnItem = DECL_P1_NONE BREAK // other torsos have no decals ENDSWITCH BREAK CASE COMP_TYPE_JBIB // with this jbib // some of Franklin's jbibs are available in the wardrobe, so need to clear decals when equipped IF eItem <> JBIB_P1_NONE eReturnItem = DECL_P1_NONE ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_TORSO // This torso must be used... SWITCH eType CASE COMP_TYPE_JBIB // With this jbib item... // if viewing Franklin's casual jacket jbibs, equip a casual jacket // if one is not already equipped // (should only be possible to view these once Franklin as bought one of the casual jackets) IF (eItem >=JBIB_P1_TSHIRT_0 AND eItem <= JBIB_P1_TSHIRT_15) IF NOT IS_PED_WEARING_VARIATION_OF_ITEM(mPed, COMP_TYPE_TORSO, TORSO_P1_JACKET_0, TORSO_P1_JACKET_13) CPRINTLN(DEBUG_PED_COMP, "Viewing casual jacket jbib. Casual jacket not already equipped. Equip now.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P1_JACKET_0, TORSO_P1_JACKET_13) ENDIF // if viewing Franklin's waistcoat collar jbibs, equip a waistcoat // if one is not already equipped // (should only be possible to view these once Franklin as bought one of the waistcoats) ELIF (eItem >=JBIB_P1_COLLAR_A AND eItem <= JBIB_P1_COLLAR_A_3) OR (eItem >=JBIB_P1_COLLAR_B AND eItem <= JBIB_P1_COLLAR_B_3) IF NOT IS_PED_WEARING_VARIATION_OF_ITEM(mPed, COMP_TYPE_TORSO, TORSO_P1_WAISTCOAT, TORSO_P1_WAISTCOAT_15) // collar needs to match shirt IF eItem = JBIB_P1_COLLAR_A OR eItem = JBIB_P1_COLLAR_B CPRINTLN(DEBUG_PED_COMP, "Viewing waistcoat collar jbib. Waistcoat not already equipped (white shirt). Equip now.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P1_WAISTCOAT, TORSO_P1_WAISTCOAT_3) ELIF eItem = JBIB_P1_COLLAR_A_1 OR eItem = JBIB_P1_COLLAR_B_1 CPRINTLN(DEBUG_PED_COMP, "Viewing waistcoat collar jbib. Waistcoat not already equipped (gray shirt). Equip now.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P1_WAISTCOAT_4, TORSO_P1_WAISTCOAT_7) ELIF eItem = JBIB_P1_COLLAR_A_2 OR eItem = JBIB_P1_COLLAR_B_2 CPRINTLN(DEBUG_PED_COMP, "Viewing waistcoat collar jbib. Waistcoat not already equipped (blue shirt). Equip now.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P1_WAISTCOAT_8, TORSO_P1_WAISTCOAT_11) ELIF eItem = JBIB_P1_COLLAR_A_3 OR eItem = JBIB_P1_COLLAR_B_3 CPRINTLN(DEBUG_PED_COMP, "Viewing waistcoat collar jbib. Waistcoat not already equipped (silver shirt). Equip now.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P1_WAISTCOAT_12, TORSO_P1_WAISTCOAT_15) ENDIF ENDIF // if viewing Franklin's full shirt / full waistcoat jbibs, equip a suit jacket // if one is not already equipped // (should only be possible to view these once Franklin as bought one of the jackets) ELIF eItem =JBIB_P1_SHIRT_A OR eItem =JBIB_P1_SHIRT_B IF NOT IS_PED_WEARING_VARIATION_OF_ITEM(mPed, COMP_TYPE_TORSO, TORSO_P1_SUIT, TORSO_P1_SUIT_15) AND NOT IS_PED_WEARING_VARIATION_OF_ITEM(mPed, COMP_TYPE_TORSO, TORSO_P1_3PCSUIT, TORSO_P1_3PCSUIT_15) CPRINTLN(DEBUG_PED_COMP, "Viewing full shirt / full waistcoat jbib.") eReturnItem = GET_ACQUIRED_VARIAITON_OF_ITEM_SP(eModel, COMP_TYPE_TORSO, TORSO_P1_SUIT, TORSO_P1_SUIT_15) ENDIF ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL // This special item must be used... IF eType = COMP_TYPE_JBIB // with this jbib OR eType = COMP_TYPE_TORSO // with this torso PED_COMP_NAME_ENUM eSpecial, eTorso, eJbib, eNewTie IF eType = COMP_TYPE_JBIB eJbib = eItem eTorso = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_TORSO) ELIF eType = COMP_TYPE_TORSO // as the torso-special requisite happens before torso-jbib // we need to do the tie check using what the jbib will be // rather than what it currently is!! eTorso = eItem eJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) eJbib = GET_COLLAR_JBIB(eModel, eTorso, eJbib, FALSE) ENDIF eSpecial = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) IF (eJbib >= JBIB_P1_COLLAR_B AND eJbib <= JBIB_P1_COLLAR_B_3) OR (eJbib >= JBIB_P1_WAISTCOAT_B AND eJbib <= JBIB_P1_WAISTCOAT_B_15) OR (eJbib >= JBIB_P1_SHIRT_B AND eJbib <= JBIB_P1_SHIRT_B_1) // force correct tie length IF NOT DO_TIE_CHECK(PLAYER_ONE, eSpecial, eJbib, eTorso, eNewTie) IF eNewTie <> DUMMY_PED_COMP eReturnItem = eNewTie ENDIF ENDIF ELSE IF (eSpecial >= SPECIAL_P1_TIE_SHORT AND eSpecial <= SPECIAL_P1_TIE_SHORT_15) OR (eSpecial >= SPECIAL_P1_TIE_MEDIUM AND eSpecial <= SPECIAL_P1_TIE_MEDIUM_15) OR (eSpecial >= SPECIAL_P1_TIE_LONG AND eSpecial <= SPECIAL_P1_TIE_LONG_15) CPRINTLN(DEBUG_PED_COMP, "Can't wear ties with open collar jbibs") eReturnItem = SPECIAL_P1_DUMMY ENDIF ENDIF ENDIF BREAK CASE COMP_TYPE_JBIB // This JBIB must be used... IF eType = COMP_TYPE_TORSO // with this torso IF (eItem >= TORSO_P1_JACKET_0 AND eItem <= TORSO_P1_JACKET_13) // Casual jackets handled in restriction rules ELIF (eItem >= TORSO_P1_SUIT AND eItem <= TORSO_P1_SUIT_15) OR (eItem >= TORSO_P1_3PCSUIT AND eItem <= TORSO_P1_3PCSUIT_15) OR (eItem >= TORSO_P1_WAISTCOAT AND eItem <= TORSO_P1_WAISTCOAT_15) // suit jackets + waistcoats // pick the collar jbib based on whether we are wearing a tie. // get the current special + jbibs item, so we can pick collar PED_COMP_NAME_ENUM eSpecial, eJbib eSpecial = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) eJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) IF (eSpecial >= SPECIAL_P1_TIE_SHORT AND eSpecial <= SPECIAL_P1_TIE_SHORT_15) OR (eSpecial >= SPECIAL_P1_TIE_MEDIUM AND eSpecial <= SPECIAL_P1_TIE_MEDIUM_15) OR (eSpecial >= SPECIAL_P1_TIE_LONG AND eSpecial <= SPECIAL_P1_TIE_LONG_15) // player is wearing a tie- closed collar CPRINTLN(DEBUG_PED_COMP, "Player wearing a tie- force closed collar.") eReturnItem = GET_COLLAR_JBIB(eModel, eItem, eJbib, FALSE) ELSE // player is not wearing a tie- open collar CPRINTLN(DEBUG_PED_COMP, "Player not wearing tie: force open collar") eReturnItem = GET_COLLAR_JBIB(eModel, eItem, eJbib, TRUE) ENDIF ELSE IF (eItem >= TORSO_P1_GOLF AND eItem <= TORSO_P1_SWEATER_15) eReturnItem = JBIB_P1_POLO_SHIRT_1 // golf sweaters use same jbib ELIF (eItem >= TORSO_P1_WOOL_PEACOAT AND eItem <= TORSO_P1_WOOL_PEACOAT_3) eReturnItem = JBIB_P1_HOODIE_1 // pea coats use same jbib ELSE // other torso don't use jbibs eReturnItem = JBIB_P1_NONE ENDIF ENDIF ELIF eType = COMP_TYPE_SPECIAL // with this special item IF (eItem >= SPECIAL_P1_TIE_SHORT AND eItem <= SPECIAL_P1_TIE_SHORT_15) OR (eItem >= SPECIAL_P1_TIE_MEDIUM AND eItem <= SPECIAL_P1_TIE_MEDIUM_15) OR (eItem >= SPECIAL_P1_TIE_LONG AND eItem <= SPECIAL_P1_TIE_LONG_15) // ties can only be worn with closed collar jbibs PED_COMP_NAME_ENUM eJbib eJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) CPRINTLN(DEBUG_PED_COMP, "Tie forcing jbib to closed collar version.") eReturnItem = GET_COLLAR_JBIB(eModel, DUMMY_PED_COMP, eJbib, FALSE) ENDIF ENDIF BREAK ENDSWITCH BREAK CASE PLAYER_TWO // TREVOR SWITCH eTypeForReturn CASE COMP_TYPE_DECL // This decal must be used... SWITCH eType CASE COMP_TYPE_TORSO // With this torso item... SWITCH eItem CASE TORSO_P2_HIGHWAY_PATROL eReturnItem = DECL_P2_HIGHWAY_PATROL BREAK // highway patrol decal CASE TORSO_P2_HOODIE_2 eReturnItem = DECL_P2_AMMUNATION_0 BREAK // ammunation hoodies have decals CASE TORSO_P2_HOODIE_3 eReturnItem = DECL_P2_AMMUNATION_1 BREAK // ammunation hoodies have decals CASE TORSO_P2_HOODIE_4 eReturnItem = DECL_P2_AMMUNATION_2 BREAK // ammunation hoodies have decals CASE TORSO_P2_HOODIE_5 eReturnItem = DECL_P2_AMMUNATION_5 BREAK // ammunation hoodies have decals CASE TORSO_P2_HOODIE_6 eReturnItem = DECL_P2_AMMUNATION_4 BREAK // ammunation hoodies have decals CASE TORSO_P2_HOODIE_7 eReturnItem = DECL_P2_AMMUNATION_3 BREAK // ammunation hoodies have decals CASE TORSO_P2_HOODIE_13 eReturnItem = DECL_P2_SPORTS_0 BREAK // sports hoodies have decals CASE TORSO_P2_HOODIE_8 eReturnItem = DECL_P2_SPORTS_1 BREAK // sports hoodies have decals CASE TORSO_P2_HOODIE_12 eReturnItem = DECL_P2_SPORTS_2 BREAK // sports hoodies have decals CASE TORSO_P2_HOODIE_14 eReturnItem = DECL_P2_SPORTS_3 BREAK // sports hoodies have decals CASE TORSO_P2_HOODIE_9 eReturnItem = DECL_P2_SPORTS_4 BREAK // sports hoodies have decals CASE TORSO_P2_HOODIE_15 eReturnItem = DECL_P2_SPORTS_5 BREAK // sports hoodies have decals CASE TORSO_P2_BOWLING_SHIRT eReturnItem = DECL_P2_BOWLING_0 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_1 eReturnItem = DECL_P2_BOWLING_2 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_2 eReturnItem = DECL_P2_BOWLING_3 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_4 eReturnItem = DECL_P2_BOWLING_1 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_6 eReturnItem = DECL_P2_BOWLING_7 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_8 eReturnItem = DECL_P2_BOWLING_6 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_10 eReturnItem = DECL_P2_BOWLING_8 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_11 eReturnItem = DECL_P2_BOWLING_5 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_14 eReturnItem = DECL_P2_BOWLING_4 BREAK // bowling shirts CASE TORSO_P2_BOWLING_SHIRT_15 eReturnItem = DECL_P2_BOWLING_9 BREAK // bowling shirts DEFAULT eReturnItem = DECL_P2_NONE BREAK // other torsos have no decals ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF //IF eReturnItem <> DUMMY_PED_COMP // found a requisite // CPRINTLN(DEBUG_PED_COMP, "Requisite found: eType: ", GET_PED_COMP_TYPE_STRING(eType), " eTypeForReturn: ", GET_PED_COMP_TYPE_STRING(eTypeForReturn), " eReturnItem: ", eReturnItem) //ENDIF UNUSED_PARAMETER(anchor) RETURN eReturnItem ENDFUNC FUNC TATTOO_NAME_ENUM GET_TORSO_DECAL_TATTOO_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem #IF USE_TU_CHANGES , INT iMultiDecalHash = 0 #ENDIF) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_JBIB IF eItem = JBIB_FMM_0_1 RETURN TATTOO_MP_FM_MTD_1 ELIF eItem = JBIB_FMM_0_3 RETURN TATTOO_MP_FM_MTD_2 ELIF eItem = JBIB_FMM_0_5 RETURN TATTOO_MP_FM_MTD_3 ELIF eItem = JBIB_FMM_0_7 RETURN TATTOO_MP_FM_MTD_4 ELIF eItem = JBIB_FMM_0_4 RETURN TATTOO_MP_FM_MTD_5 ELIF eItem = JBIB_FMM_0_8 RETURN TATTOO_MP_FM_MTD_6 ELIF eItem = JBIB_FMM_0_11 RETURN TATTOO_MP_FM_MTD_9 ELIF eItem = JBIB_FMM_1_3 RETURN TATTOO_MP_FM_MTD_13 ELIF eItem = JBIB_FMM_1_5 RETURN TATTOO_MP_FM_MTD_14 ELIF eItem = JBIB_FMM_1_6 RETURN TATTOO_MP_FM_MTD_15 ELIF eItem = JBIB_FMM_1_8 RETURN TATTOO_MP_FM_MTD_16 ELIF eItem = JBIB_FMM_1_4 RETURN TATTOO_MP_FM_MTD_19 ELIF eItem = JBIB_FMM_1_14 RETURN TATTOO_MP_FM_MTD_20 //Unlocked tattoo's ELIF eItem = JBIB_FMM_1_7 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) RETURN TSHIRT_TRANS_MP_FM_ROCKSTAR ENDIF ELIF eItem = JBIB_FMM_1_1 RETURN TSHIRT_TRANS_MP_FM_LSBELLE ELIF eItem = JBIB_FMM_1_12 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) RETURN TSHIRT_TRANS_MP_FM_REDSKULL ENDIF ELIF eItem = JBIB_FMM_2_9 RETURN TATTOO_MP_FM_MTD_36 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT)) INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, hash = ", iRetNameHash) RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, TATTOO_MP_FM) ELSE // Forced tattoo item PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, value = ", iRetCompEnum) RETURN INT_TO_ENUM(TATTOO_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) // No decal hash specified so use the last stored hash. IF iMultiDecalHash = 0 iMultiDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH) ENDIF RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iMultiDecalHash, TATTOO_MP_FM) ENDIF ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_SPECIAL IF eItem = SPECIAL_FMM_0_1 RETURN TATTOO_MP_FM_MTD_1 ELIF eItem = SPECIAL_FMM_0_3 RETURN TATTOO_MP_FM_MTD_2 ELIF eItem = SPECIAL_FMM_0_5 RETURN TATTOO_MP_FM_MTD_3 ELIF eItem = SPECIAL_FMM_0_7 RETURN TATTOO_MP_FM_MTD_4 ELIF eItem = SPECIAL_FMM_0_4 RETURN TATTOO_MP_FM_MTD_5 ELIF eItem = SPECIAL_FMM_0_8 RETURN TATTOO_MP_FM_MTD_6 ELIF eItem = SPECIAL_FMM_0_11 RETURN TATTOO_MP_FM_MTD_9 //Unlocked tattoo's ELIF eItem = SPECIAL_FMM_1_7 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) RETURN TSHIRT_TRANS_MP_FM_ROCKSTAR ENDIF ELIF eItem = SPECIAL_FMM_1_1 RETURN TSHIRT_TRANS_MP_FM_LSBELLE ELIF eItem = SPECIAL_FMM_1_12 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) RETURN TSHIRT_TRANS_MP_FM_REDSKULL ENDIF ELIF eItem = SPECIAL_FMM_2_1 RETURN TATTOO_MP_FM_MTD_1 ELIF eItem = SPECIAL_FMM_2_3 RETURN TATTOO_MP_FM_MTD_2 ELIF eItem = SPECIAL_FMM_2_5 RETURN TATTOO_MP_FM_MTD_3 ELIF eItem = SPECIAL_FMM_2_7 RETURN TATTOO_MP_FM_MTD_4 ELIF eItem = SPECIAL_FMM_2_4 RETURN TATTOO_MP_FM_MTD_5 ELIF eItem = SPECIAL_FMM_2_8 RETURN TATTOO_MP_FM_MTD_6 ELIF eItem = SPECIAL_FMM_2_11 RETURN TATTOO_MP_FM_MTD_9 ELIF eItem = SPECIAL_FMM_1_3 RETURN TATTOO_MP_FM_MTD_13 ELIF eItem = SPECIAL_FMM_1_5 RETURN TATTOO_MP_FM_MTD_14 ELIF eItem = SPECIAL_FMM_1_6 RETURN TATTOO_MP_FM_MTD_15 ELIF eItem = SPECIAL_FMM_1_8 RETURN TATTOO_MP_FM_MTD_16 ELIF eItem = SPECIAL_FMM_1_4 RETURN TATTOO_MP_FM_MTD_19 ELIF eItem = SPECIAL_FMM_1_14 RETURN TATTOO_MP_FM_MTD_20 ELIF eItem = SPECIAL_FMM_14_3 RETURN TATTOO_MP_FM_MTD_13 ELIF eItem = SPECIAL_FMM_14_5 RETURN TATTOO_MP_FM_MTD_14 ELIF eItem = SPECIAL_FMM_14_6 RETURN TATTOO_MP_FM_MTD_15 ELIF eItem = SPECIAL_FMM_14_8 RETURN TATTOO_MP_FM_MTD_16 ELIF eItem = SPECIAL_FMM_14_4 RETURN TATTOO_MP_FM_MTD_19 ELIF eItem = SPECIAL_FMM_14_14 RETURN TATTOO_MP_FM_MTD_20 //Unlocked tattoo's ELIF eItem = SPECIAL_FMM_14_7 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) RETURN TSHIRT_TRANS_MP_FM_ROCKSTAR ENDIF ELIF eItem = SPECIAL_FMM_14_1 RETURN TSHIRT_TRANS_MP_FM_LSBELLE ELIF eItem = SPECIAL_FMM_14_12 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) RETURN TSHIRT_TRANS_MP_FM_REDSKULL ENDIF #IF USE_TU_CHANGES ELIF eItem >= SPECIAL_FMM_DLC // Look up the forced components for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_SPECIAL, 3) IF iItemNameHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT)) INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, hash = ", iRetNameHash) RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, TATTOO_MP_FM) ELSE // Forced tattoo item PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, value = ", iRetCompEnum) RETURN INT_TO_ENUM(TATTOO_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) // No decal hash specified so use the last stored hash. IF iMultiDecalHash = 0 iMultiDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH) ENDIF RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iMultiDecalHash, TATTOO_MP_FM) ENDIF ENDIF #ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_JBIB //IF eItem = JBIB_FMF_0_0 RETURN TATTOO_MP_FM_FTD_27 // not used as now crew tshirt IF eItem = JBIB_FMF_0_1 RETURN TATTOO_MP_FM_FTD_34 ELIF eItem = JBIB_FMF_0_2 RETURN TATTOO_MP_FM_FTD_48 //Unlocked tattoo's ELIF eItem = JBIB_FMF_0_4 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) RETURN TSHIRT_TRANS_MP_FM_ROCKSTAR ENDIF ELIF eItem = JBIB_FMF_0_7 RETURN TSHIRT_TRANS_MP_FM_LSBELLE ELIF eItem = JBIB_FMF_0_9 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) RETURN TSHIRT_TRANS_MP_FM_REDSKULL ENDIF ELIF eItem = JBIB_FMF_2_0 RETURN TATTOO_MP_FM_FTD_52 ELIF eItem = JBIB_FMF_2_1 RETURN TATTOO_MP_FM_FTD_53 ELIF eItem = JBIB_FMF_2_2 RETURN TATTOO_MP_FM_FTD_54 ELIF eItem = JBIB_FMF_2_3 RETURN TATTOO_MP_FM_FTD_55 ELIF eItem = JBIB_FMF_2_4 RETURN TATTOO_MP_FM_FTD_56 ELIF eItem = JBIB_FMF_3_14 RETURN TATTOO_MP_FM_FTD_36 ELIF eItem = JBIB_FMF_3_15 RETURN TATTOO_MP_FM_FTD_58 ELIF eItem = JBIB_FMF_11_10 RETURN TATTOO_MP_FM_FTD_67 ELIF eItem = JBIB_FMF_11_11 RETURN TATTOO_MP_FM_FTD_68 ELIF eItem = JBIB_FMF_11_15 RETURN TATTOO_MP_FM_FTD_28 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT)) INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, hash = ", iRetNameHash) RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, TATTOO_MP_FM_F) ELSE // Forced tattoo item PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, value = ", iRetCompEnum) RETURN INT_TO_ENUM(TATTOO_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) // No decal hash specified so use the last stored hash. IF iMultiDecalHash = 0 iMultiDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH) ENDIF RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iMultiDecalHash, TATTOO_MP_FM_F) ENDIF ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_SPECIAL //IF eItem = SPECIAL_FMF_0_0 RETURN TATTOO_MP_FM_FTD_27 not used as now crew tshirt IF eItem = SPECIAL_FMF_0_1 RETURN TATTOO_MP_FM_FTD_34 ELIF eItem = SPECIAL_FMF_0_2 RETURN TATTOO_MP_FM_FTD_48 //Unlocked tattoo's ELIF eItem = SPECIAL_FMF_0_4 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) RETURN TSHIRT_TRANS_MP_FM_ROCKSTAR ENDIF ELIF eItem = SPECIAL_FMF_0_7 RETURN TSHIRT_TRANS_MP_FM_LSBELLE ELIF eItem = SPECIAL_FMF_0_9 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) RETURN TSHIRT_TRANS_MP_FM_REDSKULL ENDIF ELIF eItem = SPECIAL_FMF_1_1 RETURN TATTOO_MP_FM_FTD_34 ELIF eItem = SPECIAL_FMF_1_2 RETURN TATTOO_MP_FM_FTD_48 //Unlocked tattoo's ELIF eItem = SPECIAL_FMF_1_4 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR) RETURN TSHIRT_TRANS_MP_FM_ROCKSTAR ENDIF ELIF eItem = SPECIAL_FMF_1_7 RETURN TSHIRT_TRANS_MP_FM_LSBELLE ELIF eItem = SPECIAL_FMF_1_9 IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL) RETURN TSHIRT_TRANS_MP_FM_REDSKULL ENDIF // jbib 2 can't be worn under jackets // jbib 3 can't be worn under jackets ELIF eItem = SPECIAL_FMF_11_10 RETURN TATTOO_MP_FM_FTD_67 ELIF eItem = SPECIAL_FMF_11_11 RETURN TATTOO_MP_FM_FTD_68 ELIF eItem = SPECIAL_FMF_11_15 RETURN TATTOO_MP_FM_FTD_28 #IF USE_TU_CHANGES ELIF eItem >= SPECIAL_FMF_DLC // Look up the forced components for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_SPECIAL, 4) IF iItemNameHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT)) INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, hash = ", iRetNameHash) RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, TATTOO_MP_FM_F) ELSE // Forced tattoo item PRINTLN("GET_TORSO_DECAL_TATTOO_MP - Found forced decl for DLC shirt, value = ", iRetCompEnum) RETURN INT_TO_ENUM(TATTOO_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) // No decal hash specified so use the last stored hash. IF iMultiDecalHash = 0 iMultiDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH) ENDIF RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iMultiDecalHash, TATTOO_MP_FM_F) ENDIF ENDIF #ENDIF ENDIF ENDIF ENDIF RETURN INVALID_TATTOO ENDFUNC /// PURPOSE: Returns the enum of the hair overlay tattoo that should be used with this hair item (MP only) FUNC TATTOO_NAME_ENUM GET_HAIR_OVERLAY(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eItem) IF ePedModel = MP_M_FREEMODE_01 // male hair overlays IF eItem = HAIR_FMM_0_0 #IF USE_TU_CHANGES RETURN TATTOO_MP_FM_HO_FUZZ #ENDIF RETURN INVALID_TATTOO // doesn't use one ELIF eItem = HAIR_FMM_1_0 RETURN TATTOO_MP_FM_MHO_1A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_001"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_1A ELIF eItem = HAIR_FMM_1_1 RETURN TATTOO_MP_FM_MHO_1A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_001"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_1B ELIF eItem = HAIR_FMM_1_2 RETURN TATTOO_MP_FM_MHO_1A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_001"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_1C ELIF eItem = HAIR_FMM_1_3 RETURN TATTOO_MP_FM_MHO_1A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_001"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_1D ELIF eItem = HAIR_FMM_1_4 RETURN TATTOO_MP_FM_MHO_1A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_001"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_1E ELIF eItem = HAIR_FMM_1_5 RETURN TATTOO_MP_FM_MHO_1A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_001"), TATTOO_MP_FM) // INVALID_TATTOO // doesn't use one ELIF eItem = HAIR_FMM_2_0 RETURN TATTOO_MP_FM_MHO_1B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_002"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_2_1 RETURN TATTOO_MP_FM_MHO_1B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_002"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_2_2 RETURN TATTOO_MP_FM_MHO_1B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_002"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_2_3 RETURN TATTOO_MP_FM_MHO_1B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_002"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_2_4 RETURN TATTOO_MP_FM_MHO_1B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_002"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_2_5 RETURN TATTOO_MP_FM_MHO_1B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_002"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_3_0 RETURN TATTOO_MP_FM_MHO_1C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_003"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_3A ELIF eItem = HAIR_FMM_3_1 RETURN TATTOO_MP_FM_MHO_1C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_003"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_3B ELIF eItem = HAIR_FMM_3_2 RETURN TATTOO_MP_FM_MHO_1C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_003"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_3C ELIF eItem = HAIR_FMM_3_3 RETURN TATTOO_MP_FM_MHO_1C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_003"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_3D ELIF eItem = HAIR_FMM_3_4 RETURN TATTOO_MP_FM_MHO_1C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_003"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_3E ELIF eItem = HAIR_FMM_3_5 RETURN TATTOO_MP_FM_MHO_1C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_003"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_3E ELIF eItem = HAIR_FMM_4_0 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_4_1 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_4_2 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_4_3 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_4_4 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_4_5 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_4_6 RETURN TATTOO_MP_FM_MHO_1D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_004"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_5_0 RETURN TATTOO_MP_FM_MHO_1E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_005"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_5_1 RETURN TATTOO_MP_FM_MHO_1E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_005"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_5_2 RETURN TATTOO_MP_FM_MHO_1E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_005"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_5_3 RETURN TATTOO_MP_FM_MHO_1E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_005"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_5_4 RETURN TATTOO_MP_FM_MHO_1E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_005"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_5_5 RETURN TATTOO_MP_FM_MHO_1E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_005"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_6_0 RETURN TATTOO_MP_FM_MHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_006"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_6A ELIF eItem = HAIR_FMM_6_1 RETURN TATTOO_MP_FM_MHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_006"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_6B ELIF eItem = HAIR_FMM_6_2 RETURN TATTOO_MP_FM_MHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_006"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_6C ELIF eItem = HAIR_FMM_6_3 RETURN TATTOO_MP_FM_MHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_006"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_6D ELIF eItem = HAIR_FMM_6_4 RETURN TATTOO_MP_FM_MHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_006"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_6E ELIF eItem = HAIR_FMM_6_5 RETURN TATTOO_MP_FM_MHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_006"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_6E ELIF eItem = HAIR_FMM_7_0 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_7_1 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_7_2 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_7_3 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_7_4 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_7_5 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_7_6 RETURN TATTOO_MP_FM_MHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_007"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_8_0 RETURN TATTOO_MP_FM_MHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_008"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_8A ELIF eItem = HAIR_FMM_8_1 RETURN TATTOO_MP_FM_MHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_008"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_8B ELIF eItem = HAIR_FMM_8_2 RETURN TATTOO_MP_FM_MHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_008"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_8C ELIF eItem = HAIR_FMM_8_3 RETURN TATTOO_MP_FM_MHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_008"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_8D ELIF eItem = HAIR_FMM_8_4 RETURN TATTOO_MP_FM_MHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_008"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_8E ELIF eItem = HAIR_FMM_9_0 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_9_1 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_9_2 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_9_3 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_9_4 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_9_5 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_9_6 RETURN TATTOO_MP_FM_MHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_009"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_10_0 RETURN TATTOO_MP_FM_MHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_010"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_10_1 RETURN TATTOO_MP_FM_MHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_010"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_10_2 RETURN TATTOO_MP_FM_MHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_010"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_10_3 RETURN TATTOO_MP_FM_MHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_010"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_10_4 RETURN TATTOO_MP_FM_MHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_010"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_10_5 RETURN TATTOO_MP_FM_MHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_010"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_11_0 RETURN TATTOO_MP_FM_MHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_011"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_11_1 RETURN TATTOO_MP_FM_MHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_011"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_11_2 RETURN TATTOO_MP_FM_MHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_011"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_11_3 RETURN TATTOO_MP_FM_MHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_011"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_11_4 RETURN TATTOO_MP_FM_MHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_011"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_11_5 RETURN TATTOO_MP_FM_MHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_011"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_12_0 RETURN TATTOO_MP_FM_MHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_012"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_12_1 RETURN TATTOO_MP_FM_MHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_012"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_12_2 RETURN TATTOO_MP_FM_MHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_012"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_12_3 RETURN TATTOO_MP_FM_MHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_012"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_12_4 RETURN TATTOO_MP_FM_MHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_012"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_13_0 RETURN TATTOO_MP_FM_MHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_013"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_13_1 RETURN TATTOO_MP_FM_MHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_013"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_13_2 RETURN TATTOO_MP_FM_MHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_013"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_13_3 RETURN TATTOO_MP_FM_MHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_013"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_13_4 RETURN TATTOO_MP_FM_MHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_013"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_13_5 RETURN TATTOO_MP_FM_MHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_013"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_14_0 RETURN TATTOO_MP_FM_MHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_014"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_14_1 RETURN TATTOO_MP_FM_MHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_014"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_14_2 RETURN TATTOO_MP_FM_MHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_014"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_14_3 RETURN TATTOO_MP_FM_MHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_014"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_14_4 RETURN TATTOO_MP_FM_MHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_014"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_15_0 RETURN TATTOO_MP_FM_MHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_015"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_A ELIF eItem = HAIR_FMM_15_1 RETURN TATTOO_MP_FM_MHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_015"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_B ELIF eItem = HAIR_FMM_15_2 RETURN TATTOO_MP_FM_MHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_015"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_C ELIF eItem = HAIR_FMM_15_3 RETURN TATTOO_MP_FM_MHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_015"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_D ELIF eItem = HAIR_FMM_15_4 RETURN TATTOO_MP_FM_MHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_015"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E ELIF eItem = HAIR_FMM_15_5 RETURN TATTOO_MP_FM_MHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_M_Hair_015"), TATTOO_MP_FM) // TATTOO_MP_FM_MHO_LONG_E #IF USE_TU_CHANGES ELIF eItem >= HAIR_FMM_DLC // Look up the forced components for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_HAIR, 3) IF iItemNameHash != -1 SWITCH iItemNameHash CASE HASH("DLC_MP_BEACH_M_HAIR00") CASE HASH("DLC_MP_BEACH_M_HAIR01") CASE HASH("DLC_MP_BEACH_M_HAIR02") CASE HASH("DLC_MP_BEACH_M_HAIR03") CASE HASH("DLC_MP_BEACH_M_HAIR04") CASE HASH("DLC_MP_GR_M_HAIR_15_0") RETURN TATTOO_MP_FM_MHO_6A // iRetNameHash = HASH("NGBea_M_Hair_000") BREAK CASE HASH("DLC_MP_BEACH_M_HAIR05") CASE HASH("DLC_MP_BEACH_M_HAIR06") CASE HASH("DLC_MP_BEACH_M_HAIR07") CASE HASH("DLC_MP_BEACH_M_HAIR08") CASE HASH("DLC_MP_BEACH_M_HAIR09") CASE HASH("DLC_MP_GR_M_HAIR_16_0") RETURN TATTOO_MP_FM_MHO_6B // iRetNameHash = HASH("NGBea_M_Hair_001") BREAK CASE HASH("DLC_MP_BUSI_M_HAIR0_0") CASE HASH("DLC_MP_BUSI_M_HAIR0_1") CASE HASH("DLC_MP_BUSI_M_HAIR0_2") CASE HASH("DLC_MP_BUSI_M_HAIR0_3") CASE HASH("DLC_MP_BUSI_M_HAIR0_4") RETURN TATTOO_MP_FM_MHO_6C // iRetNameHash = HASH("NGBus_M_Hair_000") BREAK CASE HASH("DLC_MP_BUSI_M_HAIR1_0") CASE HASH("DLC_MP_BUSI_M_HAIR1_1") CASE HASH("DLC_MP_BUSI_M_HAIR1_2") CASE HASH("DLC_MP_BUSI_M_HAIR1_3") CASE HASH("DLC_MP_BUSI_M_HAIR1_4") RETURN TATTOO_MP_FM_MHO_6D // iRetNameHash = HASH("NGBus_M_Hair_001") BREAK CASE HASH("DLC_MP_HIPS_M_HAIR0_0") CASE HASH("DLC_MP_HIPS_M_HAIR0_1") CASE HASH("DLC_MP_HIPS_M_HAIR0_2") CASE HASH("DLC_MP_HIPS_M_HAIR0_3") CASE HASH("DLC_MP_HIPS_M_HAIR0_4") RETURN TATTOO_MP_FM_MHO_6E // iRetNameHash = HASH("NGHip_M_Hair_000") BREAK CASE HASH("DLC_MP_HIPS_M_HAIR1_0") CASE HASH("DLC_MP_HIPS_M_HAIR1_1") CASE HASH("DLC_MP_HIPS_M_HAIR1_2") CASE HASH("DLC_MP_HIPS_M_HAIR1_3") CASE HASH("DLC_MP_HIPS_M_HAIR1_4") RETURN TATTOO_MP_FM_MHO_8A // iRetNameHash = HASH("NGHip_M_Hair_001") BREAK CASE HASH("CLO_IND_H_0_0") CASE HASH("CLO_IND_H_0_1") CASE HASH("CLO_IND_H_0_2") CASE HASH("CLO_IND_H_0_3") CASE HASH("CLO_IND_H_0_4") RETURN TATTOO_MP_FM_MHO_8B // iRetNameHash = HASH("NGInd_M_Hair_000") BREAK ENDSWITCH INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) // If we have a DLC tattoo... IF iRetType = ENUM_TO_INT(PED_COMP_DECL) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, TATTOO_MP_FM) ELSE RETURN INT_TO_ENUM(TATTOO_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 // female hair overlays IF eItem = HAIR_FMF_0_0 #IF USE_TU_CHANGES RETURN TATTOO_MP_FM_HO_FUZZ #ENDIF RETURN INVALID_TATTOO // doesn't use one ELIF eItem = HAIR_FMF_1_0 RETURN TATTOO_MP_FM_FHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_001"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_1_1 RETURN TATTOO_MP_FM_FHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_001"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_1_2 RETURN TATTOO_MP_FM_FHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_001"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_1_3 RETURN TATTOO_MP_FM_FHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_001"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_1_4 RETURN TATTOO_MP_FM_FHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_001"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_1_5 RETURN TATTOO_MP_FM_FHO_LONG_A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_001"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_2_0 RETURN TATTOO_MP_FM_FHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_002"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_2_1 RETURN TATTOO_MP_FM_FHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_002"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_2_2 RETURN TATTOO_MP_FM_FHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_002"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_2_3 RETURN TATTOO_MP_FM_FHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_002"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_2_4 RETURN TATTOO_MP_FM_FHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_002"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_2_5 RETURN TATTOO_MP_FM_FHO_LONG_B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_002"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_3_0 RETURN TATTOO_MP_FM_FHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_003"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_3A ELIF eItem = HAIR_FMF_3_1 RETURN TATTOO_MP_FM_FHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_003"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_3B ELIF eItem = HAIR_FMF_3_2 RETURN TATTOO_MP_FM_FHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_003"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_3C ELIF eItem = HAIR_FMF_3_3 RETURN TATTOO_MP_FM_FHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_003"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_3D ELIF eItem = HAIR_FMF_3_4 RETURN TATTOO_MP_FM_FHO_LONG_C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_003"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_3E ELIF eItem = HAIR_FMF_4_0 RETURN TATTOO_MP_FM_FHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_004"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_4_1 RETURN TATTOO_MP_FM_FHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_004"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_4_2 RETURN TATTOO_MP_FM_FHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_004"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_4_3 RETURN TATTOO_MP_FM_FHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_004"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_4_4 RETURN TATTOO_MP_FM_FHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_004"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_4_5 RETURN TATTOO_MP_FM_FHO_LONG_D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_004"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_5_0 RETURN TATTOO_MP_FM_FHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_005"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_5A ELIF eItem = HAIR_FMF_5_1 RETURN TATTOO_MP_FM_FHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_005"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_5B ELIF eItem = HAIR_FMF_5_2 RETURN TATTOO_MP_FM_FHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_005"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_5C ELIF eItem = HAIR_FMF_5_3 RETURN TATTOO_MP_FM_FHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_005"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_5D ELIF eItem = HAIR_FMF_5_4 RETURN TATTOO_MP_FM_FHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_005"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_5E ELIF eItem = HAIR_FMF_5_5 RETURN TATTOO_MP_FM_FHO_LONG_E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_005"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_5E ELIF eItem = HAIR_FMF_6_0 RETURN TATTOO_MP_FM_FHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_006"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_6A ELIF eItem = HAIR_FMF_6_1 RETURN TATTOO_MP_FM_FHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_006"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_6B ELIF eItem = HAIR_FMF_6_2 RETURN TATTOO_MP_FM_FHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_006"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_6C ELIF eItem = HAIR_FMF_6_3 RETURN TATTOO_MP_FM_FHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_006"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_6D ELIF eItem = HAIR_FMF_6_4 RETURN TATTOO_MP_FM_FHO_3A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_006"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_6E ELIF eItem = HAIR_FMF_7_0 RETURN TATTOO_MP_FM_FHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_007"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_7_1 RETURN TATTOO_MP_FM_FHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_007"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_7_2 RETURN TATTOO_MP_FM_FHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_007"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_7_3 RETURN TATTOO_MP_FM_FHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_007"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_7_4 RETURN TATTOO_MP_FM_FHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_007"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_7_5 RETURN TATTOO_MP_FM_FHO_3B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_007"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_8_0 RETURN TATTOO_MP_FM_FHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_008"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_8_1 RETURN TATTOO_MP_FM_FHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_008"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_8_2 RETURN TATTOO_MP_FM_FHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_008"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_8_3 RETURN TATTOO_MP_FM_FHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_008"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_8_4 RETURN TATTOO_MP_FM_FHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_008"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_8_5 RETURN TATTOO_MP_FM_FHO_3C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_008"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_9_0 RETURN TATTOO_MP_FM_FHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_009"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_9_1 RETURN TATTOO_MP_FM_FHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_009"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_9_2 RETURN TATTOO_MP_FM_FHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_009"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_9_3 RETURN TATTOO_MP_FM_FHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_009"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_9_4 RETURN TATTOO_MP_FM_FHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_009"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_9_5 RETURN TATTOO_MP_FM_FHO_3D // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_009"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_10_0 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_10_1 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_10_2 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_10_3 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_10_4 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_10_5 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_10_6 RETURN TATTOO_MP_FM_FHO_3E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_010"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_11_0 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_11_1 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_11_2 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_11_3 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_11_4 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_11_5 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_11_6 RETURN TATTOO_MP_FM_FHO_5A // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_011"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_12_0 RETURN TATTOO_MP_FM_FHO_5B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_012"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_12_1 RETURN TATTOO_MP_FM_FHO_5B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_012"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_12_2 RETURN TATTOO_MP_FM_FHO_5B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_012"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_12_3 RETURN TATTOO_MP_FM_FHO_5B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_012"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_12_4 RETURN TATTOO_MP_FM_FHO_5B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_012"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_12_5 RETURN TATTOO_MP_FM_FHO_5B // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_012"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_13_0 RETURN TATTOO_MP_FM_FHO_5C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_013"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_13A ELIF eItem = HAIR_FMF_13_1 RETURN TATTOO_MP_FM_FHO_5C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_013"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_13B ELIF eItem = HAIR_FMF_13_2 RETURN TATTOO_MP_FM_FHO_5C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_013"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_13C ELIF eItem = HAIR_FMF_13_3 RETURN TATTOO_MP_FM_FHO_5C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_013"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_13D ELIF eItem = HAIR_FMF_13_4 RETURN TATTOO_MP_FM_FHO_5C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_013"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_13E ELIF eItem = HAIR_FMF_13_5 RETURN TATTOO_MP_FM_FHO_5C // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_013"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_14_0 RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("MP_Hair_014_Fix"), TATTOO_MP_FM_F) ELIF eItem = HAIR_FMF_14_1 RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("MP_Hair_014_Fix"), TATTOO_MP_FM_F) ELIF eItem = HAIR_FMF_14_2 RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("MP_Hair_014_Fix"), TATTOO_MP_FM_F) ELIF eItem = HAIR_FMF_14_3 RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("MP_Hair_014_Fix"), TATTOO_MP_FM_F) ELIF eItem = HAIR_FMF_14_4 RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("MP_Hair_014_Fix"), TATTOO_MP_FM_F) ELIF eItem = HAIR_FMF_14_5 RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("MP_Hair_014_Fix"), TATTOO_MP_FM_F) ELIF eItem = HAIR_FMF_15_0 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_A ELIF eItem = HAIR_FMF_15_1 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_B ELIF eItem = HAIR_FMF_15_2 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_C ELIF eItem = HAIR_FMF_15_3 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_D ELIF eItem = HAIR_FMF_15_4 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_15_5 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E ELIF eItem = HAIR_FMF_15_6 RETURN TATTOO_MP_FM_FHO_5E // GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("NG_F_Hair_015"), TATTOO_MP_FM_F) // TATTOO_MP_FM_FHO_LONG_E #IF USE_TU_CHANGES ELIF eItem >= HAIR_FMF_DLC // Look up the forced components for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_HAIR, 4) IF iItemNameHash != -1 SWITCH iItemNameHash CASE HASH("DLC_MP_BEACH_F_HAIR00") CASE HASH("DLC_MP_BEACH_F_HAIR01") CASE HASH("DLC_MP_BEACH_F_HAIR02") CASE HASH("DLC_MP_BEACH_F_HAIR03") CASE HASH("DLC_MP_BEACH_F_HAIR04") CASE HASH("DLC_MP_GR_F_HAIR_16_0") RETURN TATTOO_MP_FM_FHO_6A // iRetNameHash = HASH("NGBea_F_Hair_000") BREAK CASE HASH("DLC_MP_BEACH_F_HAIR05") CASE HASH("DLC_MP_BEACH_F_HAIR06") CASE HASH("DLC_MP_BEACH_F_HAIR07") CASE HASH("DLC_MP_BEACH_F_HAIR08") CASE HASH("DLC_MP_BEACH_F_HAIR09") CASE HASH("DLC_MP_GR_F_HAIR_15_0") RETURN TATTOO_MP_FM_FHO_6B // iRetNameHash = HASH("NGBea_F_Hair_001") BREAK CASE HASH("DLC_MP_BUSI_F_HAIR0_0") CASE HASH("DLC_MP_BUSI_F_HAIR0_1") CASE HASH("DLC_MP_BUSI_F_HAIR0_2") CASE HASH("DLC_MP_BUSI_F_HAIR0_3") CASE HASH("DLC_MP_BUSI_F_HAIR0_4") RETURN TATTOO_MP_FM_FHO_6C // iRetNameHash = HASH("NGBus_F_Hair_000") BREAK CASE HASH("DLC_MP_BUSI_F_HAIR1_0") CASE HASH("DLC_MP_BUSI_F_HAIR1_1") CASE HASH("DLC_MP_BUSI_F_HAIR1_2") CASE HASH("DLC_MP_BUSI_F_HAIR1_3") CASE HASH("DLC_MP_BUSI_F_HAIR1_4") RETURN TATTOO_MP_FM_FHO_6D // iRetNameHash = HASH("NGBus_F_Hair_001") BREAK CASE HASH("DLC_MP_HIPS_F_HAIR0_0") CASE HASH("DLC_MP_HIPS_F_HAIR0_1") CASE HASH("DLC_MP_HIPS_F_HAIR0_2") CASE HASH("DLC_MP_HIPS_F_HAIR0_3") CASE HASH("DLC_MP_HIPS_F_HAIR0_4") RETURN TATTOO_MP_FM_FHO_6E // iRetNameHash = HASH("NGHip_F_Hair_000") BREAK CASE HASH("DLC_MP_HIPS_F_HAIR1_0") CASE HASH("DLC_MP_HIPS_F_HAIR1_1") CASE HASH("DLC_MP_HIPS_F_HAIR1_2") CASE HASH("DLC_MP_HIPS_F_HAIR1_3") CASE HASH("DLC_MP_HIPS_F_HAIR1_4") RETURN TATTOO_MP_FM_FHO_6E // iRetNameHash = HASH("NGHip_F_Hair_000") //HASH("NGHip_F_Hair_001") /* url:bugstar:2106695 */ BREAK CASE HASH("CLO_INDF_H_0_0") CASE HASH("CLO_INDF_H_0_1") CASE HASH("CLO_INDF_H_0_2") CASE HASH("CLO_INDF_H_0_3") CASE HASH("CLO_INDF_H_0_4") RETURN TATTOO_MP_FM_FHO_13B // iRetNameHash = HASH("NGInd_F_Hair_000") BREAK ENDSWITCH INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) // If we have a DLC tattoo... IF iRetType = ENUM_TO_INT(PED_COMP_DECL) IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" RETURN GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, TATTOO_MP_FM_F) ELSE RETURN INT_TO_ENUM(TATTOO_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ENDIF RETURN INVALID_TATTOO ENDFUNC FUNC BOOL IS_PED_WEARING_ARMOUR(PED_INDEX ped) IF NOT IS_PED_INJURED(ped) IF GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL2) != 0 AND NOT DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_SPECIAL2, DLC_RESTRICTION_TAG_GOLF_GLOVE) RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_PED_WEARING_DUNGAREES(PED_INDEX pedID) IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_LEG, DLC_RESTRICTION_TAG_DUNGAREES) RETURN TRUE ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_PED_WEARING_A_DUFFEL_BAG(PED_INDEX pedID) IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_HAND, DLC_RESTRICTION_TAG_DUFFEL_BAG) RETURN TRUE ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_PED_WEARING_PROBLEM_CLOTHING(PED_INDEX ped) IF IS_PED_WEARING_ARMOUR(ped) RETURN TRUE ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_PED_WEARING_EXTREME_STRIKE_VEST(PED_INDEX pedID) IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_SPECIAL, DLC_RESTRICTION_TAG_X17_DRAW_6) RETURN TRUE ENDIF RETURN FALSE ENDFUNC FUNC INT GET_BODY_ARMOUR_FROM_CLIP_SIZE(INT iPrice) IF iPrice = 20 RETURN 0 ELIF iPrice = 40 RETURN 4 //1 ELIF iPrice = 60 RETURN 1 //2 ELIF iPrice = 80 RETURN 2 //3 ELIF iPrice = 100 RETURN 3 //4 ENDIF RETURN 0 ENDFUNC /// Set the given ped index's SPECIAL2 ped comp to 0 for no body armour PROC SET_NO_BODY_ARMOUR_COMP(PED_INDEX &ped) SET_PED_COMPONENT_VARIATION(ped, PED_COMP_SPECIAL2, 0, 0, 0) ENDPROC /// PURPOSE: Returns the enum of the body armour item to equip with this jbib /// This just returns the 1st body armour item that is suitable /// There are however 5 colours of body armour so an offset from this will need to be used FUNC PED_COMP_NAME_ENUM GET_BODY_ARMOUR_FOR_JBIB(PED_INDEX pedID, MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) IF IS_PED_WEARING_DUNGAREES(pedID) CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - player wearing dungarees, force body armour to none") RETURN DUMMY_PED_COMP ENDIF IF IS_PED_WEARING_EXTREME_STRIKE_VEST(pedID) CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - player wearing Extreme Strike vest, force body armour to none") RETURN DUMMY_PED_COMP ENDIF IF eType = COMP_TYPE_JBIB // MP Male IF ePedModel = MP_M_FREEMODE_01 IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) OR (eItem >= JBIB_FMM_12_0 AND eItem <= JBIB_FMM_12_15) RETURN SPECIAL2_FMM_1_0 ELIF (eItem >= JBIB_FMM_2_0 AND eItem <= JBIB_FMM_2_15) RETURN SPECIAL2_FMM_2_0 ELIF (eItem >= JBIB_FMM_3_0 AND eItem <= JBIB_FMM_3_15) OR (eItem >= JBIB_FMM_4_0 AND eItem <= JBIB_FMM_4_15) OR (eItem >= JBIB_FMM_7_0 AND eItem <= JBIB_FMM_7_15) RETURN SPECIAL2_FMM_3_0 ELIF (eItem >= JBIB_FMM_6_0 AND eItem <= JBIB_FMM_6_11) RETURN SPECIAL2_FMM_9_0 ELIF (eItem >= JBIB_FMM_10_0 AND eItem <= JBIB_FMM_10_15) RETURN SPECIAL2_FMM_8_0 ELIF (eItem >= JBIB_FMM_11_0 AND eItem <= JBIB_FMM_11_15) RETURN SPECIAL2_FMM_7_0 ELIF (eItem >= JBIB_FMM_13_0 AND eItem <= JBIB_FMM_13_15) RETURN SPECIAL2_FMM_4_0 ELIF (eItem >= JBIB_FMM_14_0 AND eItem <= JBIB_FMM_14_15) OR (eItem >= JBIB_FMM_8_0 AND eItem <= JBIB_FMM_8_15) RETURN SPECIAL2_FMM_6_0 ELIF eItem = JBIB_FMM_15_0 RETURN SPECIAL2_FMM_5_0 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMM_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) 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_SPECIAL2) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - male DLC armour found with hash ", iRetNameHash, " for hash ", iItemNameHash) #ENDIF RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL2, 3) // Forced on-disk item ELSE #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - male DLC armour found with enum ", iRetCompEnum, " for hash:", iItemNameHash) #ENDIF RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ENDIF #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - Failed to find male DLC armour for jbib = ", eItem, ", ", iItemNameHash) #ENDIF RETURN DUMMY_PED_COMP // shouldn't reach this #ENDIF ENDIF // MP Female ELIF ePedModel = MP_F_FREEMODE_01 IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) RETURN SPECIAL2_FMM_1_0 ELIF (eItem >= JBIB_FMF_1_0 AND eItem <= JBIB_FMF_1_15) OR (eItem >= JBIB_FMF_7_0 AND eItem <= JBIB_FMF_7_15) OR (eItem >= JBIB_FMF_8_0 AND eItem <= JBIB_FMF_8_15) RETURN SPECIAL2_FMM_4_0 ELIF (eItem >= JBIB_FMF_2_0 AND eItem <= JBIB_FMF_2_15) RETURN SPECIAL2_FMM_2_0 ELIF (eItem >= JBIB_FMF_3_0 AND eItem <= JBIB_FMF_3_15) RETURN SPECIAL2_FMM_3_0 ELIF (eItem >= JBIB_FMF_6_0 AND eItem <= JBIB_FMF_6_15) OR (eItem >= JBIB_FMF_10_0 AND eItem <= JBIB_FMF_10_15) RETURN SPECIAL2_FMM_5_0 ELIF (eItem >= JBIB_FMF_14_0 AND eItem <= JBIB_FMF_14_15) RETURN SPECIAL2_FMM_6_0 ELIF (eItem >= JBIB_FMF_9_0 AND eItem <= JBIB_FMF_9_15) CPRINTLN(DEBUG_PED_COMP, "This Jbib can't be worn with body armour") RETURN SPECIAL2_FMM_0_0 // This one can't be worn with body armour!!! #IF USE_TU_CHANGES ELIF (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) RETURN SPECIAL2_FMM_7_0 #ENDIF #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMF_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4) 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_SPECIAL2) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - female DLC armour found with hash:", iRetNameHash, " for hash:", iItemNameHash) #ENDIF RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL2, 4) // Forced on-disk item ELSE #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - female DLC armour found with enum ", iRetCompEnum, " for hash:", iItemNameHash) #ENDIF RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF ENDIF ENDREPEAT ENDIF #IF IS_DEBUG_BUILD CPRINTLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - Failed to find female DLC armour for jbib = ", eItem, ", ", iItemNameHash) #ENDIF RETURN DUMMY_PED_COMP // shouldn't reach this #ENDIF ENDIF ENDIF CERRORLN(DEBUG_PED_COMP, "GET_BODY_ARMOUR_FOR_JBIB - Failed to find armour for jbib = ", eItem) ENDIF RETURN DUMMY_PED_COMP // shouldn't reach this ENDFUNC /// PURPOSE: Returns whether the ped is wearing a parachute pack (mp only) FUNC BOOL IS_PED_WEARING_PARACHUTE_MP(PED_INDEX mPed) IF NOT IS_PED_INJURED(mPed) IF GET_PED_DRAWABLE_VARIATION(mPed, PED_COMP_HAND) != 0 AND NOT IS_PED_WEARING_A_DUFFEL_BAG(mPed) RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_PED_WEARING_SCUBA_TANK(PED_INDEX pedID) IF NOT IS_PED_INJURED(pedID) IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_SPECIAL, DLC_RESTRICTION_TAG_SCUBA_GEAR) RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: Any component items that must be set with another item FUNC PED_COMP_NAME_ENUM GET_PED_COMPONENT_ITEM_REQUISITE_MP(PED_INDEX mPed, MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_TYPE_ENUM eTypeForReturn, PED_PROP_POSITION Anchor = ANCHOR_HEAD) PED_COMP_NAME_ENUM eReturnItem = DUMMY_PED_COMP PED_COMP_NAME_ENUM eOffset PED_COMP_NAME_ENUM eSpecialItem INT iForcedComps INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType INT iForcedProps INT iForcedProp INT iRetPropEnum, iRetAnchor INT iAltComps INT iAltComp INT iItemNameHash // If you add a new rule to this function // you will probably need to also update IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP UNUSED_PARAMETER(mPed) // Hair requisites IF eTypeForReturn = COMP_TYPE_HAIR DOES_ITEM_FORCE_HAIR_CHANGE_MP(mPed, eModel, eType, eItem, eReturnItem) ELSE //------------ Male-------------- IF eModel =MP_M_FREEMODE_01 IF eTypeForReturn = COMP_TYPE_TORSO // This torso must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem <= JBIB_FMM_0_15 eReturnItem = TORSO_FMM_0_0 ELIF eItem <= JBIB_FMM_1_15 eReturnItem = TORSO_FMM_0_0 ELIF eItem <= JBIB_FMM_2_15 eReturnItem = TORSO_FMM_2_0 ELIF eItem <= JBIB_FMM_3_15 eReturnItem = TORSO_FMM_1_0 // track jackets use 1 ELIF eItem <= JBIB_FMM_4_15 eReturnItem = TORSO_FMM_1_0 // suit jackets use torso 1 ELIF eItem <= JBIB_FMM_5_15 eReturnItem = TORSO_FMM_5_0 ELIF eItem <= JBIB_FMM_6_11 eReturnItem = TORSO_FMM_12_0 ELIF eItem <= JBIB_FMM_7_15 eReturnItem = TORSO_FMM_1_0 // hoodies use 1 ELIF eItem <= JBIB_FMM_8_15 eReturnItem = TORSO_FMM_8_0 ELIF eItem <= JBIB_FMM_9_15 eReturnItem = TORSO_FMM_0_0 ELIF eItem <= JBIB_FMM_10_15 eReturnItem = TORSO_FMM_1_0 // suit jackets use torso 1 ELIF eItem <= JBIB_FMM_11_15 // if player is already wearing a suitable special item, leave the torso eSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) INT iSpecialNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) INT iDrawTag = GET_DLC_DRAW_TAG(iSpecialNameHash) IF (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (eSpecialItem >= SPECIAL_FMM_DLC AND iDrawTag = 6) OR (eSpecialItem >= SPECIAL_FMM_DLC AND iDrawTag = 7) OR (eSpecialItem >= SPECIAL_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) eReturnItem = DUMMY_PED_COMP ELSE eReturnItem = TORSO_FMM_11_0 ENDIF ELIF eItem <= JBIB_FMM_12_15 eReturnItem = TORSO_FMM_12_0 ELIF eItem <= JBIB_FMM_13_15 eReturnItem = TORSO_FMM_11_0 ELIF eItem <= JBIB_FMM_14_15 eReturnItem = TORSO_FMM_4_0 ELIF eItem = JBIB_FMM_15_0 eReturnItem = TORSO_FMM_15_0 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 BOOL bProcessLookup = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) // if player is already wearing a suitable special item, leave the torso eSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) INT iSpecialNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) INT iDrawTag = GET_DLC_DRAW_TAG(iSpecialNameHash) IF (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (eSpecialItem >= SPECIAL_FMM_DLC AND iDrawTag = 6) OR (eSpecialItem >= SPECIAL_FMM_DLC AND iDrawTag = 7) OR (eSpecialItem >= SPECIAL_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) bProcessLookup = FALSE // Skip ENDIF ENDIF IF bProcessLookup iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TORSO, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iForcedComp = iForcedComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_SPECIAL // With this special item... IF eItem <= SPECIAL_FMM_0_15 eReturnItem = TORSO_FMM_1_0 ELIF eItem <= SPECIAL_FMM_1_15 eReturnItem = TORSO_FMM_1_0 ELIF eItem <= SPECIAL_FMM_2_15 eReturnItem = DUMMY_PED_COMP // not specified ELIF eItem <= SPECIAL_FMM_3_15 eReturnItem = TORSO_FMM_12_0 ELIF eItem <= SPECIAL_FMM_4_15 eReturnItem = TORSO_FMM_12_0 ELIF eItem <= SPECIAL_FMM_5_15 eReturnItem = TORSO_FMM_6_0 ELIF eItem <= SPECIAL_FMM_6_15 #IF USE_TU_CHANGES eReturnItem = TORSO_FMM_11_0 #ENDIF #IF NOT USE_TU_CHANGES eReturnItem = DUMMY_PED_COMP // not specified #ENDIF ELIF eItem <= SPECIAL_FMM_7_15 #IF USE_TU_CHANGES eReturnItem = TORSO_FMM_11_0 #ENDIF #IF NOT USE_TU_CHANGES eReturnItem = DUMMY_PED_COMP // not specified #ENDIF ELIF eItem <= SPECIAL_FMM_8_15 eReturnItem = TORSO_FMM_1_0 ELIF eItem <= SPECIAL_FMM_9_15 eReturnItem = TORSO_FMM_1_0 ELIF eItem <= SPECIAL_FMM_10_15 eReturnItem = TORSO_FMM_4_0 ELIF eItem <= SPECIAL_FMM_11_15 eReturnItem = TORSO_FMM_12_0 ELIF eItem <= SPECIAL_FMM_12_15 eReturnItem = TORSO_FMM_1_0 ELIF eItem <= SPECIAL_FMM_13_15 eReturnItem = TORSO_FMM_1_0 ELIF eItem <= SPECIAL_FMM_14_15 eReturnItem = DUMMY_PED_COMP // not specified ELIF eItem = SPECIAL_FMM_15_0 // Open short sleeved shirts require specific torso PED_COMP_NAME_ENUM eJBIBItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) INT iJBIBNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eJBIBItem, COMP_TYPE_JBIB, 3) IF (eJBIBItem >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iJBIBNameHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))) eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, HASH("DLC_MP_H4_M_TORSO_0_0"), COMP_TYPE_TORSO, 3) ELSE eReturnItem = TORSO_FMM_14_0 ENDIF #IF USE_TU_CHANGES ELIF eItem >= SPECIAL_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_SPECIAL, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TORSO, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_DECL // With this decl item... IF eItem >= DECL_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_DECL, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TORSO, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_SPECIAL // This special must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... INT iDLCJbibCheck = -1 IF eItem >= JBIB_FMM_DLC iDLCJbibCheck = GET_DLC_DRAW_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3)) ENDIF IF eItem <= JBIB_FMM_0_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_1_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_2_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_3_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMM_4_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMM_5_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_6_11 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMM_7_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMM_8_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_9_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_10_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMM_11_15 OR (iDLCJbibCheck = 11) // if player is already wearing a suitable special item, leave it on eSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) INT iSpecialNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) INT iDrawTag = GET_DLC_DRAW_TAG(iSpecialNameHash) IF (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (eSpecialItem >= SPECIAL_FMM_DLC AND iDrawTag = 6) OR (eSpecialItem >= SPECIAL_FMM_DLC AND iDrawTag = 7) OR (eSpecialItem >= SPECIAL_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // already wearing suitable item ELSE CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Special not compatible with waistcoat, set shirt") eReturnItem = SPECIAL_FMM_7_0 ENDIF ELIF eItem <= JBIB_FMM_12_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_13_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_14_15 eReturnItem = SPECIAL_FMM_15_0 ELIF eItem <= JBIB_FMM_15_0 eReturnItem = SPECIAL_FMM_15_0 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_TEETH // With this teeth item... // teeth check // special check INT iDLCTeethCheck = -1 INT iDLCTeethHash = -1 IF eItem >= TEETH_FMM_DLC iDLCTeethHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_TEETH, 3) iDLCTeethCheck = GET_DLC_DRAW_TAG(iDLCTeethHash) ENDIF IF (eItem >= TEETH_FMM_10_0 AND eItem <= TEETH_FMM_10_15) OR (eItem >= TEETH_FMM_11_0 AND eItem <= TEETH_FMM_11_15) OR (eItem >= TEETH_FMM_12_0 AND eItem <= TEETH_FMM_12_15) OR (iDLCTeethCheck = 10) OR (iDLCTeethCheck = 11) OR (iDLCTeethCheck = 12) OR (eItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_VEST_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TUX_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) // ties force on the closed collar version of a special eSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) eOffset = eSpecialItem - SPECIAL_FMM_3_0 eReturnItem = SPECIAL_FMM_4_0 + eOffset CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force closed collar, eSpecialItem=", eSpecialItem) ELIF (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) eOffset = eSpecialItem - SPECIAL_FMM_7_0 eReturnItem = SPECIAL_FMM_6_0 + eOffset CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force closed collar, eSpecialItem=", eSpecialItem) ELIF (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) eOffset = eSpecialItem - SPECIAL_FMM_11_0 eReturnItem = SPECIAL_FMM_10_0 + eOffset CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force closed collar, eSpecialItem=", eSpecialItem) ELSE IF eSpecialItem >= SPECIAL_FMM_DLC iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) INT iDLCSpecialCheck = GET_DLC_DRAW_TAG(iItemNameHash) BOOL bUseDeclComp = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 7) OR (iDLCSpecialCheck = 11) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Look up the alternative component for this DLC item. IF iItemNameHash != -1 iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash) REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) AND NOT bUseDeclComp) OR (iRetType = ENUM_TO_INT(PED_COMP_DECL) AND bUseDeclComp) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF ENDIF ENDIF ELIF (eItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_SLACK_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) // loose and slack ties for force the opposite collar of special iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) INT iDLCSpecialCheck = GET_DLC_DRAW_TAG(iItemNameHash) BOOL bUseDeclComp = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 7) OR (iDLCSpecialCheck = 11) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Look up the alternative component for this DLC item. IF iItemNameHash != -1 iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash) REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) AND NOT bUseDeclComp) OR (iRetType = ENUM_TO_INT(PED_COMP_DECL) AND bUseDeclComp) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF #IF USE_TU_CHANGES ELIF (eItem >= TEETH_FMM_DLC) // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_TEETH, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_DECL // With this decl item... IF eItem >= DECL_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_DECL, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF #IF USE_TU_CHANGES ELIF eTypeForReturn = COMP_TYPE_JBIB // This jbib must be used... IF eType = COMP_TYPE_TEETH // With this teeth item... // teeth check // special check INT iDLCTeethCheck = -1 INT iDLCTeethHash = -1 IF eItem >= TEETH_FMM_DLC iDLCTeethHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_TEETH, 3) iDLCTeethCheck = GET_DLC_DRAW_TAG(iDLCTeethHash) ENDIF IF (eItem >= TEETH_FMM_10_0 AND eItem <= TEETH_FMM_10_15) OR (eItem >= TEETH_FMM_11_0 AND eItem <= TEETH_FMM_11_15) OR (eItem >= TEETH_FMM_12_0 AND eItem <= TEETH_FMM_12_15) OR (iDLCTeethCheck = 10) OR (iDLCTeethCheck = 11) OR (iDLCTeethCheck = 12) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) // ties force on the closed collar version of a jbib PED_COMP_NAME_ENUM eJbibItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) IF eJbibItem >= JBIB_FMM_DLC iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eJbibItem, COMP_TYPE_JBIB, 3) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SHIRT_BRACES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_H3_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Look up the alternative component for this DLC item. IF iItemNameHash != -1 iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash) REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_JBIB) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_JBIB, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF ENDIF ENDIF ELIF eType = COMP_TYPE_DECL // With this decl item... IF eItem >= DECL_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_DECL, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_JBIB) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_JBIB, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_TEETH // This teeth must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... // Shirt w/ braces and open collar force remove the ties PED_COMP_NAME_ENUM eJbibItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB) IF eJbibItem >= JBIB_FMM_DLC iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eJbibItem, COMP_TYPE_JBIB, 3) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SHIRT_BRACES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_H3_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TEETH) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TEETH, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eType = COMP_TYPE_PROPS // With this prop item... IF eItem >= PROPS_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TEETH) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TEETH, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_LEGS // This legs must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_LEG) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_LEGS, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_DECL // This decl must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_DECL, 3) // NOTE: WE USE THE ENUM IN GET_TORSO_DECAL_TATTOO_MP so we can't use it here! // Forced on-disk item //ELSE //eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) //iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_FEET // This feet must be used... IF eType = COMP_TYPE_LEGS // With this legs item... IF eItem >= LEGS_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_FEET) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_FEET, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_FEET) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_FEET, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_BERD // This berd must be used... IF eType = COMP_TYPE_PROPS // With this prop item... IF eItem >= PROPS_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_BERD) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_BERD, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_BERD) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_BERD, 3) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_PROPS // This prop must be used... IF eType = COMP_TYPE_BERD // With this berd item... IF eItem >= BERD_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_BERD, 3) IF iItemNameHash != -1 iForcedProps = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iItemNameHash) REPEAT iForcedProps iForcedProp GET_FORCED_PROP(iItemNameHash, iForcedProp, iRetNameHash, iRetPropEnum, iRetAnchor) IF iRetAnchor = ENUM_TO_INT(Anchor) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_PROPS, 3) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force dlc prop for berd, iRetNameHash=", iRetNameHash, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force disk prop for berd, eReturnItem=", eReturnItem, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 iForcedProps = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iItemNameHash) REPEAT iForcedProps iForcedProp GET_FORCED_PROP(iItemNameHash, iForcedProp, iRetNameHash, iRetPropEnum, iRetAnchor) IF iRetAnchor = ENUM_TO_INT(Anchor) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_PROPS, 3) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force dlc prop for jbib, iRetNameHash=", iRetNameHash, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force disk prop for jbib, eReturnItem=", eReturnItem, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMM_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 3) IF iItemNameHash != -1 iForcedProps = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iItemNameHash) REPEAT iForcedProps iForcedProp GET_FORCED_PROP(iItemNameHash, iForcedProp, iRetNameHash, iRetPropEnum, iRetAnchor) IF iRetAnchor = ENUM_TO_INT(Anchor) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_PROPS, 3) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force dlc prop for jbib, iRetNameHash=", iRetNameHash, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force disk prop for jbib, eReturnItem=", eReturnItem, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF #ENDIF #IF NOT USE_TU_CHANGES UNUSED_PARAMETER(Anchor) #ENDIF ENDIF // -------------Female------------------------- ELIF eModel = MP_F_FREEMODE_01 IF eTypeForReturn = COMP_TYPE_TORSO // This torso must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem <= JBIB_FMF_0_15 eReturnItem = TORSO_FMF_0_0 ELIF eItem <= JBIB_FMF_1_15 eReturnItem = TORSO_FMF_5_0 ELIF eItem <= JBIB_FMF_2_15 eReturnItem = TORSO_FMF_2_0 ELIF eItem <= JBIB_FMF_3_15 eReturnItem = TORSO_FMF_3_0 ELIF eItem <= JBIB_FMF_4_15 eReturnItem = TORSO_FMF_4_0 ELIF eItem <= JBIB_FMF_5_15 eReturnItem = TORSO_FMF_4_0 ELIF eItem <= JBIB_FMF_6_15 eReturnItem = TORSO_FMF_5_0 ELIF eItem <= JBIB_FMF_7_15 eReturnItem = TORSO_FMF_6_0 ELIF eItem <= JBIB_FMF_8_15 eReturnItem = TORSO_FMF_5_0 ELIF eItem <= JBIB_FMF_9_15 eReturnItem = TORSO_FMF_9_0 ELIF eItem <= JBIB_FMF_10_15 eReturnItem = TORSO_FMF_7_0 ELIF eItem <= JBIB_FMF_11_15 eReturnItem = TORSO_FMF_11_0 ELIF eItem <= JBIB_FMF_12_15 eReturnItem = TORSO_FMF_12_0 ELIF eItem <= JBIB_FMF_13_15 eReturnItem = TORSO_FMF_4_0 ELIF eItem <= JBIB_FMF_14_15 eReturnItem = TORSO_FMF_14_0 ELIF eItem <= JBIB_FMF_15_15 eReturnItem = TORSO_FMF_15_0 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TORSO, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_DECL // With this decl item... IF eItem >= DECL_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_DECL, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TORSO, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_SPECIAL // This special must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem <= JBIB_FMF_0_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_1_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMF_2_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_3_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_4_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_5_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_6_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMF_7_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMF_8_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMF_9_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_10_15 eReturnItem = DUMMY_PED_COMP // Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION instead ELIF eItem <= JBIB_FMF_11_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_12_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_13_15 // there are different colour versions of this special item // so need to pick the matching one eOffset = eItem - JBIB_FMF_13_0 eReturnItem = SPECIAL_FMF_13_0 + eOffset ELIF eItem <= JBIB_FMF_14_15 eReturnItem = SPECIAL_FMF_3_0 ELIF eItem <= JBIB_FMF_15_15 eReturnItem = SPECIAL_FMF_3_0 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 BOOL bFoundItem = FALSE // Check Vest/Shirt combo IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // if player is already wearing a suitable special item, leave it on eSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL) INT iSpecialNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eSpecialItem, COMP_TYPE_SPECIAL, 4) IF (eSpecialItem >= SPECIAL_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // already wearing suitable item ELSE CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Special not compatible with waistcoat, set shirt") eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, HASH("DLC_MP_H3_F_SPECIAL_6_0"), COMP_TYPE_SPECIAL, 4) bFoundItem = TRUE ENDIF ENDIF IF NOT bFoundItem iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF #ENDIF ENDIF ELIF eType = COMP_TYPE_TEETH // With this teeth item... INT iDLCTeethHash = -1 IF eItem >= TEETH_FMF_DLC iDLCTeethHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_TEETH, 4) ENDIF // DLC tie or bowtie IF (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCTeethHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) // DLC shirt or vest iItemNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(mPed), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(mPed, PED_COMP_SPECIAL), GET_PED_TEXTURE_VARIATION(mPed, PED_COMP_SPECIAL)) BOOL bGetAltAccs = FALSE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_CLOSED_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) bGetAltAccs = TRUE ENDIF ELSE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) bGetAltAccs = TRUE ENDIF ENDIF IF bGetAltAccs // Look up the alternative component for this DLC item. iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash) REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_DECL // With this decl item... IF eItem >= DECL_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_DECL, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF #IF USE_TU_CHANGES ELIF eTypeForReturn = COMP_TYPE_FEET // This feet must be used... IF eType = COMP_TYPE_LEGS // With this legs item... IF eItem >= LEGS_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_LEGS, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_FEET) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_FEET, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_FEET) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_FEET, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_LEGS // This legs must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_LEG) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_LEGS, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_DECL // This decl must be used... IF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_DECL) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_DECL, 4) // NOTE: WE USE THE ENUM IN GET_TORSO_DECAL_TATTOO_MP so we can't use it here! // Forced on-disk item //ELSE //eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) //iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_JBIB // This jbib must be used... IF eType = COMP_TYPE_DECL // With this decl item... IF eItem >= DECL_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_DECL, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_JBIB) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_JBIB, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_TEETH // This teeth must be used... IF eType = COMP_TYPE_PROPS // With this prop item... IF eItem >= PROPS_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TEETH) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_TEETH, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_BERD // This berd must be used... IF eType = COMP_TYPE_PROPS // With this prop item... IF eItem >= PROPS_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_PROPS, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_BERD) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_BERD, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 4) IF iItemNameHash != -1 iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iItemNameHash) REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iItemNameHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_BERD) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_BERD, 4) // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iForcedComp = iForcedComps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF ELIF eTypeForReturn = COMP_TYPE_PROPS // This prop must be used... IF eType = COMP_TYPE_BERD // With this berd item... IF eItem >= BERD_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_BERD, 4) IF iItemNameHash != -1 iForcedProps = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iItemNameHash) REPEAT iForcedProps iForcedProp GET_FORCED_PROP(iItemNameHash, iForcedProp, iRetNameHash, iRetPropEnum, iRetAnchor) IF iRetAnchor = ENUM_TO_INT(Anchor) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_PROPS, 4) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force dlc prop for berd, iRetNameHash=", iRetNameHash, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force disk prop for berd, eReturnItem=", eReturnItem, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_JBIB // With this jbib item... IF eItem >= JBIB_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_JBIB, 4) IF iItemNameHash != -1 iForcedProps = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iItemNameHash) REPEAT iForcedProps iForcedProp GET_FORCED_PROP(iItemNameHash, iForcedProp, iRetNameHash, iRetPropEnum, iRetAnchor) IF iRetAnchor = ENUM_TO_INT(Anchor) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_PROPS, 4) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force dlc prop for jbib, iRetNameHash=", iRetNameHash, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force disk prop for jbib, eReturnItem=", eReturnItem, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ELIF eType = COMP_TYPE_FEET // With this feet item... IF eItem >= FEET_FMF_DLC // Look up the forced components for this DLC item. iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(eModel, eItem, COMP_TYPE_FEET, 4) IF iItemNameHash != -1 iForcedProps = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iItemNameHash) REPEAT iForcedProps iForcedProp GET_FORCED_PROP(iItemNameHash, iForcedProp, iRetNameHash, iRetPropEnum, iRetAnchor) IF iRetAnchor = ENUM_TO_INT(Anchor) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(eModel, iRetNameHash, COMP_TYPE_PROPS, 4) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force dlc prop for jbib, iRetNameHash=", iRetNameHash, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail // Forced on-disk item ELSE eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_PED_COMPONENT_ITEM_REQUISITE_MP : Force disk prop for jbib, eReturnItem=", eReturnItem, ", ePropPos=", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iRetAnchor))) iForcedProp = iForcedProps+1// Bail ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF #ENDIF ENDIF ENDIF ENDIF RETURN eReturnItem ENDFUNC /// PURPOSE: The TORSO to be used when we have this specific special and jbib combination. MP ONLY. /// ePedModel: model of the ped who is equipping the item /// eCurrentSpecial - the special that we are wearing /// eCurrentJBIB - the jbib that we are wearing FUNC PED_COMP_NAME_ENUM GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eCurrentSpecial, PED_COMP_NAME_ENUM eCurrentJBIB, PED_COMP_NAME_ENUM eCurrentLegs) PED_COMP_NAME_ENUM eForcedTorso = DUMMY_PED_COMP INT iDLCJbibCheck = -1 INT iDLCJbibHash = -1 INT iDLCSpecialCheck = -1 INT iDLCSpecialHash = -1 SWITCH ePedModel CASE MP_M_FREEMODE_01 IF eCurrentJBIB >= JBIB_FMM_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 3) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF IF eCurrentSpecial >= SPECIAL_FMM_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentSpecial, COMP_TYPE_SPECIAL, 3) iDLCSpecialCheck = GET_DLC_DRAW_TAG(iDLCSpecialHash) ENDIF // Loungewear IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMM_14_0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMM_6_0 ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_1_0 ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_4_0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eCurrentSpecial = SPECIAL_FMM_15_0) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_TORSO_0_0"), COMP_TYPE_TORSO, 3) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_TORSO_1_0"), COMP_TYPE_TORSO, 3) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_TORSO_2_0"), COMP_TYPE_TORSO, 3) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMM_5_0 ENDIF ELSE eForcedTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, DUMMY_PED_COMP, GET_JBIB_FROM_SPECIAL(ePedModel, eCurrentSpecial, 0), eCurrentLegs) IF eForcedTorso = DUMMY_PED_COMP eForcedTorso = TORSO_FMM_0_0 ENDIF ENDIF // Accs for parka jacket ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVERCOAT_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMM_12_0 ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Quilted Jacket OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Cashmere Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eCurrentSpecial = SPECIAL_FMM_15_0) eForcedTorso = TORSO_FMM_14_0 // Tank tops ELIF (eCurrentSpecial >= SPECIAL_FMM_5_0 AND eCurrentSpecial <= SPECIAL_FMM_5_15) OR (iDLCSpecialCheck = 5) eForcedTorso = TORSO_FMM_6_0 // V-Necks ELIF (eCurrentSpecial >= SPECIAL_FMM_1_0 AND eCurrentSpecial <= SPECIAL_FMM_1_15) OR (iDLCSpecialCheck = 1) eForcedTorso = TORSO_FMM_1_0 ELSE eForcedTorso = TORSO_FMM_4_0 ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eCurrentSpecial = SPECIAL_FMM_15_0) eForcedTorso = TORSO_FMM_14_0 // Tank tops ELIF (eCurrentSpecial >= SPECIAL_FMM_5_0 AND eCurrentSpecial <= SPECIAL_FMM_5_15) OR (iDLCSpecialCheck = 5) eForcedTorso = TORSO_FMM_6_0 ELSE eForcedTorso = TORSO_FMM_1_0 ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Some shirts need to use torso 0 IF (eCurrentSpecial >= SPECIAL_FMM_12_0 AND eCurrentSpecial <= SPECIAL_FMM_12_15) OR (iDLCSpecialCheck = 12) eForcedTorso = TORSO_FMM_0_0 // All the rest use 11 ELSE eForcedTorso = TORSO_FMM_11_0 ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Tank tops IF (eCurrentSpecial >= SPECIAL_FMM_5_0 AND eCurrentSpecial <= SPECIAL_FMM_5_15) OR (iDLCSpecialCheck = 5) eForcedTorso = TORSO_FMM_6_0 // Force correct upper for bare chest? ELIF (eCurrentSpecial = SPECIAL_FMM_15_0) eForcedTorso = TORSO_FMM_14_0 ELIF (eCurrentSpecial >= SPECIAL_FMM_1_0 AND eCurrentSpecial <= SPECIAL_FMM_1_15) OR (iDLCSpecialCheck = 1) eForcedTorso = TORSO_FMM_1_0 ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_12_0 ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_2_0 ELIF (eCurrentJBIB >= JBIB_FMM_0_0 AND eCurrentJBIB <= JBIB_FMM_1_15) OR (iDLCJbibCheck = 0) OR (iDLCJbibCheck = 1) eForcedTorso = TORSO_FMM_0_0 ELIF (eCurrentJBIB >= JBIB_FMM_3_0 AND eCurrentJBIB <= JBIB_FMM_3_15) OR (eCurrentJBIB >= JBIB_FMM_4_0 AND eCurrentJBIB <= JBIB_FMM_4_15) OR (eCurrentJBIB >= JBIB_FMM_6_0 AND eCurrentJBIB <= JBIB_FMM_6_11) OR (eCurrentJBIB >= JBIB_FMM_7_0 AND eCurrentJBIB <= JBIB_FMM_7_15) OR (eCurrentJBIB >= JBIB_FMM_10_0 AND eCurrentJBIB <= JBIB_FMM_10_15) OR (iDLCJbibCheck = 3) OR (iDLCJbibCheck = 4) OR (iDLCJbibCheck = 6) OR (iDLCJbibCheck = 7) OR (iDLCJbibCheck = 10) // Force the the torso for a bunch of jackets with the tank top. IF (eCurrentSpecial >= SPECIAL_FMM_5_0 AND eCurrentSpecial <= SPECIAL_FMM_5_15) OR (iDLCSpecialCheck = 5) eForcedTorso = TORSO_FMM_6_0 // Force the the torso for a bunch of jackets with the bare chest. ELIF eCurrentSpecial = SPECIAL_FMM_15_0 OR (iDLCSpecialCheck = 15) eForcedTorso = TORSO_FMM_14_0 // force torso for business shirts (closed collar) ELIF (eCurrentSpecial >= SPECIAL_FMM_10_0 AND eCurrentSpecial <= SPECIAL_FMM_10_15) OR (iDLCSpecialCheck = 10) eForcedTorso = TORSO_FMM_4_0 // force torso for business shirts (open collar) ELIF (eCurrentSpecial >= SPECIAL_FMM_11_0 AND eCurrentSpecial <= SPECIAL_FMM_11_15) OR (iDLCSpecialCheck = 11) eForcedTorso = TORSO_FMM_12_0 // force torso for v-neck shirts ELIF (eCurrentSpecial >= SPECIAL_FMM_1_0 AND eCurrentSpecial <= SPECIAL_FMM_1_15) OR (eCurrentSpecial >= SPECIAL_FMM_14_0 AND eCurrentSpecial <= SPECIAL_FMM_14_15) OR (iDLCSpecialCheck = 1) OR (iDLCSpecialCheck = 14) eForcedTorso = TORSO_FMM_1_0 ELIF (eCurrentSpecial >= SPECIAL_FMM_5_0 AND eCurrentSpecial <= SPECIAL_FMM_5_15) OR (iDLCSpecialCheck = 5) eForcedTorso = TORSO_FMM_6_0 ELIF (eCurrentSpecial >= SPECIAL_FMM_2_0 AND eCurrentSpecial <= SPECIAL_FMM_2_15) OR (iDLCSpecialCheck = 2) eForcedTorso = TORSO_FMM_4_0 // force torso for shirt with braces ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SHIRT_BRACES, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_CLOSED_COLLAR, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_4_0 ELSE eForcedTorso = TORSO_FMM_1_0 ENDIF // force torso for polo shirts ELIF (eCurrentSpecial >= SPECIAL_FMM_9_0 AND eCurrentSpecial <= SPECIAL_FMM_9_15) OR (iDLCSpecialCheck = 9) eForcedTorso = TORSO_FMM_1_0 // force torso for turtle neck ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMM_4_0 #IF USE_TU_CHANGES ELIF eCurrentSpecial >= SPECIAL_FMM_DLC // Look up the forced components for this DLC item. IF iDLCSpecialHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCSpecialHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iDLCSpecialHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_TORSO, 3) // Forced on-disk item ELSE eForcedTorso = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iForcedComp = iForcedComps+1// Bail ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ELIF (eCurrentJBIB >= JBIB_FMM_11_0 AND eCurrentJBIB <= JBIB_FMM_11_15) OR (iDLCJbibCheck = 11) // Force the the torso for sweater shirts IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_6_0 // Force the the torso for short sleeve vest shirts ELIF (eCurrentSpecial >= SPECIAL_FMM_3_0 AND eCurrentSpecial <= SPECIAL_FMM_3_15) OR (eCurrentSpecial >= SPECIAL_FMM_7_0 AND eCurrentSpecial <= SPECIAL_FMM_7_15) OR (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 7) eForcedTorso = TORSO_FMM_11_0 // Force the the torso for short sleeve vest shirts ELIF (eCurrentSpecial >= SPECIAL_FMM_6_0 AND eCurrentSpecial <= SPECIAL_FMM_6_15) OR (iDLCSpecialCheck = 6) eForcedTorso = TORSO_FMM_11_0 // Force the the torso for long sleeve vest shirts ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMM_12_0 // Force the torso for bare chest. ELIF (eCurrentSpecial = SPECIAL_FMM_15_0) eForcedTorso = TORSO_FMM_15_0 ENDIF ELIF (eCurrentJBIB >= JBIB_FMM_9_0 AND eCurrentJBIB <= JBIB_FMM_9_15) OR (iDLCJbibCheck = 9) eForcedTorso = TORSO_FMM_0_0 ELIF eCurrentJBIB = JBIB_FMM_15_0 IF eCurrentSpecial = SPECIAL_FMM_15_0 eForcedTorso = TORSO_FMM_15_0 ENDIF ENDIF BREAK CASE MP_F_FREEMODE_01 IF eCurrentJBIB >= JBIB_FMF_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 4) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF IF eCurrentSpecial >= SPECIAL_FMF_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentSpecial, COMP_TYPE_SPECIAL, 4) iDLCSpecialCheck = GET_DLC_DRAW_TAG(iDLCSpecialHash) SWITCH iDLCSpecialHash CASE HASH("DLC_MP_BEACH_F_ACCS2_0") CASE HASH("DLC_MP_BEACH_F_ACCS2_1") CASE HASH("DLC_MP_BEACH_F_ACCS2_2") CASE HASH("DLC_MP_BEACH_F_ACCS2_3") CASE HASH("DLC_MP_BEACH_F_ACCS2_4") CASE HASH("DLC_MP_BEACH_F_ACCS2_5") CASE HASH("DLC_MP_BEACH_F_ACCS2_6") CASE HASH("DLC_MP_BEACH_F_ACCS2_7") CASE HASH("DLC_MP_BEACH_F_ACCS2_8") CASE HASH("DLC_MP_BEACH_F_ACCS2_9") CASE HASH("DLC_MP_BEACH_F_ACCS2_10") CASE HASH("DLC_MP_BEACH_F_ACCS2_11") iDLCSpecialCheck = 15 BREAK CASE HASH("DLC_MP_VAL_F_ACCS2_0") CASE HASH("DLC_MP_VAL_F_ACCS2_1") CASE HASH("DLC_MP_VAL_F_ACCS2_2") CASE HASH("DLC_MP_VAL_F_ACCS2_3") CASE HASH("DLC_MP_VAL_F_ACCS2_4") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_0") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_1") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_2") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_3") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_4") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_5") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_6") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_7") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_8") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_9") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_10") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_11") iDLCSpecialCheck = 13 BREAK ENDSWITCH ENDIF // Loungewear IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_0_0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eCurrentSpecial >= SPECIAL_FMF_4_0 AND eCurrentSpecial <= SPECIAL_FMF_4_15) OR (eCurrentSpecial >= SPECIAL_FMF_5_0 AND eCurrentSpecial <= SPECIAL_FMF_5_15) OR (eCurrentSpecial >= SPECIAL_FMF_11_0 AND eCurrentSpecial <= SPECIAL_FMF_11_15) OR (eCurrentSpecial >= SPECIAL_FMF_12_0 AND eCurrentSpecial <= SPECIAL_FMF_12_15) OR (eCurrentSpecial >= SPECIAL_FMF_13_0 AND eCurrentSpecial <= SPECIAL_FMF_13_15) OR (eCurrentSpecial >= SPECIAL_FMF_15_0 AND eCurrentSpecial <= SPECIAL_FMF_15_15) OR (iDLCSpecialCheck = 4) OR (iDLCSpecialCheck = 5) OR (iDLCSpecialCheck = 11) OR (iDLCSpecialCheck = 12) OR (iDLCSpecialCheck = 13) OR (iDLCSpecialCheck = 15) OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_3") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_4") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_5") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_6") OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_TORSO_0_0"), COMP_TYPE_TORSO, 4) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_TORSO_1_0"), COMP_TYPE_TORSO, 4) ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_TORSO_2_0"), COMP_TYPE_TORSO, 4) ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_11_0 ELSE eForcedTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, DUMMY_PED_COMP, GET_JBIB_FROM_SPECIAL(ePedModel, eCurrentSpecial, 0), eCurrentLegs) IF eForcedTorso = DUMMY_PED_COMP eForcedTorso = TORSO_FMF_14_0 ENDIF ENDIF // Open short sleeve shirt ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMF_9_0 ELSE eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_H4_F_TORSO_0_0"), COMP_TYPE_TORSO, 4) ENDIF // Accs for parka jacket ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVERCOAT_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_3_0 // Vest shirt ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND NOT IS_JBIB_COMPONENT_A_JACKET(ePedModel, eCurrentJBIB) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMF_3_0 ELSE eForcedTorso = TORSO_FMF_0_0 ENDIF // Unbuttoned shirt ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMF_7_0 // Polo Neck ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) eForcedTorso = TORSO_FMF_3_0 // Loose Tank ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentLegs, COMP_TYPE_LEGS, 4), DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_11_0 ELSE eForcedTorso = TORSO_FMF_15_0 ENDIF // Tucked T-shirt + Baseball Tee ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eCurrentJBIB >= JBIB_FMF_1_0 AND eCurrentJBIB <= JBIB_FMF_1_15) // Denim jacket OR (eCurrentJBIB >= JBIB_FMF_6_0 AND eCurrentJBIB <= JBIB_FMF_6_15) // Closed jacket OR (eCurrentJBIB >= JBIB_FMF_8_0 AND eCurrentJBIB <= JBIB_FMF_8_15) // Leather jacket OR iDLCJbibCheck = 1 OR iDLCJbibCheck = 6 OR iDLCJbibCheck = 8 eForcedTorso = TORSO_FMF_1_0 ELIF (eCurrentJBIB >= JBIB_FMF_7_0 AND eCurrentJBIB <= JBIB_FMF_7_15) // Open jacket OR (eCurrentJBIB >= JBIB_FMF_10_0 AND eCurrentJBIB <= JBIB_FMF_10_15) // Track jacket OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tailscoat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Open scruffy OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dickies jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dickies jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Peacoat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Fur jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Belted jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Leather jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Trench coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Open Check Shirt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Quilted Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Cashmere Coat 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_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_3_0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Closed scruffy eForcedTorso = TORSO_FMF_9_0 ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Business shirts and suit vests IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_1_0 ELSE eForcedTorso = TORSO_FMF_6_0 ENDIF ELIF (eCurrentJBIB >= JBIB_FMF_1_0 AND eCurrentJBIB <= JBIB_FMF_1_15) OR (iDLCJbibCheck = 1) // Force the the torso for the denim jacket and cropped tank tops. IF (eCurrentSpecial >= SPECIAL_FMF_5_0 AND eCurrentSpecial <= SPECIAL_FMF_5_15) OR (eCurrentSpecial >= SPECIAL_FMF_15_0 AND eCurrentSpecial <= SPECIAL_FMF_15_15) OR (iDLCSpecialCheck = 5) OR (iDLCSpecialCheck = 15) eForcedTorso = TORSO_FMF_5_0 // Nopt sure if we need that part but will add as it's used for male freemode. ELIF eCurrentSpecial >= SPECIAL_FMF_DLC // Look up the forced components for this DLC item. IF iDLCSpecialHash != -1 INT iForcedComps iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCSpecialHash) INT iForcedComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iForcedComps iForcedComp GET_FORCED_COMPONENT(iDLCSpecialHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(PED_COMP_TORSO) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eForcedTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_TORSO, 4) // Forced on-disk item ELSE eForcedTorso = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iForcedComp = iForcedComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF ELIF (eCurrentJBIB >= JBIB_FMF_7_0 AND eCurrentJBIB <= JBIB_FMF_7_15) OR (iDLCJbibCheck = 7) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Open Check Shirt IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) eForcedTorso = TORSO_FMF_3_0 ELSE eForcedTorso = TORSO_FMF_6_0 ENDIF ENDIF BREAK ENDSWITCH RETURN (eForcedTorso) ENDFUNC /// PURPOSE: Gets the Special version of the Jbib item passed in (MP only) /// Returns dummy ped comp if there isn't one /// should only be used for the acquire copies stuff /// Use GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION when equipping items FUNC PED_COMP_NAME_ENUM GET_SPECIAL_FROM_JBIB(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eJbibItem, INT iJbibVariation) PED_COMP_NAME_ENUM eSpecialItem = DUMMY_PED_COMP // male IF ePedModel = MP_M_FREEMODE_01 IF eJbibItem <= JBIB_FMM_0_15 eSpecialItem = SPECIAL_FMM_0_0 ELIF eJbibItem <= JBIB_FMM_1_15 eSpecialItem = SPECIAL_FMM_1_0 ELIF eJbibItem <= JBIB_FMM_2_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_3_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_4_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_5_15 eSpecialItem = SPECIAL_FMM_5_0 ELIF eJbibItem <= JBIB_FMM_6_11 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_7_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_8_15 eSpecialItem = SPECIAL_FMM_8_0 ELIF eJbibItem <= JBIB_FMM_9_15 eSpecialItem = SPECIAL_FMM_9_0 ELIF eJbibItem <= JBIB_FMM_10_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_11_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_12_15 eSpecialItem = SPECIAL_FMM_12_0 ELIF eJbibItem <= JBIB_FMM_13_15 eSpecialItem = SPECIAL_FMM_13_0 ELIF eJbibItem <= JBIB_FMM_14_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMM_15_0 eSpecialItem = SPECIAL_FMM_15_0 #IF USE_TU_CHANGES ELIF eJbibItem >= JBIB_FMM_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 3) 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_SPECIAL) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eSpecialItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF #ENDIF ENDIF // female ELIF ePedModel = MP_F_FREEMODE_01 IF eJbibItem <= JBIB_FMF_0_15 eSpecialItem = SPECIAL_FMF_0_0 ELIF eJbibItem <= JBIB_FMF_1_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_2_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_3_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_4_15 eSpecialItem = SPECIAL_FMF_4_0 ELIF eJbibItem <= JBIB_FMF_5_15 eSpecialItem = SPECIAL_FMF_5_0 ELIF eJbibItem <= JBIB_FMF_6_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_7_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_8_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_9_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_10_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_11_15 eSpecialItem = SPECIAL_FMF_11_0 ELIF eJbibItem <= JBIB_FMF_12_15 eSpecialItem = SPECIAL_FMF_12_0 ELIF eJbibItem <= JBIB_FMF_13_15 eSpecialItem = SPECIAL_FMF_13_0 ELIF eJbibItem <= JBIB_FMF_14_15 eSpecialItem = DUMMY_PED_COMP ELIF eJbibItem <= JBIB_FMF_15_15 eSpecialItem = SPECIAL_FMF_15_0 #IF USE_TU_CHANGES ELIF eJbibItem >= JBIB_FMF_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 4) 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_SPECIAL) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) // Forced on-disk item ELSE eSpecialItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ENDIF IF eSpecialItem <> DUMMY_PED_COMP eSpecialItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(eSpecialItem)+iJbibVariation)) ENDIF RETURN eSpecialItem ENDFUNC /// PURPOSE: The SPECIAL version of a JBIB item to be used with jacket layers. MP ONLY. /// ePedModel: model of the ped who is equipping the item /// eItem- the jbib item we want to wear under the jacket /// eJacket - the jacket we want to wear it under FUNC PED_COMP_NAME_ENUM GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM eJacket, INT iJbibVariation) PED_COMP_NAME_ENUM eSpecialComp = DUMMY_PED_COMP BOOL bDoOffset = TRUE // set to False if we don't want to update the special comp to return an offset texture variation // used for the leather jacket when forcing off invalid items // If you add a new rule to this function // you will probably need to also update IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP //male IF ePedModel = MP_M_FREEMODE_01 INT iDLCJbibJacketHash = -1 INT iDLCJbibJacketCheck = -1 IF (eJacket >= JBIB_FMM_DLC) iDLCJbibJacketHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJacket, COMP_TYPE_JBIB, 3) iDLCJbibJacketCheck = GET_DLC_DRAW_TAG(iDLCJbibJacketHash) ENDIF INT iDLCItemHash = -1 INT iDLCItemCheck = -1 IF (eItem >= JBIB_FMM_DLC) iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) iDLCItemCheck = GET_DLC_DRAW_TAG(iDLCItemHash) ENDIF IF iDLCJbibJacketHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF ENDIF IF iDLCJbibJacketHash != -1 // Luxe Bomber - open IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LOW_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_JAN_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LOW2_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block untucked shirts, baseball tees, checked shirt. IF (eItem >= JBIB_FMM_8_0 AND eItem <= JBIB_FMM_8_15) OR (eItem >= JBIB_FMM_12_0 AND eItem <= JBIB_FMM_14_15) OR iDLCItemCheck = 8 OR iDLCItemCheck = 12 OR iDLCItemCheck = 13 OR iDLCItemCheck = 14 RETURN DUMMY_PED_COMP ENDIF IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block motoX IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF ENDIF ENDIF // Luxe Bomber - closed IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LOW_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_JAN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF // Stunt Bomber - closed IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Satin jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tour Jacket RETURN DUMMY_PED_COMP ENDIF // Luxe Trench IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block tank tops, baseball tees, polo shirts, IF (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_8_0 AND eItem <= JBIB_FMM_8_15) OR (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) OR (eItem >= JBIB_FMM_12_0 AND eItem <= JBIB_FMM_14_15) OR iDLCItemCheck = 5 OR iDLCItemCheck = 8 OR iDLCItemCheck = 9 OR iDLCItemCheck = 12 OR iDLCItemCheck = 13 OR iDLCItemCheck = 14 RETURN DUMMY_PED_COMP ENDIF ENDIF // Heist leather IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) //240 OR (iDLCItemCheck = 0)// T-shirts (crew) OR (iDLCItemCheck = 1)// T-shirts (v) OR (iDLCItemCheck = 5)// Tank tops OR (iDLCItemCheck = 15)// Topless // Safe ELSE RETURN DUMMY_PED_COMP ENDIF ENDIF // Tux IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF // Lowrider2 - Open check shirt IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bare chest and tank tops with these. IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_8_0 AND eItem <= JBIB_FMM_8_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) //240 OR (iDLCItemCheck = 0)// T-shirts (crew) OR (iDLCItemCheck = 1)// T-shirts (v) OR (iDLCItemCheck = 5)// Tank tops OR (iDLCItemCheck = 8)// Baseball tees OR (iDLCItemCheck = 15)// Topless // Safe ELSE RETURN DUMMY_PED_COMP ENDIF ENDIF // Open short sleeve shirt IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Player only allowed to wear tees and shirt accs with these. IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) OR (iDLCItemCheck = 0)// T-shirts (crew) // Safe ELSE RETURN DUMMY_PED_COMP ENDIF ENDIF ENDIF INT iAltSpecial = 0 BOOL bLookupAlts = FALSE // New biker vests have custom accs IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Works with bare chest and t-shirts. IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) // Get DLC variant of the on disk item. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))) SWITCH eItem CASE JBIB_FMM_0_0 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_0"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_1 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_1"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_2 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_2"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_3 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_3"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_4 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_4"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_5 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_5"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_7 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_6"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_8 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_7"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_11 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_0_8"), COMP_TYPE_SPECIAL, 3) BREAK ENDSWITCH ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) SWITCH eItem CASE JBIB_FMM_0_0 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_0"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_1 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_1"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_2 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_2"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_3 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_3"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_4 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_4"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_5 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_5"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_7 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_6"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_8 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_7"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_11 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_2_8"), COMP_TYPE_SPECIAL, 3) BREAK ENDSWITCH ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) SWITCH eItem CASE JBIB_FMM_0_0 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_0"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_1 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_1"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_2 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_2"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_3 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_3"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_4 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_4"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_5 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_5"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_7 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_6"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_8 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_7"), COMP_TYPE_SPECIAL, 3) BREAK CASE JBIB_FMM_0_11 eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_M_SPECIAL_4_8"), COMP_TYPE_SPECIAL, 3) BREAK ENDSWITCH ENDIF RETURN eSpecialComp ELIF (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) //240 eSpecialComp = SPECIAL_FMM_15_0 RETURN eSpecialComp ELIF eItem >= JBIB_FMM_DLC bLookupAlts = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))) iAltSpecial = 4 ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) iAltSpecial = 5 ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) iAltSpecial = 6 ELSE iAltSpecial = -1 ENDIF // Don't return here, we will continue on to process bLookupAlts ELSE RETURN eSpecialComp ENDIF ENDIF // Classic biker jackets works with t-shirts IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) bLookupAlts = TRUE iAltSpecial = 1 ENDIF // New polonecks have 2 alts IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) bLookupAlts = TRUE // ALT_SPECIAL works with open fitted jackets IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Quilted jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Cashmere Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 1 // default works with closed jackets ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Long suit iAltSpecial = 0 // Doesn't work with anything else. ELSE iAltSpecial = -1 ENDIF ENDIF IF bLookupAlts CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION : Looking for poloneck alt ", iAltSpecial) IF iAltSpecial != -1 INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCItemHash) INT iAltComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iDLCItemHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL)) IF (iAltSpecial = 6 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 5 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 4 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 3 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 0 AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) //OR (iRetNameHash = 0 OR iRetNameHash = 1849449579) // 1849449579 = "0" // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail bDoOffset = FALSE RETURN eSpecialComp ENDIF ENDIF ENDREPEAT ENDIF RETURN DUMMY_PED_COMP ENDIF // Block tank top with new biker leather hoodie. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (iDLCItemCheck = 5) RETURN DUMMY_PED_COMP ENDIF ENDIF // Block polo shirts and tank tops with these jackets IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) OR (iDLCItemCheck = 5)// Tank tops OR (iDLCItemCheck = 9)// Polo shirts RETURN DUMMY_PED_COMP ENDIF ENDIF IF (eJacket >= JBIB_FMM_6_0 AND eJacket <= JBIB_FMM_6_11) OR (iDLCJbibJacketCheck = 6) // leather jackets have special rules IF eItem <= JBIB_FMM_0_15 // leather jacket + round neck tshirt eSpecialComp = SPECIAL_FMM_2_0 ELIF eItem <= JBIB_FMM_1_15 // leather jacket + v neck tshirt eSpecialComp = SPECIAL_FMM_14_0 ELIF eItem = JBIB_FMM_15_0 eSpecialComp = SPECIAL_FMM_15_0 #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMM_14_0 AND eItem <= JBIB_FMM_14_15 AND IS_MP_BUSINESS_PACK_PRESENT() AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // leather jacket and checked shirt - business pack update SETUP_SHOP_PED_APPAREL_QUERY_TU(3, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, ENUM_TO_INT(PED_COMP_SPECIAL)) // shop=CLO_SHOP_NONE INT iDLCItem = GET_SHOP_PED_QUERY_COMPONENT_INDEX(HASH("DLC_MP_BUSI_M_ACCS5_0")) eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, GET_PED_COMPONENT_FROM_TYPE(COMP_TYPE_SPECIAL)))+iDLCItem)) bDoOffset = TRUE #ENDIF ELSE // leather jacket + other item, just use round neck tshirt eSpecialComp = SPECIAL_FMM_2_2 // no (use special version of default given jbib) bDoOffset = FALSE #IF USE_TU_CHANGES IF eItem >= JBIB_FMM_DLC // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) IF iItemNameHash != -1 AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Don't do this for untucked shirts AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Don't do this for untucked shirts 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_SPECIAL) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" // Don't use new alts. IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) ENDIF // Forced on-disk item ELSE eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF // Leather jacket tends to use the second alt version of the accs so keep going. //iAltComp = iAltComps+1// Bail ENDIF ENDREPEAT ENDIF ENDIF #ENDIF ENDIF ELSE // other jackets act the same as eachother IF eItem <= JBIB_FMM_0_15 eSpecialComp = SPECIAL_FMM_0_0 // yes ELIF eItem <= JBIB_FMM_1_15 eSpecialComp = SPECIAL_FMM_1_0 // yes ELIF eItem <= JBIB_FMM_2_15 eSpecialComp = SPECIAL_FMM_0_2 // no (use special version of default given jbib) bDoOffset = FALSE ELIF eItem <= JBIB_FMM_3_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMM_4_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMM_5_15 eSpecialComp = SPECIAL_FMM_5_0 // yes ELIF eItem <= JBIB_FMM_6_11 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMM_7_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMM_8_15 eSpecialComp = SPECIAL_FMM_8_0 // yes ELIF eItem <= JBIB_FMM_9_15 eSpecialComp = SPECIAL_FMM_9_0 // yes ELIF eItem <= JBIB_FMM_10_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMM_11_15 eSpecialComp = SPECIAL_FMM_0_2 // no (use special version of default given jbib) bDoOffset = FALSE // untucked shirt- works with all jackets except track jackets ELIF (eItem <= JBIB_FMM_12_15 OR iDLCItemCheck = 12) IF (eJacket >= JBIB_FMM_3_0 AND eJacket <= JBIB_FMM_3_15) OR (eJacket >= JBIB_FMM_7_0 AND eJacket <= JBIB_FMM_7_15) OR iDLCJbibJacketCheck = 3 OR iDLCJbibJacketCheck = 7 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Trench coat eSpecialComp = SPECIAL_FMM_0_2 // no (use special version of default given jbib) bDoOffset = FALSE ELSE // Tailcoats use heist accs 8 // All others use heist accs 9 BOOL bTailsVersion = FALSE IF (eJacket >= JBIB_FMM_15_0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) bTailsVersion = TRUE ENDIF // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) 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_SPECIAL)) AND (bTailsVersion = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_TAILS_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) // Forced on-disk item ELSE eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail bDoOffset = FALSE ENDIF ENDREPEAT ELSE // Must be the on-disk drawable (draw12, tex0-11) so just get initial heist accs and use offset. eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_0"), COMP_TYPE_SPECIAL, 3) bDoOffset = TRUE ENDIF ENDIF ELIF eItem <= JBIB_FMM_13_15 eSpecialComp = SPECIAL_FMM_13_0 // yes ELIF eItem <= JBIB_FMM_14_15 eSpecialComp = SPECIAL_FMM_0_2 // no (use special version of default given jbib) bDoOffset = FALSE #IF USE_TU_CHANGES IF IS_MP_BUSINESS_PACK_PRESENT() INT iCheckedShirtHash = HASH("DLC_MP_BUSI_M_ACCS4_0") IF (eJacket >= JBIB_FMM_6_0 AND eJacket <= JBIB_FMM_6_11) // leather jacket OR (eJacket >= JBIB_FMM_15_0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) iCheckedShirtHash = HASH("DLC_MP_BUSI_M_ACCS5_0") ENDIF SETUP_SHOP_PED_APPAREL_QUERY_TU(3, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, ENUM_TO_INT(PED_COMP_SPECIAL)) // shop=CLO_SHOP_NONE INT iDLCItem = GET_SHOP_PED_QUERY_COMPONENT_INDEX(iCheckedShirtHash) eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, GET_PED_COMPONENT_FROM_TYPE(COMP_TYPE_SPECIAL)))+iDLCItem)) bDoOffset = TRUE ENDIF #ENDIF // Doesn't work with tails jacket or hoodies IF (eJacket >= JBIB_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eJacket >= JBIB_FMM_7_0 AND eJacket <= JBIB_FMM_7_15) OR iDLCJbibJacketCheck = 7 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Trench coat eSpecialComp = DUMMY_PED_COMP ENDIF ELIF eItem <= JBIB_FMM_15_0 eSpecialComp = SPECIAL_FMM_15_0 bDoOffset = FALSE // yes #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMM_DLC eSpecialComp = SPECIAL_FMM_0_2 // no (use special version of default given jbib) bDoOffset = FALSE BOOL bUseAltSpecial = FALSE // Look up the alternative component for this DLC item. INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3) // Some jackets need to use the alt accs IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Long suit bUseAltSpecial = TRUE ENDIF 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_SPECIAL)) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 3) bDoOffset = FALSE // Don't bail unless we don't care about alts or have found an alt. IF NOT bUseAltSpecial OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltComp = iAltComps+1// Bail ENDIF // Forced on-disk item ELSE eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) iAltComp = iAltComps+1// Bail bDoOffset = FALSE ENDIF ENDIF ENDREPEAT ENDIF #ENDIF ENDIF ENDIF // female ELIF ePedModel = MP_F_FREEMODE_01 INT iDLCJbibJacketHash = -1 INT iDLCJbibJacketCheck = -1 IF (eJacket >= JBIB_FMF_DLC) iDLCJbibJacketHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJacket, COMP_TYPE_JBIB, 4) iDLCJbibJacketCheck = GET_DLC_DRAW_TAG(iDLCJbibJacketHash) ENDIF INT iDLCItemHash = -1 INT iDLCItemCheck = -1 IF (eItem >= JBIB_FMF_DLC) iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4) iDLCItemCheck = GET_DLC_DRAW_TAG(iDLCItemHash) ENDIF IF iDLCJbibJacketHash != -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block motoX IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF ENDIF // Lowrider2 - Open check shirt + Party shirts IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear some items with the open check shirt IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) // T-shirt OR (eItem >= JBIB_FMF_2_0 AND eItem <= JBIB_FMF_2_15) // Off-Shoulder Top OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) // Tank Top OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) // Cropped Tank Top OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) // Sports racerback OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) // Camisole OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) // Bustier OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) // Bikini OR (iDLCItemCheck = 0) OR (iDLCItemCheck = 2) OR (iDLCItemCheck = 4) OR (iDLCItemCheck = 5) OR (iDLCItemCheck = 11) OR (iDLCItemCheck = 12) OR (iDLCItemCheck = 13) OR (iDLCItemCheck = 15) // - Business2, jbib 0, white-black-red OR iDLCItemHash = HASH("DLC_MP_BUS2_F_JBIB0_0") OR iDLCItemHash = HASH("DLC_MP_BUS2_F_JBIB0_1") OR iDLCItemHash = HASH("DLC_MP_BUS2_F_JBIB0_2") // - Hipster, jbib 7, green-yellow-lilac-grey OR iDLCItemHash = HASH("DLC_MP_HIPS_F_JBIB7_0") OR iDLCItemHash = HASH("DLC_MP_HIPS_F_JBIB7_1") OR iDLCItemHash = HASH("DLC_MP_HIPS_F_JBIB7_2") OR iDLCItemHash = HASH("DLC_MP_HIPS_F_JBIB7_3") // - Independence, jbib 1, blue OR iDLCItemHash = HASH("DLC_MP_IND_F_JBIB_1_0") // - Luxe, jbib 5, gold OR iDLCItemHash = HASH("DLC_MP_LUXE_F_JBIB_3_0") // Safe CPRINTLN(DEBUG_PED_COMP, "TRY_ON_SELECTED_CLOTHING_ITEM - jbib suitable for low2 open check shirts") ELSE RETURN DUMMY_PED_COMP ENDIF ENDIF // TODO - wait for accs to be worked up. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN DUMMY_PED_COMP ENDIF INT iAltSpecial = 0 BOOL bLookupAlts = FALSE // New t-shirts have 3 acc variants so we need to work out which one to use. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EXEC_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) bLookupAlts = TRUE // ALT_SPECIAL_2 works with open short jackets (denim, leather). // - draw 1 = denim // - draw 8 = leather IF eJacket >= JBIB_FMF_1_0 AND eJacket <= JBIB_FMF_1_15 OR eJacket >= JBIB_FMF_8_0 AND eJacket <= JBIB_FMF_8_15 OR iDLCJbibJacketCheck = 1 OR iDLCJbibJacketCheck = 8 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 2 // default accs works with closed luxe jackets // - luxe draw 1 = leather // - luxe draw 2 = trenchcoat // - luxe draw 4 = belted jacket ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 0 // Doesn't work with track jackets or closed scruffy suit jackets. ELIF eJacket >= JBIB_FMF_10_0 AND eJacket <= JBIB_FMF_10_15 OR iDLCJbibJacketCheck = 10 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Baseball tee works! IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 1 // Tucked tee works! ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 1 ELSE iAltSpecial = -1 ENDIF // ALT_SPECIAL works with open suit jackets ELSE iAltSpecial = 1 ENDIF ENDIF // New polonecks have 2 alts IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) bLookupAlts = TRUE // ALT_SPECIAL works with open jackets IF eJacket >= JBIB_FMF_7_0 AND eJacket <= JBIB_FMF_7_15 // open jacket (disk, business, hipster, luxe, apartment) OR iDLCJbibJacketCheck = 7 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Leather jacket tagged with draw 7 so we need to make sure it uses closed variant IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 0 ELSE iAltSpecial = 1 ENDIF // default works with closed jackets ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_HEIST_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 0 // Doesn't work with anything else. ELSE iAltSpecial = -1 ENDIF ENDIF // Some off-shoulder tops have 3 acc variants so we need to work out which one to use. SWITCH iDLCItemHash // - Business2, jbib 0, white-black-red CASE HASH("DLC_MP_BUS2_F_JBIB0_0") CASE HASH("DLC_MP_BUS2_F_JBIB0_1") CASE HASH("DLC_MP_BUS2_F_JBIB0_2") // - Hipster, jbib 7, green-yellow-lilac-grey CASE HASH("DLC_MP_HIPS_F_JBIB7_0") CASE HASH("DLC_MP_HIPS_F_JBIB7_1") CASE HASH("DLC_MP_HIPS_F_JBIB7_2") CASE HASH("DLC_MP_HIPS_F_JBIB7_3") // - Independence, jbib 1, blue CASE HASH("DLC_MP_IND_F_JBIB_1_0") // - Luxe, jbib 5, gold CASE HASH("DLC_MP_LUXE_F_JBIB_3_0") // MotoX 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") bLookupAlts = TRUE // ALT_SPECIAL works with closed luxe jackets // - temp draw 0 = leather // - luxe draw 2 = belted jacket IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 1 // - temp draw 1 = trenchcoat ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 2 // - luxe draw 0 = peacoat jacket ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) iAltSpecial = 3 // default accs works with open short jackets (denim, leather). // - draw 1 = denim // - draw 8 = leather // - luxe draw 0 = peacoat ELIF eJacket >= JBIB_FMF_1_0 AND eJacket <= JBIB_FMF_1_15 OR eJacket >= JBIB_FMF_8_0 AND eJacket <= JBIB_FMF_8_15 OR eJacket >= JBIB_FMF_7_0 AND eJacket <= JBIB_FMF_7_15 OR iDLCJbibJacketCheck = 1 OR iDLCJbibJacketCheck = 7 OR iDLCJbibJacketCheck = 8 iAltSpecial = 0 // Doesn't work with anything else. ELSE iAltSpecial = -1 ENDIF BREAK // - Independence, jbib 1, flag CASE HASH("DLC_MP_IND_F_JBIB_1_1") bLookupAlts = TRUE // default accs works with open short jackets (denim, leather). // - draw 1 = denim // - draw 8 = leather IF eJacket >= JBIB_FMF_1_0 AND eJacket <= JBIB_FMF_1_15 OR eJacket >= JBIB_FMF_8_0 AND eJacket <= JBIB_FMF_8_15 OR iDLCJbibJacketCheck = 1 OR iDLCJbibJacketCheck = 8 iAltSpecial = 0 // Doesn't work with anything else. ELSE iAltSpecial = -1 ENDIF BREAK ENDSWITCH // Classic biker jackets works with rolled t-shirts IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Works with bikini tops IF (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR (iDLCItemCheck = 15) eSpecialComp = SPECIAL_FMF_15_0 // yes // Works with tucked t-shirts ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bLookupAlts = TRUE iAltSpecial = 0 ELSE RETURN eSpecialComp ENDIF // New biker vests have custom accs ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Block sleeveless tactical jacket with camisoles. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF ((eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR iDLCItemCheck = 12) RETURN DUMMY_PED_COMP ENDIF ENDIF IF (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR (iDLCItemCheck = 4) OR (iDLCItemCheck = 5) OR (iDLCItemCheck = 11) OR (iDLCItemCheck = 12) OR (iDLCItemCheck = 13) OR (iDLCItemCheck = 15) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION : good to skip alts and get normal accs") bLookupAlts = FALSE // And DLC t-shirts ELIF eItem >= JBIB_FMF_DLC bLookupAlts = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))) iAltSpecial = 4 ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) iAltSpecial = 5 ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) iAltSpecial = 6 ELSE iAltSpecial = -1 ENDIF // Don't return here, we will continue on to process bLookupAlts ELSE RETURN eSpecialComp ENDIF ENDIF IF bLookupAlts IF iAltSpecial != -1 INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCItemHash) INT iAltComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iDLCItemHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL)) IF (iAltSpecial = 6 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 5 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 4 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 3 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 0 AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) //OR (iRetNameHash = 0 OR iRetNameHash = 1849449579) // 1849449579 = "0" // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) // Forced on-disk item ELSE eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) ENDIF iAltComp = iAltComps+1// Bail bDoOffset = FALSE RETURN eSpecialComp ENDIF ENDIF ENDREPEAT ENDIF RETURN DUMMY_PED_COMP ENDIF // Fix for bug 1757448 - Need to use alt camisole accs when wearing this jacket. IF ((eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR iDLCItemCheck = 12) AND ((eJacket >= JBIB_FMF_6_0 AND eJacket <= JBIB_FMF_6_15) OR (eJacket >= JBIB_FMF_7_0 AND eJacket <= JBIB_FMF_7_15) OR iDLCJbibJacketCheck = 6 OR iDLCJbibJacketCheck = 7) AND IS_MP_BUSINESS_PACK_PRESENT() AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN DUMMY_PED_COMP ENDIF // Just hardcode this garbage. INT iCamisoleNameHash = iDLCItemHash IF (eItem = JBIB_FMF_12_7) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_0"), COMP_TYPE_SPECIAL, 4) ELIF (eItem = JBIB_FMF_12_8) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_1"), COMP_TYPE_SPECIAL, 4) ELIF (eItem = JBIB_FMF_12_9) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_2"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_0")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_3"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_1")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_4"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_2")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_5"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_3")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_6"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_4")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_7"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_5")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_8"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_6")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_9"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_7")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_10"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_8")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_11"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_9")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_12"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_10")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_13"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_11")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_14"), COMP_TYPE_SPECIAL, 4) ELIF (iCamisoleNameHash = HASH("DLC_MP_BUSI_F_JBIB2_12")) eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_15"), COMP_TYPE_SPECIAL, 4) ENDIF bDoOffset = FALSE CPRINTLN(DEBUG_PED_COMP, "[kr] CLOTHES - GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION using new accs = ", eSpecialComp) ELIF eItem <= JBIB_FMF_0_15 IF (eJacket >= JBIB_FMF_10_0 AND eJacket <= JBIB_FMF_10_15) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // for sports jacket, use other special item eSpecialComp = SPECIAL_FMF_1_0 // yes ELSE eSpecialComp = SPECIAL_FMF_0_0 // yes ENDIF ELIF eItem <= JBIB_FMF_1_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMF_2_15 eSpecialComp = SPECIAL_FMF_4_14 // no (use special version of default given jbib) bDoOffset = FALSE ELIF eItem <= JBIB_FMF_3_15 eSpecialComp = SPECIAL_FMF_4_14 // no (use special version of default given jbib) bDoOffset = FALSE ELIF eItem <= JBIB_FMF_4_15 eSpecialComp = SPECIAL_FMF_4_0 // yes ELIF eItem <= JBIB_FMF_5_15 eSpecialComp = SPECIAL_FMF_5_0 // yes ELIF eItem <= JBIB_FMF_6_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMF_7_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMF_8_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMF_9_15 eSpecialComp = SPECIAL_FMF_4_14 // no (use special version of default given jbib) bDoOffset = FALSE ELIF eItem <= JBIB_FMF_10_15 eSpecialComp = DUMMY_PED_COMP // no - jacket ELIF eItem <= JBIB_FMF_11_15 eSpecialComp = SPECIAL_FMF_11_0 // yes ELIF eItem <= JBIB_FMF_12_15 // Most of the camisole accs are DLC items so don't use the offset bDoOffset = FALSE SWITCH eItem CASE JBIB_FMF_12_7 eSpecialComp = SPECIAL_FMF_12_7 // yes BREAK CASE JBIB_FMF_12_8 eSpecialComp = SPECIAL_FMF_12_8 // yes BREAK CASE JBIB_FMF_12_9 eSpecialComp = SPECIAL_FMF_12_9 // yes BREAK ENDSWITCH // Don't allow camisoles to work with track jackets. IF ((eJacket >= JBIB_FMF_10_0 AND eJacket <= JBIB_FMF_10_15) OR iDLCJbibJacketCheck = 10) RETURN DUMMY_PED_COMP ENDIF ELIF eItem <= JBIB_FMF_13_15 eSpecialComp = SPECIAL_FMF_13_0 // yes ELIF eItem <= JBIB_FMF_14_15 eSpecialComp = SPECIAL_FMF_4_14 // no (use special version of default given jbib) bDoOffset = FALSE ELIF eItem <= JBIB_FMF_15_15 eSpecialComp = SPECIAL_FMF_15_0 // yes #IF USE_TU_CHANGES ELIF eItem >= JBIB_FMF_DLC eSpecialComp = SPECIAL_FMF_4_14 // no (use special version of default given jbib) bDoOffset = FALSE // Look up the alternative component for this DLC item. IF iDLCItemHash != -1 // Do not grab the special for vest shirts unless the jacket is a vest. BOOL bProcessLookup = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bProcessLookup = FALSE IF eJacket >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibJacketHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) bProcessLookup = TRUE ENDIF ENDIF IF bProcessLookup iAltSpecial = 0 IF eJacket >= JBIB_FMF_10_0 AND eJacket <= JBIB_FMF_10_15 // Use alt for camisole. IF (iDLCItemCheck = 12) iAltSpecial = 1 ENDIF ENDIF INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCItemHash) INT iAltComp INT iRetNameHash, iRetCompEnum, iRetType REPEAT iAltComps iAltComp GET_VARIANT_COMPONENT(iDLCItemHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType) IF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL)) AND (iRetNameHash = 0 OR iRetNameHash = 1849449579 // 1849449579 = "0" OR (iAltSpecial = 6 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 5 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 4 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 3 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iAltSpecial = 0 AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) ) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" eSpecialComp = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 4) PRINTLN("GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION - found special comp with hash ", iRetNameHash, " for jacket ", eJacket) // Forced on-disk item ELSE eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) PRINTLN("GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION - found special comp with enum ", eSpecialComp, " for jacket ", eJacket) ENDIF iAltComp = iAltComps+1// Bail bDoOffset = FALSE ENDIF ENDREPEAT ENDIF ENDIF #ENDIF ENDIF ENDIF IF bDoOffset AND eSpecialComp <> DUMMY_PED_COMP eSpecialComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, (ENUM_TO_INT(eSpecialComp)+iJbibVariation)) ENDIF RETURN (eSpecialComp) ENDFUNC /// PURPOSE: /// Returns FALSE if the special and jbib can't be worn together FUNC BOOL DO_JBIB_AND_SPECIAL_CHECK_MP(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eSpecialItem, PED_COMP_NAME_ENUM eJbibItem) BOOL bIsJacket = IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbibItem) BOOL bWearingATux = FALSE IF ePedModel = MP_M_FREEMODE_01 INT iDLCJbibHash = -1 INT iDLCJbibCheck = -1 IF eJbibItem >= JBIB_FMM_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 3) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) bWearingATux = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) ENDIF INT iDLCSpecialHash = -1 INT iDLCSpecialCheck = -1 IF eSpecialItem >= SPECIAL_FMM_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 3) iDLCSpecialCheck = GET_DLC_DRAW_TAG(iDLCSpecialHash) ENDIF BOOL bIsLeatherJacket = FALSE IF (eJbibItem >= JBIB_FMM_6_0 AND eJbibItem <= JBIB_FMM_6_11) OR (iDLCJbibCheck = 6) bIsLeatherJacket = TRUE ENDIF BOOL bIsVarsityJacket = FALSE IF (iDLCJbibHash != -1) IF (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_LOW_DRAW_8, 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))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) bIsVarsityJacket = TRUE ENDIF ENDIF IF (iDLCJbibHash != -1) IF (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_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))) // Player only allowed to wear bare chest with these. IF (eSpecialItem = SPECIAL_FMM_15_0) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF IF (iDLCJbibHash != -1) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bare chest and tank tops with these. IF (eSpecialItem >= SPECIAL_FMM_0_0 AND eSpecialItem <= SPECIAL_FMM_0_15) OR (eSpecialItem >= SPECIAL_FMM_1_0 AND eSpecialItem <= SPECIAL_FMM_1_15) OR (eSpecialItem >= SPECIAL_FMM_5_0 AND eSpecialItem <= SPECIAL_FMM_5_15) OR (eSpecialItem >= SPECIAL_FMM_8_0 AND eSpecialItem <= SPECIAL_FMM_8_15) OR (eSpecialItem >= SPECIAL_FMM_15_0 AND eSpecialItem <= SPECIAL_FMM_15_0) //240 OR (iDLCSpecialCheck = 0)// T-shirts (crew) OR (iDLCSpecialCheck = 1)// T-shirts (v) OR (iDLCSpecialCheck = 5)// Tank tops OR (iDLCSpecialCheck = 8)// Baseball tees OR (iDLCSpecialCheck = 15)// Topless RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear tees and shirt accs with these. IF (eSpecialItem >= SPECIAL_FMM_0_0 AND eSpecialItem <= SPECIAL_FMM_0_15) OR (eSpecialItem >= SPECIAL_FMM_15_0 AND eSpecialItem <= SPECIAL_FMM_15_0) OR (iDLCSpecialCheck = 0)// T-shirts (crew) OR (iDLCSpecialCheck = 15)// Tees RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVERCOAT_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Player only allowed to wear parka jacket with blazer+shirt / blazer+turtleneck combo. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OVERCOAT_JBIB, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bare chest with jacket only. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eSpecialItem = SPECIAL_FMM_15_0) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // Player only allowed to wear bare chest and alt t-shirts with these IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eSpecialItem = SPECIAL_FMM_15_0) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player allowed to wear the bomber jacket with these items IF (eSpecialItem >= SPECIAL_FMM_0_0 AND eSpecialItem <= SPECIAL_FMM_0_15) OR (eSpecialItem >= SPECIAL_FMM_1_0 AND eSpecialItem <= SPECIAL_FMM_1_15) OR (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) OR (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (eSpecialItem >= SPECIAL_FMM_5_0 AND eSpecialItem <= SPECIAL_FMM_5_15) OR (eSpecialItem >= SPECIAL_FMM_9_0 AND eSpecialItem <= SPECIAL_FMM_9_15) OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR (eSpecialItem = SPECIAL_FMM_15_0) OR (iDLCSpecialCheck = 0) OR (iDLCSpecialCheck = 1) OR (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 4) OR (iDLCSpecialCheck = 5) OR (iDLCSpecialCheck = 9) OR (iDLCSpecialCheck = 10) OR (iDLCSpecialCheck = 11) OR (iDLCSpecialCheck = 13) OR (iDLCSpecialCheck = 15) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ENDIF ELSE RETURN FALSE ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player allowed to wear the varsity jacket with these items IF (eSpecialItem >= SPECIAL_FMM_0_0 AND eSpecialItem <= SPECIAL_FMM_0_15) OR (eSpecialItem >= SPECIAL_FMM_1_0 AND eSpecialItem <= SPECIAL_FMM_1_15) OR (eSpecialItem >= SPECIAL_FMM_5_0 AND eSpecialItem <= SPECIAL_FMM_5_15) OR (eSpecialItem >= SPECIAL_FMM_9_0 AND eSpecialItem <= SPECIAL_FMM_9_15) OR (eSpecialItem = SPECIAL_FMM_15_0) OR (iDLCSpecialCheck = 0) OR (iDLCSpecialCheck = 1) OR (iDLCSpecialCheck = 5) OR (iDLCSpecialCheck = 9) OR (iDLCSpecialCheck = 15) RETURN TRUE ELSE RETURN FALSE ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player allowed to wear the tailcoat with these items // - Suit vests IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 4) // - Tanktops OR (eSpecialItem >= SPECIAL_FMM_5_0 AND eSpecialItem <= SPECIAL_FMM_5_15) OR (iDLCSpecialCheck = 5) // - Poloshirts OR (eSpecialItem >= SPECIAL_FMM_9_0 AND eSpecialItem <= SPECIAL_FMM_9_15) OR (iDLCSpecialCheck = 9) // - Topless OR (eSpecialItem = SPECIAL_FMM_15_0) //OR (iDLCSpecialCheck = 15) // - Business Shirts OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (iDLCSpecialCheck = 10) OR (iDLCSpecialCheck = 11) // - Untucked shirt OR (eSpecialItem >= SPECIAL_FMM_12_0 AND eSpecialItem <= SPECIAL_FMM_12_15) OR (iDLCSpecialCheck = 12) // - Tucked shirt OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR (iDLCSpecialCheck = 13) RETURN TRUE ELSE RETURN FALSE ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SCRUFFY_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player allowed to wear the scruffy jacket with these items // - Suit vests IF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 4) // - Business Shirts OR (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (iDLCSpecialCheck = 10) OR (iDLCSpecialCheck = 11) // - Untucked shirt OR (eSpecialItem >= SPECIAL_FMM_12_0 AND eSpecialItem <= SPECIAL_FMM_12_15) OR (iDLCSpecialCheck = 12) // - Tucked shirt OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15) OR (iDLCSpecialCheck = 13) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // Sweater vest only works with sweat vest shirt IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE RETURN FALSE ENDIF ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) OR (iDLCJbibCheck = 11) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Sweat vest check passed.") RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Sweat vest check failed.") RETURN FALSE ENDIF ENDIF IF (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (iDLCSpecialCheck = 6) OR (iDLCSpecialCheck = 7) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Waistcoat shirts can only be worn with waistcoat jbib.") RETURN FALSE ENDIF ENDIF IF (eSpecialItem >= SPECIAL_FMM_6_0 AND eSpecialItem <= SPECIAL_FMM_6_15) OR (eSpecialItem >= SPECIAL_FMM_7_0 AND eSpecialItem <= SPECIAL_FMM_7_15) OR (iDLCSpecialCheck = 6) OR (iDLCSpecialCheck = 7) IF (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <= JBIB_FMM_11_15) OR (iDLCJbibCheck = 11) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Sweat vest check passed.") RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Sweat vest check failed.") RETURN FALSE ENDIF ELSE CPRINTLN(DEBUG_PED_COMP, "Waistcoat shirts can only be worn with waistcoat jbib.") RETURN FALSE ENDIF ELIF (eSpecialItem >= SPECIAL_FMM_3_0 AND eSpecialItem <= SPECIAL_FMM_3_15) OR (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15) OR (iDLCSpecialCheck = 3) OR (iDLCSpecialCheck = 4) IF bIsJacket = TRUE AND bIsLeatherJacket = FALSE AND bWearingATux = FALSE AND bIsVarsityJacket= FALSE AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Waistcoat specials can only be worn with jacket jbib (not leather).") RETURN FALSE ENDIF ELIF (eSpecialItem >= SPECIAL_FMM_10_0 AND eSpecialItem <= SPECIAL_FMM_10_15) OR (eSpecialItem >= SPECIAL_FMM_11_0 AND eSpecialItem <= SPECIAL_FMM_11_15) OR (iDLCSpecialCheck = 10) OR (iDLCSpecialCheck = 11) IF bIsJacket = TRUE AND bIsLeatherJacket = FALSE AND bWearingATux = FALSE AND bIsVarsityJacket= FALSE AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Business shirts can only be worn with jacket jbib (not leather).") RETURN FALSE ENDIF ELIF (iDLCSpecialHash != -1 AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)))) IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Long suit // we have an alt variant of the vest to work with closed so need to check IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // ALT_VEST works for closed jackets. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CLOSED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Tux variant doesn't work with this jacket.") RETURN FALSE ENDIF // shirts work for both ELSE RETURN TRUE ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Cashmere Coat AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Tux shirts can only be worn with tux jbib 2.") RETURN FALSE ENDIF ELIF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (iDLCSpecialHash != -1 AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Tux shirts can only be worn with tux jbib 1.") RETURN FALSE ENDIF ELIF (eSpecialItem >= SPECIAL_FMM_DLC AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_CUFFED_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_0") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_1") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_2") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_3") // Valentines DLC OR iDLCSpecialHash = HASH("DLC_MP_VAL_M_ACCS0_4") // Valentines DLC )) CPRINTLN(DEBUG_PED_COMP, "Cuffed shirt!") IF (eJbibItem >= JBIB_FMM_3_0 AND eJbibItem <= JBIB_FMM_3_15) OR (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <= JBIB_FMM_4_15) OR (eJbibItem >= JBIB_FMM_6_0 AND eJbibItem <= JBIB_FMM_6_11) OR (eJbibItem >= JBIB_FMM_7_0 AND eJbibItem <= JBIB_FMM_7_15) OR (iDLCJbibCheck = 3) OR (iDLCJbibCheck = 4) OR (iDLCJbibCheck = 6) OR (iDLCJbibCheck = 7) OR bIsVarsityJacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Cuffed shirts canot be work with sports coats or hoodies.") RETURN FALSE ELSE RETURN TRUE ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 INT iDLCJbibHash = -1 INT iDLCJbibCheck = -1 IF eJbibItem >= JBIB_FMF_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 4) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF INT iDLCSpecialHash = -1 INT iDLCSpecialCheck = -1 IF eSpecialItem >= SPECIAL_FMF_DLC iDLCSpecialHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eSpecialItem, COMP_TYPE_SPECIAL, 4) iDLCSpecialCheck = GET_DLC_DRAW_TAG(iDLCSpecialHash) SWITCH iDLCSpecialHash CASE HASH("DLC_MP_BEACH_F_ACCS2_0") CASE HASH("DLC_MP_BEACH_F_ACCS2_1") CASE HASH("DLC_MP_BEACH_F_ACCS2_2") CASE HASH("DLC_MP_BEACH_F_ACCS2_3") CASE HASH("DLC_MP_BEACH_F_ACCS2_4") CASE HASH("DLC_MP_BEACH_F_ACCS2_5") CASE HASH("DLC_MP_BEACH_F_ACCS2_6") CASE HASH("DLC_MP_BEACH_F_ACCS2_7") CASE HASH("DLC_MP_BEACH_F_ACCS2_8") CASE HASH("DLC_MP_BEACH_F_ACCS2_9") CASE HASH("DLC_MP_BEACH_F_ACCS2_10") CASE HASH("DLC_MP_BEACH_F_ACCS2_11") iDLCSpecialCheck = 15 BREAK CASE HASH("DLC_MP_VAL_F_ACCS2_0") CASE HASH("DLC_MP_VAL_F_ACCS2_1") CASE HASH("DLC_MP_VAL_F_ACCS2_2") CASE HASH("DLC_MP_VAL_F_ACCS2_3") CASE HASH("DLC_MP_VAL_F_ACCS2_4") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_0") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_1") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_2") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_3") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_4") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_5") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_6") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_7") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_8") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_9") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_10") CASE HASH("DLC_MP_VAL2_F_SPECIAL_0_11") iDLCSpecialCheck = 13 BREAK ENDSWITCH ENDIF IF (iDLCJbibHash != -1) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OVERCOAT_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Player only allowed to wear parka jacket with blazer+shirt / blazer+turtleneck combo. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OVERCOAT_JBIB, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // Classic IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bikini and alt tucked t-shirts with these IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR iDLCSpecialCheck = 15 RETURN TRUE ELSE RETURN FALSE ENDIF ELIF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bikini and alt t-shirts with these IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_ALT_SPECIAL_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eSpecialItem >= SPECIAL_FMF_4_0 AND eSpecialItem <= SPECIAL_FMF_4_15) OR (eSpecialItem >= SPECIAL_FMF_5_0 AND eSpecialItem <= SPECIAL_FMF_5_15) OR (eSpecialItem >= SPECIAL_FMF_11_0 AND eSpecialItem <= SPECIAL_FMF_11_15) OR (eSpecialItem >= SPECIAL_FMF_12_0 AND eSpecialItem <= SPECIAL_FMF_12_15) OR (eSpecialItem >= SPECIAL_FMF_13_0 AND eSpecialItem <= SPECIAL_FMF_13_15) OR (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR (iDLCSpecialCheck = 4) OR (iDLCSpecialCheck = 5) OR (iDLCSpecialCheck = 11) OR (iDLCSpecialCheck = 12) OR (iDLCSpecialCheck = 13) OR (iDLCSpecialCheck = 15) OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_3") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_4") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_5") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_6") RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF IF (iDLCJbibHash != -1) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Block vest shirts IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE // Player only allowed to wear some items with the open check shirt ELIF (eSpecialItem >= SPECIAL_FMF_0_0 AND eSpecialItem <= SPECIAL_FMF_0_15) OR (eSpecialItem >= SPECIAL_FMF_2_0 AND eSpecialItem <= SPECIAL_FMF_2_0) OR (eSpecialItem >= SPECIAL_FMF_4_0 AND eSpecialItem <= SPECIAL_FMF_4_15) OR (eSpecialItem >= SPECIAL_FMF_5_0 AND eSpecialItem <= SPECIAL_FMF_5_15) OR (eSpecialItem >= SPECIAL_FMF_6_0 AND eSpecialItem <= SPECIAL_FMF_6_0) OR (eSpecialItem >= SPECIAL_FMF_9_0 AND eSpecialItem <= SPECIAL_FMF_9_0) OR (eSpecialItem >= SPECIAL_FMF_11_0 AND eSpecialItem <= SPECIAL_FMF_11_15) OR (eSpecialItem >= SPECIAL_FMF_12_0 AND eSpecialItem <= SPECIAL_FMF_12_15) OR (eSpecialItem >= SPECIAL_FMF_13_0 AND eSpecialItem <= SPECIAL_FMF_13_15) OR (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR (iDLCSpecialCheck = 0) OR (iDLCSpecialCheck = 2) OR (iDLCSpecialCheck = 4) OR (iDLCSpecialCheck = 5) OR (iDLCSpecialCheck = 6) OR (iDLCSpecialCheck = 9) OR (iDLCSpecialCheck = 11) OR (iDLCSpecialCheck = 12) OR (iDLCSpecialCheck = 13) OR (iDLCSpecialCheck = 15) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_UNDER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OFF_SHOULDER_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_0") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_1") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_2") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_3") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_2") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_3") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_4") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_5") OR iDLCSpecialHash = HASH("DLC_MP_BEACH_F_ACCS0_6") RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bikini chest with these. IF (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR iDLCSpecialCheck = 15 RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bare chest, bustiers, and polo necks with these. IF (eSpecialItem >= SPECIAL_FMF_13_0 AND eSpecialItem <= SPECIAL_FMF_13_15) OR (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR iDLCSpecialCheck = 13 OR iDLCSpecialCheck = 15 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Long suit has the smoking jacket tag for simplicity. We need to block bustiers for this. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND ((eSpecialItem >= SPECIAL_FMF_13_0 AND eSpecialItem <= SPECIAL_FMF_13_15) OR iDLCSpecialCheck = 13) RETURN FALSE ELSE RETURN TRUE ENDIF ELSE RETURN FALSE ENDIF ENDIF // Block bikini with the leather JC jacket. IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bare chest, bustiers, and polo necks with these. IF (eSpecialItem >= SPECIAL_FMF_11_0 AND eSpecialItem <= SPECIAL_FMF_11_15) OR (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR iDLCSpecialCheck = 11 OR iDLCSpecialCheck = 15 RETURN FALSE ENDIF ENDIF // Block bustier with cashmere coat IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Player only allowed to wear bare chest, bustiers, and polo necks with these. IF (eSpecialItem >= SPECIAL_FMF_13_0 AND eSpecialItem <= SPECIAL_FMF_13_15) OR (eSpecialItem >= SPECIAL_FMF_15_0 AND eSpecialItem <= SPECIAL_FMF_15_15) OR iDLCSpecialCheck = 13 OR iDLCSpecialCheck = 15 RETURN FALSE ENDIF ENDIF // Unbuttoned shirt IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_APART_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Continental closed jacket // allow RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Unbuttoned shirt not compatible with this jbib.") RETURN FALSE ENDIF ENDIF // Baseball Tee IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eJbibItem >= JBIB_FMF_6_0 AND eJbibItem <= JBIB_FMF_6_15) // Closed jacket OR (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15) // Open jacket OR (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15) // Track jacket OR iDLCJbibCheck = 6 OR iDLCJbibCheck = 7 OR iDLCJbibCheck = 10 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Tailscoat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Open scruffy OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Closed scruffy OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dickies jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dickies jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Peacoat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Fur jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Belted jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Leather jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Trench coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Quilted Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Cashmere Coat 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_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // allow RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Baseball tee not compatible with this jbib.") RETURN FALSE ENDIF ENDIF // Track jacket and camisole IF (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15) OR iDLCJbibCheck = 10 IF (eSpecialItem >= SPECIAL_FMF_0_0 AND eSpecialItem <= SPECIAL_FMF_0_15) OR (eSpecialItem >= SPECIAL_FMF_12_0 AND eSpecialItem <= SPECIAL_FMF_12_15) OR iDLCSpecialCheck = 0 OR iDLCSpecialCheck = 12 OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OFF_SHOULDER_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_0") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_1") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_2") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_3") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_2") CPRINTLN(DEBUG_PED_COMP, "Track jacket not compatible with camisole or default t-shirt.") RETURN FALSE ENDIF // Tux and off-shoulder tops ELIF (eJbibItem >= JBIB_FMF_6_0 AND eJbibItem <= JBIB_FMF_6_15) OR iDLCJbibCheck = 6 IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_OFF_SHOULDER_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_0") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_1") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_2") OR iDLCSpecialHash = HASH("DLC_MP_HIPS_F_ACCS3_3") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS0_2") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_0") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_1") OR iDLCSpecialHash = HASH("DLC_MP_VAL_F_ACCS1_2") CPRINTLN(DEBUG_PED_COMP, "Tux jacket not compatible with off-shoulder tops.") RETURN FALSE ENDIF ENDIF IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Waistcoats jbib can only be worn with waistcoat special.") RETURN FALSE ENDIF ELIF (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Waistcoats special can only be worn with waistcoat jbib.") RETURN FALSE ENDIF ENDIF IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eSpecialItem = SPECIAL_FMF_2_0) OR (iDLCSpecialHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Tails jaccket can only be worn with dummy items.") RETURN FALSE ENDIF ENDIF ENDIF RETURN TRUE ENDFUNC FUNC BOOL DO_JBIB_AND_LEGS_CHECK_MP(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eLegsItem, PED_COMP_NAME_ENUM eJbibItem) IF ePedModel = MP_M_FREEMODE_01 INT iDLCLegsHash = -1 INT iDLCLegsCheck = -1 IF eLegsItem >= LEGS_FMM_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 3) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) ENDIF INT iDLCJbibHash = -1 INT iDLCJbibCheck = -1 IF eJbibItem >= JBIB_FMM_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 3) iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibHash) ENDIF IF iDLCJbibHash != -1 // If this jbib has the SANTA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the SANTA tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the SANTA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the MORPH tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the MORPH tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the MORPH tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the GORKA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the GORKA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the ROBE tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the ROBE tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the ROBE tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the PYJAMA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the PYJAMA tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the PYJAMA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the TUX tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the TUX tag. IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_TUX_PANTS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the TUX tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_TUX_PANTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the TUX. // IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) // OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE // ELSE // RETURN FALSE // ENDIF ENDIF ELIF iDLCLegsHash != -1 // If this legs has the TUX tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_TUX_PANTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the TUX tag. // IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) // OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE // ELSE // RETURN FALSE // ENDIF ENDIF // If this legs has the SANTA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the SANTA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the MORPH tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the MORPH tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the GORKA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the GORKA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the ROBE tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the ROBE tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the PYJAMA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the ROBE tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF // Only allow the following lowers with the tails jacket. // Block: [L_FMM_1_0] [L_FMM_2_0] [L_FMM_5_0] [L_FMM_6_0] [L_FMM_9_0] [L_FMM_10_0] [L_FMM_12_0] [L_FMM_13_0] [L_FMM_15_0] [CLO_HILF_L_0_0] [CLO_VALM_L_0_0] IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF (eLegsItem >= LEGS_FMM_0_0 AND eLegsItem <= LEGS_FMM_0_15) OR (eLegsItem >= LEGS_FMM_3_0 AND eLegsItem <= LEGS_FMM_3_15) OR (eLegsItem >= LEGS_FMM_4_0 AND eLegsItem <= LEGS_FMM_4_15) OR (eLegsItem >= LEGS_FMM_7_0 AND eLegsItem <= LEGS_FMM_7_15) OR (eLegsItem >= LEGS_FMM_8_0 AND eLegsItem <= LEGS_FMM_8_15) OR (eLegsItem >= LEGS_FMM_11_0 AND eLegsItem <= LEGS_FMM_11_15) OR (eLegsItem >= LEGS_FMM_14_0 AND eLegsItem <= LEGS_FMM_14_15) OR iDLCLegsCheck = 0 OR iDLCLegsCheck = 3 OR iDLCLegsCheck = 4 OR iDLCLegsCheck = 7 OR iDLCLegsCheck = 8 OR iDLCLegsCheck = 11 OR iDLCLegsCheck = 14 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Scruffy suit pants RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // Block tucked shirts with boxers SWITCH iDLCLegsHash CASE HASH("DLC_MP_VAL_M_LEGS1_0") CASE HASH("DLC_MP_VAL2_M_LEGS_1_0") CASE HASH("DLC_MP_VAL2_M_LEGS_1_1") CASE HASH("DLC_MP_VAL2_M_LEGS_1_2") CASE HASH("DLC_MP_VAL2_M_LEGS_1_3") CASE HASH("DLC_MP_VAL2_M_LEGS_1_4") CASE HASH("DLC_MP_VAL2_M_LEGS_1_5") CASE HASH("DLC_MP_VAL2_M_LEGS_1_6") CASE HASH("DLC_MP_VAL2_M_LEGS_1_7") CASE HASH("DLC_MP_VAL2_M_LEGS_1_8") CASE HASH("DLC_MP_VAL2_M_LEGS_1_9") CASE HASH("DLC_MP_VAL2_M_LEGS_1_10") CASE HASH("DLC_MP_VAL2_M_LEGS_1_11") CASE HASH("DLC_MP_VAL2_M_LEGS_1_12") CASE HASH("DLC_MP_VAL2_M_LEGS_1_13") IF (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15) OR iDLCJbibCheck = 13 OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_0") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_1") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_2") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_3") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_4") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_5") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_6") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_7") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_8") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_9") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_10") OR iDLCJbibHash = HASH("DLC_MP_SMUG_M_JBIB_4_11") OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUCKED, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ENDIF BREAK ENDSWITCH // Block work shorts with scruffy jacket IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SCRUFFY_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 INT iDLCLegsHash = -1 INT iDLCLegsCheck = -1 IF eLegsItem >= LEGS_FMF_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 4) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) ENDIF INT iDLCJbibHash = -1 IF eJbibItem >= JBIB_FMF_DLC iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbibItem, COMP_TYPE_JBIB, 4) ENDIF IF iDLCJbibHash != -1 // If this jbib has the SANTA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the SANTA tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the SANTA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the MORPH tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the MORPH tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the MORPH tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the CAT tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the CAT tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the CAT tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the GORKA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the GORKA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the ROBE tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the ROBE tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the ROBE tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the PYJAMA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the PYJAMA tag IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow legs with the PYJAMA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this jbib has the DRESS tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Mini dress only works with bikini bottoms and stockings IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MINI_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eLegsItem >= LEGS_FMF_15_0 AND eLegsItem <= LEGS_FMF_15_15) OR iDLCLegsCheck = 15 OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") OR (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Mini dress doesn't work with these legs.") RETURN FALSE ENDIF ELSE // Allow legs with the DRESS or STOCKINGS tag. IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Dress doesn't work with these legs.") RETURN FALSE ENDIF ENDIF ENDIF // If this legs has the DRESS tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the DRESS or STOCKINGS tag. IF (iDLCJbibHash != -1 AND 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))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Legs don't work with this dress.") RETURN FALSE ENDIF ENDIF // If this jbib has the VEST or VEST_SHIRT tag. IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TUCKED, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dont allow the vest items with bikini bottoms, stockings, or panties. IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_15_0 AND eLegsItem <= LEGS_FMF_15_15) OR iDLCLegsCheck = 15 OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") RETURN FALSE ENDIF ENDIF // THIS IS BLOCKING TUCKED T-SHIRTS / SPORTS T-SHIRTS // If this jbib has the DRAW_0 tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dont allow the vest items with bikini bottoms, stockings, or panties. IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_15_0 AND eLegsItem <= LEGS_FMF_15_15) OR iDLCLegsCheck = 15 OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") RETURN FALSE ENDIF ENDIF ENDIF IF iDLCLegsHash != -1 // If this legs has the SANTA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the SANTA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the MORPH tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the MORPH tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the CAT tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the CAT tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the GORKA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the GORKA tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the ROBE tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the ROBE tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the PYJAMA tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the ROBE tag IF (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // If this legs has the DRESS tag. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Allow jbib with the DRESS or STOCKINGS tag. IF (iDLCJbibHash != -1 AND 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))) OR (iDLCJbibHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF ENDIF // High waisted trousers only compatible with the Frill Shirt and Loose Tank IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Loose Tank OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Frill Shirt RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // Frill Shirt only works with High waisted trousers IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF // Block rollup and tails jacket combo. IF (eLegsItem >= LEGS_FMF_2_0 AND eLegsItem <= LEGS_FMF_2_15) OR iDLCLegsCheck = 2 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Muslce pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ENDIF ENDIF // Block long suit jacket and some pants. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (eLegsItem >= LEGS_FMF_2_0 AND eLegsItem <= LEGS_FMF_2_15) // Rollups OR iDLCLegsCheck = 2 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Scruffy suit pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // heist pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // battle pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // battle pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // utility pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) // tracksuit pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // lts combat pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ENDIF ENDIF // Block cashmere coat and some pants. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Dont allow the vest items with bikini bottoms, stockings, or panties. IF (iDLCLegsHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eLegsItem >= LEGS_FMF_15_0 AND eLegsItem <= LEGS_FMF_15_15) OR iDLCLegsCheck = 15 OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iDLCLegsHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iDLCLegsHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") RETURN FALSE ENDIF ENDIF ENDIF RETURN TRUE ENDFUNC /// PURPOSE: /// Checks if the ped component item is a mask /// Used in shops to give a prompt to buy now or wear later /// PARAMS: /// ePedModel - which ped this prop belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a mask, FALSE otherwise FUNC BOOL IS_ITEM_A_MASK(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) // Michael IF ePedModel = PLAYER_ZERO IF eType = COMP_TYPE_FEET IF eItem = FEET_P0_BALLISTICS RETURN TRUE ENDIF ELIF eType = COMP_TYPE_SPECIAL IF eItem = SPECIAL_P0_GAS_MASK OR eItem = SPECIAL_P0_BALACLAVA OR eItem = SPECIAL_P0_BALACLAVA_B RETURN TRUE ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF (eItem >= SPECIAL2_P0_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P0_WRESTLER_MASK_5) RETURN TRUE ENDIF ELIF eType = COMP_TYPE_PROPS IF eItem = PROPS_P0_HOCKEY_MASK OR eItem = PROPS_P0_SCUBA_MASK OR eItem = PROPS_P0_EXTERMINATOR_MASK OR eItem = PROPS_P0_MASK_MONSTER_GREEN OR eItem = PROPS_P0_MASK_MONSTER_RED OR eItem = PROPS_P0_MASK_PIG OR eItem = PROPS_P0_MASK_PIG_DARK OR eItem = PROPS_P0_MASK_SKULL_GREY OR eItem = PROPS_P0_MASK_SKULL_YELLOW OR eItem = PROPS_P0_MASK_MONKEY OR eItem = PROPS_P0_MASK_HOCKEY_WHITE OR eItem = PROPS_P0_MASK_HOCKEY_RED OR eItem = PROPS_P0_MASK_APE OR eItem = PROPS_P0_MASK_APE_DARK OR (eItem >= PROPS_P0_MASK_TRIBAL_1 AND eItem <= PROPS_P0_MASK_TRIBAL_3) OR eItem = PROPS_P0_BLACK_HELMET OR eItem = PROPS_P0_ARMOURED_HELMET RETURN TRUE ENDIF ENDIF // Franklin ELIF ePedModel = PLAYER_ONE IF eType = COMP_TYPE_HAIR IF eItem = HAIR_P1_MASK RETURN TRUE ENDIF ELIF eType = COMP_TYPE_SPECIAL IF eItem = SPECIAL_P1_BALLISTICS OR eItem = SPECIAL_P1_EXTERMINATOR OR eItem = SPECIAL_P1_MASK RETURN TRUE ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF (eItem >= SPECIAL2_P1_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P1_WRESTLER_MASK_5) RETURN TRUE ENDIF ELIF eType = COMP_TYPE_PROPS IF eItem = PROPS_P1_SCUBA_MASK OR eItem = PROPS_P1_HOCKEY_MASK OR eItem = PROPS_P1_MASK_MONSTER_GREEN OR eItem = PROPS_P1_MASK_MONSTER_RED OR eItem = PROPS_P1_MASK_PIG OR eItem = PROPS_P1_MASK_PIG_DARK OR eItem = PROPS_P1_MASK_SKULL_GREY OR eItem = PROPS_P1_MASK_SKULL_YELLOW OR eItem = PROPS_P1_MASK_MONKEY OR eItem = PROPS_P1_MASK_HOCKEY_WHITE OR eItem = PROPS_P1_MASK_HOCKEY_RED OR eItem = PROPS_P1_MASK_APE OR eItem = PROPS_P1_MASK_APE_DARK OR (eItem >= PROPS_P1_MASK_TRIBAL_1 AND eItem <= PROPS_P1_MASK_TRIBAL_3) RETURN TRUE ENDIF ENDIF // Trevor ELIF ePedModel = PLAYER_TWO IF eType = COMP_TYPE_SPECIAL IF eItem = SPECIAL_P2_MASK OR eItem = SPECIAL_P2_BALACLAVA RETURN TRUE ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF eItem = SPECIAL2_P2_MASK OR (eItem >= SPECIAL2_P2_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P2_WRESTLER_MASK_5) OR eItem = SPECIAL2_P2_MASK_MONSTER_GREEN OR eItem = SPECIAL2_P2_MASK_MONSTER_RED RETURN TRUE ENDIF ELIF eType = COMP_TYPE_PROPS IF eItem = PROPS_P2_SCUBA_MASK OR eItem = PROPS_P2_HOCKEY_MASK OR eItem = PROPS_P2_MASK_MONSTER_GREEN OR eItem = PROPS_P2_MASK_MONSTER_RED OR eItem = PROPS_P2_MASK_PIG OR eItem = PROPS_P2_MASK_PIG_DARK OR eItem = PROPS_P2_MASK_SKULL_GREY OR eItem = PROPS_P2_MASK_SKULL_YELLOW OR eItem = PROPS_P2_MASK_MONKEY OR eItem = PROPS_P2_MASK_HOCKEY_WHITE OR eItem = PROPS_P2_MASK_HOCKEY_RED OR eItem = PROPS_P2_MASK_APE OR eItem = PROPS_P2_MASK_APE_DARK OR (eItem >= PROPS_P2_MASK_TRIBAL_1 AND eItem <= PROPS_P2_MASK_TRIBAL_3) RETURN TRUE ENDIF ENDIF // Freemode male ELIF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem > BERD_FMM_0_0 #IF USE_TU_CHANGES IF eItem >= BERD_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAIR_SHRINK, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF ENDIF #ENDIF RETURN TRUE ENDIF ENDIF // Freemode female ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem > BERD_FMF_0_0 #IF USE_TU_CHANGES IF eItem >= BERD_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HAIR_SHRINK, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF ENDIF #ENDIF RETURN TRUE ENDIF ENDIF ENDIF RETURN FALSE // item is not a mask ENDFUNC /// PURPOSE: /// Checks if the specified mask is a full on mask or a small one - MUST BE A MASK /// PARAMS: /// ePedModel - which ped this prop belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a mask, FALSE otherwise FUNC BOOL IS_ITEM_A_FULL_MASK(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) // Freemode male IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem >= BERD_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_REBREATHER, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SKI_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EAR_PIECE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF ENDIF ENDIF // Freemode female ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem >= BERD_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4) ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_REBREATHER, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SKI_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_EAR_PIECE, ENUM_TO_INT(SHOP_PED_COMPONENT))) RETURN FALSE ENDIF ENDIF ENDIF ENDIF RETURN TRUE // item is a full mask ENDFUNC FUNC BOOL IS_ITEM_A_DOME_HELMET(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DOME_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DOME_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_FULL_FACE_HELMET(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_FMM_HELMET_16_0 AND eItem <= PROPS_FMM_HELMET_16_7) OR (eItem >= PROPS_FMM_HELMET_18_0 AND eItem <= PROPS_FMM_HELMET_18_7) RETURN TRUE ELIF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF IS_ITEM_A_HELMET(ePedModel, eType, eItem, iDLCItemHash) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_FULL_FACE, ENUM_TO_INT(SHOP_PED_PROP))) RETURN TRUE ENDIF ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_FMF_HELMET_16_0 AND eItem <= PROPS_FMF_HELMET_16_7) OR (eItem >= PROPS_FMF_HELMET_18_0 AND eItem <= PROPS_FMF_HELMET_18_7) RETURN TRUE ELIF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF IS_ITEM_A_HELMET(ePedModel, eType, eItem, iDLCItemHash) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_FULL_FACE, ENUM_TO_INT(SHOP_PED_PROP))) RETURN TRUE ENDIF ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_BULLETPROOF_HELMET(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BULLETPROOF, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_PROPS IF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BULLETPROOF, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_BIKER_MASK(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem >= BERD_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BIKER_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem >= BERD_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_BIKER_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_SKI_MASK(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) IF ePedModel = MP_M_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem >= BERD_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SKI_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ELIF ePedModel = MP_F_FREEMODE_01 IF eType = COMP_TYPE_BERD IF eItem >= BERD_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SKI_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Returns TRUE if the ped is wearing any mask item. FALSE otherwise FUNC BOOL IS_PED_WEARING_A_MASK(PED_INDEX mPed) IF NOT NETWORK_IS_GAME_IN_PROGRESS() INT iType INT iPropPos PED_PROP_POSITION ePropPos PED_COMP_TYPE_ENUM eType PED_COMP_NAME_ENUM eItem MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) // check props first as most masks are props FOR iPropPos = 0 TO NUMBER_OF_PED_PROP_TYPES -1 ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos) eItem = GET_PED_PROP_CURRENT_FROM_LOOKUP(mPed, ePropPos) IF IS_ITEM_A_MASK(ePedModel, COMP_TYPE_PROPS, eItem) RETURN TRUE // item is a mask, return true ENDIF ENDFOR // check for other masks FOR iType = 0 TO NUMBER_OF_PED_COMP_TYPES -1 eType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iType) IF eType <> COMP_TYPE_OUTFIT AND eType <> COMP_TYPE_PROPGROUP AND eType <> COMP_TYPE_PROPS eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType) IF IS_ITEM_A_MASK(ePedModel, eType, eItem) RETURN TRUE // item is a mask, return true ENDIF ENDIF ENDFOR ELSE INT iBerdDraw = GET_PED_DRAWABLE_VARIATION(mPed, PED_COMP_BERD) IF iBerdDraw > 0 INT iDLCBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(mPed), ENUM_TO_INT(PED_COMP_BERD), iBerdDraw, GET_PED_TEXTURE_VARIATION(mPed, PED_COMP_BERD)) IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HAIR_SHRINK, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF ENDIF RETURN FALSE // not wearing a mask ENDFUNC /// PURPOSE: /// Checks if the ped component item is a parachute (currently SP only) /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a parachute, FALSE otherwise FUNC BOOL IS_ITEM_A_PARACHUTE(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem) SWITCH ePedModel // Michael CASE PLAYER_ZERO SWITCH eType CASE COMP_TYPE_SPECIAL IF eItem = SPECIAL_P0_PARACHUTE RETURN TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL2 IF eItem = SPECIAL2_P0_PARACHUTE_2 RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Franklin CASE PLAYER_ONE SWITCH eType CASE COMP_TYPE_SPECIAL IF eItem = SPECIAL_P1_PARACHUTE OR eItem = SPECIAL_P1_PARACHUTE_1 RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Trevor CASE PLAYER_TWO SWITCH eType CASE COMP_TYPE_SPECIAL IF eItem = SPECIAL_P2_PARACHUTE RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a parachute ENDFUNC /// PURPOSE: /// Returns TRUE if the ped is wearing any hat item. FALSE otherwise FUNC BOOL IS_PED_WEARING_A_HAT(PED_INDEX mPed) INT iType INT iPropPos PED_PROP_POSITION ePropPos PED_COMP_TYPE_ENUM eType PED_COMP_NAME_ENUM eItem MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) // check props first as most hats are props FOR iPropPos = 0 TO NUMBER_OF_PED_PROP_TYPES -1 ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos) eItem = GET_PED_PROP_CURRENT_FROM_LOOKUP(mPed, ePropPos) IF IS_ITEM_A_HAT(ePedModel, COMP_TYPE_PROPS, eItem) RETURN TRUE // item is a hat, return true ENDIF ENDFOR // check for other hats FOR iType = 0 TO NUMBER_OF_PED_COMP_TYPES -1 eType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iType) IF eType <> COMP_TYPE_OUTFIT AND eType <> COMP_TYPE_PROPGROUP AND eType <> COMP_TYPE_PROPS eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType) IF IS_ITEM_A_HAT(ePedModel, eType, eItem) RETURN TRUE // item is a hat, return true ENDIF ENDIF ENDFOR RETURN FALSE // not wearing a hat ENDFUNC /// PURPOSE: /// Returns TRUE if the ped is wearing a body warmer item. FALSE otherwise FUNC BOOL IS_PED_WEARING_A_BODY_WARMER(PED_INDEX mPed) IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(mPed, PED_COMP_SPECIAL, DLC_RESTRICTION_TAG_OVER_JACKET) RETURN TRUE ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Returns TRUE if the ped is wearing a scarf item. FALSE otherwise FUNC BOOL IS_PED_WEARING_A_SCARF(PED_INDEX mPed) MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) PED_COMP_NAME_ENUM eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_TEETH) IF IS_ITEM_A_SCARF(ePedModel, COMP_TYPE_TEETH, eItem) RETURN TRUE ENDIF RETURN FALSE // item is not a scarf ENDFUNC /// PURPOSE: /// Returns TRUE if the ped is wearing a necklace item. FALSE otherwise FUNC BOOL IS_PED_WEARING_A_NECKLACE(PED_INDEX mPed) MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) PED_COMP_NAME_ENUM eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_TEETH) IF IS_ITEM_A_NECKLACE(ePedModel, COMP_TYPE_TEETH, eItem) RETURN TRUE ENDIF RETURN FALSE // item is not a necklace ENDFUNC /// PURPOSE: /// Checks if the ped component item is a pair of ear defenders /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a pair of ear defenders, FALSE otherwise FUNC BOOL IS_ITEM_EAR_DEFENDERS(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_EARDEFENDERS_0_0 AND eItem <= PROPS_FMM_EARDEFENDERS_0_7 RETURN TRUE ENDIF BREAK ENDSWITCH BREAK // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMF_EARDEFENDERS_0_0 AND eItem <= PROPS_FMF_EARDEFENDERS_0_7 RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a pair of ear defenders ENDFUNC /// PURPOSE: /// Checks if the ped component item is nightvision goggles /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a pair of nightvision, FALSE otherwise FUNC BOOL IS_ITEM_NIGHTVISION(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode male CASE MP_M_FREEMODE_01 SWITCH eType CASE COMP_TYPE_HAIR IF eItem >= HAIR_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_HAIR, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_BERD IF eItem >= BERD_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash , DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash , DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_HAIR IF eItem >= HAIR_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_HAIR, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash , DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_BERD IF eItem >= BERD_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_BERD, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_PROPS IF eItem >= PROPS_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_PROP)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not nightvision goggles ENDFUNC /// PURPOSE: /// Checks if the ped component item is a skirt /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a skirt, FALSE otherwise FUNC BOOL IS_ITEM_A_SKIRT(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_LEGS IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, eType, 4) ENDIF INT iDLCLegsCheck iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCItemHash) IF eItem >= LEGS_FMF_7_0 AND eItem <= LEGS_FMF_7_2 OR eItem >= LEGS_FMF_8_0 AND eItem <= LEGS_FMF_8_15 OR eItem >= LEGS_FMF_9_0 AND eItem <= LEGS_FMF_9_15 OR eItem >= LEGS_FMF_12_0 AND eItem <= LEGS_FMF_12_15 OR iDLCLegsCheck = 7 OR iDLCLegsCheck = 8 OR iDLCLegsCheck = 9 OR iDLCLegsCheck = 12 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_SKIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a skirt ENDFUNC /// PURPOSE: /// Checks if the ped component item is a dress /// PARAMS: /// ePedModel - which ped this item belongs to /// eType - the item type /// eItem - the item we are checking /// RETURNS: /// TRUE if the item is a dress, FALSE otherwise FUNC BOOL IS_ITEM_A_DRESS(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_JBIB IF eItem >= JBIB_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a skirt ENDFUNC /// PURPOSE: Returns true if these legs are the version that we wear with a dress. FUNC BOOL IS_PED_COMP_DRESS_VERSION(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_LEGS IF (eItem >= LEGS_FMF_DLC) IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_LEGS, 4) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_DRESS_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL GET_PED_COMP_ITEM_DRESS_VERSION(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM &eReturnItem) SWITCH ePedModel // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_LEGS IF (eItem >= LEGS_FMF_DLC) // Look up alternative and stop when we find one with dress_legs tag INT iItemNameHash iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, eType, 4) IF iItemNameHash != -1 INT iAltComps 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) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_DRESS_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, eType, 4) RETURN TRUE ENDIF // Forced on-disk item ELSE // Skip ENDIF ENDIF ENDREPEAT ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL GET_PED_COMP_ITEM_NON_DRESS_VERSION(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_NAME_ENUM &eReturnItem) SWITCH ePedModel // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_LEGS IF (eItem >= LEGS_FMF_DLC) // Look up alternative and stop when we find one without dress_legs tag INT iItemNameHash iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, eType, 4) IF iItemNameHash != -1 INT iAltComps 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) // Alternative DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_DRESS_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) eReturnItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, eType, 4) RETURN TRUE ENDIF // Forced on-disk item ELSE // Skip ENDIF ENDIF ENDREPEAT ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL IS_ITEM_A_CREW_LOGO(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCItemHash = -1) SWITCH ePedModel // Freemode male CASE MP_M_FREEMODE_01 SWITCH eType CASE COMP_TYPE_DECL IF eItem >= DECL_FMM_1_0 AND eItem <= DECL_FMM_6_0 RETURN TRUE ENDIF IF eItem >= DECL_FMM_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, eType, 3) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT)) ENDIF BREAK ENDSWITCH BREAK // Freemode female CASE MP_F_FREEMODE_01 SWITCH eType CASE COMP_TYPE_DECL IF eItem >= DECL_FMF_1_0 AND eItem <= DECL_FMF_5_0 RETURN TRUE ENDIF IF eItem >= DECL_FMF_DLC IF iDLCItemHash = -1 iDLCItemHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, eType, 4) ENDIF RETURN DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT)) ENDIF BREAK ENDSWITCH BREAK ENDSWITCH RETURN FALSE // item is not a crew logo ENDFUNC FUNC BOOL SHOULD_ALT_LEGS_BE_USED_FOR_FEET(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eFeetItem, INT iDLCLegsHash) INT iDLCFeetHash = -1 //INT iDLCFeetCheck = -1 SWITCH ePedModel // Freemode male CASE MP_M_FREEMODE_01 IF eFeetItem >= FEET_FMM_DLC iDLCFeetHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eFeetItem, COMP_TYPE_FEET, 3) //iDLCFeetCheck = GET_DLC_DRAW_TAG(iDLCFeetHash) ENDIF // Alt knee high pants only work with knee high boots. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF RETURN FALSE ENDIF // Cargo pants are the exception to the rule where we need to use the cut version of the cowboy boots. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HAS_ALT_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK // Freemode female CASE MP_F_FREEMODE_01 IF eFeetItem >= FEET_FMF_DLC iDLCFeetHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eFeetItem, COMP_TYPE_FEET, 4) //iDLCFeetCheck = GET_DLC_DRAW_TAG(iDLCFeetHash) ENDIF // Alt knee high pants only work with knee high boots. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF RETURN FALSE ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HAS_ALT_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH RETURN FALSE RETURN FALSE ENDFUNC FUNC BOOL SHOULD_ALT_FEET_BE_USED_FOR_LEGS(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eLegsItem, INT iDLCFeetHash) INT iDLCLegsHash = -1 INT iDLCLegsCheck = -1 SWITCH ePedModel // Freemode male CASE MP_M_FREEMODE_01 IF eLegsItem >= LEGS_FMM_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 3) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HAS_ALT_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT)) BOOL bAltFeet bAltFeet = TRUE IF (eLegsItem >= LEGS_FMM_2_0 AND eLegsItem <= LEGS_FMM_2_15) OR (eLegsItem >= LEGS_FMM_4_0 AND eLegsItem <= LEGS_FMM_4_15) OR (eLegsItem >= LEGS_FMM_6_0 AND eLegsItem <= LEGS_FMM_6_15) OR (eLegsItem >= LEGS_FMM_11_0 AND eLegsItem <= LEGS_FMM_11_15) OR (eLegsItem >= LEGS_FMM_12_0 AND eLegsItem <= LEGS_FMM_12_15) OR (eLegsItem >= LEGS_FMM_14_0 AND eLegsItem <= LEGS_FMM_14_15) OR (eLegsItem >= LEGS_FMM_15_0 AND eLegsItem <= LEGS_FMM_15_15) OR iDLCLegsCheck = 2 OR iDLCLegsCheck = 4 OR iDLCLegsCheck = 6 OR iDLCLegsCheck = 11 OR iDLCLegsCheck = 12 OR iDLCLegsCheck = 14 OR iDLCLegsCheck = 15 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SKINNY, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_SHORTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bAltFeet = FALSE ENDIF //Exceptions IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BATTLE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BATTLE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bAltFeet = TRUE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT)) bAltFeet = FALSE ELSE bAltFeet = TRUE ENDIF ENDIF RETURN bAltFeet ENDIF BREAK // Freemode female CASE MP_F_FREEMODE_01 IF eLegsItem >= LEGS_FMF_DLC iDLCLegsHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eLegsItem, COMP_TYPE_LEGS, 4) iDLCLegsCheck = GET_DLC_DRAW_TAG(iDLCLegsHash) ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_HAS_ALT_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_KNEE_HIGH_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_KNEE_HIGH, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN FALSE ENDIF ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF RETURN FALSE ENDIF IF (eLegsItem >= LEGS_FMF_1_0 AND eLegsItem <= LEGS_FMF_1_15) OR (eLegsItem >= LEGS_FMF_3_0 AND eLegsItem <= LEGS_FMF_3_15) //OR (eLegsItem >= LEGS_FMF_4_0 AND eLegsItem <= LEGS_FMF_4_15) OR (eLegsItem >= LEGS_FMF_6_0 AND eLegsItem <= LEGS_FMF_6_15) OR iDLCLegsCheck = 1 OR iDLCLegsCheck = 3 //OR iDLCLegsCheck = 4 OR iDLCLegsCheck = 6 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_H3_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL DOES_DLC_ITEM_HAVE_ALT_VERSION(MODEL_NAMES ePedModel, INT iDLCHash) SWITCH ePedModel CASE MP_M_FREEMODE_01 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_HAS_ALT_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK CASE MP_F_FREEMODE_01 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_HAS_ALT_VERSION, ENUM_TO_INT(SHOP_PED_COMPONENT)) RETURN TRUE ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC BOOL DOES_DLC_ITEM_FORCE_THIS_ITEM(INT iDLCHashMain, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iDLCHashVariant) INT iForcedItemCount, iForcedItem, iRetNameHash, iRetCompEnum, iRetType IF eType = COMP_TYPE_OUTFIT OR eType = COMP_TYPE_PROPGROUP RETURN FALSE ELIF eType = COMP_TYPE_PROPS iForcedItemCount = GET_SHOP_PED_APPAREL_FORCED_PROP_COUNT(iDLCHashMain) REPEAT iForcedItemCount iForcedItem GET_FORCED_PROP(iDLCHashMain, iForcedItem, iRetNameHash, iRetCompEnum, iRetType) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF iRetNameHash = iDLCHashVariant RETURN TRUE ENDIF // Forced on-disk item ELSE IF INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) = eItem RETURN TRUE ENDIF ENDIF ENDREPEAT ELSE iForcedItemCount = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCHashMain) REPEAT iForcedItemCount iForcedItem GET_FORCED_COMPONENT(iDLCHashMain, iForcedItem, iRetNameHash, iRetCompEnum, iRetType) IF iRetType = ENUM_TO_INT(eType) // Forced DLC item IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0" IF iRetNameHash = iDLCHashVariant RETURN TRUE ENDIF // Forced on-disk item ELSE IF INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum) = eItem RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Checks if an item of specified type is contained in the clothes struct /// PARAMS: /// mClothes - the ped variation struct we are checking /// bMasks - are we checking for masks? /// bHats - are we checking for hats? /// RETURNS: /// TRUE if an item of the specified type was found FUNC BOOL CHECK_STRUCT_FOR_ITEM_OF_TYPE(PED_INDEX mPed, PED_VARIATION_STRUCT mClothes, BOOL bMasks, BOOL bHats) INT iType INT iPropPos PED_PROP_POSITION ePropPos PED_COMP_TYPE_ENUM eType PED_COMP_NAME_ENUM eItem MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) IF NOT DOES_ENTITY_EXIST(mPed) OR IS_PED_INJURED(mPed) RETURN FALSE ENDIF // check props first as most masks + hats are props FOR iPropPos = 0 TO NUMBER_OF_PED_PROP_TYPES -1 ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos) eItem = GET_PROP_ITEM_FROM_VARIATIONS(mPed, mClothes.iPropIndex[iPropPos], mClothes.iPropTexture[iPropPos], ePropPos) IF bMasks = TRUE IF IS_ITEM_A_MASK(ePedModel, COMP_TYPE_PROPS, eItem) RETURN TRUE // item is a mask, return true ENDIF ENDIF IF bHats = TRUE IF IS_ITEM_A_HAT(ePedModel, COMP_TYPE_PROPS, eItem) RETURN TRUE // item is a mask, return true ENDIF ENDIF ENDFOR // check for other masks FOR iType = 0 TO NUMBER_OF_PED_COMP_TYPES -1 eType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iType) IF eType <> COMP_TYPE_OUTFIT AND eType <> COMP_TYPE_PROPGROUP AND eType <> COMP_TYPE_PROPS eItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(mPed, mClothes.iDrawableVariation[iType], mClothes.iTextureVariation[iType], eType) IF bMasks = TRUE IF IS_ITEM_A_MASK(ePedModel, eType, eItem) RETURN TRUE // item is a mask, return true ENDIF ENDIF IF bHats = TRUE IF IS_ITEM_A_HAT(ePedModel, eType, eItem) RETURN TRUE // item is a mask, return true ENDIF ENDIF ENDIF ENDFOR RETURN FALSE // not wearing an item of type specified ENDFUNC /// PURPOSE: Returns FALSE if this combination of torso and legs will leave a gap at the waist FUNC BOOL DO_WAIST_CHECK(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eTorsoItem, PED_COMP_NAME_ENUM eLegsItem) SWITCH ePedModel // Michael CASE PLAYER_ZERO // only bare chest, vests + other past waist tops can be worn with boxers IF (eLegsItem >= LEGS_P0_BED AND eLegsItem <= LEGS_P0_BOXERS_7) IF (eTorsoItem >= TORSO_P0_GREY_SUIT AND eTorsoItem <= TORSO_P0_GREY_SUIT_15) // default suit variations OR (eTorsoItem >= TORSO_P0_GOLF AND eTorsoItem <= TORSO_P0_POLO_SHIRT_7) // Golf polo variations OR (eTorsoItem >= TORSO_P0_SUIT_JACKET AND eTorsoItem <= TORSO_P0_SUIT_JACKET_15) // suit jacket variations OR (eTorsoItem >= TORSO_P0_DRESS_SHIRT AND eTorsoItem <= TORSO_P0_DRESS_SHIRT_7) // dress shirt variations OR (eTorsoItem >= TORSO_P0_HEAVY_JACKET AND eTorsoItem <= TORSO_P0_HEAVY_JACKET_1) // heavy jacket variations CPRINTLN(DEBUG_PED_COMP, "Boxers can't be worn with high waist items. Torso= ", eTorsoItem, " Boxers = ", eLegsItem) RETURN FALSE // invalid combo ENDIF ENDIF BREAK // Franklin CASE PLAYER_ONE // can't wear dress shirts with low waist pants IF (eTorsoItem >= TORSO_P1_DRESS_SHIRT AND eTorsoItem <= TORSO_P1_SHIRT_UP_SLEEVES_15) // dress shirts IF (eLegsItem >= LEGS_P1_SWEATPANTS AND eLegsItem <=LEGS_P1_SWEATPANTS_11) // sweat pants OR eLegsItem = LEGS_P1_TENNIS // tennis shorts OR (eLegsItem >= LEGS_P1_BOXERS AND eLegsItem <= LEGS_P1_BOXERS_5)// boxers OR (eLegsItem >= LEGS_P1_JEANS_B_0 AND eLegsItem <= LEGS_P1_JEANS_B_8) // skinny jeans OR (eLegsItem >= LEGS_P1_BASKETBALL_SHORTS_0 AND eLegsItem <= LEGS_P1_BASKETBALL_SHORTS_13) // basketball shorts CPRINTLN(DEBUG_PED_COMP, "Dress shirt can't be worn with low waist pants. Torso= ", eTorsoItem, " Pants = ", eLegsItem) RETURN FALSE // invalid combo ENDIF ENDIF BREAK // Trevor CASE PLAYER_TWO IF eTorsoItem = TORSO_P2_NONE IF (eLegsItem >= LEGS_P2_SUIT_PANTS AND eLegsItem <= LEGS_P2_SUIT_PANTS_8) OR eLegsItem = LEGS_P2_CHEAP_TUXEDO_PANTS CPRINTLN(DEBUG_PED_COMP, "Trevor can't use naked torso with suit pants. eLegsItem= ", eLegsItem, " eTorsoItem = ", eTorsoItem) RETURN FALSE ENDIF ENDIF BREAK ENDSWITCH RETURN TRUE // passes the waist check! ENDFUNC /// PURPOSE: /// Returns FALSE if this torso and JBIB combo is invalid FUNC BOOL DO_JBIB_CHECK(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eTorsoItem, PED_COMP_NAME_ENUM eJbibItem) SWITCH ePedModel // Michael CASE PLAYER_ZERO // Michael's open shirt can be worn with vest jbib or bare chest jbib IF (eTorsoItem >= TORSO_P0_OPEN_SHIRT AND eTorsoItem <= TORSO_P0_OPEN_SHIRT_15) IF eJbibItem < JBIB_P0_VEST OR eJbibItem > JBIB_P0_VEST_5 IF eJbibItem != JBIB_P0_BARE_CHEST CPRINTLN(DEBUG_PED_COMP, "Michaels' open shirt can only be worn with bare chest / vest jbibs. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF // Michael's suit jackets can be worn with sweater / vneck or waistcoat jbibs ELIF (eTorsoItem >= TORSO_P0_SUIT_JACKET AND eTorsoItem <= TORSO_P0_SUIT_JACKET_15) IF (eJbibItem >= JBIB_P0_3_0 AND eJbibItem <= JBIB_P0_3_9) OR (eJbibItem >= JBIB_P0_4_0 AND eJbibItem <= JBIB_P0_4_9) OR (eJbibItem >= JBIB_P0_5_0 AND eJbibItem <= JBIB_P0_5_15) // suitable jbib selected ELSE CPRINTLN(DEBUG_PED_COMP, "Michael's suit jackets need to be worn with suitable jbib. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELSE // All other torsos can't be worn with jbibs IF eJbibItem != JBIB_P0_NONE CPRINTLN(DEBUG_PED_COMP, "Normal torsos can't use jbibs. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF BREAK // Franklin CASE PLAYER_ONE // Franklin's casual jackets can be worn with tshirt jbibs IF (eTorsoItem >= TORSO_P1_JACKET_0 AND eTorsoItem <= TORSO_P1_JACKET_13) IF (eJbibItem >= JBIB_P1_TSHIRT_0 AND eJbibItem <= JBIB_P1_TSHIRT_15) // suitable jbib selected ELSE CPRINTLN(DEBUG_PED_COMP, "Franklin's casual jackets need to be worn with suitable jbib. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF // Franklin's waistcoats can be worn with open / closed jbibs ELIF (eTorsoItem >= TORSO_P1_WAISTCOAT AND eTorsoItem <= TORSO_P1_WAISTCOAT_15) IF eJbibItem = GET_COLLAR_JBIB(ePedModel, eTorsoItem, eJbibItem, TRUE) OR eJbibItem = GET_COLLAR_JBIB(ePedModel, eTorsoItem, eJbibItem, FALSE) // suitable jbib selected ELSE CPRINTLN(DEBUG_PED_COMP, "Franklin's waistcoats need to be worn with matching jbib. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF // Franklin's suit jackets can be worn with waistcoat or full shirt jbibs ELIF (eTorsoItem >= TORSO_P1_SUIT AND eTorsoItem <= TORSO_P1_SUIT_15) OR (eTorsoItem >= TORSO_P1_3PCSUIT AND eTorsoItem <= TORSO_P1_3PCSUIT_15) IF (eJbibItem >= JBIB_P1_WAISTCOAT_A AND eJbibItem <= JBIB_P1_WAISTCOAT_A_15) ELIF (eJbibItem >= JBIB_P1_WAISTCOAT_B AND eJbibItem <= JBIB_P1_WAISTCOAT_B_15) ELIF (eJbibItem = JBIB_P1_SHIRT_A) ELIF (eJbibItem = JBIB_P1_SHIRT_B) // suitable jbib selected ELSE CPRINTLN(DEBUG_PED_COMP, "Franklin's suit jackets need to be worn with matching jbib. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF // golf sweaters use 1 jbib ELIF (eTorsoItem >= TORSO_P1_GOLF AND eTorsoItem <= TORSO_P1_SWEATER_15) IF eJbibItem != JBIB_P1_POLO_SHIRT_1 CPRINTLN(DEBUG_PED_COMP, "Franklin's golf tops need to be worn with matching jbib. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF // coats use hoodie jbibs ELIF (eTorsoItem >= TORSO_P1_WOOL_PEACOAT AND eTorsoItem <= TORSO_P1_WOOL_PEACOAT_3) IF eJbibItem != JBIB_P1_HOODIE_1 CPRINTLN(DEBUG_PED_COMP, "Franklin's golf tops need to be worn with matching jbib. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ELSE // All other torsos can't be worn with jbibs IF eJbibItem != JBIB_P1_NONE CPRINTLN(DEBUG_PED_COMP, "Normal torsos can't use jbibs. Torso= ", eTorsoItem, " eJbibItem = ", eJbibItem) RETURN FALSE ENDIF ENDIF BREAK ENDSWITCH RETURN TRUE // passes the jbib check ENDFUNC /// PURPOSE: /// Returns FALSE if this torso or leg combination is invalid /// As a result of the torso or leg item being restricted to mixing with only 1 drawable /// (Like Michael's default suit or Trevor's cheap suit) FUNC BOOL DO_LIMITED_TORSO_AND_LEGS_CHECK(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eTorsoItem, PED_COMP_NAME_ENUM eLegsItem) BOOL bRestrictedTorso = FALSE BOOL bRestrictedLegs = FALSE SWITCH ePedModel // Michael CASE PLAYER_ZERO // Michael's default suit variations can only be mixed with eachother IF (eTorsoItem >= TORSO_P0_GREY_SUIT AND eTorsoItem <= TORSO_P0_GREY_SUIT_15) // default suit variations bRestrictedTorso = TRUE ENDIF IF (eLegsItem >= LEGS_P0_GREY_SUIT AND eLegsItem <= LEGS_P0_GREY_SUIT_15) // default suit variations bRestrictedLegs = TRUE ENDIF IF bRestrictedTorso <> bRestrictedLegs // trying to equip 1 restricted item without the other. // (Add exceptions here) IF bRestrictedLegs = TRUE // other items that can be mixed with the suit legs (but are otherwise unrestricted) IF (eTorsoItem >= TORSO_P0_YOGA_0 AND eTorsoItem <= TORSO_P0_YOGA_5) // yoga polo variations OR (eTorsoItem >= TORSO_P0_SUIT_JACKET AND eTorsoItem <= TORSO_P0_SUIT_JACKET_15) // suit jackets can be worn with the suit pants OR (eTorsoItem >= TORSO_P0_BED AND eTorsoItem <= TORSO_P0_VEST_4) // vests can be worn with suit pants RETURN TRUE ENDIF ENDIF CPRINTLN(DEBUG_PED_COMP, "Michael's default suit variations can only be worn together. Torso= ", eTorsoItem, " Legs = ", eLegsItem) RETURN FALSE ENDIF BREAK // Trevor CASE PLAYER_TWO // Trevor's cheap suit variations can only be mixed with eachother IF (eTorsoItem >= TORSO_P2_CHEAPSUIT_0 AND eTorsoItem <= TORSO_P2_CHEAPSUIT_9) // cheap suit jackets bRestrictedTorso = TRUE ENDIF IF (eLegsItem >= LEGS_P2_CHEAP_SUIT_PANTS AND eLegsItem <= LEGS_P2_CHEAP_SUIT_PANTS_9) // cheap suit pants bRestrictedLegs = TRUE ENDIF IF bRestrictedTorso <> bRestrictedLegs // trying to equip 1 restricted item without the other. // (Add exceptions here) CPRINTLN(DEBUG_PED_COMP, "Trevor's cheap suit variations can only be worn together. Torso= ", eTorsoItem, " Legs = ", eLegsItem) RETURN FALSE ENDIF // Trevor's dresses can only be worn with briefs IF (eTorsoItem >= TORSO_P2_DRESS AND eTorsoItem <= TORSO_P2_DRESS_4) // dresses IF (eLegsItem >= LEGS_P2_UNDERWEAR AND eLegsItem <= LEGS_P2_UNDERWEAR_9) // underwear OR (eLegsItem >= LEGS_P2_UNDERWEAR_BF_0 AND eLegsItem <= LEGS_P2_UNDERWEAR_BF_9) // underwear + bare feet // Dresses and briefs can be worn together ELSE CPRINTLN(DEBUG_PED_COMP, "Trevor's dresses can only be worn with briefs. Torso= ", eTorsoItem, " Legs = ", eLegsItem) RETURN FALSE ENDIF ENDIF // Trevor's tuxedo pants can only be worn with certain suit jackets IF eLegsItem = LEGS_P2_CHEAP_TUXEDO_PANTS IF eTorsoItem = TORSO_P2_TUXEDO OR (eTorsoItem >= TORSO_P2_STYLESUIT_JACKET AND eTorsoItem <= TORSO_P2_STYLESUIT_JACKET_6) // Valid jackets to wear with tux pants ELSE CPRINTLN(DEBUG_PED_COMP, "Trevor's tuxedo pants can only be worn with certain jackets. Torso= ", eTorsoItem, " Legs = ", eLegsItem) RETURN FALSE ENDIF ENDIF BREAK ENDSWITCH RETURN TRUE // passes the restricted torso / legs check ENDFUNC /// PURPOSE: Returns TRUE if the ped component item can be worn with the specified item FUNC BOOL IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType1,PED_COMP_NAME_ENUM eItem1, PED_COMP_TYPE_ENUM eType2, PED_COMP_NAME_ENUM eItem2) // type / item 1 is the item we are trying to mix with the item being tried on // type / item 2 is the item we are trying on in the shop / wardrobe //CPRINTLN(DEBUG_PED_COMP, "IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_SP ", GET_PED_COMP_TYPE_STRING(eType1), " eItem1 ", eItem1) //#IF IS_DEBUG_BUILD PRINT_PED_COMP_ITEM_NAME_SP(ePedModel, eType1, eItem1) #ENDIF //CPRINTLN(DEBUG_PED_COMP, "IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_SP ", GET_PED_COMP_TYPE_STRING(eType2), " eItem2 ", eItem2) //#IF IS_DEBUG_BUILD PRINT_PED_COMP_ITEM_NAME_SP(ePedModel, eType2, eItem2) #ENDIF PED_COMP_NAME_ENUM eReturnItem // just used to keep tie check compiling // Common Singleplayer Checks IF ePedModel = PLAYER_ZERO OR ePedModel = PLAYER_ONE OR ePedModel = PLAYER_TWO // masks IF IS_ITEM_A_MASK(ePedModel, eType1, eItem1) IF IS_ITEM_A_MASK(ePedModel, eType2, eItem2) CPRINTLN(DEBUG_PED_COMP, "Can't wear 2 masks together.") RETURN TRUE ELSE IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType2, eItem2) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + glasses together 1.") RETURN TRUE ELIF IS_ITEM_A_HAT(ePedModel, eType2, eItem2) IF ePedModel = PLAYER_ONE AND eItem1 = SPECIAL_P1_MASK AND eType1 = COMP_TYPE_SPECIAL // Franklin's bandana mask is an exception ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + hat together 1.") RETURN TRUE ENDIF ENDIF ENDIF ELSE IF IS_ITEM_A_MASK(ePedModel, eType2, eItem2) IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType1, eItem1) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + glasses together 2.") RETURN TRUE ELIF IS_ITEM_A_HAT(ePedModel, eType1, eItem1) IF ePedModel = PLAYER_ONE AND eItem2 = SPECIAL_P1_MASK AND eType2 = COMP_TYPE_SPECIAL // Franklin's bandana mask is an exception ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + hat together 2.") RETURN TRUE ENDIF ENDIF ENDIF ENDIF SWITCH eType1 // Can we use this torso component... CASE COMP_TYPE_TORSO SWITCH eType2 // with these legs CASE COMP_TYPE_LEGS IF NOT DO_WAIST_CHECK(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Waists don't match. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF NOT DO_LIMITED_TORSO_AND_LEGS_CHECK(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Limited torso waist check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF IS_GOLF_ITEM(ePedModel, COMP_TYPE_LEGS, eItem2) IF NOT IS_GOLF_ITEM(ePedModel, COMP_TYPE_TORSO, eItem1) CPRINTLN(DEBUG_PED_COMP, "Golf pants can only be worn with golf tops. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK // with this special item CASE COMP_TYPE_SPECIAL IF NOT DO_TIE_CHECK(ePedModel, eItem2, DUMMY_PED_COMP, eItem1, eReturnItem) CPRINTLN(DEBUG_PED_COMP, "Can't wear this tie with this torso. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF NOT DO_WATCH_CHECK_SP(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Can't wear watch with long sleeves. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF BREAK // with this jbib item CASE COMP_TYPE_JBIB IF NOT DO_JBIB_CHECK(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Jbib check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Jbib check passed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) ENDIF BREAK ENDSWITCH BREAK // Can we use this legs component... CASE COMP_TYPE_LEGS SWITCH eType2 // with this torso CASE COMP_TYPE_TORSO IF NOT DO_WAIST_CHECK(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Waists don't match. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF NOT DO_LIMITED_TORSO_AND_LEGS_CHECK(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Limited torso waist check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF IS_GOLF_ITEM(ePedModel, COMP_TYPE_LEGS, eItem1) IF NOT IS_GOLF_ITEM(ePedModel, COMP_TYPE_TORSO, eItem2) CPRINTLN(DEBUG_PED_COMP, "Golf pants can only be worn with golf tops. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK // with these feet CASE COMP_TYPE_FEET IF NOT DO_LEGS_AND_FEET_CHECK(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Legs + feet check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL // Can we use this special component... SWITCH eType2 // with this torso CASE COMP_TYPE_TORSO IF NOT DO_TIE_CHECK(ePedModel, eItem1, DUMMY_PED_COMP, eItem2, eReturnItem) CPRINTLN(DEBUG_PED_COMP, "Can't wear this tie with this torso. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF NOT DO_WATCH_CHECK_SP(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Can't wear watch with long sleeves. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF BREAK // with this jbib CASE COMP_TYPE_JBIB IF NOT DO_TIE_CHECK(ePedModel, eItem1, eItem2, DUMMY_PED_COMP, eReturnItem) CPRINTLN(DEBUG_PED_COMP, "Can't wear this tie with this jbib. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF NOT DO_WATCH_CHECK_SP(ePedModel, DUMMY_PED_COMP, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Can't wear watch with long sleeves. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET // Can we use this feet component... IF eType2 = COMP_TYPE_LEGS // with these legs IF NOT DO_LEGS_AND_FEET_CHECK(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Legs + feet check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_JBIB // Can we use this jbib component... SWITCH eType2 // with this torso CASE COMP_TYPE_TORSO IF NOT DO_JBIB_CHECK(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Jbib check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ELSE CPRINTLN(DEBUG_PED_COMP, "Jbib check passed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) ENDIF BREAK // with this special item CASE COMP_TYPE_SPECIAL IF NOT DO_TIE_CHECK(ePedModel, eItem2, eItem1, DUMMY_PED_COMP, eReturnItem) CPRINTLN(DEBUG_PED_COMP, "Can't wear this tie with this jbib. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF IF NOT DO_WATCH_CHECK_SP(ePedModel, DUMMY_PED_COMP, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Can't wear watch with long sleeves. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH ENDIF RETURN FALSE ENDFUNC /// PURPOSE: Returns TRUE if the ped component item can be worn with the specified item FUNC BOOL IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType1,PED_COMP_NAME_ENUM eItem1, INT iItem1DLCHash, PED_COMP_TYPE_ENUM eType2, PED_COMP_NAME_ENUM eItem2, INT iItem2DLCHash, PED_INDEX mPed) // type / item 1 is the item we are trying to mix with the item being tried on // type / item 2 is the item we are trying on in the shop / wardrobe //CPRINTLN(DEBUG_PED_COMP, "IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP ", GET_PED_COMP_TYPE_STRING(eType1), " eItem1 ", eItem1) //#IF IS_DEBUG_BUILD PRINT_PED_COMP_ITEM_NAME_MP(ePedModel, eType1, eItem1) #ENDIF //CPRINTLN(DEBUG_PED_COMP, "IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP ", GET_PED_COMP_TYPE_STRING(eType2), " eItem2 ", eItem2) //#IF IS_DEBUG_BUILD PRINT_PED_COMP_ITEM_NAME_MP(ePedModel, eType2, eItem2) #ENDIF // common MP checks // masks IF IS_ITEM_A_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType2, eItem2, iItem2DLCHash) IF IS_ITEM_A_FULL_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + glasses together 1.") RETURN TRUE ENDIF ELIF IS_ITEM_A_HAT(ePedModel, eType2, eItem2, iItem2DLCHash) // Allow some tight fitting masks to work with the top hat and bowler hat. IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_BOWLER_HAT, ENUM_TO_INT(SHOP_PED_PROP)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_TOP_HAT, ENUM_TO_INT(SHOP_PED_PROP)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_SCRUFFY_BALACLAVA, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + top/bowler hat together 1.") RETURN TRUE ENDIF ELIF IS_ITEM_A_FULL_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + hat together 1.") RETURN TRUE // Only allow some hats to work with the face bandanas ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_DLC_ITEM_FORCE_THIS_ITEM(iItem1DLCHash, eType2, eItem2, iItem2DLCHash) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HOOD_HAT, ENUM_TO_INT(SHOP_PED_PROP)) OR iItem2DLCHash = HASH("DLC_MP_APA_M_PHEAD_1_0") OR iItem2DLCHash = HASH("DLC_MP_APA_M_PHEAD_1_1") OR iItem2DLCHash = HASH("DLC_MP_APA_M_PHEAD_1_2") OR iItem2DLCHash = HASH("DLC_MP_APA_F_PHEAD_1_0") OR iItem2DLCHash = HASH("DLC_MP_APA_F_PHEAD_1_1") OR iItem2DLCHash = HASH("DLC_MP_APA_F_PHEAD_1_2") // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear face bandana + hat together 1.") RETURN TRUE ENDIF ELSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_FITTED_CAP, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HOOD_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eType2 = COMP_TYPE_PROPS AND (eItem2 >= PROPS_FMM_HAT_4_0 AND eItem2 <= PROPS_FMM_HAT_4_7)) // Safe ELIF DOES_DLC_ITEM_FORCE_THIS_ITEM(iItem1DLCHash, eType2, eItem2, iItem2DLCHash) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear face bandana + hat together 2.") RETURN TRUE ENDIF ENDIF ENDIF ELIF IS_ITEM_A_HELMET(ePedModel, eType2, eItem2, iItem2DLCHash) // Only allow some helmets to work with the face bandanas IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF IS_ITEM_A_DOME_HELMET(ePedModel, eType2, eItem2, iItem2DLCHash) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear face bandana + hat together 3.") RETURN TRUE ENDIF // Allow ski mask to work with all helmets ELIF IS_ITEM_A_SKI_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) // Safe // Allow re-breather to work with all open faced helmets ELIF NOT IS_ITEM_A_FULL_FACE_HELMET(ePedModel, eType2, eItem2, iItem2DLCHash) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_REBREATHER, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELIF NOT IS_ITEM_A_FULL_FACE_HELMET(ePedModel, eType2, eItem2, iItem2DLCHash) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_BIKER_SKULL, ENUM_TO_INT(SHOP_PED_PROP)) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_GAS_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Safe ELIF IS_ITEM_A_BIKER_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) AND NOT IS_ITEM_A_FULL_FACE_HELMET(ePedModel, eType2, eItem2, iItem2DLCHash) AND NOT IS_ITEM_A_BULLETPROOF_HELMET(ePedModel, eType2, eItem2, iItem2DLCHash) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_BIKER_SKULL, ENUM_TO_INT(SHOP_PED_PROP)) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_PROP)) // helmet // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_SCRUFFY_BALACLAVA, ENUM_TO_INT(SHOP_PED_COMPONENT)) //AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_PROP)) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + helmet together 1.") RETURN TRUE ENDIF ELIF IS_ITEM_EAR_DEFENDERS(ePedModel, eType2, eItem2) IF IS_ITEM_A_FULL_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + ear defenders together 1.") RETURN TRUE ENDIF ELIF IS_ITEM_EARRINGS(ePedModel, eType2, eItem2, iItem2DLCHash) IF IS_ITEM_A_FULL_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) AND NOT IS_ITEM_A_BIKER_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) AND NOT IS_ITEM_A_SKI_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + earrings together 1.") RETURN TRUE ENDIF ELIF IS_ITEM_NIGHTVISION(ePedModel, eType2, eItem2, iItem2DLCHash) // Allow night vision mask to work with this! IF NOT IS_ITEM_NIGHTVISION(ePedModel, eType1, eItem1, iItem1DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + nightvision together 1.") RETURN TRUE ENDIF ELIF (eType2 = COMP_TYPE_PROPS AND eItem2 = PROPS_HEAD_NONE) IF IS_ITEM_A_BIKER_MASK(ePedModel, eType1, eItem1, iItem1DLCHash) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + no hat together 1.") RETURN TRUE ENDIF ENDIF ELSE IF IS_ITEM_A_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType1, eItem1, iItem1DLCHash) IF IS_ITEM_A_FULL_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + glasses together 2.") RETURN TRUE ENDIF ELIF IS_ITEM_A_HAT(ePedModel, eType1, eItem1, iItem1DLCHash) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_BOWLER_HAT, ENUM_TO_INT(SHOP_PED_PROP)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_TOP_HAT, ENUM_TO_INT(SHOP_PED_PROP)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_SCRUFFY_BALACLAVA, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + top/bowler hat together 2.") RETURN TRUE ENDIF ELIF IS_ITEM_A_FULL_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + hat together 2.") RETURN TRUE // Only allow some hats to work with the face bandanas ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF DOES_DLC_ITEM_FORCE_THIS_ITEM(iItem2DLCHash, eType1, eItem1, iItem1DLCHash) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HOOD_HAT, ENUM_TO_INT(SHOP_PED_PROP)) OR iItem1DLCHash = HASH("DLC_MP_APA_M_PHEAD_1_0") OR iItem1DLCHash = HASH("DLC_MP_APA_M_PHEAD_1_1") OR iItem1DLCHash = HASH("DLC_MP_APA_M_PHEAD_1_2") OR iItem1DLCHash = HASH("DLC_MP_APA_F_PHEAD_1_0") OR iItem1DLCHash = HASH("DLC_MP_APA_F_PHEAD_1_1") OR iItem1DLCHash = HASH("DLC_MP_APA_F_PHEAD_1_2") // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear face bandana + hat together 4.") RETURN TRUE ENDIF ELSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_FITTED_CAP, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_HOOD_HAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eType1 = COMP_TYPE_PROPS AND (eItem1 >= PROPS_FMM_HAT_4_0 AND eItem1 <= PROPS_FMM_HAT_4_7)) // Safe ELIF DOES_DLC_ITEM_FORCE_THIS_ITEM(iItem2DLCHash, eType1, eItem1, iItem1DLCHash) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear face bandana + hat together 5.") RETURN TRUE ENDIF ENDIF ENDIF ELIF IS_ITEM_A_HELMET(ePedModel, eType1, eItem1, iItem1DLCHash) // Only allow some helmets to work with the face bandanas IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) IF IS_ITEM_A_DOME_HELMET(ePedModel, eType1, eItem1, iItem1DLCHash) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear face bandana + hat together 6.") RETURN TRUE ENDIF // Allow ski mask to work with all helmets ELIF IS_ITEM_A_SKI_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) // Safe ELIF NOT IS_ITEM_A_FULL_FACE_HELMET(ePedModel, eType1, eItem1, iItem1DLCHash) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_REBREATHER, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Safe ELIF NOT IS_ITEM_A_FULL_FACE_HELMET(ePedModel, eType1, eItem1, iItem1DLCHash) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_BIKER_SKULL, ENUM_TO_INT(SHOP_PED_PROP)) AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_GAS_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))) // Safe ELIF IS_ITEM_A_BIKER_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) AND NOT IS_ITEM_A_FULL_FACE_HELMET(ePedModel, eType1, eItem1, iItem1DLCHash) AND NOT IS_ITEM_A_BULLETPROOF_HELMET(ePedModel, eType1, eItem1, iItem1DLCHash) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_BIKER_SKULL, ENUM_TO_INT(SHOP_PED_PROP)) // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_PROP)) // helmet // Safe ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_SCRUFFY_BALACLAVA, ENUM_TO_INT(SHOP_PED_COMPONENT)) //AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem1DLCHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_PROP)) // Safe ELSE CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + helmet together 2.") RETURN TRUE ENDIF ELIF IS_ITEM_EAR_DEFENDERS(ePedModel, eType1, eItem1) IF IS_ITEM_A_FULL_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + ear defenders together 2.") RETURN TRUE ENDIF ELIF IS_ITEM_EARRINGS(ePedModel, eType1, eItem1, iItem1DLCHash) IF IS_ITEM_A_FULL_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) AND NOT IS_ITEM_A_BIKER_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) AND NOT IS_ITEM_A_SKI_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + earrings together 2.") RETURN TRUE ENDIF ELIF IS_ITEM_NIGHTVISION(ePedModel, eType1, eItem1, iItem1DLCHash) IF NOT IS_ITEM_NIGHTVISION(ePedModel, eType2, eItem2, iItem2DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + nightvision together 2.") RETURN TRUE ENDIF ELIF (eType1 = COMP_TYPE_PROPS AND eItem1 = PROPS_HEAD_NONE) IF IS_ITEM_A_BIKER_MASK(ePedModel, eType2, eItem2, iItem2DLCHash) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItem2DLCHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT)) CPRINTLN(DEBUG_PED_COMP, "Can't wear mask + no hat together 2.") RETURN TRUE ENDIF ENDIF ENDIF ENDIF // Don't allow player to wear nightvision goggles without the mask. IF eType1 = COMP_TYPE_BERD IF ENUM_TO_INT(eItem1) = 0 IF eType2 = COMP_TYPE_HAIR AND IS_ITEM_NIGHTVISION(ePedModel, eType2, eItem2, iItem2DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear no mask + nightvision together 1.") RETURN TRUE ENDIF ENDIF IF eType2 = COMP_TYPE_TEETH // with these teeth IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_LEGS, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, NULL, DEFAULT, DEFAULT, DEFAULT, eItem1) CPRINTLN(DEBUG_PED_COMP, "Berd + teeth check failed.") RETURN TRUE ENDIF ENDIF ELIF eType2 = COMP_TYPE_BERD IF ENUM_TO_INT(eItem2) = 0 IF eType1 = COMP_TYPE_HAIR AND IS_ITEM_NIGHTVISION(ePedModel, eType1, eItem1, iItem1DLCHash) CPRINTLN(DEBUG_PED_COMP, "Can't wear no mask + nightvision together 2.") RETURN TRUE ENDIF ENDIF IF eType1 = COMP_TYPE_TEETH // with these teeth IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_LEGS, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, NULL, DEFAULT, DEFAULT, DEFAULT, eItem2) CPRINTLN(DEBUG_PED_COMP, "Teeth + Berd check failed.") RETURN TRUE ENDIF ENDIF ENDIF SWITCH eType1 CASE COMP_TYPE_LEGS // Can we use this legs component... IF eType2 = COMP_TYPE_FEET // with these feet IF NOT DO_LEGS_AND_FEET_CHECK(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Legs + feet check failed.") RETURN TRUE ENDIF ENDIF #IF USE_TU_CHANGES IF eType2 = COMP_TYPE_PROPS // with this prop item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_LEGS, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Legs + props check failed.") RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_JBIB // with this jbib item IF NOT DO_JBIB_AND_LEGS_CHECK_MP(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Legs + jbib check failed.") RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_TEETH // with this teeth item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_LEGS, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, NULL, DEFAULT, DEFAULT, DEFAULT, DEFAULT, eItem1) CPRINTLN(DEBUG_PED_COMP, "Legs + teeth check failed.") RETURN TRUE ENDIF ENDIF #ENDIF BREAK CASE COMP_TYPE_FEET // Can we use this feet component... IF eType2 = COMP_TYPE_LEGS // with these legs IF NOT DO_LEGS_AND_FEET_CHECK(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Legs + feet check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_DECL // Can we use this decal component... IF eType2 = COMP_TYPE_JBIB // with this jbib IF NOT DO_DECAL_CHECK_MP(ePedModel, eItem1, eType2, eItem2) CPRINTLN(DEBUG_PED_COMP, "Decal check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_SPECIAL // with this special IF NOT DO_DECAL_CHECK_MP(ePedModel, eItem1, eType2, eItem2) CPRINTLN(DEBUG_PED_COMP, "Decal check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_TORSO // Can we use this torso component... IF eType2 = COMP_TYPE_TEETH // with this teeth item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_TORSO, DUMMY_PED_COMP, DUMMY_PED_COMP, eItem1, mPed) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_BERD // Can we use this berd component... IF eType2 = COMP_TYPE_PROPS // with this prop item CPRINTLN(DEBUG_PED_COMP, "Checking if BERD and PROPS are compatible") IF NOT DO_PROPS_CHECK_MP(ePedModel, COMP_TYPE_BERD, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Props check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_SPECIAL // Can we use this special component... IF eType2 = COMP_TYPE_TEETH // with this teeth item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_SPECIAL, DUMMY_PED_COMP, eItem1, DUMMY_PED_COMP, mPed) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_JBIB // with this jbib item IF NOT DO_JBIB_AND_SPECIAL_CHECK_MP(ePedModel, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Jbib / Special check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_PROPS // with this prop item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_SPECIAL, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Watch check failed, 1. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_DECL // with this decal IF NOT DO_DECAL_CHECK_MP(ePedModel, eItem2, eType1, eItem1) CPRINTLN(DEBUG_PED_COMP, "Decal check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_SPECIAL2 // Can we use this special2 component... IF eType2 = COMP_TYPE_TEETH // with this teeth item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_SPECIAL2, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, mPed, DEFAULT, eItem1) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ENDIF BREAK CASE COMP_TYPE_TEETH // Can we use this teeth component... IF eType2 = COMP_TYPE_TORSO // with this torso item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_TORSO, DUMMY_PED_COMP, DUMMY_PED_COMP, eItem2, mPed) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_SPECIAL // with this special item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_SPECIAL, DUMMY_PED_COMP, eItem2, DUMMY_PED_COMP, mPed) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_JBIB // with this jbib item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_JBIB, eItem2, DUMMY_PED_COMP, DUMMY_PED_COMP, mPed) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_PROPS // with this prop item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_PROPS, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, mPed, DEFAULT, DUMMY_PED_COMP, eItem2) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF #IF USE_TU_CHANGES ELIF eType2 = COMP_TYPE_BERD // with this berd item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_BERD, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, mPed, DEFAULT, DUMMY_PED_COMP, DUMMY_PED_COMP, eItem2) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_LEGS // with this legs item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_LEGS, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, NULL, DEFAULT, DEFAULT, DEFAULT, DEFAULT, eItem2) CPRINTLN(DEBUG_PED_COMP, "Legs + teeth check failed.") RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_SPECIAL2 // with this special2 item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem1, COMP_TYPE_SPECIAL2, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, NULL, DEFAULT, eItem2) CPRINTLN(DEBUG_PED_COMP, "Special2 + teeth check failed.") RETURN TRUE ENDIF #ENDIF ENDIF BREAK CASE COMP_TYPE_JBIB // Can we use this jbib component... IF eType2 = COMP_TYPE_SPECIAL // with this special item IF NOT DO_JBIB_AND_SPECIAL_CHECK_MP(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Jbib / Special check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_DECL // with this decal IF NOT DO_DECAL_CHECK_MP(ePedModel, eItem2, eType1, eItem1) CPRINTLN(DEBUG_PED_COMP, "Decal check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_TEETH // with this teeth item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_JBIB, eItem1, DUMMY_PED_COMP, DUMMY_PED_COMP, mPed) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_PROPS // with this prop item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_JBIB, eItem1, eItem2) CPRINTLN(DEBUG_PED_COMP, "Watch check failed, 1. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF #IF USE_TU_CHANGES ELIF eType2 = COMP_TYPE_LEGS // with this legs item IF NOT DO_JBIB_AND_LEGS_CHECK_MP(ePedModel, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Legs check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF #ENDIF ENDIF BREAK CASE COMP_TYPE_PROPS // Can we use this prop component... IF eType2 = COMP_TYPE_JBIB // with this jbib item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_JBIB, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Watch check failed, 1. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_SPECIAL // with this special item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_SPECIAL, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Watch check failed, 2. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF #IF USE_TU_CHANGES ELIF eType2 = COMP_TYPE_PROPS // with this prop item IF NOT DO_PROPS_CHECK_MP(ePedModel, COMP_TYPE_PROPS, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Props check failed, 2. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_TEETH // with this teeth item IF NOT DO_TEETH_CHECK_MP(ePedModel, eItem2, COMP_TYPE_PROPS, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, mPed, DEFAULT, DUMMY_PED_COMP, eItem1) CPRINTLN(DEBUG_PED_COMP, "Teeth check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_BERD // with this berd item IF NOT DO_PROPS_CHECK_MP(ePedModel, COMP_TYPE_BERD, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Berd check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_LEGS // with this leg item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_LEGS, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Legs check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF ELIF eType2 = COMP_TYPE_FEET // with this feet item IF NOT DO_WATCH_CHECK_MP(ePedModel, COMP_TYPE_FEET, eItem2, eItem1) CPRINTLN(DEBUG_PED_COMP, "Feet check failed. eType1= ", GET_PED_COMP_TYPE_STRING(eType1)) RETURN TRUE ENDIF #ENDIF ENDIF BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Returns TRUE if the ped component item can be worn with the specified outfit FUNC BOOL CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eOutfit, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, PED_COMP_OUTFIT_DATA_STRUCT &sOutfitData, PED_COMP_ITEM_DATA_STRUCT &sItemData) // Return TRUE if the item is part of the outfit already IF sOutfitData.eItems[eType] = eItem DEBUG_PRINTCALLSTACK() CPRINTLN(DEBUG_PED_COMP, "Part of same outfit. Allowing type= ", GET_PED_COMP_TYPE_STRING(eType)) RETURN TRUE ENDIF // If the outfit has specified "dummy ped comp" for this type, we can use whatever we like // this does not apply to props, as that is handled in the propgroup checks below IF sOutfitData.eItems[eType] = DUMMY_PED_COMP AND eType <> COMP_TYPE_PROPS AND eType <> COMP_TYPE_PROPGROUP CPRINTLN(DEBUG_PED_COMP, "This part of outfit is dummy ped comp: any additions are valid. eType= ", GET_PED_COMP_TYPE_STRING(eType)) RETURN TRUE ENDIF // if propgroup is empty, all "none" props are valid IF eType = COMP_TYPE_PROPGROUP OR eType = COMP_TYPE_PROPS AND sOutfitData.eItems[COMP_TYPE_PROPGROUP] = PROPGROUP_NONE IF eItem = PROPS_HEAD_NONE OR eItem = PROPS_EYES_NONE OR eItem = PROPS_EARS_NONE OR eItem = PROPS_MOUTH_NONE OR eItem = PROPS_LHAND_NONE OR eItem = PROPS_RHAND_NONE OR eItem = PROPS_LWRIST_NONE OR eItem = PROPS_RWRIST_NONE OR eItem = PROPS_HIP_NONE CPRINTLN(DEBUG_PED_COMP, "Outfit uses empty propgroup, any 'none' props are ok. eType= ", GET_PED_COMP_TYPE_STRING(eType)) RETURN TRUE ENDIF ENDIF // Dummy item IF eItem = DUMMY_PED_COMP OR sItemData.iItemBit = -1 RETURN TRUE ENDIF // If item is a prop, and its part of this outfit's propgroup it is allowed IF eType = COMP_TYPE_PROPS PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[COMP_TYPE_PROPGROUP]) INT iProp FOR iProp = 0 TO NUMBER_OF_PED_PROP_TYPES-1 IF sPropGroupData.eItems[iProp] = eItem CPRINTLN(DEBUG_PED_COMP, "Prop is part of this outfit's propgroup. Allowing, prop pos: ", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp))) RETURN TRUE ENDIF ENDFOR ENDIF // Otherwise see if the item can mixed IF IS_ITEM_A_PARACHUTE(ePedModel, eType, eItem) // all outfits can be worn with parachute (code equip them anyway) RETURN TRUE ENDIF // Michael IF ePedModel = PLAYER_ZERO IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType, eItem) // outfits that can't be worn with glasses IF eOutfit = OUTFIT_P0_FIREMAN OR eOutfit = OUTFIT_P0_BALLISTICS OR eOutfit = OUTFIT_P0_SCUBA_WATER OR eOutfit = OUTFIT_P0_SCUBA_LAND OR eOutfit = OUTFIT_P0_STEALTH OR eOutfit = OUTFIT_P0_RAPPEL OR eOutfit = OUTFIT_P0_SCUBA_WATER_NO_MASK CPRINTLN(DEBUG_PED_COMP, "Michael outfit can't be worn with glasses. Outfit: ", eOutfit) RETURN FALSE ENDIF RETURN TRUE // Can wear glasses with this outfit ELIF IS_ITEM_A_MASK(ePedModel, eType, eItem) // outfits that can't be worn with masks IF eOutfit = OUTFIT_P0_FIREMAN OR eOutfit = OUTFIT_P0_BALLISTICS OR eOutfit = OUTFIT_P0_HIGHWAY_PATROL OR eOutfit = OUTFIT_P0_GOLF OR eOutfit = OUTFIT_P0_SCUBA_WATER OR eOutfit = OUTFIT_P0_SCUBA_LAND OR eOutfit = OUTFIT_P0_STEALTH OR eOutfit = OUTFIT_P0_SECURITY OR eOutfit = OUTFIT_P0_RAPPEL OR eOutfit = OUTFIT_P0_SCUBA_WATER_NO_MASK CPRINTLN(DEBUG_PED_COMP, "Michael outfit can't be worn with mask. Outfit: ", eOutfit) RETURN FALSE ENDIF // some masks are special or special 2 // only allow if outfit uses dummy component for these types IF eType = COMP_TYPE_SPECIAL IF sOutfitData.eItems[COMP_TYPE_SPECIAL] <> SPECIAL_P0_NONE CPRINTLN(DEBUG_PED_COMP, "Michael outfit can't be worn with Special mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF sOutfitData.eItems[COMP_TYPE_SPECIAL2] <> SPECIAL2_P0_NONE CPRINTLN(DEBUG_PED_COMP, "Michael outfit can't be worn with Special2 mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ENDIF RETURN TRUE // Can wear mask with this outfit ELIF IS_ITEM_A_HAT(ePedModel, eType, eItem) // outfits that can't be worn with hats IF eOutfit = OUTFIT_P0_FIREMAN OR eOutfit = OUTFIT_P0_BALLISTICS OR eOutfit = OUTFIT_P0_HIGHWAY_PATROL OR eOutfit = OUTFIT_P0_GOLF OR eOutfit = OUTFIT_P0_SCUBA_WATER OR eOutfit = OUTFIT_P0_SCUBA_LAND OR eOutfit = OUTFIT_P0_STEALTH OR eOutfit = OUTFIT_P0_SECURITY OR eOutfit = OUTFIT_P0_RAPPEL OR eOutfit = OUTFIT_P0_SCUBA_WATER_NO_MASK CPRINTLN(DEBUG_PED_COMP, "Michael outfit can't be worn with hat. Outfit: ", eOutfit) RETURN FALSE ENDIF RETURN TRUE // Can wear hat with this outfit ENDIF // Franklin ELIF ePedModel = PLAYER_ONE IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType, eItem) // outfits that can't be worn with glasses IF eOutfit = OUTFIT_P1_SCUBA_WATER OR eOutfit = OUTFIT_P1_STEALTH OR eOutfit = OUTFIT_P1_FIREMAN CPRINTLN(DEBUG_PED_COMP, "Franklin outfit can't be worn with glasses. Outfit: ", eOutfit) RETURN FALSE ENDIF RETURN TRUE // Can wear glasses with this outfit ELIF IS_ITEM_A_MASK(ePedModel, eType, eItem) // outfits that can't be worn with masks IF eOutfit = OUTFIT_P1_SCUBA_WATER OR eOutfit = OUTFIT_P1_STEALTH OR eOutfit = OUTFIT_P1_FIREMAN OR eOutfit = OUTFIT_P1_EXTERMINATOR OR eOutfit = OUTFIT_P1_WHITE_SHIRT_JEANS // Some outfits can allow Franklin's bandana mask but no others: IF eType = COMP_TYPE_SPECIAL IF eItem = SPECIAL_P1_MASK IF eOutfit = OUTFIT_P1_EXTERMINATOR OR eOutfit = OUTFIT_P1_WHITE_SHIRT_JEANS RETURN TRUE ENDIF ELSE CPRINTLN(DEBUG_PED_COMP, "Franklin outfit can't be worn with mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ELSE CPRINTLN(DEBUG_PED_COMP, "Franklin outfit can't be worn with mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ENDIF // some masks are special or special 2 // only allow if outfit uses dummy component for these types IF eType = COMP_TYPE_SPECIAL IF sOutfitData.eItems[COMP_TYPE_SPECIAL] <> SPECIAL_P1_DUMMY CPRINTLN(DEBUG_PED_COMP, "Franklin outfit can't be worn with Special mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF sOutfitData.eItems[COMP_TYPE_SPECIAL2] <> SPECIAL2_P1_NONE CPRINTLN(DEBUG_PED_COMP, "Franklin outfit can't be worn with Special2 mask. Outfit: ", eOutfit) RETURN FALSE ENDIF IF eOutfit = OUTFIT_P1_UPTOWN_1 OR eOutfit = OUTFIT_P1_UPTOWN_2 OR eOutfit = OUTFIT_P1_UPTOWN_3 OR eOutfit = OUTFIT_P1_UPTOWN_4 IF (eItem >=SPECIAL2_P1_WRESTLER_MASK_0 AND eItem <= SPECIAL2_P1_WRESTLER_MASK_5) CPRINTLN(DEBUG_PED_COMP, "Franklin uptown outfit can't be worn with Special2 wrestler mask. Outfit: ", eOutfit, ", item: ", eItem) RETURN FALSE ENDIF ENDIF ELIF eType = COMP_TYPE_PROPS IF eOutfit = OUTFIT_P1_UPTOWN_1 OR eOutfit = OUTFIT_P1_UPTOWN_2 OR eOutfit = OUTFIT_P1_UPTOWN_3 OR eOutfit = OUTFIT_P1_UPTOWN_4 IF (eItem >=PROPS_P1_MASK_MONSTER_GREEN AND eItem <= PROPS_P1_MASK_TRIBAL_3) CPRINTLN(DEBUG_PED_COMP, "Franklin uptown outfit can't be worn with Prop mask. Outfit: ", eOutfit, ", item: ", eItem) RETURN FALSE ENDIF ENDIF ENDIF RETURN TRUE // Can wear mask with this outfit ELIF IS_ITEM_A_HAT(ePedModel, eType, eItem) // outfits that can't be worn with hats IF eOutfit = OUTFIT_P1_SCUBA_WATER OR eOutfit = OUTFIT_P1_SCUBA_WATER OR eOutfit = OUTFIT_P1_STEALTH OR eOutfit = OUTFIT_P1_FIREMAN OR eOutfit = OUTFIT_P1_EXTERMINATOR OR eOutfit = OUTFIT_P1_WHITE_SHIRT_JEANS CPRINTLN(DEBUG_PED_COMP, "Franklin outfit can't be worn with hat. Outfit: ", eOutfit) RETURN FALSE ENDIF RETURN TRUE // Can wear hat with this outfit ELIF eType = COMP_TYPE_PROPS IF (eItem >= PROPS_P1_EARRING_ROUND_0 AND eItem <= PROPS_P1_EARRING_SQUARE_7) //can wear earrings with any outfit RETURN TRUE ENDIF ENDIF // Trevor ELIF ePedModel = PLAYER_TWO // dock worker and no hat are allowed IF eOutfit = OUTFIT_P2_DOCK_WORKER IF eType = COMP_TYPE_PROPS AND eItem = PROPS_HEAD_NONE RETURN TRUE ENDIF ENDIF IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType, eItem) // outfits that can't be worn with glasses IF eOutfit = OUTFIT_P2_BALLISTICS OR eOutfit = OUTFIT_P2_DOCK_WORKER OR eOutfit = OUTFIT_P2_SCUBA_WATER OR eOutfit = OUTFIT_P2_STEALTH OR eOutfit = OUTFIT_P2_TANKTOP_SWEATPANTS_1 OR eOutfit = OUTFIT_P2_TOILET CPRINTLN(DEBUG_PED_COMP, "Trevor outfit can't be worn with glasses. Outfit: ", eOutfit) RETURN FALSE ENDIF RETURN TRUE // Can wear glasses with this outfit ELIF IS_ITEM_A_MASK(ePedModel, eType, eItem) // outfits that can't be worn with masks IF eOutfit = OUTFIT_P2_BALLISTICS OR eOutfit = OUTFIT_P2_DOCK_WORKER OR eOutfit = OUTFIT_P2_HIGHWAY_PATROL OR eOutfit = OUTFIT_P2_SCUBA_WATER OR eOutfit = OUTFIT_P2_STEALTH OR eOutfit = OUTFIT_P2_SECURITY OR eOutfit = OUTFIT_P2_TANKTOP_SWEATPANTS_1 OR eOutfit = OUTFIT_P2_TOILET CPRINTLN(DEBUG_PED_COMP, "Trevor outfit can't be worn with mask. Outfit: ", eOutfit) RETURN FALSE ENDIF // some masks are special or special 2 // only allow if outfit uses dummy component for these types IF eType = COMP_TYPE_SPECIAL IF sOutfitData.eItems[COMP_TYPE_SPECIAL] <> SPECIAL_P2_DUMMY CPRINTLN(DEBUG_PED_COMP, "Trevor outfit can't be worn with Special mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ELIF eType = COMP_TYPE_SPECIAL2 IF sOutfitData.eItems[COMP_TYPE_SPECIAL2] <> SPECIAL2_P2_NONE CPRINTLN(DEBUG_PED_COMP, "Trevor outfit can't be worn with Special2 mask. Outfit: ", eOutfit) RETURN FALSE ENDIF ENDIF RETURN TRUE // Can wear mask with this outfit ELIF IS_ITEM_A_HAT(ePedModel, eType, eItem) // outfits that can't be worn with hats IF eOutfit = OUTFIT_P2_BALLISTICS OR eOutfit = OUTFIT_P2_DOCK_WORKER OR eOutfit = OUTFIT_P2_HIGHWAY_PATROL OR eOutfit = OUTFIT_P2_SCUBA_WATER OR eOutfit = OUTFIT_P2_STEALTH OR eOutfit = OUTFIT_P2_SECURITY OR eOutfit = OUTFIT_P2_TOILET CPRINTLN(DEBUG_PED_COMP, "Trevor outfit can't be worn with hat. Outfit: ", eOutfit) RETURN FALSE ENDIF RETURN TRUE // Can wear hat with this outfit ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: Returns TRUE if the ped component item can be worn with the specified outfit FUNC BOOL CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eMixType, PED_COMP_NAME_ENUM eMixItem, PED_COMP_TYPE_ENUM eMainType, PED_COMP_NAME_ENUM eMainItem, PED_INDEX mPed = NULL) //CPRINTLN(DEBUG_PED_COMP, "CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM: eMixType= ", GET_PED_COMP_TYPE_STRING(eMixType), " eMixItem= ", eMixItem, " eMainType= ", GET_PED_COMP_TYPE_STRING(eMainType), " eMainItem= ", eMainItem) UNUSED_PARAMETER(mPed) // Same type IF eMixType = eMainType AND eMixType != COMP_TYPE_PROPS AND eMixType != COMP_TYPE_PROPGROUP CPRINTLN(DEBUG_PED_COMP, "CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM() - FALSE: Same type") RETURN FALSE ENDIF // Dummy item IF eMixItem = DUMMY_PED_COMP OR eMainItem = DUMMY_PED_COMP RETURN TRUE ENDIF // Same item IF eMixType = eMainType AND eMixItem = eMainItem RETURN TRUE ENDIF // Used in same outfit? INT iOutfit BOOL bCanMix PED_COMP_OUTFIT_DATA_STRUCT sOutfitData PED_COMP_PROPS_DATA_STRUCT sPropGroupData PED_COMP_ITEM_DATA_STRUCT sMixItemData = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eMixType, eMixItem) // TODO : SP/MP SPLIT PED_COMP_ITEM_DATA_STRUCT sMainItemData = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eMainType, eMainItem) // TODO : SP/MP SPLIT IF IS_BIT_SET(sMixItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) OR IS_BIT_SET(sMainItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) IF IS_BIT_SET(sMixItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) CPRINTLN(DEBUG_PED_COMP, "sMixItemData.iProperties outfit only, eMixItem = ", eMixItem, " ", GET_PED_COMP_TYPE_STRING(eMixType)) ENDIF IF IS_BIT_SET(sMainItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) CPRINTLN(DEBUG_PED_COMP, "sMainItemData.iProperties outfit only. eMainItem= ", eMainItem, " ", GET_PED_COMP_TYPE_STRING(eMainType)) ENDIF REPEAT PED_COMPONENTS_OUTFITS iOutfit // Cycle through each outfit sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, INT_TO_ENUM(PED_COMP_NAME_ENUM, iOutfit)) sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[COMP_TYPE_PROPGROUP]) // -------Part of same outfit or can be mixed-------- IF eMainType = COMP_TYPE_PROPS // props IF sPropGroupData.eItems[sMainItemData.ePropPos] = eMainItem IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, INT_TO_ENUM(PED_COMP_NAME_ENUM, iOutfit), eMixType, eMixItem, sOutfitData, sMixItemData) bCanMix = TRUE ENDIF ENDIF ELSE // normal ped comp items + propgroups IF sOutfitData.eItems[eMainType] = eMainItem IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, INT_TO_ENUM(PED_COMP_NAME_ENUM, iOutfit), eMixType, eMixItem, sOutfitData, sMixItemData) bCanMix = TRUE ENDIF ENDIF ENDIF // --------Check reverse conditions------------ IF eMixType = COMP_TYPE_PROPS // props IF sPropGroupData.eItems[sMixItemData.ePropPos] = eMixItem IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, INT_TO_ENUM(PED_COMP_NAME_ENUM, iOutfit), eMainType, eMainItem, sOutfitData, sMainItemData) bCanMix = TRUE ENDIF ENDIF ELSE IF sOutfitData.eItems[eMixType] = eMixItem IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, INT_TO_ENUM(PED_COMP_NAME_ENUM, iOutfit), eMainType, eMainItem, sOutfitData, sMainItemData) bCanMix = TRUE ENDIF ENDIF ENDIF ENDREPEAT // One is an outfit item and cannot be mixed IF NOT bCanMix CPRINTLN(DEBUG_PED_COMP, "Can't mix outfit only items.") RETURN FALSE ENDIF ENDIF // We have specified that combo should not work IF IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_SP(ePedModel, eMixType, eMixItem, eMainType, eMainItem) RETURN FALSE ENDIF // No issues found RETURN TRUE ENDFUNC FUNC INT GET_HEIST_DRAW_INDEX_FROM_HEIST_GEAR(INT iCompCheckItemHash, INT apparelType) INT iHeistDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, apparelType) iHeistDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, apparelType) iHeistDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, apparelType) iHeistDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, apparelType) iHeistDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, apparelType) iHeistDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, apparelType) iHeistDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, apparelType) iHeistDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, apparelType) iHeistDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, apparelType) iHeistDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, apparelType) iHeistDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, apparelType) iHeistDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, apparelType) iHeistDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, apparelType) iHeistDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_13, apparelType) iHeistDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, apparelType) iHeistDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, apparelType) iHeistDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_16, apparelType) iHeistDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_DRAW_17, apparelType) iHeistDraw = 17 ENDIF RETURN iHeistDraw ENDFUNC FUNC INT GET_LUXE_DRAW_INDEX_FROM_LUXE_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iLuxeDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, apparelType) iLuxeDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_1, apparelType) iLuxeDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, apparelType) iLuxeDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_3, apparelType) iLuxeDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, apparelType) iLuxeDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_5, apparelType) iLuxeDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_6, apparelType) iLuxeDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_7, apparelType) iLuxeDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_8, apparelType) iLuxeDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_9, apparelType) iLuxeDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_10, apparelType) iLuxeDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_11, apparelType) iLuxeDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_12, apparelType) iLuxeDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_DRAW_13, apparelType) iLuxeDraw = 13 ENDIF RETURN iLuxeDraw ENDFUNC FUNC INT GET_LUXE2_DRAW_INDEX_FROM_LUXE_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iLuxeDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, apparelType) iLuxeDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, apparelType) iLuxeDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_2, apparelType) iLuxeDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_3, apparelType) iLuxeDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_4, apparelType) iLuxeDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_5, apparelType) iLuxeDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_6, apparelType) iLuxeDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_7, apparelType) iLuxeDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_8, apparelType) iLuxeDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_9, apparelType) iLuxeDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_10, apparelType) iLuxeDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_11, apparelType) iLuxeDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_12, apparelType) iLuxeDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_13, apparelType) iLuxeDraw = 13 ENDIF RETURN iLuxeDraw ENDFUNC FUNC INT GET_LOW2_DRAW_INDEX_FROM_LOW2_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iLow2Draw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, apparelType) iLow2Draw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, apparelType) iLow2Draw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, apparelType) iLow2Draw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, apparelType) iLow2Draw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, apparelType) iLow2Draw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, apparelType) iLow2Draw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, apparelType) iLow2Draw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, apparelType) iLow2Draw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_8, apparelType) iLow2Draw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, apparelType) iLow2Draw = 9 ENDIF RETURN iLow2Draw ENDFUNC FUNC INT GET_APART_DRAW_INDEX_FROM_APART_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_17, apparelType) iDraw = 17 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_18, apparelType) iDraw = 18 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_19, apparelType) iDraw = 19 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_20, apparelType) iDraw = 20 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_21, apparelType) iDraw = 21 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_22, apparelType) iDraw = 22 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_23, apparelType) iDraw = 23 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_24, apparelType) iDraw = 24 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_DRAW_25, apparelType) iDraw = 25 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_STUNT_DRAW_INDEX_FROM_STUNT_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_17, apparelType) iDraw = 17 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_18, apparelType) iDraw = 18 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_19, apparelType) iDraw = 19 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_20, apparelType) iDraw = 20 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_21, apparelType) iDraw = 21 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_22, apparelType) iDraw = 22 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_23, apparelType) iDraw = 23 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_24, apparelType) iDraw = 24 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_DRAW_25, apparelType) iDraw = 25 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_BIKER_DRAW_INDEX_FROM_BIKER_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_17, apparelType) iDraw = 17 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_18, apparelType) iDraw = 18 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_19, apparelType) iDraw = 19 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_20, apparelType) iDraw = 20 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_21, apparelType) iDraw = 21 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_22, apparelType) iDraw = 22 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_23, apparelType) iDraw = 23 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_24, apparelType) iDraw = 24 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, apparelType) iDraw = 25 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_26, apparelType) iDraw = 26 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_27, apparelType) iDraw = 27 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_28, apparelType) iDraw = 28 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_29, apparelType) iDraw = 29 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_30, apparelType) iDraw = 30 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_31, apparelType) iDraw = 31 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_32, apparelType) iDraw = 32 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, apparelType) iDraw = 33 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_34, apparelType) iDraw = 34 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_DRAW_35, apparelType) iDraw = 35 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_IE_DRAW_INDEX_FROM_IE_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_17, apparelType) iDraw = 17 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_18, apparelType) iDraw = 18 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_19, apparelType) iDraw = 19 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_20, apparelType) iDraw = 20 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_21, apparelType) iDraw = 21 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_22, apparelType) iDraw = 22 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_23, apparelType) iDraw = 23 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_24, apparelType) iDraw = 24 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_DRAW_25, apparelType) iDraw = 25 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_GUN_DRAW_INDEX_FROM_GUN_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_17, apparelType) iDraw = 17 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_18, apparelType) iDraw = 18 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_19, apparelType) iDraw = 19 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_20, apparelType) iDraw = 20 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_21, apparelType) iDraw = 21 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_22, apparelType) iDraw = 22 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_DRAW_23, apparelType) iDraw = 23 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_AIR_DRAW_INDEX_FROM_AIR_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_AIR_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_AIR_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, apparelType) iDraw = 3 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_SMUG_DRAW_INDEX_FROM_SMUG_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_DRAW_6, apparelType) iDraw = 6 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_X17_DRAW_INDEX_FROM_X17_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_DRAW_13, apparelType) iDraw = 13 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_ASSAULT_DRAW_INDEX_FROM_ASSAULT_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, apparelType) iDraw = 0 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_ARENA_DRAW_INDEX_FROM_ARENA_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_DRAW_17, apparelType) iDraw = 17 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_VWD_DRAW_INDEX_FROM_VWD_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_9, apparelType) iDraw = 9 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_10, apparelType) iDraw = 10 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_11, apparelType) iDraw = 11 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_12, apparelType) iDraw = 12 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_13, apparelType) iDraw = 13 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_14, apparelType) iDraw = 14 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_15, apparelType) iDraw = 15 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_16, apparelType) iDraw = 16 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_DRAW_17, apparelType) iDraw = 17 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_H3_DRAW_INDEX_FROM_H3_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_DRAW_9, apparelType) iDraw = 9 ENDIF RETURN iDraw ENDFUNC FUNC INT GET_H4_DRAW_INDEX_FROM_H4_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_DRAW_9, apparelType) iDraw = 9 ENDIF RETURN iDraw ENDFUNC #IF FEATURE_TUNER FUNC INT GET_TR_DRAW_INDEX_FROM_TR_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_8, apparelType) iDraw = 8 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_DRAW_9, apparelType) iDraw = 9 ENDIF RETURN iDraw ENDFUNC #ENDIF #IF FEATURE_FIXER FUNC INT GET_FX_DRAW_INDEX_FROM_FX_CLOTH(INT iCompCheckItemHash, INT apparelType) INT iDraw = -1 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_0, apparelType) iDraw = 0 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_1, apparelType) iDraw = 1 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_2, apparelType) iDraw = 2 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_3, apparelType) iDraw = 3 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_4, apparelType) iDraw = 4 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_5, apparelType) iDraw = 5 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_6, apparelType) iDraw = 6 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_7, apparelType) iDraw = 7 ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_DRAW_8, apparelType) iDraw = 8 ENDIF RETURN iDraw ENDFUNC #ENDIF /// PURPOSE: Checks to see if a DLC item with the COMP_CHECKS tag can be mixed with the other item. FUNC BOOL DO_DLC_COMP_CHECK(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eCompCheckItem, PED_COMP_TYPE_ENUM eCompCheckType, INT iCompCheckItemHash, PED_COMP_ITEM_DATA_STRUCT &sCompCheckItemData, PED_COMP_NAME_ENUM eItem, PED_COMP_TYPE_ENUM eType, INT iItemNameHash, PED_COMP_ITEM_DATA_STRUCT &sItemData) UNUSED_PARAMETER(sCompCheckItemData) //UNUSED_PARAMETER(sItemData) UNUSED_PARAMETER(eCompCheckItem) BOOL bComboValid = TRUE INT iDrawTag = -1 IF iItemNameHash != -1 iDrawTag = GET_DLC_DRAW_TAG(iItemNameHash) ENDIF IF ePedModel = MP_M_FREEMODE_01 #IF FEATURE_FIXER IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iFXDraw = GET_FX_DRAW_INDEX_FROM_FX_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_SPECIAL2 SWITCH iFXDraw CASE 0 SWITCH eType CASE COMP_TYPE_TORSO bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GOLF_GLOVE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF #ENDIF #IF FEATURE_TUNER IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iTRDraw = GET_TR_DRAW_INDEX_FROM_TR_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_TEETH SWITCH iTRDraw CASE 0 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iTRDraw CASE 0 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF #ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iH4Draw = GET_H4_DRAW_INDEX_FROM_H4_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_SPECIAL SWITCH iH4Draw CASE 0 // Body Armour Level 5 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) OR (iDrawTag = 0) OR (iDrawTag = 1) OR (iDrawTag = 5) OR (iDrawTag = 9) OR (iDrawTag = 15) OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_0") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_1") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_2") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_3") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_4") OR 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_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Lightweight Vest SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) OR (iDrawTag = 0) OR (iDrawTag = 5) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iH3Draw = GET_H3_DRAW_INDEX_FROM_H3_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_LEGS SWITCH iH3Draw CASE 1 // NOOSE SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_H3_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Armoured Cargo SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB SWITCH iH3Draw CASE 6 // NOOSE SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_H3_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_VWD_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iVinewoodDraw = GET_VWD_DRAW_INDEX_FROM_VWD_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_TORSO SWITCH iVinewoodDraw CASE 0 // Impotent Rage Gloves SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_VWD_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iVinewoodDraw CASE 1 // Impotent Rage Belt SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_VWD_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iArenaDraw = GET_ARENA_DRAW_INDEX_FROM_ARENA_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iArenaDraw CASE 12 // Racesuit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iArenaDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iArenaDraw CASE 9 // Racesuit SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iArenaDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iArenaDraw CASE 12 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS SWITCH iArenaDraw CASE 0 // Pogo glasses SWITCH eType CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ASSAULT_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iAssaultDraw = GET_ASSAULT_DRAW_INDEX_FROM_ASSAULT_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iAssaultDraw CASE 0 // Classic Racing Suit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iAssaultDraw CASE 0 // Classic Racing Suit SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iX17Draw = GET_X17_DRAW_INDEX_FROM_X17_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iX17Draw CASE 2 // Scuba SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Scuba Tank IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iX17Draw CASE 0 // Scuba SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Scuba Tank IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Gorka CASE 4 // Gorka alt SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iX17Draw CASE 0 // Scuba Flippers CASE 2 // Scuba Socks SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_BERD SWITCH iX17Draw CASE 1 // Scuba Mask SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iX17Draw CASE 1 // Scuba Tank SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS IF (sItemData.ePropPos = ANCHOR_HEAD) bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_PROP)) bComboValid = TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK CASE 2 // Body Armour Level 1 CASE 3 // Body Armour Level 2 CASE 4 // Body Armour Level 3 CASE 5 // Body Armour Level 4 CASE 6 // Body Armour Level 5 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) OR (iDrawTag = 0) OR (iDrawTag = 1) OR (iDrawTag = 5) OR (iDrawTag = 15) OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_0") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_1") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_2") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_3") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_4") OR 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_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS SWITCH iX17Draw CASE 0 // Scuba Mask SWITCH eType CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_AIR_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iAirDraw = GET_AIR_DRAW_INDEX_FROM_AIR_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iAirDraw CASE 0 // Firesuit SWITCH eType CASE COMP_TYPE_SPECIAL // Belt/Collar for firesuit bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iAirDraw CASE 0 // Firesuit SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Belt/Collar for firesuit bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iAirDraw CASE 0 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iSmugDraw = GET_SMUG_DRAW_INDEX_FROM_SMUG_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_BERD SWITCH iSmugDraw CASE 4 // Headscarf CASE 5 // Headscarf CASE 6 // Headscarf SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_8_0 AND eItem <= JBIB_FMM_8_15) OR (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) OR (eItem >= JBIB_FMM_11_0 AND eItem <= JBIB_FMM_11_15) OR (eItem >= JBIB_FMM_13_0 AND eItem <= JBIB_FMM_13_15) OR (eItem = JBIB_FMM_15_0) OR iDrawTag = 0 OR iDrawTag = 1 OR iDrawTag = 5 OR iDrawTag = 8 OR iDrawTag = 9 OR iDrawTag = 11 OR iDrawTag = 13 OR 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_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iItemNameHash = HASH("DLC_MP_HEIST_M_JBIB_11_0") bComboValid = TRUE ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iItemNameHash = HASH("DLC_MP_LOW_M_JBIB_10_0") bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_PROPS // Block glasses. bComboValid = TRUE IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType, eItem) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = TRUE // Pilot Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Scuba OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Gorka OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iGunDraw = GET_GUN_DRAW_INDEX_FROM_GUN_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_LEGS SWITCH iGunDraw CASE 3 // Dungarees CASE 4 // Dungarees SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_9_0 AND eItem <= JBIB_FMM_9_15) //OR (eItem >= JBIB_FMM_11_0 AND eItem <= JBIB_FMM_11_15) //OR (eItem >= JBIB_FMM_13_0 AND eItem <= JBIB_FMM_13_15) OR (eItem = JBIB_FMM_15_0) OR iDrawTag = 0 OR iDrawTag = 1 OR iDrawTag = 5 OR iDrawTag = 9 //OR iDrawTag = 11 //OR iDrawTag = 13 OR iDrawTag = 15 //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT)) +closed //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) +closed //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF // Block these cases: IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iIEDraw = GET_IE_DRAW_INDEX_FROM_IE_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_BERD SWITCH iIEDraw CASE 11 // Morph SWITCH eType CASE COMP_TYPE_JBIB CASE COMP_TYPE_LEGS CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iIEDraw CASE 1 // Morph SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iIEDraw CASE 7 // Morph SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB SWITCH iIEDraw CASE 15 // Morph SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iBikerDraw = GET_BIKER_DRAW_INDEX_FROM_BIKER_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_FEET SWITCH iBikerDraw CASE 0 // Closed Laceup Boots CASE 1 // Closed Laceup Boots CASE 2 // Harness Boots CASE 6 // Harness Boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE // LTS Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartments OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2 OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_3") //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Open Laceup Boots CASE 4 // Open Laceup Boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE // LTS Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartments OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2 OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_XMAS2_M_LEGS_0_3") //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Tron SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iBikerDraw CASE 6 // Tron SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMM_0_0 bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB SWITCH iBikerDraw CASE 21 // Tron SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMM_0_0 bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iBikerDraw CASE 10 // Blazer + Shirt CASE 11 // Blazer + Turtleneck SWITCH eType CASE COMP_TYPE_JBIB // Only allow with open parka bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVERCOAT_JBIB, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iStuntDraw = GET_STUNT_DRAW_INDEX_FROM_STUNT_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iStuntDraw CASE 0 // Firesuit CASE 1 // Racesuit CASE 2 // Stuntsuit CASE 8 // Stuntsuit Shiny SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF (iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 8 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF (iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 8 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iStuntDraw CASE 0 // Firesuit CASE 1 // Racesuit CASE 2 // Stuntsuit CASE 4 // Stuntsuit Shiny SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF (iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 4 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMM_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iStuntDraw CASE 0 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 2 // Stuntman shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Stuntman shoes shiny SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_TORSO SWITCH iStuntDraw CASE 0 // Racing gloves SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Apartment Clothing IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iApartDraw = GET_APART_DRAW_INDEX_FROM_APART_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iApartDraw CASE 7 // Long sleeve top CASE 20 // Turtleneck SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BEAD_NECKLACE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block shorts bComboValid = TRUE SWITCH iItemNameHash // Valentines Boxers CASE HASH("DLC_MP_VAL_M_LEGS1_0") // Valentine2 shorts CASE HASH("DLC_MP_VAL2_M_LEGS_1_0") CASE HASH("DLC_MP_VAL2_M_LEGS_1_1") CASE HASH("DLC_MP_VAL2_M_LEGS_1_2") CASE HASH("DLC_MP_VAL2_M_LEGS_1_3") CASE HASH("DLC_MP_VAL2_M_LEGS_1_4") CASE HASH("DLC_MP_VAL2_M_LEGS_1_5") CASE HASH("DLC_MP_VAL2_M_LEGS_1_6") CASE HASH("DLC_MP_VAL2_M_LEGS_1_7") CASE HASH("DLC_MP_VAL2_M_LEGS_1_8") CASE HASH("DLC_MP_VAL2_M_LEGS_1_9") CASE HASH("DLC_MP_VAL2_M_LEGS_1_10") CASE HASH("DLC_MP_VAL2_M_LEGS_1_11") CASE HASH("DLC_MP_VAL2_M_LEGS_1_12") CASE HASH("DLC_MP_VAL2_M_LEGS_1_13") bComboValid = FALSE BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 15 // Quilted jacket SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow some tops bComboValid = FALSE IF (eItem >= SPECIAL_FMM_0_0 AND eItem <= SPECIAL_FMM_0_15) OR (eItem >= SPECIAL_FMM_1_0 AND eItem <= SPECIAL_FMM_1_15) OR (eItem >= SPECIAL_FMM_5_0 AND eItem <= SPECIAL_FMM_5_15) OR (eItem >= SPECIAL_FMM_10_0 AND eItem <= SPECIAL_FMM_10_15) // closed collar OR (eItem >= SPECIAL_FMM_11_0 AND eItem <= SPECIAL_FMM_11_15) // open collar OR (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 0)// T-shirts (crew) OR (iDrawTag = 1)// T-shirts (v) OR (iDrawTag = 5)// Tank tops OR (iDrawTag = 15)// Topless OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Polo Neck OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 21 // Long Suit Jacket SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow some tops bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Polo Neck OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX bComboValid = TRUE ENDIF SWITCH iItemNameHash CASE HASH("DLC_MP_BUSI_M_ACCS0_0") CASE HASH("DLC_MP_BUSI_M_ACCS0_1") CASE HASH("DLC_MP_BUSI_M_ACCS0_2") CASE HASH("DLC_MP_BUSI_M_ACCS0_3") CASE HASH("DLC_MP_BUSI_M_ACCS0_4") CASE HASH("DLC_MP_BUSI_M_ACCS0_5") CASE HASH("DLC_MP_BUSI_M_ACCS0_6") CASE HASH("DLC_MP_BUSI_M_ACCS0_7") CASE HASH("DLC_MP_BUSI_M_ACCS0_8") CASE HASH("DLC_MP_BUSI_M_ACCS0_9") CASE HASH("DLC_MP_BUSI_M_ACCS0_10") CASE HASH("DLC_MP_BUSI_M_ACCS0_11") CASE HASH("DLC_MP_BUSI_M_ACCS0_12") CASE HASH("DLC_MP_BUSI_M_ACCS1_0") CASE HASH("DLC_MP_BUSI_M_ACCS1_1") CASE HASH("DLC_MP_BUSI_M_ACCS1_2") CASE HASH("DLC_MP_BUSI_M_ACCS1_3") CASE HASH("DLC_MP_BUSI_M_ACCS1_4") CASE HASH("DLC_MP_BUSI_M_ACCS1_5") CASE HASH("DLC_MP_BUSI_M_ACCS1_6") CASE HASH("DLC_MP_BUSI_M_ACCS1_7") CASE HASH("DLC_MP_BUSI_M_ACCS1_8") CASE HASH("DLC_MP_BUSI_M_ACCS1_9") CASE HASH("DLC_MP_BUSI_M_ACCS1_10") CASE HASH("DLC_MP_BUSI_M_ACCS1_11") CASE HASH("DLC_MP_BUSI_M_ACCS1_12") bComboValid = TRUE BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 24 // Cashmere Coat SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow some tops bComboValid = FALSE IF (eItem >= SPECIAL_FMM_5_0 AND eItem <= SPECIAL_FMM_5_15) OR (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 5) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Polo Neck OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // MotoX bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iApartDraw CASE 2 // Baggies with knee pads SWITCH eType CASE COMP_TYPE_JBIB // Works with all JBIBs except luxe coat bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Fur Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Wool Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Trench Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Overcoat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Cashmere Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_27, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Closed Parka OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_28, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Open Parka bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Works with all SPECIALs BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iApartDraw CASE 0 // Dummy SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE // Morph suits and juggernaut IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE // Morph suits and juggernaut IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 2 // Walking boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE // Heist Pants IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartment Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stunt Pack OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SHORTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF IF (eItem >= LEGS_FMM_0_0 AND eItem <= LEGS_FMM_0_15) OR (eItem >= LEGS_FMM_1_0 AND eItem <= LEGS_FMM_1_15) OR (eItem >= LEGS_FMM_2_0 AND eItem <= LEGS_FMM_2_15) OR (eItem >= LEGS_FMM_6_0 AND eItem <= LEGS_FMM_6_15) OR (eItem >= LEGS_FMM_9_0 AND eItem <= LEGS_FMM_9_15) OR (eItem >= LEGS_FMM_12_0 AND eItem <= LEGS_FMM_12_15) OR (eItem >= LEGS_FMM_14_0 AND eItem <= LEGS_FMM_14_15) OR (eItem >= LEGS_FMM_15_0 AND eItem <= LEGS_FMM_15_15) OR (iDrawTag = 0) OR (iDrawTag = 1) OR (iDrawTag = 2) OR (iDrawTag = 6) OR (iDrawTag = 9) OR (iDrawTag = 12) OR (iDrawTag = 14) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 4 // Cowboy boots CASE 5 // Cowboy boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF (eItem >= LEGS_FMM_0_0 AND eItem <= LEGS_FMM_0_15) OR (eItem >= LEGS_FMM_1_0 AND eItem <= LEGS_FMM_1_15) OR (eItem >= LEGS_FMM_2_0 AND eItem <= LEGS_FMM_2_15) OR (eItem >= LEGS_FMM_4_0 AND eItem <= LEGS_FMM_4_15) OR (eItem >= LEGS_FMM_5_0 AND eItem <= LEGS_FMM_5_15) OR (eItem >= LEGS_FMM_6_0 AND eItem <= LEGS_FMM_6_15) OR (eItem >= LEGS_FMM_7_0 AND eItem <= LEGS_FMM_7_15) OR (eItem >= LEGS_FMM_9_0 AND eItem <= LEGS_FMM_9_15) OR (eItem >= LEGS_FMM_12_0 AND eItem <= LEGS_FMM_12_15) OR (eItem >= LEGS_FMM_13_0 AND eItem <= LEGS_FMM_13_15) OR (eItem >= LEGS_FMM_14_0 AND eItem <= LEGS_FMM_14_15) OR (eItem >= LEGS_FMM_15_0 AND eItem <= LEGS_FMM_15_15) OR iDrawTag = 0 OR iDrawTag = 1 OR iDrawTag = 2 OR iDrawTag = 4 OR iDrawTag = 5 OR iDrawTag = 6 OR iDrawTag = 7 OR iDrawTag = 12 OR iDrawTag = 13 OR iDrawTag = 14 OR iDrawTag = 15 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SHORTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH // Luxe Clothing ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iLuxeDraw = GET_LUXE2_DRAW_INDEX_FROM_LUXE_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_TEETH SWITCH iLuxeDraw CASE 10 // Scarf SWITCH eType CASE COMP_TYPE_JBIB // Only allow with luxe jackets bComboValid = FALSE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (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_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Remove for masks bComboValid = TRUE IF IS_ITEM_A_MASK(ePedModel, eType, eItem) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH // Pilot Clothing ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType // CASE COMP_TYPE_JBIB // // Pilot top // SWITCH eType // CASE COMP_TYPE_SPECIAL // // Only allow default special // bComboValid = FALSE // IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 // OR (iDrawTag = 15) // bComboValid = TRUE // ENDIF // BREAK // CASE COMP_TYPE_TEETH // // Only allow the dummy // bComboValid = FALSE // IF (eItem = TEETH_FMM_0_0) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) // bComboValid = TRUE // ENDIF // BREAK // CASE COMP_TYPE_PROPS // // Block wrist props. // bComboValid = FALSE // IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) // AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) // bComboValid = TRUE // ENDIF // BREAK // ENDSWITCH // BREAK // CASE COMP_TYPE_LEGS // // Pilot pants // BREAK CASE COMP_TYPE_FEET // Pilot boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE // Heist Pants IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartment Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SHORTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF IF (eItem >= LEGS_FMM_0_0 AND eItem <= LEGS_FMM_0_15) OR (eItem >= LEGS_FMM_1_0 AND eItem <= LEGS_FMM_1_15) OR (eItem >= LEGS_FMM_2_0 AND eItem <= LEGS_FMM_2_15) OR (eItem >= LEGS_FMM_6_0 AND eItem <= LEGS_FMM_6_15) OR (eItem >= LEGS_FMM_9_0 AND eItem <= LEGS_FMM_9_15) OR (eItem >= LEGS_FMM_12_0 AND eItem <= LEGS_FMM_12_15) OR (eItem >= LEGS_FMM_14_0 AND eItem <= LEGS_FMM_14_15) OR (eItem >= LEGS_FMM_15_0 AND eItem <= LEGS_FMM_15_15) OR (iDrawTag = 0) OR (iDrawTag = 1) OR (iDrawTag = 2) OR (iDrawTag = 6) OR (iDrawTag = 9) OR (iDrawTag = 12) OR (iDrawTag = 14) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // Heist Clothing ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(eCompCheckType)) INT iHeistDraw = GET_HEIST_DRAW_INDEX_FROM_HEIST_GEAR(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iHeistDraw CASE 0 // Long sleeve top SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block shorts bComboValid = TRUE SWITCH iItemNameHash // Valentines Boxers CASE HASH("DLC_MP_VAL_M_LEGS1_0") // Valentine2 shorts CASE HASH("DLC_MP_VAL2_M_LEGS_1_0") CASE HASH("DLC_MP_VAL2_M_LEGS_1_1") CASE HASH("DLC_MP_VAL2_M_LEGS_1_2") CASE HASH("DLC_MP_VAL2_M_LEGS_1_3") CASE HASH("DLC_MP_VAL2_M_LEGS_1_4") CASE HASH("DLC_MP_VAL2_M_LEGS_1_5") CASE HASH("DLC_MP_VAL2_M_LEGS_1_6") CASE HASH("DLC_MP_VAL2_M_LEGS_1_7") CASE HASH("DLC_MP_VAL2_M_LEGS_1_8") CASE HASH("DLC_MP_VAL2_M_LEGS_1_9") CASE HASH("DLC_MP_VAL2_M_LEGS_1_10") CASE HASH("DLC_MP_VAL2_M_LEGS_1_11") CASE HASH("DLC_MP_VAL2_M_LEGS_1_12") CASE HASH("DLC_MP_VAL2_M_LEGS_1_13") bComboValid = FALSE BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Flight jacket BREAK CASE 2 // Cop shirt BREAK CASE 3 // Refuse t-shirt BREAK CASE 4 // Refuse hoody SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Tails jacket BREAK CASE 6 // Long jacket - open BREAK CASE 7 // Long jacket - closed BREAK CASE 8 // Zipper jacket SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 9 // Leather jacket - zip SWITCH eType CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JACKET_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow some tops bComboValid = FALSE IF (eItem >= SPECIAL_FMM_0_0 AND eItem <= SPECIAL_FMM_0_15) OR (eItem >= SPECIAL_FMM_1_0 AND eItem <= SPECIAL_FMM_1_15) OR (eItem >= SPECIAL_FMM_5_0 AND eItem <= SPECIAL_FMM_5_15) OR (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 0)// T-shirts (crew) OR (iDrawTag = 1)// T-shirts (v) OR (iDrawTag = 5)// Tank tops OR (iDrawTag = 15)// Topless bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 10 // Army shirt SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 11 // Leather jacket (draw 6) // uses draw_6 checks BREAK CASE 12 // Boiler suit 1 CASE 13 // Boiler suit 2 SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 14 // Chem suit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hood down OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hood up OR (eItem = SPECIAL_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Only allow dummy berd or hazmat mask // bComboValid = FALSE // IF (eItem = BERD_FMM_0_0) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE // ENDIF BREAK ENDSWITCH BREAK CASE 15 // Dickies jacket with hood up SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow short t-shirts (ones we use with leather jacket) bComboValid = FALSE IF (eItem >= SPECIAL_FMM_2_0 AND eItem <= SPECIAL_FMM_2_15) OR (eItem >= SPECIAL_FMM_14_0 AND eItem <= SPECIAL_FMM_14_15) OR (iDrawTag = 2) OR (iDrawTag = 14) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Only allow the ski/gas/haz masks bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GAS_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eItem = BERD_FMM_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 16 // Dickies jacket with hood down SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow short t-shirts (ones we use with leather jacket) bComboValid = FALSE IF (eItem >= SPECIAL_FMM_2_0 AND eItem <= SPECIAL_FMM_2_15) OR (eItem >= SPECIAL_FMM_14_0 AND eItem <= SPECIAL_FMM_14_15) OR (iDrawTag = 2) OR (iDrawTag = 14) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Allow everything since we can now wear helmets with masks. bComboValid = TRUE BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iHeistDraw CASE 0 // Black vest big collar CASE 1 // Gray vest big collar SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15) OR (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15) OR (eItem >= JBIB_FMM_5_0 AND eItem <= JBIB_FMM_5_15) OR (eItem >= JBIB_FMM_15_0 AND eItem <= JBIB_FMM_15_0) OR (iDrawTag = 0) OR (iDrawTag = 1) OR (iDrawTag = 5) OR (iDrawTag = 15) OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_0") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_1") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_2") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_3") OR iItemNameHash = HASH("DLC_MP_LTS_M_JBIB_1_4") OR 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_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Block paperbag masks and animal masks SWITCH iItemNameHash 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") CASE HASH("DLC_MP_IND_M_BERD_0_0") CASE HASH("DLC_MP_IND_M_BERD_0_1") CASE HASH("DLC_MP_IND_M_BERD_1_0") CASE HASH("DLC_MP_IND_M_BERD_1_1") CASE HASH("DLC_MP_IND_M_BERD_2_0") CASE HASH("DLC_MP_IND_M_BERD_2_1") CASE HASH("DLC_MP_IND_M_BERD_3_0") CASE HASH("DLC_MP_IND_M_BERD_3_1") CASE HASH("DLC_MP_IND_M_BERD_4_0") CASE HASH("DLC_MP_IND_M_BERD_4_1") CASE HASH("DLC_MP_IND_M_BERD_5_0") CASE HASH("DLC_MP_IND_M_BERD_5_1") bComboValid = FALSE BREAK ENDSWITCH IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_TEETH // Block scarves bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JACKET_SCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 2 // ? BREAK CASE 3 // Cop accs BREAK CASE 4 // Refuse BREAK CASE 5 // Shirt BREAK CASE 6 // Hoody down / Chem suit CASE 7 // Hoody up SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // bComboValid = FALSE // // Only allow gas mask // SWITCH iItemNameHash // CASE HASH("DLC_MP_HEIST_M_BERD_11_0") bComboValid = TRUE // BREAK // ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iHeistDraw CASE 0 // Joggers, shin high SWITCH eType CASE COMP_TYPE_JBIB // Works with all JBIBs BREAK CASE COMP_TYPE_SPECIAL // Works with all SPECIALs BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Baggies with knee pads SWITCH eType CASE COMP_TYPE_JBIB // Works with all JBIBs except luxe coat bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Fur Jacket OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Wool Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Trench Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Overcoat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Cashmere Coat OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_27, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Closed Parka OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_28, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Open Parka bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Works with all SPECIALs BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, 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)) 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)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 2 // Cop pants BREAK CASE 3 // Refuse BREAK CASE 5 // Boiler suit 1 CASE 6 // Boiler suit 2 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 7 // Chem suit SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow chem suit specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Only allow dummy berd or hazmat mask // bComboValid = FALSE // IF (eItem = BERD_FMM_0_0) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE // ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iHeistDraw CASE 0 // Hazmat Boots CASE 2 // Dirty boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE // Heist Pants IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartment Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Stunt Pack OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SHORTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF IF (eItem >= LEGS_FMM_0_0 AND eItem <= LEGS_FMM_0_15) OR (eItem >= LEGS_FMM_1_0 AND eItem <= LEGS_FMM_1_15) OR (eItem >= LEGS_FMM_2_0 AND eItem <= LEGS_FMM_2_15) OR (eItem >= LEGS_FMM_6_0 AND eItem <= LEGS_FMM_6_15) OR (eItem >= LEGS_FMM_9_0 AND eItem <= LEGS_FMM_9_15) OR (eItem >= LEGS_FMM_12_0 AND eItem <= LEGS_FMM_12_15) OR (eItem >= LEGS_FMM_14_0 AND eItem <= LEGS_FMM_14_15) OR (eItem >= LEGS_FMM_15_0 AND eItem <= LEGS_FMM_15_15) OR (iDrawTag = 0) OR (iDrawTag = 1) OR (iDrawTag = 2) OR (iDrawTag = 6) OR (iDrawTag = 9) OR (iDrawTag = 12) OR (iDrawTag = 14) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Canvas shoes BREAK ENDSWITCH BREAK ENDSWITCH ENDIF ELIF ePedModel = MP_F_FREEMODE_01 #IF FEATURE_FIXER IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_FX_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iFXDraw = GET_FX_DRAW_INDEX_FROM_FX_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_SPECIAL2 SWITCH iFXDraw CASE 0 SWITCH eType CASE COMP_TYPE_TORSO bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GOLF_GLOVE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF #ENDIF #IF FEATURE_TUNER IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_TR_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iTRDraw = GET_TR_DRAW_INDEX_FROM_TR_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_TEETH SWITCH iTRDraw CASE 0 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iTRDraw CASE 0 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF #ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H4_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iH4Draw = GET_H4_DRAW_INDEX_FROM_H4_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_SPECIAL SWITCH iH4Draw CASE 0 // Body Armour Level 5 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) //OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) //OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_14_0 AND eItem <= JBIB_FMF_14_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR (iDrawTag = 0) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 11) //OR (iDrawTag = 12) //OR (iDrawTag = 13) OR (iDrawTag = 14) OR (iDrawTag = 15) OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_0") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_1") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_2") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_3") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_4") OR 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_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_5, 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_GUN_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF // Block new torn tees that use draw 5 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block high-Waist Lowrider2 trousers OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Lightweight Vest SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) //OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) //OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR (iDrawTag = 0) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 11) //OR (iDrawTag = 12) //OR (iDrawTag = 13) OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Block new torn tees that use draw 5 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block high-Waist Lowrider2 trousers OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_H3_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iH3Draw = GET_H3_DRAW_INDEX_FROM_H3_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_LEGS SWITCH iH3Draw CASE 1 // NOOSE SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_H3_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Armoured Cargo SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB SWITCH iH3Draw CASE 6 // NOOSE SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_H3_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ARENA_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iArenaDraw = GET_ARENA_DRAW_INDEX_FROM_ARENA_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iArenaDraw CASE 12 // Racesuit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iArenaDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iArenaDraw CASE 9 // Racesuit SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iArenaDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iArenaDraw CASE 12 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ARENA_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS SWITCH iArenaDraw CASE 0 // Pogo glasses SWITCH eType CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Assault Clothing IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_ASSAULT_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iAssaultDraw = GET_ASSAULT_DRAW_INDEX_FROM_ASSAULT_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iAssaultDraw CASE 0 // Calssic Racing Suit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iAssaultDraw CASE 0 // Classic Racing Suit SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_15_0 AND eItem <= SPECIAL_FMF_15_0) //120 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_X17_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iX17Draw = GET_X17_DRAW_INDEX_FROM_X17_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iX17Draw CASE 2 // Scuba SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF // Scuba Tank IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 13 // Catsuit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iX17Draw CASE 0 // Scuba SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMF_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF // Scuba Tank IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Gorka CASE 4 // Gorka alt SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMF_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Catsuit SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMF_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iX17Draw CASE 0 // Scuba Flippers CASE 2 // Scuba Socks SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 7 // catsuit heels SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE IF (eItem >= LEGS_FMF_1_0 AND eItem <= LEGS_FMF_1_15) OR (eItem >= LEGS_FMF_3_0 AND eItem <= LEGS_FMF_3_15) OR (eItem >= LEGS_FMF_6_0 AND eItem <= LEGS_FMF_6_15) OR (iDrawTag = 1) OR (iDrawTag = 3) OR (iDrawTag = 6) OR 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0 , ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT , ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES , ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_BERD SWITCH iX17Draw CASE 1 // Scuba Mask SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iX17Draw CASE 1 // Scuba Tank SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS IF (sItemData.ePropPos = ANCHOR_HEAD) bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_PROP)) bComboValid = TRUE ENDIF ENDIF BREAK ENDSWITCH BREAK CASE 2 // Body Armour Level 1 CASE 3 // Body Armour Level 2 CASE 4 // Body Armour Level 3 CASE 5 // Body Armour Level 4 CASE 6 // Body Armour Level 5 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) //OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) //OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR (iDrawTag = 0) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 11) //OR (iDrawTag = 12) //OR (iDrawTag = 13) OR (iDrawTag = 15) OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_0") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_1") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_2") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_3") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_4") OR 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_APART_DRAW_7, 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)) bComboValid = TRUE ENDIF // Block new torn tees that use draw 5 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block high-Waist Lowrider2 trousers OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_PROPS SWITCH iX17Draw CASE 0 // Scuba Mask SWITCH eType CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Air Race Clothing IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_AIR_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iAirDraw = GET_AIR_DRAW_INDEX_FROM_AIR_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iAirDraw CASE 0 // Firesuit SWITCH eType CASE COMP_TYPE_SPECIAL // Belt/Collar for firesuit bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iAirDraw CASE 0 // Firesuit SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Belt/Collar for firesuit bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iAirDraw CASE 0 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Smuggler Clothing IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_SMUG_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iSmugDraw = GET_SMUG_DRAW_INDEX_FROM_SMUG_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_FEET SWITCH iSmugDraw CASE 0 // Moc Toe Boots CASE 1 // Moc Toe Boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE IF (eItem >= LEGS_FMF_0_0 AND eItem <= LEGS_FMF_0_15) OR (eItem >= LEGS_FMF_6_0 AND eItem <= LEGS_FMF_6_15) OR (iDrawTag = 0) OR (iDrawTag = 6) bComboValid = FALSE ENDIF // Pilot Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_BERD SWITCH iSmugDraw CASE 4 // Headscarf CASE 5 // Headscarf CASE 6 // Headscarf SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) OR (eItem >= JBIB_FMF_2_0 AND eItem <= JBIB_FMF_2_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_6_0 AND eItem <= JBIB_FMF_6_15) OR (eItem >= JBIB_FMF_8_0 AND eItem <= JBIB_FMF_8_15) OR (eItem >= JBIB_FMF_9_0 AND eItem <= JBIB_FMF_9_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_14_0 AND eItem <= JBIB_FMF_14_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR iDrawTag = 0 OR iDrawTag = 2 OR iDrawTag = 4 OR iDrawTag = 5 OR iDrawTag = 6 OR iDrawTag = 8 OR iDrawTag = 9 OR iDrawTag = 11 OR iDrawTag = 12 OR iDrawTag = 13 OR iDrawTag = 14 OR iDrawTag = 15 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_23, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT)) // - Business2, jbib 0, white-black-red OR iItemNameHash = HASH("DLC_MP_BUS2_F_JBIB0_0") OR iItemNameHash = HASH("DLC_MP_BUS2_F_JBIB0_1") OR iItemNameHash = HASH("DLC_MP_BUS2_F_JBIB0_2") // - Hipster, jbib 7, green-yellow-lilac-grey OR iItemNameHash = HASH("DLC_MP_HIPS_F_JBIB7_0") OR iItemNameHash = HASH("DLC_MP_HIPS_F_JBIB7_1") OR iItemNameHash = HASH("DLC_MP_HIPS_F_JBIB7_2") OR iItemNameHash = HASH("DLC_MP_HIPS_F_JBIB7_3") // - Independence, jbib 1, blue OR iItemNameHash = HASH("DLC_MP_IND_F_JBIB_1_0") // - Luxe, jbib 5, gold OR iItemNameHash = HASH("DLC_MP_LUXE_F_JBIB_3_0") bComboValid = TRUE ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SWEAT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BASIC_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_PROPS // Block glasses. bComboValid = TRUE IF IS_ITEM_PAIR_OF_GLASSES(ePedModel, eType, eItem) OR IS_ITEM_EARRINGS(ePedModel, eType, eItem) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = TRUE // Pilot Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Firesuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Scuba OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Gorka OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Catsuit OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_X17_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_GUN_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iGunDraw = GET_GUN_DRAW_INDEX_FROM_GUN_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_LEGS SWITCH iGunDraw CASE 3 // Dungarees CASE 4 // Dungarees SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) //OR (eItem >= JBIB_FMF_2_0 AND eItem <= JBIB_FMF_2_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) //OR (eItem >= JBIB_FMF_14_0 AND eItem <= JBIB_FMF_14_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR iDrawTag = 0 //OR iDrawTag = 2 OR iDrawTag = 4 OR iDrawTag = 5 OR iDrawTag = 11 OR iDrawTag = 12 OR iDrawTag = 13 //OR iDrawTag = 14 OR iDrawTag = 15 //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR iItemNameHash = HASH("DLC_MP_IND_F_JBIB_1_0") //OR iItemNameHash = HASH("DLC_MP_IND_F_JBIB_1_1") bComboValid = TRUE ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_IE_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iIEDraw = GET_IE_DRAW_INDEX_FROM_IE_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_BERD SWITCH iIEDraw CASE 11 // Morph SWITCH eType CASE COMP_TYPE_JBIB CASE COMP_TYPE_LEGS CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iIEDraw CASE 1 // Morph SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iIEDraw CASE 8 // Morph SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF eItem = TEETH_FMF_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_15_0 AND eItem <= SPECIAL_FMF_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMF_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB SWITCH iIEDraw CASE 15 // Morph SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_15_0 AND eItem <= SPECIAL_FMF_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) AND (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_EARS OR eItem = PROPS_EARS_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMF_0_0 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_BIKER_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iBikerDraw = GET_BIKER_DRAW_INDEX_FROM_BIKER_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_FEET SWITCH iBikerDraw CASE 0 // Closed Boots CASE 1 // Closed Boots CASE 2 // Harness Boots CASE 8 // Harness Boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE IF (eItem >= LEGS_FMF_4_0 AND eItem <= LEGS_FMF_4_15) OR (eItem >= LEGS_FMF_6_0 AND eItem <= LEGS_FMF_6_15) OR (eItem >= LEGS_FMF_11_0 AND eItem <= LEGS_FMF_11_15) OR (iDrawTag = 4) OR (iDrawTag = 6) OR (iDrawTag = 11) bComboValid = FALSE ENDIF // Pilot Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Open Boots CASE 4 // Open Boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE IF (eItem >= LEGS_FMF_6_0 AND eItem <= LEGS_FMF_6_15) OR (iDrawTag = 6) bComboValid = FALSE ENDIF // Pilot Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Lowirder2 chinos OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Calf Boots CASE 6 // Calf Boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE IF (eItem >= LEGS_FMF_2_0 AND eItem <= LEGS_FMF_2_15) OR (eItem >= LEGS_FMF_3_0 AND eItem <= LEGS_FMF_3_15) OR (eItem >= LEGS_FMF_6_0 AND eItem <= LEGS_FMF_6_15) OR (iDrawTag = 2) OR (iDrawTag = 3) OR (iDrawTag = 6) bComboValid = FALSE ENDIF // Pilot Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartment Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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_APART_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Lowirder2 chinos OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Stunt OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Assault OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 7 // Tron SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iBikerDraw CASE 6 // Tron SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_26, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_15_0 AND eItem <= SPECIAL_FMF_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMF_0_0 bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_JBIB SWITCH iBikerDraw CASE 26 // Tron SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_DECL // Only allow default bComboValid = FALSE IF eItem = DECL_FMF_0_0 bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iBikerDraw CASE 16 // Blazer + Shirt CASE 17 // Blazer + Turtleneck SWITCH eType CASE COMP_TYPE_JBIB // Only allow with open parka bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVERCOAT_JBIB, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Stunt Clothing IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_STUNT_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iStuntDraw = GET_STUNT_DRAW_INDEX_FROM_STUNT_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iStuntDraw CASE 0 // Firesuit CASE 1 // Racesuit CASE 2 // Stuntsuit CASE 8 // Stuntsuit Shiny SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF (iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 8 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF (iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 8 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iStuntDraw CASE 0 // Firesuit CASE 1 // Racesuit CASE 2 // Stuntsuit CASE 4 // Stuntsuit Shiny SWITCH eType CASE COMP_TYPE_FEET bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB bComboValid = FALSE IF (iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 2 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iStuntDraw = 4 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow default bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMM_15_0 AND eItem <= SPECIAL_FMM_15_0) //240 OR (iDrawTag = 15) bComboValid = TRUE ENDIF // Belt/Collar for firesuit IF iStuntDraw = 0 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iStuntDraw CASE 0 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Racing shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 2 // Stuntman shoes SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Stuntman shoes shiny SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_TORSO SWITCH iStuntDraw CASE 0 // Racing gloves SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF // Apartment Clothing IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_APART_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iApartDraw = GET_APART_DRAW_INDEX_FROM_APART_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iApartDraw CASE 5 // Hoodie SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default and heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 7 // Long sleeve top SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default and heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) OR 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)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE // Dont allow with bikini bottoms, stockings, or panties. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 bComboValid = FALSE ENDIF SWITCH iItemNameHash CASE HASH("DLC_MP_BEACH_F_LOWR100") CASE HASH("DLC_MP_BEACH_F_LOWR101") CASE HASH("DLC_MP_BEACH_F_LOWR102") CASE HASH("DLC_MP_BEACH_F_LOWR103") CASE HASH("DLC_MP_BEACH_F_LOWR104") CASE HASH("DLC_MP_BEACH_F_LOWR105") CASE HASH("DLC_MP_BEACH_F_LOWR106") CASE HASH("DLC_MP_BEACH_F_LOWR107") CASE HASH("DLC_MP_BEACH_F_LOWR108") CASE HASH("DLC_MP_BEACH_F_LOWR109") CASE HASH("DLC_MP_BEACH_F_LOWR110") CASE HASH("DLC_MP_BEACH_F_LOWR111") CASE HASH("DLC_MP_VAL_F_LEGS0_0") CASE HASH("DLC_MP_VAL_F_LEGS0_1") CASE HASH("DLC_MP_VAL_F_LEGS0_2") CASE HASH("DLC_MP_VAL_F_LEGS0_3") CASE HASH("DLC_MP_VAL_F_LEGS0_4") CASE HASH("DLC_MP_VAL2_F_LEGS_0_0") CASE HASH("DLC_MP_VAL2_F_LEGS_0_1") CASE HASH("DLC_MP_VAL2_F_LEGS_0_2") CASE HASH("DLC_MP_VAL2_F_LEGS_0_3") CASE HASH("DLC_MP_VAL2_F_LEGS_0_4") CASE HASH("DLC_MP_VAL2_F_LEGS_0_5") CASE HASH("DLC_MP_VAL2_F_LEGS_0_6") CASE HASH("DLC_MP_VAL2_F_LEGS_0_7") CASE HASH("DLC_MP_VAL2_F_LEGS_0_8") CASE HASH("DLC_MP_VAL2_F_LEGS_0_9") CASE HASH("DLC_MP_VAL2_F_LEGS_0_10") CASE HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE 8 // Jacket - open CASE 9 // Jacket - closed CASE 10 // Jacket - open CASE 11 // Jacket - closed CASE 12 // Jacket - open CASE 13 // Jacket - closed SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow shirt and vest accs // Only allow default and heist specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iApartDraw = 9)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iApartDraw = 8)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iApartDraw = 9)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") // Tracksuit pants OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = FALSE ENDIF // Block skirts IF IS_ITEM_A_SKIRT(ePedModel, eType, eItem) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iApartDraw CASE 0 // Dummy SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE // Morph suits and juggernaut IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE // Morph suits and juggernaut IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_EYES OR eItem = PROPS_EYES_NONE) AND (sItemData.ePropPos != ANCHOR_HEAD OR eItem = PROPS_HEAD_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 2 // Walking boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE // Heist Pants IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Independece+Business+Christmas skirts OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SKIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Valentines stockings+dress OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartment/Executives OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR 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)) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF SWITCH iItemNameHash // Beach Bum Shorts+Bikini bottoms CASE HASH("DLC_MP_BEACH_F_LOWR0") CASE HASH("DLC_MP_BEACH_F_LOWR1") CASE HASH("DLC_MP_BEACH_F_LOWR2") CASE HASH("DLC_MP_BEACH_F_LOWR3") CASE HASH("DLC_MP_BEACH_F_LOWR4") CASE HASH("DLC_MP_BEACH_F_LOWR5") CASE HASH("DLC_MP_BEACH_F_LOWR6") CASE HASH("DLC_MP_BEACH_F_LOWR7") CASE HASH("DLC_MP_BEACH_F_LOWR8") CASE HASH("DLC_MP_BEACH_F_LOWR9") CASE HASH("DLC_MP_BEACH_F_LOWR10") CASE HASH("DLC_MP_BEACH_F_LOWR11") CASE HASH("DLC_MP_BEACH_F_LOWR100") CASE HASH("DLC_MP_BEACH_F_LOWR101") CASE HASH("DLC_MP_BEACH_F_LOWR102") CASE HASH("DLC_MP_BEACH_F_LOWR103") CASE HASH("DLC_MP_BEACH_F_LOWR104") CASE HASH("DLC_MP_BEACH_F_LOWR105") CASE HASH("DLC_MP_BEACH_F_LOWR106") CASE HASH("DLC_MP_BEACH_F_LOWR107") CASE HASH("DLC_MP_BEACH_F_LOWR108") CASE HASH("DLC_MP_BEACH_F_LOWR109") CASE HASH("DLC_MP_BEACH_F_LOWR110") CASE HASH("DLC_MP_BEACH_F_LOWR111") bComboValid = TRUE BREAK ENDSWITCH IF (eItem >= LEGS_FMF_0_0 AND eItem <= LEGS_FMF_0_15) OR (eItem >= LEGS_FMF_2_0 AND eItem <= LEGS_FMF_2_15) OR (eItem >= LEGS_FMF_4_0 AND eItem <= LEGS_FMF_4_15) OR (eItem >= LEGS_FMF_5_0 AND eItem <= LEGS_FMF_5_15) OR (eItem >= LEGS_FMF_7_0 AND eItem <= LEGS_FMF_7_15) OR (eItem >= LEGS_FMF_8_0 AND eItem <= LEGS_FMF_8_15) OR (eItem >= LEGS_FMF_9_0 AND eItem <= LEGS_FMF_9_15) OR (eItem >= LEGS_FMF_10_0 AND eItem <= LEGS_FMF_10_15) OR (eItem >= LEGS_FMF_12_0 AND eItem <= LEGS_FMF_12_15) OR (eItem >= LEGS_FMF_14_0 AND eItem <= LEGS_FMF_14_15) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR (iDrawTag = 0 AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDrawTag = 2) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 7) OR (iDrawTag = 8) OR (iDrawTag = 9) OR (iDrawTag = 10) OR (iDrawTag = 12) OR (iDrawTag = 14) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 4 // Cowboy boots CASE 5 // Cowboy boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = TRUE IF (eItem >= LEGS_FMF_4_0 AND eItem <= LEGS_FMF_4_15) OR (eItem >= LEGS_FMF_11_0 AND eItem <= LEGS_FMF_11_15) OR (iDrawTag = 4) OR (iDrawTag = 11) OR iItemNameHash = HASH("DLC_MP_LUXE_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_LUXE_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_LUXE_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_LUXE_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_LUXE_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_LUXE2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_LUXE2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_LUXE2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_LUXE2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_LUXE2_F_LEGS_0_4") bComboValid = FALSE ENDIF // LTS Pants IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Heist Pants OR 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_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Xmas OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Chinos OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iApartDraw CASE 2 // Baggies with knee pads SWITCH eType CASE COMP_TYPE_JBIB // This works with all JBIBs except the dresses and tailcoats bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 3 // Utility Pants SWITCH eType CASE COMP_TYPE_JBIB // This works with all JBIBs except the dresses and tailcoats bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL IF (eItem >= SPECIAL_FMF_0_0 AND eItem <= SPECIAL_FMF_0_15) OR (eItem >= SPECIAL_FMF_1_0 AND eItem <= SPECIAL_FMF_1_15) OR iDrawTag = 0 OR iDrawTag = 1 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OFF_SHOULDER_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR iItemNameHash = HASH("DLC_MP_HIPS_F_ACCS3_0") OR iItemNameHash = HASH("DLC_MP_HIPS_F_ACCS3_1") OR iItemNameHash = HASH("DLC_MP_HIPS_F_ACCS3_2") OR iItemNameHash = HASH("DLC_MP_HIPS_F_ACCS3_3") OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_EXEC_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_EXEC_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF (eItem >= FEET_FMF_1_0 AND eItem <= FEET_FMF_1_15) OR (eItem >= FEET_FMF_10_0 AND eItem <= FEET_FMF_10_15) OR iDrawTag = 1 OR iDrawTag = 10 OR 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_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COWBOY_BOOTS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BARE_FEET, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH // Luxe Clothing ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_LUXE_CLOTH, ENUM_TO_INT(eCompCheckType)) INT iLuxeDraw = GET_LUXE2_DRAW_INDEX_FROM_LUXE_CLOTH(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_TEETH SWITCH iLuxeDraw CASE 10 // Scarf SWITCH eType CASE COMP_TYPE_JBIB // Only allow with luxe jackets bComboValid = FALSE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (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_LUXE2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Remove for masks bComboValid = TRUE IF IS_ITEM_A_MASK(ePedModel, eType, eItem) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH // Pilot Clothing ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType // CASE COMP_TYPE_JBIB // // Pilot top // SWITCH eType // CASE COMP_TYPE_SPECIAL // // Only allow default and heist specials // bComboValid = FALSE // IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) // bComboValid = TRUE // ENDIF // BREAK // CASE COMP_TYPE_TEETH // // Only allow the dummy // bComboValid = FALSE // IF (eItem = TEETH_FMF_0_0) // OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) // bComboValid = TRUE // ENDIF // BREAK // CASE COMP_TYPE_PROPS // // Block wrist props. // bComboValid = FALSE // IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) // AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) // bComboValid = TRUE // ENDIF // BREAK // CASE COMP_TYPE_LEGS // // Block bikini bottoms. // bComboValid = TRUE // // Dont allow with bikini bottoms, stockings, or panties. // IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) // OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) // OR iDrawTag = 15 // bComboValid = FALSE // ENDIF // SWITCH iItemNameHash // CASE HASH("DLC_MP_BEACH_F_LOWR100") // CASE HASH("DLC_MP_BEACH_F_LOWR101") // CASE HASH("DLC_MP_BEACH_F_LOWR102") // CASE HASH("DLC_MP_BEACH_F_LOWR103") // CASE HASH("DLC_MP_BEACH_F_LOWR104") // CASE HASH("DLC_MP_BEACH_F_LOWR105") // CASE HASH("DLC_MP_BEACH_F_LOWR106") // CASE HASH("DLC_MP_BEACH_F_LOWR107") // CASE HASH("DLC_MP_BEACH_F_LOWR108") // CASE HASH("DLC_MP_BEACH_F_LOWR109") // CASE HASH("DLC_MP_BEACH_F_LOWR110") // CASE HASH("DLC_MP_BEACH_F_LOWR111") // CASE HASH("DLC_MP_VAL_F_LEGS0_0") // CASE HASH("DLC_MP_VAL_F_LEGS0_1") // CASE HASH("DLC_MP_VAL_F_LEGS0_2") // CASE HASH("DLC_MP_VAL_F_LEGS0_3") // CASE HASH("DLC_MP_VAL_F_LEGS0_4") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_0") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_1") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_2") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_3") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_4") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_5") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_6") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_7") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_8") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_9") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_10") // CASE HASH("DLC_MP_VAL2_F_LEGS_0_11") // bComboValid = FALSE // BREAK // ENDSWITCH // BREAK // ENDSWITCH // BREAK // CASE COMP_TYPE_LEGS // // Pilot pants // BREAK CASE COMP_TYPE_FEET // Pilot boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE // Heist Pants IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Independece+Business+Christmas skirts OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SKIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Valentines stockings+dress OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF SWITCH iItemNameHash // Beach Bum Shorts+Bikini bottoms CASE HASH("DLC_MP_BEACH_F_LOWR0") CASE HASH("DLC_MP_BEACH_F_LOWR1") CASE HASH("DLC_MP_BEACH_F_LOWR2") CASE HASH("DLC_MP_BEACH_F_LOWR3") CASE HASH("DLC_MP_BEACH_F_LOWR4") CASE HASH("DLC_MP_BEACH_F_LOWR5") CASE HASH("DLC_MP_BEACH_F_LOWR6") CASE HASH("DLC_MP_BEACH_F_LOWR7") CASE HASH("DLC_MP_BEACH_F_LOWR8") CASE HASH("DLC_MP_BEACH_F_LOWR9") CASE HASH("DLC_MP_BEACH_F_LOWR10") CASE HASH("DLC_MP_BEACH_F_LOWR11") CASE HASH("DLC_MP_BEACH_F_LOWR100") CASE HASH("DLC_MP_BEACH_F_LOWR101") CASE HASH("DLC_MP_BEACH_F_LOWR102") CASE HASH("DLC_MP_BEACH_F_LOWR103") CASE HASH("DLC_MP_BEACH_F_LOWR104") CASE HASH("DLC_MP_BEACH_F_LOWR105") CASE HASH("DLC_MP_BEACH_F_LOWR106") CASE HASH("DLC_MP_BEACH_F_LOWR107") CASE HASH("DLC_MP_BEACH_F_LOWR108") CASE HASH("DLC_MP_BEACH_F_LOWR109") CASE HASH("DLC_MP_BEACH_F_LOWR110") CASE HASH("DLC_MP_BEACH_F_LOWR111") bComboValid = TRUE BREAK ENDSWITCH IF (eItem >= LEGS_FMF_0_0 AND eItem <= LEGS_FMF_0_15) OR (eItem >= LEGS_FMF_2_0 AND eItem <= LEGS_FMF_2_15) OR (eItem >= LEGS_FMF_4_0 AND eItem <= LEGS_FMF_4_15) OR (eItem >= LEGS_FMF_5_0 AND eItem <= LEGS_FMF_5_15) OR (eItem >= LEGS_FMF_7_0 AND eItem <= LEGS_FMF_7_15) OR (eItem >= LEGS_FMF_8_0 AND eItem <= LEGS_FMF_8_15) OR (eItem >= LEGS_FMF_9_0 AND eItem <= LEGS_FMF_9_15) OR (eItem >= LEGS_FMF_10_0 AND eItem <= LEGS_FMF_10_15) OR (eItem >= LEGS_FMF_12_0 AND eItem <= LEGS_FMF_12_15) OR (eItem >= LEGS_FMF_13_0 AND eItem <= LEGS_FMF_13_15) OR (eItem >= LEGS_FMF_14_0 AND eItem <= LEGS_FMF_14_15) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR (iDrawTag = 0) OR (iDrawTag = 2) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 7) OR (iDrawTag = 8) OR (iDrawTag = 9) OR (iDrawTag = 10) OR (iDrawTag = 12) OR (iDrawTag = 13) OR (iDrawTag = 14) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH // Heist Clothing ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCompCheckItemHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(eCompCheckType)) INT iHeistDraw = GET_HEIST_DRAW_INDEX_FROM_HEIST_GEAR(iCompCheckItemHash, ENUM_TO_INT(eCompCheckType)) SWITCH eCompCheckType CASE COMP_TYPE_JBIB SWITCH iHeistDraw CASE 0 // Long sleeve top SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default and heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) OR 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)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE // Dont allow with bikini bottoms, stockings, or panties. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 bComboValid = FALSE ENDIF SWITCH iItemNameHash CASE HASH("DLC_MP_BEACH_F_LOWR100") CASE HASH("DLC_MP_BEACH_F_LOWR101") CASE HASH("DLC_MP_BEACH_F_LOWR102") CASE HASH("DLC_MP_BEACH_F_LOWR103") CASE HASH("DLC_MP_BEACH_F_LOWR104") CASE HASH("DLC_MP_BEACH_F_LOWR105") CASE HASH("DLC_MP_BEACH_F_LOWR106") CASE HASH("DLC_MP_BEACH_F_LOWR107") CASE HASH("DLC_MP_BEACH_F_LOWR108") CASE HASH("DLC_MP_BEACH_F_LOWR109") CASE HASH("DLC_MP_BEACH_F_LOWR110") CASE HASH("DLC_MP_BEACH_F_LOWR111") CASE HASH("DLC_MP_VAL_F_LEGS0_0") CASE HASH("DLC_MP_VAL_F_LEGS0_1") CASE HASH("DLC_MP_VAL_F_LEGS0_2") CASE HASH("DLC_MP_VAL_F_LEGS0_3") CASE HASH("DLC_MP_VAL_F_LEGS0_4") CASE HASH("DLC_MP_VAL2_F_LEGS_0_0") CASE HASH("DLC_MP_VAL2_F_LEGS_0_1") CASE HASH("DLC_MP_VAL2_F_LEGS_0_2") CASE HASH("DLC_MP_VAL2_F_LEGS_0_3") CASE HASH("DLC_MP_VAL2_F_LEGS_0_4") CASE HASH("DLC_MP_VAL2_F_LEGS_0_5") CASE HASH("DLC_MP_VAL2_F_LEGS_0_6") CASE HASH("DLC_MP_VAL2_F_LEGS_0_7") CASE HASH("DLC_MP_VAL2_F_LEGS_0_8") CASE HASH("DLC_MP_VAL2_F_LEGS_0_9") CASE HASH("DLC_MP_VAL2_F_LEGS_0_10") CASE HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE 1 // Flight jacket BREAK CASE 2 // Cop shirt BREAK CASE 3 // Refuse t-shirt BREAK CASE 4 // Refuse hoody SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default and heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 5 // Tails jacket SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow shirt and vest accs // Only allow default and heist specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 6 // Long jacket - open SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow shirt and vest accs // Only allow default and heist specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 7 // Long jacket - closed SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow shirt and vest accs // Only allow default and heist specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") // Block tracksuit pants OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 8 // Zipper jacket SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 9 // Leather jacket - zip SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 10 // Army style shirt SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) //119 OR (iDrawTag = 14) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMM_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 11 // Jacket - open SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow shirt and vest accs // Only allow default and heist specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 12 // Jacket - closed SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow shirt and vest accs // Only allow default and heist specials bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR100") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR101") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR102") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR103") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR104") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR105") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR106") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR107") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR108") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR109") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR110") OR iItemNameHash = HASH("DLC_MP_BEACH_F_LOWR111") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_0") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_1") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_2") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_3") OR iItemNameHash = HASH("DLC_MP_VAL_F_LEGS0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_0") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_1") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_2") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_3") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_4") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_5") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_6") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_7") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_8") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_9") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_10") OR iItemNameHash = HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 13 // Boiler suit 1 CASE 14 // Boiler suit 2 SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) //119 OR (iDrawTag = 14) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 15 // Chem suit SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hood down OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hood up OR (eItem = SPECIAL_FMF_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Only allow dummy berd or hazmat mask // bComboValid = FALSE // IF (eItem = BERD_FMF_0_0) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE // ENDIF BREAK ENDSWITCH BREAK CASE 16 // Dickies jacket with hood up SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default and heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMF_2_0 AND eItem <= SPECIAL_FMF_2_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Only allow the ski/gas/haz masks bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GAS_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eItem = BERD_FMF_0_0) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 17 // Dickies jacket with hood down SWITCH eType CASE COMP_TYPE_SPECIAL // Only allow default and heist specials bComboValid = FALSE IF (eItem >= SPECIAL_FMF_2_0 AND eItem <= SPECIAL_FMF_2_0) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Allow everything since we can now wear helmets with masks. bComboValid = TRUE BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_SPECIAL SWITCH iHeistDraw CASE 0 // Black vest big collar CASE 1 // Gray vest big collar SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15) OR (eItem >= JBIB_FMF_4_0 AND eItem <= JBIB_FMF_4_15) OR (eItem >= JBIB_FMF_5_0 AND eItem <= JBIB_FMF_5_15) OR (eItem >= JBIB_FMF_11_0 AND eItem <= JBIB_FMF_11_15) OR (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMF_12_15) OR (eItem >= JBIB_FMF_13_0 AND eItem <= JBIB_FMF_13_15) OR (eItem >= JBIB_FMF_15_0 AND eItem <= JBIB_FMF_15_15) OR (iDrawTag = 0) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 11) OR (iDrawTag = 12) OR (iDrawTag = 13) OR (iDrawTag = 15) OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_0") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_1") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_2") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_3") OR iItemNameHash = HASH("DLC_MP_LTS_F_JBIB_1_4") OR 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_APART_DRAW_7, 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)) bComboValid = TRUE ENDIF // Block new torn tees that use draw 5 IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_BERD // Block paperbag masks and animal masks SWITCH iItemNameHash 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") CASE HASH("DLC_MP_IND_F_BERD_0_0") CASE HASH("DLC_MP_IND_F_BERD_0_1") CASE HASH("DLC_MP_IND_F_BERD_1_0") CASE HASH("DLC_MP_IND_F_BERD_1_1") CASE HASH("DLC_MP_IND_F_BERD_2_0") CASE HASH("DLC_MP_IND_F_BERD_2_1") CASE HASH("DLC_MP_IND_F_BERD_3_0") CASE HASH("DLC_MP_IND_F_BERD_3_1") CASE HASH("DLC_MP_IND_F_BERD_4_0") CASE HASH("DLC_MP_IND_F_BERD_4_1") CASE HASH("DLC_MP_IND_F_BERD_5_0") CASE HASH("DLC_MP_IND_F_BERD_5_1") bComboValid = FALSE BREAK ENDSWITCH IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEADSCARF, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy and earrings bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) // Sweatbands OR (eItem >= TEETH_FMF_3_0 AND eItem <= TEETH_FMF_3_5) OR iDrawTag = 3 // Bangles OR (eItem >= TEETH_FMF_4_0 AND eItem <= TEETH_FMF_4_5) OR iDrawTag = 4 // Leather straps OR (eItem >= TEETH_FMF_5_0 AND eItem <= TEETH_FMF_5_5) OR iDrawTag = 5 bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block pyjamas bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Block high-Waist Lowrider2 trousers OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT)) //Xmas2016 OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DUNGAREES, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK ENDSWITCH BREAK CASE 2 // ? BREAK CASE 3 // Cop accs BREAK CASE 4 // Refuse BREAK CASE 5 // Shirt BREAK CASE 6 // Shirt CASE 7 // Shirt CASE 8 // Vest CASE 9 // Vest SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iHeistDraw = 6 OR iHeistDraw = 7)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iHeistDraw = 6 OR iHeistDraw = 7)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iHeistDraw = 6 OR iHeistDraw = 7)) OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) AND (iHeistDraw = 6 OR iHeistDraw = 7)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR (eItem >= JBIB_FMF_7_0 AND eItem <= JBIB_FMF_7_15) OR iDrawTag = 7 bComboValid = TRUE ENDIF 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_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMUG_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy and earrings bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS // Block bikini bottoms. bComboValid = TRUE // Dont allow with bikini bottoms, stockings, or panties. IF (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR iDrawTag = 15 bComboValid = FALSE ENDIF SWITCH iItemNameHash CASE HASH("DLC_MP_BEACH_F_LOWR100") CASE HASH("DLC_MP_BEACH_F_LOWR101") CASE HASH("DLC_MP_BEACH_F_LOWR102") CASE HASH("DLC_MP_BEACH_F_LOWR103") CASE HASH("DLC_MP_BEACH_F_LOWR104") CASE HASH("DLC_MP_BEACH_F_LOWR105") CASE HASH("DLC_MP_BEACH_F_LOWR106") CASE HASH("DLC_MP_BEACH_F_LOWR107") CASE HASH("DLC_MP_BEACH_F_LOWR108") CASE HASH("DLC_MP_BEACH_F_LOWR109") CASE HASH("DLC_MP_BEACH_F_LOWR110") CASE HASH("DLC_MP_BEACH_F_LOWR111") CASE HASH("DLC_MP_VAL_F_LEGS0_0") CASE HASH("DLC_MP_VAL_F_LEGS0_1") CASE HASH("DLC_MP_VAL_F_LEGS0_2") CASE HASH("DLC_MP_VAL_F_LEGS0_3") CASE HASH("DLC_MP_VAL_F_LEGS0_4") CASE HASH("DLC_MP_VAL2_F_LEGS_0_0") CASE HASH("DLC_MP_VAL2_F_LEGS_0_1") CASE HASH("DLC_MP_VAL2_F_LEGS_0_2") CASE HASH("DLC_MP_VAL2_F_LEGS_0_3") CASE HASH("DLC_MP_VAL2_F_LEGS_0_4") CASE HASH("DLC_MP_VAL2_F_LEGS_0_5") CASE HASH("DLC_MP_VAL2_F_LEGS_0_6") CASE HASH("DLC_MP_VAL2_F_LEGS_0_7") CASE HASH("DLC_MP_VAL2_F_LEGS_0_8") CASE HASH("DLC_MP_VAL2_F_LEGS_0_9") CASE HASH("DLC_MP_VAL2_F_LEGS_0_10") CASE HASH("DLC_MP_VAL2_F_LEGS_0_11") bComboValid = FALSE BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE 10 // Hoody down / Chem suit CASE 11 // Hoody up SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_LEGS bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // bComboValid = FALSE // // Only allow gas mask // SWITCH iItemNameHash // CASE HASH("DLC_MP_HEIST_F_BERD_11_0") bComboValid = TRUE // BREAK // ENDSWITCH BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 12 // T-shirt accs. SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK CASE COMP_TYPE_LEGS SWITCH iHeistDraw CASE 0 // Joggers, shin high SWITCH eType CASE COMP_TYPE_JBIB // This works with all JBIBs except the dresses and tailcoats bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF (eItem >= FEET_FMF_7_0 AND eItem <= FEET_FMF_7_15)//112 OR (iDrawTag = 7) OR 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 1 // Baggies with knee pads SWITCH eType CASE COMP_TYPE_JBIB // This works with all JBIBs except the dresses and tailcoats bComboValid = TRUE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF BREAK CASE COMP_TYPE_SPECIAL BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 2 // Cop pants BREAK CASE 3 // Refuse BREAK CASE 4 // Skirt - uses draw_7 checks BREAK CASE 5 // Suit pants - uses draw_6 checks BREAK CASE 6 // Boiler suit 1 CASE 7 // Boiler suit 2 SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF (eItem >= SPECIAL_FMF_14_0 AND eItem <= SPECIAL_FMF_14_0) //119 OR (iDrawTag = 14) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK ENDSWITCH BREAK CASE 8 // Chem suit SWITCH eType CASE COMP_TYPE_JBIB bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL // Only allow default special bComboValid = FALSE IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hood down OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Hood up OR (eItem = SPECIAL_FMF_0_0) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_FEET bComboValid = FALSE IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH // Only allow the dummy bComboValid = FALSE IF (eItem = TEETH_FMF_0_0) OR (IS_ITEM_EARRINGS(ePedModel, eType, eItem)) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_PROPS // Block wrist props. bComboValid = FALSE IF (sItemData.ePropPos != ANCHOR_LEFT_WRIST OR eItem = PROPS_LWRIST_NONE) AND (sItemData.ePropPos != ANCHOR_RIGHT_WRIST OR eItem = PROPS_RWRIST_NONE) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_BERD // Only allow dummy berd or hazmat mask // bComboValid = FALSE // IF (eItem = BERD_FMF_0_0) // OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE // ENDIF BREAK ENDSWITCH BREAK CASE 9 // Suit pants - uses draw_3 checks BREAK ENDSWITCH BREAK CASE COMP_TYPE_FEET SWITCH iHeistDraw CASE 0 // Hazmat Boots CASE 1 // Dirty boots SWITCH eType CASE COMP_TYPE_LEGS bComboValid = FALSE // Heist Pants IF 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)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Pilot Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // LTS Pants OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Independece+Business+Christmas skirts OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SKIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Valentines stockings+dress OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) // Apartment/Executives OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = TRUE ENDIF SWITCH iItemNameHash // Beach Bum Shorts+Bikini bottoms CASE HASH("DLC_MP_BEACH_F_LOWR0") CASE HASH("DLC_MP_BEACH_F_LOWR1") CASE HASH("DLC_MP_BEACH_F_LOWR2") CASE HASH("DLC_MP_BEACH_F_LOWR3") CASE HASH("DLC_MP_BEACH_F_LOWR4") CASE HASH("DLC_MP_BEACH_F_LOWR5") CASE HASH("DLC_MP_BEACH_F_LOWR6") CASE HASH("DLC_MP_BEACH_F_LOWR7") CASE HASH("DLC_MP_BEACH_F_LOWR8") CASE HASH("DLC_MP_BEACH_F_LOWR9") CASE HASH("DLC_MP_BEACH_F_LOWR10") CASE HASH("DLC_MP_BEACH_F_LOWR11") CASE HASH("DLC_MP_BEACH_F_LOWR100") CASE HASH("DLC_MP_BEACH_F_LOWR101") CASE HASH("DLC_MP_BEACH_F_LOWR102") CASE HASH("DLC_MP_BEACH_F_LOWR103") CASE HASH("DLC_MP_BEACH_F_LOWR104") CASE HASH("DLC_MP_BEACH_F_LOWR105") CASE HASH("DLC_MP_BEACH_F_LOWR106") CASE HASH("DLC_MP_BEACH_F_LOWR107") CASE HASH("DLC_MP_BEACH_F_LOWR108") CASE HASH("DLC_MP_BEACH_F_LOWR109") CASE HASH("DLC_MP_BEACH_F_LOWR110") CASE HASH("DLC_MP_BEACH_F_LOWR111") bComboValid = TRUE BREAK ENDSWITCH IF (eItem >= LEGS_FMF_0_0 AND eItem <= LEGS_FMF_0_15) OR (eItem >= LEGS_FMF_2_0 AND eItem <= LEGS_FMF_2_15) OR (eItem >= LEGS_FMF_4_0 AND eItem <= LEGS_FMF_4_15) OR (eItem >= LEGS_FMF_5_0 AND eItem <= LEGS_FMF_5_15) OR (eItem >= LEGS_FMF_7_0 AND eItem <= LEGS_FMF_7_15) OR (eItem >= LEGS_FMF_8_0 AND eItem <= LEGS_FMF_8_15) OR (eItem >= LEGS_FMF_9_0 AND eItem <= LEGS_FMF_9_15) OR (eItem >= LEGS_FMF_10_0 AND eItem <= LEGS_FMF_10_15) OR (eItem >= LEGS_FMF_12_0 AND eItem <= LEGS_FMF_12_15) OR (eItem >= LEGS_FMF_14_0 AND eItem <= LEGS_FMF_14_15) OR (eItem >= LEGS_FMF_15_0 AND eItem <= LEGS_FMF_15_15) OR (iDrawTag = 0 AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))) OR (iDrawTag = 2) OR (iDrawTag = 4) OR (iDrawTag = 5) OR (iDrawTag = 7) OR (iDrawTag = 8) OR (iDrawTag = 9) OR (iDrawTag = 10) OR (iDrawTag = 12) OR (iDrawTag = 14) OR (iDrawTag = 15) bComboValid = TRUE ENDIF BREAK CASE COMP_TYPE_JBIB // Only need to block for JBIBs that force incomptible legs bComboValid = TRUE IF iHeistDraw = 1 // Dirty boots IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) //OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT)) bComboValid = FALSE ENDIF ENDIF BREAK ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH ENDIF ENDIF RETURN bComboValid ENDFUNC /// PURPOSE: Returns TRUE if the ped component item can be worn with the specified outfit /// NOTE: eMainItem is the item we are trying to equip FUNC BOOL CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eMixType, PED_COMP_NAME_ENUM eMixItem, PED_COMP_TYPE_ENUM eMainType, PED_COMP_NAME_ENUM eMainItem, PED_INDEX mPed = NULL) // // CALLS TO THIS FUNCTION MUST STEM FROM -----FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP()----- // //CPRINTLN(DEBUG_PED_COMP, "CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP: eMixType= ", GET_PED_COMP_TYPE_STRING(eMixType), " eMixItem= ", eMixItem, " eMainType= ", GET_PED_COMP_TYPE_STRING(eMainType), " eMainItem= ", eMainItem) // Same type IF eMixType = eMainType AND eMixType != COMP_TYPE_PROPS AND eMixType != COMP_TYPE_PROPGROUP CPRINTLN(DEBUG_PED_COMP, "CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP() - FALSE: Same type") RETURN FALSE ENDIF // Dummy item IF eMixItem = DUMMY_PED_COMP OR eMainItem = DUMMY_PED_COMP RETURN TRUE ENDIF // Same item IF eMixType = eMainType AND eMixItem = eMainItem RETURN TRUE ENDIF // Grab the data for the item we are comparing against the item we are setting on the player PED_COMP_ITEM_DATA_STRUCT sMixItemData = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eMixType, eMixItem) // TODO : SP/MP SPLIT INT iMixNameHash = -1 IF IS_BIT_SET(sMixItemData.iProperties, PED_COMPONENT_IS_DLC_BIT) iMixNameHash = g_iLastDLCItemNameHash ELIF IS_BIT_SET(sMixItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) // This means the item was moved to DLC so return false. CPRINTLN(DEBUG_PED_COMP, "sMixItemData.iProperties outfit only.") RETURN FALSE ENDIF // Grab the data for the item we are setting on the player BOOL bCanMix = TRUE PED_COMP_ITEM_DATA_STRUCT sMainItemData = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eMainType, eMainItem) // TODO : SP/MP SPLIT INT iMainNameHash = -1 IF IS_BIT_SET(sMainItemData.iProperties, PED_COMPONENT_IS_DLC_BIT) iMainNameHash = g_iLastDLCItemNameHash ELIF IS_BIT_SET(sMainItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) // This means the item was moved to DLC so return false. CPRINTLN(DEBUG_PED_COMP, "sMainItemData.iProperties outfit only.") RETURN FALSE ENDIF ////////////////////////////////////////////////////////// /// NEW RESTRICTION CHECKS FOR HEIST ITEMS AND BEYOND! /// BOOL bUseNewRestrictionChecks = FALSE IF (iMainNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMainNameHash, DLC_RESTRICTION_TAG_OUTFIT_CHECKS, ENUM_TO_INT(eMainType))) bUseNewRestrictionChecks = TRUE IF NOT DO_DLC_COMP_CHECK(ePedModel, eMainItem, eMainType, iMainNameHash, sMainItemData, eMixItem, eMixType, iMixNameHash, sMixItemData) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP : Not compatible [1], sMainItemData.sLabel=", sMainItemData.sLabel, ", eMainType=", GET_PED_COMP_NAME_STRING(eMainType), ", iMainNameHash=", iMainNameHash, ", sMixItemData.sLabel=", sMixItemData.sLabel, ", eMixType=", GET_PED_COMP_NAME_STRING(eMixType), ", iMixNameHash=", iMixNameHash) RETURN FALSE ENDIF ENDIF IF (iMixNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_OUTFIT_CHECKS, ENUM_TO_INT(eMixType))) bUseNewRestrictionChecks = TRUE IF NOT DO_DLC_COMP_CHECK(ePedModel, eMixItem, eMixType, iMixNameHash, sMixItemData, eMainItem, eMainType, iMainNameHash, sMainItemData) CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP : Not compatible [2], sMainItemData.sLabel=", sMainItemData.sLabel, ", eMainType=", GET_PED_COMP_NAME_STRING(eMainType), ", iMainNameHash=", iMainNameHash, ", sMixItemData.sLabel=", sMixItemData.sLabel, ", eMixType=", GET_PED_COMP_NAME_STRING(eMixType), ", iMixNameHash=", iMixNameHash) RETURN FALSE ENDIF ENDIF IF bUseNewRestrictionChecks //RETURN TRUE /* continue with normal checks for now - if we hit per frame instruction limit we will need to bail here */ ENDIF ////////////////////////////////////////////////////////// /// OUTFIT CHECKS - WE ONLY SET UP FOR FLIGHT SUIT /// IF IS_BIT_SET(sMixItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) OR IS_BIT_SET(sMainItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT) // Check if DLC items are part of the same outfit IF (iMainNameHash != -1 AND iMixNameHash != -1) IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMainNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(eMainType)) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(eMixType)) CPRINTLN(DEBUG_PED_COMP, "Both items are part of the PILOT_SUIT outfit, allow!") RETURN TRUE ENDIF ENDIF // Check if items can mix with DLC outfit items bCanMix = FALSE IF (iMainNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMainNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(eMainType))) // We only need to check the boots when dealing with lowers. IF (eMainType = COMP_TYPE_FEET) IF (eMixType = COMP_TYPE_LEGS) IF (iMixNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(eMixType))) OR (iMixNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(eMixType))) bCanMix = TRUE ENDIF ELSE bCanMix = TRUE ENDIF ENDIF SWITCH eMixType CASE COMP_TYPE_PROPS IF sMixItemData.ePropPos = ANCHOR_HEAD OR sMixItemData.ePropPos = ANCHOR_EYES OR (sMixItemData.ePropPos = ANCHOR_EARS AND ePedModel = MP_M_FREEMODE_01) // Allow all other props for now... bCanMix = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH IF ENUM_TO_INT(eMixItem) = 0 // Allow the dummy teeth bCanMix = TRUE ENDIF /* IF (eMainType = COMP_TYPE_LEGS) // Allow scarves with pilot lowers bCanMix = TRUE ENDIF */ BREAK CASE COMP_TYPE_BERD IF (eMainType = COMP_TYPE_PROPS AND sMainItemData.ePropPos = ANCHOR_HEAD) // Don't allow masks to work with the flight helmet ELSE // Allow masks to work with all the other items bCanMix = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL IF (ePedModel = MP_M_FREEMODE_01 AND ENUM_TO_INT(eMixItem) = 240) OR (ePedModel = MP_F_FREEMODE_01 AND ENUM_TO_INT(eMixItem) = 32) bCanMix = TRUE ENDIF BREAK CASE COMP_TYPE_HEAD CASE COMP_TYPE_HAIR CASE COMP_TYPE_HAND CASE COMP_TYPE_SPECIAL2 CASE COMP_TYPE_DECL CASE COMP_TYPE_PROPGROUP CASE COMP_TYPE_TORSO bCanMix = TRUE BREAK ENDSWITCH ENDIF IF (iMixNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(eMixType))) // We only need to check the boots when dealing with lowers. IF (eMixType = COMP_TYPE_FEET) IF (eMainType = COMP_TYPE_LEGS) IF (iMainNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(eMainType))) OR (iMainNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iMixNameHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(eMainType))) bCanMix = TRUE ENDIF ELSE bCanMix = TRUE ENDIF ENDIF SWITCH eMainType CASE COMP_TYPE_PROPS IF sMainItemData.ePropPos = ANCHOR_HEAD OR sMainItemData.ePropPos = ANCHOR_EYES OR (sMainItemData.ePropPos = ANCHOR_EARS AND ePedModel = MP_M_FREEMODE_01) // Allow all other props for now... bCanMix = TRUE ENDIF BREAK CASE COMP_TYPE_TEETH IF ENUM_TO_INT(eMainItem) = 0 // Allow the dummy teeth bCanMix = TRUE ENDIF /* IF (eMixType = COMP_TYPE_LEGS) // Allow scarves with pilot lowers bCanMix = TRUE ENDIF */ BREAK CASE COMP_TYPE_BERD IF (eMixType = COMP_TYPE_PROPS AND sMixItemData.ePropPos = ANCHOR_HEAD) // Don't allow masks to work with the flight helmet ELSE // Allow masks to work with all the other items bCanMix = TRUE ENDIF BREAK CASE COMP_TYPE_SPECIAL IF (ePedModel = MP_M_FREEMODE_01 AND ENUM_TO_INT(eMainItem) = 240) OR (ePedModel = MP_F_FREEMODE_01 AND ENUM_TO_INT(eMainItem) = 32) bCanMix = TRUE ENDIF BREAK CASE COMP_TYPE_HEAD CASE COMP_TYPE_HAIR CASE COMP_TYPE_HAND CASE COMP_TYPE_SPECIAL2 CASE COMP_TYPE_DECL CASE COMP_TYPE_PROPGROUP CASE COMP_TYPE_TORSO bCanMix = TRUE BREAK ENDSWITCH ENDIF // One is an outfit item and cannot be mixed IF NOT bCanMix CPRINTLN(DEBUG_PED_COMP, "Can't mix outfit only items. main_type=", GET_PED_COMP_NAME_STRING(eMainType), " (outfit_only=", IS_BIT_SET(sMainItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT), "), mix_type=", GET_PED_COMP_NAME_STRING(eMixType), " (outfit_only=", IS_BIT_SET(sMixItemData.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT), ")") RETURN FALSE ENDIF ENDIF // We have specified that combo should not work IF IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP(ePedModel, eMixType, eMixItem, iMixNameHash, eMainType, eMainItem, iMainNameHash, mPed) CPRINTLN(DEBUG_PED_COMP, "IS_PED_COMPONENT_ITEM_RESTRICTED_FOR_ITEM_MP.") RETURN FALSE ENDIF // No issues found RETURN TRUE ENDFUNC /// PURPOSE: Returns the first DLC hash for the gloves type /// iGloveType: 0=Driving, 1=Leather, 2=Wool, 3=Fingerless, 4=Garbage, 5=White, 6=Surgical CONST_INT NUMBER_OF_GLOVE_TYPES 18 FUNC INT GET_DLC_GLOVE_HASH_FOR_UPPR(MODEL_NAMES ePedModel, INT iCurrentUpprEnum, INT iGloveType) SWITCH ePedModel CASE MP_F_FREEMODE_01 SWITCH iCurrentUpprEnum CASE 0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_0_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_13_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_26_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_39_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_52_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_65_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_78_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_2_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_18_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_2_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 1 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_1_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_14_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_27_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_40_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_53_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_66_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_79_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_3_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_19_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_3_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 2 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_2_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_15_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_28_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_41_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_54_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_67_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_80_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_4_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_20_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_4_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 3 SWITCH iGloveType CASE 0 RETURN HASH("DLC_MP_LTS_F_UPPR_0_0") BREAK // LTS Tactical CASE 1 RETURN HASH("DLC_MP_LTS_F_UPPR_1_0") BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_3_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_16_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_29_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_42_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_55_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_68_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_81_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_5_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_21_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_5_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 4 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_4_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_17_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_30_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_43_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_56_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_69_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_82_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_6_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_22_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_6_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 5 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_5_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_18_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_31_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_44_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_57_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_70_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_83_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_7_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_23_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_7_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 6 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_6_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_19_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_32_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_45_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_58_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_71_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_84_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_8_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_24_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_8_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 7 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_7_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_20_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_33_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_46_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_59_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_72_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_85_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_9_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_25_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_9_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 8 BREAK CASE 9 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_8_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_21_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_34_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_47_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_60_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_73_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_86_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_10_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_26_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_10_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 10 BREAK CASE 11 CASE 16 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_9_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_22_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_35_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_48_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_61_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_74_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_87_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_VAL_F_UPPR0_0") BREAK //Purple Flapper CASE 10 RETURN HASH("DLC_MP_VAL_F_UPPR0_1") BREAK //Black Flapper CASE 11 RETURN HASH("DLC_MP_VAL_F_UPPR0_2") BREAK //Gray & White Flapper CASE 12 RETURN HASH("DLC_MP_VAL_F_UPPR0_3") BREAK //Lilac Flapper CASE 13 RETURN HASH("DLC_MP_VAL_F_UPPR0_4") BREAK //Black & Gold Flapper CASE 14 RETURN HASH("DLC_MP_VAL_F_UPPR0_5") BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_11_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_27_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_11_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 12 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_10_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_23_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_36_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_49_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_62_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_75_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_88_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_12_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_28_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_12_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 13 BREAK CASE 14 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_11_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_24_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_37_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_50_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_63_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_76_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_89_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_13_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_29_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_13_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 15 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_F_TORSO_12_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_F_TORSO_25_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_F_TORSO_38_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_F_TORSO_51_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_F_TORSO_64_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_F_TORSO_77_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_F_TORSO_90_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_0_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_1_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_1_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 352 // DLC_MP_BIKER_F_TORSO_0_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_BIKER_F_TORSO_3_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_BIKER_F_TORSO_4_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_BIKER_F_TORSO_5_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_BIKER_F_TORSO_6_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_BIKER_F_TORSO_7_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_BIKER_F_TORSO_8_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_BIKER_F_TORSO_9_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_14_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_30_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_14_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 353 // DLC_MP_BIKER_F_TORSO_1_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_BIKER_F_TORSO_10_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_BIKER_F_TORSO_11_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_BIKER_F_TORSO_12_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_BIKER_F_TORSO_13_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_BIKER_F_TORSO_14_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_BIKER_F_TORSO_15_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_BIKER_F_TORSO_16_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_15_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_31_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_15_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 354 // DLC_MP_BIKER_F_TORSO_2_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_BIKER_F_TORSO_17_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_BIKER_F_TORSO_18_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_BIKER_F_TORSO_19_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_BIKER_F_TORSO_20_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_BIKER_F_TORSO_21_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_BIKER_F_TORSO_22_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_BIKER_F_TORSO_23_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_16_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_32_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_16_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 391 // DLC_MP_IE_F_TORSO_0_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_IE_F_TORSO_1_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_IE_F_TORSO_2_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_IE_F_TORSO_3_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_IE_F_TORSO_4_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_IE_F_TORSO_5_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_IE_F_TORSO_6_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_IE_F_TORSO_7_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_17_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_33_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_17_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 404 // DLC_MP_IE_F_TORSO_8_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_IE_F_TORSO_9_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_IE_F_TORSO_10_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_IE_F_TORSO_11_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_IE_F_TORSO_12_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_IE_F_TORSO_13_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_IE_F_TORSO_14_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_IE_F_TORSO_15_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_GR_F_TORSO_34_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_GR_F_TORSO_35_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_SUM_F_TORSO_18_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 1326 // DLC_MP_H4_F_TORSO_0_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_H4_F_TORSO_1_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_H4_F_TORSO_2_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_H4_F_TORSO_3_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_H4_F_TORSO_4_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_H4_F_TORSO_5_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_H4_F_TORSO_6_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_H4_F_TORSO_7_0") BREAK //Surgical CASE 9 BREAK //Purple Flapper CASE 10 BREAK //Black Flapper CASE 11 BREAK //Gray & White Flapper CASE 12 BREAK //Lilac Flapper CASE 13 BREAK //Black & Gold Flapper CASE 14 BREAK //Red Flapper CASE 15 RETURN HASH("DLC_MP_H4_F_TORSO_8_0") BREAK // GR Armoured CASE 16 RETURN HASH("DLC_MP_H4_F_TORSO_9_0") BREAK // GR Tactical CASE 17 RETURN HASH("DLC_MP_H4_F_TORSO_10_0") BREAK // Summer Tactical ENDSWITCH BREAK ENDSWITCH BREAK CASE MP_M_FREEMODE_01 SWITCH iCurrentUpprEnum CASE 0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_0_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_11_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_22_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_33_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_44_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_55_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_66_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_2_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_15_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_2_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 1 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_1_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_12_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_23_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_34_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_45_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_56_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_67_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_3_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_16_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_3_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 2 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_2_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_13_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_24_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_35_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_46_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_57_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_68_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_4_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_17_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_4_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 3 BREAK CASE 4 SWITCH iGloveType CASE 0 RETURN HASH("DLC_MP_LTS_M_UPPR_0_0") BREAK // LTS Tactical CASE 1 RETURN HASH("DLC_MP_LTS_M_UPPR_1_0") BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_3_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_14_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_25_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_36_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_47_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_58_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_69_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_5_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_18_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_5_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 5 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_4_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_15_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_26_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_37_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_48_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_59_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_70_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_6_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_19_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_6_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 6 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_5_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_16_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_27_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_38_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_49_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_60_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_71_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_7_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_20_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_7_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 7 BREAK CASE 8 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_6_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_17_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_28_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_39_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_50_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_61_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_72_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_8_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_21_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_8_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 9 BREAK CASE 10 BREAK CASE 11 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_7_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_18_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_29_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_40_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_51_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_62_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_73_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_9_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_22_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_9_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 12 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_8_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_19_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_30_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_41_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_52_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_63_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_74_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_10_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_23_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_10_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 13 BREAK CASE 14 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_9_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_20_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_31_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_42_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_53_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_64_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_75_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_11_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_24_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_11_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 15 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_HEIST_M_TORSO_10_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_HEIST_M_TORSO_21_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_HEIST_M_TORSO_32_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_HEIST_M_TORSO_43_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_HEIST_M_TORSO_54_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_HEIST_M_TORSO_65_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_HEIST_M_TORSO_76_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_0_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_1_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_1_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 302 // DLC_MP_BIKER_M_TORSO_0_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_BIKER_M_TORSO_3_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_BIKER_M_TORSO_4_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_BIKER_M_TORSO_5_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_BIKER_M_TORSO_6_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_BIKER_M_TORSO_7_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_BIKER_M_TORSO_8_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_BIKER_M_TORSO_9_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_12_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_25_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_12_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 303 // DLC_MP_BIKER_M_TORSO_1_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_BIKER_M_TORSO_10_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_BIKER_M_TORSO_11_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_BIKER_M_TORSO_12_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_BIKER_M_TORSO_13_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_BIKER_M_TORSO_14_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_BIKER_M_TORSO_15_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_BIKER_M_TORSO_16_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_13_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_26_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_13_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 304 // DLC_MP_BIKER_M_TORSO_2_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_BIKER_M_TORSO_17_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_BIKER_M_TORSO_18_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_BIKER_M_TORSO_19_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_BIKER_M_TORSO_20_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_BIKER_M_TORSO_21_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_BIKER_M_TORSO_22_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_BIKER_M_TORSO_23_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_GR_M_TORSO_14_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_GR_M_TORSO_14_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_SUM_M_TORSO_14_0") BREAK // Summer Tactical ENDSWITCH BREAK CASE 1058 // DLC_MP_H4_M_TORSO_0_0 SWITCH iGloveType CASE 0 BREAK // LTS Tactical CASE 1 BREAK // LTS Woolen CASE 2 RETURN HASH("DLC_MP_H4_M_TORSO_1_0") BREAK //Driving CASE 3 RETURN HASH("DLC_MP_H4_M_TORSO_2_0") BREAK //Leather CASE 4 RETURN HASH("DLC_MP_H4_M_TORSO_3_0") BREAK //Wool CASE 5 RETURN HASH("DLC_MP_H4_M_TORSO_4_0") BREAK //Fingerless CASE 6 RETURN HASH("DLC_MP_H4_M_TORSO_5_0") BREAK //Garbage CASE 7 RETURN HASH("DLC_MP_H4_M_TORSO_6_0") BREAK //White CASE 8 RETURN HASH("DLC_MP_H4_M_TORSO_7_0") BREAK //Surgical CASE 9 RETURN HASH("DLC_MP_H4_M_TORSO_8_0") BREAK // GR Armoured CASE 10 RETURN HASH("DLC_MP_H4_M_TORSO_9_0") BREAK // GR Tactical CASE 11 RETURN HASH("DLC_MP_H4_M_TORSO_10_0") BREAK // Summer Tactical ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH RETURN -1 ENDFUNC FUNC PED_COMP_NAME_ENUM GET_MALE_HAIR_unoptimised(PED_COMP_NAME_ENUM eHairItem) IF eHairItem = HAIR_FMM_0_0 RETURN HAIR_FMM_0_0 ELIF eHairItem = HAIR_FMM_1_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_0_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_2_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_1_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_3_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_2_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_4_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_3_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_5_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_4_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_6_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_5_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_7_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_6_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_8_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_7_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_9_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_8_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_10_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_9_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_11_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_10_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_12_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_11_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_13_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_12_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_14_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_13_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = HAIR_FMM_15_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_14_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BEACH_M_HAIR00"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_15_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BEACH_M_HAIR05"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_16_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BUSI_M_HAIR0_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_17_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BUSI_M_HAIR1_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_18_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_HIPS_M_HAIR0_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_19_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_HIPS_M_HAIR1_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_20_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_IND_M_HAIR0_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_21_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW_M_HAIR0_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_22_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW_M_HAIR1_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_23_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW_M_HAIR2_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_24_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW_M_HAIR3_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_25_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW2_M_HAIR0_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_26_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW2_M_HAIR1_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_27_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_LOW2_M_HAIR2_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_28_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BIKER_M_HAIR_0_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_29_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BIKER_M_HAIR_1_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_30_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BIKER_M_HAIR_2_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_31_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BIKER_M_HAIR_3_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_32_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BIKER_M_HAIR_4_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_33_0"), COMP_TYPE_HAIR, 3) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_BIKER_M_HAIR_5_0"), COMP_TYPE_HAIR, 3) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_34_0"), COMP_TYPE_HAIR, 3) ENDIF RETURN eHairItem ENDFUNC FUNC PED_COMP_NAME_ENUM GET_FEMALE_HAIR_unoptimised(PED_COMP_NAME_ENUM eHairItem) IF eHairItem = HAIR_FMF_0_0 RETURN HAIR_FMF_0_0 ELIF eHairItem = HAIR_FMF_1_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_0_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_2_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_1_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_3_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_2_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_4_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_3_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_5_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_4_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_6_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_5_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_7_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_6_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_8_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_7_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_9_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_8_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_10_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_9_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_11_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_10_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_12_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_11_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_13_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_12_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_14_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_13_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = HAIR_FMF_15_0 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_14_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BEACH_F_HAIR00"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_15_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BEACH_F_HAIR05"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_16_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BUSI_F_HAIR0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_18_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BUSI_F_HAIR1_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_19_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_VAL_F_HAIR0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_17_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_HIPS_F_HAIR0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_20_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_HIPS_F_HAIR1_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_21_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_IND_F_HAIR0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_22_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW_F_HAIR0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_23_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW_F_HAIR1_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_24_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW_F_HAIR2_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_25_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW_F_HAIR3_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_26_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW2_F_HAIR0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_27_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW2_F_HAIR1_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_28_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_LOW2_F_HAIR2_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_29_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_0_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_30_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_1_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_31_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_2_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_32_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_3_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_33_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_4_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_34_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_5_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_35_0"), COMP_TYPE_HAIR, 4) ELIF eHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_BIKER_F_HAIR_6_0"), COMP_TYPE_HAIR, 4) RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_36_0"), COMP_TYPE_HAIR, 4) ENDIF RETURN eHairItem ENDFUNC FUNC PED_COMP_NAME_ENUM GET_MALE_HAIR(PED_COMP_NAME_ENUM eHairItem) IF g_bUnoptimiseValidatePlayersHairStats RETURN GET_MALE_HAIR_unoptimised(eHairItem) ENDIF SWITCH ENUM_TO_INT(eHairItem) CASE 0 RETURN HAIR_FMF_0_0 BREAK CASE 1 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 140) BREAK CASE 7 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 141) BREAK CASE 13 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 142) BREAK CASE 19 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 143) BREAK CASE 26 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 144) BREAK CASE 32 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 145) BREAK CASE 38 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 146) BREAK CASE 45 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 147) BREAK CASE 50 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 148) BREAK CASE 57 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 149) BREAK CASE 63 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 150) BREAK CASE 69 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 151) BREAK CASE 74 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 152) BREAK CASE 80 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 153) BREAK CASE 85 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 154) BREAK CASE 91 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 155) BREAK CASE 96 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 156) BREAK CASE 101 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 157) BREAK CASE 106 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 158) BREAK CASE 111 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 159) BREAK CASE 116 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 160) BREAK CASE 121 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 161) BREAK CASE 126 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 126) BREAK CASE 127 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 162) BREAK CASE 128 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 163) BREAK CASE 129 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 164) BREAK CASE 130 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 165) BREAK CASE 131 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 166) BREAK CASE 132 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 167) BREAK CASE 133 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 168) BREAK CASE 134 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 169) BREAK CASE 135 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 170) BREAK CASE 136 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 171) BREAK CASE 137 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 172) BREAK CASE 138 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 173) BREAK CASE 139 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 174) BREAK ENDSWITCH RETURN eHairItem ENDFUNC FUNC PED_COMP_NAME_ENUM GET_FEMALE_HAIR(PED_COMP_NAME_ENUM eHairItem) IF g_bUnoptimiseValidatePlayersHairStats RETURN GET_FEMALE_HAIR_unoptimised(eHairItem) ENDIF SWITCH ENUM_TO_INT(eHairItem) CASE 0 RETURN HAIR_FMF_0_0 BREAK CASE 1 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 148) BREAK // HAIR_FMF_1_0 CASE 7 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 149) BREAK // HAIR_FMF_2_0 CASE 13 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 150) BREAK // HAIR_FMF_3_0 CASE 18 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 151) BREAK // HAIR_FMF_4_0 CASE 24 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 152) BREAK // HAIR_FMF_5_0 CASE 30 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 153) BREAK // HAIR_FMF_6_0 CASE 35 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 154) BREAK // HAIR_FMF_7_0 CASE 41 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 155) BREAK // HAIR_FMF_8_0 CASE 47 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 156) BREAK // HAIR_FMF_9_0 CASE 53 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 157) BREAK // HAIR_FMF_10_0 CASE 60 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 158) BREAK // HAIR_FMF_11_0 CASE 67 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 159) BREAK // HAIR_FMF_12_0 CASE 73 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 160) BREAK // HAIR_FMF_13_0 CASE 79 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 161) BREAK // HAIR_FMF_14_0 CASE 85 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 162) BREAK // HAIR_FMF_15_0 CASE 92 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 163) BREAK // "DLC_MP_BEACH_F_HAIR00" CASE 97 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 164) BREAK // "DLC_MP_BEACH_F_HAIR05" CASE 102 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 165) BREAK // "DLC_MP_BUSI_F_HAIR0_0" CASE 108 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 166) BREAK // "DLC_MP_BUSI_F_HAIR1_0" CASE 113 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 167) BREAK // "DLC_MP_VAL_F_HAIR0_0" CASE 118 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 168) BREAK // "DLC_MP_HIPS_F_HAIR0_0" CASE 123 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 169) BREAK // "DLC_MP_HIPS_F_HAIR1_0" CASE 128 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 170) BREAK // "DLC_MP_IND_F_HAIR0_0" CASE 134 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 171) BREAK // "DLC_MP_LOW_F_HAIR0_0" CASE 135 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 172) BREAK // "DLC_MP_LOW_F_HAIR1_0" CASE 136 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 173) BREAK // "DLC_MP_LOW_F_HAIR2_0" CASE 137 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 174) BREAK // "DLC_MP_LOW_F_HAIR3_0" CASE 138 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 175) BREAK // "DLC_MP_LOW2_F_HAIR0_0" CASE 139 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 176) BREAK // "DLC_MP_LOW2_F_HAIR1_0" CASE 140 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 177) BREAK // "DLC_MP_LOW2_F_HAIR2_0" CASE 141 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 178) BREAK // "DLC_MP_BIKER_F_HAIR_0_0" CASE 142 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 179) BREAK // "DLC_MP_BIKER_F_HAIR_1_0" CASE 143 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 180) BREAK // "DLC_MP_BIKER_F_HAIR_2_0" CASE 144 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 181) BREAK // "DLC_MP_BIKER_F_HAIR_3_0" CASE 145 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 182) BREAK // "DLC_MP_BIKER_F_HAIR_4_0" CASE 146 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 183) BREAK // "DLC_MP_BIKER_F_HAIR_5_0" CASE 147 RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, 184) BREAK // "DLC_MP_BIKER_F_HAIR_6_0" ENDSWITCH RETURN eHairItem ENDFUNC FUNC PED_COMP_NAME_ENUM GET_RANDOM_MALE_HAIR() SWITCH GET_RANDOM_INT_IN_RANGE(0, 36) CASE 0 RETURN HAIR_FMM_0_0 CASE 1 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_0_0"), COMP_TYPE_HAIR, 3) CASE 2 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_1_0"), COMP_TYPE_HAIR, 3) CASE 3 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_2_0"), COMP_TYPE_HAIR, 3) CASE 4 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_3_0"), COMP_TYPE_HAIR, 3) CASE 5 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_4_0"), COMP_TYPE_HAIR, 3) CASE 6 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_5_0"), COMP_TYPE_HAIR, 3) CASE 7 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_6_0"), COMP_TYPE_HAIR, 3) CASE 8 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_7_0"), COMP_TYPE_HAIR, 3) CASE 9 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_8_0"), COMP_TYPE_HAIR, 3) CASE 10 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_9_0"), COMP_TYPE_HAIR, 3) CASE 11 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_10_0"), COMP_TYPE_HAIR, 3) CASE 12 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_11_0"), COMP_TYPE_HAIR, 3) CASE 13 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_12_0"), COMP_TYPE_HAIR, 3) CASE 14 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_13_0"), COMP_TYPE_HAIR, 3) CASE 15 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_14_0"), COMP_TYPE_HAIR, 3) CASE 16 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_15_0"), COMP_TYPE_HAIR, 3) CASE 17 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_16_0"), COMP_TYPE_HAIR, 3) CASE 18 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_17_0"), COMP_TYPE_HAIR, 3) CASE 19 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_18_0"), COMP_TYPE_HAIR, 3) CASE 20 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_19_0"), COMP_TYPE_HAIR, 3) CASE 21 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_20_0"), COMP_TYPE_HAIR, 3) CASE 22 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_21_0"), COMP_TYPE_HAIR, 3) CASE 23 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_22_0"), COMP_TYPE_HAIR, 3) CASE 24 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_23_0"), COMP_TYPE_HAIR, 3) CASE 25 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_24_0"), COMP_TYPE_HAIR, 3) CASE 26 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_25_0"), COMP_TYPE_HAIR, 3) CASE 27 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_26_0"), COMP_TYPE_HAIR, 3) CASE 28 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_27_0"), COMP_TYPE_HAIR, 3) CASE 29 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_28_0"), COMP_TYPE_HAIR, 3) CASE 30 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_29_0"), COMP_TYPE_HAIR, 3) CASE 31 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_30_0"), COMP_TYPE_HAIR, 3) CASE 32 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_31_0"), COMP_TYPE_HAIR, 3) CASE 33 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_32_0"), COMP_TYPE_HAIR, 3) CASE 34 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_33_0"), COMP_TYPE_HAIR, 3) CASE 35 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_M_Freemode_01, HASH("DLC_MP_GR_M_HAIR_34_0"), COMP_TYPE_HAIR, 3) ENDSWITCH RETURN HAIR_FMM_0_0 ENDFUNC FUNC PED_COMP_NAME_ENUM GET_RANDOM_FEMALE_HAIR() SWITCH GET_RANDOM_INT_IN_RANGE(0, 38) CASE 0 RETURN HAIR_FMF_0_0 CASE 1 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_0_0"), COMP_TYPE_HAIR, 4) CASE 2 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_1_0"), COMP_TYPE_HAIR, 4) CASE 3 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_2_0"), COMP_TYPE_HAIR, 4) CASE 4 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_3_0"), COMP_TYPE_HAIR, 4) CASE 5 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_4_0"), COMP_TYPE_HAIR, 4) CASE 6 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_5_0"), COMP_TYPE_HAIR, 4) CASE 7 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_6_0"), COMP_TYPE_HAIR, 4) CASE 8 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_7_0"), COMP_TYPE_HAIR, 4) CASE 9 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_8_0"), COMP_TYPE_HAIR, 4) CASE 10 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_9_0"), COMP_TYPE_HAIR, 4) CASE 11 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_10_0"), COMP_TYPE_HAIR, 4) CASE 12 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_11_0"), COMP_TYPE_HAIR, 4) CASE 13 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_12_0"), COMP_TYPE_HAIR, 4) CASE 14 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_13_0"), COMP_TYPE_HAIR, 4) CASE 15 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_14_0"), COMP_TYPE_HAIR, 4) CASE 16 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_15_0"), COMP_TYPE_HAIR, 4) CASE 17 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_16_0"), COMP_TYPE_HAIR, 4) CASE 18 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_18_0"), COMP_TYPE_HAIR, 4) CASE 19 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_19_0"), COMP_TYPE_HAIR, 4) CASE 20 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_17_0"), COMP_TYPE_HAIR, 4) CASE 21 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_20_0"), COMP_TYPE_HAIR, 4) CASE 22 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_21_0"), COMP_TYPE_HAIR, 4) CASE 23 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_22_0"), COMP_TYPE_HAIR, 4) CASE 24 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_23_0"), COMP_TYPE_HAIR, 4) CASE 25 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_24_0"), COMP_TYPE_HAIR, 4) CASE 26 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_25_0"), COMP_TYPE_HAIR, 4) CASE 27 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_26_0"), COMP_TYPE_HAIR, 4) CASE 28 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_27_0"), COMP_TYPE_HAIR, 4) CASE 29 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_28_0"), COMP_TYPE_HAIR, 4) CASE 30 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_29_0"), COMP_TYPE_HAIR, 4) CASE 31 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_30_0"), COMP_TYPE_HAIR, 4) CASE 32 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_31_0"), COMP_TYPE_HAIR, 4) CASE 33 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_32_0"), COMP_TYPE_HAIR, 4) CASE 34 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_33_0"), COMP_TYPE_HAIR, 4) CASE 35 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_34_0"), COMP_TYPE_HAIR, 4) CASE 36 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_35_0"), COMP_TYPE_HAIR, 4) CASE 37 RETURN GET_PED_COMP_ITEM_FROM_NAME_HASH(MP_F_Freemode_01, HASH("DLC_MP_GR_F_HAIR_36_0"), COMP_TYPE_HAIR, 4) ENDSWITCH RETURN HAIR_FMF_0_0 ENDFUNC