aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTorbjörn Andersson2005-10-07 15:36:28 +0000
committerTorbjörn Andersson2005-10-07 15:36:28 +0000
commita202b15062e3f5dc8754f94526bc6a179b70c1d1 (patch)
tree396773ed22608f5dc64b0421d2db51a20bfdf9c8
parent313fe937f7fd9fb290d623e1eeada1156763b5c8 (diff)
downloadscummvm-rg350-a202b15062e3f5dc8754f94526bc6a179b70c1d1.tar.gz
scummvm-rg350-a202b15062e3f5dc8754f94526bc6a179b70c1d1.tar.bz2
scummvm-rg350-a202b15062e3f5dc8754f94526bc6a179b70c1d1.zip
Added a "video" panel mode. From what I understand, the beginning of the
IHNM intro should use this, so now it does. svn-id: r18957
-rw-r--r--saga/ihnm_introproc.cpp6
-rw-r--r--saga/interface.cpp11
-rw-r--r--saga/interface.h3
3 files changed, 19 insertions, 1 deletions
diff --git a/saga/ihnm_introproc.cpp b/saga/ihnm_introproc.cpp
index 7d9a21e0ee..091acda0a3 100644
--- a/saga/ihnm_introproc.cpp
+++ b/saga/ihnm_introproc.cpp
@@ -28,6 +28,7 @@
#include "saga/animation.h"
#include "saga/events.h"
+#include "saga/interface.h"
#include "saga/sndres.h"
#include "saga/music.h"
@@ -91,6 +92,11 @@ int Scene::IHNMStartProc() {
LoadSceneParams firstScene;
+ // The original used the "play video" mechanism for the first part of
+ // the intro. We just use that panel mode.
+
+ _vm->_interface->setMode(kPanelVideo);
+
n_introscenes = ARRAYSIZE(IHNM_IntroList);
for (i = 0; i < n_introscenes; i++) {
diff --git a/saga/interface.cpp b/saga/interface.cpp
index 2c6418b3b1..946d845ade 100644
--- a/saga/interface.cpp
+++ b/saga/interface.cpp
@@ -352,6 +352,17 @@ bool Interface::processAscii(uint16 ascii, bool synthetic) {
return true;
}
break;
+ case kPanelVideo:
+ if (ascii == 27) { // Esc
+ if (_vm->_scene->isInIntro()) {
+ _vm->_scene->skipScene();
+ } else {
+ if (!_disableAbortSpeeches)
+ _vm->_actor->abortAllSpeeches();
+ }
+ _vm->_scene->cutawaySkip();
+ }
+ break;
case kPanelOption:
// TODO: check input dialog keys
if (ascii == 27 || ascii == 13) { // Esc or Enter
diff --git a/saga/interface.h b/saga/interface.h
index 2b0c4d5d3b..4fdacf30c0 100644
--- a/saga/interface.h
+++ b/saga/interface.h
@@ -69,7 +69,8 @@ enum PanelModes {
kPanelMap,
kPanelSceneSubstitute,
kPanelChapterSelection,
- kPanelCutaway
+ kPanelCutaway,
+ kPanelVideo
// kPanelInventory
};