aboutsummaryrefslogtreecommitdiff
path: root/engines/sludge/main_loop.cpp
diff options
context:
space:
mode:
authorSimei Yin2017-08-22 14:12:54 +0200
committerSimei Yin2017-08-22 16:20:15 +0200
commit867b8dbb9277f2cde6c45c107b15edd1a6f73b10 (patch)
tree097902d2165356328e7b5e86f961c2d69fdbbfbd /engines/sludge/main_loop.cpp
parent4783541529988e2872fea27565d92d2c36d03f7a (diff)
downloadscummvm-rg350-867b8dbb9277f2cde6c45c107b15edd1a6f73b10.tar.gz
scummvm-rg350-867b8dbb9277f2cde6c45c107b15edd1a6f73b10.tar.bz2
scummvm-rg350-867b8dbb9277f2cde6c45c107b15edd1a6f73b10.zip
SLUDGE: Reset engine when launching a new game data file
Diffstat (limited to 'engines/sludge/main_loop.cpp')
-rw-r--r--engines/sludge/main_loop.cpp22
1 files changed, 2 insertions, 20 deletions
diff --git a/engines/sludge/main_loop.cpp b/engines/sludge/main_loop.cpp
index d00f6e42c4..fc164dfd57 100644
--- a/engines/sludge/main_loop.cpp
+++ b/engines/sludge/main_loop.cpp
@@ -20,7 +20,6 @@
*
*/
-#include "common/config-manager.h"
#include "common/debug.h"
#include "graphics/surface.h"
@@ -55,22 +54,7 @@ int main_loop(Common::String filename) {
return 0;
}
- g_sludge->_gfxMan->init();
-
- g_sludge->_gfxMan->blankAllScreen();
- if (!initPeople())
- return fatal("Couldn't initialise people stuff");
- if (!initFloor())
- return fatal("Couldn't initialise floor stuff");
- if (!g_sludge->_objMan->initObjectTypes())
- return fatal("Couldn't initialise object type stuff");
- initSpeech();
- initStatusBar();
- resetRandW();
-
- if (!ConfMan.hasKey("mute") || !ConfMan.getBool("mute")) {
- g_sludge->_soundMan->initSoundStuff();
- }
+ g_sludge->_gfxMan->initGfx();
startNewFunctionNum(0, 0, NULL, noStack);
@@ -88,9 +72,7 @@ int main_loop(Common::String filename) {
g_sludge->_timer.waitFrame();
}
- killAllFunctions();
- killAllRegions();
- g_sludge->_soundMan->killSoundStuff();
+ killSludge();
// Load next game
if (!g_sludge->launchNext.empty()) {