10526 lines
477 KiB
Python
Executable File
10526 lines
477 KiB
Python
Executable File
//////////////////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// SCRIPT NAME : debug_ped_data.sc //
|
|
// AUTHOR : Kenneth Ross //
|
|
// DESCRIPTION : Used to output shop meta for outfits. //
|
|
// //
|
|
//////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Include the standard headers (which also ensures the correct #DEFINEs are recognised)
|
|
USING "rage_builtins.sch"
|
|
USING "globals.sch"
|
|
|
|
// Do nothing in release mode
|
|
#IF IS_FINAL_BUILD
|
|
SCRIPT
|
|
ENDSCRIPT
|
|
#ENDIF
|
|
|
|
// Only include in debug mode
|
|
#IF IS_DEBUG_BUILD
|
|
|
|
USING "commands_script.sch"
|
|
USING "commands_streaming.sch"
|
|
USING "script_player.sch"
|
|
USING "ped_component_public.sch"
|
|
USING "tattoo_shop_private.sch"
|
|
USING "freemode_header.sch"
|
|
USING "clothes_shop_private.sch"
|
|
USING "mphud_charactercreatormenu.sch"
|
|
USING "mphud_charactercontroller.sch"
|
|
|
|
ENUM DEBUG_PED_STAGE
|
|
STAGE_INIT = 0,
|
|
STAGE_PROCESSING,
|
|
STAGE_CLEANUP
|
|
ENDENUM
|
|
DEBUG_PED_STAGE eStage = STAGE_INIT
|
|
|
|
CONST_INT CLOTHES_SELECT_MENU_MAIN 0
|
|
CONST_INT CLOTHES_SELECT_MENU_COMPS 1
|
|
CONST_INT CLOTHES_SELECT_MENU_PROPS 2
|
|
CONST_INT CLOTHES_SELECT_MENU_DECORATIONS 3
|
|
CONST_INT CLOTHES_SELECT_MENU_OUTFITS 4
|
|
CONST_INT CLOTHES_SELECT_MENU_MODEL 5
|
|
CONST_INT CLOTHES_SELECT_MENU_SHOP_LOCATE 6
|
|
CONST_INT CLOTHES_SELECT_MENU_CAMERA 7
|
|
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_TOPS 0
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_PANTS 1
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_SHOES 2
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_ACCESSORIES 3
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_GLASSES 4
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_HATS 5
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_MASKS 6
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_OUTFITS 7
|
|
CONST_INT SHOP_LOCATE_WARP_LOCATION_WARDROBE 8
|
|
CONST_INT MAX_SHOP_LOCATE_WARP_LOCATIONS 9
|
|
|
|
CONST_INT CAMERA_SELECT_OFF 0
|
|
CONST_INT CAMERA_SELECT_HEAD 1
|
|
CONST_INT CAMERA_SELECT_TORSO 2
|
|
CONST_INT CAMERA_SELECT_LEGS 3
|
|
CONST_INT CAMERA_SELECT_FEET 4
|
|
CONST_INT CAMERA_SELECT_HEAD_REAR 5
|
|
CONST_INT CAMERA_SELECT_TORSO_REAR 6
|
|
CONST_INT CAMERA_SELECT_LEGS_REAR 7
|
|
CONST_INT CAMERA_SELECT_FEET_REAR 8
|
|
CONST_INT MAX_CAMERA_SELECT_OPTIONS 9
|
|
|
|
STRUCT CLOTHES_SELECTOR_DATA
|
|
BOOL bDisplay
|
|
BOOL bMenuAssetsRequested
|
|
BOOL bMenuInitialised
|
|
BOOL bGrabClothingData
|
|
BOOL bUseCachedClothingData
|
|
BOOL bRebuildMenu
|
|
BOOL bValidateClothes
|
|
BOOL bEnterKeyWord
|
|
BOOL bKeyWordState
|
|
INT iValidateClothesCount
|
|
INT iCurrentItem[2]
|
|
INT iCurrentTopItem[2]
|
|
INT iCurrentItem_copy[2]
|
|
INT iCurrentTopItem_copy[2]
|
|
INT iCurrentMenu
|
|
INT iMenuDepth
|
|
INT iDrawIndex
|
|
SHOP_INPUT_DATA_STRUCT sInputData
|
|
INT iIndex
|
|
INT iTexture
|
|
INT iLastIndex
|
|
INT iLastTexture
|
|
INT iLocalIndex
|
|
INT iOutfitIndex
|
|
INT iOutfitCount
|
|
MODEL_NAMES eModelSelect
|
|
BOOL bSetPlayerModel
|
|
INT iLocateSelect
|
|
BOOL bWarpToLocate
|
|
INT iCameraSelect
|
|
TEXT_LABEL_15 tlItemLabel
|
|
TEXT_LABEL_63 tlDLCKey
|
|
TEXT_LABEL_63 tlDLCPack
|
|
TEXT_LABEL_15 tlKeyWord
|
|
INT iDecorationCollection
|
|
INT iDecorationPreset
|
|
BOOL bDecorationCompatible
|
|
INT iDecorationIndex
|
|
INT iDecorationCount
|
|
BOOL bCompatibleOnly
|
|
BOOL bReleaseUD
|
|
BOOL bReleaseLR
|
|
TEXT_LABEL_63 tlShopMenu
|
|
ENDSTRUCT
|
|
CLOTHES_SELECTOR_DATA sClothesSelect
|
|
|
|
BOOL bKillScript
|
|
|
|
CAMERA_INDEX camPlayerOffset
|
|
VECTOR vCamOffsetPos, vCamOffsetPoint
|
|
BOOL bUseOffsetCam
|
|
BOOl bSetOffsetCamPreset[8]
|
|
|
|
BOOL bSetPlayerModel_Male
|
|
BOOL bSetPlayerModel_Female
|
|
INT iSelectedDLCPack
|
|
INT iSelectedPedComponent
|
|
|
|
BOOL bOutputUniqueHashNames
|
|
BOOL bOutputShopLocateNames
|
|
|
|
BOOL bGenerate_ShopMeta
|
|
BOOL bGenerate_MissingShopMeta
|
|
BOOL bGenerate_MissingSaveItems
|
|
BOOL bGenerate_GET_DLC_NAME_HASH_STRING
|
|
BOOL bGenerate_GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP
|
|
BOOL bGenerate_GET_TATTOO_ENUM_FROM_DLC_HASH
|
|
BOOL bGenerate_ClothingInfo
|
|
BOOL bGenerate_ClothingScreenshotsPrimary
|
|
BOOL bGenerate_ClothingScreenshots
|
|
BOOL bDisplay_ShopPedInfo
|
|
BOOL bGenerate_ExclsuiveClothingInfo
|
|
|
|
BOOL bGenerate_PedRenders
|
|
BOOL bRunning_PedRenders
|
|
INT iTotalPedRenders
|
|
INT iCurrentPedRender
|
|
INT iCurrentPedRenderState
|
|
INT iPedRenderDLCPack
|
|
|
|
BOOL b_Apply_Freemode_outfit
|
|
|
|
BOOL b_debug_htb
|
|
|
|
BOOL b_debug_ped_save[6]
|
|
BOOL b_debug_ped_set[6]
|
|
BOOL b_debug_ped_create[6]
|
|
INT i_debug_process_ped_set
|
|
INT i_debug_process_ped_create
|
|
BOOL b_debug_output_ped_save_data
|
|
TEXT_WIDGET_ID twDebugPedNamed
|
|
PED_INDEX pedDebugPedCreate[6]
|
|
BOOL b_debug_ped_created[6]
|
|
BOOL b_debug_ped_randomise_appearance
|
|
BOOL b_debug_ped_create_clone
|
|
|
|
BOOL b_debug_set_player_and_cam[4]
|
|
|
|
BOOL b_debug_outfit_output_1
|
|
BOOL b_debug_outfit_output_2
|
|
|
|
INT i_debug_heist_outfit
|
|
|
|
INT i_debug_heist_outfit_last_set
|
|
BOOL b_debug_set_heist_outfit
|
|
BOOL b_debug_set_heist_outfit_auto
|
|
TEXT_WIDGET_ID t_debug_heist_outfit_name
|
|
MP_OUTFITS_APPLY_DATA sApplyOutfitData
|
|
|
|
INT i_debug_heist_mask
|
|
INT i_debug_heist_mask_last_set
|
|
BOOL b_debug_set_heist_mask
|
|
BOOL b_debug_set_heist_mask_auto
|
|
TEXT_WIDGET_ID t_debug_heist_mask_name
|
|
MP_OUTFITS_APPLY_DATA sApplyMaskData
|
|
|
|
INT i_debug_heist_gear
|
|
BOOL b_debug_set_heist_gear
|
|
BOOL b_debug_remove_heist_gear
|
|
BOOL b_debug_output_heist_DLC_hash
|
|
|
|
INT i_debug_Vs_outfit = ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_JUNGLE_0)
|
|
BOOL b_debug_set_Vs_outfit
|
|
INT i_debug_VsTheme_outfit = ENUM_TO_INT(OUTFIT_VERSUS_THEMED_SLASHERS_0)
|
|
BOOL b_debug_set_VsTheme_outfit
|
|
INT i_debug_ng_outfit = ENUM_TO_INT(OUTFIT_NG_CASUAL_0)
|
|
BOOL b_debug_set_ng_outfit
|
|
|
|
|
|
INT i_debug_lowr_outfit = ENUM_TO_INT(OUTFIT_VERSUS_LOWR_BLUE_SMART_0)
|
|
BOOL b_debug_set_lowr_outfit
|
|
|
|
INT i_debug_entourage_outfit = ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_VIP_0)
|
|
BOOL b_debug_set_entourage_outfit
|
|
|
|
INT i_debug_hal_outfit = ENUM_TO_INT(OUTFIT_VERSUS_HAL_MANIACS_0)
|
|
BOOL b_debug_set_hal_outfit
|
|
|
|
INT i_debug_solo_outfit = ENUM_TO_INT(OUTFIT_LOW_FLOW_WOLVES_0)
|
|
INT i_debug_solo_outfit2 = ENUM_TO_INT(OUTFIT_SOLO_SENIORS_0)
|
|
BOOL b_debug_set_solo_outfit
|
|
BOOL b_debug_set_solo_outfit2
|
|
|
|
INT i_debug_low_flow_outfit = ENUM_TO_INT(OUTFIT_LOW_FLOW_LOWRIDER_0)
|
|
BOOL b_debug_set_low_flow_outfit
|
|
|
|
INT i_debug_beast_outfit = ENUM_TO_INT(OUTFIT_ADVERSARY_B_OVERRIDE_0)
|
|
BOOL b_debug_set_beast_outfit
|
|
INT i_debug_extraction_outfit = ENUM_TO_INT(OUTFIT_VERSUS_EXTRACTION_VIP_0)
|
|
BOOL b_debug_set_extraction_outfit
|
|
|
|
INT i_debug_gang_boss_vip_outfits = ENUM_TO_INT(OUTFIT_MAGNATE_BOSS_BARON_0)
|
|
BOOL b_debug_set_gang_boss_vip_outfits
|
|
|
|
INT i_debug_gang_boss_bodyguard_outfits = ENUM_TO_INT(OUTFIT_MAGNATE_GOON_NARCO_0)
|
|
BOOL b_debug_set_gang_boss_bodyguard_outfits
|
|
|
|
INT i_debug_hidden_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0)
|
|
TEXT_WIDGET_ID tw_debug_hidden_outfit_name
|
|
BOOL b_debug_set_hidden_outfits
|
|
|
|
INT i_debug_hidden_lowrider_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0)
|
|
BOOL b_debug_set_hidden_lowrider_outfits
|
|
|
|
INT i_debug_classic_competitors_outfits = ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0)
|
|
BOOL b_debug_set_classic_competitors_outfits
|
|
|
|
INT i_debug_trading_places_winner_outfits = ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_0)
|
|
BOOL b_debug_set_trading_places_winner_outfits
|
|
|
|
INT i_debug_trading_places_loser_outfits = ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_0)
|
|
BOOL b_debug_set_trading_places_loser_outfits
|
|
|
|
INT i_debug_power_play_team_sport_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0)
|
|
BOOL b_debug_set_power_play_team_sport_outfits
|
|
|
|
INT i_debug_executive_ceo_outfits = ENUM_TO_INT(OUTFIT_EXEC_CEO_FOUNDER_0)
|
|
BOOL b_debug_set_executive_ceo_outfits
|
|
|
|
INT i_debug_executive_associate_outfits = ENUM_TO_INT(OUTFIT_EXEC_ASSOCIATE_OPERATORS_0)
|
|
BOOL b_debug_set_executive_associate_outfits
|
|
|
|
INT i_debug_executive_securoserv_outfits = ENUM_TO_INT(OUTFIT_MAGNATE_GOON_SECUROSERV_0)
|
|
BOOL b_debug_set_executive_securoserv_outfits
|
|
|
|
INT i_debug_power_play_themed_outfits = ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0)
|
|
BOOL b_debug_set_power_play_themed_outfits
|
|
|
|
INT i_debug_stunt_race_outfits = ENUM_TO_INT(OUTFIT_STUNT_RACE_BIKER_0)
|
|
BOOL b_debug_set_stunt_race_outfits
|
|
|
|
INT i_debug_biker_club_outfits_0to3 = ENUM_TO_INT(OUTFIT_BIKER_DIRT_0)
|
|
BOOL b_debug_set_biker_club_outfits_0to3
|
|
|
|
INT i_debug_biker_club_outfits_4to7 = ENUM_TO_INT(OUTFIT_BIKER_DIRT_4)
|
|
BOOL b_debug_set_biker_club_outfits_4to7
|
|
|
|
INT i_debug_biker_deadline_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_PURPLE_0)
|
|
BOOL b_debug_set_biker_deadline_outfits
|
|
|
|
INT i_debug_biker_slipstream_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PURPLE_0)
|
|
BOOL b_debug_set_biker_slipstream_outfits
|
|
|
|
INT i_debug_biker_lost_damned_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_LOST_DEVILS_0)
|
|
BOOL b_debug_set_biker_lost_damned_outfits
|
|
|
|
INT i_debug_biker_club_rank_outfits = ENUM_TO_INT(OUTFIT_BIKER_RANK_0)
|
|
BOOL b_debug_set_biker_club_rank_outfits
|
|
|
|
INT i_debug_impexp_ceo_outfits = ENUM_TO_INT(OUTFIT_IE_CEO_LONGLINE_0)
|
|
BOOL b_debug_set_impexp_ceo_outfits
|
|
|
|
INT i_debug_impexp_associate_outfits = ENUM_TO_INT(OUTFIT_IE_LONGLINE_0)
|
|
BOOL b_debug_set_impexp_associate_outfits
|
|
|
|
INT i_debug_impexp_juggernaut_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_TARGET_0)
|
|
BOOL b_debug_set_impexp_juggernaut_outfits
|
|
|
|
INT i_debug_impexp_juggernaut_orange_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_TARGET_0)
|
|
BOOL b_debug_set_impexp_juggernaut_orange_outfits
|
|
|
|
INT i_debug_impexp_juggernaut_purple_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_TARGET_0)
|
|
BOOL b_debug_set_impexp_juggernaut_purple_outfits
|
|
|
|
INT i_debug_specraces_general_combat_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_FOREST_0)
|
|
BOOL b_debug_set_specraces_general_combat_outfits
|
|
|
|
INT i_debug_specraces_land_grab_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_ORANGE_0)
|
|
BOOL b_debug_set_specraces_land_grab_outfits
|
|
|
|
INT i_debug_gunrun_lions_den_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_ATTACKER_0)
|
|
BOOL b_debug_set_gunrun_lions_den_outfits
|
|
|
|
INT i_debug_gunrun_dawn_raid_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_ORANGE_0)
|
|
BOOL b_debug_set_gunrun_dawn_raid_outfits
|
|
|
|
INT i_debug_gunrun_biker_zombie_outfits = ENUM_TO_INT(OUTFIT_BIKER_ZOMBIE_0)
|
|
BOOL b_debug_set_gunrun_biker_zombie_outfits
|
|
|
|
INT i_debug_gunrun_biker_raider_outfits = ENUM_TO_INT(OUTFIT_BIKER_RAIDER_0)
|
|
BOOL b_debug_set_gunrun_biker_raider_outfits
|
|
|
|
INT i_debug_gunrun_biker_puffer_outfits = ENUM_TO_INT(OUTFIT_BIKER_PUFFER_0)
|
|
BOOL b_debug_set_gunrun_biker_puffer_outfits
|
|
|
|
INT i_debug_gunrun_biker_hillbilly_outfits = ENUM_TO_INT(OUTFIT_BIKER_HILLBILLY_0)
|
|
BOOL b_debug_set_gunrun_biker_hillbilly_outfits
|
|
|
|
INT i_debug_gunrun_ceo_outfits = ENUM_TO_INT(OUTFIT_GUNR_CEO_SURVIVALIST_0)
|
|
BOOL b_debug_set_gunrun_ceo_outfits
|
|
|
|
INT i_debug_gunrun_associate_outfits = ENUM_TO_INT(OUTFIT_GUNR_ASSOCIATE_SURVIVALIST_0)
|
|
BOOL b_debug_set_gunrun_associate_outfits
|
|
|
|
INT i_debug_gunrun_team_general_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_ORANGE_0)
|
|
BOOL b_debug_set_gunrun_team_general_outfits
|
|
|
|
INT i_debug_gunrun_power_mad_juggernaut_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PINK_TARGET_0)
|
|
BOOL b_debug_set_gunrun_power_mad_juggernaut_outfits
|
|
|
|
INT i_debug_gunrun_power_mad_team_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_ORANGE_0)
|
|
BOOL b_debug_set_gunrun_power_mad_team_outfits
|
|
|
|
INT i_debug_gunrun_wvm_oppressor_outfits = ENUM_TO_INT(OUTFIT_WVM_OPPRESSOR_0)
|
|
BOOL b_debug_set_gunrun_wvm_oppressor_outfits
|
|
|
|
INT i_debug_smuggler_hostile_takeover_outfits = ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_GREEN_0)
|
|
BOOL b_debug_set_smuggler_hostile_takeover_outfits
|
|
|
|
INT i_debug_smuggler_condemned_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_CONDEMNED)
|
|
BOOL b_debug_set_smuggler_condemned_outfits
|
|
|
|
INT i_debug_smuggler_vehicle_warfare_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PURPLE_0)
|
|
BOOL b_debug_set_smuggler_vehicle_warfare_outfits
|
|
|
|
INT i_debug_smuggler_air_shootout_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PURPLE_0)
|
|
BOOL b_debug_set_smuggler_air_shootout_outfits
|
|
|
|
INT i_debug_smuggler_bombushka_run_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0)
|
|
BOOL b_debug_set_smuggler_bombushka_run_outfits
|
|
|
|
INT i_debug_smuggler_stockpile_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PURPLE_0)
|
|
BOOL b_debug_set_smuggler_stockpile_outfits
|
|
|
|
INT i_debug_smuggler_race_outfits = ENUM_TO_INT(OUTFIT_SMUGGLER_RACE_SUIT_FLOW)
|
|
BOOL b_debug_set_smuggler_race_outfits
|
|
|
|
// Organisation outfits
|
|
INT i_debug_smuggler_ceo_outfits = ENUM_TO_INT(OUTFIT_SMUGGLER_CEO_FORMAL_PILOT_0)
|
|
BOOL b_debug_set_smuggler_ceo_outfits
|
|
|
|
INT i_debug_smuggler_associate_outfits = ENUM_TO_INT(OUTFIT_SMUGGLER_ASSOCIATE_FORMAL_PILOT_0)
|
|
BOOL b_debug_set_smuggler_associate_outfits
|
|
|
|
INT i_debug_smuggler_biker_casual_pilot_outfits = ENUM_TO_INT(OUTFIT_BIKER_CASUAL_PILOT_0)
|
|
BOOl b_debug_set_smuggler_biker_casual_pilot_outfits
|
|
|
|
INT i_debug_smuggler_biker_pirate_outfits = ENUM_TO_INT(OUTFIT_BIKER_PIRATE_0)
|
|
BOOl b_debug_set_smuggler_biker_pirate_outfits
|
|
|
|
INT i_debug_gangops_under_control_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_UNDER_CONTROL)
|
|
BOOL b_debug_set_gangops_under_control_outfit
|
|
|
|
INT i_debug_gangops_heist_scuba_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SCUBA)
|
|
BOOL b_debug_set_gangops_heist_scuba_outfit
|
|
|
|
INT i_debug_gangops_heist_paramedic_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0)
|
|
BOOL b_debug_set_gangops_heist_paramedic_outfit
|
|
|
|
INT i_debug_gangops_heist_medtech1_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0)
|
|
BOOL b_debug_set_gangops_heist_medtech1_outfit
|
|
|
|
INT i_debug_gangops_heist_medtech2_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0)
|
|
BOOL b_debug_set_gangops_heist_medtech2_outfit
|
|
|
|
INT i_debug_gangops_heist_modern_stealth_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0)
|
|
BOOL b_debug_set_gangops_heist_modern_stealth_outfit
|
|
|
|
INT i_debug_gangops_heist_casual_pilot_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0)
|
|
BOOL b_debug_set_gangops_heist_casual_pilot_outfit
|
|
|
|
INT i_debug_gangops_heist_fighter_pilot_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0)
|
|
BOOL b_debug_set_gangops_heist_fighter_pilot_outfit
|
|
|
|
INT i_debug_gangops_heist_high_tech_riot_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0)
|
|
BOOL b_debug_set_gangops_heist_high_tech_riot_outfit
|
|
|
|
INT i_debug_gangops_heist_high_tech_impact_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0)
|
|
BOOL b_debug_set_gangops_heist_high_tech_impact_outfit
|
|
|
|
INT i_debug_gangops_heist_med_tech_masked_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0)
|
|
BOOL b_debug_set_gangops_heist_med_tech_masked_outfit
|
|
|
|
INT i_debug_gangops_heist_med_tech_rebellion_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0)
|
|
BOOL b_debug_set_gangops_heist_med_tech_rebellion_outfit
|
|
|
|
INT i_debug_gangops_heist_med_tech_havoc_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0)
|
|
BOOL b_debug_set_gangops_heist_med_tech_havoc_outfit
|
|
|
|
INT i_debug_gangops_heist_med_tech_adaptable_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0)
|
|
BOOL b_debug_set_gangops_heist_med_tech_adaptable_outfit
|
|
|
|
INT i_debug_gangops_heist_sub_driver_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0)
|
|
BOOL b_debug_set_gangops_heist_sub_driver_outfit
|
|
|
|
INT i_debug_gangops_heist_heavy_combat_gear_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0)
|
|
BOOL b_debug_set_gangops_heist_heavy_combat_gear_outfit
|
|
|
|
INT i_debug_gangops_heist_low_tech_tactical_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0)
|
|
BOOL b_debug_set_gangops_heist_low_tech_tactical_outfit
|
|
|
|
INT i_debug_gangops_heist_low_tech_combat_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0)
|
|
BOOL b_debug_set_gangops_heist_low_tech_combat_outfit
|
|
|
|
INT i_debug_gangops_heist_classic_stealth_gear_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0)
|
|
BOOL b_debug_set_gangops_heist_classic_stealth_gear_outfit
|
|
|
|
INT i_debug_gangops_heist_military_camo_gear_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0)
|
|
BOOL b_debug_set_gangops_heist_military_camo_gear_outfit
|
|
|
|
INT i_debug_gangops_heist_gorka_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_GORKA_0)
|
|
BOOL b_debug_set_gangops_heist_gorka_outfit
|
|
|
|
INT i_debug_gangops_slashers_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0)
|
|
BOOL b_debug_set_gangops_slashers_outfit
|
|
|
|
INT i_debug_gangops_hard_target_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_TARGET_0)
|
|
BOOL b_debug_set_gangops_hard_target_outfit
|
|
|
|
INT i_debug_gangops_air_quota_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_0)
|
|
BOOL b_debug_set_gangops_air_quota_outfit
|
|
|
|
INT i_debug_gangops_heist_scuba2_outfits = ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SCUBA_NOTANK)
|
|
BOOL b_debug_set_gangops_heist_scuba2_outfit
|
|
|
|
INT i_debug_target_races_showdown_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_0)
|
|
BOOL b_debug_set_target_races_showdown_outfit
|
|
|
|
INT i_debug_target_races_trapdoor_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_0)
|
|
BOOL b_debug_set_target_races_trapdoor_outfit
|
|
|
|
INT i_debug_target_races_venetian_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_COP)
|
|
BOOL b_debug_set_target_races_venetian_outfit
|
|
|
|
INT i_debug_target_races_venetian_firesuits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE)
|
|
BOOL b_debug_set_target_races_venetian_firesuits
|
|
|
|
INT i_debug_business_battles_drop_the_bomb_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_0)
|
|
BOOL b_debug_set_business_battles_drop_the_bomb_outfit
|
|
|
|
INT i_debug_business_battles_sumo_run_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_PURPLE_0)
|
|
BOOL b_debug_set_business_battles_sumo_run_outfit
|
|
|
|
INT i_debug_business_battles_offense_defense_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_0)
|
|
BOOL b_debug_set_business_battles_offense_defense_outfit
|
|
|
|
INT i_debug_business_battles_hunting_pack_remix_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_0)
|
|
BOOL b_debug_set_business_battles_hunting_pack_remix_outfit
|
|
|
|
INT i_debug_business_battles_trading_places_remix_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0)
|
|
BOOL b_debug_set_business_battles_trading_places_remix_outfit
|
|
|
|
INT i_debug_business_battles_come_out_to_play_remix_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0)
|
|
BOOL b_debug_set_business_battles_come_out_to_play_remix_outfit
|
|
|
|
INT i_debug_business_battles_running_back_remix_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLACK)
|
|
BOOL b_debug_set_business_battles_running_back_remix_outfit
|
|
|
|
INT i_debug_business_battles_nightclub_chiliad_outfits = ENUM_TO_INT(OUTFIT_NIGHTCLUB_CHILIAD_0)
|
|
BOOL b_debug_set_business_battles_nightclub_chiliad_outfit
|
|
|
|
INT i_debug_business_battles_nightclub_kifflom_outfits = ENUM_TO_INT(OUTFIT_NIGHTCLUB_KIFFLOM_0)
|
|
BOOL b_debug_set_business_battles_nightclub_kifflom_outfit
|
|
|
|
INT i_debug_business_battles_running_back_remix_2_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN)
|
|
BOOL b_debug_set_business_battles_running_back_remix_2_outfit
|
|
|
|
INT i_debug_arena_wars_contender_outfits = ENUM_TO_INT(OUTFIT_ARENA_WARS_CONTENDER_GENERAL_0)
|
|
BOOL b_debug_set_arena_wars_contender_outfit
|
|
|
|
BOOL b_debug_set_casino_impotent_rage_outfit
|
|
BOOL b_debug_set_casino_highroller_outfit
|
|
|
|
INT i_debug_casino_spaceling_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0)
|
|
BOOL b_debug_set_casino_spaceling_outfit
|
|
|
|
#IF FEATURE_CASINO_HEIST
|
|
BOOL b_debug_set_casino_heist_undertaker_outfit
|
|
|
|
INT i_debug_casino_heist_direct_light_i_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0)
|
|
BOOL b_debug_set_casino_heist_direct_light_i_outfit
|
|
|
|
INT i_debug_casino_heist_direct_light_ii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0)
|
|
BOOL b_debug_set_casino_heist_direct_light_ii_outfit
|
|
|
|
INT i_debug_casino_heist_direct_light_iii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0)
|
|
BOOL b_debug_set_casino_heist_direct_light_iii_outfit
|
|
|
|
INT i_debug_casino_heist_direct_heavy_i_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0)
|
|
BOOL b_debug_set_casino_heist_direct_heavy_i_outfit
|
|
|
|
INT i_debug_casino_heist_direct_heavy_ii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0)
|
|
BOOL b_debug_set_casino_heist_direct_heavy_ii_outfit
|
|
|
|
INT i_debug_casino_heist_direct_heavy_iii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0)
|
|
BOOL b_debug_set_casino_heist_direct_heavy_iii_outfit
|
|
|
|
INT i_debug_casino_heist_fib_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_FIB_0)
|
|
BOOL b_debug_set_casino_heist_fib_outfit
|
|
|
|
INT i_debug_casino_heist_stealth_i_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_I_0)
|
|
BOOL b_debug_set_casino_heist_stealth_i_outfit
|
|
|
|
INT i_debug_casino_heist_stealth_ii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_II_0)
|
|
BOOL b_debug_set_casino_heist_stealth_ii_outfit
|
|
|
|
INT i_debug_casino_heist_stealth_iii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_III_0)
|
|
BOOL b_debug_set_casino_heist_stealth_iii_outfit
|
|
|
|
INT i_debug_casino_heist_covert_stealth_i_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0)
|
|
BOOL b_debug_set_casino_heist_covert_stealth_i_outfit
|
|
|
|
INT i_debug_casino_heist_covert_stealth_ii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0)
|
|
BOOL b_debug_set_casino_heist_covert_stealth_ii_outfit
|
|
|
|
INT i_debug_casino_heist_covert_stealth_iii_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0)
|
|
BOOL b_debug_set_casino_heist_covert_stealth_iii_outfit
|
|
|
|
BOOL b_debug_set_casino_heist_valet_outfit
|
|
|
|
INT i_debug_casino_heist_firefighter_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_FIREFIGHTER_0)
|
|
BOOL b_debug_set_casino_heist_firefighter_outfit
|
|
|
|
INT i_debug_casino_heist_noose_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_NOOSE_0)
|
|
BOOL b_debug_set_casino_heist_noose_outfit
|
|
|
|
INT i_debug_casino_heist_gruppe_sechs_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0)
|
|
BOOL b_debug_set_casino_heist_gruppe_sechs_outfit
|
|
|
|
INT i_debug_casino_heist_bugstars_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_BUGSTARS_0)
|
|
BOOL b_debug_set_casino_heist_bugstars_outfit
|
|
|
|
INT i_debug_casino_heist_celeb_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_CELEB_0)
|
|
BOOL b_debug_set_casino_heist_celeb_outfit
|
|
|
|
INT i_debug_casino_heist_maintenance_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_MAINTENANCE_0)
|
|
BOOL b_debug_set_casino_heist_maintenance_outfit
|
|
|
|
INT i_debug_casino_heist_prison_guard_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_PRISON_GUARD_0)
|
|
BOOL b_debug_set_casino_heist_prison_guard_outfit
|
|
|
|
INT i_debug_casino_heist_high_roller_outfits = ENUM_TO_INT(OUTFIT_CASINO_HEIST_HIGH_ROLLER_0)
|
|
BOOL b_debug_set_casino_heist_high_roller_outfit
|
|
|
|
INT i_debug_sum20_outfit = ENUM_TO_INT(OUTFIT_SUM20_ALIEN_AWARD)
|
|
BOOL b_debug_set_sum20_outfit
|
|
|
|
#ENDIF
|
|
|
|
#IF FEATURE_HEIST_ISLAND
|
|
|
|
INT i_debug_island_heist_guard_outfits = ENUM_TO_INT(OUTFIT_ISLAND_HEIST_GUARD_0)
|
|
BOOL b_debug_set_island_heist_guard_outfit
|
|
|
|
INT i_debug_island_heist_smuggler_outfits = ENUM_TO_INT(OUTFIT_ISLAND_HEIST_SMUGGLER_0)
|
|
BOOL b_debug_set_island_heist_smuggler_outfit
|
|
|
|
INT i_debug_island_heist_heavy_outfits = ENUM_TO_INT(OUTFIT_ISLAND_HEIST_HEAVY_1_0)
|
|
BOOL b_debug_set_island_heist_heavy_outfit
|
|
|
|
INT i_debug_island_heist_light_outfits = ENUM_TO_INT(OUTFIT_ISLAND_HEIST_LIGHT_1_0)
|
|
BOOL b_debug_set_island_heist_light_outfit
|
|
|
|
INT i_debug_island_heist_stealth_outfits = ENUM_TO_INT(OUTFIT_ISLAND_HEIST_STEALTH_1_0)
|
|
BOOL b_debug_set_island_heist_stealth_outfit
|
|
|
|
INT i_debug_island_heist_beach_party_outfits = ENUM_TO_INT(OUTFIT_ISLAND_HEIST_BEACH_PARTY_0)
|
|
BOOL b_debug_set_island_heist_beach_party_outfit
|
|
|
|
#ENDIF
|
|
|
|
#IF FEATURE_TUNER
|
|
INT i_debug_tuner_robber_outfits = ENUM_TO_INT(OUTFIT_TUNER_ROBBER_BRAVADO)
|
|
BOOL b_debug_set_tuner_robber_outfit
|
|
|
|
INT i_debug_tuner_security_outfits = ENUM_TO_INT(OUTFIT_TUNER_SECURITY_0)
|
|
BOOL b_debug_set_tuner_security_outfit
|
|
|
|
INT i_debug_tuner_lost_mc_outfits = ENUM_TO_INT(OUTFIT_TUNER_LOST_MC_0)
|
|
BOOL b_debug_set_tuner_lost_mc_outfit
|
|
|
|
INT i_debug_tuner_dock_worker_outfits = ENUM_TO_INT(OUTFIT_TUNER_DOCK_WORKER_0)
|
|
BOOL b_debug_set_tuner_dock_worker_outfit
|
|
#ENDIF
|
|
|
|
#IF FEATURE_FIXER
|
|
INT i_debug_fixer_setup_outfits = ENUM_TO_INT(OUTFIT_FIXER_SETUP_0)
|
|
BOOL b_debug_set_fixer_setup_outfit
|
|
|
|
INT i_debug_fixer_party_promoter_outfits = ENUM_TO_INT(OUTFIT_FIXER_PARTY_PROMOTER_0)
|
|
BOOL b_debug_set_fixer_party_promoter_outfit
|
|
|
|
INT i_debug_fixer_billionaire_games_outfits = ENUM_TO_INT(OUTFIT_FIXER_BILLIONAIRE_GAMES_0)
|
|
BOOL b_debug_set_fixer_billionaire_games_outfit
|
|
|
|
INT i_debug_fixer_golf_outfits = ENUM_TO_INT(OUTFIT_FIXER_GOLF_0)
|
|
BOOL b_debug_set_fixer_golf_outfit
|
|
|
|
BOOL b_debug_set_heist_navy_coveralls
|
|
#ENDIF
|
|
|
|
#IF FEATURE_DLC_1_2022
|
|
BOOL b_debug_set_ld_organics_award
|
|
|
|
INT i_debug_sum22_iaa_agent_outfits = ENUM_TO_INT(OUTFIT_SUM22_IAA_AGENT_0)
|
|
BOOL b_debug_set_sum22_iaa_agent_outfit
|
|
|
|
INT i_debug_sum22_halloween_riders_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_0)
|
|
BOOL b_debug_set_sum22_halloween_riders_outfit
|
|
|
|
INT i_debug_sum22_halloween_hunted_outfits = ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0)
|
|
BOOL b_debug_set_sum22_halloween_hunted_outfit
|
|
#ENDIF
|
|
|
|
ENUM DLC_PACK_ENUM
|
|
DLC_PACK_MP_BEACH,
|
|
DLC_PACK_MP_XMAS,
|
|
DLC_PACK_MP_VALENTINES,
|
|
DLC_PACK_MP_BUSINESS,
|
|
DLC_PACK_MP_BUSINESS2,
|
|
DLC_PACK_MP_HIPSTER,
|
|
DLC_PACK_MP_INDEPENDENCE,
|
|
DLC_PACK_MP_PILOT,
|
|
DLC_PACK_MP_LTS,
|
|
DLC_PACK_MP_XMAS2,
|
|
DLC_PACK_MP_HEIST,
|
|
DLC_PACK_MP_LUXE,
|
|
DLC_PACK_MP_LUXE2,
|
|
DLC_PACK_MP_REPLAY,
|
|
DLC_PACK_MP_LOWRIDER,
|
|
DLC_PACK_MP_HALLOWEEN,
|
|
DLC_PACK_MP_APARTMENT,
|
|
DLC_PACK_MP_XMAS3,
|
|
DLC_PACK_MP_JANUARY2016,
|
|
DLC_PACK_MP_VALENTINES2,
|
|
DLC_PACK_MP_LOWRIDER2,
|
|
DLC_PACK_MP_EXECUTIVE,
|
|
DLC_PACK_MP_STUNT,
|
|
DLC_PACK_MP_BIKER,
|
|
DLC_PACK_MP_IMPORTEXPORT,
|
|
DLC_PACK_MP_GUNRUNNING,
|
|
DLC_PACK_MP_AIRRACES,
|
|
DLC_PACK_MP_SMUGGLER,
|
|
DLC_PACK_MP_CHRISTMAS2017,
|
|
DLC_PACK_MP_ASSAULT,
|
|
DLC_PACK_MP_BATTLE,
|
|
DLC_PACK_MP_CHRISTMAS2018,
|
|
DLC_PACK_MP_VINEWOOD,
|
|
DLC_PACK_MP_HEIST3,
|
|
DLC_PACK_MP_SUM,
|
|
DLC_PACK_MP_HEIST4,
|
|
DLC_PACK_MP_TUNER,
|
|
DLC_PACK_MP_FIXER,
|
|
DLC_PACK_MP_G9EC,
|
|
DLC_PACK_MP_SUM2,
|
|
DLC_PACK_MP_SUM2_G9EC,
|
|
|
|
DLC_PACK_MP_MAX
|
|
ENDENUM
|
|
|
|
FUNC STRING GET_DLC_PACK_NAME(DLC_PACK_ENUM eDLCPack)
|
|
|
|
SWITCH eDLCPack
|
|
CASE DLC_PACK_MP_BEACH RETURN "BEACH" BREAK
|
|
CASE DLC_PACK_MP_XMAS RETURN "XMAS" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES RETURN "VALENTINES" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS RETURN "BUSINESS" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS2 RETURN "BUSINESS2" BREAK
|
|
CASE DLC_PACK_MP_HIPSTER RETURN "HIPSTER" BREAK
|
|
CASE DLC_PACK_MP_INDEPENDENCE RETURN "INDEPENDENE" BREAK
|
|
CASE DLC_PACK_MP_PILOT RETURN "PILOT" BREAK
|
|
CASE DLC_PACK_MP_LTS RETURN "LTS" BREAK
|
|
CASE DLC_PACK_MP_XMAS2 RETURN "XMAS2" BREAK
|
|
CASE DLC_PACK_MP_HEIST RETURN "HEIST" BREAK
|
|
CASE DLC_PACK_MP_LUXE RETURN "LUXE" BREAK
|
|
CASE DLC_PACK_MP_LUXE2 RETURN "LUXE2" BREAK
|
|
CASE DLC_PACK_MP_REPLAY RETURN "REPLAY" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER RETURN "LOWRIDER" BREAK
|
|
CASE DLC_PACK_MP_HALLOWEEN RETURN "HALLOWEEN" BREAK
|
|
CASE DLC_PACK_MP_APARTMENT RETURN "APARTMENT" BREAK
|
|
CASE DLC_PACK_MP_XMAS3 RETURN "XMAS3" BREAK
|
|
CASE DLC_PACK_MP_JANUARY2016 RETURN "JANUARY2016" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES2 RETURN "VALENTINES2" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER2 RETURN "LOWRIDER2" BREAK
|
|
CASE DLC_PACK_MP_EXECUTIVE RETURN "EXECUTIVE" BREAK
|
|
CASE DLC_PACK_MP_STUNT RETURN "STUNT" BREAK
|
|
CASE DLC_PACK_MP_BIKER RETURN "BIKER" BREAK
|
|
CASE DLC_PACK_MP_IMPORTEXPORT RETURN "IMPORTEXPORT" BREAK
|
|
CASE DLC_PACK_MP_GUNRUNNING RETURN "GUNRUNNING" BREAK
|
|
CASE DLC_PACK_MP_AIRRACES RETURN "AIRRACES" BREAK
|
|
CASE DLC_PACK_MP_SMUGGLER RETURN "SMUGGLER" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2017 RETURN "CHRISTMAS2017" BREAK
|
|
CASE DLC_PACK_MP_ASSAULT RETURN "ASSAULT" BREAK
|
|
CASE DLC_PACK_MP_BATTLE RETURN "BATTLE" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2018 RETURN "CHRISTMAS2018" BREAK
|
|
CASE DLC_PACK_MP_VINEWOOD RETURN "VINEWOOD" BREAK
|
|
CASE DLC_PACK_MP_HEIST3 RETURN "HEIST3" BREAK
|
|
CASE DLC_PACK_MP_SUM RETURN "SUMMER2020" BREAK
|
|
CASE DLC_PACK_MP_HEIST4 RETURN "HEIST4" BREAK
|
|
CASE DLC_PACK_MP_TUNER RETURN "TUNER" BREAK
|
|
CASE DLC_PACK_MP_FIXER RETURN "FIXER" BREAK
|
|
CASE DLC_PACK_MP_G9EC RETURN "GEN9EC" BREAK
|
|
CASE DLC_PACK_MP_SUM2 RETURN "SUMMER2022" BREAK
|
|
CASE DLC_PACK_MP_SUM2_G9EC RETURN "SUMMER2022_G9EC" BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Grab the dlcName attribute string found in shop meta:
|
|
/// //gta5_dlc/mpPacks/mpBeach/build/dev_ng/common/data/mp_m_freemode_01_beach_shop.meta
|
|
FUNC STRING GET_SHOP_PED_APPAREL_DLC_NAME(DLC_PACK_ENUM eDLCPack, MODEL_NAMES eModel)
|
|
|
|
IF eModel = MP_M_FREEMODE_01
|
|
SWITCH eDLCPack
|
|
CASE DLC_PACK_MP_BEACH RETURN "male_freemode_beach" BREAK
|
|
CASE DLC_PACK_MP_XMAS RETURN "male_xmas" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES RETURN "male_freemode_valentines" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS RETURN "male_freemode_business" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS2 RETURN "male_freemode_business2" BREAK
|
|
CASE DLC_PACK_MP_HIPSTER RETURN "male_freemode_hipster" BREAK
|
|
CASE DLC_PACK_MP_INDEPENDENCE RETURN "male_freemode_independence" BREAK
|
|
CASE DLC_PACK_MP_PILOT RETURN "male_freemode_pilot" BREAK
|
|
CASE DLC_PACK_MP_LTS RETURN "male_freemode_mplts" BREAK
|
|
CASE DLC_PACK_MP_XMAS2 RETURN "male_xmas2" BREAK
|
|
CASE DLC_PACK_MP_HEIST RETURN "male_heist" BREAK
|
|
CASE DLC_PACK_MP_LUXE RETURN "mp_m_luxe_01" BREAK
|
|
CASE DLC_PACK_MP_LUXE2 RETURN "mp_m_luxe_02" BREAK
|
|
CASE DLC_PACK_MP_REPLAY RETURN "mp_m_htb_01" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER RETURN "mp_m_lowrider_01" BREAK
|
|
CASE DLC_PACK_MP_HALLOWEEN RETURN "male_freemode_halloween" BREAK
|
|
CASE DLC_PACK_MP_APARTMENT RETURN "male_apt01" BREAK
|
|
CASE DLC_PACK_MP_XMAS3 RETURN "mp_m_xmas_03" BREAK
|
|
CASE DLC_PACK_MP_JANUARY2016 RETURN "mp_m_january2016" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES2 RETURN "mp_m_valentines_02" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER2 RETURN "mp_m_lowrider_02" BREAK
|
|
CASE DLC_PACK_MP_EXECUTIVE RETURN "mp_m_executive_01" BREAK
|
|
CASE DLC_PACK_MP_STUNT RETURN "mp_m_stunt_01" BREAK
|
|
CASE DLC_PACK_MP_BIKER RETURN "mp_m_bikerdlc_01" BREAK
|
|
CASE DLC_PACK_MP_IMPORTEXPORT RETURN "mp_m_importexport_01" BREAK
|
|
CASE DLC_PACK_MP_GUNRUNNING RETURN "mp_m_gunrunning_01" BREAK
|
|
CASE DLC_PACK_MP_AIRRACES RETURN "mp_m_airraces_01" BREAK
|
|
CASE DLC_PACK_MP_SMUGGLER RETURN "mp_m_smuggler_01" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2017 RETURN "mp_m_christmas2017" BREAK
|
|
CASE DLC_PACK_MP_ASSAULT RETURN "mp_m_assault" BREAK
|
|
CASE DLC_PACK_MP_BATTLE RETURN "mp_m_battle" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2018 RETURN "mp_m_christmas2018" BREAK
|
|
CASE DLC_PACK_MP_VINEWOOD RETURN "mp_m_vinewood" BREAK
|
|
CASE DLC_PACK_MP_HEIST3 RETURN "mp_m_heist3" BREAK
|
|
CASE DLC_PACK_MP_SUM RETURN "mp_m_sum" BREAK
|
|
CASE DLC_PACK_MP_HEIST4 RETURN "mp_m_heist4" BREAK
|
|
CASE DLC_PACK_MP_TUNER RETURN "mp_m_tuner" BREAK
|
|
CASE DLC_PACK_MP_FIXER RETURN "mp_m_security" BREAK
|
|
CASE DLC_PACK_MP_G9EC RETURN "mp_m_g9ec" BREAK
|
|
CASE DLC_PACK_MP_SUM2 RETURN "mp_m_sum2" BREAK
|
|
CASE DLC_PACK_MP_SUM2_G9EC RETURN "mp_m_sum2_g9ec" BREAK
|
|
ENDSWITCH
|
|
ELIF eModel = MP_F_FREEMODE_01
|
|
SWITCH eDLCPack
|
|
CASE DLC_PACK_MP_BEACH RETURN "female_freemode_beach" BREAK
|
|
CASE DLC_PACK_MP_XMAS RETURN "female_xmas" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES RETURN "female_freemode_valentines" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS RETURN "female_freemode_business" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS2 RETURN "female_freemode_business2" BREAK
|
|
CASE DLC_PACK_MP_HIPSTER RETURN "female_freemode_hipster" BREAK
|
|
CASE DLC_PACK_MP_INDEPENDENCE RETURN "female_freemode_independence" BREAK
|
|
CASE DLC_PACK_MP_PILOT RETURN "female_freemode_pilot" BREAK
|
|
CASE DLC_PACK_MP_LTS RETURN "female_freemode_mplts" BREAK
|
|
CASE DLC_PACK_MP_XMAS2 RETURN "female_xmas2" BREAK
|
|
CASE DLC_PACK_MP_HEIST RETURN "female_heist" BREAK
|
|
CASE DLC_PACK_MP_LUXE RETURN "mp_f_luxe_01" BREAK
|
|
CASE DLC_PACK_MP_LUXE2 RETURN "mp_f_luxe_02" BREAK
|
|
CASE DLC_PACK_MP_REPLAY RETURN "mp_f_htb_01" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER RETURN "mp_f_lowrider_01" BREAK
|
|
CASE DLC_PACK_MP_HALLOWEEN RETURN "female_freemode_halloween" BREAK
|
|
CASE DLC_PACK_MP_APARTMENT RETURN "female_apt01" BREAK
|
|
CASE DLC_PACK_MP_XMAS3 RETURN "mp_f_xmas_03" BREAK
|
|
CASE DLC_PACK_MP_JANUARY2016 RETURN "mp_f_january2016" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES2 RETURN "mp_f_valentines_02" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER2 RETURN "mp_f_lowrider_02" BREAK
|
|
CASE DLC_PACK_MP_EXECUTIVE RETURN "mp_f_executive_01" BREAK
|
|
CASE DLC_PACK_MP_STUNT RETURN "mp_f_stunt_01" BREAK
|
|
CASE DLC_PACK_MP_BIKER RETURN "mp_f_bikerdlc_01" BREAK
|
|
CASE DLC_PACK_MP_IMPORTEXPORT RETURN "mp_f_importexport_01" BREAK
|
|
CASE DLC_PACK_MP_GUNRUNNING RETURN "mp_f_gunrunning_01" BREAK
|
|
CASE DLC_PACK_MP_AIRRACES RETURN "mp_f_airraces_01" BREAK
|
|
CASE DLC_PACK_MP_SMUGGLER RETURN "mp_f_smuggler_01" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2017 RETURN "mp_f_christmas2017" BREAK
|
|
CASE DLC_PACK_MP_ASSAULT RETURN "mp_f_assault" BREAK
|
|
CASE DLC_PACK_MP_BATTLE RETURN "mp_f_battle" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2018 RETURN "mp_f_christmas2018" BREAK
|
|
CASE DLC_PACK_MP_VINEWOOD RETURN "mp_f_vinewood" BREAK
|
|
CASE DLC_PACK_MP_HEIST3 RETURN "mp_f_heist3" BREAK
|
|
CASE DLC_PACK_MP_SUM RETURN "mp_f_sum" BREAK
|
|
CASE DLC_PACK_MP_HEIST4 RETURN "mp_f_heist4" BREAK
|
|
CASE DLC_PACK_MP_TUNER RETURN "mp_f_tuner" BREAK
|
|
CASE DLC_PACK_MP_FIXER RETURN "mp_f_security" BREAK
|
|
CASE DLC_PACK_MP_G9EC RETURN "mp_f_g9ec" BREAK
|
|
CASE DLC_PACK_MP_SUM2 RETURN "mp_f_sum2" BREAK
|
|
CASE DLC_PACK_MP_SUM2_G9EC RETURN "mp_f_sum2_g9ec" BREAK
|
|
ENDSWITCH
|
|
ELSE
|
|
SWITCH eDLCPack
|
|
CASE DLC_PACK_MP_BEACH RETURN "mpBeach" BREAK
|
|
CASE DLC_PACK_MP_XMAS RETURN "mpChristmas" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES RETURN "mpValentines" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS RETURN "mpBusiness" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS2 RETURN "mpBusiness2" BREAK
|
|
CASE DLC_PACK_MP_HIPSTER RETURN "mpHipster" BREAK
|
|
CASE DLC_PACK_MP_INDEPENDENCE RETURN "mpIndependence" BREAK
|
|
CASE DLC_PACK_MP_PILOT RETURN "mpPilot" BREAK
|
|
CASE DLC_PACK_MP_LTS RETURN "mpLTS" BREAK
|
|
CASE DLC_PACK_MP_XMAS2 RETURN "mpChristmas2" BREAK
|
|
CASE DLC_PACK_MP_HEIST RETURN "mpHeist" BREAK
|
|
CASE DLC_PACK_MP_LUXE RETURN "mpLuxe" BREAK
|
|
CASE DLC_PACK_MP_LUXE2 RETURN "mpLuxe2" BREAK
|
|
CASE DLC_PACK_MP_REPLAY RETURN "mpReplay" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER RETURN "mpLowrider" BREAK
|
|
CASE DLC_PACK_MP_HALLOWEEN RETURN "mpHalloween" BREAK
|
|
CASE DLC_PACK_MP_APARTMENT RETURN "mpApartment" BREAK
|
|
CASE DLC_PACK_MP_XMAS3 RETURN "mpxmas_604490" BREAK
|
|
CASE DLC_PACK_MP_JANUARY2016 RETURN "mpJanuary2016" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES2 RETURN "mpValentines" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER2 RETURN "mpLowrider2" BREAK
|
|
CASE DLC_PACK_MP_EXECUTIVE RETURN "mpExecutive" BREAK
|
|
CASE DLC_PACK_MP_STUNT RETURN "mpStunt" BREAK
|
|
CASE DLC_PACK_MP_BIKER RETURN "mpBiker" BREAK
|
|
CASE DLC_PACK_MP_IMPORTEXPORT RETURN "mpImportExport" BREAK
|
|
CASE DLC_PACK_MP_GUNRUNNING RETURN "mpGunrunning" BREAK
|
|
CASE DLC_PACK_MP_AIRRACES RETURN "mpAirraces" BREAK
|
|
CASE DLC_PACK_MP_SMUGGLER RETURN "mpSmuggler" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2017 RETURN "mpChristmas2017" BREAK
|
|
CASE DLC_PACK_MP_ASSAULT RETURN "mpAssault" BREAK
|
|
CASE DLC_PACK_MP_BATTLE RETURN "mpBattle" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2018 RETURN "mpChristmas2018" BREAK
|
|
CASE DLC_PACK_MP_VINEWOOD RETURN "mpVinewood" BREAK
|
|
CASE DLC_PACK_MP_HEIST3 RETURN "mpHeist3" BREAK
|
|
CASE DLC_PACK_MP_SUM RETURN "mpSum" BREAK
|
|
CASE DLC_PACK_MP_HEIST4 RETURN "mpHeist4" BREAK
|
|
CASE DLC_PACK_MP_TUNER RETURN "mpTuner" BREAK
|
|
CASE DLC_PACK_MP_FIXER RETURN "mpSecurity" BREAK
|
|
CASE DLC_PACK_MP_G9EC RETURN "mpG9EC" BREAK
|
|
CASE DLC_PACK_MP_SUM2 RETURN "mpSum2" BREAK
|
|
CASE DLC_PACK_MP_SUM2_G9EC RETURN "mpSum2_g9ec" BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
FUNC STRING GET_SHOP_PED_APPAREL_PREFIX(DLC_PACK_ENUM eDLCPack)
|
|
|
|
SWITCH eDLCPack
|
|
CASE DLC_PACK_MP_BEACH RETURN "DLC_MP_BEACH" BREAK
|
|
CASE DLC_PACK_MP_XMAS RETURN "DLC_MP_XMAS" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES RETURN "DLC_MP_VAL" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS RETURN "DLC_MP_BUSI" BREAK
|
|
CASE DLC_PACK_MP_BUSINESS2 RETURN "DLC_MP_BUS2" BREAK
|
|
CASE DLC_PACK_MP_HIPSTER RETURN "DLC_MP_HIPS" BREAK
|
|
CASE DLC_PACK_MP_INDEPENDENCE RETURN "DLC_MP_IND" BREAK
|
|
CASE DLC_PACK_MP_PILOT RETURN "DLC_MP_PILOT" BREAK
|
|
CASE DLC_PACK_MP_LTS RETURN "DLC_MP_LTS" BREAK
|
|
CASE DLC_PACK_MP_XMAS2 RETURN "DLC_MP_XMAS2" BREAK
|
|
CASE DLC_PACK_MP_HEIST RETURN "DLC_MP_HEIST" BREAK
|
|
CASE DLC_PACK_MP_LUXE RETURN "DLC_MP_LUXE" BREAK
|
|
CASE DLC_PACK_MP_LUXE2 RETURN "DLC_MP_LUXE2" BREAK
|
|
CASE DLC_PACK_MP_REPLAY RETURN "DLC_MP_REPLAY" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER RETURN "DLC_MP_LOW" BREAK
|
|
CASE DLC_PACK_MP_HALLOWEEN RETURN "DLC_MP_HALLOWEEN" BREAK
|
|
CASE DLC_PACK_MP_APARTMENT RETURN "DLC_MP_APA" BREAK
|
|
CASE DLC_PACK_MP_XMAS3 RETURN "DLC_MP_XMAS3" BREAK
|
|
CASE DLC_PACK_MP_JANUARY2016 RETURN "DLC_MP_JAN" BREAK
|
|
CASE DLC_PACK_MP_VALENTINES2 RETURN "DLC_MP_VAL2" BREAK
|
|
CASE DLC_PACK_MP_LOWRIDER2 RETURN "DLC_MP_LOW2" BREAK
|
|
CASE DLC_PACK_MP_EXECUTIVE RETURN "DLC_MP_EXEC" BREAK
|
|
CASE DLC_PACK_MP_STUNT RETURN "DLC_MP_STUNT" BREAK
|
|
CASE DLC_PACK_MP_BIKER RETURN "DLC_MP_BIKER" BREAK
|
|
CASE DLC_PACK_MP_IMPORTEXPORT RETURN "DLC_MP_IE" BREAK
|
|
CASE DLC_PACK_MP_GUNRUNNING RETURN "DLC_MP_GR" BREAK
|
|
CASE DLC_PACK_MP_AIRRACES RETURN "DLC_MP_AR" BREAK
|
|
CASE DLC_PACK_MP_SMUGGLER RETURN "DLC_MP_SMUG" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2017 RETURN "DLC_MP_X17" BREAK
|
|
CASE DLC_PACK_MP_ASSAULT RETURN "DLC_MP_ASS" BREAK
|
|
CASE DLC_PACK_MP_BATTLE RETURN "DLC_MP_BH" BREAK
|
|
CASE DLC_PACK_MP_CHRISTMAS2018 RETURN "DLC_MP_ARENA" BREAK
|
|
CASE DLC_PACK_MP_VINEWOOD RETURN "DLC_MP_VWD" BREAK
|
|
CASE DLC_PACK_MP_HEIST3 RETURN "DLC_MP_H3" BREAK
|
|
CASE DLC_PACK_MP_SUM RETURN "DLC_MP_SUM" BREAK
|
|
CASE DLC_PACK_MP_HEIST4 RETURN "DLC_MP_H4" BREAK
|
|
CASE DLC_PACK_MP_TUNER RETURN "DLC_MP_TUNER" BREAK
|
|
CASE DLC_PACK_MP_FIXER RETURN "DLC_MP_FIXER" BREAK
|
|
CASE DLC_PACK_MP_G9EC RETURN "DLC_MP_G9EC" BREAK
|
|
CASE DLC_PACK_MP_SUM2 RETURN "DLC_MP_SUM2" BREAK
|
|
CASE DLC_PACK_MP_SUM2_G9EC RETURN "DLC_MP_SUM2_G9EC" BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_DLC_PACK_NAME_FROM_HASH(INT iPackHash, TEXT_LABEL_63 &t, BOOL bDisplayName = TRUE)
|
|
t = ""
|
|
|
|
IF NOT bDisplayName
|
|
SWITCH iPackHash
|
|
CASE HASH("Female_freemode_beach") t = "Female_freemode_beach" BREAK
|
|
CASE HASH("Male_freemode_beach") t = "Male_freemode_beach" BREAK
|
|
CASE HASH("female_xmas") t = "female_xmas" BREAK
|
|
CASE HASH("male_xmas") t = "male_xmas" BREAK
|
|
CASE HASH("Male_freemode_valentines") t = "Male_freemode_valentines" BREAK
|
|
CASE HASH("Female_freemode_valentines") t = "Female_freemode_valentines" BREAK
|
|
CASE HASH("Female_freemode_business") t = "Female_freemode_business" BREAK
|
|
CASE HASH("Male_freemode_business") t = "Male_freemode_business" BREAK
|
|
CASE HASH("Female_freemode_business2") t = "Female_freemode_business2" BREAK
|
|
CASE HASH("Male_freemode_business2") t = "Male_freemode_business2" BREAK
|
|
CASE HASH("Female_freemode_hipster") t = "Female_freemode_hipster" BREAK
|
|
CASE HASH("Male_freemode_hipster") t = "Male_freemode_hipster" BREAK
|
|
CASE HASH("Female_freemode_independence") t = "Female_freemode_independence" BREAK
|
|
CASE HASH("Male_freemode_independence") t = "Male_freemode_independence" BREAK
|
|
CASE HASH("Female_freemode_pilot") t = "Female_freemode_pilot" BREAK
|
|
CASE HASH("Male_freemode_pilot") t = "Male_freemode_pilot" BREAK
|
|
CASE HASH("Female_freemode_mpLTS") t = "Female_freemode_mpLTS" BREAK
|
|
CASE HASH("Male_freemode_mpLTS") t = "Male_freemode_mpLTS" BREAK
|
|
CASE HASH("female_xmas2") t = "female_xmas2" BREAK
|
|
CASE HASH("male_xmas2") t = "male_xmas2" BREAK
|
|
CASE HASH("Male_heist") t = "Male_heist" BREAK
|
|
CASE HASH("Female_heist") t = "Female_heist" BREAK
|
|
CASE HASH("mp_f_luxe_01") t = "mp_f_luxe_01" BREAK
|
|
CASE HASH("mp_m_luxe_01") t = "mp_m_luxe_01" BREAK
|
|
CASE HASH("mp_f_luxe_02") t = "mp_f_luxe_02" BREAK
|
|
CASE HASH("mp_m_luxe_02") t = "mp_m_luxe_02" BREAK
|
|
CASE HASH("mp_m_htb_01") t = "mp_m_htb_01" BREAK
|
|
CASE HASH("mp_f_htb_01") t = "mp_f_htb_01" BREAK
|
|
CASE HASH("male_freemode_halloween") t = "male_freemode_halloween" BREAK
|
|
CASE HASH("Female_freemode_halloween") t = "Female_freemode_halloween" BREAK
|
|
CASE HASH("mp_m_lowrider_01") t = "mp_m_lowrider_01" BREAK
|
|
CASE HASH("mp_f_lowrider_01") t = "mp_f_lowrider_01" BREAK
|
|
CASE HASH("male_apt01") t = "male_apt01" BREAK
|
|
CASE HASH("female_apt01") t = "female_apt01" BREAK
|
|
CASE HASH("mp_m_xmas_03") t = "mp_m_xmas_03" BREAK
|
|
CASE HASH("mp_f_xmas_03") t = "mp_f_xmas_03" BREAK
|
|
CASE HASH("mp_f_January2016") t = "mp_f_January2016" BREAK
|
|
CASE HASH("mp_m_January2016") t = "mp_m_January2016" BREAK
|
|
CASE HASH("mp_m_Valentines_02") t = "mp_m_Valentines_02" BREAK
|
|
CASE HASH("mp_f_Valentines_02") t = "mp_f_Valentines_02" BREAK
|
|
CASE HASH("mp_f_lowrider_02") t = "mp_f_lowrider_02" BREAK
|
|
CASE HASH("mp_m_lowrider_02") t = "mp_m_lowrider_02" BREAK
|
|
CASE HASH("mp_f_executive_01") t = "mp_f_executive_01" BREAK
|
|
CASE HASH("mp_m_executive_01") t = "mp_m_executive_01" BREAK
|
|
CASE HASH("mp_f_stunt_01") t = "mp_f_stunt_01" BREAK
|
|
CASE HASH("mp_m_stunt_01") t = "mp_m_stunt_01" BREAK
|
|
CASE HASH("mp_f_bikerdlc_01") t = "mp_f_bikerdlc_01" BREAK
|
|
CASE HASH("mp_m_bikerdlc_01") t = "mp_m_bikerdlc_01" BREAK
|
|
CASE HASH("mp_f_importexport_01") t = "mp_f_importexport_01" BREAK
|
|
CASE HASH("mp_m_importexport_01") t = "mp_m_importexport_01" BREAK
|
|
CASE HASH("mp_f_gunrunning_01") t = "mp_f_gunrunning_01" BREAK
|
|
CASE HASH("mp_m_gunrunning_01") t = "mp_m_gunrunning_01" BREAK
|
|
CASE HASH("mp_f_airraces_01") t = "mp_f_airraces_01" BREAK
|
|
CASE HASH("mp_m_airraces_01") t = "mp_m_airraces_01" BREAK
|
|
CASE HASH("mp_f_smuggler_01") t = "mp_f_smuggler_01" BREAK
|
|
CASE HASH("mp_m_smuggler_01") t = "mp_m_smuggler_01" BREAK
|
|
CASE HASH("mp_m_christmas2017") t = "mp_m_christmas2017" BREAK
|
|
CASE HASH("mp_f_christmas2017") t = "mp_f_christmas2017" BREAK
|
|
CASE HASH("mp_m_assault") t = "mp_m_assault" BREAK
|
|
CASE HASH("mp_f_assault") t = "mp_f_assault" BREAK
|
|
CASE HASH("mp_m_battle") t = "mp_m_battle" BREAK
|
|
CASE HASH("mp_f_battle") t = "mp_f_battle" BREAK
|
|
CASE HASH("mp_m_christmas2018") t = "mp_m_christmas2018" BREAK
|
|
CASE HASH("mp_f_christmas2018") t = "mp_f_christmas2018" BREAK
|
|
CASE HASH("mp_m_vinewood") t = "mp_m_vinewood" BREAK
|
|
CASE HASH("mp_f_vinewood") t = "mp_f_vinewood" BREAK
|
|
CASE HASH("mp_m_Heist3") t = "mp_m_Heist3" BREAK
|
|
CASE HASH("mp_f_Heist3") t = "mp_f_Heist3" BREAK
|
|
CASE HASH("mp_m_sum") t = "mp_m_sum" BREAK
|
|
CASE HASH("mp_f_sum") t = "mp_f_sum" BREAK
|
|
CASE HASH("mp_m_heist4") t = "mp_m_heist4" BREAK
|
|
CASE HASH("mp_f_heist4") t = "mp_f_heist4" BREAK
|
|
CASE HASH("mp_m_tuner") t = "mp_m_tuner" BREAK
|
|
CASE HASH("mp_f_tuner") t = "mp_f_tuner" BREAK
|
|
CASE HASH("mp_m_security") t = "mp_m_security" BREAK
|
|
CASE HASH("mp_f_security") t = "mp_f_security" BREAK
|
|
CASE HASH("mp_m_g9ec") t = "mp_m_g9ec" BREAK
|
|
CASE HASH("mp_f_g9ec") t = "mp_f_g9ec" BREAK
|
|
CASE HASH("mp_m_sum2") t = "mp_m_sum2" BREAK
|
|
CASE HASH("mp_f_sum2") t = "mp_f_sum2" BREAK
|
|
CASE HASH("mp_m_sum2_g9ec") t = "mp_m_sum2_g9ec" BREAK
|
|
CASE HASH("mp_f_sum2_g9ec") t = "mp_f_sum2_g9ec" BREAK
|
|
ENDSWITCH
|
|
ELSE
|
|
SWITCH iPackHash
|
|
CASE HASH("Female_freemode_beach") t = "Beach Bum" BREAK
|
|
CASE HASH("Male_freemode_beach") t = "Beach Bum" BREAK
|
|
CASE HASH("female_xmas") t = "Christmas" BREAK
|
|
CASE HASH("male_xmas") t = "Christmas" BREAK
|
|
CASE HASH("Male_freemode_valentines") t = "Valentines" BREAK
|
|
CASE HASH("Female_freemode_valentines") t = "Valentines" BREAK
|
|
CASE HASH("Female_freemode_business") t = "Business" BREAK
|
|
CASE HASH("Male_freemode_business") t = "Business" BREAK
|
|
CASE HASH("Female_freemode_business2") t = "High-Life" BREAK
|
|
CASE HASH("Male_freemode_business2") t = "High-Life" BREAK
|
|
CASE HASH("Female_freemode_hipster") t = "Hipster" BREAK
|
|
CASE HASH("Male_freemode_hipster") t = "Hipster" BREAK
|
|
CASE HASH("Female_freemode_independence") t = "Independence" BREAK
|
|
CASE HASH("Male_freemode_independence") t = "Independence" BREAK
|
|
CASE HASH("Female_freemode_pilot") t = "Flight School" BREAK
|
|
CASE HASH("Male_freemode_pilot") t = "Flight School" BREAK
|
|
CASE HASH("Female_freemode_mpLTS") t = "LTS Creator" BREAK
|
|
CASE HASH("Male_freemode_mpLTS") t = "LTS Creator" BREAK
|
|
CASE HASH("female_xmas2") t = "Christmas 2014" BREAK
|
|
CASE HASH("male_xmas2") t = "Christmas 2014" BREAK
|
|
CASE HASH("Male_heist") t = "Heists" BREAK
|
|
CASE HASH("Female_heist") t = "Heists" BREAK
|
|
CASE HASH("mp_f_luxe_01") t = "Luxe 1" BREAK
|
|
CASE HASH("mp_m_luxe_01") t = "Luxe 1" BREAK
|
|
CASE HASH("mp_f_luxe_02") t = "Luxe 2" BREAK
|
|
CASE HASH("mp_m_luxe_02") t = "Luxe 2" BREAK
|
|
CASE HASH("mp_m_htb_01") t = "Replay Editor" BREAK
|
|
CASE HASH("mp_f_htb_01") t = "Replay Editor" BREAK
|
|
CASE HASH("male_freemode_halloween") t = "Halloween" BREAK
|
|
CASE HASH("Female_freemode_halloween") t = "Halloween" BREAK
|
|
CASE HASH("mp_m_lowrider_01") t = "Lowriders" BREAK
|
|
CASE HASH("mp_f_lowrider_01") t = "Lowriders" BREAK
|
|
CASE HASH("male_apt01") t = "Apartment" BREAK
|
|
CASE HASH("female_apt01") t = "Apartment" BREAK
|
|
CASE HASH("mp_m_xmas_03") t = "Christmas 2015" BREAK
|
|
CASE HASH("mp_f_xmas_03") t = "Christmas 2015" BREAK
|
|
CASE HASH("mp_f_January2016") t = "January" BREAK
|
|
CASE HASH("mp_m_January2016") t = "January" BREAK
|
|
CASE HASH("mp_m_Valentines_02") t = "Valentines 2016" BREAK
|
|
CASE HASH("mp_f_Valentines_02") t = "Valentines 2016" BREAK
|
|
CASE HASH("mp_f_lowrider_02") t = "Lowriders 2" BREAK
|
|
CASE HASH("mp_m_lowrider_02") t = "Lowriders 2" BREAK
|
|
CASE HASH("mp_f_executive_01") t = "Executive" BREAK
|
|
CASE HASH("mp_m_executive_01") t = "Executive" BREAK
|
|
CASE HASH("mp_f_stunt_01") t = "Stunt" BREAK
|
|
CASE HASH("mp_m_stunt_01") t = "Stunt" BREAK
|
|
CASE HASH("mp_f_bikerdlc_01") t = "Bikers" BREAK
|
|
CASE HASH("mp_m_bikerdlc_01") t = "Bikers" BREAK
|
|
CASE HASH("mp_f_importexport_01") t = "Import/Export" BREAK
|
|
CASE HASH("mp_m_importexport_01") t = "Import/Export" BREAK
|
|
CASE HASH("mp_f_gunrunning_01") t = "Gunrunning" BREAK
|
|
CASE HASH("mp_m_gunrunning_01") t = "Gunrunning" BREAK
|
|
CASE HASH("mp_f_airraces_01") t = "Air Races" BREAK
|
|
CASE HASH("mp_m_airraces_01") t = "Air Races" BREAK
|
|
CASE HASH("mp_f_smuggler_01") t = "Smuggler" BREAK
|
|
CASE HASH("mp_m_smuggler_01") t = "Smuggler" BREAK
|
|
CASE HASH("mp_m_christmas2017") t = "Christmas 2017" BREAK
|
|
CASE HASH("mp_f_christmas2017") t = "Christmas 2017" BREAK
|
|
CASE HASH("mp_m_assault") t = "SSASSS" BREAK
|
|
CASE HASH("mp_f_assault") t = "SSASSS" BREAK
|
|
CASE HASH("mp_m_battle") t = "Business Battles" BREAK
|
|
CASE HASH("mp_f_battle") t = "Business Battles" BREAK
|
|
CASE HASH("mp_m_christmas2018") t = "Christmas 2018" BREAK
|
|
CASE HASH("mp_f_christmas2018") t = "Christmas 2018" BREAK
|
|
CASE HASH("mp_m_vinewood") t = "Vinewood" BREAK
|
|
CASE HASH("mp_f_vinewood") t = "Vinewood" BREAK
|
|
CASE HASH("mp_m_Heist3") t = "Casino Heist" BREAK
|
|
CASE HASH("mp_f_Heist3") t = "Casino Heist" BREAK
|
|
CASE HASH("mp_m_sum") t = "Summer 2020" BREAK
|
|
CASE HASH("mp_f_sum") t = "Summer 2020" BREAK
|
|
CASE HASH("mp_m_heist4") t = "Island Heist" BREAK
|
|
CASE HASH("mp_f_heist4") t = "Island Heist" BREAK
|
|
CASE HASH("mp_m_tuner") t = "Tuner" BREAK
|
|
CASE HASH("mp_f_tuner") t = "Tuner" BREAK
|
|
CASE HASH("mp_m_security") t = "Fixer" BREAK
|
|
CASE HASH("mp_f_security") t = "Fixer" BREAK
|
|
CASE HASH("mp_m_g9ec") t = "Gen9EC" BREAK
|
|
CASE HASH("mp_f_g9ec") t = "Gen9EC" BREAK
|
|
CASE HASH("mp_m_sum2") t = "Summer 2022" BREAK
|
|
CASE HASH("mp_f_sum2") t = "Summer 2022" BREAK
|
|
CASE HASH("mp_m_sum2_g9ec") t = "Summer 2022 G9EC" BREAK
|
|
CASE HASH("mp_f_sum2_g9ec") t = "Summer 2022 G9EC" BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
SWITCH iPackHash
|
|
CASE HASH("mpAirraces_overlays") t = "mpAirraces_overlays" BREAK
|
|
CASE HASH("mpArmy_overlays") t = "mpArmy_overlays" BREAK
|
|
CASE HASH("mpBattle_overlays") t = "mpBattle_overlays" BREAK
|
|
CASE HASH("mpBeach_overlays") t = "mpBeach_overlays" BREAK
|
|
CASE HASH("mpBiker_overlays") t = "mpBiker_overlays" BREAK
|
|
CASE HASH("mpBusiness_overlays") t = "mpBusiness_overlays" BREAK
|
|
CASE HASH("mpChristmas2_overlays") t = "mpChristmas2_overlays" BREAK
|
|
CASE HASH("mpChristmas2017_overlays") t = "mpChristmas2017_overlays" BREAK
|
|
CASE HASH("mpChristmas2018_overlays") t = "mpChristmas2018_overlays" BREAK
|
|
CASE HASH("mpExecutive_overlays") t = "mpExecutive_overlays" BREAK
|
|
CASE HASH("mpGunrunning_overlays") t = "mpGunrunning_overlays" BREAK
|
|
CASE HASH("mpHeist_overlays") t = "mpHeist_overlays" BREAK
|
|
CASE HASH("mpHeist3_overlays") t = "mpHeist3_overlays" BREAK
|
|
CASE HASH("mpHeist4_overlays") t = "mpHeist4_overlays" BREAK
|
|
CASE HASH("mpHipster_overlays") t = "mpHipster_overlays" BREAK
|
|
CASE HASH("mpImportExport_overlays") t = "mpImportExport_overlays" BREAK
|
|
CASE HASH("mpIndependance_overlays") t = "mpIndependance_overlays" BREAK
|
|
CASE HASH("mpLowrider_overlays") t = "mpLowrider_overlays" BREAK
|
|
CASE HASH("mpLowrider2_overlays") t = "mpLowrider2_overlays" BREAK
|
|
CASE HASH("mpLTS_overlays") t = "mpLTS_overlays" BREAK
|
|
CASE HASH("mpLuxe_overlays") t = "mpLuxe_overlays" BREAK
|
|
CASE HASH("mpLuxe2_overlays") t = "mpLuxe2_overlays" BREAK
|
|
CASE HASH("mpPilot_overlays") t = "mpPilot_overlays" BREAK
|
|
CASE HASH("mpSecurity_overlays") t = "mpSecurity_overlays" BREAK
|
|
CASE HASH("mpSmuggler_overlays") t = "mpSmuggler_overlays" BREAK
|
|
CASE HASH("mpSports_overlays") t = "mpSports_overlays" BREAK
|
|
CASE HASH("mpStunt_overlays") t = "mpStunt_overlays" BREAK
|
|
CASE HASH("mpSum_overlays") t = "mpSum_overlays" BREAK
|
|
CASE HASH("mpTuner_overlays") t = "mpTuner_overlays" BREAK
|
|
CASE HASH("mpValentines_overlays") t = "mpValentines_overlays" BREAK
|
|
CASE HASH("mpVinewood_overlays") t = "mpVinewood_overlays" BREAK
|
|
CASE HASH("mpxmas_604490_overlays") t = "mpxmas_604490_overlays" BREAK
|
|
CASE HASH("mpSum2_overlays") t = "mpSum2_overlays" BREAK
|
|
CASE HASH("mpDummy") t = "mpDummy" BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN (NOT IS_STRING_NULL_OR_EMPTY(t))
|
|
ENDFUNC
|
|
|
|
FUNC STRING GET_DLC_CONTENT_LOCK_NAME_FROM_HASH(INT iLockHash)
|
|
SWITCH iLockHash
|
|
CASE HASH("CU_AIRRACE_CLOTHES") RETURN "CU_AIRRACE_CLOTHES" BREAK
|
|
CASE HASH("CU_CNC_CLOTHES") RETURN "CU_CNC_CLOTHES" BREAK
|
|
CASE HASH("CU_ARC1_CLOTHES") RETURN "CU_ARC1_CLOTHES" BREAK
|
|
CASE HASH("CU_ARC1_MASKS") RETURN "CU_ARC1_MASKS" BREAK
|
|
CASE HASH("CU_BIKER_CLOTHES") RETURN "CU_BIKER_CLOTHES" BREAK
|
|
CASE HASH("CU_GANGOPS_CLOTHES") RETURN "CU_GANGOPS_CLOTHES" BREAK
|
|
CASE HASH("CU_XMAS5_CLOTHES") RETURN "CU_XMAS5_CLOTHES" BREAK
|
|
CASE HASH("CU_XMAS5_MASKS") RETURN "CU_XMAS5_MASKS" BREAK
|
|
CASE HASH("CU_XMAS6_CLOTHES") RETURN "CU_XMAS6_CLOTHES" BREAK
|
|
CASE HASH("CU_ARENA_CLOTHES") RETURN "CU_ARENA_CLOTHES" BREAK
|
|
CASE HASH("CU_EXE_CLOTHES") RETURN "CU_EXE_CLOTHES" BREAK
|
|
CASE HASH("CU_EXE_TATTOOS") RETURN "CU_EXE_TATTOOS" BREAK
|
|
CASE HASH("CU_GEN9EC_CLOTHES") RETURN "CU_GEN9EC_CLOTHES" BREAK
|
|
CASE HASH("CU_GUNRUN_CLOTHES") RETURN "CU_GUNRUN_CLOTHES" BREAK
|
|
CASE HASH("CU_HEIST3_CLOTHES") RETURN "CU_HEIST3_CLOTHES" BREAK
|
|
CASE HASH("CU_HEIST3_MASKS") RETURN "CU_HEIST3_MASKS" BREAK
|
|
CASE HASH("CU_HEIST4_CLOTHES") RETURN "CU_HEIST4_CLOTHES" BREAK
|
|
CASE HASH("CU_HEIST4_MASKS") RETURN "CU_HEIST4_MASKS" BREAK
|
|
CASE HASH("CU_IMPEXP_CLOTHES") RETURN "CU_IMPEXP_CLOTHES" BREAK
|
|
CASE HASH("CU_XMAS4_CLOTHES") RETURN "CU_XMAS4_CLOTHES" BREAK
|
|
CASE HASH("CU_XMAS4_MASKS") RETURN "CU_XMAS4_MASKS" BREAK
|
|
CASE HASH("CU_FIXER_CLOTHES") RETURN "CU_FIXER_CLOTHES" BREAK
|
|
CASE HASH("CU_FIXER_MASKS") RETURN "CU_FIXER_MASKS" BREAK
|
|
CASE HASH("CU_SMUG_CLOTHES") RETURN "CU_SMUG_CLOTHES" BREAK
|
|
CASE HASH("CU_STUNT_CLOTHES") RETURN "CU_STUNT_CLOTHES" BREAK
|
|
CASE HASH("CU_SUM_CLOTHES") RETURN "CU_SUM_CLOTHES" BREAK
|
|
CASE HASH("CU_SUM_MASKS") RETURN "CU_SUM_MASKS" BREAK
|
|
CASE HASH("CU_SUM2_CLOTHES") RETURN "CU_SUM2_CLOTHES" BREAK
|
|
CASE HASH("CU_SUM2_MASKS") RETURN "CU_SUM2_MASKS" BREAK
|
|
CASE HASH("CU_TUNER_CLOTHES") RETURN "CU_TUNER_CLOTHES" BREAK
|
|
CASE HASH("CU_TUNER_MASKS") RETURN "CU_TUNER_MASKS" BREAK
|
|
CASE HASH("CU_VINEWOOD_CLOTHES") RETURN "CU_VINEWOOD_CLOTHES" BREAK
|
|
CASE HASH("CU_VINEWOOD_MASKS") RETURN "CU_VINEWOOD_MASKS" BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
PROC GET_PED_SAVE_DATA_FROM_ATTRIBUTE_1(INT iAttributeHash, INT iAttribute)
|
|
SWITCH iAttributeHash
|
|
CASE HASH("model") g_DebugPedSaveData.ePedModel = INT_TO_ENUM(MODEL_NAMES, GET_HASH_KEY(GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute))) BREAK
|
|
|
|
CASE HASH("CompDraw0") g_DebugPedSaveData.iCompDraw[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw1") g_DebugPedSaveData.iCompDraw[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw2") g_DebugPedSaveData.iCompDraw[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw3") g_DebugPedSaveData.iCompDraw[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw4") g_DebugPedSaveData.iCompDraw[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw5") g_DebugPedSaveData.iCompDraw[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw6") g_DebugPedSaveData.iCompDraw[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw7") g_DebugPedSaveData.iCompDraw[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw8") g_DebugPedSaveData.iCompDraw[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw9") g_DebugPedSaveData.iCompDraw[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw10") g_DebugPedSaveData.iCompDraw[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompDraw11") g_DebugPedSaveData.iCompDraw[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("CompTex0") g_DebugPedSaveData.iCompTex[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex1") g_DebugPedSaveData.iCompTex[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex2") g_DebugPedSaveData.iCompTex[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex3") g_DebugPedSaveData.iCompTex[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex4") g_DebugPedSaveData.iCompTex[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex5") g_DebugPedSaveData.iCompTex[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex6") g_DebugPedSaveData.iCompTex[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex7") g_DebugPedSaveData.iCompTex[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex8") g_DebugPedSaveData.iCompTex[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex9") g_DebugPedSaveData.iCompTex[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex10") g_DebugPedSaveData.iCompTex[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("CompTex11") g_DebugPedSaveData.iCompTex[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("PropDraw0") g_DebugPedSaveData.iPropDraw[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw1") g_DebugPedSaveData.iPropDraw[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw2") g_DebugPedSaveData.iPropDraw[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw3") g_DebugPedSaveData.iPropDraw[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw4") g_DebugPedSaveData.iPropDraw[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw5") g_DebugPedSaveData.iPropDraw[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw6") g_DebugPedSaveData.iPropDraw[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw7") g_DebugPedSaveData.iPropDraw[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropDraw8") g_DebugPedSaveData.iPropDraw[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("PropTex0") g_DebugPedSaveData.iPropTex[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex1") g_DebugPedSaveData.iPropTex[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex2") g_DebugPedSaveData.iPropTex[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex3") g_DebugPedSaveData.iPropTex[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex4") g_DebugPedSaveData.iPropTex[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex5") g_DebugPedSaveData.iPropTex[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex6") g_DebugPedSaveData.iPropTex[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex7") g_DebugPedSaveData.iPropTex[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("PropTex8") g_DebugPedSaveData.iPropTex[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("m_head0") g_DebugPedSaveData.m_head0 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_head1") g_DebugPedSaveData.m_head1 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_head2") g_DebugPedSaveData.m_head2 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_tex0") g_DebugPedSaveData.m_tex0 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_tex1") g_DebugPedSaveData.m_tex1 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_tex2") g_DebugPedSaveData.m_tex2 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_headBlend") g_DebugPedSaveData.m_headBlend = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_texBlend") g_DebugPedSaveData.m_texBlend = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_varBlend") g_DebugPedSaveData.m_varBlend = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("m_isParent") g_DebugPedSaveData.m_isParent = GET_BOOL_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("iOverlayValue0") g_DebugPedSaveData.iOverlayValue[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend0") g_DebugPedSaveData.fOverlayBlend[0] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved0") g_DebugPedSaveData.iColourSaved[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved20") g_DebugPedSaveData.iColourSaved2[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour0") g_DebugPedSaveData.iColour[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType0") g_DebugPedSaveData.rtType[0] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue1") g_DebugPedSaveData.iOverlayValue[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend1") g_DebugPedSaveData.fOverlayBlend[1] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved1") g_DebugPedSaveData.iColourSaved[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved21") g_DebugPedSaveData.iColourSaved2[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour1") g_DebugPedSaveData.iColour[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType1") g_DebugPedSaveData.rtType[1] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue2") g_DebugPedSaveData.iOverlayValue[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend2") g_DebugPedSaveData.fOverlayBlend[2] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved2") g_DebugPedSaveData.iColourSaved[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved22") g_DebugPedSaveData.iColourSaved2[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour2") g_DebugPedSaveData.iColour[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType2") g_DebugPedSaveData.rtType[2] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue3") g_DebugPedSaveData.iOverlayValue[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend3") g_DebugPedSaveData.fOverlayBlend[3] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved3") g_DebugPedSaveData.iColourSaved[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved23") g_DebugPedSaveData.iColourSaved2[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour3") g_DebugPedSaveData.iColour[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType3") g_DebugPedSaveData.rtType[3] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue4") g_DebugPedSaveData.iOverlayValue[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend4") g_DebugPedSaveData.fOverlayBlend[4] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved4") g_DebugPedSaveData.iColourSaved[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved24") g_DebugPedSaveData.iColourSaved2[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour4") g_DebugPedSaveData.iColour[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType4") g_DebugPedSaveData.rtType[4] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue5") g_DebugPedSaveData.iOverlayValue[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend5") g_DebugPedSaveData.fOverlayBlend[5] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved5") g_DebugPedSaveData.iColourSaved[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved25") g_DebugPedSaveData.iColourSaved2[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour5") g_DebugPedSaveData.iColour[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType5") g_DebugPedSaveData.rtType[5] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue6") g_DebugPedSaveData.iOverlayValue[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend6") g_DebugPedSaveData.fOverlayBlend[6] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved6") g_DebugPedSaveData.iColourSaved[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved26") g_DebugPedSaveData.iColourSaved2[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour6") g_DebugPedSaveData.iColour[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType6") g_DebugPedSaveData.rtType[6] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue7") g_DebugPedSaveData.iOverlayValue[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend7") g_DebugPedSaveData.fOverlayBlend[7] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved7") g_DebugPedSaveData.iColourSaved[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved27") g_DebugPedSaveData.iColourSaved2[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour7") g_DebugPedSaveData.iColour[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType7") g_DebugPedSaveData.rtType[7] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue8") g_DebugPedSaveData.iOverlayValue[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend8") g_DebugPedSaveData.fOverlayBlend[8] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved8") g_DebugPedSaveData.iColourSaved[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved28") g_DebugPedSaveData.iColourSaved2[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour8") g_DebugPedSaveData.iColour[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType8") g_DebugPedSaveData.rtType[8] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue9") g_DebugPedSaveData.iOverlayValue[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend9") g_DebugPedSaveData.fOverlayBlend[9] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved9") g_DebugPedSaveData.iColourSaved[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved29") g_DebugPedSaveData.iColourSaved2[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour9") g_DebugPedSaveData.iColour[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType9") g_DebugPedSaveData.rtType[9] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue10") g_DebugPedSaveData.iOverlayValue[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend10") g_DebugPedSaveData.fOverlayBlend[10] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved10") g_DebugPedSaveData.iColourSaved[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved210") g_DebugPedSaveData.iColourSaved2[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour10") g_DebugPedSaveData.iColour[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType10") g_DebugPedSaveData.rtType[10] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue11") g_DebugPedSaveData.iOverlayValue[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend11") g_DebugPedSaveData.fOverlayBlend[11] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved11") g_DebugPedSaveData.iColourSaved[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved211") g_DebugPedSaveData.iColourSaved2[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour11") g_DebugPedSaveData.iColour[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType11") g_DebugPedSaveData.rtType[11] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iOverlayValue12") g_DebugPedSaveData.iOverlayValue[12] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fOverlayBlend12") g_DebugPedSaveData.fOverlayBlend[12] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved12") g_DebugPedSaveData.iColourSaved[12] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColourSaved212") g_DebugPedSaveData.iColourSaved2[12] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iColour12") g_DebugPedSaveData.iColour[12] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("rtType12") g_DebugPedSaveData.rtType[12] = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
ENDSWITCH
|
|
SWITCH iAttributeHash
|
|
CASE HASH("fMorphBlend0") g_DebugPedSaveData.fMorphBlend[0] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend1") g_DebugPedSaveData.fMorphBlend[1] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend2") g_DebugPedSaveData.fMorphBlend[2] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend3") g_DebugPedSaveData.fMorphBlend[3] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend4") g_DebugPedSaveData.fMorphBlend[4] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend5") g_DebugPedSaveData.fMorphBlend[5] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend6") g_DebugPedSaveData.fMorphBlend[6] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend7") g_DebugPedSaveData.fMorphBlend[7] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend8") g_DebugPedSaveData.fMorphBlend[8] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend9") g_DebugPedSaveData.fMorphBlend[9] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend10") g_DebugPedSaveData.fMorphBlend[10] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend11") g_DebugPedSaveData.fMorphBlend[11] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend12") g_DebugPedSaveData.fMorphBlend[12] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend13") g_DebugPedSaveData.fMorphBlend[13] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend14") g_DebugPedSaveData.fMorphBlend[14] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend15") g_DebugPedSaveData.fMorphBlend[15] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend16") g_DebugPedSaveData.fMorphBlend[16] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend17") g_DebugPedSaveData.fMorphBlend[17] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend18") g_DebugPedSaveData.fMorphBlend[18] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("fMorphBlend19") g_DebugPedSaveData.fMorphBlend[19] = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("fEyes") g_DebugPedSaveData.fEyes = GET_FLOAT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
|
|
CASE HASH("iHairTint1") g_DebugPedSaveData.iHairTint1 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("iHairTint2") g_DebugPedSaveData.iHairTint2 = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
ENDSWITCH
|
|
ENDPROC
|
|
PROC GET_PED_SAVE_DATA_FROM_ATTRIBUTE_2(INT iAttributeHash, INT iAttribute)
|
|
INT iValue = -1
|
|
SWITCH iAttributeHash
|
|
CASE HASH("tattoo0")
|
|
CASE HASH("tattoo1")
|
|
CASE HASH("tattoo2")
|
|
CASE HASH("tattoo3")
|
|
CASE HASH("tattoo4")
|
|
CASE HASH("tattoo5")
|
|
CASE HASH("tattoo6")
|
|
CASE HASH("tattoo7")
|
|
CASE HASH("tattoo8")
|
|
CASE HASH("tattoo9")
|
|
CASE HASH("tattoo10")
|
|
CASE HASH("tattoo11")
|
|
CASE HASH("tattoo12")
|
|
CASE HASH("tattoo13")
|
|
CASE HASH("tattoo14")
|
|
CASE HASH("tattoo15")
|
|
CASE HASH("tattoo16")
|
|
CASE HASH("tattoo17")
|
|
CASE HASH("tattoo18")
|
|
CASE HASH("tattoo19")
|
|
CASE HASH("tattoo20")
|
|
CASE HASH("tattoo21")
|
|
CASE HASH("tattoo22")
|
|
CASE HASH("tattoo23")
|
|
CASE HASH("tattoo24")
|
|
CASE HASH("tattoo25")
|
|
CASE HASH("tattoo26")
|
|
CASE HASH("tattoo27")
|
|
CASE HASH("tattoo28")
|
|
CASE HASH("tattoo29")
|
|
CASE HASH("tattoo30")
|
|
CASE HASH("tattoo31")
|
|
CASE HASH("tattoo32")
|
|
CASE HASH("tattoo33")
|
|
CASE HASH("tattoo34")
|
|
CASE HASH("tattoo35")
|
|
CASE HASH("tattoo36")
|
|
CASE HASH("tattoo37")
|
|
CASE HASH("tattoo38")
|
|
CASE HASH("tattoo39")
|
|
CASE HASH("tattoo40")
|
|
CASE HASH("tattoo41")
|
|
CASE HASH("tattoo42")
|
|
CASE HASH("tattoo43")
|
|
CASE HASH("tattoo44")
|
|
CASE HASH("tattoo45")
|
|
CASE HASH("tattoo46")
|
|
CASE HASH("tattoo47")
|
|
CASE HASH("tattoo48")
|
|
CASE HASH("tattoo49")
|
|
iValue = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute)
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
IF iValue != -1
|
|
SET_BIT(g_DebugPedSaveData.iTattoos[iValue/32], iValue%32)
|
|
ENDIF
|
|
ENDPROC
|
|
PROC GET_PED_SAVE_DATA_FROM_ATTRIBUTE_3(INT iAttributeHash, INT iAttribute)
|
|
INT iValue = -1
|
|
SWITCH iAttributeHash
|
|
CASE HASH("dlcTattoo0")
|
|
CASE HASH("dlcTattoo1")
|
|
CASE HASH("dlcTattoo2")
|
|
CASE HASH("dlcTattoo3")
|
|
CASE HASH("dlcTattoo4")
|
|
CASE HASH("dlcTattoo5")
|
|
CASE HASH("dlcTattoo6")
|
|
CASE HASH("dlcTattoo7")
|
|
CASE HASH("dlcTattoo8")
|
|
CASE HASH("dlcTattoo9")
|
|
CASE HASH("dlcTattoo10")
|
|
CASE HASH("dlcTattoo11")
|
|
CASE HASH("dlcTattoo12")
|
|
CASE HASH("dlcTattoo13")
|
|
CASE HASH("dlcTattoo14")
|
|
CASE HASH("dlcTattoo15")
|
|
CASE HASH("dlcTattoo16")
|
|
CASE HASH("dlcTattoo17")
|
|
CASE HASH("dlcTattoo18")
|
|
CASE HASH("dlcTattoo19")
|
|
CASE HASH("dlcTattoo20")
|
|
CASE HASH("dlcTattoo21")
|
|
CASE HASH("dlcTattoo22")
|
|
CASE HASH("dlcTattoo23")
|
|
CASE HASH("dlcTattoo24")
|
|
CASE HASH("dlcTattoo25")
|
|
CASE HASH("dlcTattoo26")
|
|
CASE HASH("dlcTattoo27")
|
|
CASE HASH("dlcTattoo28")
|
|
CASE HASH("dlcTattoo29")
|
|
CASE HASH("dlcTattoo30")
|
|
CASE HASH("dlcTattoo31")
|
|
CASE HASH("dlcTattoo32")
|
|
CASE HASH("dlcTattoo33")
|
|
CASE HASH("dlcTattoo34")
|
|
CASE HASH("dlcTattoo35")
|
|
CASE HASH("dlcTattoo36")
|
|
CASE HASH("dlcTattoo37")
|
|
CASE HASH("dlcTattoo38")
|
|
CASE HASH("dlcTattoo39")
|
|
CASE HASH("dlcTattoo40")
|
|
CASE HASH("dlcTattoo41")
|
|
CASE HASH("dlcTattoo42")
|
|
CASE HASH("dlcTattoo43")
|
|
CASE HASH("dlcTattoo44")
|
|
CASE HASH("dlcTattoo45")
|
|
CASE HASH("dlcTattoo46")
|
|
CASE HASH("dlcTattoo47")
|
|
CASE HASH("dlcTattoo48")
|
|
CASE HASH("dlcTattoo49")
|
|
iValue = GET_INT_FROM_XML_NODE_ATTRIBUTE(iAttribute)
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
IF iValue != -1
|
|
SET_BIT(g_DebugPedSaveData.iDLCTattoos[iValue/32], iValue%32)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
|
|
|
|
PROC PROCESS_PED_SAVE_DEBUG(INT iPedSave)
|
|
|
|
TEXT_LABEL_31 tlFilename
|
|
TEXT_LABEL_63 tlPathname = "X:/gta5/titleupdate/dev_ng/DebugPedData/"
|
|
|
|
INT iComp
|
|
INT iProp
|
|
scrPedHeadBlendData targetBlendData
|
|
INT iOverlay
|
|
HEAD_OVERLAY_SLOT overlaySlot
|
|
STATS_PACKED overlayStat
|
|
MP_FLOAT_STATS overlayStatBlend
|
|
MP_INT_STATS overlayColourVal
|
|
MP_INT_STATS overlaySecColourVal
|
|
INT iOverlayValue
|
|
FLOAT fOverlayBlend
|
|
INT iColour
|
|
INT iColourSaved
|
|
INT iColourSaved2
|
|
RAMP_TYPE rtType
|
|
INT i
|
|
TATTOO_FACTION_ENUM eFaction = GET_TATTOO_FACTION_FOR_PED(PLAYER_PED_ID())
|
|
|
|
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
sTattooShopItemValues sDLCTattooData
|
|
TATTOO_NAME_ENUM eDLCTattoo
|
|
|
|
INT iTatCount
|
|
|
|
INT iMicroMorph
|
|
MICRO_MORPH_TYPE microMorph
|
|
MP_FLOAT_STATS microMorphStat
|
|
FLOAT fMorphBlend
|
|
|
|
tlFilename = "PedSave_"
|
|
tlFilename += (iPedSave+1)
|
|
tlFilename += ".xml"
|
|
|
|
IF iPedSave = COUNT_OF(b_debug_ped_save)-1
|
|
tlFilename = GET_CONTENTS_OF_TEXT_WIDGET(twDebugPedNamed)
|
|
tlFilename += ".xml"
|
|
ENDIF
|
|
|
|
CLEAR_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
|
|
OPEN_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("<DebugPedData ", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
|
|
// PED MODEL
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- PLAYER MODEL -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" model=\"MP_M_FREEMODE_01\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ELIF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" model=\"MP_F_FREEMODE_01\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ELSE
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" model=\"0\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDIF
|
|
|
|
// PED COMPONENTS - DRAWABLE
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- PED COMPONENTS - DRAWABLE -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" CompDraw", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iComp, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp)), tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDREPEAT
|
|
// PED COMPONENTS - TEXTURE
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- PED COMPONENTS - TEXTURE -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" CompTex", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iComp, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp)), tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDREPEAT
|
|
// PED PROPS - INDEX
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- PED PROPS - INDEX -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
REPEAT 9 iProp
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" PropDraw", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iProp, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(GET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp)), tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDREPEAT
|
|
// PED PROPS - TEXTURE
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- PED PROPS - TEXTURE -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
REPEAT 9 iProp
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" PropTex", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iProp, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp)), tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDREPEAT
|
|
|
|
// HEAD BELND
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- HEAD BLEND -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
GET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), targetBlendData)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_head0=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(targetBlendData.m_head0, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_head1=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(targetBlendData.m_head1, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_head2=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(targetBlendData.m_head2, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_tex0=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(targetBlendData.m_tex0, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_tex1=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(targetBlendData.m_tex1, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_tex2=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(targetBlendData.m_tex2, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_headBlend=\"", tlPathname, tlFilename)SAVE_FLOAT_TO_NAMED_DEBUG_FILE(targetBlendData.m_headBlend, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_texBlend=\"", tlPathname, tlFilename)SAVE_FLOAT_TO_NAMED_DEBUG_FILE(targetBlendData.m_texBlend, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_varBlend=\"", tlPathname, tlFilename)SAVE_FLOAT_TO_NAMED_DEBUG_FILE(targetBlendData.m_varBlend, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" m_isParent=\"", tlPathname, tlFilename)SAVE_BOOL_TO_NAMED_DEBUG_FILE(targetBlendData.m_isParent, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
|
|
|
|
// MICRO MORPHS
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- MICRO MORPHS -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH iMicroMorph
|
|
microMorph = INT_TO_ENUM(MICRO_MORPH_TYPE, iMicroMorph)
|
|
microMorphStat = GET_CHARACTER_FEATURE_BLEND_STAT(microMorph)
|
|
|
|
fMorphBlend = GET_MP_FLOAT_CHARACTER_STAT(microMorphStat)
|
|
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" fMorphBlend", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iMicroMorph, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_FLOAT_TO_NAMED_DEBUG_FILE(fMorphBlend, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDREPEAT
|
|
|
|
|
|
// OVERLAYS
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- OVERLAYS -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
REPEAT ciCHARACTER_CREATOR_MAX_OVERLAYS iOverlay
|
|
overlaySlot = GET_CHARACTER_CREATOR_OVERLAY_FOR_INDEX(iOverlay)
|
|
overlayStat = GET_CHARACTER_OVERLAY_STAT(overlaySlot)
|
|
overlayStatBlend = GET_CHARACTER_OVERLAY_BLEND_STAT(overlaySlot)
|
|
|
|
// Overlay
|
|
IF overlayStat != INT_TO_ENUM(STATS_PACKED, -1)
|
|
AND overlayStatBlend != INT_TO_ENUM(MP_FLOAT_STATS, -1)
|
|
iOverlayValue = GET_PACKED_STAT_INT(overlayStat)
|
|
fOverlayBlend = GET_MP_FLOAT_CHARACTER_STAT(overlayStatBlend)
|
|
ELSE
|
|
iOverlayValue = -1
|
|
fOverlayBlend = -1
|
|
ENDIF
|
|
|
|
// Hair
|
|
overlayColourVal = GET_CHARACTER_OVERLAY_COLOUR_STAT(overlaySlot)
|
|
overlaySecColourVal = GET_CHARACTER_OVERLAY_SECONDARY_COLOUR_STAT(overlaySlot)
|
|
|
|
IF overlayColourVal != INT_TO_ENUM(MP_INT_STATS, -1)
|
|
iColourSaved = GET_MP_INT_CHARACTER_STAT(overlayColourVal)
|
|
iColourSaved2 = GET_MP_INT_CHARACTER_STAT(overlaySecColourVal)
|
|
|
|
UNPACK_CHARACTER_OVERLAY_TINT_VALUES(iColourSaved, iColour, rtType)
|
|
ELSE
|
|
iColour = -1
|
|
iColourSaved = -1
|
|
iColourSaved2 = -1
|
|
rtType = INT_TO_ENUM(RAMP_TYPE, -1)
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" iOverlayValue", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlay, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlayValue, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" fOverlayBlend", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlay, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_FLOAT_TO_NAMED_DEBUG_FILE(fOverlayBlend, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" iColourSaved", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlay, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iColourSaved, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" iColourSaved2", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlay, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iColourSaved2, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" iColour", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlay, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iColour, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" rtType", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(iOverlay, tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(ENUM_TO_INT(rtType), tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
ENDREPEAT
|
|
|
|
// EYES
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- EYES -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" fEyes=\"", tlPathname, tlFilename)SAVE_FLOAT_TO_NAMED_DEBUG_FILE(GET_MP_FLOAT_CHARACTER_STAT(MP_STAT_FEATURE_20), tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
|
|
|
|
// HAIR TINT
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- HAIR TINT -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" iHairTint1=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(GET_MP_INT_CHARACTER_STAT(MP_STAT_HAIR_TINT), tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" iHairTint2=\"", tlPathname, tlFilename)SAVE_INT_TO_NAMED_DEBUG_FILE(GET_MP_INT_CHARACTER_STAT(MP_STAT_SEC_HAIR_TINT), tlPathname, tlFilename)SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
|
|
// TATTOOS
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
//SAVE_STRING_TO_NAMED_DEBUG_FILE(" <!-- TATTOOS -->", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM
|
|
ELIF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
|
|
iTatCount = 0
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
IF IS_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, i))
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" tattoo", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iTatCount, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(i, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
iTatCount++
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Apply the DLC tats.
|
|
iTatCount = 0
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF NOT IS_CONTENT_ITEM_LOCKED(sDLCTattooData.m_lockHash)
|
|
eDLCTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex)
|
|
IF IS_MP_TATTOO_CURRENT(eDLCTattoo)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" dlcTattoo", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iTatCount, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("=\"", tlPathname, tlFilename)
|
|
SAVE_INT_TO_NAMED_DEBUG_FILE(iDLCIndex, tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("\"", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
iTatCount++
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" />", tlPathname, tlFilename)
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlPathname, tlFilename)
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
b_debug_ped_save[iPedSave] = FALSE
|
|
ENDPROC
|
|
|
|
FUNC BOOL PROCESS_PED_LOAD_DEBUG(INT iPedSave, STRING sFilenameOverride = NULL)
|
|
|
|
BOOL bRetSuccess = FALSE
|
|
|
|
TEXT_LABEL_31 tlFilename
|
|
TEXT_LABEL_63 tlPathname = "X:/gta5/titleupdate/dev_ng/DebugPedData/"
|
|
|
|
INT i
|
|
|
|
tlFilename = "PedSave_"
|
|
tlFilename += (iPedSave+1)
|
|
tlFilename += ".xml"
|
|
|
|
IF iPedSave = COUNT_OF(b_debug_ped_set)-1
|
|
tlFilename = GET_CONTENTS_OF_TEXT_WIDGET(twDebugPedNamed)
|
|
tlFilename += ".xml"
|
|
ENDIF
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sFilenameOverride)
|
|
tlFilename = sFilenameOverride
|
|
ENDIF
|
|
|
|
// Flush out the temp struct
|
|
g_DebugPedSaveData.ePedModel = DUMMY_MODEL_FOR_SCRIPT
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
g_DebugPedSaveData.iCompDraw[i] = 0
|
|
g_DebugPedSaveData.iCompTex[i] = 0
|
|
ENDREPEAT
|
|
|
|
REPEAT 9 i
|
|
g_DebugPedSaveData.iPropDraw[i] = -1
|
|
g_DebugPedSaveData.iPropTex[i] = -1
|
|
ENDREPEAT
|
|
|
|
g_DebugPedSaveData.m_head0 = 0
|
|
g_DebugPedSaveData.m_head1 = 0
|
|
g_DebugPedSaveData.m_head2 = 0
|
|
g_DebugPedSaveData.m_tex0 = 0
|
|
g_DebugPedSaveData.m_tex1 = 0
|
|
g_DebugPedSaveData.m_tex2 = 0
|
|
g_DebugPedSaveData.m_headBlend = 0.0
|
|
g_DebugPedSaveData.m_texBlend = 0.0
|
|
g_DebugPedSaveData.m_varBlend = 0.0
|
|
g_DebugPedSaveData.m_isParent = FALSE
|
|
g_DebugPedSaveData.fEyes = 0.0
|
|
g_DebugPedSaveData.iHairTint1 = 0
|
|
g_DebugPedSaveData.iHairTint2 = 0
|
|
|
|
REPEAT ciCHARACTER_CREATOR_MAX_OVERLAYS i
|
|
g_DebugPedSaveData.iOverlayValue[i] = 0
|
|
g_DebugPedSaveData.fOverlayBlend[i] = 0.0
|
|
g_DebugPedSaveData.iColourSaved[i] = 0
|
|
g_DebugPedSaveData.iColourSaved[i] = 0
|
|
g_DebugPedSaveData.iColour[i] = 0
|
|
g_DebugPedSaveData.rtType[i] = 0
|
|
ENDREPEAT
|
|
|
|
REPEAT MAX_NUMBER_OF_TATTOO_BITSETS i
|
|
g_DebugPedSaveData.iTattoos[i] = 0
|
|
ENDREPEAT
|
|
|
|
REPEAT MAX_NUMBER_OF_DLC_TATTOO_BITSETS i
|
|
g_DebugPedSaveData.iDLCTattoos[i] = 0
|
|
ENDREPEAT
|
|
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH i
|
|
g_DebugPedSaveData.fMorphBlend[i] = 0.0
|
|
ENDREPEAT
|
|
|
|
TEXT_LABEL_63 tlXMLFile
|
|
tlXMLFile = tlPathname
|
|
tlXMLFile += tlFilename
|
|
|
|
// Check that the xml exists and load
|
|
IF NOT LOAD_XML_FILE(tlXMLFile)
|
|
OR GET_NUMBER_OF_XML_NODES() = 0
|
|
// bad file
|
|
DELETE_XML_FILE()
|
|
ELSE
|
|
|
|
INT iNumNodes = GET_NUMBER_OF_XML_NODES()
|
|
INT iNumAttributes
|
|
INT iAttribute
|
|
TEXT_LABEL_63 txtNodeName
|
|
INT iAttributeHash
|
|
REPEAT iNumNodes i
|
|
txtNodeName = GET_XML_NODE_NAME()
|
|
SWITCH GET_HASH_KEY(txtNodeName)
|
|
CASE HASH("DebugPedData")
|
|
iNumAttributes = GET_NUMBER_OF_XML_NODE_ATTRIBUTES()
|
|
REPEAT iNumAttributes iAttribute
|
|
iAttributeHash = GET_HASH_KEY(GET_XML_NODE_ATTRIBUTE_NAME(iAttribute))
|
|
GET_PED_SAVE_DATA_FROM_ATTRIBUTE_1(iAttributeHash, iAttribute)
|
|
GET_PED_SAVE_DATA_FROM_ATTRIBUTE_2(iAttributeHash, iAttribute)
|
|
GET_PED_SAVE_DATA_FROM_ATTRIBUTE_3(iAttributeHash, iAttribute)
|
|
ENDREPEAT
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
GET_NEXT_XML_NODE()
|
|
ENDREPEAT
|
|
|
|
DELETE_XML_FILE()
|
|
|
|
bRetSuccess = TRUE
|
|
ENDIF
|
|
|
|
RETURN bRetSuccess
|
|
ENDFUNC
|
|
|
|
PROC PROCESS_PED_SET_DEBUG(INT iPedSave)
|
|
IF IS_PED_INJURED(PLAYER_PED_ID())
|
|
EXIT
|
|
ENDIF
|
|
|
|
INT i
|
|
INT iOverlay
|
|
TATTOO_FACTION_ENUM eFaction = GET_TATTOO_FACTION_FOR_PED(PLAYER_PED_ID())
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
TATTOO_NAME_ENUM eDLCTattoo
|
|
HEAD_OVERLAY_SLOT overlaySlot
|
|
|
|
IF g_DebugPedSaveData.ePedModel != DUMMY_MODEL_FOR_SCRIPT
|
|
REQUEST_MODEL(g_DebugPedSaveData.ePedModel)
|
|
IF HAS_MODEL_LOADED(g_DebugPedSaveData.ePedModel)
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) != g_DebugPedSaveData.ePedModel
|
|
SET_PLAYER_MODEL(PLAYER_ID(), g_DebugPedSaveData.ePedModel)
|
|
// Update stored model
|
|
IF g_DebugPedSaveData.ePedModel = MP_M_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 0)
|
|
ELIF g_DebugPedSaveData.ePedModel = MP_F_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 1)
|
|
ENDIF
|
|
ELSE
|
|
SET_MODEL_AS_NO_LONGER_NEEDED(g_DebugPedSaveData.ePedModel)
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(PLAYER_PED_ID())
|
|
CLEAR_ALL_PED_PROPS(PLAYER_PED_ID())
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, i), g_DebugPedSaveData.iCompDraw[i], g_DebugPedSaveData.iCompTex[i])
|
|
ENDREPEAT
|
|
|
|
REPEAT 9 i
|
|
IF g_DebugPedSaveData.iPropDraw[i] != -1
|
|
SET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, i), g_DebugPedSaveData.iPropDraw[i], g_DebugPedSaveData.iPropTex[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), g_DebugPedSaveData.m_head0, g_DebugPedSaveData.m_head1, g_DebugPedSaveData.m_head2, g_DebugPedSaveData.m_tex0, g_DebugPedSaveData.m_tex1, g_DebugPedSaveData.m_tex2, g_DebugPedSaveData.m_headBlend, g_DebugPedSaveData.m_texBlend, g_DebugPedSaveData.m_varBlend, g_DebugPedSaveData.m_isParent)
|
|
|
|
SET_PED_HAIR_TINT(PLAYER_PED_ID(), g_DebugPedSaveData.iHairTint1, g_DebugPedSaveData.iHairTint2)
|
|
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH i
|
|
SET_PED_MICRO_MORPH(PLAYER_PED_ID(), INT_TO_ENUM(MICRO_MORPH_TYPE, i), g_DebugPedSaveData.fMorphBlend[i])
|
|
ENDREPEAT
|
|
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, i), IS_BIT_SET(g_DebugPedSaveData.iTattoos[i/32], i%32))
|
|
ENDREPEAT
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
eDLCTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex)
|
|
IF (iDLCIndex/32) < COUNT_OF(g_DebugPedSaveData.iDLCTattoos)
|
|
SET_MP_TATTOO_CURRENT(eDLCTattoo, IS_BIT_SET(g_DebugPedSaveData.iDLCTattoos[iDLCIndex/32], iDLCIndex%32))
|
|
ELSE
|
|
PRINTLN("PROCESS_PED_SET_DEBUG - Need to increase tattoo array to ", (iDLCIndex/32))
|
|
SCRIPT_ASSERT("PROCESS_PED_SET_DEBUG - Need to increase tattoo array ")
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
UPDATE_TATOOS_MP(PLAYER_PED_ID())
|
|
|
|
REPEAT ciCHARACTER_CREATOR_MAX_OVERLAYS iOverlay
|
|
overlaySlot = GET_CHARACTER_CREATOR_OVERLAY_FOR_INDEX(iOverlay)
|
|
IF g_DebugPedSaveData.iOverlayValue[iOverlay] != -1
|
|
SET_PED_HEAD_OVERLAY(PLAYER_PED_ID(), overlaySlot, g_DebugPedSaveData.iOverlayValue[iOverlay], g_DebugPedSaveData.fOverlayBlend[iOverlay])
|
|
ENDIF
|
|
IF g_DebugPedSaveData.iColour[iOverlay] != -1
|
|
SET_PED_HEAD_OVERLAY_TINT(PLAYER_PED_ID(), overlaySlot, INT_TO_ENUM(RAMP_TYPE, g_DebugPedSaveData.rtType[iOverlay]), g_DebugPedSaveData.iColour[iOverlay], g_DebugPedSaveData.iColourSaved2[iOverlay])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_HEAD_BLEND_EYE_COLOR(PLAYER_PED_ID(), ROUND(g_DebugPedSaveData.fEyes))
|
|
|
|
// Update stored model
|
|
IF g_DebugPedSaveData.ePedModel = MP_M_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 0)
|
|
ELIF g_DebugPedSaveData.ePedModel = MP_F_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 1)
|
|
ENDIF
|
|
|
|
// Complete
|
|
CLEAR_BIT(i_debug_process_ped_set, iPedSave)
|
|
b_debug_ped_set[iPedSave] = FALSE
|
|
ENDIF
|
|
|
|
ENDIF
|
|
ELSE
|
|
SCRIPT_ASSERT("Unable to set outfit - Invalid model")
|
|
CLEAR_BIT(i_debug_process_ped_set, iPedSave)
|
|
b_debug_ped_set[iPedSave] = FALSE
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC PROCESS_PED_CREATE_DEBUG(INT iPedSave)
|
|
|
|
INT i
|
|
INT iOverlay
|
|
TATTOO_FACTION_ENUM eFaction
|
|
INT iDLCIndex
|
|
INT iDLCCount
|
|
TATTOO_NAME_ENUM eDLCTattoo
|
|
HEAD_OVERLAY_SLOT overlaySlot
|
|
VECTOR vRot
|
|
|
|
REQUEST_MODEL(g_DebugPedSaveData.ePedModel)
|
|
IF HAS_MODEL_LOADED(g_DebugPedSaveData.ePedModel)
|
|
IF NOT b_debug_ped_created[iPedSave]
|
|
IF DOES_ENTITY_EXIST(pedDebugPedCreate[iPedSave])
|
|
DELETE_PED(pedDebugPedCreate[iPedSave])
|
|
ENDIF
|
|
|
|
vRot = GET_FINAL_RENDERED_CAM_ROT()
|
|
pedDebugPedCreate[iPedSave] = CREATE_PED(PEDTYPE_CIVFEMALE, g_DebugPedSaveData.ePedModel, GET_OFFSET_FROM_COORD_AND_HEADING_IN_WORLD_COORDS(GET_FINAL_RENDERED_CAM_COORD(), vRot.z, <<0.0, 2.0, 0.0>>), 0.0, FALSE, FALSE)
|
|
SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(pedDebugPedCreate[iPedSave], TRUE)
|
|
|
|
SET_MODEL_AS_NO_LONGER_NEEDED(g_DebugPedSaveData.ePedModel)
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(pedDebugPedCreate[iPedSave])
|
|
CLEAR_ALL_PED_PROPS(pedDebugPedCreate[iPedSave])
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
SET_PED_COMPONENT_VARIATION(pedDebugPedCreate[iPedSave], INT_TO_ENUM(PED_COMPONENT, i), g_DebugPedSaveData.iCompDraw[i], g_DebugPedSaveData.iCompTex[i])
|
|
ENDREPEAT
|
|
|
|
REPEAT 9 i
|
|
IF g_DebugPedSaveData.iPropDraw[i] != -1
|
|
SET_PED_PROP_INDEX(pedDebugPedCreate[iPedSave], INT_TO_ENUM(PED_PROP_POSITION, i), g_DebugPedSaveData.iPropDraw[i], g_DebugPedSaveData.iPropTex[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_PED_HEAD_BLEND_DATA(pedDebugPedCreate[iPedSave], g_DebugPedSaveData.m_head0, g_DebugPedSaveData.m_head1, g_DebugPedSaveData.m_head2, g_DebugPedSaveData.m_tex0, g_DebugPedSaveData.m_tex1, g_DebugPedSaveData.m_tex2, g_DebugPedSaveData.m_headBlend, g_DebugPedSaveData.m_texBlend, g_DebugPedSaveData.m_varBlend, g_DebugPedSaveData.m_isParent)
|
|
|
|
SET_PED_HAIR_TINT(pedDebugPedCreate[iPedSave], g_DebugPedSaveData.iHairTint1, g_DebugPedSaveData.iHairTint2)
|
|
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH i
|
|
SET_PED_MICRO_MORPH(pedDebugPedCreate[iPedSave], INT_TO_ENUM(MICRO_MORPH_TYPE, i), g_DebugPedSaveData.fMorphBlend[i])
|
|
ENDREPEAT
|
|
|
|
eFaction = GET_TATTOO_FACTION_FOR_PED(pedDebugPedCreate[iPedSave])
|
|
iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, i), IS_BIT_SET(g_DebugPedSaveData.iTattoos[i/32], i%32))
|
|
ENDREPEAT
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
eDLCTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex)
|
|
IF (iDLCIndex/32) < COUNT_OF(g_DebugPedSaveData.iDLCTattoos)
|
|
SET_MP_TATTOO_CURRENT(eDLCTattoo, IS_BIT_SET(g_DebugPedSaveData.iDLCTattoos[iDLCIndex/32], iDLCIndex%32))
|
|
ELSE
|
|
PRINTLN("PROCESS_PED_CREATE_DEBUG - Need to increase tattoo array to ", (iDLCIndex/32))
|
|
SCRIPT_ASSERT("PROCESS_PED_CREATE_DEBUG - Need to increase tattoo array ")
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
UPDATE_TATOOS_MP(pedDebugPedCreate[iPedSave])
|
|
|
|
REPEAT ciCHARACTER_CREATOR_MAX_OVERLAYS iOverlay
|
|
overlaySlot = GET_CHARACTER_CREATOR_OVERLAY_FOR_INDEX(iOverlay)
|
|
IF g_DebugPedSaveData.iOverlayValue[iOverlay] != -1
|
|
SET_PED_HEAD_OVERLAY(pedDebugPedCreate[iPedSave], overlaySlot, g_DebugPedSaveData.iOverlayValue[iOverlay], g_DebugPedSaveData.fOverlayBlend[iOverlay])
|
|
ENDIF
|
|
IF g_DebugPedSaveData.iColour[iOverlay] != -1
|
|
SET_PED_HEAD_OVERLAY_TINT(pedDebugPedCreate[iPedSave], overlaySlot, INT_TO_ENUM(RAMP_TYPE, g_DebugPedSaveData.rtType[iOverlay]), g_DebugPedSaveData.iColour[iOverlay], g_DebugPedSaveData.iColourSaved2[iOverlay])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_HEAD_BLEND_EYE_COLOR(pedDebugPedCreate[iPedSave], ROUND(g_DebugPedSaveData.fEyes))
|
|
|
|
b_debug_ped_created[iPedSave] = TRUE
|
|
|
|
ELSE
|
|
IF HAS_PED_HEAD_BLEND_FINISHED(pedDebugPedCreate[iPedSave])
|
|
IF HAVE_ALL_STREAMING_REQUESTS_COMPLETED(pedDebugPedCreate[iPedSave])
|
|
FINALIZE_HEAD_BLEND(pedDebugPedCreate[iPedSave])
|
|
|
|
// Update stored model
|
|
IF g_DebugPedSaveData.ePedModel = MP_M_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 0)
|
|
ELIF g_DebugPedSaveData.ePedModel = MP_F_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 1)
|
|
ENDIF
|
|
|
|
// Complete
|
|
CLEAR_BIT(i_debug_process_ped_create, iPedSave)
|
|
b_debug_ped_create[iPedSave] = FALSE
|
|
b_debug_ped_created[iPedSave] = FALSE
|
|
ENDIf
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
SCRIPT_ASSERT("Unable to set outfit - Invalid model")
|
|
CLEAR_BIT(i_debug_process_ped_create, iPedSave)
|
|
b_debug_ped_create[iPedSave] = FALSE
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC PROCESS_PED_RANDOMISE_DEBUG()
|
|
|
|
PED_VARIATION_STRUCT sPedClothes
|
|
GET_PED_VARIATIONS(PLAYER_PED_ID(), sPedClothes)
|
|
|
|
// WARNING: We don't have a nice way of randomising head blends and micro morphs
|
|
// so decided to use the character creator data and functions.
|
|
|
|
MPHUD_PLACEMENT_TOOLS sPlacementData
|
|
MPHUD_GTA_ONLINE_CHARACTER_DATA sCharacterData
|
|
|
|
INITIALISE_CHARACTER_CONTROLLER(sCharacterData, sPlacementData)
|
|
GENERATE_INITIAL_CHARACTER_CREATOR_DATA(sCharacterData, sPlacementData)
|
|
|
|
// Override some states so the randomise functions plays ball
|
|
sCharacterData.iCharacterCreatorCurrentScreen = ciCHARACTER_CREATOR_COLUMN_MAIN_MENU
|
|
g_Private_EnteredCharCreationFromAlterationPrompt = FALSE
|
|
sPlacementData.ScreenPlace.iSelectedCharacter = 0
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_CHAR_ISACTIVE, 1)
|
|
sPlacementData.ScreenPlace.iSelectedCharacter = 1
|
|
ENDIF
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
sCharacterData.eActiveChild = CHARACTER_CREATOR_SON
|
|
ELSE
|
|
sCharacterData.eActiveChild = CHARACTER_CREATOR_DAUGHTER
|
|
ENDIF
|
|
|
|
WHILE g_sCharacterControllerData.eCharacterControllerPedCreationState != CHARACTER_CREATOR_PED_STATE_COMPLETE
|
|
GENERATE_CHARACTER_CREATOR_PEDS(sCharacterData, sPlacementData)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
PROCESS_CHARACTER_CREATOR_RANDOMIZE(sCharacterData)
|
|
|
|
CLONE_PED_TO_TARGET(sCharacterData.characterCreatorPeds[ENUM_TO_INT(sCharacterData.eActiveChild)], PLAYER_PED_ID())
|
|
|
|
WAIT(0)
|
|
|
|
DESTROY_ALL_CHARACTER_CREATOR_PEDS(sCharacterData)
|
|
RESET_CHARACTER_CONTROLLER_DATA(sCharacterData)
|
|
|
|
// Keep the clothes we had
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF i != ENUM_TO_INT(PED_COMP_HEAD)
|
|
AND i != ENUM_TO_INT(PED_COMP_HAIR)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, i), sPedClothes.iDrawableVariation[i], sPedClothes.iTextureVariation[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT 9 i
|
|
IF sPedClothes.iPropIndex[i] = -1
|
|
CLEAR_PED_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, i))
|
|
ELSE
|
|
SET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, i), sPedClothes.iPropIndex[i], sPedClothes.iPropTexture[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Pick a random hair style, but keep creator tints
|
|
PED_COMP_NAME_ENUM eHair
|
|
IF (GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01)
|
|
eHair = GET_RANDOM_MALE_HAIR()
|
|
ELIF (GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01)
|
|
eHair = GET_RANDOM_FEMALE_HAIR()
|
|
ENDIF
|
|
// Keep the tint that was generated using creator
|
|
INT iTint1, iTint2
|
|
GET_PED_HAIR_TINT(PLAYER_PED_ID(), iTint1, iTint2)
|
|
// Apply then update stats
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_HAIR, eHair, FALSE, DEFAULT, DEFAULT, DEFAULT, DEFAULT, iTint1, iTint2)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO,ENUM_TO_INT(eHair))
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA,ENUM_TO_INT(eHair))
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_HAIR_TINT, iTint1)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_SEC_HAIR_TINT, iTint2)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_HAIR, eHair)
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_HAIR, g_sTempCompData[1].iTexture)
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_HAIR, g_sTempCompData[1].iDrawable)
|
|
|
|
WAIT(0)
|
|
|
|
WHILE NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(PLAYER_PED_ID())
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
WHILE NOT HAS_PED_HEAD_BLEND_FINISHED(PLAYER_PED_ID())
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
FINALIZE_HEAD_BLEND(PLAYER_PED_ID())
|
|
|
|
b_debug_ped_randomise_appearance = FALSE
|
|
ENDPROC
|
|
|
|
PROC PROCESS_PED_CREATE_CLONE_DEBUG()
|
|
|
|
REQUEST_MODEL(GET_ENTITY_MODEL(PLAYER_PED_ID()))
|
|
IF NOT HAS_MODEL_LOADED(GET_ENTITY_MODEL(PLAYER_PED_ID()))
|
|
EXIT
|
|
ENDIF
|
|
|
|
VECTOR vRot = GET_FINAL_RENDERED_CAM_ROT()
|
|
PED_INDEX pedTempPed = CLONE_PED(PLAYER_PED_ID(), FALSE, FALSE, FALSE)
|
|
SET_ENTITY_COORDS(pedTempPed, GET_OFFSET_FROM_COORD_AND_HEADING_IN_WORLD_COORDS(GET_FINAL_RENDERED_CAM_COORD(), vRot.z, <<0.0, 2.0, 0.0>>))
|
|
SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(pedTempPed, TRUE)
|
|
|
|
WAIT(0)
|
|
|
|
WHILE NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(pedTempPed)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
WHILE NOT HAS_PED_HEAD_BLEND_FINISHED(pedTempPed)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
FINALIZE_HEAD_BLEND(pedTempPed)
|
|
|
|
b_debug_ped_create_clone = FALSE
|
|
ENDPROC
|
|
|
|
PROC ADD_PED_COMP_DATA_TO_FILE(PED_COMP_TYPE_ENUM eCompType, INT iType)
|
|
|
|
PED_COMP_NAME_ENUM ePedComp = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), eCompType)
|
|
INT iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(GET_PED_COMPONENT_FROM_TYPE(eCompType)), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), GET_PED_COMPONENT_FROM_TYPE(eCompType)), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), GET_PED_COMPONENT_FROM_TYPE(eCompType)))
|
|
|
|
IF iDLCNameHash = 0
|
|
iDLCNameHash = -1
|
|
ENDIF
|
|
|
|
TEXT_LABEL_63 tlNameHash
|
|
|
|
IF iType = 0
|
|
IF iDLCNameHash = -1
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iComponentDrawableID[")SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(GET_PED_COMPONENT_FROM_TYPE(eCompType))) SAVE_STRING_TO_DEBUG_FILE("] = ")SAVE_INT_TO_DEBUG_FILE(GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), GET_PED_COMPONENT_FROM_TYPE(eCompType)))
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iComponentTextureID[")SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(GET_PED_COMPONENT_FROM_TYPE(eCompType))) SAVE_STRING_TO_DEBUG_FILE("] = ")SAVE_INT_TO_DEBUG_FILE(GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), GET_PED_COMPONENT_FROM_TYPE(eCompType)))
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
IF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(" GET_SHOP_PED_COMPONENT(ENUM_TO_INT(")SAVE_STRING_TO_DEBUG_FILE(tlNameHash)SAVE_STRING_TO_DEBUG_FILE("), componentItem)")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" GET_SHOP_PED_COMPONENT(")SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)SAVE_STRING_TO_DEBUG_FILE(", componentItem) // MISSING DLC NAME")
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iComponentDrawableID[")SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(GET_PED_COMPONENT_FROM_TYPE(eCompType))) SAVE_STRING_TO_DEBUG_FILE("] = componentItem.m_drawableIndex ")SAVE_STRING_TO_DEBUG_FILE("sOutfitsData.iComponentTextureID[")SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(GET_PED_COMPONENT_FROM_TYPE(eCompType))) SAVE_STRING_TO_DEBUG_FILE("] = componentItem.m_textureIndex")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ELIF iType = 1
|
|
|
|
IF iDLCNameHash != -1
|
|
ePedComp = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0)
|
|
ELSE
|
|
iDLCNameHash = 0
|
|
ENDIF
|
|
|
|
IF ENUM_TO_INT(ePedComp) = 0
|
|
AND iDLCNameHash = 0
|
|
// skip
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF iDLCNameHash = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)SAVE_STRING_TO_DEBUG_FILE("</nameHash>")
|
|
ELIF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_STRING_TO_DEBUG_FILE(tlNameHash)SAVE_STRING_TO_DEBUG_FILE("</nameHash>")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)SAVE_STRING_TO_DEBUG_FILE("</nameHash> <!-- MISSING DLC NAME -->")
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <enumValue value=\"") SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(ePedComp))SAVE_STRING_TO_DEBUG_FILE("\" />")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eCompType>")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_DLC_STRING(eCompType))SAVE_STRING_TO_DEBUG_FILE("</eCompType>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC ADD_PED_PROP_DATA_TO_FILE(PED_PROP_POSITION eAnchor, INT iType)
|
|
|
|
IF GET_PED_PROP_INDEX(PLAYER_PED_ID(), eAnchor) = -1
|
|
EXIT
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM ePedProp = GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), GET_PED_PROP_INDEX(PLAYER_PED_ID(), eAnchor), GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), eAnchor), eAnchor)
|
|
INT iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(eAnchor), GET_PED_PROP_INDEX(PLAYER_PED_ID(), eAnchor), GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), eAnchor))
|
|
|
|
IF iDLCNameHash = 0
|
|
iDLCNameHash = -1
|
|
ENDIF
|
|
|
|
TEXT_LABEL_63 tlNameHash
|
|
|
|
IF iType = 0
|
|
IF iDLCNameHash = -1
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iPropDrawableID[")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(eAnchor))SAVE_STRING_TO_DEBUG_FILE("] = ") SAVE_INT_TO_DEBUG_FILE(GET_PED_PROP_INDEX(PLAYER_PED_ID(), eAnchor))
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iPropTextureID[")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(eAnchor))SAVE_STRING_TO_DEBUG_FILE("] = ") SAVE_INT_TO_DEBUG_FILE(GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), eAnchor))
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
IF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(" GET_SHOP_PED_PROP(ENUM_TO_INT(")SAVE_STRING_TO_DEBUG_FILE(tlNameHash)SAVE_STRING_TO_DEBUG_FILE("), propItem)")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" GET_SHOP_PED_PROP(")SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)SAVE_STRING_TO_DEBUG_FILE(", propItem) // MISSING DLC NAME")
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iPropDrawableID[")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(eAnchor))SAVE_STRING_TO_DEBUG_FILE("] = propItem.m_propIndex")
|
|
SAVE_STRING_TO_DEBUG_FILE(" sOutfitsData.iPropTextureID[")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(eAnchor))SAVE_STRING_TO_DEBUG_FILE("] = propItem.m_textureIndex")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ELIF iType = 1
|
|
IF iDLCNameHash != -1
|
|
ePedProp = INT_TO_ENUM(PED_COMP_NAME_ENUM, 0)
|
|
ELSE
|
|
iDLCNameHash = 0
|
|
ENDIF
|
|
|
|
IF ENUM_TO_INT(ePedProp) = 0
|
|
AND iDLCNameHash = 0
|
|
// skip
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF iDLCNameHash = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)SAVE_STRING_TO_DEBUG_FILE("</nameHash>")
|
|
ELIF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_STRING_TO_DEBUG_FILE(tlNameHash)SAVE_STRING_TO_DEBUG_FILE("</nameHash>")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)SAVE_STRING_TO_DEBUG_FILE("</nameHash> <!-- MISSING DLC NAME -->")
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <enumValue value=\"") SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(ePedProp))SAVE_STRING_TO_DEBUG_FILE("\" />")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eAnchorPoint>")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(eAnchor))SAVE_STRING_TO_DEBUG_FILE("</eAnchorPoint>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
PROC OUTPUT_OUTFIT_SETUP_META(STRING sFilename = NULL)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
OPEN_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF IS_STRING_NULL_OR_EMPTY(sFilename)
|
|
SAVE_STRING_TO_DEBUG_FILE(" <!-- OUTFIT -->")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <!-- OUTFIT ")
|
|
SAVE_STRING_TO_DEBUG_FILE(sFilename)
|
|
SAVE_STRING_TO_DEBUG_FILE(" -->")
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <lockHash />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <cost value=\"99\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textLabel>CLO_OUTFIT_LABEL</textLabel>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>DLC_MP_OUTFIT_HASH</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eShopEnum>CLO_SHOP_LOW</eShopEnum>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <locate value=\"999\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <includedPedComponents>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_BERD, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_TORSO, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_LEGS, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_FEET, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_TEETH, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_SPECIAL, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_SPECIAL2, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_DECL, 1)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_JBIB, 1)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </includedPedComponents>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <includedPedProps>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_HEAD, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_EYES, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_EARS, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_MOUTH, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_LEFT_HAND, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_RIGHT_HAND, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_LEFT_WRIST, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_RIGHT_WRIST, 1)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_HIP, 1)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </includedPedProps>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
CLOSE_DEBUG_FILE()
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC OUTPUT_OUTFIT_SETUP_HEIST(STRING sFilename = NULL)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
|
|
OPEN_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
IF IS_STRING_NULL_OR_EMPTY(sFilename)
|
|
SAVE_STRING_TO_DEBUG_FILE("CASE MP_OUTFIT_ENUM")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("CASE ")
|
|
SAVE_STRING_TO_DEBUG_FILE(sFilename)
|
|
ENDIF
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_BERD, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_TORSO, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_LEGS, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_FEET, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_TEETH, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_SPECIAL, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_SPECIAL2, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_DECL, 0)
|
|
ADD_PED_COMP_DATA_TO_FILE(COMP_TYPE_JBIB, 0)
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_HEAD, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_EYES, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_EARS, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_MOUTH, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_LEFT_HAND, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_RIGHT_HAND, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_LEFT_WRIST, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_RIGHT_WRIST, 0)
|
|
ADD_PED_PROP_DATA_TO_FILE(ANCHOR_HIP, 0)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("BREAK")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
CLOSE_DEBUG_FILE()
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC OUTPUT_PED_DEBUG_OUTPUT()
|
|
// load xml and store file names.
|
|
TEXT_LABEL_63 tlFilenames[12]
|
|
|
|
IF NOT LOAD_XML_FILE("X:/gta5/titleupdate/dev_ng/DebugPedData/batch_output.xml")
|
|
// bad file
|
|
DELETE_XML_FILE()
|
|
|
|
// create one
|
|
tlFilenames[0] = "X:/gta5/titleupdate/dev_ng/DebugPedData"
|
|
tlFilenames[1] = "batch_output.xml"
|
|
|
|
CLEAR_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
OPEN_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", tlFilenames[0], tlFilenames[1])
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE("<DebugPedData ", tlFilenames[0], tlFilenames[1])
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" File1=\"\"", tlFilenames[0], tlFilenames[1])
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
SAVE_STRING_TO_NAMED_DEBUG_FILE(" />", tlFilenames[0], tlFilenames[1])
|
|
SAVE_NEWLINE_TO_NAMED_DEBUG_FILE(tlFilenames[0], tlFilenames[1])
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
ELIF GET_NUMBER_OF_XML_NODES() = 0
|
|
// bad file
|
|
DELETE_XML_FILE()
|
|
ELSE
|
|
|
|
INT iNumNodes = GET_NUMBER_OF_XML_NODES()
|
|
INT iNumAttributes
|
|
INT iAttribute
|
|
TEXT_LABEL_63 txtNodeName
|
|
INT iAttributeHash
|
|
INT i
|
|
REPEAT iNumNodes i
|
|
txtNodeName = GET_XML_NODE_NAME()
|
|
SWITCH GET_HASH_KEY(txtNodeName)
|
|
CASE HASH("DebugPedData")
|
|
iNumAttributes = GET_NUMBER_OF_XML_NODE_ATTRIBUTES()
|
|
REPEAT iNumAttributes iAttribute
|
|
iAttributeHash = GET_HASH_KEY(GET_XML_NODE_ATTRIBUTE_NAME(iAttribute))
|
|
SWITCH iAttributeHash
|
|
CASE HASH("File1") tlFilenames[0] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File2") tlFilenames[1] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File3") tlFilenames[2] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File4") tlFilenames[3] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File5") tlFilenames[4] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File6") tlFilenames[5] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File7") tlFilenames[6] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File8") tlFilenames[7] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File9") tlFilenames[8] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File10") tlFilenames[9] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File11") tlFilenames[10] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
CASE HASH("File12") tlFilenames[11] = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute) BREAK
|
|
ENDSWITCH
|
|
ENDREPEAT
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
GET_NEXT_XML_NODE()
|
|
ENDREPEAT
|
|
|
|
DELETE_XML_FILE()
|
|
|
|
WAIT(0)
|
|
|
|
REPEAT COUNT_OF(tlFilenames) i
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlFilenames[i])
|
|
IF PROCESS_PED_LOAD_DEBUG(0, tlFilenames[i])
|
|
SET_BIT(i_debug_process_ped_set, 0)
|
|
WHILE IS_BIT_SET(i_debug_process_ped_set, 0)
|
|
PROCESS_PED_SET_DEBUG(0)
|
|
WAIT(0)
|
|
IF NOT IS_BIT_SET(i_debug_process_ped_set, 0)
|
|
OUTPUT_OUTFIT_SETUP_META(tlFilenames[i])
|
|
ENDIF
|
|
ENDWHILE
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT COUNT_OF(tlFilenames) i
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlFilenames[i])
|
|
IF PROCESS_PED_LOAD_DEBUG(0, tlFilenames[i])
|
|
SET_BIT(i_debug_process_ped_set, 0)
|
|
WHILE IS_BIT_SET(i_debug_process_ped_set, 0)
|
|
PROCESS_PED_SET_DEBUG(0)
|
|
WAIT(0)
|
|
IF NOT IS_BIT_SET(i_debug_process_ped_set, 0)
|
|
OUTPUT_OUTFIT_SETUP_HEIST(tlFilenames[i])
|
|
ENDIF
|
|
ENDWHILE
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
|
|
b_debug_output_ped_save_data = FALSE
|
|
ENDPROC
|
|
|
|
FUNC INT GET_CLOTHING_SELECT_MENU_COUNT(INT iMenu)
|
|
SWITCH iMenu
|
|
CASE CLOTHES_SELECT_MENU_MAIN RETURN 7 BREAK
|
|
CASE CLOTHES_SELECT_MENU_COMPS RETURN 12 BREAK
|
|
CASE CLOTHES_SELECT_MENU_PROPS RETURN 9 BREAK
|
|
CASE CLOTHES_SELECT_MENU_DECORATIONS RETURN 2 BREAK
|
|
CASE CLOTHES_SELECT_MENU_OUTFITS RETURN 1 BREAK
|
|
CASE CLOTHES_SELECT_MENU_MODEL RETURN 1 BREAK
|
|
CASE CLOTHES_SELECT_MENU_SHOP_LOCATE RETURN 1 BREAK
|
|
CASE CLOTHES_SELECT_MENU_CAMERA RETURN 1 BREAK
|
|
ENDSWITCH
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_HASH_VALUE_IN_HASH_ARRAY(INT iHashValue, INT &iHashArray[])
|
|
|
|
IF iHashValue = 0
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
INT iCount
|
|
REPEAT COUNT_OF(iHashArray) iCount
|
|
IF iHashArray[iCount] = iHashValue
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDREPEAT
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL DOES_ITEM_LABEL_CONTAIN_STRING(TEXT_LABEL_15 &tlLabel, TEXT_LABEL_15 &tlKey)
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlLabel)
|
|
AND DOES_TEXT_LABEL_EXIST(tlLabel)
|
|
|
|
IF GET_HASH_KEY(tlLabel) = GET_HASH_KEY(tlKey)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
TEXT_LABEL_63 tlMain = GET_STRING_FROM_TEXT_FILE(tlLabel)
|
|
|
|
INT iKeyHash = GET_HASH_KEY(tlKey)
|
|
|
|
INT iLengthMain = GET_LENGTH_OF_LITERAL_STRING(tlMain)
|
|
INT iLengthKey = GET_LENGTH_OF_LITERAL_STRING(tlKey)
|
|
|
|
INT iChar
|
|
|
|
FOR iChar = 0 TO iLengthMain-1
|
|
IF iChar+iLengthKey > iLengthMain
|
|
RETURN FALSE
|
|
ELIF GET_HASH_KEY(GET_STRING_FROM_STRING(tlMain, iChar, iChar+iLengthKey)) = iKeyHash
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC DRAW_DEBUG_CLOTHING_MENU(BOOL bProcessingItem = FALSE)
|
|
|
|
SET_MENU_SELECTION_BAR_COLOUR(HUD_COLOUR_GREY, bProcessingItem)
|
|
|
|
DRAW_MENU()
|
|
|
|
HIDE_HUD_COMPONENT_THIS_FRAME(NEW_HUD_FEED)
|
|
|
|
// Draw component/prop info.
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
OR sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
IF IS_CUSTOM_MENU_ON_SCREEN()
|
|
SET_SCRIPT_GFX_ALIGN(UI_ALIGN_LEFT, UI_ALIGN_TOP)
|
|
SET_SCRIPT_GFX_ALIGN_PARAMS(-0.05, -0.05, 0.0, 0.0)
|
|
|
|
FLOAT fFinalPanelY = GET_CUSTOM_MENU_FINAL_Y_COORD()
|
|
FLOAT fStartY = GET_CUSTOM_MENU_FINAL_Y_COORD()+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// KEYWORD
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlKeyWord)
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("TWOSTRINGS")
|
|
IF sClothesSelect.bKeyWordState
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("Filter: ~b~")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("Filter: ~r~")
|
|
ENDIF
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlKeyWord)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
ENDIF
|
|
|
|
////////////////////////////////////////
|
|
/// LOCKED STATUS
|
|
BOOL bAddLockedStatus = FALSE
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
IF GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])) != sClothesSelect.iLastIndex
|
|
OR GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])) != sClothesSelect.iLastTexture
|
|
bAddLockedStatus = TRUE
|
|
ENDIF
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
IF sClothesSelect.iLastIndex != -1
|
|
IF GET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])) != sClothesSelect.iLastIndex
|
|
OR (sClothesSelect.iLastIndex != -1 AND GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])) != sClothesSelect.iLastTexture)
|
|
bAddLockedStatus = TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
IF bAddLockedStatus
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("STRING")
|
|
// Locked
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING("~r~***ITEM LOCKED***")
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
ENDIF
|
|
|
|
////////////////////////////////////////
|
|
/// VARIATION INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF1")
|
|
// Global ID: ~1~, ~1~ ~n~
|
|
ADD_TEXT_COMPONENT_INTEGER(sClothesSelect.iIndex)
|
|
ADD_TEXT_COMPONENT_INTEGER(sClothesSelect.iTexture)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF2")
|
|
// Local ID: ~1~ , ~1~ ~n~
|
|
ADD_TEXT_COMPONENT_INTEGER(sClothesSelect.iLocalIndex)
|
|
ADD_TEXT_COMPONENT_INTEGER(sClothesSelect.iTexture)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("GEN_BIGM_NUM")
|
|
// Local ID: ~1~ , ~1~ ~n~
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING("Enum: ")
|
|
//ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP(GET_ENTITY_MODEL(PLAYER_PED_ID()), GET_HASH_KEY(sClothesSelect.tlDLCKey), INT_TO_ENUM(PED_COMP_TYPE_ENUM, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])))
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
ADD_TEXT_COMPONENT_INTEGER(ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), sClothesSelect.iIndex, sClothesSelect.iTexture, INT_TO_ENUM(PED_COMP_TYPE_ENUM, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]))))
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
ADD_TEXT_COMPONENT_INTEGER(ENUM_TO_INT(GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), sClothesSelect.iIndex, sClothesSelect.iTexture, INT_TO_ENUM(PED_PROP_POSITION, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]))))
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_INTEGER(-99)
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF11")
|
|
// Menu:~g~ ~a~
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(sClothesSelect.tlShopMenu)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// DLC PACK INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF7")
|
|
// DLC Pack: ~a~
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlDLCPack)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF6")
|
|
// DLC Key: ~a~
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlDLCKey)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// TEXT LABEL INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF5")
|
|
// Label Hash: ~1~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_INTEGER(0)
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_INTEGER(GET_HASH_KEY(sClothesSelect.tlItemLabel))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF4")
|
|
// Label: ~a~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlItemLabel)
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF3")
|
|
// Name: ~a~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
OR NOT DOES_TEXT_LABEL_EXIST(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(GET_STRING_FROM_TEXT_FILE(sClothesSelect.tlItemLabel))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
RESET_SCRIPT_GFX_ALIGN()
|
|
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
IF IS_CUSTOM_MENU_ON_SCREEN()
|
|
SET_SCRIPT_GFX_ALIGN(UI_ALIGN_LEFT, UI_ALIGN_TOP)
|
|
SET_SCRIPT_GFX_ALIGN_PARAMS(-0.05, -0.05, 0.0, 0.0)
|
|
|
|
FLOAT fFinalPanelY = GET_CUSTOM_MENU_FINAL_Y_COORD()
|
|
FLOAT fStartY = GET_CUSTOM_MENU_FINAL_Y_COORD()+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// DECORATION INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF8")
|
|
// Collection: ~a~
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlDLCKey)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF9")
|
|
// Preset: ~1~
|
|
ADD_TEXT_COMPONENT_INTEGER(sClothesSelect.iDecorationPreset)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF10")
|
|
// Compatible: ~a~
|
|
IF sClothesSelect.bDecorationCompatible
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("Yes")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~No")
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// TEXT LABEL INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF5")
|
|
// Label Hash: ~1~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_INTEGER(0)
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_INTEGER(GET_HASH_KEY(sClothesSelect.tlItemLabel))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF4")
|
|
// Label: ~a~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlItemLabel)
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF3")
|
|
// Name: ~a~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
OR NOT DOES_TEXT_LABEL_EXIST(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(GET_STRING_FROM_TEXT_FILE(sClothesSelect.tlItemLabel))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
RESET_SCRIPT_GFX_ALIGN()
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
IF IS_CUSTOM_MENU_ON_SCREEN()
|
|
SET_SCRIPT_GFX_ALIGN(UI_ALIGN_LEFT, UI_ALIGN_TOP)
|
|
SET_SCRIPT_GFX_ALIGN_PARAMS(-0.05, -0.05, 0.0, 0.0)
|
|
|
|
FLOAT fFinalPanelY = GET_CUSTOM_MENU_FINAL_Y_COORD()
|
|
FLOAT fStartY = GET_CUSTOM_MENU_FINAL_Y_COORD()+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// DLC PACK INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF7")
|
|
// DLC Pack: ~a~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlDLCPack)
|
|
OR NOT DOES_TEXT_LABEL_EXIST(sClothesSelect.tlDLCPack)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(GET_STRING_FROM_TEXT_FILE(sClothesSelect.tlDLCPack))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF6")
|
|
// DLC Key: ~a~
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlDLCKey)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
////////////////////////////////////////
|
|
/// TEXT LABEL INFO
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF5")
|
|
// Label Hash: ~1~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_INTEGER(0)
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_INTEGER(GET_HASH_KEY(sClothesSelect.tlItemLabel))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF4")
|
|
// Label: ~a~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(sClothesSelect.tlItemLabel)
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
SETUP_MENU_ITEM_MESSAGE_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("CLO_SEL_INF3")
|
|
// Name: ~a~ ~n~
|
|
IF IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlItemLabel)
|
|
OR NOT DOES_TEXT_LABEL_EXIST(sClothesSelect.tlItemLabel)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME("~r~NA")
|
|
ELSE
|
|
ADD_TEXT_COMPONENT_SUBSTRING_PLAYER_NAME(GET_STRING_FROM_TEXT_FILE(sClothesSelect.tlItemLabel))
|
|
ENDIF
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(CUSTOM_MENU_X+CUSTOM_MENU_TEXT_INDENT_X, fFinalPanelY+CUSTOM_MENU_TEXT_INDENT_Y)
|
|
fFinalPanelY += CUSTOM_MENU_HEADER_H
|
|
|
|
DRAW_RECT_FROM_CORNER(CUSTOM_MENU_X, fStartY, CUSTOM_MENU_W, fFinalPanelY-fStartY, 0, 0, 0, tiCOMMON_MENU_BG_ALPHA)
|
|
fStartY = fFinalPanelY+CUSTOM_MENU_SPACER_H
|
|
|
|
RESET_SCRIPT_GFX_ALIGN()
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC PROCESS_CLOTHING_SELECT_MENU()
|
|
|
|
IF IS_DEBUG_KEY_JUST_PRESSED(KEY_C, KEYBOARD_MODIFIER_SHIFT, "Clothes Debug")
|
|
sClothesSelect.bDisplay = !sClothesSelect.bDisplay
|
|
IF sClothesSelect.bDisplay
|
|
g_bValidatePlayersTorsoComponent = FALSE
|
|
g_bSafeToProcessMPChecks = FALSE
|
|
PRINTLN("PROCESS_CLOTHING_SELECT_MENU - Activating debug menu (Shift+C)")
|
|
ELSE
|
|
IF NOT GET_COMMANDLINE_PARAM_EXISTS("sc_SkipPedCompValidation")
|
|
g_bValidatePlayersTorsoComponent = TRUE
|
|
ENDIF
|
|
g_bSafeToProcessMPChecks = TRUE
|
|
PRINTLN("PROCESS_CLOTHING_SELECT_MENU - De-activating debug menu (Shift+C)")
|
|
ENDIF
|
|
ENDIF
|
|
IF NOT NETWORK_IS_GAME_IN_PROGRESS()
|
|
sClothesSelect.bDisplay = FALSE
|
|
ENDIF
|
|
|
|
IF sClothesSelect.bDisplay
|
|
|
|
sClothesSelect.bMenuAssetsRequested = TRUE
|
|
REQUEST_ADDITIONAL_TEXT("CLO_MNU", MENU_TEXT_SLOT)
|
|
IF LOAD_MENU_ASSETS()
|
|
AND GET_PAUSE_MENU_STATE() = PM_INACTIVE
|
|
AND NOT IS_SYSTEM_UI_BEING_DISPLAYED()
|
|
AND NOT IS_WARNING_MESSAGE_ACTIVE()
|
|
AND NOT g_sShopSettings.bProcessStoreAlert
|
|
AND NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
AND HAS_THIS_ADDITIONAL_TEXT_LOADED("CLO_MNU", MENU_TEXT_SLOT)
|
|
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_SELECT)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_CANCEL)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_UP)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_DOWN)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_RB)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_RT)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_Y)
|
|
SET_INPUT_EXCLUSIVE(FRONTEND_CONTROL, INPUT_FRONTEND_X)
|
|
|
|
IF NOT sClothesSelect.bMenuInitialised
|
|
INT iCount
|
|
REPEAT COUNT_OF(sClothesSelect.iCurrentItem) iCount
|
|
sClothesSelect.iCurrentItem[iCount] = 0
|
|
sClothesSelect.iCurrentTopItem[iCount] = 0
|
|
sClothesSelect.iCurrentItem_copy[iCount] = 0
|
|
sClothesSelect.iCurrentTopItem_copy[iCount] = 0
|
|
ENDREPEAT
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MAIN
|
|
sClothesSelect.iMenuDepth = 0
|
|
sClothesSelect.bMenuInitialised = TRUE
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.tlKeyWord = ""
|
|
ENDIF
|
|
|
|
IF sClothesSelect.bGrabClothingData
|
|
|
|
INT iDraw
|
|
INT iDLCPackName
|
|
INT iDLCNameHash
|
|
INT iSlot = sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
PED_COMP_NAME_ENUM ePedComp
|
|
CLOTHES_MENU_ENUM eMenu
|
|
TEXT_LABEL_15 tlMenuLabel
|
|
INT iSubMenu
|
|
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
sClothesSelect.iIndex = sClothesSelect.iLastIndex
|
|
sClothesSelect.iTexture = sClothesSelect.iLastTexture
|
|
ELSE
|
|
sClothesSelect.iIndex = GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iSlot))
|
|
sClothesSelect.iTexture = GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iSlot))
|
|
sClothesSelect.iLastIndex = sClothesSelect.iIndex
|
|
sClothesSelect.iLastTexture = sClothesSelect.iTexture
|
|
ENDIF
|
|
sClothesSelect.iLocalIndex = 0
|
|
|
|
FOR iDraw = 0 TO sClothesSelect.iIndex
|
|
IF iDLCPackName != GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iSlot, iDraw)
|
|
iDLCPackName = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iSlot, iDraw)
|
|
sClothesSelect.iLocalIndex = 0
|
|
ELSE
|
|
sClothesSelect.iLocalIndex++
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iSlot, sClothesSelect.iIndex, sClothesSelect.iTexture)
|
|
|
|
IF iDLCNameHash != 0
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, sClothesSelect.tlDLCKey)
|
|
sClothesSelect.tlDLCKey = ""
|
|
sClothesSelect.tlDLCKey += iDLCNameHash
|
|
ENDIF
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(iDLCPackName, sClothesSelect.tlDLCPack)
|
|
sClothesSelect.tlDLCPack = ""
|
|
sClothesSelect.tlDLCPack += iDLCPackName
|
|
ENDIF
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
sClothesSelect.tlItemLabel = componentItem.m_textLabel
|
|
|
|
IF componentItem.m_locate = 0
|
|
eMenu = CLO_MENU_MASKS
|
|
ELSE
|
|
eMenu = INT_TO_ENUM(CLOTHES_MENU_ENUM, componentItem.m_locate)
|
|
ENDIF
|
|
tlMenuLabel = GET_CLOTHES_MENU_NAME(eMenu, FALSE)
|
|
|
|
IF DOES_TEXT_LABEL_EXIST(tlMenuLabel)
|
|
|
|
sClothesSelect.tlShopMenu = GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
IF eMenu = CLO_MENU_MASKS
|
|
AND GET_MASK_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_MASK_TYPE_INVALID
|
|
iSubMenu = GET_MASK_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_EARRINGS
|
|
AND GET_EARRING_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_EARRING_TYPE_INVALID
|
|
iSubMenu = GET_EARRING_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_AWARD_SHIRTS
|
|
AND GET_AWARDS_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_AWARD_TYPE_INVALID
|
|
iSubMenu = GET_AWARDS_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_XMAS_TOPS
|
|
AND GET_FESTIVE_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_FESTIVE_TYPE_INVALID
|
|
iSubMenu = GET_FESTIVE_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_ARENA_WAR_TOPS
|
|
AND GET_ARENA_WAR_TOP_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_ARENA_WAR_TOP_TYPE_INVALID
|
|
iSubMenu = GET_ARENA_WAR_TOP_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ENDIF
|
|
ELSE
|
|
sClothesSelect.tlShopMenu = "~r~NA"
|
|
ENDIF
|
|
ELSE
|
|
sClothesSelect.tlShopMenu = "~r~NA"
|
|
sClothesSelect.tlDLCKey = "~r~NA"
|
|
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(iDLCPackName, sClothesSelect.tlDLCPack)
|
|
sClothesSelect.tlDLCPack = ""
|
|
sClothesSelect.tlDLCPack += iDLCPackName
|
|
ENDIF
|
|
|
|
ePedComp = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMP_TYPE_ENUM, iSlot))
|
|
IF ePedComp != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), INT_TO_ENUM(PED_COMP_TYPE_ENUM, iSlot), ePedComp)
|
|
sClothesSelect.tlItemLabel = g_sTempCompData[1].sLabel
|
|
ELSE
|
|
sClothesSelect.tlItemLabel = ""
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
sClothesSelect.iIndex = sClothesSelect.iLastIndex
|
|
sClothesSelect.iTexture = sClothesSelect.iLastTexture
|
|
ELSE
|
|
sClothesSelect.iIndex = GET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iSlot))
|
|
sClothesSelect.iTexture = GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iSlot))
|
|
sClothesSelect.iLastIndex = sClothesSelect.iIndex
|
|
sClothesSelect.iLastTexture = sClothesSelect.iTexture
|
|
ENDIF
|
|
sClothesSelect.iLocalIndex = -1
|
|
|
|
FOR iDraw = 0 TO sClothesSelect.iIndex
|
|
IF iDLCPackName != GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iSlot), iDraw)
|
|
iDLCPackName = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iSlot), iDraw)
|
|
sClothesSelect.iLocalIndex = 0
|
|
ELSE
|
|
sClothesSelect.iLocalIndex++
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iSlot, sClothesSelect.iIndex, sClothesSelect.iTexture)
|
|
|
|
IF iDLCNameHash != 0
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, sClothesSelect.tlDLCKey)
|
|
sClothesSelect.tlDLCKey = ""
|
|
sClothesSelect.tlDLCKey += iDLCNameHash
|
|
ENDIF
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(iDLCPackName, sClothesSelect.tlDLCPack)
|
|
sClothesSelect.tlDLCPack = ""
|
|
sClothesSelect.tlDLCPack += iDLCPackName
|
|
ENDIF
|
|
GET_SHOP_PED_PROP(iDLCNameHash, propItem)
|
|
sClothesSelect.tlItemLabel = propItem.m_textLabel
|
|
|
|
IF propItem.m_locate = 0
|
|
eMenu = CLO_MENU_MASKS
|
|
ELSE
|
|
eMenu = INT_TO_ENUM(CLOTHES_MENU_ENUM, propItem.m_locate)
|
|
ENDIF
|
|
tlMenuLabel = GET_CLOTHES_MENU_NAME(eMenu, FALSE)
|
|
|
|
IF DOES_TEXT_LABEL_EXIST(tlMenuLabel)
|
|
|
|
sClothesSelect.tlShopMenu = GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
IF eMenu = CLO_MENU_MASKS
|
|
AND GET_MASK_MENU_FROM_LABEL(propItem.m_textLabel) != iSHOP_MASK_TYPE_INVALID
|
|
iSubMenu = GET_MASK_MENU_FROM_LABEL(propItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_EARRINGS
|
|
AND GET_EARRING_MENU_FROM_LABEL(propItem.m_textLabel) != iSHOP_EARRING_TYPE_INVALID
|
|
iSubMenu = GET_EARRING_MENU_FROM_LABEL(propItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
sClothesSelect.tlShopMenu += " - "
|
|
sClothesSelect.tlShopMenu += GET_STRING_FROM_TEXT_FILE(tlMenuLabel)
|
|
|
|
ENDIF
|
|
ELSE
|
|
sClothesSelect.tlShopMenu = "~r~NA"
|
|
ENDIF
|
|
ELSE
|
|
sClothesSelect.tlShopMenu = "~r~NA"
|
|
sClothesSelect.tlDLCKey = "~r~NA"
|
|
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(iDLCPackName, sClothesSelect.tlDLCPack)
|
|
sClothesSelect.tlDLCPack = ""
|
|
sClothesSelect.tlDLCPack += iDLCPackName
|
|
ENDIF
|
|
|
|
ePedComp = GET_PED_PROP_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iSlot))
|
|
IF ePedComp != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_PROPS, ePedComp)
|
|
sClothesSelect.tlItemLabel = g_sTempCompData[1].sLabel
|
|
ELSE
|
|
sClothesSelect.tlItemLabel = ""
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
|
|
sClothesSelect.iDecorationCount = 0
|
|
sClothesSelect.tlDLCKey = "~r~NA"
|
|
sClothesSelect.iDecorationCollection = -1
|
|
sClothesSelect.iDecorationPreset = -1
|
|
sClothesSelect.tlItemLabel = "~r~NA"
|
|
sClothesSelect.bDecorationCompatible = FALSE
|
|
|
|
TATTOO_FACTION_ENUM eFaction = TATTOO_MP_FM
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
sTattooShopItemValues sDLCTattooData
|
|
|
|
// Grab top info so we can check compatibility
|
|
INT iDLCItemHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB))
|
|
// If we're wearing a jacket try and get the jbib version of the t-shirt instead
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PED_COMP_NAME_ENUM eCurrentAccs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), COMP_TYPE_SPECIAL)
|
|
PED_COMP_NAME_ENUM eJBIBFromAccs = GET_JBIB_FROM_SPECIAL(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCurrentAccs, GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL))
|
|
IF eJBIBFromAccs != DUMMY_PED_COMP
|
|
iDLCItemHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB))
|
|
ENDIF
|
|
ENDIF
|
|
|
|
INT iPresetCount
|
|
INT iCompatiblePresets[256]
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCItemHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Need to lookup the variant components defined in the shop meta for this dlc jbib
|
|
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_DECL))
|
|
iCompatiblePresets[iPresetCount] = iRetNameHash
|
|
iPresetCount++
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("torsoDecal")
|
|
AND (NOT sClothesSelect.bCompatibleOnly OR IS_HASH_VALUE_IN_HASH_ARRAY(sDLCTattooData.Preset, iCompatiblePresets))
|
|
|
|
IF sClothesSelect.iDecorationIndex = sClothesSelect.iDecorationCount
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(sDLCTattooData.Collection, sClothesSelect.tlDLCKey)
|
|
sClothesSelect.tlDLCKey = ""
|
|
sClothesSelect.tlDLCKey += sDLCTattooData.Collection
|
|
ENDIF
|
|
sClothesSelect.iDecorationCollection = sDLCTattooData.Collection
|
|
sClothesSelect.iDecorationPreset = sDLCTattooData.Preset
|
|
sClothesSelect.tlItemLabel = sDLCTattooData.Label
|
|
sClothesSelect.bDecorationCompatible = IS_HASH_VALUE_IN_HASH_ARRAY(sDLCTattooData.Preset, iCompatiblePresets)
|
|
ENDIF
|
|
sClothesSelect.iDecorationCount++
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Preview
|
|
IF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] != 0
|
|
UPDATE_TATOOS_MP(PLAYER_PED_ID(), TRUE)
|
|
IF sClothesSelect.iDecorationCollection != -1
|
|
AND sClothesSelect.iDecorationPreset != -1
|
|
ADD_PED_DECORATION_FROM_HASHES(PLAYER_PED_ID(), sClothesSelect.iDecorationCollection, sClothesSelect.iDecorationPreset)
|
|
ADD_SECONDARY_PED_DECORATION_FROM_HASHES(PLAYER_PED_ID(), sClothesSelect.iDecorationCollection, sClothesSelect.iDecorationPreset)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
sClothesSelect.iOutfitCount = SETUP_SHOP_PED_OUTFIT_QUERY(3, 0)//ENUM_TO_INT(CLO_SHOP_LOW))
|
|
ELIF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
sClothesSelect.iOutfitCount = SETUP_SHOP_PED_OUTFIT_QUERY(4, 0)//ENUM_TO_INT(CLO_SHOP_LOW))
|
|
ELSE
|
|
sClothesSelect.iOutfitCount = 0
|
|
ENDIF
|
|
|
|
scrShopPedOutfit outfitItem
|
|
GET_SHOP_PED_QUERY_OUTFIT(sClothesSelect.iOutfitIndex, outfitItem)
|
|
|
|
IF NOT GET_DLC_NAME_HASH_STRING(outfitItem.m_nameHash, sClothesSelect.tlDLCKey)
|
|
sClothesSelect.tlDLCKey = ""
|
|
sClothesSelect.tlDLCKey += outfitItem.m_nameHash
|
|
ENDIF
|
|
sClothesSelect.tlDLCPack = GET_SHOP_CONTENT_FOR_MENU(outfitItem.m_textLabel)
|
|
sClothesSelect.tlItemLabel = outfitItem.m_textLabel
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
|
|
sClothesSelect.eModelSelect = GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
|
|
ENDIF
|
|
sClothesSelect.bUseCachedClothingData = TRUE
|
|
sClothesSelect.bGrabClothingData = FALSE
|
|
ENDIF
|
|
|
|
IF sClothesSelect.bRebuildMenu
|
|
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MAIN
|
|
|
|
CLEAR_MENU_DATA()
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("CLOTHING DEBUG (Shift+C)")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT)
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Components")
|
|
ADD_MENU_ITEM_TEXT(1, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Props")
|
|
ADD_MENU_ITEM_TEXT(2, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Overlays")
|
|
ADD_MENU_ITEM_TEXT(3, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Outfits")
|
|
ADD_MENU_ITEM_TEXT(4, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Model")
|
|
ADD_MENU_ITEM_TEXT(5, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Locate")
|
|
ADD_MENU_ITEM_TEXT(6, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Camera")
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_ACCEPT, "ITEM_SELECT")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
|
|
CLEAR_MENU_DATA()
|
|
SET_MAX_MENU_ROWS_TO_DISPLAY(12)
|
|
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT COMPONENT")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
INT iItem
|
|
REPEAT 12 iItem
|
|
ADD_MENU_ITEM_TEXT(iItem, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL(GET_PED_COMP_NAME_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem)))
|
|
|
|
ADD_MENU_ITEM_TEXT(iItem, "CLO_SEL_RNG", 2)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
AND sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = iItem
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iLastIndex)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iLastTexture)
|
|
ELSE
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iItem)))
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iItem)))
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_ACCEPT, "ITEM_VAL")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_SELECT, "CLO_SEL_SRCH")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_X, "ITEM_REM")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_RT, "ITEM_SKIP")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_RB, "ITEM_SKIP2")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
|
|
CLEAR_MENU_DATA()
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT PROP")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
INT iItem
|
|
REPEAT 9 iItem
|
|
ADD_MENU_ITEM_TEXT(iItem, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iItem)))
|
|
|
|
ADD_MENU_ITEM_TEXT(iItem, "CLO_SEL_RNG", 2)
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
AND sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = iItem
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iLastIndex)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iLastTexture)
|
|
ELSE
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(GET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iItem)))
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iItem)))
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_SELECT, "CLO_SEL_SRCH")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_X, "ITEM_REM")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_RT, "ITEM_SKIP")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_RB, "ITEM_SKIP2")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
|
|
CLEAR_MENU_DATA()
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT OVERLAY")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Compatible Only")
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
IF sClothesSelect.bCompatibleOnly
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Yes")
|
|
ELSE
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("No")
|
|
ENDIF
|
|
|
|
ADD_MENU_ITEM_TEXT(1, "STRING", 1, (sClothesSelect.iDecorationCount > 0))
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Overlay")
|
|
|
|
ADD_MENU_ITEM_TEXT(1, "CM_ITEM_COUNT", 2, (sClothesSelect.iDecorationCount > 0))
|
|
|
|
IF sClothesSelect.iDecorationIndex = 0
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(0)
|
|
ELSE
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iDecorationIndex+1)
|
|
ENDIF
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iDecorationCount)
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_X, "ITEM_REM")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_RT, "ITEM_SKIP2")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
|
|
CLEAR_MENU_DATA()
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT OUTFIT")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Outfit")
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "CM_ITEM_COUNT", 2)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iOutfitIndex+1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_INT(sClothesSelect.iOutfitCount)
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_RB, "ITEM_SKIP2")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
|
|
CLEAR_MENU_DATA()
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT MODEL")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Model")
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
IF sClothesSelect.eModelSelect = MP_M_FREEMODE_01
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("MP_M_FREEMODE_01")
|
|
ELIF sClothesSelect.eModelSelect = MP_F_FREEMODE_01
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("MP_F_FREEMODE_01")
|
|
ENDIF
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
|
|
CLEAR_MENU_DATA()
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT LOCATE")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Locate")
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
SWITCH sClothesSelect.iLocateSelect
|
|
CASE SHOP_LOCATE_WARP_LOCATION_TOPS ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Tops") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_PANTS ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Pants") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_SHOES ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Shoes") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_ACCESSORIES ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Accessories") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_GLASSES ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Glasses") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_HATS ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Hats") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_MASKS ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Masks") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_OUTFITS ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Outfits") BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_WARDROBE ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Wardrobe") BREAK
|
|
ENDSWITCH
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
|
|
CLEAR_MENU_DATA()
|
|
CUSTOM_MENU_W = 0.320
|
|
SET_MENU_TITLE("STRING")
|
|
ADD_LITERAL_TO_MENU_TITLE("SELECT CAMERA")
|
|
|
|
SET_MENU_ITEM_JUSTIFICATION(FONT_LEFT, FONT_RIGHT)
|
|
SET_MENU_ITEM_LAYOUT(MENU_ITEM_TEXT, MENU_ITEM_TEXT)
|
|
SET_MENU_ITEM_TOGGLEABLE(FALSE, TRUE)
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Camera")
|
|
|
|
ADD_MENU_ITEM_TEXT(0, "STRING", 1)
|
|
SWITCH sClothesSelect.iCameraSelect
|
|
CASE CAMERA_SELECT_OFF ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Off") BREAK
|
|
CASE CAMERA_SELECT_HEAD ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Head") BREAK
|
|
CASE CAMERA_SELECT_TORSO ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Torso") BREAK
|
|
CASE CAMERA_SELECT_LEGS ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Legs") BREAK
|
|
CASE CAMERA_SELECT_FEET ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Feet") BREAK
|
|
CASE CAMERA_SELECT_HEAD_REAR ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Head Rear") BREAK
|
|
CASE CAMERA_SELECT_TORSO_REAR ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Torso Rear") BREAK
|
|
CASE CAMERA_SELECT_LEGS_REAR ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Legs Rear") BREAK
|
|
CASE CAMERA_SELECT_FEET_REAR ADD_MENU_ITEM_TEXT_COMPONENT_LITERAL("Feet Rear") BREAK
|
|
ENDSWITCH
|
|
|
|
SET_TOP_MENU_ITEM(sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth])
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_CANCEL, "ITEM_BACK")
|
|
ADD_MENU_HELP_KEY_CLICKABLE(INPUT_FRONTEND_Y, "ITEM_EXIT")
|
|
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = FALSE
|
|
ENDIF
|
|
|
|
DRAW_DEBUG_CLOTHING_MENU()
|
|
|
|
IF sClothesSelect.bValidateClothes
|
|
IF sClothesSelect.iValidateClothesCount = 0
|
|
PED_COMP_NAME_ENUM eCurrentJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), COMP_TYPE_JBIB)
|
|
PED_COMP_NAME_ENUM eCurrentAccs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), COMP_TYPE_SPECIAL)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_JBIB, eCurrentJbib)
|
|
IF IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
// Skip
|
|
sClothesSelect.bValidateClothes = FALSE
|
|
ELSE
|
|
// Re-apply jbib to correct some components.
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eCurrentJbib, FALSE)
|
|
|
|
// Grab correct accs for current jacket
|
|
IF IS_JBIB_COMPONENT_A_JACKET(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCurrentJbib)
|
|
PED_COMP_NAME_ENUM eJBIBFromAccs = GET_JBIB_FROM_SPECIAL(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCurrentAccs, GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL))
|
|
IF eJBIBFromAccs != DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eTempSpecial = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(GET_ENTITY_MODEL(PLAYER_PED_ID()), eJBIBFromAccs, eCurrentJbib, GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL))
|
|
IF eTempSpecial != DUMMY_PED_COMP
|
|
AND eTempSpecial != eCurrentAccs
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_SPECIAL, eTempSpecial, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iValidateClothesCount = 1
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_BERD, GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_BERD), COMP_TYPE_BERD), FALSE)
|
|
ELIF sClothesSelect.iValidateClothesCount = 2
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), COMP_TYPE_JBIB), FALSE)
|
|
ELIF sClothesSelect.iValidateClothesCount = 3
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG), COMP_TYPE_LEGS), FALSE)
|
|
ELIF sClothesSelect.iValidateClothesCount = 4
|
|
|
|
//VALIDATE_INVISIBLE_PED_COMPONENTS()
|
|
|
|
sClothesSelect.bValidateClothes = FALSE
|
|
sClothesSelect.iValidateClothesCount = 0
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.bUseCachedClothingData = FALSE
|
|
ENDIF
|
|
sClothesSelect.iValidateClothesCount++
|
|
EXIT
|
|
ENDIF
|
|
|
|
IF sClothesSelect.bEnterKeyWord
|
|
|
|
SWITCH UPDATE_ONSCREEN_KEYBOARD()
|
|
CASE OSK_SUCCESS
|
|
sClothesSelect.tlKeyWord = GET_ONSCREEN_KEYBOARD_RESULT()
|
|
SET_KEYBOARD_MODE(KEYBOARD_MODE_DEBUG)
|
|
sClothesSelect.bEnterKeyWord = FALSE
|
|
sClothesSelect.bKeyWordState = TRUE
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlKeyWord)
|
|
AND GET_LENGTH_OF_LITERAL_STRING(sClothesSelect.tlKeyWord) > 1
|
|
INT iLabelHash
|
|
iLabelHash = GET_HASH_KEY(GET_CHARACTER_FROM_AUDIO_CONVERSATION_FILENAME(sClothesSelect.tlKeyWord, 0, 1))
|
|
IF iLabelHash = HASH("!")
|
|
sClothesSelect.tlKeyWord = GET_CHARACTER_FROM_AUDIO_CONVERSATION_FILENAME(sClothesSelect.tlKeyWord, 1, GET_LENGTH_OF_LITERAL_STRING(sClothesSelect.tlKeyWord))
|
|
sClothesSelect.bKeyWordState = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE OSK_CANCELLED
|
|
CASE OSK_FAILED
|
|
SET_KEYBOARD_MODE(KEYBOARD_MODE_DEBUG)
|
|
sClothesSelect.bEnterKeyWord = FALSE
|
|
sClothesSelect.bKeyWordState = TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
EXIT
|
|
ENDIF
|
|
|
|
UPDATE_SHOP_INPUT_DATA(sClothesSelect.sInputData, 300)
|
|
|
|
BOOL bUp = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_UP)) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_UP) OR (IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_UP) AND sClothesSelect.sInputData.bDPADUPReset)
|
|
BOOL bDown = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_DOWN)) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_DOWN) OR (IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_DOWN) AND sClothesSelect.sInputData.bDPADDOWNReset)
|
|
BOOL bLeft = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_LEFT)) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_LEFT) OR (IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_LEFT) AND sClothesSelect.sInputData.bDPADLEFTReset)
|
|
BOOL bRight = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_RIGHT)) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_RIGHT) OR (IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_RIGHT) AND sClothesSelect.sInputData.bDPADRIGHTReset)
|
|
BOOL bAccept = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_ACCEPT) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_RETURN))
|
|
BOOL bCancel = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_CANCEL) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_BACK))
|
|
BOOL bOptions = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_SELECT) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_DELETE))
|
|
BOOL bExit = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_Y) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_ESCAPE))
|
|
BOOL bClear = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_X) OR IS_KEYBOARD_KEY_JUST_PRESSED(KEY_HOME))
|
|
BOOL bDrawSkip = (IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_RT))
|
|
BOOL bBlockSkip = (IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_RB))
|
|
BOOL bOutputToDebug = (IS_CONTROL_JUST_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_LB))
|
|
|
|
// Force accept
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
AND sClothesSelect.bSetPlayerModel
|
|
bAccept = TRUE
|
|
ENDIF
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
AND sClothesSelect.bWarpToLocate
|
|
bAccept = TRUE
|
|
ENDIF
|
|
|
|
// Priorities
|
|
IF sClothesSelect.bReleaseUD
|
|
IF NOT IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_UP)
|
|
AND NOT IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_DOWN)
|
|
sClothesSelect.bReleaseUD = FALSE
|
|
ELSE
|
|
bLeft = FALSE
|
|
bRight = FALSE
|
|
ENDIF
|
|
ELIF sClothesSelect.bReleaseLR
|
|
IF NOT IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_LEFT)
|
|
AND NOT IS_CONTROL_PRESSED(FRONTEND_CONTROL, INPUT_FRONTEND_RIGHT)
|
|
sClothesSelect.bReleaseLR = FALSE
|
|
ELSE
|
|
bUp = FALSE
|
|
bDown = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF bUp OR bDown
|
|
sClothesSelect.bReleaseUD = TRUE
|
|
ENDIF
|
|
IF bLeft OR bRight
|
|
sClothesSelect.bReleaseLR = TRUE
|
|
ENDIF
|
|
|
|
IF bOutputToDebug
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
OR sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
OPEN_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("[")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])))
|
|
SAVE_STRING_TO_DEBUG_FILE("][")
|
|
SAVE_STRING_TO_DEBUG_FILE(sClothesSelect.tlDLCPack)
|
|
SAVE_STRING_TO_DEBUG_FILE("][global=")
|
|
SAVE_INT_TO_DEBUG_FILE(sClothesSelect.iIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(",")
|
|
SAVE_INT_TO_DEBUG_FILE(sClothesSelect.iTexture)
|
|
SAVE_STRING_TO_DEBUG_FILE("][local=")
|
|
SAVE_INT_TO_DEBUG_FILE(sClothesSelect.iLocalIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(",")
|
|
SAVE_INT_TO_DEBUG_FILE(sClothesSelect.iTexture)
|
|
SAVE_STRING_TO_DEBUG_FILE("][")
|
|
SAVE_STRING_TO_DEBUG_FILE("enum=")
|
|
SAVE_INT_TO_DEBUG_FILE((ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), sClothesSelect.iIndex, sClothesSelect.iTexture, INT_TO_ENUM(PED_COMP_TYPE_ENUM, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])))))
|
|
SAVE_STRING_TO_DEBUG_FILE("][")
|
|
SAVE_STRING_TO_DEBUG_FILE(sClothesSelect.tlDLCKey)
|
|
SAVE_STRING_TO_DEBUG_FILE("]")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
CLOSE_DEBUG_FILE()
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Timers
|
|
IF bUp OR bDown
|
|
sClothesSelect.sInputData.bDPADUPReset = FALSE
|
|
sClothesSelect.sInputData.bDPADDownReset = FALSE
|
|
sClothesSelect.sInputData.bLeftStickUDReset = FALSE
|
|
sClothesSelect.sInputData.iLeftStickUDTimer = GET_GAME_TIMER()
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
sClothesSelect.sInputData.iMP_LeftStickUDTimer = GET_NETWORK_TIME()
|
|
ENDIF
|
|
ELIF bLeft OR bRight
|
|
sClothesSelect.sInputData.bDPADLEFTReset = FALSE
|
|
sClothesSelect.sInputData.bDPADRIGHTReset = FALSE
|
|
sClothesSelect.sInputData.bLeftStickLRReset = FALSE
|
|
sClothesSelect.sInputData.iLeftStickLRTimer = GET_GAME_TIMER()
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
sClothesSelect.sInputData.iMP_LeftStickLRTimer = GET_NETWORK_TIME()
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Navigation
|
|
IF bAccept
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MAIN
|
|
sClothesSelect.iCurrentItem_copy[sClothesSelect.iMenuDepth] = sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]
|
|
sClothesSelect.iCurrentTopItem_copy[sClothesSelect.iMenuDepth] = sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth]
|
|
|
|
IF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 0
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
ELIF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 1
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
ELIF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 2
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.iDecorationIndex = 0
|
|
ELIF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 3
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.iOutfitIndex = 0
|
|
ELIF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 4
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
ELIF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 5
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
ELIF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 6
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
ENDIF
|
|
sClothesSelect.iMenuDepth++
|
|
|
|
sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 0
|
|
sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth] = 0
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1,"SELECT","HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
OR sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
sClothesSelect.bValidateClothes = TRUE
|
|
sClothesSelect.iValidateClothesCount = 0
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
// [TODO]
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_OUTFIT, INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(OUTFIT_FMM_DLC)+sClothesSelect.iOutfitIndex), FALSE)
|
|
ELIF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_OUTFIT, INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(OUTFIT_FMF_DLC)+sClothesSelect.iOutfitIndex), FALSE)
|
|
ENDIF
|
|
|
|
UPDATE_TATOOS_MP(PLAYER_PED_ID())
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
|
|
sClothesSelect.bSetPlayerModel = TRUE
|
|
|
|
REQUEST_MODEL(sClothesSelect.eModelSelect)
|
|
IF HAS_MODEL_LOADED(sClothesSelect.eModelSelect)
|
|
|
|
FLOAT fGameplayCamHeading = GET_GAMEPLAY_CAM_RELATIVE_HEADING()
|
|
FLOAT fGameplayCamPitch = GET_GAMEPLAY_CAM_RELATIVE_PITCH()
|
|
|
|
SET_PLAYER_MODEL(PLAYER_ID(), sClothesSelect.eModelSelect)
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(PLAYER_PED_ID())
|
|
SET_MODEL_AS_NO_LONGER_NEEDED(sClothesSelect.eModelSelect)
|
|
|
|
// Update stored model
|
|
IF sClothesSelect.eModelSelect = MP_M_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 0)
|
|
ELIF sClothesSelect.eModelSelect = MP_F_FREEMODE_01
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 1)
|
|
ENDIF
|
|
|
|
// Clear some save data.
|
|
INT i
|
|
TATTOO_FACTION_ENUM eFaction = TATTOO_MP_FM
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, i), FALSE)
|
|
ENDREPEAT
|
|
REPEAT iDLCCount iDLCIndex
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex), FALSE)
|
|
ENDREPEAT
|
|
|
|
SET_GAMEPLAY_CAM_RELATIVE_HEADING(fGameplayCamHeading)
|
|
SET_GAMEPLAY_CAM_RELATIVE_PITCH(fGameplayCamPitch)
|
|
|
|
sClothesSelect.bSetPlayerModel = FALSE
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
|
|
BOOL bLoadingScene = FALSE
|
|
|
|
VECTOR vLocateCoords
|
|
FLOAT fLocateHeading
|
|
SWITCH sClothesSelect.iLocateSelect
|
|
CASE SHOP_LOCATE_WARP_LOCATION_TOPS vLocateCoords = <<76.0612, -1396.2948, 28.3761>> fLocateHeading = 281.1407 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_PANTS vLocateCoords = <<80.3144, -1399.1885, 28.3761>> fLocateHeading = 307.7607 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_SHOES vLocateCoords = <<81.4530, -1396.6451, 28.3761>> fLocateHeading = 294.1775 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_ACCESSORIES vLocateCoords = <<77.7338, -1389.3140, 28.3761>> fLocateHeading = 29.8214 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_GLASSES vLocateCoords = <<75.1655, -1390.8882, 28.3761>> fLocateHeading = 120.8661 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_HATS vLocateCoords = <<73.2574, -1400.3412, 28.3761>> fLocateHeading = 215.6490 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_MASKS vLocateCoords = <<-1336.5450, -1278.8964, 3.8578>> fLocateHeading = 292.4067 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_OUTFITS vLocateCoords = <<75.4393, -1392.4756, 28.3761>> fLocateHeading = 103.7945 BREAK
|
|
CASE SHOP_LOCATE_WARP_LOCATION_WARDROBE vLocateCoords = <<71.2583, -1387.7257, 28.3761>> fLocateHeading = 5.6863 BREAK
|
|
ENDSWITCH
|
|
|
|
// Keep processing until we load the scene.
|
|
IF NOT IS_NEW_LOAD_SCENE_ACTIVE()
|
|
NEW_LOAD_SCENE_START_SPHERE(vLocateCoords, 50)
|
|
ENDIF
|
|
IF IS_NEW_LOAD_SCENE_ACTIVE()
|
|
IF NOT IS_NEW_LOAD_SCENE_LOADED()
|
|
bLoadingScene = TRUE
|
|
ELSE
|
|
NEW_LOAD_SCENE_STOP()
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF bLoadingScene
|
|
sClothesSelect.bWarpToLocate = TRUE
|
|
ELSE
|
|
SET_ENTITY_COORDS(PLAYER_PED_ID(), vLocateCoords)
|
|
SET_ENTITY_HEADING(PLAYER_PED_ID(), fLocateHeading)
|
|
SET_GAMEPLAY_CAM_RELATIVE_HEADING(0.0)
|
|
SET_GAMEPLAY_CAM_RELATIVE_PITCH(0.0)
|
|
sClothesSelect.bWarpToLocate = FALSE
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
|
|
SWITCH sClothesSelect.iCameraSelect
|
|
CASE CAMERA_SELECT_OFF bUseOffsetCam = FALSE BREAK
|
|
CASE CAMERA_SELECT_HEAD bUseOffsetCam = TRUE bSetOffsetCamPreset[0] = TRUE BREAK
|
|
CASE CAMERA_SELECT_TORSO bUseOffsetCam = TRUE bSetOffsetCamPreset[2] = TRUE BREAK
|
|
CASE CAMERA_SELECT_LEGS bUseOffsetCam = TRUE bSetOffsetCamPreset[4] = TRUE BREAK
|
|
CASE CAMERA_SELECT_FEET bUseOffsetCam = TRUE bSetOffsetCamPreset[6] = TRUE BREAK
|
|
CASE CAMERA_SELECT_HEAD_REAR bUseOffsetCam = TRUE bSetOffsetCamPreset[1] = TRUE BREAK
|
|
CASE CAMERA_SELECT_TORSO_REAR bUseOffsetCam = TRUE bSetOffsetCamPreset[3] = TRUE BREAK
|
|
CASE CAMERA_SELECT_LEGS_REAR bUseOffsetCam = TRUE bSetOffsetCamPreset[5] = TRUE BREAK
|
|
CASE CAMERA_SELECT_FEET_REAR bUseOffsetCam = TRUE bSetOffsetCamPreset[7] = TRUE BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
ELIF bClear
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
PED_COMPONENT ePedComp = INT_TO_ENUM(PED_COMPONENT, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
// Berd?
|
|
IF ePedComp = PED_COMP_BERD
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_BERD, INT_TO_ENUM(PED_COMP_NAME_ENUM, 0), FALSE)
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), ePedComp, 0, 0)
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.bUseCachedClothingData = FALSE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
CLEAR_PED_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]))
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.bUseCachedClothingData = FALSE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
UPDATE_TATOOS_MP(PLAYER_PED_ID())
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ENDIF
|
|
ELIF bCancel
|
|
IF sClothesSelect.iCurrentMenu > 0
|
|
sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MAIN
|
|
sClothesSelect.iMenuDepth--
|
|
sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = sClothesSelect.iCurrentItem_copy[sClothesSelect.iMenuDepth]
|
|
sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth] = sClothesSelect.iCurrentTopItem_copy[sClothesSelect.iMenuDepth]
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1,"CANCEL","HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ENDIF
|
|
ELIF bOptions
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
OR sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
sClothesSelect.bEnterKeyWord = TRUE
|
|
SHOW_ONSCREEN_KEYBOARD("CLO_SEL_SRCHT", "", 15)
|
|
PLAY_SOUND_FRONTEND(-1,"CANCEL","HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ENDIF
|
|
ELIF bExit
|
|
sClothesSelect.bDisplay = FALSE
|
|
sClothesSelect.bMenuInitialised = FALSE
|
|
IF NOT GET_COMMANDLINE_PARAM_EXISTS("sc_SkipPedCompValidation")
|
|
g_bValidatePlayersTorsoComponent = TRUE
|
|
ENDIF
|
|
bUseOffsetCam = FALSE
|
|
g_bSafeToProcessMPChecks = TRUE
|
|
PRINTLN("PROCESS_CLOTHING_SELECT_MENU - De-activating debug menu (Exit)")
|
|
PLAY_SOUND_FRONTEND(-1,"CANCEL","HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF bUp
|
|
sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]--
|
|
IF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] < 0
|
|
sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = (GET_CLOTHING_SELECT_MENU_COUNT(sClothesSelect.iCurrentMenu)-1)
|
|
ENDIF
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth] = GET_TOP_MENU_ITEM()
|
|
PLAY_SOUND_FRONTEND(-1,"NAV_UP_DOWN","HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
OR sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.bUseCachedClothingData = FALSE
|
|
ENDIF
|
|
|
|
ELIF bDown
|
|
sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth]++
|
|
IF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] > (GET_CLOTHING_SELECT_MENU_COUNT(sClothesSelect.iCurrentMenu)-1)
|
|
sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 0
|
|
ENDIF
|
|
SET_CURRENT_MENU_ITEM(sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
sClothesSelect.iCurrentTopItem[sClothesSelect.iMenuDepth] = GET_TOP_MENU_ITEM()
|
|
PLAY_SOUND_FRONTEND(-1,"NAV_UP_DOWN","HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
OR sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
sClothesSelect.bUseCachedClothingData = FALSE
|
|
ENDIF
|
|
|
|
ELIF bLeft
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
|
|
PED_COMPONENT ePedComp = INT_TO_ENUM(PED_COMPONENT, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
PED_COMP_TYPE_ENUM eCompType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
INT iDrawable = GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
INT iTexture = GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
|
|
// Use keyword search
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlKeyWord)
|
|
|
|
INT iItemCount
|
|
INT iStartDraw = iDrawable
|
|
INT iStartTexture = iTexture-1
|
|
BOOL bItemFound = FALSE
|
|
|
|
FOR iDrawable = iStartDraw TO 0 STEP -1
|
|
|
|
IF iDrawable != iStartDraw
|
|
iStartTexture = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePedComp, iDrawable)-1
|
|
ENDIF
|
|
|
|
FOR iTexture = iStartTexture TO 0 STEP -1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCompType, GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, eCompType))
|
|
IF DOES_ITEM_LABEL_CONTAIN_STRING(g_sTempCompData[1].sLabel, sClothesSelect.tlKeyWord)
|
|
OR (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND sClothesSelect.bKeyWordState = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, GET_HASH_KEY(sClothesSelect.tlKeyWord), ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
IF NOT bDrawSkip OR iDrawable != iStartDraw
|
|
bItemFound = TRUE
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDIF
|
|
iItemCount++
|
|
|
|
IF (iItemCount % 50) = 0
|
|
WAIT(0)
|
|
IS_PED_INJURED(PLAYER_PED_ID())
|
|
DRAW_DEBUG_CLOTHING_MENU(TRUE)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF bItemFound
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF NOT bItemFound
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF iTexture > 0
|
|
AND NOT bDrawSkip
|
|
AND NOT bBlockSkip
|
|
iTexture--
|
|
ELIF iDrawable > 0
|
|
OR bDrawSkip
|
|
OR bBlockSkip
|
|
IF bBlockSkip
|
|
INT iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), ENUM_TO_INT(ePedComp), iDrawable)
|
|
INT iDLCPackHash2
|
|
BOOL bFoundItem = FALSE
|
|
|
|
iDrawable--
|
|
WHILE iDrawable > 0 AND NOT bFoundItem
|
|
iDLCPackHash2 = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), ENUM_TO_INT(ePedComp), iDrawable)
|
|
IF iDLCPackHash != iDLCPackHash2
|
|
bFoundItem = TRUE
|
|
ELSE
|
|
iDrawable--
|
|
ENDIF
|
|
ENDWHILE
|
|
ELSE
|
|
iDrawable--
|
|
ENDIF
|
|
IF iDrawable < 0
|
|
iDrawable = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp)-1
|
|
ENDIF
|
|
iTexture = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePedComp, iDrawable)-1
|
|
IF bDrawSkip
|
|
OR bBlockSkip
|
|
iTexture = 0
|
|
ENDIF
|
|
ELSE
|
|
iDrawable = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp)-1
|
|
iTexture = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePedComp, iDrawable)-1
|
|
ENDIF
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, eCompType)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCompType, eItem)
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND IS_CONTENT_ITEM_LOCKED(g_iLastDLCItemLockHash))
|
|
// Skip.
|
|
ELIF ePedComp = PED_COMP_BERD
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), eCompType, eItem, FALSE)
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), ePedComp, iDrawable, iTexture)
|
|
ENDIF
|
|
|
|
sClothesSelect.iLastIndex = iDrawable
|
|
sClothesSelect.iLastTexture = iTexture
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
PED_PROP_POSITION ePropPos = INT_TO_ENUM(PED_PROP_POSITION, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
INT iDrawable = GET_PED_PROP_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
INT iTexture = GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
|
|
// Use keyword search
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlKeyWord)
|
|
|
|
INT iItemCount
|
|
INT iStartDraw = iDrawable
|
|
INT iStartTexture = iTexture-1
|
|
BOOL bItemFound = FALSE
|
|
|
|
FOR iDrawable = iStartDraw TO 0 STEP -1
|
|
|
|
IF iDrawable != iStartDraw
|
|
iStartTexture = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePropPos, iDrawable)-1
|
|
ENDIF
|
|
|
|
FOR iTexture = iStartTexture TO 0 STEP -1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_PROPS, GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, ePropPos))
|
|
IF DOES_ITEM_LABEL_CONTAIN_STRING(g_sTempCompData[1].sLabel, sClothesSelect.tlKeyWord)
|
|
OR (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND sClothesSelect.bKeyWordState = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, GET_HASH_KEY(sClothesSelect.tlKeyWord), ENUM_TO_INT(SHOP_PED_PROP)))
|
|
IF NOT bDrawSkip OR iDrawable != iStartDraw
|
|
bItemFound = TRUE
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDIF
|
|
iItemCount++
|
|
|
|
IF (iItemCount % 50) = 0
|
|
WAIT(0)
|
|
IS_PED_INJURED(PLAYER_PED_ID())
|
|
DRAW_DEBUG_CLOTHING_MENU(TRUE)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF bItemFound
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF NOT bItemFound
|
|
iDrawable = GET_PED_PROP_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
iTexture = GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF iTexture > 0
|
|
AND NOT bDrawSkip
|
|
AND NOT bBlockSkip
|
|
iTexture--
|
|
ELIF iDrawable > -1
|
|
IF bBlockSkip
|
|
INT iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), ePropPos, iDrawable)
|
|
INT iDLCPackHash2
|
|
BOOL bFoundItem = FALSE
|
|
|
|
iDrawable--
|
|
WHILE iDrawable > 0 AND NOT bFoundItem
|
|
iDLCPackHash2 = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), ePropPos, iDrawable)
|
|
IF iDLCPackHash != iDLCPackHash2
|
|
bFoundItem = TRUE
|
|
ELSE
|
|
iDrawable--
|
|
ENDIF
|
|
ENDWHILE
|
|
ELSE
|
|
iDrawable--
|
|
ENDIF
|
|
IF iDrawable <= -1
|
|
iDrawable = -1
|
|
iTexture = -1
|
|
ENDIF
|
|
IF iDrawable >= 0
|
|
iTexture = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePropPos, iDrawable)-1
|
|
IF bDrawSkip
|
|
OR bBlockSkip
|
|
iTexture = 0
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
iDrawable = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos)-1
|
|
iTexture = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePropPos, iDrawable)-1
|
|
ENDIF
|
|
ENDIF
|
|
IF iDrawable = -1
|
|
CLEAR_PED_PROP(PLAYER_PED_ID(), ePropPos)
|
|
ELSE
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, COMP_TYPE_PROPS)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_PROPS, eItem)
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND IS_CONTENT_ITEM_LOCKED(g_iLastDLCItemLockHash))
|
|
// Skip.
|
|
ELSE
|
|
SET_PED_PROP_INDEX(PLAYER_PED_ID(), ePropPos, iDrawable, iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
sClothesSelect.iLastIndex = iDrawable
|
|
sClothesSelect.iLastTexture = iTexture
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
|
|
IF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 0 // Compatible?
|
|
sClothesSelect.bCompatibleOnly = !sClothesSelect.bCompatibleOnly
|
|
sClothesSelect.iDecorationIndex = 0
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ELSE
|
|
IF bDrawSkip
|
|
// Get the previous collection
|
|
|
|
TATTOO_FACTION_ENUM eFaction = TATTOO_MP_FM
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
sTattooShopItemValues sDLCTattooData
|
|
INT iTempDecIndex = sClothesSelect.iDecorationIndex
|
|
INT iPreviousCollection = 0
|
|
INT iDecCount = 0
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("torsoDecal")
|
|
IF iPreviousCollection != sDLCTattooData.Collection
|
|
AND sClothesSelect.iDecorationCollection != sDLCTattooData.Collection
|
|
AND iDecCount < sClothesSelect.iDecorationIndex
|
|
iTempDecIndex = iDecCount
|
|
iPreviousCollection = sDLCTattooData.Collection
|
|
ENDIF
|
|
iDecCount++
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
sClothesSelect.iDecorationIndex = iTempDecIndex
|
|
|
|
ELSE
|
|
sClothesSelect.iDecorationIndex--
|
|
IF sClothesSelect.iDecorationIndex < 0
|
|
sClothesSelect.iDecorationIndex = sClothesSelect.iDecorationCount-1
|
|
ENDIF
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
|
|
IF bBlockSkip
|
|
INT iDLCOutfitPack
|
|
STRING strPack
|
|
scrShopPedOutfit outfitItem
|
|
BOOL bItemFound = FALSE
|
|
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
sClothesSelect.iOutfitCount = SETUP_SHOP_PED_OUTFIT_QUERY(3, 0)//ENUM_TO_INT(CLO_SHOP_LOW))
|
|
ELIF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
sClothesSelect.iOutfitCount = SETUP_SHOP_PED_OUTFIT_QUERY(4, 0)//ENUM_TO_INT(CLO_SHOP_LOW))
|
|
ENDIF
|
|
|
|
GET_SHOP_PED_QUERY_OUTFIT(sClothesSelect.iOutfitIndex, outfitItem)
|
|
strPack = GET_SHOP_CONTENT_FOR_MENU(outfitItem.m_textLabel)
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(strPack)
|
|
iDLCOutfitPack = GET_HASH_KEY(strPack)
|
|
ENDIF
|
|
|
|
WHILE sClothesSelect.iOutfitIndex > 0 AND NOT bItemFound
|
|
sClothesSelect.iOutfitIndex--
|
|
GET_SHOP_PED_QUERY_OUTFIT(sClothesSelect.iOutfitIndex, outfitItem)
|
|
strPack = GET_SHOP_CONTENT_FOR_MENU(outfitItem.m_textLabel)
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(strPack)
|
|
IF iDLCOutfitPack != GET_HASH_KEY(strPack)
|
|
bItemFound = TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDWHILE
|
|
ELSE
|
|
sClothesSelect.iOutfitIndex--
|
|
ENDIF
|
|
|
|
sClothesSelect.iOutfitIndex--
|
|
IF sClothesSelect.iOutfitIndex < 0
|
|
sClothesSelect.iOutfitIndex = sClothesSelect.iOutfitCount-1
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
|
|
IF sClothesSelect.eModelSelect = MP_M_FREEMODE_01
|
|
sClothesSelect.eModelSelect = MP_F_FREEMODE_01
|
|
ELSE
|
|
sClothesSelect.eModelSelect = MP_M_FREEMODE_01
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
|
|
sClothesSelect.iLocateSelect--
|
|
IF sClothesSelect.iLocateSelect < 0
|
|
sClothesSelect.iLocateSelect = MAX_SHOP_LOCATE_WARP_LOCATIONS-1
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
|
|
sClothesSelect.iCameraSelect--
|
|
IF sClothesSelect.iCameraSelect < 0
|
|
sClothesSelect.iCameraSelect = MAX_CAMERA_SELECT_OPTIONS-1
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ENDIF
|
|
|
|
ELIF bRight
|
|
IF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_COMPS
|
|
|
|
PED_COMPONENT ePedComp = INT_TO_ENUM(PED_COMPONENT, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
PED_COMP_TYPE_ENUM eCompType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
|
|
INT iDrawable = GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
INT iTexture = GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
|
|
// Use keyword search
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlKeyWord)
|
|
|
|
INT iItemCount
|
|
INT iStartDraw = iDrawable
|
|
INT iStartTexture = iTexture+1
|
|
BOOL bItemFound = FALSE
|
|
|
|
FOR iDrawable = iStartDraw TO GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp)-1
|
|
|
|
IF iDrawable != iStartDraw
|
|
iStartTexture = 0
|
|
ENDIF
|
|
|
|
FOR iTexture = iStartTexture TO GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePedComp, iDrawable)-1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCompType, GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, eCompType))
|
|
IF DOES_ITEM_LABEL_CONTAIN_STRING(g_sTempCompData[1].sLabel, sClothesSelect.tlKeyWord)
|
|
OR (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND sClothesSelect.bKeyWordState = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, GET_HASH_KEY(sClothesSelect.tlKeyWord), ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
IF NOT bDrawSkip OR iDrawable != iStartDraw
|
|
bItemFound = TRUE
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDIF
|
|
iItemCount++
|
|
|
|
IF (iItemCount % 50) = 0
|
|
WAIT(0)
|
|
IS_PED_INJURED(PLAYER_PED_ID())
|
|
DRAW_DEBUG_CLOTHING_MENU(TRUE)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF bItemFound
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF NOT bItemFound
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), ePedComp)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF iTexture < GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePedComp, iDrawable)-1
|
|
AND NOT bDrawSkip
|
|
AND NOT bBlockSkip
|
|
iTexture++
|
|
ELIF iDrawable < GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp)-1
|
|
OR bDrawSkip
|
|
OR bBlockSkip
|
|
iTexture = 0
|
|
IF bBlockSkip
|
|
INT iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), ENUM_TO_INT(eCompType), iDrawable)
|
|
INT iDLCPackHash2
|
|
BOOL bFoundItem = FALSE
|
|
|
|
iDrawable++
|
|
WHILE iDrawable < GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp) AND NOT bFoundItem
|
|
iDLCPackHash2 = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), ENUM_TO_INT(eCompType), iDrawable)
|
|
IF iDLCPackHash != iDLCPackHash2
|
|
bFoundItem = TRUE
|
|
ELSE
|
|
iDrawable++
|
|
ENDIF
|
|
ENDWHILE
|
|
ELSE
|
|
iDrawable++
|
|
ENDIF
|
|
IF iDrawable > GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp)-1
|
|
iDrawable = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePedComp)-1
|
|
iTexture = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePedComp, iDrawable)-1
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, eCompType)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), eCompType, eItem)
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND IS_CONTENT_ITEM_LOCKED(g_iLastDLCItemLockHash))
|
|
// Skip.
|
|
ELIF ePedComp = PED_COMP_BERD
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), eCompType, eItem, FALSE)
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), ePedComp, iDrawable, iTexture)
|
|
ENDIF
|
|
|
|
sClothesSelect.iLastIndex = iDrawable
|
|
sClothesSelect.iLastTexture = iTexture
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_PROPS
|
|
|
|
PED_PROP_POSITION ePropPos = INT_TO_ENUM(PED_PROP_POSITION, sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth])
|
|
INT iDrawable = GET_PED_PROP_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
INT iTexture = GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
|
|
// Use keyword search
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sClothesSelect.tlKeyWord)
|
|
|
|
INT iItemCount
|
|
INT iStartDraw = iDrawable
|
|
INT iStartTexture = iTexture+1
|
|
BOOL bItemFound = FALSE
|
|
|
|
FOR iDrawable = iStartDraw TO GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos)-1
|
|
|
|
IF iDrawable != iStartDraw
|
|
iStartTexture = 0
|
|
ENDIF
|
|
|
|
FOR iTexture = iStartTexture TO GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePropPos, iDrawable)-1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_PROPS, GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, ePropPos))
|
|
IF DOES_ITEM_LABEL_CONTAIN_STRING(g_sTempCompData[1].sLabel, sClothesSelect.tlKeyWord)
|
|
OR (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND sClothesSelect.bKeyWordState = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, GET_HASH_KEY(sClothesSelect.tlKeyWord), ENUM_TO_INT(SHOP_PED_PROP)))
|
|
IF NOT bDrawSkip OR iDrawable != iStartDraw
|
|
bItemFound = TRUE
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDIF
|
|
iItemCount++
|
|
|
|
IF (iItemCount % 50) = 0
|
|
WAIT(0)
|
|
IS_PED_INJURED(PLAYER_PED_ID())
|
|
DRAW_DEBUG_CLOTHING_MENU(TRUE)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF bItemFound
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
IF NOT bItemFound
|
|
iDrawable = GET_PED_PROP_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
iTexture = GET_PED_PROP_TEXTURE_INDEX(PLAYER_PED_ID(), ePropPos)
|
|
|
|
IF sClothesSelect.bUseCachedClothingData
|
|
iDrawable = sClothesSelect.iLastIndex
|
|
iTexture = sClothesSelect.iLastTexture
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF iDrawable = -1
|
|
IF GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos) > 0
|
|
iDrawable = 0
|
|
iTexture = 0
|
|
ENDIF
|
|
ELIF iTexture < GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePropPos, iDrawable)-1
|
|
AND NOT bDrawSkip
|
|
AND NOT bBlockSkip
|
|
iTexture++
|
|
ELIF iDrawable < GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos)-1
|
|
OR bDrawSkip
|
|
OR bBlockSkip
|
|
iTexture = 0
|
|
IF bBlockSkip
|
|
INT iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), ePropPos, iDrawable)
|
|
INT iDLCPackHash2
|
|
BOOL bFoundItem = FALSE
|
|
|
|
iDrawable++
|
|
WHILE iDrawable < GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos) AND NOT bFoundItem
|
|
iDLCPackHash2 = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), ePropPos, iDrawable)
|
|
IF iDLCPackHash != iDLCPackHash2
|
|
bFoundItem = TRUE
|
|
ELSE
|
|
iDrawable++
|
|
ENDIF
|
|
ENDWHILE
|
|
ELSE
|
|
iDrawable++
|
|
ENDIF
|
|
IF iDrawable > GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos)-1
|
|
iDrawable = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), ePropPos)-1
|
|
iTexture = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), ePropPos, iDrawable)-1
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF iDrawable = -1
|
|
CLEAR_PED_PROP(PLAYER_PED_ID(), ePropPos)
|
|
ELSE
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDrawable, iTexture, COMP_TYPE_PROPS)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), COMP_TYPE_PROPS, eItem)
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND IS_CONTENT_ITEM_LOCKED(g_iLastDLCItemLockHash))
|
|
// Skip.
|
|
ELSE
|
|
SET_PED_PROP_INDEX(PLAYER_PED_ID(), ePropPos, iDrawable, iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
sClothesSelect.iLastIndex = iDrawable
|
|
sClothesSelect.iLastTexture = iTexture
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_DECORATIONS
|
|
|
|
IF sClothesSelect.iCurrentItem[sClothesSelect.iMenuDepth] = 0 // Compatible?
|
|
sClothesSelect.bCompatibleOnly = !sClothesSelect.bCompatibleOnly
|
|
sClothesSelect.iDecorationIndex = 0
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ELSE
|
|
IF bDrawSkip
|
|
// Get the next collection
|
|
|
|
TATTOO_FACTION_ENUM eFaction = TATTOO_MP_FM
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
sTattooShopItemValues sDLCTattooData
|
|
|
|
INT iPreviousCollection = sClothesSelect.iDecorationCollection
|
|
INT iDecCount = 0
|
|
BOOL bFoundCurrentCollection = FALSE
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("torsoDecal")
|
|
IF sDLCTattooData.Collection = sClothesSelect.iDecorationCollection
|
|
bFoundCurrentCollection = TRUE
|
|
ENDIF
|
|
IF iPreviousCollection != sDLCTattooData.Collection
|
|
AND bFoundCurrentCollection
|
|
sClothesSelect.iDecorationIndex = iDecCount
|
|
iPreviousCollection = sDLCTattooData.Collection
|
|
bFoundCurrentCollection = FALSE
|
|
ENDIF
|
|
iDecCount++
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF sClothesSelect.iDecorationIndex >= sClothesSelect.iDecorationCount
|
|
sClothesSelect.iDecorationIndex = sClothesSelect.iDecorationCount-1
|
|
ENDIF
|
|
ELSE
|
|
sClothesSelect.iDecorationIndex++
|
|
IF sClothesSelect.iDecorationIndex >= sClothesSelect.iDecorationCount
|
|
sClothesSelect.iDecorationIndex = 0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
ENDIF
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_OUTFITS
|
|
|
|
IF bBlockSkip
|
|
INT iDLCOutfitPack
|
|
STRING strPack
|
|
scrShopPedOutfit outfitItem
|
|
BOOL bItemFound = FALSE
|
|
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
sClothesSelect.iOutfitCount = SETUP_SHOP_PED_OUTFIT_QUERY(3, 0)//ENUM_TO_INT(CLO_SHOP_LOW))
|
|
ELIF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01
|
|
sClothesSelect.iOutfitCount = SETUP_SHOP_PED_OUTFIT_QUERY(4, 0)//ENUM_TO_INT(CLO_SHOP_LOW))
|
|
ENDIF
|
|
|
|
GET_SHOP_PED_QUERY_OUTFIT(sClothesSelect.iOutfitIndex, outfitItem)
|
|
strPack = GET_SHOP_CONTENT_FOR_MENU(outfitItem.m_textLabel)
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(strPack)
|
|
iDLCOutfitPack = GET_HASH_KEY(strPack)
|
|
ENDIF
|
|
|
|
WHILE sClothesSelect.iOutfitIndex < sClothesSelect.iOutfitCount AND NOT bItemFound
|
|
sClothesSelect.iOutfitIndex++
|
|
GET_SHOP_PED_QUERY_OUTFIT(sClothesSelect.iOutfitIndex, outfitItem)
|
|
strPack = GET_SHOP_CONTENT_FOR_MENU(outfitItem.m_textLabel)
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(strPack)
|
|
IF iDLCOutfitPack != GET_HASH_KEY(strPack)
|
|
bItemFound = TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDWHILE
|
|
ELSE
|
|
sClothesSelect.iOutfitIndex++
|
|
ENDIF
|
|
|
|
IF sClothesSelect.iOutfitIndex >= sClothesSelect.iOutfitCount
|
|
sClothesSelect.iOutfitIndex = 0
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
sClothesSelect.bGrabClothingData = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_MODEL
|
|
|
|
IF sClothesSelect.eModelSelect = MP_M_FREEMODE_01
|
|
sClothesSelect.eModelSelect = MP_F_FREEMODE_01
|
|
ELSE
|
|
sClothesSelect.eModelSelect = MP_M_FREEMODE_01
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_SHOP_LOCATE
|
|
|
|
sClothesSelect.iLocateSelect++
|
|
IF sClothesSelect.iLocateSelect >= MAX_SHOP_LOCATE_WARP_LOCATIONS
|
|
sClothesSelect.iLocateSelect = 0
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ELIF sClothesSelect.iCurrentMenu = CLOTHES_SELECT_MENU_CAMERA
|
|
|
|
sClothesSelect.iCameraSelect++
|
|
IF sClothesSelect.iCameraSelect >= MAX_CAMERA_SELECT_OPTIONS
|
|
sClothesSelect.iCameraSelect = 0
|
|
ENDIF
|
|
|
|
sClothesSelect.bRebuildMenu = TRUE
|
|
PLAY_SOUND_FRONTEND(-1, "NAV_LEFT_RIGHT", "HUD_FRONTEND_DEFAULT_SOUNDSET")
|
|
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF sClothesSelect.bMenuAssetsRequested
|
|
IF LOAD_MENU_ASSETS()
|
|
CLEANUP_MENU_ASSETS()
|
|
sClothesSelect.bMenuAssetsRequested = FALSE
|
|
ENDIF
|
|
CLEAR_ADDITIONAL_TEXT(MENU_TEXT_SLOT, FALSE)
|
|
ENDIF
|
|
sClothesSelect.bMenuInitialised = FALSE
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC DO_INITIALISE()
|
|
START_WIDGET_GROUP("Clothing Debug")
|
|
|
|
ADD_WIDGET_BOOL("Kill Script", bKillScript)
|
|
ADD_WIDGET_BOOL("Display shop ped info", bDisplay_ShopPedInfo)
|
|
|
|
START_WIDGET_GROUP("Ped Renders")
|
|
ADD_WIDGET_BOOL("Generate Ped Renders", bGenerate_PedRenders)
|
|
ADD_WIDGET_INT_READ_ONLY("Total Models", iTotalPedRenders)
|
|
ADD_WIDGET_INT_READ_ONLY("Current Model", iCurrentPedRender)
|
|
|
|
START_NEW_WIDGET_COMBO()
|
|
INT iPack
|
|
REPEAT DLC_PACK_MP_MAX iPack
|
|
ADD_TO_WIDGET_COMBO(GET_DLC_PACK_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iPack)))
|
|
ENDREPEAT
|
|
ADD_TO_WIDGET_COMBO("ALL")
|
|
STOP_WIDGET_COMBO("DLC Pack", iPedRenderDLCPack)
|
|
iPedRenderDLCPack = ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Camera Focus")
|
|
ADD_WIDGET_BOOL("Activate", bUseOffsetCam)
|
|
ADD_WIDGET_VECTOR_SLIDER("Position Offset", vCamOffsetPos, -10, 10, 0.01)
|
|
ADD_WIDGET_VECTOR_SLIDER("Point Offset", vCamOffsetPoint, -10, 10, 0.01)
|
|
|
|
ADD_WIDGET_BOOL("Preset: Head", bSetOffsetCamPreset[0])
|
|
ADD_WIDGET_BOOL("Preset: Head Rear", bSetOffsetCamPreset[1])
|
|
ADD_WIDGET_BOOL("Preset: Torso", bSetOffsetCamPreset[2])
|
|
ADD_WIDGET_BOOL("Preset: Torso Rear", bSetOffsetCamPreset[3])
|
|
ADD_WIDGET_BOOL("Preset: Legs", bSetOffsetCamPreset[4])
|
|
ADD_WIDGET_BOOL("Preset: Legs Rear", bSetOffsetCamPreset[5])
|
|
ADD_WIDGET_BOOL("Preset: Feet", bSetOffsetCamPreset[6])
|
|
ADD_WIDGET_BOOL("Preset: Feet Rear", bSetOffsetCamPreset[7])
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Player")
|
|
ADD_WIDGET_BOOL("MP_M_FREEMODE_01", bSetPlayerModel_Male)
|
|
ADD_WIDGET_BOOL("MP_F_FREEMODE_01", bSetPlayerModel_Female)
|
|
ADD_WIDGET_BOOL("Randomise appearance", b_debug_ped_randomise_appearance)
|
|
ADD_WIDGET_BOOL("Create clone", b_debug_ped_create_clone)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
///
|
|
/// [SHOP META]
|
|
///
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
START_WIDGET_GROUP("Shop Meta")
|
|
|
|
START_NEW_WIDGET_COMBO()
|
|
REPEAT DLC_PACK_MP_MAX iPack
|
|
ADD_TO_WIDGET_COMBO(GET_DLC_PACK_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iPack)))
|
|
ENDREPEAT
|
|
ADD_TO_WIDGET_COMBO("ALL")
|
|
STOP_WIDGET_COMBO("DLC Pack", iSelectedDLCPack)
|
|
iSelectedDLCPack = ENUM_TO_INT(DLC_PACK_MP_MAX)-1
|
|
|
|
ADD_WIDGET_BOOL("Output uniqueNameHash", bOutputUniqueHashNames)
|
|
ADD_WIDGET_BOOL("Output locate/menu names", bOutputShopLocateNames)
|
|
ADD_WIDGET_BOOL("Generate shop meta", bGenerate_ShopMeta)
|
|
ADD_WIDGET_BOOL("Generate missing shop meta", bGenerate_MissingShopMeta)
|
|
ADD_WIDGET_BOOL("Generate missing save data items", bGenerate_MissingSaveItems)
|
|
|
|
STOP_WIDGET_GROUP()
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
///
|
|
/// [SCRIPT LOOKUPS]
|
|
///
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
START_WIDGET_GROUP("Script Lookups")
|
|
|
|
START_NEW_WIDGET_COMBO()
|
|
REPEAT DLC_PACK_MP_MAX iPack
|
|
ADD_TO_WIDGET_COMBO(GET_DLC_PACK_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iPack)))
|
|
ENDREPEAT
|
|
ADD_TO_WIDGET_COMBO("ALL")
|
|
STOP_WIDGET_COMBO("DLC Pack", iSelectedDLCPack)
|
|
|
|
// -- dlc_ped_component_names.sch :: GET_DLC_NAME_HASH_STRING
|
|
ADD_WIDGET_BOOL("GET_DLC_NAME_HASH_STRING", bGenerate_GET_DLC_NAME_HASH_STRING)
|
|
|
|
// -- dlc_ped_component_enum_lookup.sch :: GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP
|
|
ADD_WIDGET_BOOL("GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP", bGenerate_GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP)
|
|
|
|
// -- tattoo_private.sch :: GET_TATTOO_ENUM_FROM_DLC_HASH
|
|
ADD_WIDGET_BOOL("GET_TATTOO_ENUM_FROM_DLC_HASH", bGenerate_GET_TATTOO_ENUM_FROM_DLC_HASH)
|
|
|
|
// -- scriptMetaData.meta
|
|
// TODO
|
|
STOP_WIDGET_GROUP()
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
///
|
|
/// [MENU AND ITEM INFO]
|
|
///
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
START_WIDGET_GROUP("Item Info")
|
|
|
|
START_NEW_WIDGET_COMBO()
|
|
REPEAT DLC_PACK_MP_MAX iPack
|
|
ADD_TO_WIDGET_COMBO(GET_DLC_PACK_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iPack)))
|
|
ENDREPEAT
|
|
ADD_TO_WIDGET_COMBO("ALL")
|
|
STOP_WIDGET_COMBO("DLC Pack", iSelectedDLCPack)
|
|
|
|
START_NEW_WIDGET_COMBO()
|
|
INT iComp
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES iComp
|
|
IF iComp = ENUM_TO_INT(COMP_TYPE_OUTFIT)
|
|
OR iComp = ENUM_TO_INT(COMP_TYPE_PROPGROUP)
|
|
ADD_TO_WIDGET_COMBO("NA")
|
|
ELSE
|
|
ADD_TO_WIDGET_COMBO(GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComp)))
|
|
ENDIF
|
|
ENDREPEAT
|
|
ADD_TO_WIDGET_COMBO("ALL")
|
|
STOP_WIDGET_COMBO("Comp Type", iSelectedPedComponent)
|
|
iSelectedPedComponent = NUMBER_OF_PED_COMP_TYPES
|
|
|
|
// -- Item data + variants + overlays
|
|
ADD_WIDGET_BOOL("Output item info", bGenerate_ClothingInfo)
|
|
|
|
// -- Screenshots
|
|
ADD_WIDGET_BOOL("Generate item screenshot", bGenerate_ClothingScreenshots)
|
|
ADD_WIDGET_BOOL("Generate item screenshot (tex=0)", bGenerate_ClothingScreenshotsPrimary)
|
|
|
|
// -- Exclusive Items
|
|
ADD_WIDGET_BOOL("Output Exclsuive Clothes", bGenerate_ExclsuiveClothingInfo)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
///
|
|
/// [OUTFITS]
|
|
///
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
START_WIDGET_GROUP("XML Outfits")
|
|
twDebugPedNamed = ADD_TEXT_WIDGET("Named slot") SET_CONTENTS_OF_TEXT_WIDGET(twDebugPedNamed, "")
|
|
ADD_WIDGET_BOOL("Output script and meta", b_debug_output_ped_save_data)
|
|
|
|
INT i
|
|
TEXT_LABEL_31 tlName
|
|
|
|
START_WIDGET_GROUP("Save")
|
|
REPEAT COUNT_OF(b_debug_ped_save) i
|
|
tlName = "Save ped to slot "
|
|
tlName += (i+1)
|
|
|
|
IF i = COUNT_OF(b_debug_ped_save)-1
|
|
tlName += " (named)"
|
|
ENDIF
|
|
|
|
ADD_WIDGET_BOOL(tlName, b_debug_ped_save[i])
|
|
ENDREPEAT
|
|
STOP_WIDGET_GROUP()
|
|
START_WIDGET_GROUP("Apply")
|
|
REPEAT COUNT_OF(b_debug_ped_set) i
|
|
tlName = "Apply ped in slot "
|
|
tlName += (i+1)
|
|
|
|
IF i = COUNT_OF(b_debug_ped_set)-1
|
|
tlName += " (named)"
|
|
ENDIF
|
|
|
|
ADD_WIDGET_BOOL(tlName, b_debug_ped_set[i])
|
|
ENDREPEAT
|
|
STOP_WIDGET_GROUP()
|
|
START_WIDGET_GROUP("Create")
|
|
REPEAT COUNT_OF(b_debug_ped_create) i
|
|
tlName = "Create ped in slot "
|
|
tlName += (i+1)
|
|
|
|
IF i = COUNT_OF(b_debug_ped_create)-1
|
|
tlName += " (named)"
|
|
ENDIF
|
|
|
|
ADD_WIDGET_BOOL(tlName, b_debug_ped_create[i])
|
|
ENDREPEAT
|
|
STOP_WIDGET_GROUP()
|
|
STOP_WIDGET_GROUP()
|
|
START_WIDGET_GROUP("Script Outfits")
|
|
|
|
ADD_WIDGET_BOOL("Position (base)", b_debug_set_player_and_cam[0])
|
|
ADD_WIDGET_BOOL("Position (heels)", b_debug_set_player_and_cam[1])
|
|
ADD_WIDGET_BOOL("Position (hat+heels)", b_debug_set_player_and_cam[2])
|
|
ADD_WIDGET_BOOL("Position (mask)", b_debug_set_player_and_cam[3])
|
|
|
|
ADD_WIDGET_BOOL("Output outfit setup (heist)", b_debug_outfit_output_1)
|
|
ADD_WIDGET_BOOL("Output outfit setup (meta)", b_debug_outfit_output_2)
|
|
|
|
ADD_WIDGET_BOOL("Validate Clothes", g_bRUN_VALIDATE_PLAYERS_CLOTHING_CHECK)
|
|
|
|
ADD_WIDGET_BOOL("Apply Freemode outfit", b_Apply_Freemode_outfit)
|
|
|
|
START_WIDGET_GROUP("Heist Clothing")
|
|
|
|
ADD_WIDGET_INT_SLIDER("Heist outfit", i_debug_heist_outfit, 0, ENUM_TO_INT(OUTFIT_MAX_AMOUNT)-1, 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_heist_outfit)
|
|
ADD_WIDGET_BOOL("Set outfit automatically", b_debug_set_heist_outfit_auto)
|
|
t_debug_heist_outfit_name = ADD_TEXT_WIDGET("Outfit")
|
|
SET_CONTENTS_OF_TEXT_WIDGET(t_debug_heist_outfit_name, "null")
|
|
|
|
ADD_WIDGET_INT_SLIDER("Heist mask", i_debug_heist_mask, 0, ENUM_TO_INT(OUTFIT_MAX_MASKS)-1, 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_heist_mask)
|
|
ADD_WIDGET_BOOL("Set outfit automatically", b_debug_set_heist_mask_auto)
|
|
t_debug_heist_mask_name = ADD_TEXT_WIDGET("Mask")
|
|
SET_CONTENTS_OF_TEXT_WIDGET(t_debug_heist_mask_name, "null")
|
|
|
|
ADD_WIDGET_INT_SLIDER("Heist gear", i_debug_heist_gear, 0, ENUM_TO_INT(GEAR_MAX_AMOUNT)-1, 1)
|
|
ADD_WIDGET_BOOL("Set gear", b_debug_set_heist_gear)
|
|
ADD_WIDGET_BOOL("Remove gear", b_debug_remove_heist_gear)
|
|
ADD_WIDGET_BOOL("Output hash data", b_debug_output_heist_DLC_hash)
|
|
ADD_WIDGET_BOOL("Allow Heist content", g_bDebugAllowHeistItems)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Vs classics Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Vs outfit(starts at OUTFIT_VERSUS_CLASSIC_JUNGLE_0):", i_debug_Vs_outfit,ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_JUNGLE_0),ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_WHITE_TUX_0) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_Vs_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Vs Themed Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Vs outfit(starts at OUTFIT_VERSUS_THEMED_SLASHERS_0):", i_debug_VsTheme_outfit,ENUM_TO_INT(OUTFIT_VERSUS_THEMED_SLASHERS_0),ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_COWBOYS_5) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_VsTheme_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("NG Clothing")
|
|
ADD_WIDGET_INT_SLIDER("ng outfit(starts at OUTFIT_NG_CASUAL_0):", i_debug_ng_outfit,ENUM_TO_INT(OUTFIT_NG_CASUAL_0),ENUM_TO_INT(OUTFIT_NG_ECCENTRIC_7) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_ng_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Lowrider Vs Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Lowrider Vs outfit:", i_debug_lowr_outfit,ENUM_TO_INT(OUTFIT_VERSUS_LOWR_BLUE_SMART_0),ENUM_TO_INT(OUTFIT_VERSUS_LOWR_RED_STREET_5) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_lowr_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
START_WIDGET_GROUP("Entourage Vs Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Entourage Vs outfit:", i_debug_entourage_outfit,ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_VIP_0),ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_ATTACKER_3) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_entourage_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
START_WIDGET_GROUP("Extraction Vs Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Extraction Vs outfit:", i_debug_extraction_outfit,ENUM_TO_INT(OUTFIT_VERSUS_EXTRACTION_VIP_0),ENUM_TO_INT(OUTFIT_VERSUS_EXTRACTION_VIP_0) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_extraction_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Halloween Vs Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Halloween Vs outfit:", i_debug_hal_outfit,ENUM_TO_INT(OUTFIT_VERSUS_HAL_MANIACS_0),ENUM_TO_INT(OUTFIT_VERSUS_HAL_PIMP_WITCHES_5) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_hal_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Solo Vs Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Solo Vs outfit:", i_debug_solo_outfit,ENUM_TO_INT(OUTFIT_LOW_FLOW_WOLVES_0),ENUM_TO_INT(OUTFIT_LOW_FLOW_STRIPES_0) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_solo_outfit)
|
|
ADD_WIDGET_INT_SLIDER("Solo Vs outfit 2:", i_debug_solo_outfit2,ENUM_TO_INT(OUTFIT_SOLO_SENIORS_0),ENUM_TO_INT(OUTFIT_SOLO_MONSTER_MILITIA_0) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit2", b_debug_set_solo_outfit2)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Lowrider Flow Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Lowrider Flow outfit:", i_debug_low_flow_outfit,ENUM_TO_INT(OUTFIT_LOW_FLOW_LOWRIDER_0),ENUM_TO_INT(OUTFIT_LOW_FLOW_FUNERAL_3) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_low_flow_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Beast Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Beast outfit:", i_debug_beast_outfit,ENUM_TO_INT(OUTFIT_ADVERSARY_B_OVERRIDE_0),ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_METAL_5) , 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_beast_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Hunt the Beast")
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_htb)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Magnate Gang Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Gang/Boss outfit:", i_debug_gang_boss_vip_outfits, ENUM_TO_INT(OUTFIT_MAGNATE_BOSS_BARON_0), ENUM_TO_INT(OUTFIT_MAGNATE_BOSS_SYNDICATE_0), 1)
|
|
ADD_WIDGET_BOOL("Set VIP outfit", b_debug_set_gang_boss_vip_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Bodyguard outfit:", i_debug_gang_boss_bodyguard_outfits, ENUM_TO_INT(OUTFIT_MAGNATE_GOON_NARCO_0), ENUM_TO_INT(OUTFIT_MAGNATE_GOON_HITMEN_3), 1)
|
|
ADD_WIDGET_BOOL("Set Bodyguard outfit", b_debug_set_gang_boss_bodyguard_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Hidden Clothing (Jan16)")
|
|
ADD_WIDGET_INT_SLIDER("Hidden outfit:", i_debug_hidden_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0), 1)
|
|
tw_debug_hidden_outfit_name = ADD_TEXT_WIDGET("Outfit Name")
|
|
SET_CONTENTS_OF_TEXT_WIDGET(tw_debug_hidden_outfit_name, GET_MP_OUTFIT_NAME_FROM_ENUM(INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_hidden_outfits)))
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_hidden_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Hidden Lowrider2 Clothing (Lowrider2)")
|
|
ADD_WIDGET_INT_SLIDER("Hidden Lowrider2 outfit:", i_debug_hidden_lowrider_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_3), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_hidden_lowrider_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("VS Classic - Competitors Clothing (Lowrider2)")
|
|
ADD_WIDGET_INT_SLIDER("VS Classic - Competitors outfit:", i_debug_classic_competitors_outfits, ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0), ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_WHITE_SPORT_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_classic_competitors_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Trading Places Winner Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Winner outfit:", i_debug_trading_places_winner_outfits, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_0), ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_trading_places_winner_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Trading Places Loser Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Loser outfit:", i_debug_trading_places_loser_outfits, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_0), ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_trading_places_loser_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Power Play Team Sport Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Team Sport outfit: ", i_debug_power_play_team_sport_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_power_play_team_sport_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Executive CEO/Associate Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Executive CEO outfit:", i_debug_executive_ceo_outfits, ENUM_TO_INT(OUTFIT_EXEC_CEO_FOUNDER_0), ENUM_TO_INT(OUTFIT_EXEC_CEO_WARLORD_0), 1)
|
|
ADD_WIDGET_BOOL("Set CEO outfit", b_debug_set_executive_ceo_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Executive Associate outfit:", i_debug_executive_associate_outfits, ENUM_TO_INT(OUTFIT_EXEC_ASSOCIATE_OPERATORS_0), ENUM_TO_INT(OUTFIT_EXEC_ASSOCIATE_RUNNERS_2), 1)
|
|
ADD_WIDGET_BOOL("Set Associate outfit", b_debug_set_executive_associate_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Executive Securoserv outfit:", i_debug_executive_securoserv_outfits, ENUM_TO_INT(OUTFIT_MAGNATE_GOON_SECUROSERV_0), ENUM_TO_INT(OUTFIT_MAGNATE_GOON_SECUROSERV_3), 1)
|
|
ADD_WIDGET_BOOL("Set Securoserv outfit", b_debug_set_executive_securoserv_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Power Play Themed Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Power Play Themed outfit:", i_debug_power_play_themed_outfits, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0), ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_COOKIES_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_power_play_themed_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Stunt Pack Race Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Stunt Race Outfit:", i_debug_stunt_race_outfits, ENUM_TO_INT(OUTFIT_STUNT_RACE_BIKER_0), ENUM_TO_INT(OUTFIT_STUNT_RACE_MOTO_1), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_stunt_race_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Biker Club Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Biker club outfits (0-3): ", i_debug_biker_club_outfits_0to3, ENUM_TO_INT(OUTFIT_BIKER_DIRT_0), ENUM_TO_INT(OUTFIT_BIKER_RAZOR_3), 1)
|
|
ADD_WIDGET_BOOL("Set outfit (0-3)", b_debug_set_biker_club_outfits_0to3)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Biker club outfits (4-7): ", i_debug_biker_club_outfits_4to7, ENUM_TO_INT(OUTFIT_BIKER_DIRT_4), ENUM_TO_INT(OUTFIT_BIKER_RAZOR_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit (4-7)", b_debug_set_biker_club_outfits_4to7)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Deadline Hidden Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Deadline hiddne outfits): ", i_debug_biker_deadline_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_PURPLE_0), ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_biker_deadline_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Slipstream Hidden Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Slipstream hiddne outfits): ", i_debug_biker_slipstream_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PURPLE_0), ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_biker_slipstream_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Lost and Damned Hidden Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Lost and Damned hiddne outfits): ", i_debug_biker_lost_damned_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_DEVILS_0), ENUM_TO_INT(OUTFIT_HIDDEN_LOST_ANGELS_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_biker_lost_damned_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Biker Club Rank Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Biker club rank outfits): ", i_debug_biker_club_rank_outfits, ENUM_TO_INT(OUTFIT_BIKER_RANK_0), ENUM_TO_INT(OUTFIT_BIKER_RANK_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_biker_club_rank_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Imp/Exp CEO Clothing")
|
|
ADD_WIDGET_INT_SLIDER("Imp/Exp CEO outfits: ", i_debug_impexp_ceo_outfits, ENUM_TO_INT(OUTFIT_IE_CEO_LONGLINE_0), ENUM_TO_INT(OUTFIT_IE_CEO_DEMON_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_impexp_ceo_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Imp/Exp Associate outfits: ", i_debug_impexp_associate_outfits, ENUM_TO_INT(OUTFIT_IE_LONGLINE_0), ENUM_TO_INT(OUTFIT_IE_DEMON_2), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_impexp_associate_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Juggernaut Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Imp/Exp Juggernaut Standard outfits: ", i_debug_impexp_juggernaut_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_TARGET_0), ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_ATTACKER_5), 1)
|
|
ADD_WIDGET_BOOL("Set Standard outfit", b_debug_set_impexp_juggernaut_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Imp/Exp Juggernaut Orange outfits: ", i_debug_impexp_juggernaut_orange_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_TARGET_0), ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_ATTACKER_5), 1)
|
|
ADD_WIDGET_BOOL("Set Orange outfit", b_debug_set_impexp_juggernaut_orange_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Imp/Exp Juggernaut Purple outfits: ", i_debug_impexp_juggernaut_purple_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_TARGET_0), ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_ATTACKER_5), 1)
|
|
ADD_WIDGET_BOOL("Set Purple outfit", b_debug_set_impexp_juggernaut_purple_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Special Races - General Combat Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Spec races General Combat outfits: ", i_debug_specraces_general_combat_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_FOREST_0), ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_URBAN_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_specraces_general_combat_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Special Races - Land Grab Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Spec races Land Grab outfits: ", i_debug_specraces_land_grab_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_ORANGE_0), ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_specraces_land_grab_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning Outfits")
|
|
START_WIDGET_GROUP("Gunrunning - Lions Den Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Lions den outfit: ", i_debug_gunrun_lions_den_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_ATTACKER_0), ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_DEFENDER_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_lions_den_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning - Dawn Raid Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Dawn raid outfit: ", i_debug_gunrun_dawn_raid_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_ORANGE_0), ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_PURPLE_5), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_dawn_raid_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning - Team General Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Dawn raid outfit: ", i_debug_gunrun_team_general_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_ORANGE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_team_general_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning - Power Mad Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Juggernaut outfit: ", i_debug_gunrun_power_mad_juggernaut_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PINK_TARGET_0), ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_GREEN_TARGET_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_power_mad_juggernaut_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Team colour outfit: ", i_debug_gunrun_power_mad_team_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_ORANGE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_GREEN_1), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_power_mad_team_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning - MC Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Zombie outfit: ", i_debug_gunrun_biker_zombie_outfits, ENUM_TO_INT(OUTFIT_BIKER_ZOMBIE_0), ENUM_TO_INT(OUTFIT_BIKER_ZOMBIE_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_biker_zombie_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Raider outfit: ", i_debug_gunrun_biker_raider_outfits, ENUM_TO_INT(OUTFIT_BIKER_RAIDER_0), ENUM_TO_INT(OUTFIT_BIKER_RAIDER_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_biker_raider_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Puffer outfit: ", i_debug_gunrun_biker_puffer_outfits, ENUM_TO_INT(OUTFIT_BIKER_PUFFER_0), ENUM_TO_INT(OUTFIT_BIKER_PUFFER_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_biker_puffer_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Hillbilly outfit: ", i_debug_gunrun_biker_hillbilly_outfits, ENUM_TO_INT(OUTFIT_BIKER_HILLBILLY_0), ENUM_TO_INT(OUTFIT_BIKER_HILLBILLY_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_biker_hillbilly_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning - CEO/Associate Outfits")
|
|
ADD_WIDGET_INT_SLIDER("CEO outfit: ", i_debug_gunrun_ceo_outfits, ENUM_TO_INT(OUTFIT_GUNR_CEO_SURVIVALIST_0), ENUM_TO_INT(OUTFIT_GUNR_CEO_GANGMASTER_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_ceo_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Associate outfit: ", i_debug_gunrun_associate_outfits, ENUM_TO_INT(OUTFIT_GUNR_ASSOCIATE_SURVIVALIST_0), ENUM_TO_INT(OUTFIT_GUNR_ASSOCIATE_GANGMASTER_2), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_associate_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gunrunning - WVM Oppressor Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Oppressor outfit: ", i_debug_gunrun_wvm_oppressor_outfits, ENUM_TO_INT(OUTFIT_WVM_OPPRESSOR_0), ENUM_TO_INT(OUTFIT_WVM_OPPRESSOR_3), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gunrun_wvm_oppressor_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler Outfits")
|
|
START_WIDGET_GROUP("Smuggler - Hostile Takeover Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Hostile takeover outfit: ", i_debug_smuggler_hostile_takeover_outfits, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_GREEN_0), ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PINK_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_hostile_takeover_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler - Condemned Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Condemned outfit: ", i_debug_smuggler_condemned_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_CONDEMNED), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_3), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_condemned_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler - Vehicle Warfare Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Vehicle Warfare outfit: ", i_debug_smuggler_vehicle_warfare_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_vehicle_warfare_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler - Air Shootout Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Air Shootout outfit: ", i_debug_smuggler_air_shootout_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_air_shootout_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler - Bombushka Run Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Bombushka Run outfit: ", i_debug_smuggler_bombushka_run_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_3), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_bombushka_run_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler - Stockpile Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Stockpile outfit: ", i_debug_smuggler_stockpile_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_stockpile_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Smuggler - Race Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Race outfit: ", i_debug_smuggler_race_outfits, ENUM_TO_INT(OUTFIT_SMUGGLER_RACE_SUIT_FLOW), ENUM_TO_INT(OUTFIT_SMUGGLER_RACE_SUIT_TINKLE), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_smuggler_race_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
// Gang outfits
|
|
|
|
START_WIDGET_GROUP("Organisation Outfits")
|
|
ADD_WIDGET_INT_SLIDER("CEO outfit: ", i_debug_smuggler_ceo_outfits, ENUM_TO_INT(OUTFIT_SMUGGLER_CEO_FORMAL_PILOT_0), ENUM_TO_INT(OUTFIT_SMUGGLER_CEO_TACTICAL_STEALTH_0), 1)
|
|
ADD_WIDGET_BOOL("Set CEO outfit", b_debug_set_smuggler_ceo_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Associate outfit: ", i_debug_smuggler_associate_outfits, ENUM_TO_INT(OUTFIT_SMUGGLER_ASSOCIATE_FORMAL_PILOT_0), ENUM_TO_INT(OUTFIT_SMUGGLER_ASSOCIATE_TACTICAL_STEALTH_2), 1)
|
|
ADD_WIDGET_BOOL("Set Associate outfit", b_debug_set_smuggler_associate_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("MC Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Casual Pilot outfit: ", i_debug_smuggler_biker_casual_pilot_outfits, ENUM_TO_INT(OUTFIT_BIKER_CASUAL_PILOT_0), ENUM_TO_INT(OUTFIT_BIKER_CASUAL_PILOT_7), 1)
|
|
ADD_WIDGET_BOOL("Set casual pilot outfit", b_debug_set_smuggler_biker_casual_pilot_outfits)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Pirate outfit: ", i_debug_smuggler_biker_pirate_outfits, ENUM_TO_INT(OUTFIT_BIKER_PIRATE_0), ENUM_TO_INT(OUTFIT_BIKER_PIRATE_7), 1)
|
|
ADD_WIDGET_BOOL("Set casual pilot outfit", b_debug_set_smuggler_biker_pirate_outfits)
|
|
STOP_WIDGET_GROUP()
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Gang Ops Outfits")
|
|
START_WIDGET_GROUP("Under Control Outfit")
|
|
ADD_WIDGET_INT_SLIDER("Outfit: ", i_debug_gangops_under_control_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_UNDER_CONTROL), ENUM_TO_INT(OUTFIT_GANGOPS_UNDER_CONTROL), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gangops_under_control_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Slashers Outfit")
|
|
ADD_WIDGET_INT_SLIDER("Outfit: ", i_debug_gangops_slashers_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gangops_slashers_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Hard Target Outfit")
|
|
ADD_WIDGET_INT_SLIDER("Outfit: ", i_debug_gangops_hard_target_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_TARGET_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_7), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gangops_hard_target_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("Air Quota Outfit")
|
|
ADD_WIDGET_INT_SLIDER("Outfit: ", i_debug_gangops_air_quota_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_3), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_gangops_air_quota_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
// Heist outfits
|
|
|
|
START_WIDGET_GROUP("Gang Ops Heist Outfits")
|
|
ADD_WIDGET_INT_SLIDER("Scuba Outfit: ", i_debug_gangops_heist_scuba_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SCUBA), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SCUBA), 1)
|
|
ADD_WIDGET_BOOL("Set scuba outfit", b_debug_set_gangops_heist_scuba_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Scuba (no tank) Outfit: ", i_debug_gangops_heist_scuba2_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SCUBA_NOTANK), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SCUBA_NOTANK), 1)
|
|
ADD_WIDGET_BOOL("Set scuba (no tank) outfit", b_debug_set_gangops_heist_scuba2_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Paramedic Outfits: ", i_debug_gangops_heist_paramedic_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_1), 1)
|
|
ADD_WIDGET_BOOL("Set paramedic outfit", b_debug_set_gangops_heist_paramedic_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Medium Tech Combat 1 Outfits: ", i_debug_gangops_heist_medtech1_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_3), 1)
|
|
ADD_WIDGET_BOOL("Set Medium Tech Combat 1 outfit", b_debug_set_gangops_heist_medtech1_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Medium Tech Combat 2 Outfits: ", i_debug_gangops_heist_medtech2_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_3), 1)
|
|
ADD_WIDGET_BOOL("Set Medium Tech Combat 2 outfit", b_debug_set_gangops_heist_medtech2_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Modern Stealth Outfits: ", i_debug_gangops_heist_modern_stealth_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_3), 1)
|
|
ADD_WIDGET_BOOL("Set Modern Stealth outfit", b_debug_set_gangops_heist_modern_stealth_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casual Pilot Outfits: ", i_debug_gangops_heist_casual_pilot_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casual Pilot outfit", b_debug_set_gangops_heist_casual_pilot_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Fighter Pilot Outfits: ", i_debug_gangops_heist_fighter_pilot_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3), 1)
|
|
ADD_WIDGET_BOOL("Set Fighter Pilot outfit", b_debug_set_gangops_heist_fighter_pilot_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("High Tech Riot Outfits: ", i_debug_gangops_heist_high_tech_riot_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_3), 1)
|
|
ADD_WIDGET_BOOL("Set High Tech Riot outfit", b_debug_set_gangops_heist_high_tech_riot_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("High Tech Impact Outfits: ", i_debug_gangops_heist_high_tech_impact_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_3), 1)
|
|
ADD_WIDGET_BOOL("Set High Tech Impact outfit", b_debug_set_gangops_heist_high_tech_impact_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Medium Tech Masked Outfits: ", i_debug_gangops_heist_med_tech_masked_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_3), 1)
|
|
ADD_WIDGET_BOOL("Set Medium Tech Masked outfit", b_debug_set_gangops_heist_med_tech_masked_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Medium Tech Rebellion Outfits: ", i_debug_gangops_heist_med_tech_rebellion_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_3), 1)
|
|
ADD_WIDGET_BOOL("Set Medium Tech Rebellion outfit", b_debug_set_gangops_heist_med_tech_rebellion_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Medium Tech Havoc Outfits: ", i_debug_gangops_heist_med_tech_havoc_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_3), 1)
|
|
ADD_WIDGET_BOOL("Set Medium Tech Havoc outfit", b_debug_set_gangops_heist_med_tech_havoc_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Medium Tech Adaptable Outfits: ", i_debug_gangops_heist_med_tech_adaptable_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_3), 1)
|
|
ADD_WIDGET_BOOL("Set Medium Tech Adaptable outfit", b_debug_set_gangops_heist_med_tech_adaptable_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Sub Driver Outfits: ", i_debug_gangops_heist_sub_driver_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_SUB_DRIVER_3), 1)
|
|
ADD_WIDGET_BOOL("Set Sub Driver outfit", b_debug_set_gangops_heist_sub_driver_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Heavy Combat Gear Outfits: ", i_debug_gangops_heist_heavy_combat_gear_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_3), 1)
|
|
ADD_WIDGET_BOOL("Set Heavy Combat Gear outfit", b_debug_set_gangops_heist_heavy_combat_gear_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Low Tech Tactical Outfits: ", i_debug_gangops_heist_low_tech_tactical_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_3), 1)
|
|
ADD_WIDGET_BOOL("Set Low Tech Tactical outfit", b_debug_set_gangops_heist_low_tech_tactical_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Low Tech Combat Outfits: ", i_debug_gangops_heist_low_tech_combat_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_3), 1)
|
|
ADD_WIDGET_BOOL("Set Low Tech Combat outfit", b_debug_set_gangops_heist_low_tech_combat_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Classic Stealth Outfits: ", i_debug_gangops_heist_classic_stealth_gear_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_3), 1)
|
|
ADD_WIDGET_BOOL("Set Classic Stealth outfit", b_debug_set_gangops_heist_classic_stealth_gear_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Military Camo Gear Outfits: ", i_debug_gangops_heist_military_camo_gear_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_3), 1)
|
|
ADD_WIDGET_BOOL("Set Military Camo Gear outfit", b_debug_set_gangops_heist_military_camo_gear_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Gorka Suits: ", i_debug_gangops_heist_gorka_outfits, ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_GORKA_0), ENUM_TO_INT(OUTFIT_GANGOPS_HEIST_GORKA_3), 1)
|
|
ADD_WIDGET_BOOL("Set Gorka suit", b_debug_set_gangops_heist_gorka_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("DLC Assault")
|
|
ADD_WIDGET_INT_SLIDER("Showdown Outfits", i_debug_target_races_showdown_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_3), 1)
|
|
ADD_WIDGET_BOOL("Set Showdown outfit", b_debug_set_target_races_showdown_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Trapdoor Outfits", i_debug_target_races_trapdoor_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_3), 1)
|
|
ADD_WIDGET_BOOL("Set Trapdoor outfit", b_debug_set_target_races_trapdoor_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Venetian Job Outfits", i_debug_target_races_venetian_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_COP), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_GRAY), 1)
|
|
ADD_WIDGET_BOOL("Set Venetian Job outfit", b_debug_set_target_races_venetian_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Venetian Job Firesuits", i_debug_target_races_venetian_firesuits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_PINK), 1)
|
|
ADD_WIDGET_BOOL("Set Venetian Job Firesuit", b_debug_set_target_races_venetian_firesuits)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("DLC Business Battles")
|
|
ADD_WIDGET_INT_SLIDER("Drop the Bomb Outfits", i_debug_business_battles_drop_the_bomb_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_3), 1)
|
|
ADD_WIDGET_BOOL("Set Drop the Bomb outfit", b_debug_set_business_battles_drop_the_bomb_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Sumo Run Outfits", i_debug_business_battles_sumo_run_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_GREEN_0), 1)
|
|
ADD_WIDGET_BOOL("Set Sumo Run outfit", b_debug_set_business_battles_sumo_run_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Stunt Offense Defense Outfits", i_debug_business_battles_offense_defense_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_3), 1)
|
|
ADD_WIDGET_BOOL("Set Stunt Offense Defense outfit", b_debug_set_business_battles_offense_defense_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Hunting Pack Remix Outfits", i_debug_business_battles_hunting_pack_remix_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_RUNNER_0), 1)
|
|
ADD_WIDGET_BOOL("Set Hunting Pack Remix outfit", b_debug_set_business_battles_hunting_pack_remix_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Trading Places Remix Outfits", i_debug_business_battles_trading_places_remix_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_7), 1)
|
|
ADD_WIDGET_BOOL("Set Trading Places Remix outfit", b_debug_set_business_battles_trading_places_remix_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Come Out To Play Remix Outfits", i_debug_business_battles_come_out_to_play_remix_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_1), 1)
|
|
ADD_WIDGET_BOOL("Set Come Out To Play Remix outfit", b_debug_set_business_battles_come_out_to_play_remix_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Running Back Remix Outfits", i_debug_business_battles_running_back_remix_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLACK), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLUE), 1)
|
|
ADD_WIDGET_BOOL("Set Running Back Remix outfit", b_debug_set_business_battles_running_back_remix_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Running Back Remix (Green + Yellow) Outfits", i_debug_business_battles_running_back_remix_2_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW), 1)
|
|
ADD_WIDGET_BOOL("Set Running Back Remix (Green + Yellow) outfit", b_debug_set_business_battles_running_back_remix_2_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Nightclub Chiliad Outfits", i_debug_business_battles_nightclub_chiliad_outfits, ENUM_TO_INT(OUTFIT_NIGHTCLUB_CHILIAD_0), ENUM_TO_INT(OUTFIT_NIGHTCLUB_CHILIAD_2), 1)
|
|
ADD_WIDGET_BOOL("Set Nightclub Chiliad outfit", b_debug_set_business_battles_nightclub_chiliad_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Nightclub Kifflom Outfits", i_debug_business_battles_nightclub_kifflom_outfits, ENUM_TO_INT(OUTFIT_NIGHTCLUB_KIFFLOM_0), ENUM_TO_INT(OUTFIT_NIGHTCLUB_KIFFLOM_0), 1)
|
|
ADD_WIDGET_BOOL("Set Nightclub Kifflom outfit", b_debug_set_business_battles_nightclub_kifflom_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("DLC Arena Wars")
|
|
ADD_WIDGET_INT_SLIDER("Arena Contender Outfits", i_debug_arena_wars_contender_outfits, ENUM_TO_INT(OUTFIT_ARENA_WARS_CONTENDER_GENERAL_0), ENUM_TO_INT(OUTFIT_ARENA_WARS_PETE), 1)
|
|
ADD_WIDGET_BOOL("Set Arena Contender outfit", b_debug_set_arena_wars_contender_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("DLC Casino")
|
|
ADD_WIDGET_BOOL("Set Impotent Rage outfit", b_debug_set_casino_impotent_rage_outfit)
|
|
ADD_WIDGET_BOOL("Set Highroller outfit", b_debug_set_casino_highroller_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Spaceling Outfits", i_debug_casino_spaceling_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Spaceling outfit", b_debug_set_casino_spaceling_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("DLC Casino Heist")
|
|
ADD_WIDGET_BOOL("Set Casino Heist undertaker outfit", b_debug_set_casino_heist_undertaker_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Direct Light I Outfits", i_debug_casino_heist_direct_light_i_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Direct Light I outfit", b_debug_set_casino_heist_direct_light_i_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Direct Light II Outfits", i_debug_casino_heist_direct_light_ii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Direct Light II outfit", b_debug_set_casino_heist_direct_light_ii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Direct Light III Outfits", i_debug_casino_heist_direct_light_iii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Direct Light III outfit", b_debug_set_casino_heist_direct_light_iii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Direct Heavy I Outfits", i_debug_casino_heist_direct_heavy_i_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Direct Heavy I outfit", b_debug_set_casino_heist_direct_heavy_i_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Direct Heavy II Outfits", i_debug_casino_heist_direct_heavy_ii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Direct Heavy II outfit", b_debug_set_casino_heist_direct_heavy_ii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Direct Heavy III Outfits", i_debug_casino_heist_direct_heavy_iii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Direct Heavy III outfit", b_debug_set_casino_heist_direct_heavy_iii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist FIB Outfits", i_debug_casino_heist_fib_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_FIB_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_FIB_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist FIB outfit", b_debug_set_casino_heist_fib_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Stealth I Outfits", i_debug_casino_heist_stealth_i_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_I_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_I_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Stealth I outfit", b_debug_set_casino_heist_stealth_i_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Stealth II Outfits", i_debug_casino_heist_stealth_ii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_II_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_II_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Stealth II outfit", b_debug_set_casino_heist_stealth_ii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Stealth III Outfits", i_debug_casino_heist_stealth_iii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_III_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_STEALTH_III_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Stealth III outfit", b_debug_set_casino_heist_stealth_iii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Covert Stealth I Outfits", i_debug_casino_heist_covert_stealth_i_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Covert Stealth I outfit", b_debug_set_casino_heist_covert_stealth_i_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Covert Stealth II Outfits", i_debug_casino_heist_covert_stealth_ii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Covert Stealth II outfit", b_debug_set_casino_heist_covert_stealth_ii_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Covert Stealth III Outfits", i_debug_casino_heist_covert_stealth_iii_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Covert Stealth III outfit", b_debug_set_casino_heist_covert_stealth_iii_outfit)
|
|
|
|
ADD_WIDGET_BOOL("Set Casino Heist Valet outfit", b_debug_set_casino_heist_valet_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Firefighter Outfits", i_debug_casino_heist_Firefighter_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_FIREFIGHTER_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_FIREFIGHTER_7), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Firefighter outfit", b_debug_set_casino_heist_Firefighter_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist NOOSE Outfits", i_debug_casino_heist_NOOSE_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_NOOSE_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_NOOSE_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist NOOSE outfit", b_debug_set_casino_heist_NOOSE_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Gruppe Sechs Outfits", i_debug_casino_heist_gruppe_sechs_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_GRUPPE_SECHS_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Gruppe Sechs outfit", b_debug_set_casino_heist_gruppe_sechs_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Bugstars Outfits", i_debug_casino_heist_Bugstars_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_BUGSTARS_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_BUGSTARS_5), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Bugstars outfit", b_debug_set_casino_heist_Bugstars_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Celeb Outfits", i_debug_casino_heist_celeb_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_CELEB_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_CELEB_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Celeb outfit", b_debug_set_casino_heist_celeb_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Maintenance Outfits", i_debug_casino_heist_maintenance_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_MAINTENANCE_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_MAINTENANCE_5), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Maintenance outfit", b_debug_set_casino_heist_maintenance_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist Prison Guard Outfits", i_debug_casino_heist_prison_guard_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_PRISON_GUARD_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_PRISON_GUARD_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist Prison Guard outfit", b_debug_set_casino_heist_prison_guard_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Casino Heist High Roller Outfits", i_debug_casino_heist_high_roller_outfits, ENUM_TO_INT(OUTFIT_CASINO_HEIST_HIGH_ROLLER_0), ENUM_TO_INT(OUTFIT_CASINO_HEIST_HIGH_ROLLER_3), 1)
|
|
ADD_WIDGET_BOOL("Set Casino Heist High Roller outfit", b_debug_set_casino_heist_high_roller_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
START_WIDGET_GROUP("DLC Summer 2020")
|
|
ADD_WIDGET_INT_SLIDER("Summer 2020 Outfit", i_debug_sum20_outfit, ENUM_TO_INT(OUTFIT_SUM20_ALIEN_AWARD), ENUM_TO_INT(OUTFIT_SUM20_ALIEN_AWARD), 1)
|
|
ADD_WIDGET_BOOL("Set outfit", b_debug_set_sum20_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
#IF FEATURE_HEIST_ISLAND
|
|
|
|
START_WIDGET_GROUP("Island Heist")
|
|
ADD_WIDGET_INT_SLIDER("Island Heist Guard Outfits", i_debug_island_heist_guard_outfits, ENUM_TO_INT(OUTFIT_ISLAND_HEIST_GUARD_0), ENUM_TO_INT(OUTFIT_ISLAND_HEIST_GUARD_3), 1)
|
|
ADD_WIDGET_BOOL("Set Island Heist Guard Outfits", b_debug_set_island_heist_guard_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Island Heist Smuggler Outfits", i_debug_island_heist_smuggler_outfits, ENUM_TO_INT(OUTFIT_ISLAND_HEIST_SMUGGLER_0), ENUM_TO_INT(OUTFIT_ISLAND_HEIST_SMUGGLER_3), 1)
|
|
ADD_WIDGET_BOOL("Set Island Heist Smuggler Outfits", b_debug_set_island_heist_smuggler_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Island Heist Heavy Outfits", i_debug_island_heist_heavy_outfits, ENUM_TO_INT(OUTFIT_ISLAND_HEIST_HEAVY_1_0), ENUM_TO_INT(OUTFIT_ISLAND_HEIST_HEAVY_2_3), 1)
|
|
ADD_WIDGET_BOOL("Set Island Heist Heavy Outfits", b_debug_set_island_heist_heavy_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Island Heist Light Outfits", i_debug_island_heist_light_outfits, ENUM_TO_INT(OUTFIT_ISLAND_HEIST_LIGHT_1_0), ENUM_TO_INT(OUTFIT_ISLAND_HEIST_LIGHT_2_3), 1)
|
|
ADD_WIDGET_BOOL("Set Island Heist Light Outfits", b_debug_set_island_heist_light_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Island Heist Stealth Outfits", i_debug_island_heist_stealth_outfits, ENUM_TO_INT(OUTFIT_ISLAND_HEIST_STEALTH_1_0), ENUM_TO_INT(OUTFIT_ISLAND_HEIST_STEALTH_2_3), 1)
|
|
ADD_WIDGET_BOOL("Set Island Heist Stealth Outfits", b_debug_set_island_heist_stealth_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Island Heist Beach Party Outfits", i_debug_island_heist_beach_party_outfits, ENUM_TO_INT(OUTFIT_ISLAND_HEIST_BEACH_PARTY_0), ENUM_TO_INT(OUTFIT_ISLAND_HEIST_BEACH_PARTY_0), 1)
|
|
ADD_WIDGET_BOOL("Set Island Heist Beach Party Outfits", b_debug_set_island_heist_beach_party_outfit)
|
|
STOP_WIDGET_GROUP()
|
|
|
|
#ENDIF
|
|
|
|
#IF FEATURE_TUNER
|
|
START_WIDGET_GROUP("Tuner")
|
|
|
|
ADD_WIDGET_INT_SLIDER("Tuner Robber Outfits", i_debug_tuner_robber_outfits, ENUM_TO_INT(OUTFIT_TUNER_ROBBER_BRAVADO), ENUM_TO_INT(OUTFIT_TUNER_ROBBER_ROBBER), 1)
|
|
ADD_WIDGET_BOOL("Set Tuner Robber Outfit", b_debug_set_tuner_robber_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Tuner Security Outfits", i_debug_tuner_security_outfits, ENUM_TO_INT(OUTFIT_TUNER_SECURITY_0), ENUM_TO_INT(OUTFIT_TUNER_SECURITY_3), 1)
|
|
ADD_WIDGET_BOOL("Set Tuner Security Outfit", b_debug_set_tuner_security_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Tuner Lost MC Outfits", i_debug_tuner_lost_mc_outfits, ENUM_TO_INT(OUTFIT_TUNER_LOST_MC_0), ENUM_TO_INT(OUTFIT_TUNER_LOST_MC_3), 1)
|
|
ADD_WIDGET_BOOL("Set Tuner Lost MC Outfit", b_debug_set_tuner_lost_mc_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Tuner Dock Worker Outfits", i_debug_tuner_dock_worker_outfits, ENUM_TO_INT(OUTFIT_TUNER_DOCK_WORKER_0), ENUM_TO_INT(OUTFIT_TUNER_DOCK_WORKER_3), 1)
|
|
ADD_WIDGET_BOOL("Set Tuner Dock Worker Outfit", b_debug_set_tuner_dock_worker_outfit)
|
|
|
|
STOP_WIDGET_GROUP()
|
|
#ENDIF
|
|
|
|
#IF FEATURE_TUNER
|
|
START_WIDGET_GROUP("Fixer")
|
|
|
|
ADD_WIDGET_INT_SLIDER("Fixer Setup Outfits", i_debug_fixer_setup_outfits, ENUM_TO_INT(OUTFIT_FIXER_SETUP_0), ENUM_TO_INT(OUTFIT_FIXER_SETUP_2), 1)
|
|
ADD_WIDGET_BOOL("Set Fixer Setup Outfit", b_debug_set_fixer_setup_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Fixer Party Promoter Outfits", i_debug_fixer_party_promoter_outfits, ENUM_TO_INT(OUTFIT_FIXER_PARTY_PROMOTER_0), ENUM_TO_INT(OUTFIT_FIXER_PARTY_PROMOTER_3), 1)
|
|
ADD_WIDGET_BOOL("Set Fixer Party Promoter Outfit", b_debug_set_fixer_party_promoter_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Fixer Billionaire Games Outfits", i_debug_fixer_billionaire_games_outfits, ENUM_TO_INT(OUTFIT_FIXER_BILLIONAIRE_GAMES_0), ENUM_TO_INT(OUTFIT_FIXER_BILLIONAIRE_GAMES_3), 1)
|
|
ADD_WIDGET_BOOL("Set Fixer Billionaire Games Outfit", b_debug_set_fixer_billionaire_games_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Fixer Golf Outfits", i_debug_fixer_golf_outfits, ENUM_TO_INT(OUTFIT_FIXER_GOLF_0), ENUM_TO_INT(OUTFIT_FIXER_GOLF_7), 1)
|
|
ADD_WIDGET_BOOL("Set Fixer Golf Outfit", b_debug_set_fixer_golf_outfit)
|
|
|
|
ADD_WIDGET_BOOL("Set Heist Navy Coveralls", b_debug_set_heist_navy_coveralls)
|
|
|
|
STOP_WIDGET_GROUP()
|
|
#ENDIF
|
|
|
|
#IF FEATURE_DLC_1_2022
|
|
START_WIDGET_GROUP("Summer 2022")
|
|
ADD_WIDGET_BOOL("Set LD Organics Award outfit", b_debug_set_ld_organics_award)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Sum22 IAA Agent Outfits", i_debug_sum22_iaa_agent_outfits, ENUM_TO_INT(OUTFIT_SUM22_IAA_AGENT_0), ENUM_TO_INT(OUTFIT_SUM22_IAA_AGENT_3), 1)
|
|
ADD_WIDGET_BOOL("Set Sum22 IAA AGent Outfit", b_debug_set_sum22_iaa_agent_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Sum22 Halloween Riders Outfits", i_debug_sum22_halloween_riders_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_7), 1)
|
|
ADD_WIDGET_BOOL("Set Sum22 Halloween Riders Outfit", b_debug_set_sum22_halloween_riders_outfit)
|
|
|
|
ADD_WIDGET_INT_SLIDER("Sum22 Halloween Hunted Outfits", i_debug_sum22_halloween_hunted_outfits, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0), ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_7), 1)
|
|
ADD_WIDGET_BOOL("Set Sum22 Halloween Hunted Outfit", b_debug_set_sum22_halloween_hunted_outfit)
|
|
|
|
STOP_WIDGET_GROUP()
|
|
|
|
#ENDIF
|
|
|
|
STOP_WIDGET_GROUP()
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
///
|
|
/// [MISC FLAGS]
|
|
///
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
START_WIDGET_GROUP("Global Flags")
|
|
ADD_WIDGET_BOOL("g_bValidatePlayersTorsoComponent", g_bValidatePlayersTorsoComponent)
|
|
ADD_WIDGET_BOOL("g_bValidatePlayersHairStats", g_bValidatePlayersHairStats)
|
|
ADD_WIDGET_BOOL("g_bValidatePlayersHelmetBerd", g_bValidatePlayersHelmetBerd)
|
|
ADD_WIDGET_BOOL("g_bValidatePlayersScubaGear", g_bValidatePlayersScubaGear)
|
|
ADD_WIDGET_BOOL("g_bForcePlayersHelmetOn", g_bForcePlayersHelmetOn)
|
|
ADD_WIDGET_BOOL("g_bUnoptimiseValidatePlayersHairStats", g_bUnoptimiseValidatePlayersHairStats)
|
|
STOP_WIDGET_GROUP()
|
|
STOP_WIDGET_GROUP()
|
|
|
|
eStage = STAGE_PROCESSING
|
|
ENDPROC
|
|
|
|
PROC PROCESS_CLOTHING_DEBUG_OUTPUT()
|
|
|
|
IF bSetPlayerModel_Male
|
|
MODEL_NAMES eModel = MP_M_FREEMODE_01
|
|
REQUEST_MODEL(eModel)
|
|
IF HAS_MODEL_LOADED(eModel)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
SET_PLAYER_MODEL(PLAYER_ID(), eModel)
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(PLAYER_PED_ID())
|
|
ENDIF
|
|
SET_MODEL_AS_NO_LONGER_NEEDED(eModel)
|
|
bSetPlayerModel_Male = FALSE
|
|
ENDIF
|
|
|
|
// Update stored model
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 0)
|
|
ENDIF
|
|
IF bSetPlayerModel_Female
|
|
MODEL_NAMES eModel = MP_F_FREEMODE_01
|
|
REQUEST_MODEL(eModel)
|
|
IF HAS_MODEL_LOADED(eModel)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
SET_PLAYER_MODEL(PLAYER_ID(), eModel)
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(PLAYER_PED_ID())
|
|
ENDIF
|
|
SET_MODEL_AS_NO_LONGER_NEEDED(eModel)
|
|
bSetPlayerModel_Female = FALSE
|
|
ENDIF
|
|
// Update stored model
|
|
SET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, 1)
|
|
ENDIF
|
|
|
|
IF bOutputUniqueHashNames
|
|
|
|
INT iComp
|
|
INT iDrawCount, iDraw
|
|
INT iTexCount, iTex
|
|
PED_COMP_NAME_ENUM eItem
|
|
INT iDLCNameHash
|
|
TEXT_LABEL_63 tlNameHash
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
INT iDLCPackHash = -1
|
|
INT iLocalDrawOffset
|
|
scrShopPedComponent componentItem
|
|
PED_COMP_NAME_ENUM ePedComp
|
|
INT iMissingItemsCount = 0
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
IF ePedModel = MP_M_FREEMODE_01 SAVE_STRING_TO_DEBUG_FILE("DLC NAME HASHES - MP_M_FREEMODE_01")
|
|
ELIF ePedModel = MP_F_FREEMODE_01 SAVE_STRING_TO_DEBUG_FILE("DLC NAME HASHES - MP_F_FREEMODE_01")
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
|
|
iDLCPackHash = -1
|
|
iLocalDrawOffset = 0
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iComp)))
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF iComp != ENUM_TO_INT(PED_COMP_HEAD)
|
|
//AND iComp != ENUM_TO_INT(PED_COMP_DECL)
|
|
eItem = GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
IF eItem != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)), eItem)
|
|
iDrawCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
iDLCPackHash = -1
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw) != iDLCPackHash
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLocalDrawOffset = iDraw
|
|
ENDIF
|
|
|
|
IF iDraw >= g_sTempCompData[1].iDrawable
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), ePedModel)) = iDLCPackHash
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iComp, iDraw, iTex)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("...")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iComp)))
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(", Local ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw-iLocalDrawOffset)
|
|
SAVE_STRING_TO_DEBUG_FILE(", Global ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw)
|
|
SAVE_STRING_TO_DEBUG_FILE(", Texture ")
|
|
SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
|
|
|
|
IF iDLCNameHash != 0
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
ELSE
|
|
ePedComp = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComp))
|
|
IF ePedComp != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComp), ePedComp)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF iDLCNameHash = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(", ***missing***")
|
|
iMissingItemsCount++
|
|
ELIF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)
|
|
ENDIF
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iProp
|
|
REPEAT NUMBER_OF_PED_PROP_TYPES iProp
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
iDLCPackHash = -1
|
|
iLocalDrawOffset = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw) != iDLCPackHash
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLocalDrawOffset = iDraw
|
|
ENDIF
|
|
|
|
IF iDraw >= GET_DEFAULT_DLC_DRAW_FOR_PROP(ePedModel, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), ePedModel)) = iDLCPackHash
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iProp, iDraw, iTex)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("...")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(", Local ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw-iLocalDrawOffset)
|
|
SAVE_STRING_TO_DEBUG_FILE(", Global ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw)
|
|
SAVE_STRING_TO_DEBUG_FILE(", Texture ")
|
|
SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
|
|
IF iDLCNameHash = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(", ***missing***")
|
|
iMissingItemsCount++
|
|
ELIF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDLCNameHash)
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("MISSING ITEMS COUNT ")SAVE_INT_TO_DEBUG_FILE(iMissingItemsCount)
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("INVALID ENTRIES")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
|
|
INT iDLCItemCount
|
|
INT iDLCItem
|
|
INT iCurrentPed = GET_SHOP_PED_ID_FOR_MODEL(GET_ENTITY_MODEL(PLAYER_PED_ID()))
|
|
//scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iCurrentPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, iComp)
|
|
REPEAT iDLCItemCount iDLCItem
|
|
GET_SHOP_PED_QUERY_COMPONENT(iDLCItem, componentItem)
|
|
|
|
IF componentItem.m_drawableIndex < 0
|
|
OR componentItem.m_drawableIndex >= GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
OR componentItem.m_textureIndex < 0
|
|
OR componentItem.m_textureIndex >= GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), componentItem.m_drawableIndex)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("...")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iComp)))
|
|
SAVE_STRING_TO_DEBUG_FILE(", Global Drawable ")
|
|
SAVE_INT_TO_DEBUG_FILE(componentItem.m_drawableIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(", Texture ")
|
|
SAVE_INT_TO_DEBUG_FILE(componentItem.m_textureIndex)
|
|
|
|
IF GET_DLC_NAME_HASH_STRING(componentItem.m_nameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_INT_TO_DEBUG_FILE(componentItem.m_nameHash)
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
ENDREPEAT
|
|
|
|
iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iCurrentPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_PROP), -1, -1)
|
|
REPEAT iDLCItemCount iDLCItem
|
|
GET_SHOP_PED_QUERY_PROP(iDLCItem, propItem)
|
|
|
|
IF propItem.m_propIndex < 0
|
|
OR propItem.m_propIndex >= GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint))
|
|
OR propItem.m_textureIndex < 0
|
|
OR propItem.m_textureIndex >= GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint), propItem.m_propIndex)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("...")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint)))
|
|
SAVE_STRING_TO_DEBUG_FILE(", Global Drawable ")
|
|
SAVE_INT_TO_DEBUG_FILE(propItem.m_propIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(", Texture ")
|
|
SAVE_INT_TO_DEBUG_FILE(propItem.m_textureIndex)
|
|
|
|
IF GET_DLC_NAME_HASH_STRING(propItem.m_nameHash, tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(", ")
|
|
SAVE_INT_TO_DEBUG_FILE(propItem.m_nameHash)
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bOutputUniqueHashNames = FALSE
|
|
ENDIF
|
|
|
|
IF bOutputShopLocateNames
|
|
|
|
REQUEST_ADDITIONAL_TEXT("CLO_MNU", MENU_TEXT_SLOT)
|
|
WHILE NOT HAS_THIS_ADDITIONAL_TEXT_LOADED("CLO_MNU", MENU_TEXT_SLOT)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
INT iMenuIndex
|
|
REPEAT ENUM_TO_INT(CLO_MENU_LAST_SHOP_MENU) iMenuIndex
|
|
SAVE_INT_TO_DEBUG_FILE(iMenuIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
IF DOES_TEXT_LABEL_EXIST(GET_CLOTHES_MENU_NAME(INT_TO_ENUM(CLOTHES_MENU_ENUM, iMenuIndex), FALSE))
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(GET_CLOTHES_MENU_NAME(INT_TO_ENUM(CLOTHES_MENU_ENUM, iMenuIndex), FALSE)))
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
CLEAR_ADDITIONAL_TEXT(MENU_TEXT_SLOT, FALSE)
|
|
|
|
bOutputShopLocateNames = FALSE
|
|
ENDIF
|
|
|
|
IF (bGenerate_ShopMeta OR bGenerate_MissingShopMeta)
|
|
AND NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("<!-- ")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), GET_ENTITY_MODEL(PLAYER_PED_ID())))
|
|
SAVE_STRING_TO_DEBUG_FILE(" -->")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <pedComponents>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iComp, iProp
|
|
INT iDrawCount, iDraw
|
|
INT iTexCount, iTex
|
|
INT iDLCPackHash = GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), GET_ENTITY_MODEL(PLAYER_PED_ID())))
|
|
TEXT_LABEL_63 tlPackID = GET_SHOP_PED_APPAREL_PREFIX(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack))
|
|
INT iLocalDraw
|
|
INT iLastDLCHash
|
|
INT iDLCNameHash
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
iLocalDraw = 0
|
|
iLastDLCHash = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF iLastDLCHash != GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLastDLCHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLocalDraw = 0
|
|
ENDIF
|
|
|
|
IF (iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw))
|
|
AND GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw) != 0
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("<!-- ")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))
|
|
SAVE_STRING_TO_DEBUG_FILE(": -->")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iComp, iDraw, iTex)
|
|
IF (NOT bGenerate_MissingShopMeta OR iDLCNameHash = 0)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <lockHash />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <cost value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textLabel />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>")SAVE_STRING_TO_DEBUG_FILE(tlPackID)SAVE_STRING_TO_DEBUG_FILE("_M_")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iLocalDraw)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>")SAVE_STRING_TO_DEBUG_FILE(tlPackID)SAVE_STRING_TO_DEBUG_FILE("_F_")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iLocalDraw)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eShopEnum>CLO_SHOP_LOW</eShopEnum>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <locate value=\"-99\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <scriptSaveData value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <restrictionTags />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <forcedComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantProps />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <drawableIndex value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <localDrawableIndex value=\"")SAVE_INT_TO_DEBUG_FILE(iLocalDraw)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eCompType>")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_DLC_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))SAVE_STRING_TO_DEBUG_FILE("</eCompType>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textureIndex value=\"")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <isInOutfit value=\"false\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
ENDREPEAT
|
|
ENDIF
|
|
iLocalDraw++
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </pedComponents>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <pedProps>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
WAIT(0)
|
|
|
|
REPEAT 9 iProp
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
iLocalDraw = 0
|
|
iLastDLCHash = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF iLastDLCHash != GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLastDLCHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLocalDraw = 0
|
|
ENDIF
|
|
|
|
IF (iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw))
|
|
AND GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw) != 0
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("<!-- ")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))
|
|
SAVE_STRING_TO_DEBUG_FILE(": -->")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iProp, iDraw, iTex)
|
|
IF (NOT bGenerate_MissingShopMeta OR iDLCNameHash = 0)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <lockHash />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <cost value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textLabel />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_SHOP_PED_APPAREL_PREFIX(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack)))SAVE_STRING_TO_DEBUG_FILE("_M_")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iLocalDraw)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_SHOP_PED_APPAREL_PREFIX(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack)))SAVE_STRING_TO_DEBUG_FILE("_F_")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iLocalDraw)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eShopEnum>CLO_SHOP_LOW</eShopEnum>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <locate value=\"-99\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <scriptSaveData value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <restrictionTags />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <forcedComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantProps />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <propIndex value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <localPropIndex value=\"")SAVE_INT_TO_DEBUG_FILE(iLocalDraw)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eAnchorPoint>")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))SAVE_STRING_TO_DEBUG_FILE("</eAnchorPoint>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textureIndex value=\"")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <isInOutfit value=\"false\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
ENDREPEAT
|
|
ENDIF
|
|
iLocalDraw++
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </pedProps>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bGenerate_ShopMeta = FALSE
|
|
bGenerate_MissingShopMeta = FALSE
|
|
ENDIF
|
|
|
|
IF bGenerate_MissingSaveItems
|
|
|
|
OPEN_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iComp, iProp
|
|
INT iDrawCount, iDraw
|
|
INT iTexCount, iTex
|
|
INT iDLCPackHash = GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), GET_ENTITY_MODEL(PLAYER_PED_ID())))
|
|
INT iLocalDraw
|
|
INT iLastDLCHash
|
|
INT iDLCNameHash
|
|
TEXT_LABEL_63 tlDLCName
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
iLocalDraw = 0
|
|
iLastDLCHash = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF iLastDLCHash != GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLastDLCHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLocalDraw = 0
|
|
ENDIF
|
|
|
|
IF (iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw))
|
|
AND GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw) != 0
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iComp, iDraw, iTex)
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_ACQUIRED_SAVE_DATA(iDLCNameHash)
|
|
AND NOT IS_STRING_NULL_OR_EMPTY(componentItem.m_textLabel)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("<Item key=\"")
|
|
IF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlDLCName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlDLCName)
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("MISSING_")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))
|
|
SAVE_STRING_TO_DEBUG_FILE("_")
|
|
SAVE_INT_TO_DEBUG_FILE(iLocalDraw)
|
|
SAVE_STRING_TO_DEBUG_FILE("_")
|
|
SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE("\" value=\"\"/>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
ENDREPEAT
|
|
ENDIF
|
|
iLocalDraw++
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
REPEAT 9 iProp
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
iLocalDraw = 0
|
|
iLastDLCHash = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF iLastDLCHash != GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLastDLCHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLocalDraw = 0
|
|
ENDIF
|
|
|
|
IF (iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw))
|
|
AND GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw) != 0
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iProp, iDraw, iTex)
|
|
|
|
GET_SHOP_PED_PROP(iDLCNameHash, propItem)
|
|
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_ACQUIRED_SAVE_DATA(iDLCNameHash)
|
|
AND NOT IS_STRING_NULL_OR_EMPTY(propItem.m_textLabel)
|
|
AND GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlDLCName)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE("<Item key=\"")
|
|
IF GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlDLCName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlDLCName)
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("MISSING_")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))
|
|
SAVE_STRING_TO_DEBUG_FILE("_")
|
|
SAVE_INT_TO_DEBUG_FILE(iLocalDraw)
|
|
SAVE_STRING_TO_DEBUG_FILE("_")
|
|
SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE("\" value=\"\"/>")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
ENDREPEAT
|
|
ENDIF
|
|
iLocalDraw++
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bGenerate_MissingSaveItems = FALSE
|
|
ENDIF
|
|
|
|
IF bGenerate_GET_DLC_NAME_HASH_STRING
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("GET_DLC_NAME_HASH_STRING")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iComp, iProp
|
|
INT iDrawCount, iDraw
|
|
INT iTexCount, iTex
|
|
INT iDLCPackHash = GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), GET_ENTITY_MODEL(PLAYER_PED_ID())))
|
|
TEXT_LABEL_63 tlPackID = GET_SHOP_PED_APPAREL_PREFIX(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack))
|
|
TEXT_LABEL_63 tlItemKey
|
|
INT iLocalDraw
|
|
INT iLastDLCHash
|
|
INT iCount
|
|
|
|
INT iPass
|
|
REPEAT 2 iPass
|
|
iCount = 0
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
iLocalDraw = 0
|
|
iLastDLCHash = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF iLastDLCHash != GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLastDLCHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLocalDraw = 0
|
|
ENDIF
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
tlItemKey = tlPackID
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
tlItemKey += "_M_"
|
|
ELSE
|
|
tlItemKey += "_F_"
|
|
ENDIF
|
|
tlItemKey += GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)))
|
|
tlItemKey += "_"
|
|
tlItemKey += iLocalDraw
|
|
tlItemKey += "_"
|
|
tlItemKey += iTex
|
|
|
|
IF iPass = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(tlItemKey)SAVE_STRING_TO_DEBUG_FILE(", // ")SAVE_INT_TO_DEBUG_FILE(GET_HASH_KEY(tlItemKey))
|
|
ELSE
|
|
IF iCount = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH eDLCComp")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" CASE ")SAVE_STRING_TO_DEBUG_FILE(tlItemKey)SAVE_STRING_TO_DEBUG_FILE(" t = \"")SAVE_STRING_TO_DEBUG_FILE(tlItemKey)SAVE_STRING_TO_DEBUG_FILE("\" BREAK")
|
|
iCount++
|
|
|
|
IF iCount >= 20
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
iCount = 0
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
iLocalDraw++
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
REPEAT 9 iProp
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
iLocalDraw = 0
|
|
iLastDLCHash = 0
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF iLastDLCHash != GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLastDLCHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLocalDraw = 0
|
|
ENDIF
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
tlItemKey = tlPackID
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
tlItemKey += "_M_"
|
|
ELSE
|
|
tlItemKey += "_F_"
|
|
ENDIF
|
|
tlItemKey += GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
tlItemKey += "_"
|
|
tlItemKey += iLocalDraw
|
|
tlItemKey += "_"
|
|
tlItemKey += iTex
|
|
|
|
IF iPass = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(tlItemKey)SAVE_STRING_TO_DEBUG_FILE(", // ")SAVE_INT_TO_DEBUG_FILE(GET_HASH_KEY(tlItemKey))
|
|
ELSE
|
|
IF iCount = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH eDLCComp")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" CASE ")SAVE_STRING_TO_DEBUG_FILE(tlItemKey)SAVE_STRING_TO_DEBUG_FILE(" t = \"")SAVE_STRING_TO_DEBUG_FILE(tlItemKey)SAVE_STRING_TO_DEBUG_FILE("\" BREAK")
|
|
iCount++
|
|
|
|
IF iCount >= 20
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
iCount = 0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ENDREPEAT
|
|
ENDIF
|
|
iLocalDraw++
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
|
|
IF iCount != 0
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
ENDIF
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bGenerate_GET_DLC_NAME_HASH_STRING = FALSE
|
|
ENDIF
|
|
|
|
IF bGenerate_GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP
|
|
AND NETWORK_IS_GAME_IN_PROGRESS()
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iPed
|
|
MODEL_NAMES ePlayerModel = GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
IF ePlayerModel = MP_M_FREEMODE_01
|
|
iPed = 3
|
|
ELIF ePlayerModel = MP_F_FREEMODE_01
|
|
iPed = 4
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM eDefaultDLCProp = GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(ePlayerModel)
|
|
|
|
scrShopPedProp propItem
|
|
INIT_SHOP_PED_PROP(propItem)
|
|
|
|
IF ePlayerModel = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE("FUNC INT __MALE_PROPS_LOOKUP(INT iNameHash)")
|
|
ELIF ePlayerModel = MP_F_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE("FUNC INT __FEMALE_PROPS_LOOKUP(INT iNameHash)")
|
|
ENDIF
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH iNameHash")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iLookupEnum
|
|
INT iDLCItem
|
|
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
|
|
REPEAT iDLCItemCount iDLCItem
|
|
GET_SHOP_PED_QUERY_PROP(iDLCItem, propItem)
|
|
SAVE_STRING_TO_DEBUG_FILE(" CASE ")SAVE_INT_TO_DEBUG_FILE(propItem.m_nameHash)SAVE_STRING_TO_DEBUG_FILE(" RETURN ")SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eDefaultDLCProp)+iDLCItem)
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
// Validate what we already have.
|
|
iLookupEnum = ENUM_TO_INT(GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), propItem.m_propIndex, propItem.m_textureIndex, INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint)))
|
|
IF iLookupEnum != (ENUM_TO_INT(eDefaultDLCProp)+iDLCItem)
|
|
ASSERTLN("Invalid meta: [", GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, propItem.m_eAnchorPoint)), "] ", propItem.m_nameHash, ", lookup enum = ", iLookupEnum, ", expected enum = ", (ENUM_TO_INT(eDefaultDLCProp)+iDLCItem), ", draw = ", propItem.m_propIndex, ", tex = ", propItem.m_textureIndex)
|
|
ENDIF
|
|
|
|
IF (iDLCItem % 100) = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH iNameHash")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" RETURN -99")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("ENDFUNC")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
WAIT(0)
|
|
|
|
scrShopPedComponent componentItem
|
|
INIT_SHOP_PED_COMPONENT(componentItem)
|
|
|
|
PED_COMP_NAME_ENUM eDefaultDLCComp
|
|
|
|
INT iCompType
|
|
FOR iCompType = 1 TO 11
|
|
|
|
WAIT(0)
|
|
|
|
IF ePlayerModel = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE("FUNC INT __MALE_")
|
|
ELIF ePlayerModel = MP_F_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE("FUNC INT __FEMALE_")
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iCompType)))
|
|
SAVE_STRING_TO_DEBUG_FILE("_LOOKUP(INT iNameHash)")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH iNameHash")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
|
|
eDefaultDLCComp = GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePlayerModel, INT_TO_ENUM(PED_COMPONENT, iCompType))
|
|
iDLCItemCount = SETUP_SHOP_PED_APPAREL_QUERY_TU(iPed, ENUM_TO_INT(CLO_SHOP_NONE), -1, ENUM_TO_INT(SHOP_PED_COMPONENT), -1, iCompType) // shop=CLO_SHOP_NONE
|
|
|
|
REPEAT iDLCItemCount iDLCItem
|
|
GET_SHOP_PED_QUERY_COMPONENT(iDLCItem, componentItem)
|
|
SAVE_STRING_TO_DEBUG_FILE(" CASE ")SAVE_INT_TO_DEBUG_FILE(componentItem.m_nameHash)SAVE_STRING_TO_DEBUG_FILE(" RETURN ")SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eDefaultDLCComp)+iDLCItem)SAVE_STRING_TO_DEBUG_FILE(" BREAK")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
// Validate what we already have.
|
|
iLookupEnum = ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), componentItem.m_drawableIndex, componentItem.m_textureIndex, INT_TO_ENUM(PED_COMP_TYPE_ENUM, componentItem.m_eCompType)))
|
|
IF iLookupEnum != (ENUM_TO_INT(eDefaultDLCComp)+iDLCItem)
|
|
ASSERTLN("Invalid meta: [", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iCompType)), "] ", componentItem.m_nameHash, ", lookup enum = ", iLookupEnum, ", expected enum = ", (ENUM_TO_INT(eDefaultDLCComp)+iDLCItem), ", draw = ", componentItem.m_drawableIndex, ", tex = ", componentItem.m_textureIndex)
|
|
ENDIF
|
|
|
|
IF (iDLCItem % 100) = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH iNameHash")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
|
|
IF (iDLCItem % 500) = 0
|
|
WAIT(0)
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" RETURN -99")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("ENDFUNC")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDFOR
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bGenerate_GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP = FALSE
|
|
ENDIF
|
|
|
|
IF bGenerate_GET_TATTOO_ENUM_FROM_DLC_HASH
|
|
|
|
INT iDLCIndex
|
|
INT iDLCCount
|
|
sTattooShopItemValues sDLCTattooData
|
|
TATTOO_FACTION_ENUM eFaction
|
|
TEXT_LABEL_63 tlPackName
|
|
|
|
eFaction = TATTOO_MP_FM
|
|
iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("FUNC BOOL LOOKUP_MALE_TATTOO_ENUM_FOR_DLC_HASH(INT iDLCTattooNameHash, TATTOO_NAME_ENUM &eTattoo)")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" INT iDLCIndex = -1")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iCount = 0
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF iCount = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH iDLCTattooNameHash")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" CASE ")SAVE_INT_TO_DEBUG_FILE(sDLCTattooData.Preset)SAVE_STRING_TO_DEBUG_FILE(" iDLCIndex = ")SAVE_INT_TO_DEBUG_FILE(iDLCIndex)SAVE_STRING_TO_DEBUG_FILE(" BREAK // ")
|
|
IF GET_DLC_PACK_NAME_FROM_HASH(sDLCTattooData.Collection, tlPackName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlPackName)
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(sDLCTattooData.Collection)
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sDLCTattooData.label)
|
|
SAVE_STRING_TO_DEBUG_FILE(" [")SAVE_STRING_TO_DEBUG_FILE(sDLCTattooData.label)SAVE_STRING_TO_DEBUG_FILE("]")
|
|
IF DOES_TEXT_LABEL_EXIST(sDLCTattooData.label)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(sDLCTattooData.label))
|
|
ENDIF
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
iCount++
|
|
IF iCount >= 100
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
iCount = 0
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
IF iCount != 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" IF iDLCIndex != -1")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" eTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, (ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex))")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" RETURN TRUE")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDIF")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" RETURN FALSE")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("ENDFUNC")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
eFaction = TATTOO_MP_FM_F
|
|
iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("FUNC BOOL LOOKUP_FEMALE_TATTOO_ENUM_FOR_DLC_HASH(INT iDLCTattooNameHash, TATTOO_NAME_ENUM &eTattoo)")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" INT iDLCIndex = -1")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
iCount = 0
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF iCount = 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" SWITCH iDLCTattooNameHash")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
IF iDLCIndex >= 300 AND iDLCIndex <= 302
|
|
SAVE_STRING_TO_DEBUG_FILE(" //CASE -963164512 iDLCIndex = ")
|
|
SAVE_INT_TO_DEBUG_FILE(iDLCIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(" BREAK // MP_LUXE_VDG_006_F")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" CASE ")SAVE_INT_TO_DEBUG_FILE(sDLCTattooData.Preset)SAVE_STRING_TO_DEBUG_FILE(" iDLCIndex = ")SAVE_INT_TO_DEBUG_FILE(iDLCIndex)SAVE_STRING_TO_DEBUG_FILE(" BREAK // ")
|
|
IF GET_DLC_PACK_NAME_FROM_HASH(sDLCTattooData.Collection, tlPackName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlPackName)
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(sDLCTattooData.Collection)
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sDLCTattooData.label)
|
|
SAVE_STRING_TO_DEBUG_FILE(" [")SAVE_STRING_TO_DEBUG_FILE(sDLCTattooData.label)SAVE_STRING_TO_DEBUG_FILE("]")
|
|
IF DOES_TEXT_LABEL_EXIST(sDLCTattooData.label)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(sDLCTattooData.label))
|
|
ENDIF
|
|
ENDIF
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
iCount++
|
|
IF iCount >= 100
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
iCount = 0
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
IF iCount != 0
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDSWITCH")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" IF iDLCIndex != -1")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" eTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, (ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex))")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" RETURN TRUE")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" ENDIF")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" RETURN FALSE")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("ENDFUNC")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bGenerate_GET_TATTOO_ENUM_FROM_DLC_HASH = FALSE
|
|
ENDIF
|
|
|
|
IF bDisplay_ShopPedInfo
|
|
AND NETWORK_IS_GAME_IN_PROGRESS()
|
|
INT iComp, iProp
|
|
INT iDLCNameHash
|
|
TEXT_LABEL_63 tlDisplayText1, tlDisplayText2
|
|
PED_COMP_NAME_ENUM ePedComp
|
|
PED_INDEX pedID = PLAYER_PED_ID()
|
|
|
|
IF IS_PLAYER_BROWSING_ITEMS_IN_ANY_SHOP()
|
|
AND DOES_ENTITY_EXIST(g_pShopClonePed)
|
|
AND NOT IS_PED_INJURED(g_pShopClonePed)
|
|
pedID = g_pShopClonePed
|
|
ENDIF
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(pedID)
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
BOOL bNameHashFound
|
|
FLOAT fScreenX, fScreenY, fYOffset
|
|
//GET_SCREEN_COORD_FROM_WORLD_COORD(GET_PED_BONE_COORDS(pedID, BONETAG_HEAD, <<0,0,0>>), fScreenX, fScreenY)
|
|
fScreenX = 0.6
|
|
fScreenY = 0.3
|
|
|
|
TEXT_LABEL tlSplit = " "
|
|
|
|
REPEAT NUMBER_OF_PED_PROP_TYPES iProp
|
|
|
|
bNameHashFound = FALSE
|
|
tlDisplayText1 = ""
|
|
tlDisplayText2 = ""
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pedID), iProp, GET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp)), GET_PED_PROP_TEXTURE_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp)))
|
|
IF iDLCNameHash != 0
|
|
GET_SHOP_PED_PROP(iDLCNameHash, propItem)
|
|
bNameHashFound = GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlDisplayText1)
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(componentItem.m_textLabel)
|
|
IF bNameHashFound
|
|
tlDisplayText2 += tlSplit
|
|
ENDIF
|
|
tlDisplayText2 += "~g~"
|
|
tlDisplayText2 += componentItem.m_textLabel
|
|
IF DOES_TEXT_LABEL_EXIST(componentItem.m_textLabel)
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~r~"
|
|
tlDisplayText2 += GET_STRING_FROM_TEXT_FILE(componentItem.m_textLabel)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
ePedComp = GET_PED_PROP_CURRENT_FROM_LOOKUP(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
IF ePedComp != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_PROPS, ePedComp)
|
|
|
|
IF GET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp)) != -1
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(g_sTempCompData[1].sLabel)
|
|
AND NOT ARE_STRINGS_EQUAL(g_sTempCompData[1].sLabel, "NO_LABEL")
|
|
|
|
tlDisplayText1 = "DISK_"
|
|
tlDisplayText1 += GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
tlDisplayText1 += "_"
|
|
tlDisplayText1 += GET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
tlDisplayText1 += "_"
|
|
tlDisplayText1 += GET_PED_PROP_TEXTURE_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~g~"
|
|
tlDisplayText2 += g_sTempCompData[1].sLabel
|
|
IF DOES_TEXT_LABEL_EXIST(g_sTempCompData[1].sLabel)
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~r~"
|
|
tlDisplayText2 += GET_STRING_FROM_TEXT_FILE(g_sTempCompData[1].sLabel)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlDisplayText1)
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(tlDisplayText2)
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0000, 0.360)
|
|
SET_TEXT_COLOUR(255, 165, 0, 255)
|
|
SET_TEXT_WRAP(0.0, 5.0)
|
|
BEGIN_TEXT_COMMAND_GET_SCREEN_WIDTH_OF_DISPLAY_TEXT("TWOSTRINGS")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText1)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText2)
|
|
FLOAT fWidth = END_TEXT_COMMAND_GET_SCREEN_WIDTH_OF_DISPLAY_TEXT(TRUE)
|
|
DRAW_RECT_FROM_CORNER(fScreenX, fScreenY+fYOffset, fWidth, 0.030, 0, 0, 0, 100)
|
|
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0000, 0.360)
|
|
SET_TEXT_COLOUR(255, 165, 0, 255)
|
|
SET_TEXT_WRAP(0.0, 5.0)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("TWOSTRINGS")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText1)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText2)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(fScreenX, fScreenY+fYOffset)
|
|
|
|
fYOffset += 0.030
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
fYOffset += (0.030)
|
|
|
|
INT iLoopCounter
|
|
REPEAT NUM_PED_COMPONENTS iLoopCounter
|
|
|
|
SWITCH iLoopCounter
|
|
CASE 0 iComp = ENUM_TO_INT(PED_COMP_HAIR) BREAK
|
|
CASE 1 iComp = ENUM_TO_INT(PED_COMP_BERD) BREAK
|
|
CASE 2 iComp = ENUM_TO_INT(PED_COMP_JBIB) BREAK
|
|
CASE 3 iComp = ENUM_TO_INT(PED_COMP_SPECIAL) BREAK
|
|
CASE 4 iComp = ENUM_TO_INT(PED_COMP_LEG) BREAK
|
|
CASE 5 iComp = ENUM_TO_INT(PED_COMP_FEET) BREAK
|
|
CASE 6 iComp = ENUM_TO_INT(PED_COMP_TEETH) BREAK
|
|
CASE 7 iComp = ENUM_TO_INT(PED_COMP_TORSO) BREAK
|
|
CASE 8 iComp = ENUM_TO_INT(PED_COMP_SPECIAL2) BREAK
|
|
CASE 9 iComp = ENUM_TO_INT(PED_COMP_DECL) BREAK
|
|
CASE 10 iComp = ENUM_TO_INT(PED_COMP_HAND) BREAK
|
|
CASE 11 iComp = ENUM_TO_INT(PED_COMP_HEAD) BREAK
|
|
ENDSWITCH
|
|
|
|
bNameHashFound = FALSE
|
|
tlDisplayText1 = ""
|
|
tlDisplayText2 = ""
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), iComp, GET_PED_DRAWABLE_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp)), GET_PED_TEXTURE_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp)))
|
|
IF iDLCNameHash != 0
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
bNameHashFound = GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlDisplayText1)
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(componentItem.m_textLabel)
|
|
IF bNameHashFound
|
|
tlDisplayText2 += tlSplit
|
|
ENDIF
|
|
tlDisplayText2 += "~g~"
|
|
tlDisplayText2 += componentItem.m_textLabel
|
|
IF DOES_TEXT_LABEL_EXIST(componentItem.m_textLabel)
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~r~"
|
|
tlDisplayText2 += GET_STRING_FROM_TEXT_FILE(componentItem.m_textLabel)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
ePedComp = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(pedID, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComp))
|
|
IF ePedComp != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComp), ePedComp)
|
|
|
|
IF (NOT IS_STRING_NULL_OR_EMPTY(g_sTempCompData[1].sLabel)
|
|
AND NOT ARE_STRINGS_EQUAL(g_sTempCompData[1].sLabel, "NO_LABEL"))
|
|
OR iComp = ENUM_TO_INT(PED_COMP_TORSO)
|
|
|
|
tlDisplayText1 = "DISK_"
|
|
tlDisplayText1 += GET_PED_COMP_NAME_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComp))
|
|
tlDisplayText1 += "_"
|
|
tlDisplayText1 += GET_PED_DRAWABLE_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
tlDisplayText1 += "_"
|
|
tlDisplayText1 += GET_PED_TEXTURE_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~g~"
|
|
tlDisplayText2 += g_sTempCompData[1].sLabel
|
|
IF DOES_TEXT_LABEL_EXIST(g_sTempCompData[1].sLabel)
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~r~"
|
|
tlDisplayText2 += GET_STRING_FROM_TEXT_FILE(g_sTempCompData[1].sLabel)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ENDIF
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlDisplayText1)
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(tlDisplayText2)
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0000, 0.360)
|
|
SET_TEXT_COLOUR(255, 165, 0, 255)
|
|
SET_TEXT_WRAP(0.0, 5.0)
|
|
BEGIN_TEXT_COMMAND_GET_SCREEN_WIDTH_OF_DISPLAY_TEXT("TWOSTRINGS")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText1)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText2)
|
|
FLOAT fWidth = END_TEXT_COMMAND_GET_SCREEN_WIDTH_OF_DISPLAY_TEXT(TRUE)
|
|
DRAW_RECT_FROM_CORNER(fScreenX, fScreenY+fYOffset, fWidth, 0.030, 0, 0, 0, 100)
|
|
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0000, 0.360)
|
|
SET_TEXT_COLOUR(255, 165, 0, 255)
|
|
SET_TEXT_WRAP(0.0, 5.0)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("TWOSTRINGS")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText1)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText2)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(fScreenX, fScreenY+fYOffset)
|
|
|
|
fYOffset += 0.030
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// List all crew tattoos that are current.
|
|
TATTOO_DATA_STRUCT sTattooData
|
|
INT iCrewTattoo
|
|
TATTOO_NAME_ENUM eCrewTattoo
|
|
REPEAT 6 iCrewTattoo
|
|
SWITCH iCrewTattoo
|
|
CASE 0 eCrewTattoo = TATTOO_MP_FM_CREW_A tlDisplayText1 = "TATTOO_MP_FM_CREW_A" BREAK
|
|
CASE 1 eCrewTattoo = TATTOO_MP_FM_CREW_B tlDisplayText1 = "TATTOO_MP_FM_CREW_B" BREAK
|
|
CASE 2 eCrewTattoo = TATTOO_MP_FM_CREW_C tlDisplayText1 = "TATTOO_MP_FM_CREW_C" BREAK
|
|
CASE 3 eCrewTattoo = TATTOO_MP_FM_CREW_D tlDisplayText1 = "TATTOO_MP_FM_CREW_D" BREAK
|
|
CASE 4 eCrewTattoo = TATTOO_MP_FM_CREW_E tlDisplayText1 = "TATTOO_MP_FM_CREW_E" BREAK
|
|
CASE 5 eCrewTattoo = TATTOO_MP_FM_CREW_F tlDisplayText1 = "TATTOO_MP_FM_CREW_F" BREAK
|
|
ENDSWITCH
|
|
|
|
IF IS_MP_TATTOO_CURRENT(eCrewTattoo)
|
|
IF GET_TATTOO_DATA(sTattooData, eCrewTattoo, GET_TATTOO_FACTION_FOR_PED(PLAYER_PED_ID()), PLAYER_PED_ID())
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~g~"
|
|
tlDisplayText2 += sTattooData.sLabel
|
|
IF DOES_TEXT_LABEL_EXIST(sTattooData.sLabel)
|
|
tlDisplayText2 += tlSplit
|
|
tlDisplayText2 += "~r~"
|
|
tlDisplayText2 += GET_STRING_FROM_TEXT_FILE(sTattooData.sLabel)
|
|
ENDIF
|
|
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0000, 0.360)
|
|
SET_TEXT_COLOUR(255, 165, 0, 255)
|
|
SET_TEXT_WRAP(0.0, 5.0)
|
|
BEGIN_TEXT_COMMAND_GET_SCREEN_WIDTH_OF_DISPLAY_TEXT("TWOSTRINGS")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText1)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText2)
|
|
FLOAT fWidth = END_TEXT_COMMAND_GET_SCREEN_WIDTH_OF_DISPLAY_TEXT(TRUE)
|
|
DRAW_RECT_FROM_CORNER(fScreenX, fScreenY+fYOffset, fWidth, 0.030, 0, 0, 0, 100)
|
|
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0000, 0.360)
|
|
SET_TEXT_COLOUR(255, 165, 0, 255)
|
|
SET_TEXT_WRAP(0.0, 5.0)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("TWOSTRINGS")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText1)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlDisplayText2)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(fScreenX, fScreenY+fYOffset)
|
|
|
|
fYOffset += 0.030
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
IF bGenerate_ClothingScreenshots
|
|
OR bGenerate_ClothingScreenshotsPrimary
|
|
|
|
INT iComp
|
|
INT iDrawCount, iDraw
|
|
INT iTexCount, iTex
|
|
PED_COMP_NAME_ENUM eItem
|
|
INT iDLCNameHash
|
|
TEXT_LABEL_63 tlNameHash
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
INT iDLCPackHash = -1
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
INT iDLCTatIndex
|
|
TATTOO_NAME_ENUM eTattooLookup
|
|
TATTOO_FACTION_ENUM eFaction
|
|
sTattooShopItemValues sDLCTattooData
|
|
scrPedHeadBlendData playerBlendData
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
|
|
REQUEST_ANIM_DICT("clothingshirt")
|
|
WHILE NOT HAS_ANIM_DICT_LOADED("clothingshirt")
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
g_bValidatePlayersTorsoComponent = FALSE
|
|
BLOCK_PROPERTY_BOUNDS_CHECK_LAUNCH(TRUE)
|
|
DISABLE_CELLPHONE(TRUE)
|
|
HANG_UP_AND_PUT_AWAY_PHONE()
|
|
|
|
SET_INTERIOR_CAPPED(INTERIOR_V_GARAGEL, FALSE)
|
|
SET_INTERIOR_DISABLED(INTERIOR_V_GARAGEL, FALSE)
|
|
|
|
INTERIOR_INSTANCE_INDEX interiorID = GET_INTERIOR_AT_COORDS_WITH_TYPE(<<228.6058, -992.0537, -99.9999>>, "hei_dlc_garage_high_new")
|
|
PIN_INTERIOR_IN_MEMORY(interiorID)
|
|
WHILE NOT IS_INTERIOR_READY(interiorID)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
// Spawn at location, play fixed anims.
|
|
SET_ENTITY_COORDS(PLAYER_PED_ID(), <<234.7408, -995.2711, -99.9999>>)
|
|
SET_ENTITY_HEADING(PLAYER_PED_ID(), 268.9845)
|
|
FORCE_ROOM_FOR_ENTITY(PLAYER_PED_ID(), interiorID, HASH("GtaMloRoom001"))
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
CAMERA_INDEX camClothingFocus = CREATE_CAM("DEFAULT_SCRIPTED_CAMERA", FALSE)
|
|
ATTACH_CAM_TO_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0,0.0,0.0>>)
|
|
POINT_CAM_AT_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0,0.0,0.0>>)
|
|
SET_CAM_ACTIVE(camClothingFocus, TRUE)
|
|
RENDER_SCRIPT_CAMS(TRUE, FALSE)
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
|
|
IF iComp = ENUM_TO_INT(PED_COMP_HEAD)
|
|
RELOOP
|
|
ENDIF
|
|
|
|
WAIT(0)
|
|
|
|
IF iComp = ENUM_TO_INT(PED_COMP_BERD)
|
|
OR iComp = ENUM_TO_INT(PED_COMP_HAIR)
|
|
DETACH_CAM(camPlayerOffset)
|
|
ATTACH_CAM_TO_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.163, -0.448, 0.753>>)
|
|
POINT_CAM_AT_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0, 0.0, 0.655>>)
|
|
ELIF iComp = ENUM_TO_INT(PED_COMP_LEG)
|
|
DETACH_CAM(camPlayerOffset)
|
|
ATTACH_CAM_TO_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.163, -0.96, -0.12>>)
|
|
POINT_CAM_AT_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0, 0.0, -0.42>>)
|
|
ELIF iComp = ENUM_TO_INT(PED_COMP_FEET)
|
|
DETACH_CAM(camPlayerOffset)
|
|
ATTACH_CAM_TO_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.163, -0.96, -0.45>>)
|
|
POINT_CAM_AT_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0, 0.0, -0.87>>)
|
|
ELSE
|
|
DETACH_CAM(camPlayerOffset)
|
|
ATTACH_CAM_TO_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.163, -0.950, 0.545>>)
|
|
POINT_CAM_AT_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0, 0.0, 0.265>>)
|
|
ENDIF
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
IF iComp = ENUM_TO_INT(PED_COMP_BERD)
|
|
GET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), playerBlendData)
|
|
IF (GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01)
|
|
SET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), 0,0,0, playerBlendData.m_tex0, playerBlendData.m_tex1, playerBlendData.m_tex2, 0.0, playerBlendData.m_texBlend, 0.0)
|
|
ELIF (GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_F_FREEMODE_01)
|
|
SET_PED_HEAD_BLEND_DATA(PLAYER_PED_ID(), 21,0,0, playerBlendData.m_tex0, playerBlendData.m_tex1, playerBlendData.m_tex2, 0.0, playerBlendData.m_texBlend, 0.0)
|
|
ENDIF
|
|
MICRO_MORPH_TYPE microMorph
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH microMorph
|
|
SET_PED_MICRO_MORPH(PLAYER_PED_ID(), microMorph, 0.0)
|
|
ENDREPEAT
|
|
ELSE
|
|
RESET_PLAYER_HEAD_BLEND_TO_NORM(PLAYER_PED_ID())
|
|
ENDIF
|
|
|
|
IF iSelectedPedComponent = NUMBER_OF_PED_COMP_TYPES
|
|
OR GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)) = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iSelectedPedComponent)
|
|
|
|
eItem = GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
IF eItem != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)), eItem)
|
|
iDrawCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
CLEAR_PED_DECORATIONS(PLAYER_PED_ID())
|
|
CLEAR_ALL_PED_PROPS(PLAYER_PED_ID())
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(PLAYER_PED_ID())
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_HAIR, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_BERD, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO, 3, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG, 11, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_FEET, 13, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TEETH, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL, 15, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL2, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_DECL, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB, 15, 0)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_HAIR, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_BERD, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO, 8, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG, 13, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_FEET, 12, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TEETH, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL, 2, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL2, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_DECL, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB, 82, 0)
|
|
ENDIF
|
|
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
|
|
IF iDraw >= g_sTempCompData[1].iDrawable
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), ePedModel)) = iDLCPackHash
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDraw)
|
|
|
|
IF bGenerate_ClothingScreenshotsPrimary
|
|
iTexCount = 1
|
|
ENDIF
|
|
|
|
REPEAT iTexCount iTex
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iComp, iDraw, iTex)
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
IF NOT IS_CONTENT_ITEM_LOCKED(componentItem.m_lockHash)
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
tlNameHash = ""
|
|
tlNameHash += iDLCNameHash
|
|
ENDIF
|
|
|
|
SET_PED_PRELOAD_VARIATION_DATA(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
WHILE NOT HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(PLAYER_PED_ID())
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
ENDWHILE
|
|
|
|
|
|
//SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMP_TYPE_ENUM, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))), GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP(ePedModel, iDLCNameHash, INT_TO_ENUM(PED_COMP_TYPE_ENUM, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)))), FALSE)
|
|
//FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, GET_PED_COMP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), COMP_TYPE_JBIB), FALSE)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
WHILE NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(PLAYER_PED_ID())
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
ENDWHILE
|
|
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlNameHash)
|
|
SAVE_SCREENSHOT(tlNameHash)
|
|
ENDIF
|
|
|
|
// OVERLAY ITEMS
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCNameHash)
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_DECL)
|
|
AND iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
|
|
eTattooLookup = GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, eFaction)
|
|
iDLCTatIndex = ENUM_TO_INT(eTattooLookup) - ENUM_TO_INT(TATTOO_MP_FM_DLC)
|
|
|
|
IF iDLCTatIndex >= 0
|
|
AND GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCTatIndex, sDLCTattooData)
|
|
AND iRetNameHash = sDLCTattooData.Preset
|
|
|
|
//Apply overlay.
|
|
CLEAR_PED_DECORATIONS(PLAYER_PED_ID())
|
|
ADD_PED_DECORATION_FROM_HASHES(PLAYER_PED_ID(), sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
//Wait
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
tlNameHash = ""
|
|
tlNameHash += iDLCNameHash
|
|
ENDIF
|
|
tlNameHash += "_overlay"
|
|
tlNameHash += iAltComp
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlNameHash)
|
|
SAVE_SCREENSHOT(tlNameHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
RELEASE_PED_PRELOAD_VARIATION_DATA(PLAYER_PED_ID())
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
DETACH_CAM(camPlayerOffset)
|
|
ATTACH_CAM_TO_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.163, -0.448, 0.753>>)
|
|
POINT_CAM_AT_ENTITY(camClothingFocus, PLAYER_PED_ID(), <<0.0, 0.0, 0.655>>)
|
|
|
|
INT iProp
|
|
REPEAT NUMBER_OF_PED_PROP_TYPES iProp
|
|
|
|
IF iSelectedPedComponent = NUMBER_OF_PED_COMP_TYPES
|
|
OR iSelectedPedComponent = ENUM_TO_INT(COMP_TYPE_PROPS)
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
CLEAR_PED_DECORATIONS(PLAYER_PED_ID())
|
|
CLEAR_ALL_PED_PROPS(PLAYER_PED_ID())
|
|
SET_PED_DEFAULT_COMPONENT_VARIATION(PLAYER_PED_ID())
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_HAIR, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_BERD, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO, 3, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG, 11, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_FEET, 13, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TEETH, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL, 15, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL2, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_DECL, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB, 15, 0)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_HAIR, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_BERD, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO, 8, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG, 13, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_FEET, 12, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TEETH, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL, 2, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL2, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_DECL, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB, 82, 0)
|
|
ENDIF
|
|
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
|
|
IF iDraw >= GET_DEFAULT_DLC_DRAW_FOR_PROP(ePedModel, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), ePedModel)) = iDLCPackHash
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
|
|
IF bGenerate_ClothingScreenshotsPrimary
|
|
iTexCount = 1
|
|
ENDIF
|
|
|
|
REPEAT iTexCount iTex
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iProp, iDraw, iTex)
|
|
GET_SHOP_PED_PROP(iDLCNameHash, propItem)
|
|
IF NOT IS_CONTENT_ITEM_LOCKED(propItem.m_lockHash)
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
tlNameHash = ""
|
|
tlNameHash += iDLCNameHash
|
|
ENDIF
|
|
|
|
SET_PED_PRELOAD_PROP_DATA(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), propItem.m_propIndex, propItem.m_textureIndex)
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
WHILE NOT HAS_PED_PRELOAD_PROP_DATA_FINISHED(PLAYER_PED_ID())
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
ENDWHILE
|
|
|
|
//SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_PROPS, GET_PED_COMP_ITEM_FROM_NAME_HASH_LOOKUP(ePedModel, iDLCNameHash, COMP_TYPE_PROPS), FALSE)
|
|
//FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_PROPS, GET_PROP_ITEM_FROM_VARIATIONS(PLAYER_PED_ID(), iDraw, iTex, INT_TO_ENUM(PED_PROP_POSITION, iProp)), FALSE)
|
|
SET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), propItem.m_propIndex, propItem.m_textureIndex)
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
WHILE NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(PLAYER_PED_ID())
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
ENDWHILE
|
|
|
|
WAIT(0)
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlNameHash)
|
|
SAVE_SCREENSHOT(tlNameHash)
|
|
ENDIF
|
|
|
|
RELEASE_PED_PRELOAD_PROP_DATA(PLAYER_PED_ID())
|
|
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
SET_CAM_ACTIVE(camClothingFocus, FALSE)
|
|
RENDER_SCRIPT_CAMS(FALSE, FALSE)
|
|
DESTROY_CAM(camClothingFocus)
|
|
|
|
REMOVE_ANIM_DICT("clothingshirt")
|
|
CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID())
|
|
FREEZE_ENTITY_POSITION(PLAYER_PED_ID(), FALSE)
|
|
RESET_PLAYER_HEAD_BLEND_TO_NORM(PLAYER_PED_ID())
|
|
|
|
g_bValidatePlayersTorsoComponent = TRUE
|
|
DISABLE_CELLPHONE(FALSE)
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
bGenerate_ClothingScreenshots = FALSE
|
|
bGenerate_ClothingScreenshotsPrimary = FALSE
|
|
ENDIF
|
|
|
|
IF bGenerate_ExclsuiveClothingInfo
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
INT iComp
|
|
//INT iProp
|
|
INT iDrawable, iDrawableCount
|
|
INT iTexture, iTextureCount
|
|
INT iDLCNameHash
|
|
INT iDLCPackHash
|
|
scrShopPedComponent componentItem
|
|
//scrShopPedProp propItem
|
|
TEXT_LABEL_63 tlPack
|
|
BOOL bLockStatus[2]
|
|
|
|
OPEN_DEBUG_FILE()
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_MODEL_NAME_FOR_DEBUG(GET_ENTITY_MODEL(PLAYER_PED_ID())))
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" Pack Type Drawable Texture ContentLock ExclusiveLock")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
FOR iComp = 0 TO NUM_PED_COMPONENTS-1
|
|
iDrawableCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT,iComp))
|
|
REPEAT iDrawableCount iDrawable
|
|
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDrawable)
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(iDLCPackHash, tlPack, FALSE)
|
|
tlPack = "NA"
|
|
ENDIF
|
|
|
|
iTextureCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDrawable)
|
|
REPEAT iTextureCount iTexture
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iComp, iDrawable, iTexture)
|
|
IF iDLCNameHash != 0
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
|
|
bLockStatus[0] = IS_CONTENT_ITEM_LOCKED(componentItem.m_lockHash)
|
|
bLockStatus[1] = IS_PED_DRAWABLE_GEN9_EXCLUSIVE(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDrawable)
|
|
|
|
IF bLockStatus[0]
|
|
OR bLockStatus[1]
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(tlPack)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(GET_COMP_VARIATION_TYPE_STRING((INT_TO_ENUM(PED_COMPONENT, iComp))))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_INT_TO_DEBUG_FILE(iDrawable)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_INT_TO_DEBUG_FILE(iTexture)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_BOOL_TO_DEBUG_FILE(bLockStatus[0])
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_BOOL_TO_DEBUG_FILE(bLockStatus[1])
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
ENDFOR
|
|
|
|
/*SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" Pack Type Drawable Texture ContentLock ExclusiveLock")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
FOR iProp = 0 TO NUM_PED_PROPS-1
|
|
iDrawableCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION,iProp))
|
|
REPEAT iDrawableCount iDrawable
|
|
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_CPROP(PLAYER_PED_ID(), iProp, iDrawable)
|
|
IF NOT GET_DLC_PACK_NAME_FROM_HASH(iDLCPackHash, tlPack, FALSE)
|
|
tlPack = "NA"
|
|
ENDIF
|
|
|
|
iTextureCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDrawable)
|
|
REPEAT iTextureCount iTexture
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iProp, iDrawble, iTexture)
|
|
IF iDLCNameHash != 0
|
|
GET_SHOP_PED_PROP(iDLCNameHash, propItem)
|
|
|
|
bLockStatus[0] = IS_CONTENT_ITEM_LOCKED(propItem.m_lockHash)
|
|
bLockStatus[1] = IS_PED_PROP_GEN9_EXCLUSIVE(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDrawable)
|
|
|
|
IF bLockStatus[0]
|
|
OR bLockStatus[1]
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(tlPack)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING((INT_TO_ENUM(PED_PROP_POSITION, iProp))))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_INT_TO_DEBUG_FILE(iDrawable)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_INT_TO_DEBUG_FILE(iTexture)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_BOOL_TO_DEBUG_FILE(bLockStatus[0])
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")SAVE_BOOL_TO_DEBUG_FILE(bLockStatus[1])
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDREPEAT
|
|
ENDFOR*/
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
ENDIF
|
|
bGenerate_ExclsuiveClothingInfo = FALSE
|
|
ENDIF
|
|
|
|
IF bGenerate_ClothingInfo
|
|
INT iComp
|
|
INT iDrawCount, iDraw
|
|
INT iTexCount, iTex
|
|
PED_COMP_NAME_ENUM eItem
|
|
INT iDLCNameHash
|
|
TEXT_LABEL_63 tlNameHash, tlVariantNameHash
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
INT iDLCPackHash = -1
|
|
INT iLocalDrawOffset
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
TEXT_LABEL_15 tlMenuLabel
|
|
CLOTHES_MENU_ENUM eMenu, eMenuOverride
|
|
INT iSubMenu
|
|
INT iDLCTatIndex
|
|
TATTOO_NAME_ENUM eTattooLookup
|
|
TATTOO_FACTION_ENUM eFaction
|
|
sTattooShopItemValues sDLCTattooData
|
|
TEXT_LABEL_63 tlPackName
|
|
INT iOverlayCount
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eFaction = TATTOO_MP_FM_F
|
|
ENDIF
|
|
|
|
REQUEST_ADDITIONAL_TEXT("CLO_MNU", MENU_TEXT_SLOT)
|
|
WHILE NOT HAS_THIS_ADDITIONAL_TEXT_LOADED("CLO_MNU", MENU_TEXT_SLOT)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
OPEN_DEBUG_FILE()
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("COMPONENT DLC_PACK DLC_KEY DLC_LOCK GLOBAL_ID LOCAL_ID TEXTURE_ID ENUM SHOP_MENU TEXT_LABEL NAME AWARD_ITEM OVERLAY_ITEM OVERLAY_COUNT VARIANT_1 VARIANT_2 VARIANT_3 VARIANT_4 VARIANT_5 VARIANT_6")
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
|
|
IF iComp = ENUM_TO_INT(PED_COMP_HEAD)
|
|
RELOOP
|
|
ENDIF
|
|
|
|
IF iSelectedPedComponent = NUMBER_OF_PED_COMP_TYPES
|
|
OR GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)) = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iSelectedPedComponent)
|
|
|
|
eItem = GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
IF eItem != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)), eItem)
|
|
iDrawCount = GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
iDLCPackHash = -1
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw) != iDLCPackHash
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_COMPONENT(PLAYER_PED_ID(), iComp, iDraw)
|
|
iLocalDrawOffset = iDraw
|
|
ENDIF
|
|
|
|
IF iDraw >= g_sTempCompData[1].iDrawable
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), ePedModel)) = iDLCPackHash
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, iComp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), iComp, iDraw, iTex)
|
|
GET_SHOP_PED_COMPONENT(iDLCNameHash, componentItem)
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
tlNameHash = ""
|
|
tlNameHash += iDLCNameHash
|
|
ENDIF
|
|
|
|
// COMPONENT
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_PACK
|
|
IF GET_DLC_PACK_NAME_FROM_HASH(iDLCPackHash, tlPackName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlPackName)
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(iDLCPackHash)
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_KEY
|
|
//SAVE_STRING_TO_DEBUG_FILE("=HYPERLINK(\"X:\\gta5\\titleupdate\\dev_ng\\")
|
|
SAVE_STRING_TO_DEBUG_FILE("=HYPERLINK(\"Screenshots\\")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(".png\", \"")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE("\")")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_LOCK
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_DLC_CONTENT_LOCK_NAME_FROM_HASH(componentItem.m_lockHash))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// GLOBAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// LOCAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw-iLocalDrawOffset)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// TEXTURE_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// ENUM
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iDLCNameHash, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)), 3)))
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iDLCNameHash, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp)), 4)))
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// SHOP_MENU
|
|
IF componentItem.m_locate = 0
|
|
eMenu = CLO_MENU_MASKS
|
|
ELSE
|
|
eMenu = INT_TO_ENUM(CLOTHES_MENU_ENUM, componentItem.m_locate)
|
|
ENDIF
|
|
tlMenuLabel = GET_CLOTHES_MENU_NAME(eMenu, FALSE)
|
|
|
|
IF DOES_TEXT_LABEL_EXIST(tlMenuLabel)
|
|
|
|
IF eMenu = CLO_MENU_MASKS
|
|
AND GET_MASK_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_MASK_TYPE_INVALID
|
|
iSubMenu = GET_MASK_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_EARRINGS
|
|
AND GET_EARRING_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_EARRING_TYPE_INVALID
|
|
iSubMenu = GET_EARRING_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_AWARD_SHIRTS
|
|
AND GET_AWARDS_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_AWARD_TYPE_INVALID
|
|
iSubMenu = GET_AWARDS_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_XMAS_TOPS
|
|
AND GET_FESTIVE_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_FESTIVE_TYPE_INVALID
|
|
iSubMenu = GET_FESTIVE_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_ARENA_WAR_TOPS
|
|
AND GET_ARENA_WAR_TOP_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_ARENA_WAR_TOP_TYPE_INVALID
|
|
iSubMenu = GET_ARENA_WAR_TOP_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ENDIF
|
|
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eMenu))
|
|
SAVE_STRING_TO_DEBUG_FILE(" - ")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(tlMenuLabel))
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eMenu))
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
IF DOES_TEXT_LABEL_EXIST(componentItem.m_textLabel)
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(componentItem.m_textLabel)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(componentItem.m_textLabel))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELIF NOT IS_STRING_NULL_OR_EMPTY(componentItem.m_textLabel)
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(componentItem.m_textLabel)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ENDIF
|
|
|
|
// AWARD_ITEM
|
|
IF GIVE_DLC_CLOTHING_ITEM_FOR_FREE(iDLCNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE("TRUE")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("FALSE")
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
// OVERLAY_ITEM
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
SAVE_STRING_TO_DEBUG_FILE("TRUE")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("FALSE")
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
// OVERLAY_COUNT
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCNameHash)
|
|
iOverlayCount = 0
|
|
REPEAT iAltComps iAltComp
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_DECL)
|
|
iOverlayCount++
|
|
ENDIF
|
|
ENDREPEAT
|
|
SAVE_INT_TO_DEBUG_FILE(iOverlayCount)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
// VARIANTS
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCNameHash)
|
|
REPEAT iAltComps iAltComp
|
|
|
|
IF (iAltComp % 50) = 0
|
|
WAIT(0)
|
|
ENDIF
|
|
|
|
GET_VARIANT_COMPONENT(iDLCNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType != ENUM_TO_INT(PED_COMP_SPECIAL2)
|
|
AND iRetType != ENUM_TO_INT(PED_COMP_DECL)
|
|
IF iRetNameHash != 0 AND iRetNameHash != -1
|
|
IF GET_DLC_NAME_HASH_STRING(iRetNameHash, tlVariantNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlVariantNameHash)
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(iRetNameHash)
|
|
ENDIF
|
|
ELSE
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iRetType)), INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum))
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iRetType))))
|
|
SAVE_STRING_TO_DEBUG_FILE("_")
|
|
SAVE_INT_TO_DEBUG_FILE(g_sTempCompData[1].iDrawable)
|
|
SAVE_STRING_TO_DEBUG_FILE("_")
|
|
SAVE_INT_TO_DEBUG_FILE(g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
// OVERLAY ITEMS
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCNameHash)
|
|
REPEAT iAltComps iAltComp
|
|
|
|
IF (iAltComp % 50) = 0
|
|
WAIT(0)
|
|
ENDIF
|
|
|
|
GET_VARIANT_COMPONENT(iDLCNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_DECL)
|
|
AND iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
|
|
// COMPONENT
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iComp))))
|
|
SAVE_STRING_TO_DEBUG_FILE("-OVERLAY")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_PACK
|
|
IF GET_DLC_PACK_NAME_FROM_HASH(sDLCTattooData.Collection, tlPackName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlPackName)
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(sDLCTattooData.Collection)
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_KEY
|
|
SAVE_STRING_TO_DEBUG_FILE("=HYPERLINK(\"Screenshots\\")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE("_overlay")
|
|
SAVE_INT_TO_DEBUG_FILE(iAltComp)
|
|
SAVE_STRING_TO_DEBUG_FILE(".png\", \"")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE("\")")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
eTattooLookup = GET_TATTOO_ENUM_FROM_DLC_HASH(iRetNameHash, eFaction)
|
|
iDLCTatIndex = ENUM_TO_INT(eTattooLookup) - ENUM_TO_INT(TATTOO_MP_FM_DLC)
|
|
|
|
IF iDLCTatIndex >= 0
|
|
AND GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCTatIndex, sDLCTattooData)
|
|
AND iRetNameHash = sDLCTattooData.Preset
|
|
|
|
// DLC_LOCK
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_DLC_CONTENT_LOCK_NAME_FROM_HASH(sDLCTattooData.m_lockHash))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// GLOBAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iDLCTatIndex)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// LOCAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(sDLCTattooData.Preset)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// TEXTURE_ID
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// ENUM
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// SHOP_MENU
|
|
IF componentItem.m_locate = 0
|
|
eMenu = CLO_MENU_MASKS
|
|
ELSE
|
|
eMenu = INT_TO_ENUM(CLOTHES_MENU_ENUM, componentItem.m_locate)
|
|
ENDIF
|
|
IF GET_MENU_OVERRIDE_FOR_MULTI_DECAL_ITEM(iDLCNameHash, sDLCTattooData.Collection, sDLCTattooData.Preset, eMenuOverride)
|
|
eMenu = eMenuOverride
|
|
ENDIF
|
|
tlMenuLabel = GET_CLOTHES_MENU_NAME(eMenu, FALSE)
|
|
IF DOES_TEXT_LABEL_EXIST(tlMenuLabel)
|
|
|
|
IF eMenu = CLO_MENU_MASKS
|
|
AND GET_MASK_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_MASK_TYPE_INVALID
|
|
iSubMenu = GET_MASK_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_EARRINGS
|
|
AND GET_EARRING_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_EARRING_TYPE_INVALID
|
|
iSubMenu = GET_EARRING_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_AWARD_SHIRTS
|
|
AND GET_AWARDS_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_AWARD_TYPE_INVALID
|
|
iSubMenu = GET_AWARDS_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_XMAS_TOPS
|
|
AND GET_FESTIVE_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_FESTIVE_TYPE_INVALID
|
|
iSubMenu = GET_FESTIVE_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_MP_ARENA_WAR_TOPS
|
|
AND GET_ARENA_WAR_TOP_MENU_FROM_LABEL(componentItem.m_textLabel) != iSHOP_ARENA_WAR_TOP_TYPE_INVALID
|
|
iSubMenu = GET_ARENA_WAR_TOP_MENU_FROM_LABEL(componentItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ENDIF
|
|
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eMenu))
|
|
SAVE_STRING_TO_DEBUG_FILE(" - ")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(tlMenuLabel))
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eMenu))
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
IF DOES_TEXT_LABEL_EXIST(sDLCTattooData.Label)
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(sDLCTattooData.Label)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(sDLCTattooData.Label))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELIF NOT IS_STRING_NULL_OR_EMPTY(sDLCTattooData.Label)
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(sDLCTattooData.Label)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ENDIF
|
|
|
|
// AWARD_ITEM
|
|
IF GIVE_DLC_CLOTHING_ITEM_FOR_FREE(DEFAULT, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
SAVE_STRING_TO_DEBUG_FILE("TRUE")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("FALSE")
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
// OVERLAY_ITEM
|
|
SAVE_STRING_TO_DEBUG_FILE("TRUE")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// OVERLAY_COUNT
|
|
SAVE_INT_TO_DEBUG_FILE(0)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELSE
|
|
// DLC_LOCK
|
|
SAVE_STRING_TO_DEBUG_FILE("")
|
|
// GLOBAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(0)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// LOCAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iRetNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// TEXTURE_ID
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// ENUM
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// SHOP_MENU
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// AWARD_ITEM
|
|
SAVE_STRING_TO_DEBUG_FILE("FALSE")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// OVERLAY_ITEM
|
|
SAVE_STRING_TO_DEBUG_FILE("TRUE")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// OVERLAY_COUNT
|
|
SAVE_INT_TO_DEBUG_FILE(0)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ENDIF
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
WAIT(0)
|
|
ENDREPEAT
|
|
|
|
WAIT(0)
|
|
|
|
INT iProp
|
|
REPEAT NUMBER_OF_PED_PROP_TYPES iProp
|
|
|
|
IF iSelectedPedComponent = NUMBER_OF_PED_COMP_TYPES
|
|
OR iSelectedPedComponent = ENUM_TO_INT(COMP_TYPE_PROPS)
|
|
|
|
iDrawCount = GET_NUMBER_OF_PED_PROP_DRAWABLE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
iDLCPackHash = -1
|
|
|
|
REPEAT iDrawCount iDraw
|
|
|
|
IF GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw) != iDLCPackHash
|
|
iDLCPackHash = GET_DLC_PACK_HASH_FOR_PROP(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
iLocalDrawOffset = iDraw
|
|
ENDIF
|
|
|
|
IF iDraw >= GET_DEFAULT_DLC_DRAW_FOR_PROP(ePedModel, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
|
|
IF iSelectedDLCPack >= ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
OR GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iSelectedDLCPack), ePedModel)) = iDLCPackHash
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, iProp), iDraw)
|
|
REPEAT iTexCount iTex
|
|
iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), iProp, iDraw, iTex)
|
|
GET_SHOP_PED_PROP(iDLCNameHash, propItem)
|
|
IF NOT GET_DLC_NAME_HASH_STRING(iDLCNameHash, tlNameHash)
|
|
tlNameHash = ""
|
|
tlNameHash += iDLCNameHash
|
|
ENDIF
|
|
|
|
// COMPONENT
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, iProp)))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_PACK
|
|
IF GET_DLC_PACK_NAME_FROM_HASH(iDLCPackHash, tlPackName)
|
|
SAVE_STRING_TO_DEBUG_FILE(tlPackName)
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(iDLCPackHash)
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_KEY
|
|
SAVE_STRING_TO_DEBUG_FILE("=HYPERLINK(\"Screenshots\\")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE(".png\", \"")
|
|
SAVE_STRING_TO_DEBUG_FILE(tlNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE("\")")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// DLC_LOCK
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_DLC_CONTENT_LOCK_NAME_FROM_HASH(propItem.m_lockHash))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// GLOBAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// LOCAL_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iDraw-iLocalDrawOffset)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// TEXTURE_ID
|
|
SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// ENUM
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iDLCNameHash, COMP_TYPE_PROPS, 3)))
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iDLCNameHash, COMP_TYPE_PROPS, 4)))
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// SHOP_MENU
|
|
IF propItem.m_locate = 0
|
|
eMenu = CLO_MENU_MASKS
|
|
ELSE
|
|
eMenu = INT_TO_ENUM(CLOTHES_MENU_ENUM, propItem.m_locate)
|
|
ENDIF
|
|
tlMenuLabel = GET_CLOTHES_MENU_NAME(eMenu, FALSE)
|
|
IF DOES_TEXT_LABEL_EXIST(tlMenuLabel)
|
|
|
|
IF eMenu = CLO_MENU_MASKS
|
|
AND GET_MASK_MENU_FROM_LABEL(propItem.m_textLabel) != iSHOP_MASK_TYPE_INVALID
|
|
iSubMenu = GET_MASK_MENU_FROM_LABEL(propItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
|
|
ELIF eMenu = CLO_MENU_EARRINGS
|
|
AND GET_EARRING_MENU_FROM_LABEL(propItem.m_textLabel) != iSHOP_EARRING_TYPE_INVALID
|
|
iSubMenu = GET_EARRING_MENU_FROM_LABEL(propItem.m_textLabel)
|
|
GET_SHOP_SUB_GROUP_LABEL(eMenu, iSubMenu, tlMenuLabel)
|
|
ENDIF
|
|
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eMenu))
|
|
SAVE_STRING_TO_DEBUG_FILE(" - ")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(tlMenuLabel))
|
|
ELSE
|
|
SAVE_INT_TO_DEBUG_FILE(ENUM_TO_INT(eMenu))
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
IF DOES_TEXT_LABEL_EXIST(propItem.m_textLabel)
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(propItem.m_textLabel)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_STRING_FROM_TEXT_FILE(propItem.m_textLabel))
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELIF NOT IS_STRING_NULL_OR_EMPTY(propItem.m_textLabel)
|
|
// TEXT_LABEL
|
|
SAVE_STRING_TO_DEBUG_FILE(propItem.m_textLabel)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
// NAME
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
ENDIF
|
|
|
|
// AWARD
|
|
IF GIVE_DLC_CLOTHING_ITEM_FOR_FREE(iDLCNameHash)
|
|
SAVE_STRING_TO_DEBUG_FILE("TRUE")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("FALSE")
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
// OVERLAYS
|
|
SAVE_STRING_TO_DEBUG_FILE("FALSE")
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
// OVERLAY_COUNT
|
|
SAVE_INT_TO_DEBUG_FILE(0)
|
|
SAVE_STRING_TO_DEBUG_FILE(" ")
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
WAIT(0)
|
|
ENDREPEAT
|
|
|
|
CLOSE_DEBUG_FILE()
|
|
|
|
CLEAR_ADDITIONAL_TEXT(MENU_TEXT_SLOT, FALSE)
|
|
|
|
bGenerate_ClothingInfo = FALSE
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
PED_INDEX tempPedID[5]
|
|
CAMERA_INDEX tempCameraID
|
|
MODEL_NAMES returnPedModel
|
|
INTERIOR_INSTANCE_INDEX tempInteriorID
|
|
TEXT_LABEL_63 tlPackName
|
|
TEXT_LABEL_63 tlModelName
|
|
TIME_DATATYPE tdTimer
|
|
INT iTimer
|
|
|
|
PROC PROCESS_PED_RENDERS()
|
|
|
|
IF bGenerate_PedRenders
|
|
|
|
IF NOT bRunning_PedRenders
|
|
|
|
IF NOT IS_PLAYER_CONTROL_ON(PLAYER_ID())
|
|
OR IS_PLAYER_SWITCH_IN_PROGRESS()
|
|
OR IS_NEW_LOAD_SCENE_ACTIVE()
|
|
OR (NETWORK_IS_GAME_IN_PROGRESS() AND NOT IS_NET_PLAYER_OK(PLAYER_ID()))
|
|
EXIT
|
|
ENDIF
|
|
|
|
SET_PLAYER_CONTROL(PLAYER_ID(), FALSE)
|
|
|
|
g_bReducedApartmentCreationTurnedOn = TRUE
|
|
BLOCK_PROPERTY_BOUNDS_CHECK_LAUNCH(TRUE)
|
|
DISABLE_CELLPHONE(TRUE)
|
|
HANG_UP_AND_PUT_AWAY_PHONE()
|
|
|
|
SET_INTERIOR_CAPPED(INTERIOR_V_GARAGEL, FALSE)
|
|
SET_INTERIOR_DISABLED(INTERIOR_V_GARAGEL, FALSE)
|
|
|
|
EXECUTE_CONTENT_CHANGESET_GROUP(HASH("mpHeist"), HASH("GROUP_MAP"))
|
|
|
|
WHILE BUSYSPINNER_IS_ON()
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
WAIT(0)
|
|
|
|
tempInteriorID = GET_INTERIOR_AT_COORDS_WITH_TYPE(<<228.6058, -992.0537, -99.9999>>, "hei_dlc_garage_high_new")
|
|
PIN_INTERIOR_IN_MEMORY(tempInteriorID)
|
|
WHILE NOT IS_INTERIOR_READY(tempInteriorID) AND bGenerate_PedRenders
|
|
WAIT(0)
|
|
ENDWHILE
|
|
CLEAR_AREA(<<234.7408, -995.2711, -99.9999>>, 100.0, TRUE)
|
|
SET_ENTITY_COORDS(PLAYER_PED_ID(), <<234.7408, -995.2711, -99.9999>>)
|
|
SET_ENTITY_VISIBLE(PLAYER_PED_ID(), FALSE)
|
|
FORCE_ROOM_FOR_ENTITY(PLAYER_PED_ID(), tempInteriorID, HASH("GtaMloRoom001"))
|
|
|
|
WAIT(0)
|
|
|
|
IF NOT LOAD_XML_FILE("X:/gta5/titleupdate/dev_ng/common/data/script/xml/PedRenders/ped_pack_list.xml")
|
|
OR GET_NUMBER_OF_XML_NODES() = 0
|
|
DELETE_XML_FILE()
|
|
bGenerate_PedRenders = FALSE
|
|
ELSE
|
|
iTotalPedRenders = GET_NUMBER_OF_XML_NODES()
|
|
iCurrentPedRender = 0
|
|
iCurrentPedRenderState = 0
|
|
bRunning_PedRenders = TRUE
|
|
ENDIF
|
|
ELSE
|
|
HIDE_HUD_AND_RADAR_THIS_FRAME()
|
|
HIDE_HELP_TEXT_THIS_FRAME()
|
|
THEFEED_HIDE_THIS_FRAME()
|
|
IF (iCurrentPedRenderState = 0)
|
|
|
|
INT iNumAttributes
|
|
INT iAttribute
|
|
INT iAttributeHash
|
|
|
|
IF iCurrentPedRender < iTotalPedRenders
|
|
SWITCH GET_HASH_KEY(GET_XML_NODE_NAME())
|
|
CASE HASH("pedItem")
|
|
iNumAttributes = GET_NUMBER_OF_XML_NODE_ATTRIBUTES()
|
|
REPEAT iNumAttributes iAttribute
|
|
iAttributeHash = GET_HASH_KEY(GET_XML_NODE_ATTRIBUTE_NAME(iAttribute))
|
|
SWITCH iAttributeHash
|
|
CASE HASH("model")
|
|
tlModelName = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute)
|
|
returnPedModel = INT_TO_ENUM(MODEL_NAMES, GET_HASH_KEY(tlModelName))
|
|
BREAK
|
|
CASE HASH("mpPack")
|
|
tlPackName = GET_STRING_FROM_XML_NODE_ATTRIBUTE(iAttribute)
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDREPEAT
|
|
BREAK
|
|
ENDSWITCH
|
|
iCurrentPedRenderState++
|
|
ELSE
|
|
bGenerate_PedRenders = FALSE
|
|
ENDIF
|
|
ELIF (iCurrentPedRenderState = 1)
|
|
IF ENUM_TO_INT(returnPedModel) = 0
|
|
OR NOT IS_MODEL_VALID(returnPedModel)
|
|
PRINTLN("[PED_RENDER] Model is not valid (", returnPedModel, ") ", tlModelName)
|
|
iCurrentPedRenderState = -1
|
|
ELIF iPedRenderDLCPack < ENUM_TO_INT(DLC_PACK_MP_MAX)
|
|
AND GET_HASH_KEY(GET_SHOP_PED_APPAREL_DLC_NAME(INT_TO_ENUM(DLC_PACK_ENUM, iPedRenderDLCPack), returnPedModel)) != GET_HASH_KEY(tlPackName)
|
|
PRINTLN("[PED_RENDER] Model not in selected pack (", returnPedModel, ") ", tlModelName)
|
|
iCurrentPedRenderState = -1
|
|
ELSE
|
|
PRINTLN("[PED_RENDER] Loading model (", returnPedModel, ") ", tlModelName)
|
|
REQUEST_MODEL(returnPedModel)
|
|
IF HAS_MODEL_LOADED(returnPedModel)
|
|
INT iPed
|
|
VECTOR vCoords = <<234.7406, -995.2711, -98.9950>>
|
|
BOOL bLeftSpawn
|
|
REPEAT COUNT_OF(tempPedID) iPed
|
|
IF bLeftSpawn
|
|
vCoords = GET_OFFSET_FROM_COORD_AND_HEADING_IN_WORLD_COORDS(vCoords, 90.0, <<0.8*iPed, 0.0, 0.0>>)
|
|
ELSE
|
|
vCoords = GET_OFFSET_FROM_COORD_AND_HEADING_IN_WORLD_COORDS(vCoords, 90.0, <<-0.8*iPed, 0.0, 0.0>>)
|
|
ENDIF
|
|
bLeftSpawn = !bLeftSpawn
|
|
tempPedID[iPed] = CREATE_PED(PEDTYPE_CIVMALE, returnPedModel, vCoords, 90.0, FALSE, FALSE)
|
|
SET_ENTITY_COORDS_NO_OFFSET(tempPedID[iPed], vCoords)
|
|
//SET_ENTITY_COLLISION(tempPedID[iPed], FALSE)
|
|
FORCE_ROOM_FOR_ENTITY(tempPedID[iPed], tempInteriorID, HASH("GtaMloRoom001"))
|
|
|
|
IF iPed != 0
|
|
SET_PED_RANDOM_COMPONENT_VARIATION(tempPedID[iPed])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
SET_MODEL_AS_NO_LONGER_NEEDED(returnPedModel)
|
|
|
|
iTimer = GET_GAME_TIMER()
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
tdTimer = GET_NETWORK_TIME()
|
|
ENDIF
|
|
|
|
tempCameraID = CREATE_CAM("DEFAULT_SCRIPTED_CAMERA", FALSE)
|
|
SET_CAM_FOV(tempCameraID, 21.2161)
|
|
SET_CAM_COORD(tempCameraID, <<228.7997, -995.3265, -97.7907>>)
|
|
SET_CAM_ROT(tempCameraID, <<-12.8226, -0.0000, -89.1094>>)
|
|
SET_CAM_ACTIVE(tempCameraID, TRUE)
|
|
RENDER_SCRIPT_CAMS(TRUE, FALSE)
|
|
iCurrentPedRenderState++
|
|
ENDIF
|
|
ENDIF
|
|
ELIF (iCurrentPedRenderState = 2)
|
|
|
|
INT iR, iG, iB, iA
|
|
GET_HUD_COLOUR(HUD_COLOUR_RED, iR, iG, iB, iA)
|
|
SET_TEXT_FONT(FONT_STANDARD)
|
|
SET_TEXT_SCALE(0.0, 0.6)
|
|
SET_TEXT_LEADING(2)
|
|
SET_TEXT_COLOUR(iR, iG, iB, iA)
|
|
SET_TEXT_CENTRE(FALSE)
|
|
SET_TEXT_DROPSHADOW(0, 0, 0, 0, 0)
|
|
SET_TEXT_EDGE(0, 0, 0, 0, 0)
|
|
BEGIN_TEXT_COMMAND_DISPLAY_TEXT("TWOSTRINGSNL")
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlPackName)
|
|
ADD_TEXT_COMPONENT_SUBSTRING_LITERAL_STRING(tlModelName)
|
|
END_TEXT_COMMAND_DISPLAY_TEXT(0.05, 0.9)
|
|
|
|
IF (NETWORK_IS_GAME_IN_PROGRESS() AND ABSI(GET_TIME_DIFFERENCE(GET_NETWORK_TIME(), tdTimer)) > 200)
|
|
OR (NOT NETWORK_IS_GAME_IN_PROGRESS() AND ABSI(GET_GAME_TIMER()-iTimer) > 200)
|
|
|
|
INT iPed
|
|
BOOL bStreamingComplete = TRUE
|
|
REPEAT COUNT_OF(tempPedID) iPed
|
|
IF NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(tempPedID[iPed])
|
|
bStreamingComplete = FALSE
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF bStreamingComplete
|
|
TEXT_LABEL_63 tlScreenshot = "Renders/"
|
|
tlScreenshot += tlPackName
|
|
tlScreenshot += "_"
|
|
tlScreenshot += tlModelName
|
|
SAVE_SCREENSHOT(tlScreenshot)
|
|
iCurrentPedRenderState++
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
DESTROY_CAM(tempCameraID)
|
|
INT iPed
|
|
REPEAT COUNT_OF(tempPedID) iPed
|
|
IF DOES_ENTITY_EXIST(tempPedID[iPed])
|
|
DELETE_PED(tempPedID[iPed])
|
|
ENDIF
|
|
ENDREPEAT
|
|
iCurrentPedRenderState = 0
|
|
|
|
iCurrentPedRender++
|
|
IF iCurrentPedRender < iTotalPedRenders
|
|
GET_NEXT_XML_NODE()
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF bRunning_PedRenders
|
|
|
|
IF DOES_CAM_EXIST(tempCameraID)
|
|
DESTROY_CAM(tempCameraID)
|
|
ENDIF
|
|
INT iPed
|
|
REPEAT COUNT_OF(tempPedID) iPed
|
|
IF DOES_ENTITY_EXIST(tempPedID[iPed])
|
|
DELETE_PED(tempPedID[iPed])
|
|
ENDIF
|
|
ENDREPEAT
|
|
RENDER_SCRIPT_CAMS(FALSE, FALSE)
|
|
DISABLE_CELLPHONE(FALSE)
|
|
SET_PLAYER_CONTROL(PLAYER_ID(), TRUE)
|
|
SET_ENTITY_VISIBLE(PLAYER_PED_ID(), TRUE)
|
|
|
|
DELETE_XML_FILE()
|
|
|
|
iCurrentPedRender = 0
|
|
iCurrentPedRenderState = 0
|
|
bRunning_PedRenders = FALSE
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC DO_PROCESSING()
|
|
|
|
PROCESS_CLOTHING_SELECT_MENU()
|
|
|
|
PROCESS_CLOTHING_DEBUG_OUTPUT()
|
|
|
|
PROCESS_PED_RENDERS()
|
|
|
|
IF bUseOffsetCam
|
|
IF NOT DOES_CAM_EXIST(camPlayerOffset)
|
|
camPlayerOffset = CREATE_CAM("DEFAULT_SCRIPTED_CAMERA", FALSE)
|
|
ATTACH_CAM_TO_ENTITY(camPlayerOffset, PLAYER_PED_ID(), vCamOffsetPos)
|
|
POINT_CAM_AT_ENTITY(camPlayerOffset, PLAYER_PED_ID(), vCamOffsetPoint)
|
|
SET_CAM_ACTIVE(camPlayerOffset, TRUE)
|
|
RENDER_SCRIPT_CAMS(TRUE, FALSE)
|
|
ELSE
|
|
|
|
IF bSetOffsetCamPreset[0]
|
|
vCamOffsetPos = <<-0.163, 0.448, 0.753>>
|
|
vCamOffsetPoint = <<0.0, 0.0, 0.6>>
|
|
bSetOffsetCamPreset[0] = FALSE
|
|
ENDIF
|
|
IF bSetOffsetCamPreset[1]
|
|
vCamOffsetPos = <<0.163, -0.448, 0.753>>
|
|
vCamOffsetPoint = <<0.0, 0.0, 0.6>>
|
|
bSetOffsetCamPreset[1] = FALSE
|
|
ENDIF
|
|
|
|
IF bSetOffsetCamPreset[2]
|
|
vCamOffsetPos = <<0.163, -0.950, 0.545>>
|
|
vCamOffsetPoint = <<0.0, 0.0, 0.265>>
|
|
bSetOffsetCamPreset[2] = FALSE
|
|
ENDIF
|
|
IF bSetOffsetCamPreset[3]
|
|
vCamOffsetPos = <<-0.163, 0.950, 0.545>>
|
|
vCamOffsetPoint = <<0.0, 0.0, 0.265>>
|
|
bSetOffsetCamPreset[3] = FALSE
|
|
ENDIF
|
|
|
|
IF bSetOffsetCamPreset[4]
|
|
vCamOffsetPos = <<-0.163, 0.96, -0.12>>
|
|
vCamOffsetPoint = <<0.0, 0.0, -0.42>>
|
|
bSetOffsetCamPreset[4] = FALSE
|
|
ENDIF
|
|
IF bSetOffsetCamPreset[5]
|
|
vCamOffsetPos = <<0.163, -0.96, -0.12>>
|
|
vCamOffsetPoint = <<0.0, 0.0, -0.42>>
|
|
bSetOffsetCamPreset[5] = FALSE
|
|
ENDIF
|
|
|
|
IF bSetOffsetCamPreset[6]
|
|
vCamOffsetPos = <<-0.163, 0.96, -0.45>>
|
|
vCamOffsetPoint = <<0.0, 0.0, -0.87>>
|
|
bSetOffsetCamPreset[6] = FALSE
|
|
ENDIF
|
|
IF bSetOffsetCamPreset[7]
|
|
vCamOffsetPos = <<0.163, -0.96, -0.45>>
|
|
vCamOffsetPoint = <<0.0, 0.0, -0.87>>
|
|
bSetOffsetCamPreset[7] = FALSE
|
|
ENDIF
|
|
|
|
DETACH_CAM(camPlayerOffset)
|
|
ATTACH_CAM_TO_ENTITY(camPlayerOffset, PLAYER_PED_ID(), vCamOffsetPos)
|
|
POINT_CAM_AT_ENTITY(camPlayerOffset, PLAYER_PED_ID(), vCamOffsetPoint)
|
|
ENDIF
|
|
ELSE
|
|
IF DOES_CAM_EXIST(camPlayerOffset)
|
|
DESTROY_CAM(camPlayerOffset)
|
|
RENDER_SCRIPT_CAMS(FALSE, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF bKillScript
|
|
TERMINATE_THIS_THREAD()
|
|
ENDIF
|
|
|
|
IF b_Apply_Freemode_outfit
|
|
SET_PLAYER_CLOTHES_FOR_RETURN_TO_FREEMODE()
|
|
b_Apply_Freemode_outfit = FALSE
|
|
ENDIF
|
|
|
|
IF b_debug_output_ped_save_data
|
|
OUTPUT_PED_DEBUG_OUTPUT()
|
|
ENDIF
|
|
|
|
INT iPedSave
|
|
REPEAT COUNT_OF(b_debug_ped_save) iPedSave
|
|
IF b_debug_ped_save[iPedSave]
|
|
PROCESS_PED_SAVE_DEBUG(iPedSave)
|
|
ELIF b_debug_ped_set[iPedSave]
|
|
IF NOT IS_BIT_SET(i_debug_process_ped_set, iPedSave)
|
|
IF PROCESS_PED_LOAD_DEBUG(iPedSave)
|
|
SET_BIT(i_debug_process_ped_set, iPedSave)
|
|
ELSE
|
|
b_debug_ped_set[iPedSave] = FALSE
|
|
ENDIF
|
|
ELSE
|
|
PROCESS_PED_SET_DEBUG(iPedSave)
|
|
ENDIF
|
|
ELIF b_debug_ped_create[iPedSave]
|
|
IF NOT IS_BIT_SET(i_debug_process_ped_create, iPedSave)
|
|
IF PROCESS_PED_LOAD_DEBUG(iPedSave)
|
|
SET_BIT(i_debug_process_ped_create, iPedSave)
|
|
ELSE
|
|
b_debug_ped_create[iPedSave] = FALSE
|
|
ENDIF
|
|
ELSE
|
|
PROCESS_PED_CREATE_DEBUG(iPedSave)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF b_debug_ped_randomise_appearance
|
|
PROCESS_PED_RANDOMISE_DEBUG()
|
|
ENDIF
|
|
|
|
IF b_debug_ped_create_clone
|
|
PROCESS_PED_CREATE_CLONE_DEBUG()
|
|
ENDIF
|
|
|
|
|
|
IF b_debug_outfit_output_1
|
|
OUTPUT_OUTFIT_SETUP_HEIST()
|
|
b_debug_outfit_output_1 = FALSE
|
|
ENDIF
|
|
|
|
IF b_debug_htb
|
|
SWITCH GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
CASE MP_M_FREEMODE_01
|
|
APPLY_MALE_BIGFOOT_CLOTHES()
|
|
BREAK
|
|
CASE MP_F_FREEMODE_01
|
|
APPLY_FEMALE_BIGFOOT_CLOTHES()
|
|
BREAK
|
|
ENDSWITCH
|
|
b_debug_htb = FALSE
|
|
ENDIF
|
|
|
|
|
|
IF g_DebugGenerateItemData.b_output_item_data
|
|
AND NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("<!-- ")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemDesc))SAVE_STRING_TO_DEBUG_FILE(" -->")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iDraw = GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_item_draw_component))
|
|
INT iTexCount, iTex
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_item_draw_component), iDraw)
|
|
REPEAT iTexCount iTex
|
|
SAVE_STRING_TO_DEBUG_FILE("<Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <lockHash />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <cost value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_cost)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textLabel>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemLabel))
|
|
SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_draw)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
SAVE_STRING_TO_DEBUG_FILE("</textLabel>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemHash))
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE("_M_")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("_F_")
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_NAME_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_item_draw_component))))SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_draw)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
SAVE_STRING_TO_DEBUG_FILE("</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eShopEnum>CLO_SHOP_LOW</eShopEnum>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <locate value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_locate)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <scriptSaveData value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag1))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag2))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag3))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag4))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag5))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <restrictionTags>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag1))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag1))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag2))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag2))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag3))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag3))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag4))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag4))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag5))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemTag5))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </restrictionTags>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <restrictionTags />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
IF g_DebugGenerateItemData.i_forced_component1 < 12
|
|
OR g_DebugGenerateItemData.i_forced_component2 < 12
|
|
OR g_DebugGenerateItemData.i_forced_component3 < 12
|
|
SAVE_STRING_TO_DEBUG_FILE(" <forcedComponents>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF g_DebugGenerateItemData.i_forced_component1 < 12
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemForced1))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemForced1))SAVE_STRING_TO_DEBUG_FILE("</nameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>0</nameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" <enumValue value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_forced_comp_enum1)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eCompType>")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_DLC_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_forced_component1))))SAVE_STRING_TO_DEBUG_FILE("</eCompType>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF g_DebugGenerateItemData.i_forced_component2 < 12
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemForced2))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemForced2))SAVE_STRING_TO_DEBUG_FILE("</nameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>0</nameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" <enumValue value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_forced_comp_enum2)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eCompType>")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_DLC_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_forced_component2))))SAVE_STRING_TO_DEBUG_FILE("</eCompType>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF g_DebugGenerateItemData.i_forced_component3 < 12
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemForced3))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemForced3))SAVE_STRING_TO_DEBUG_FILE("</nameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <nameHash>0</nameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(" <enumValue value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_forced_comp_enum3)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eCompType>")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_DLC_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_forced_component3))))SAVE_STRING_TO_DEBUG_FILE("</eCompType>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </forcedComponents>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <forcedComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantProps />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <drawableIndex value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <localDrawableIndex value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_draw)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eCompType>")SAVE_STRING_TO_DEBUG_FILE(GET_PED_COMP_DLC_STRING(GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_DebugGenerateItemData.i_item_draw_component))))SAVE_STRING_TO_DEBUG_FILE("</eCompType>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textureIndex value=\"")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <isInOutfit value=\"false\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("</Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
|
|
g_DebugGenerateItemData.b_output_item_data = FALSE
|
|
ENDIF
|
|
|
|
IF g_DebugGenerateItemData.b_output_prop_item_data
|
|
AND NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
|
|
SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("<!-- ")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemDescProp))SAVE_STRING_TO_DEBUG_FILE(" -->")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
INT iDraw = GET_PED_PROP_INDEX(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, g_DebugGenerateItemData.i_item_draw_prop))
|
|
INT iTexCount, iTex
|
|
|
|
iTexCount = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(PLAYER_PED_ID(), INT_TO_ENUM(PED_PROP_POSITION, g_DebugGenerateItemData.i_item_draw_prop), iDraw)
|
|
REPEAT iTexCount iTex
|
|
SAVE_STRING_TO_DEBUG_FILE("<Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <lockHash />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <cost value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_prop_cost)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textLabel>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropLabel))
|
|
SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_index)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
SAVE_STRING_TO_DEBUG_FILE("</textLabel>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <uniqueNameHash>")
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropHash))
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SAVE_STRING_TO_DEBUG_FILE("_M_")
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE("_F_")
|
|
ENDIF
|
|
SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_NAME_STRING(INT_TO_ENUM(PED_PROP_POSITION, g_DebugGenerateItemData.i_item_draw_prop)))SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_index)SAVE_STRING_TO_DEBUG_FILE("_")SAVE_INT_TO_DEBUG_FILE(iTex)
|
|
SAVE_STRING_TO_DEBUG_FILE("</uniqueNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eShopEnum>CLO_SHOP_LOW</eShopEnum>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <locate value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_prop_locate)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <scriptSaveData value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag1))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag2))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag3))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag4))
|
|
OR NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag5))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <restrictionTags>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag1))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag1))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag2))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag2))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag3))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag3))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag4))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag4))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag5))
|
|
SAVE_STRING_TO_DEBUG_FILE(" <Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <tagNameHash>")SAVE_STRING_TO_DEBUG_FILE(GET_CONTENTS_OF_TEXT_WIDGET(g_DebugGenerateItemData.twItemPropTag5))SAVE_STRING_TO_DEBUG_FILE("</tagNameHash>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" </Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" </restrictionTags>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ELSE
|
|
SAVE_STRING_TO_DEBUG_FILE(" <restrictionTags />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDIF
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <forcedComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantComponents />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <variantProps />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <drawableIndex value=\"0\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
|
|
SAVE_STRING_TO_DEBUG_FILE(" <localPropIndex value=\"")SAVE_INT_TO_DEBUG_FILE(g_DebugGenerateItemData.i_item_index)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <eAnchorPoint>")SAVE_STRING_TO_DEBUG_FILE(GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, g_DebugGenerateItemData.i_item_draw_prop)))SAVE_STRING_TO_DEBUG_FILE("</eAnchorPoint>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <textureIndex value=\"")SAVE_INT_TO_DEBUG_FILE(iTex)SAVE_STRING_TO_DEBUG_FILE("\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE(" <isInOutfit value=\"false\" />")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
SAVE_STRING_TO_DEBUG_FILE("</Item>")SAVE_NEWLINE_TO_DEBUG_FILE()
|
|
ENDREPEAT
|
|
|
|
g_DebugGenerateItemData.b_output_prop_item_data = FALSE
|
|
ENDIF
|
|
|
|
IF b_debug_outfit_output_2
|
|
OUTPUT_OUTFIT_SETUP_META()
|
|
b_debug_outfit_output_2 = FALSE
|
|
ENDIF
|
|
|
|
sApplyOutfitData.pedID = PLAYER_PED_ID()
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_heist_outfit)
|
|
|
|
sApplyMaskData.pedID = PLAYER_PED_ID()
|
|
sApplyMaskData.eMask = INT_TO_ENUM(MP_OUTFIT_MASK_ENUM, i_debug_heist_mask)
|
|
|
|
IF b_debug_set_Vs_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_Vs_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_VsTheme_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_VsTheme_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_ng_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_NG_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_lowr_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_lowr_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_entourage_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_entourage_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_entourage_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_hal_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_hal_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_hal_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_solo_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_solo_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_solo_outfit = FALSE
|
|
b_debug_set_solo_outfit2 = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_solo_outfit2
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_solo_outfit2)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_solo_outfit = FALSE
|
|
b_debug_set_solo_outfit2 = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_low_flow_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_low_flow_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_beast_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_beast_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_beast_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_extraction_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_extraction_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_extraction_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gang_boss_vip_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gang_boss_vip_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_gang_boss_vip_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_gang_boss_bodyguard_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gang_boss_bodyguard_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_gang_boss_bodyguard_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_hidden_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_hidden_outfits)
|
|
SET_CONTENTS_OF_TEXT_WIDGET(tw_debug_hidden_outfit_name, GET_MP_OUTFIT_NAME_FROM_ENUM(INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_hidden_outfits)))
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_hidden_lowrider_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_hidden_lowrider_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_classic_competitors_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_classic_competitors_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_trading_places_winner_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_trading_places_winner_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_trading_places_loser_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_trading_places_loser_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_power_play_team_sport_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_power_play_team_sport_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_executive_ceo_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_executive_ceo_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_executive_associate_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_executive_associate_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_executive_securoserv_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_executive_securoserv_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_power_play_themed_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_power_play_themed_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_stunt_race_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_stunt_race_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_biker_club_outfits_0to3
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_biker_club_outfits_0to3)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_biker_club_outfits_4to7
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_biker_club_outfits_4to7)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_biker_deadline_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_biker_deadline_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_biker_slipstream_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_biker_slipstream_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_biker_lost_damned_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_biker_lost_damned_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_biker_club_rank_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_biker_club_rank_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_impexp_ceo_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_impexp_ceo_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_impexp_associate_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_impexp_associate_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_impexp_juggernaut_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_impexp_juggernaut_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_impexp_juggernaut_orange_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_impexp_juggernaut_orange_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_impexp_juggernaut_purple_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_impexp_juggernaut_purple_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_specraces_general_combat_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_specraces_general_combat_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_specraces_land_grab_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_specraces_land_grab_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_lions_den_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_lions_den_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_dawn_raid_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_dawn_raid_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_team_general_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_team_general_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_power_mad_juggernaut_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_power_mad_juggernaut_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_power_mad_juggernaut_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_power_mad_team_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_power_mad_team_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_power_mad_juggernaut_outfits = FALSE
|
|
b_debug_set_gunrun_power_mad_team_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_biker_zombie_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_biker_zombie_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_biker_raider_outfits = FALSE
|
|
b_debug_set_gunrun_biker_zombie_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_biker_raider_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_biker_raider_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_biker_raider_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_biker_puffer_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_biker_puffer_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_biker_raider_outfits = FALSE
|
|
b_debug_set_gunrun_biker_zombie_outfits = FALSE
|
|
b_debug_set_gunrun_biker_puffer_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_biker_hillbilly_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_biker_hillbilly_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_biker_raider_outfits = FALSE
|
|
b_debug_set_gunrun_biker_zombie_outfits = FALSE
|
|
b_debug_set_gunrun_biker_hillbilly_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_ceo_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_ceo_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_biker_raider_outfits = FALSE
|
|
b_debug_set_gunrun_ceo_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_associate_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_associate_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_heist_outfit_auto = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_lowr_outfit = FALSE
|
|
b_debug_set_low_flow_outfit = FALSE
|
|
b_debug_set_hidden_outfits = FALSE
|
|
b_debug_set_hidden_lowrider_outfits = FALSE
|
|
b_debug_set_classic_competitors_outfits = FALSE
|
|
b_debug_set_trading_places_winner_outfits = FALSE
|
|
b_debug_set_trading_places_loser_outfits = FALSE
|
|
b_debug_set_power_play_team_sport_outfits = FALSE
|
|
b_debug_set_executive_ceo_outfits = FALSE
|
|
b_debug_set_executive_associate_outfits = FALSE
|
|
b_debug_set_executive_securoserv_outfits = FALSE
|
|
b_debug_set_power_play_themed_outfits = FALSE
|
|
b_debug_set_stunt_race_outfits = FALSE
|
|
b_debug_set_biker_club_outfits_0to3 = FALSE
|
|
b_debug_set_biker_club_outfits_4to7 = FALSE
|
|
b_debug_set_biker_deadline_outfits = FALSE
|
|
b_debug_set_biker_slipstream_outfits = FALSE
|
|
b_debug_set_biker_lost_damned_outfits = FALSE
|
|
b_debug_set_biker_club_rank_outfits = FALSE
|
|
b_debug_set_impexp_ceo_outfits = FALSE
|
|
b_debug_set_impexp_associate_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_orange_outfits = FALSE
|
|
b_debug_set_impexp_juggernaut_purple_outfits = FALSE
|
|
b_debug_set_specraces_general_combat_outfits = FALSE
|
|
b_debug_set_specraces_land_grab_outfits = FALSE
|
|
b_debug_set_gunrun_lions_den_outfits = FALSE
|
|
b_debug_set_gunrun_dawn_raid_outfits = FALSE
|
|
b_debug_set_gunrun_team_general_outfits = FALSE
|
|
b_debug_set_gunrun_biker_raider_outfits = FALSE
|
|
b_debug_set_gunrun_ceo_outfits = FALSE
|
|
b_debug_set_gunrun_associate_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gunrun_wvm_oppressor_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gunrun_wvm_oppressor_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gunrun_wvm_oppressor_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_hostile_takeover_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_hostile_takeover_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_hostile_takeover_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_condemned_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_condemned_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_condemned_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_vehicle_warfare_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_vehicle_warfare_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_vehicle_warfare_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_air_shootout_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_air_shootout_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_air_shootout_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_bombushka_run_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_bombushka_run_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_bombushka_run_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_stockpile_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_stockpile_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_stockpile_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_race_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_race_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_race_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_ceo_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_ceo_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_ceo_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_associate_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_associate_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_associate_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_biker_casual_pilot_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_biker_casual_pilot_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_biker_casual_pilot_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_smuggler_biker_pirate_outfits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_smuggler_biker_pirate_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_smuggler_biker_pirate_outfits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_under_control_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_under_control_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_under_control_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_scuba_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_scuba_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_scuba_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_scuba2_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_scuba2_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_scuba2_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_paramedic_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_paramedic_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_paramedic_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_medtech1_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_medtech1_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_medtech1_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_medtech2_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_medtech2_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_medtech2_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_modern_stealth_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_modern_stealth_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_modern_stealth_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_casual_pilot_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_casual_pilot_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_casual_pilot_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_fighter_pilot_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_fighter_pilot_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_fighter_pilot_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_high_tech_riot_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_high_tech_riot_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_high_tech_riot_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_high_tech_impact_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_high_tech_impact_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_high_tech_impact_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_med_tech_masked_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_med_tech_masked_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_med_tech_masked_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_med_tech_rebellion_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_med_tech_rebellion_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_med_tech_rebellion_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_med_tech_havoc_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_med_tech_havoc_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_med_tech_havoc_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_med_tech_adaptable_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_med_tech_adaptable_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_med_tech_adaptable_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_sub_driver_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_sub_driver_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_sub_driver_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_heavy_combat_gear_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_heavy_combat_gear_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_heavy_combat_gear_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_low_tech_tactical_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_low_tech_tactical_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_low_tech_tactical_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_low_tech_combat_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_low_tech_combat_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_low_tech_combat_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_classic_stealth_gear_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_classic_stealth_gear_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_classic_stealth_gear_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_military_camo_gear_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_military_camo_gear_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_military_camo_gear_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_heist_gorka_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_heist_gorka_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_heist_gorka_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_slashers_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_slashers_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_slashers_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_hard_target_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_hard_target_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_hard_target_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_gangops_air_quota_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_gangops_air_quota_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_gangops_air_quota_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_target_races_showdown_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_target_races_showdown_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_target_races_showdown_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_target_races_trapdoor_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_target_races_trapdoor_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_target_races_trapdoor_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_target_races_venetian_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_target_races_venetian_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_target_races_venetian_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_target_races_venetian_firesuits
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_target_races_venetian_firesuits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_target_races_venetian_firesuits = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_drop_the_bomb_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_drop_the_bomb_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_drop_the_bomb_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_sumo_run_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_sumo_run_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_sumo_run_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_offense_defense_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_offense_defense_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_offense_defense_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_hunting_pack_remix_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_hunting_pack_remix_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_hunting_pack_remix_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_trading_places_remix_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_trading_places_remix_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_trading_places_remix_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_come_out_to_play_remix_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_come_out_to_play_remix_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_come_out_to_play_remix_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_running_back_remix_2_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_running_back_remix_2_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_running_back_remix_2_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_nightclub_chiliad_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_nightclub_chiliad_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_nightclub_chiliad_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_business_battles_nightclub_kifflom_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_business_battles_nightclub_kifflom_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_business_battles_nightclub_kifflom_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_arena_wars_contender_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_arena_wars_contender_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_arena_wars_contender_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_impotent_rage_outfit
|
|
sApplyOutfitData.eOutfit = OUTFIT_CASINO_IMPOTENT_RAGE
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_impotent_rage_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_highroller_outfit
|
|
sApplyOutfitData.eOutfit = OUTFIT_CASINO_HIGHROLLER
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_highroller_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_spaceling_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_spaceling_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_spaceling_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_undertaker_outfit
|
|
sApplyOutfitData.eOutfit = OUTFIT_CASINO_HEIST_UNDERTAKER
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_undertaker_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_direct_light_i_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_direct_light_i_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_direct_light_i_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_direct_light_ii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_direct_light_ii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_direct_light_ii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_direct_light_iii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_direct_light_iii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_direct_light_iii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_direct_heavy_i_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_direct_heavy_i_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_direct_heavy_i_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_direct_heavy_ii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_direct_heavy_ii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_direct_heavy_ii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_direct_heavy_iii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_direct_heavy_iii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_direct_heavy_iii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_fib_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_fib_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_fib_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_stealth_i_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_stealth_i_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_stealth_i_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_stealth_ii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_stealth_ii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_stealth_ii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_stealth_iii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_stealth_iii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_stealth_iii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_covert_stealth_i_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_covert_stealth_i_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_covert_stealth_i_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_covert_stealth_ii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_covert_stealth_ii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_covert_stealth_ii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_covert_stealth_iii_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_covert_stealth_iii_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_covert_stealth_iii_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_valet_outfit
|
|
sApplyOutfitData.eOutfit = OUTFIT_CASINO_HEIST_VALET
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_valet_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_firefighter_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_firefighter_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_firefighter_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_noose_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_noose_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_noose_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_gruppe_sechs_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_gruppe_sechs_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_gruppe_sechs_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_bugstars_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_bugstars_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_bugstars_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_celeb_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_celeb_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_celeb_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_maintenance_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_maintenance_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_maintenance_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_prison_guard_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_prison_guard_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_prison_guard_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_casino_heist_high_roller_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_casino_heist_high_roller_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_casino_heist_high_roller_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_sum20_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_sum20_outfit)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_sum20_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_island_heist_guard_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_island_heist_guard_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_island_heist_guard_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_island_heist_smuggler_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_island_heist_smuggler_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_island_heist_smuggler_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_island_heist_heavy_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_island_heist_heavy_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_island_heist_heavy_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_island_heist_light_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_island_heist_light_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_island_heist_light_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_island_heist_stealth_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_island_heist_stealth_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_island_heist_stealth_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_island_heist_beach_party_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_island_heist_beach_party_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_island_heist_beach_party_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_tuner_robber_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_tuner_robber_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_tuner_robber_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_tuner_security_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_tuner_security_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_tuner_security_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_tuner_lost_mc_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_tuner_lost_mc_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_tuner_lost_mc_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_tuner_dock_worker_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_tuner_dock_worker_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_tuner_dock_worker_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_fixer_setup_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_fixer_setup_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_fixer_setup_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_fixer_party_promoter_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_fixer_party_promoter_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_fixer_party_promoter_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_fixer_billionaire_games_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_fixer_billionaire_games_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_fixer_billionaire_games_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_fixer_golf_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_fixer_golf_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_fixer_golf_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_heist_navy_coveralls
|
|
sApplyOutfitData.eOutfit = OUTFIT_HEIST_COVERALLS_NAVY
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_heist_navy_coveralls = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
#IF FEATURE_DLC_1_2022
|
|
IF b_debug_set_ld_organics_award
|
|
sApplyOutfitData.eOutfit = OUTFIT_LD_ORGANICS_AWARD_0
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_ld_organics_award = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_sum22_iaa_agent_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_sum22_iaa_agent_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_sum22_iaa_agent_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_sum22_halloween_riders_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_sum22_halloween_riders_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_sum22_halloween_riders_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_sum22_halloween_hunted_outfit
|
|
sApplyOutfitData.eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, i_debug_sum22_halloween_hunted_outfits)
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
b_debug_set_sum22_halloween_hunted_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF b_debug_set_heist_outfit
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyOutfitData)
|
|
SET_CONTENTS_OF_TEXT_WIDGET(t_debug_heist_outfit_name, GET_MP_OUTFIT_NAME_FROM_ENUM(sApplyOutfitData.eOutfit))
|
|
|
|
i_debug_heist_outfit_last_set = i_debug_heist_outfit
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_heist_outfit_auto
|
|
IF i_debug_heist_outfit != i_debug_heist_outfit_last_set
|
|
b_debug_set_heist_outfit = TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_heist_mask
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
and SET_PED_MP_OUTFIT(sApplyMaskData,true,true)
|
|
|
|
SET_CONTENTS_OF_TEXT_WIDGET(t_debug_heist_mask_name, GET_MP_OUTFIT_MASK_NAME(sApplyOutfitData.eMask))
|
|
i_debug_heist_mask_last_set = i_debug_heist_mask
|
|
b_debug_set_heist_mask = FALSE
|
|
b_debug_set_VsTheme_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
b_debug_set_Vs_outfit = FALSE
|
|
b_debug_set_ng_outfit = FALSE
|
|
b_debug_set_heist_outfit = FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF b_debug_set_heist_mask_auto
|
|
IF i_debug_heist_mask != i_debug_heist_mask_last_set
|
|
b_debug_set_heist_mask = TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF b_debug_set_heist_gear
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
SET_MP_HEIST_GEAR(PLAYER_PED_ID(), INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i_debug_heist_gear))
|
|
ENDIF
|
|
b_debug_set_heist_gear = FALSE
|
|
ENDIF
|
|
IF b_debug_remove_heist_gear
|
|
IF NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
REMOVE_MP_HEIST_GEAR(PLAYER_PED_ID(), INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i_debug_heist_gear))
|
|
ENDIF
|
|
b_debug_remove_heist_gear = FALSE
|
|
ENDIF
|
|
|
|
IF b_debug_output_heist_DLC_hash
|
|
INT i
|
|
INT iNameHash
|
|
MP_OUTFITS_DATA sOutfitsData
|
|
IF GET_MP_OUTFIT_DATA(sOutfitsData,sApplyOutfitData)
|
|
PRINTLN("*****|HESIT OUTFIT HASH DATA - ", i_debug_heist_outfit)
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF sOutfitsData.iComponentDrawableID[i] != -1
|
|
iNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), i, sOutfitsData.iComponentDrawableID[i], sOutfitsData.iComponentTextureID[i])
|
|
IF iNameHash != 0
|
|
PRINTLN("*****|GET_SHOP_PED_COMPONENT(", iNameHash, ", componentItem)")
|
|
PRINTLN("*****|sOutfitsData.iComponentDrawableID[", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, i)), "] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, i)), "] = componentItem.m_textureIndex")
|
|
ELSE
|
|
PRINTLN("*****|sOutfitsData.iComponentDrawableID[", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, i)), "] = ", sOutfitsData.iComponentDrawableID[i], " sOutfitsData.iComponentTextureID[", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, i)), "] = ", sOutfitsData.iComponentTextureID[i])
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
IF sOutfitsData.iPropDrawableID[i] != -1
|
|
iNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), i, sOutfitsData.iPropDrawableID[i], sOutfitsData.iPropTextureID[i])
|
|
IF iNameHash != 0
|
|
PRINTLN("*****|GET_SHOP_PED_PROP(", iNameHash, ", propItem)")
|
|
PRINTLN("*****|sOutfitsData.iPropDrawableID[", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, i)), "] = propItem.m_propIndex sOutfitsData.iPropTextureID[", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, i)), "] = propItem.m_textureIndex")
|
|
ELSE
|
|
PRINTLN("*****|sOutfitsData.iPropDrawableID[", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, i)), "] = ", sOutfitsData.iPropDrawableID[i], " sOutfitsData.iPropTextureID[", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, i)), "] = ", sOutfitsData.iPropTextureID[i])
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
b_debug_output_heist_DLC_hash = FALSE
|
|
ENDIF
|
|
|
|
IF b_debug_set_player_and_cam[0]
|
|
OR b_debug_set_player_and_cam[1]
|
|
OR b_debug_set_player_and_cam[2]
|
|
OR b_debug_set_player_and_cam[3]
|
|
CAMERA_INDEX camID = GET_DEBUG_CAM()
|
|
IF DOES_CAM_EXIST(camID)
|
|
AND IS_CAM_ACTIVE(camID)
|
|
|
|
VECTOR vPlayerCoords
|
|
FLOAT fPlayerHeading
|
|
|
|
VECTOR vCamCoords
|
|
VECTOR vCamRot
|
|
FLOAT fCamFOV
|
|
|
|
|
|
IF b_debug_set_player_and_cam[0]
|
|
vPlayerCoords = << 235.289825, -994.445435, -98.999924 >>
|
|
fPlayerHeading = 50.449604
|
|
vCamCoords = << 233.612976, -993.258911, -98.426796 >>
|
|
vCamRot = << -16.813923, -0.000001, -129.191162 >>
|
|
fCamFOV = 50.000000
|
|
ELIF b_debug_set_player_and_cam[1]
|
|
vPlayerCoords = << 235.289825, -994.445435, -98.999924 >>
|
|
fPlayerHeading = 50.449604
|
|
vCamCoords = << 233.592545, -993.242249, -98.357346 >>
|
|
vCamRot = << -16.471943, -0.000000, -129.191162 >>
|
|
fCamFOV = 50.000000
|
|
ELIF b_debug_set_player_and_cam[2]
|
|
vPlayerCoords = << 235.289825, -994.445435, -98.999924 >>
|
|
fPlayerHeading = 50.449604
|
|
vCamCoords = << 233.500809, -993.167358, -98.320786 >>
|
|
vCamRot = << -15.333229, -0.000000, -129.191162 >>
|
|
fCamFOV = 50.000000
|
|
ELIF b_debug_set_player_and_cam[3]
|
|
vPlayerCoords = << 235.289825, -994.445435, -98.999924 >>
|
|
fPlayerHeading = 50.449600
|
|
vCamCoords = << 234.969223, -994.042786, -98.275002 >>
|
|
vCamRot = << -8.781961, -0.000001, -142.976669 >>
|
|
fCamFOV = 50.000000
|
|
ENDIF
|
|
|
|
SET_CAM_COORD(camID, vCamCoords)
|
|
SET_CAM_ROT(camID, vCamRot)
|
|
SET_CAM_FOV(camID, fCamFOV)
|
|
|
|
SET_ENTITY_COORDS_NO_OFFSET(PLAYER_PED_ID(), vPlayerCoords)
|
|
SET_ENTITY_HEADING(PLAYER_PED_ID(), fPlayerHeading)
|
|
FORCE_PED_AI_AND_ANIMATION_UPDATE(PLAYER_PED_ID())
|
|
ENDIF
|
|
b_debug_set_player_and_cam[0] = FALSE
|
|
b_debug_set_player_and_cam[1] = FALSE
|
|
b_debug_set_player_and_cam[2] = FALSE
|
|
b_debug_set_player_and_cam[3] = FALSE
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
PROC DO_CLEANUP()
|
|
TERMINATE_THIS_THREAD()
|
|
ENDPROC
|
|
|
|
SCRIPT
|
|
|
|
NETWORK_SET_SCRIPT_IS_SAFE_FOR_NETWORK_GAME()
|
|
|
|
WHILE TRUE
|
|
|
|
WAIT(0)
|
|
|
|
SWITCH eStage
|
|
CASE STAGE_INIT
|
|
DO_INITIALISE()
|
|
BREAK
|
|
|
|
CASE STAGE_PROCESSING
|
|
DO_PROCESSING()
|
|
BREAK
|
|
|
|
CASE STAGE_CLEANUP
|
|
DO_CLEANUP()
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
ENDWHILE
|
|
|
|
ENDSCRIPT
|
|
|
|
#ENDIF
|