aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/sci.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci/sci.cpp')
-rw-r--r--engines/sci/sci.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp
index c9b94d1a8b..60b4ad4098 100644
--- a/engines/sci/sci.cpp
+++ b/engines/sci/sci.cpp
@@ -224,6 +224,19 @@ Common::Error SciEngine::run() {
_audio = new AudioPlayer(_resMan);
_gamestate = new EngineState(segMan);
_eventMan = new EventManager(_resMan->detectFontExtended());
+
+ // TODO/FIXME: Remove once SCI3 support is improved
+ if (getSciVersion() == SCI_VERSION_3) {
+ initGraphics(); // invoked to init the graphics subsystem
+ _gamestate->_msgState = NULL; // for proper engine destruction
+ // Attach the console to use resource manager functionality
+ _console->attach();
+ _console->DebugPrintf("\nSCI3 game, stopping before actual game initialization.\n"
+ "Resource-related functionality should be usable at this point\n\n");
+ _console->onFrame();
+
+ return Common::kNoError;
+ }
// The game needs to be initialized before the graphics system is initialized, as
// the graphics code checks parts of the seg manager upon initialization (e.g. for