USING "globals.sch" USING "commands_landingpage.sch" USING "commands_script.sch" USING "commands_streaming.sch" ENUM GAME_TYPE eGameGTA = 0, eGameClifford, eGameNorman ENDENUM ENUM GLOBAL_REGISTRATION_SCRIPT MP_REGISTRATION, MP_FM_REGISTRATION, TUNABLES_REGISTRATION, SC_LB_GLOBAL_BLOCK, MP_SAVE_GAME_GLOBAL_BLOCK, MP_PROP_GLOBAL_BLOCK, MP_PROP_SPECIAL_GLOBAL_BLOCK, TITLE_UPDATE_REGISTRATION, TITLE_UPDATE_REGISTRATION_2, GLOBALS_FMMC_STRUCT_REGISTRATION, GLOBALS_FMMCSTRUCT2_REGISTRATION, SP_DLC_REGISTRATION, SP_PILOTSCHOOL_REG, GLOBAL_REGISTRATION_SCRIPT_MAX ENDENUM CONST_INT ciMP_REGISTRATION_HASH HASH("MP_registration") CONST_INT ciMP_FM_REGISTRATION_HASH HASH("MP_FM_registration") CONST_INT ciTUNABLES_REGISTRATION_HASH HASH("tunables_registration") CONST_INT ciSC_LB_GLOBAL_BLOCK_HASH HASH("SC_LB_GLOBAL_BLOCK") CONST_INT ciMP_SAVE_GAME_GLOBAL_BLOCK_HASH HASH("MP_SAVE_GAME_GLOBAL_BLOCK") CONST_INT ciMP_PROP_GLOBAL_BLOCK_HASH HASH("mp_prop_global_block") CONST_INT ciMP_PROP_SPECIAL_GLOBAL_BLOCK_HASH HASH("mp_prop_special_global_block") CONST_INT ciTITLE_UPDATE_REGISTRATION_HASH HASH("title_update_registration") CONST_INT ciTITLE_UPDATE_REGISTRATION_2_HASH HASH("title_update_registration_2") CONST_INT ciGLOBALS_FMMC_STRUCT_REGISTRATION_HASH HASH("globals_FMMC_struct_registration") CONST_INT ciGLOBALS_FMMCSTRUCT2_REGISTRATION_HASH HASH("globals_FMMCstruct2_registration") CONST_INT ciSP_DLC_REGISTRATION_HASH HASH("sp_dlc_registration") CONST_INT ciSP_PILOTSCHOOL_REG_HASH HASH("sp_pilotschool_reg") FUNC INT GET_GLOBAL_REGISTRATION_SCRIPT_HASH(GLOBAL_REGISTRATION_SCRIPT eRegScript) SWITCH eRegScript CASE MP_REGISTRATION RETURN ciMP_REGISTRATION_HASH CASE MP_FM_REGISTRATION RETURN ciMP_FM_REGISTRATION_HASH CASE TUNABLES_REGISTRATION RETURN ciTUNABLES_REGISTRATION_HASH CASE SC_LB_GLOBAL_BLOCK RETURN ciSC_LB_GLOBAL_BLOCK_HASH CASE MP_SAVE_GAME_GLOBAL_BLOCK RETURN ciMP_SAVE_GAME_GLOBAL_BLOCK_HASH CASE MP_PROP_GLOBAL_BLOCK RETURN ciMP_PROP_GLOBAL_BLOCK_HASH CASE MP_PROP_SPECIAL_GLOBAL_BLOCK RETURN ciMP_PROP_SPECIAL_GLOBAL_BLOCK_HASH CASE TITLE_UPDATE_REGISTRATION RETURN ciTITLE_UPDATE_REGISTRATION_HASH CASE TITLE_UPDATE_REGISTRATION_2 RETURN ciTITLE_UPDATE_REGISTRATION_2_HASH CASE GLOBALS_FMMC_STRUCT_REGISTRATION RETURN ciGLOBALS_FMMC_STRUCT_REGISTRATION_HASH CASE GLOBALS_FMMCSTRUCT2_REGISTRATION RETURN ciGLOBALS_FMMCSTRUCT2_REGISTRATION_HASH CASE SP_DLC_REGISTRATION RETURN ciSP_DLC_REGISTRATION_HASH CASE SP_PILOTSCHOOL_REG RETURN ciSP_PILOTSCHOOL_REG_HASH ENDSWITCH RETURN -1 ENDFUNC PROC PRELOAD_ALL_STARTUP_SCRIPTS(GAME_TYPE eGameType = eGameGTA) GLOBAL_REGISTRATION_SCRIPT eRegScript REPEAT GLOBAL_REGISTRATION_SCRIPT_MAX eRegScript REQUEST_SCRIPT_WITH_NAME_HASH(GET_GLOBAL_REGISTRATION_SCRIPT_HASH(eRegScript)) ENDREPEAT SWITCH eGameType CASE eGameGTA REQUEST_SCRIPT_WITH_NAME_HASH(HASH("standard_global_reg")) REQUEST_SCRIPT_WITH_NAME_HASH(HASH("standard_global_init")) BREAK #IF FEATURE_SP_DLC_SELECTION CASE eGameClifford REQUEST_SCRIPT_WITH_NAME_HASH(HASH("sp_clifford_reg")) REQUEST_SCRIPT_WITH_NAME_HASH(HASH("sp_clifford_init")) BREAK CASE eGameNorman REQUEST_SCRIPT_WITH_NAME_HASH(HASH("sp_norman_reg")) REQUEST_SCRIPT_WITH_NAME_HASH(HASH("sp_norman_init")) BREAK #ENDIF ENDSWITCH #IF IS_DEBUG_BUILD #IF SCRIPT_PROFILER_ACTIVE REQUEST_SCRIPT_WITH_NAME_HASH(HASH("profiler_registration")) #ENDIF #ENDIF ENDPROC