bool stageOneShutDown(void) { debug(LOG_WZ, "== stageOneShutDown =="); if ( audio_Disabled() == false ) { sound_CheckAllUnloaded(); } proj_Shutdown(); releaseMission(); if (!aiShutdown()) { return false; } if (!objShutdown()) { return false; } grpShutDown(); ResearchRelease(); //free up the gateway stuff? gwShutDown(); shutdownTerrain(); if (!mapShutdown()) { return false; } scrShutDown(); gridShutDown(); if ( !anim_Shutdown() ) { return false; } if ( !animObj_Shutdown() ) { return false; } debug(LOG_TEXTURE, "=== stageOneShutDown ==="); pie_TexShutDown(); // Use mod_multiplay as the default (campaign might have set it to mod_singleplayer) rebuildSearchPath( mod_multiplay, true ); pie_TexInit(); // restart it initMiscVars(); return true; }
// Reset the game when loading a save game bool saveGameReset(void) { debug(LOG_MAIN, "saveGameReset"); cdAudio_Stop(); freeAllStructs(); freeAllDroids(); freeAllFeatures(); freeAllFlagPositions(); initMission(); initTransporters(); //free up the gateway stuff? gwShutDown(); intResetScreen(true); intResetPreviousObj(); if (!mapShutdown()) { return false; } //clear out any messages freeMessages(); return true; }
bool stageOneShutDown() { debug(LOG_WZ, "== stageOneShutDown =="); atmosSetWeatherType(WT_NONE); // reset weather and free its data wzPerfShutdown(); pie_FreeShaders(); if (audio_Disabled() == false) { sound_CheckAllUnloaded(); } proj_Shutdown(); releaseMission(); if (!aiShutdown()) { return false; } if (!objShutdown()) { return false; } grpShutDown(); ResearchRelease(); //free up the gateway stuff? gwShutDown(); shutdownTerrain(); if (!mapShutdown()) { return false; } scrShutDown(); gridShutDown(); debug(LOG_TEXTURE, "== stageOneShutDown =="); modelShutdown(); pie_TexShutDown(); // Use mod_multiplay as the default (campaign might have set it to mod_singleplayer) rebuildSearchPath(mod_multiplay, true); pie_TexInit(); // restart it initMiscVars(); wzSceneEnd("Main game loop"); wzSceneBegin("Main menu loop"); return true; }
// Reset the game between campaigns bool campaignReset(void) { debug(LOG_MAIN, "campaignReset"); gwShutDown(); mapShutdown(); shutdownTerrain(); // when the terrain textures are reloaded we need to reset the radar // otherwise it will end up as a terrain texture somehow ShutdownRadar(); InitRadar(); return true; }
void systemShutdown(void) { pie_ShutdownRadar(); if (mod_list) { free(mod_list); } shutdownEffectsSystem(); wzSceneEnd("Main menu loop"); keyClearMappings(); // free up all the load functions (all the data should already have been freed) resReleaseAll(); if (!multiShutdown()) // ajl. init net stuff { debug(LOG_FATAL, "Unable to multiShutdown() cleanly!"); abort(); } debug(LOG_MAIN, "shutting down audio subsystems"); debug(LOG_MAIN, "shutting down CD audio"); cdAudio_Close(); if ( audio_Disabled() == false && !audio_Shutdown() ) { debug(LOG_FATAL, "Unable to audio_Shutdown() cleanly!"); abort(); } debug(LOG_MAIN, "shutting down graphics subsystem"); levShutDown(); widgShutDown(); fpathShutdown(); mapShutdown(); debug(LOG_MAIN, "shutting down everything else"); pal_ShutDown(); // currently unused stub frameShutDown(); // close screen / SDL / resources / cursors / trig screenShutDown(); closeConfig(); // "registry" close cleanSearchPath(); // clean PHYSFS search paths debug_exit(); // cleanup debug routines PHYSFS_deinit(); // cleanup PHYSFS (If failure, state of PhysFS is undefined, and probably badly screwed up.) // NOTE: Exception handler is cleaned via atexit(ExchndlShutdown); }
// //////////////////////////////////////////////////////////////////////////// // //////////////////////////////////////////////////////////////////////////// // Free up after level specific data has been released but before base data is released // bool stageTwoShutDown(void) { debug(LOG_WZ, "== stageTwoShutDown =="); cdAudio_Stop(); freeAllStructs(); freeAllDroids(); freeAllFeatures(); freeAllFlagPositions(); if (!shutdownScripts()) { return false; } if (!messageShutdown()) { return false; } if (!mechanicsShutdown()) { return false; } if(!ShutdownRadar()) { return false; } interfaceShutDown(); cmdDroidShutDown(); //free up the gateway stuff? gwShutDown(); if (!mapShutdown()) { return false; } return true; }
void CavePacker::shutdown () { mapShutdown(); }