aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/sherlock
diff options
context:
space:
mode:
Diffstat (limited to 'engines/tsage/sherlock')
-rw-r--r--engines/tsage/sherlock/sherlock_logo.cpp13
-rw-r--r--engines/tsage/sherlock/sherlock_logo.h5
2 files changed, 18 insertions, 0 deletions
diff --git a/engines/tsage/sherlock/sherlock_logo.cpp b/engines/tsage/sherlock/sherlock_logo.cpp
index e2c5629bfc..58cefe551b 100644
--- a/engines/tsage/sherlock/sherlock_logo.cpp
+++ b/engines/tsage/sherlock/sherlock_logo.cpp
@@ -60,6 +60,19 @@ void SherlockLogo::quitGame() {
/*--------------------------------------------------------------------------*/
+void SherlockSceneHandler::postInit(SceneObjectList *OwnerList) {
+ _delayTicks = 2;
+
+ GLOBALS._soundManager.postInit();
+ GLOBALS._soundManager.buildDriverList(true);
+ GLOBALS._soundManager.installConfigDrivers();
+
+ GLOBALS._sceneManager.setNewScene(10);
+ GLOBALS._game->start();
+}
+
+/*--------------------------------------------------------------------------*/
+
void SherlockLogoScene::Action1::signal() {
SherlockLogoScene &scene = *(SherlockLogoScene *)GLOBALS._sceneManager._scene;
diff --git a/engines/tsage/sherlock/sherlock_logo.h b/engines/tsage/sherlock/sherlock_logo.h
index 1f3eb15c53..c9fb50e6ef 100644
--- a/engines/tsage/sherlock/sherlock_logo.h
+++ b/engines/tsage/sherlock/sherlock_logo.h
@@ -51,6 +51,11 @@ public:
virtual bool canLoadGameStateCurrently();
};
+class SherlockSceneHandler : public SceneHandler {
+public:
+ virtual void postInit(SceneObjectList *OwnerList);
+};
+
class SherlockLogoScene: public Scene {
class Action1 : public Action {
public: