void ShutdownSessionWrap() { Instance<ICoreGameInit>::Get()->ClearVariable("networkInited"); Instance<ICoreGameInit>::Get()->SetVariable("gameKilled"); g_isNetworkKilled = true; *g_initState = MapInitState(14); AddCrashometry("kill_network_game", "true"); OnKillNetworkDone(); g_shutdownSession(); Instance<ICoreGameInit>::Get()->OnShutdownSession(); g_shouldKillNetwork = false; while (g_isNetworkKilled) { // warning screens apparently need to run on main thread OnGameFrame(); OnMainGameFrame(); g_runWarning(); } Instance<ICoreGameInit>::Get()->OnGameRequestLoad(); }
static void RunInitFunctionsWrap(void* skel, int type) { if (g_callBeforeLoad) { while (!g_callBeforeLoad()) { g_lookAlive(); OnGameFrame(); } } g_runInitFunctions(skel, type); }