diff options
Diffstat (limited to 'engines/hugo/hugo.cpp')
-rw-r--r-- | engines/hugo/hugo.cpp | 35 |
1 files changed, 9 insertions, 26 deletions
diff --git a/engines/hugo/hugo.cpp b/engines/hugo/hugo.cpp index 76898c62a9..9f64db83ff 100644 --- a/engines/hugo/hugo.cpp +++ b/engines/hugo/hugo.cpp @@ -74,30 +74,22 @@ HugoEngine::HugoEngine(OSystem *syst, const HugoGameDescription *gd) : Engine(sy } HugoEngine::~HugoEngine() { - shutdown(); + _file->closeDatabaseFiles(); - _screen->freePalette(); - _text->freeAllTexts(); _intro->freeIntroData(); - _parser->freeArrayReqs(); - _mouse->freeHotspots(); _inventory->freeInvent(); - _object->freeObjectUses(); - _parser->freeCatchallList(); - _parser->freeBackgroundObjects(); - _scheduler->freePoints(); - _parser->freeCmdList(); - _scheduler->freeScreenAct(); - _object->freeObjectArr(); - _scheduler->freeActListArr(); + _mouse->freeHotspots(); + _object->freeObjects(); + _parser->freeParser(); + _scheduler->freeScheduler(); + _screen->freeScreen(); + _text->freeAllTexts(); free(_defltTunes); free(_screenStates); - _screen->freeFonts(); delete _topMenu; - delete _object; delete _sound; delete _route; @@ -203,11 +195,12 @@ Common::Error HugoEngine::run() { _screen->setCursorPal(); _screen->resetInventoryObjId(); + _scheduler->initCypher(); + initStatus(); // Initialize game status initConfig(); // Initialize user's config initialize(); resetConfig(); // Reset user's config - initMachine(); // Start the state machine @@ -577,16 +570,6 @@ void HugoEngine::initialize() { } /** - * Restore all resources before termination - */ -void HugoEngine::shutdown() { - debugC(1, kDebugEngine, "shutdown"); - - _file->closeDatabaseFiles(); - _object->freeObjects(); -} - -/** * Read scenery, overlay files for given screen number */ void HugoEngine::readScreenFiles(const int screenNum) { |