USING "globals.sch" USING "mp_globals.sch" #IF FEATURE_FREEMODE_ARCADE PROC SET_ARCADE_MODE(ARCADE_MODE arcadeMode) #IF IS_DEBUG_BUILD PRINTLN("SET_ARCADE_MODE - changing from ", ENUM_TO_INT(g_ArcadeMode), " to ", ENUM_TO_INT(arcadeMode)) DEBUG_PRINTCALLSTACK() #ENDIF g_ArcadeMode = arcadeMode ENDPROC FUNC BOOL IS_FREEMODE_ARCADE() IF (g_FMVersion = FM_VERSION_ARCADE) RETURN(TRUE) ENDIF RETURN FALSE ENDFUNC FUNC ARCADE_MODE GET_ARCADE_MODE() #IF IS_DEBUG_BUILD IF (g_ArcadeMode = ARC_NULL) SCRIPT_ASSERT("GET_ARCADE_MODE() - has not been set yet! - wrap with IS_FREEMODE_ARCADE()") PRINTLN("GET_ARCADE_MODE() - has not been set yet! - wrap with IS_FREEMODE_ARCADE()") DEBUG_PRINTCALLSTACK() ENDIF #ENDIF RETURN g_ArcadeMode ENDFUNC PROC RESET_ARCADE_MODE_STATS() gArcadeModeLocalStats.iNumMatchesPlayed = 0 ENDPROC PROC SET_ARCADE_MODE_STATS_MATCHS_PLAYED(INT iCount) gArcadeModeLocalStats.iNumMatchesPlayed = iCount ENDPROC FUNC INT GET_ARCADE_MODE_STAT_MATCHS_PLAYED() RETURN gArcadeModeLocalStats.iNumMatchesPlayed ENDFUNC FUNC ARCADE_MODE_RETURN_TO_LP GET_RETURN_TO_LANDING_PAGE_REASON() return g_ReturningToLandingPageReason ENDFUNC FUNC BOOL HAS_RETURN_TO_LANDING_PAGE_ERROR() RETURN NOT (g_ReturningToLandingPageReason = ARCM_RETURN_INVALID) AND NOT (g_ReturningToLandingPageReason = ARCM_RETURN_NORMAL) ENDFUNC FUNC BOOL HAS_RETURN_TO_LANDING_PAGE_REASON() RETURN NOT (g_ReturningToLandingPageReason = ARCM_RETURN_INVALID) ENDFUNC PROC SET_RETURN_TO_LANDING_PAGE(BOOL bSet, ARCADE_MODE_RETURN_TO_LP eReason = ARCM_RETURN_INVALID) DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bReturnToLandingPage = bSet) PRINTLN("SET_RETURNING_TO_LANDING_PAGE - changing to ", bSet, " Reason = ", ENUM_TO_INT(eReason)) ENDIF #ENDIF g_bReturnToLandingPage = bSet g_ReturningToLandingPageReason = eReason ENDPROC FUNC BOOL IS_RETURN_TO_LANDING_PAGE() RETURN g_bReturnToLandingPage ENDFUNC PROC SET_RETURN_TO_GTA_ONLINE(BOOL bSet) DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bReturnToGTAOnline = bSet) PRINTLN("SET_RETURN_TO_GTA_ONLINE - changing to ", bSet) ENDIF #ENDIF g_bReturnToGTAOnline = bSet ENDPROC FUNC BOOL IS_RETURN_TO_GTA_ONLINE() RETURN g_bReturnToGTAOnline ENDFUNC PROC SET_GOING_TO_CNC_FROM_CNC(BOOL bSet) DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bGoingFromCNCToCNC = bSet) PRINTLN("SET_GOING_TO_CNC_FROM_CNC - changing to ", bSet) ENDIF #ENDIF g_bGoingFromCNCToCNC = bSet ENDPROC FUNC BOOL IS_GOING_TO_CNC_FROM_CNC() RETURN g_bGoingFromCNCToCNC ENDFUNC PROC SET_GOING_TO_ARCADE(BOOL bSet) DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bGoingToArcade = bSet) PRINTLN("SET_GOING_TO_ARCADE - changing to ", bSet) ENDIF #ENDIF g_bGoingToArcade = bSet ENDPROC FUNC BOOL IS_GOING_TO_ARCADE() RETURN g_bGoingToArcade ENDFUNC FUNC BOOL IS_LAUNCHING_ARCADE_LOBBY() RETURN g_bLaunchArcadeLobby ENDFUNC FUNC BOOL IS_ARCADE_LOBBY_OPEN() RETURN g_bArcadeLobbyIsOpen ENDFUNC PROC SET_LAUNCH_ARCADE_LOBBY(BOOL bSet) IF IS_ARCADE_LOBBY_OPEN() PRINTLN("FREEMODEARCADE SET_LAUNCH_ARCADE_LOBBY - arcade lobby already running" ) EXIT ENDIF DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bLaunchArcadeLobby = bSet) PRINTLN("FREEMODEARCADE SET_LAUNCH_ARCADE_LOBBY - changing to ", bSet) ENDIF #ENDIF g_bLaunchArcadeLobby = bSet ENDPROC FUNC BOOL IS_ARCADE_PREVIEW_LOBBY_RUNNING() RETURN g_bArcadePreviewLobbyIsRunning ENDFUNC PROC SET_ARCADE_PREVIEW_LOBBY_RUNNING(BOOL bSet) DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bArcadePreviewLobbyIsRunning = bSet) PRINTLN("SET_ARCADE_PREVIEW_LOBBY_RUNNING - changing to ", bSet) ENDIF #ENDIF g_bArcadePreviewLobbyIsRunning = bSet ENDPROC PROC SET_ARCADE_LOBBY_OPEN(BOOL bSet) DEBUG_PRINTCALLSTACK() #IF IS_DEBUG_BUILD IF NOT (g_bArcadeLobbyIsOpen = bSet) PRINTLN("FREEMODEARCADE SET_ARCADE_LOBBY_OPEN - changing to ", bSet) ENDIF #ENDIF g_bArcadeLobbyIsOpen = bSet ENDPROC FUNC BOOL SHOULD_SHOW_ARCADE_INTRO_STINGER() RETURN g_bShowArcadeIntroStinger ENDFUNC PROC SET_SHOULD_SHOW_ARCADE_INTRO_STINGER(BOOL bShowStinger) g_bShowArcadeIntroStinger = bShowStinger PRINTLN("SET_SHOULD_SHOW_ARCADE_INTRO_STINGER - g_bShowArcadeIntroStinger: ", bShowStinger) DEBUG_PRINTCALLSTACK() ENDPROC PROC RESET_ARCADE_MODE_GLOBALS(BOOL bReturningToLanding=FALSE) PRINTLN("RESET_ARCADE_MODE_GLOBALS called") DEBUG_PRINTCALLSTACK() g_FMVersion = FM_VERSION_ONLINE g_ArcadeMode = ARC_NULL g_bRelauchLobby = FALSE g_bRelauchLobbyPreview = FALSE g_bReturnToGTAOnline = FALSE g_bLaunchArcadeLobby = FALSE g_bArcadeLobbyIsOpen = FALSE g_bGoingToArcade = FALSE g_i_LandingPageBS = 0 g_bGoingFromCNCToCNC = FALSE IF NOT bReturningToLanding g_ReturningToLandingPageReason = ARCM_RETURN_INVALID g_bReturnToLandingPage = FALSE ENDIF RESET_ARCADE_MODE_STATS() ENDPROC #ENDIF PROC SET_FREEMODE_VERSION(FM_VERSION version) #IF IS_DEBUG_BUILD IF NOT (g_FMVersion = version) PRINTLN("SET_FREEMODE_VERSION - changing from ", ENUM_TO_INT(g_FMVersion), " to ", ENUM_TO_INT(version)) DEBUG_PRINTCALLSTACK() ENDIF #ENDIF g_FMVersion = version #IF FEATURE_FREEMODE_ARCADE SET_ARCADE_MODE(ARC_NULL) #ENDIF ENDPROC FUNC FM_VERSION FREEMODE_VERSION() RETURN g_FMVersion ENDFUNC FUNC BOOL IS_FREEMODE_ONLINE() IF (g_FMVersion = FM_VERSION_ONLINE) RETURN(TRUE) ENDIF RETURN FALSE ENDFUNC FUNC STRING FREEMODE_SCRIPT() SWITCH g_FMVersion CASE FM_VERSION_ONLINE RETURN "freemode" #IF FEATURE_FREEMODE_ARCADE CASE FM_VERSION_ARCADE RETURN "freemodeArcade" #ENDIF ENDSWITCH RETURN "freemode" ENDFUNC FUNC INT FREEMODE_HASH() SWITCH g_FMVersion CASE FM_VERSION_ONLINE RETURN HASH("freemode") #IF FEATURE_FREEMODE_ARCADE CASE FM_VERSION_ARCADE RETURN HASH("freemodeArcade") #ENDIF ENDSWITCH RETURN HASH("freemode") ENDFUNC FUNC STRING FREEMODE_INIT_SCRIPT() SWITCH g_FMVersion CASE FM_VERSION_ONLINE RETURN "freemode_init" #IF FEATURE_FREEMODE_ARCADE CASE FM_VERSION_ARCADE RETURN "freemode_initArcade" #ENDIF ENDSWITCH RETURN "freemode_init" ENDFUNC FUNC INT FREEMODE_INIT_HASH() SWITCH g_FMVersion CASE FM_VERSION_ONLINE RETURN HASH("freemode_init") #IF FEATURE_FREEMODE_ARCADE CASE FM_VERSION_ARCADE RETURN HASH("freemode_initArcade") #ENDIF ENDSWITCH RETURN HASH("freemode_init") ENDFUNC #IF FEATURE_FREEMODE_ARCADE FUNC INT GetArcadeGamemodeIntForCodeNatives() #IF IS_DEBUG_BUILD PRINTLN("GetArcadeGamemodeIntForCodeNatives - ", ENUM_TO_INT(GAMEMODE_ARCADE) + ENUM_TO_INT(g_ArcadeMode)) // IF GET_COMMANDLINE_PARAM_EXISTS("sc_ForceGameModeInt") // RETURN GET_COMMANDLINE_PARAM_INT("sc_ForceGameModeInt") // ENDIF #ENDIF RETURN (ENUM_TO_INT(GAMEMODE_ARCADE) + ENUM_TO_INT(g_ArcadeMode)) ENDFUNC FUNC BOOL IS_GAMEMODE_WITH_ARCADEMODE(MP_GAMEMODE gamemode, ARCADE_MODE arcadeMode) RETURN ENUM_TO_INT(gamemode) = ENUM_TO_INT(GAMEMODE_ARCADE) + ENUM_TO_INT(arcadeMode) ENDFUNC FUNC BOOL IS_GAMEMODE_AN_ARCADEMODE(MP_GAMEMODE gamemod) IF gamemod = GAMEMODE_ARCADE #IF FEATURE_COPS_N_CROOKS OR IS_GAMEMODE_WITH_ARCADEMODE(gamemod, ARC_COPS_CROOKS) #ENDIF RETURN TRUE ENDIF RETURN FALSE ENDFUNC #ENDIF