aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2018-03-02 20:28:57 -0500
committerPaul Gilbert2018-03-02 20:28:57 -0500
commit53aa641f4480cac42e79b2a087d2c6e5d03168d0 (patch)
tree9e024dc40139fadb897e6bda8c7105696cd444fd
parent010c47bfe8aef1234407eda4fb9174627683bb09 (diff)
downloadscummvm-rg350-53aa641f4480cac42e79b2a087d2c6e5d03168d0.tar.gz
scummvm-rg350-53aa641f4480cac42e79b2a087d2c6e5d03168d0.tar.bz2
scummvm-rg350-53aa641f4480cac42e79b2a087d2c6e5d03168d0.zip
XEEN: Hook up Clouds of Xeen intro for playing on startup
-rw-r--r--engines/xeen/worldofxeen/clouds_cutscenes.cpp19
-rw-r--r--engines/xeen/worldofxeen/clouds_cutscenes.h15
2 files changed, 28 insertions, 6 deletions
diff --git a/engines/xeen/worldofxeen/clouds_cutscenes.cpp b/engines/xeen/worldofxeen/clouds_cutscenes.cpp
index c58286449e..fb1440e865 100644
--- a/engines/xeen/worldofxeen/clouds_cutscenes.cpp
+++ b/engines/xeen/worldofxeen/clouds_cutscenes.cpp
@@ -33,6 +33,23 @@ namespace WorldOfXeen {
if (++cloudsCtr > 20) \
cloudsCtr = 1
+bool CloudsCutscenes::showCloudsIntro() {
+ FileManager &files = *g_vm->_files;
+ Screen &screen = *g_vm->_screen;
+ Sound &sound = *g_vm->_sound;
+
+ files._isDarkCc = false;
+ files.setGameCc(0);
+
+ bool seenIntro = showCloudsTitle() && showCloudsIntroInner();
+
+ sound.stopAllAudio();
+ sound.setMusicVolume(100);
+ screen.freePages();
+
+ return seenIntro;
+}
+
bool CloudsCutscenes::showCloudsTitle() {
EventsManager &events = *_vm->_events;
Screen &screen = *_vm->_screen;
@@ -90,7 +107,7 @@ bool CloudsCutscenes::showCloudsTitle() {
return true;
}
-bool CloudsCutscenes::showCloudsIntro() {
+bool CloudsCutscenes::showCloudsIntroInner() {
EventsManager &events = *_vm->_events;
Screen &screen = *_vm->_screen;
Sound &sound = *_vm->_sound;
diff --git a/engines/xeen/worldofxeen/clouds_cutscenes.h b/engines/xeen/worldofxeen/clouds_cutscenes.h
index fa7e35d194..afaf3beef5 100644
--- a/engines/xeen/worldofxeen/clouds_cutscenes.h
+++ b/engines/xeen/worldofxeen/clouds_cutscenes.h
@@ -44,6 +44,16 @@ private:
void loadScreen(const Common::String &name);
/**
+ * Shows the Clouds of Xeen title screen
+ */
+ bool showCloudsTitle();
+
+ /**
+ * Inner implementation of the the Clouds of Xeen intro sequence
+ */
+ bool showCloudsIntroInner();
+
+ /**
* Shows part 1 of the Clouds of Xeen ending, with the castle being destroyed
*/
bool showCloudsEnding1();
@@ -72,11 +82,6 @@ public:
CloudsCutscenes(XeenEngine *vm) : Cutscenes(vm) {}
/**
- * Shows the Clouds of Xeen title screen
- */
- bool showCloudsTitle();
-
- /**
* Shows the Clouds of Xeen intro sequence
*/
bool showCloudsIntro();