aboutsummaryrefslogtreecommitdiff
path: root/engines/toltecs
diff options
context:
space:
mode:
authorFilippos Karapetis2011-10-23 01:07:29 +0000
committerWillem Jan Palenstijn2011-11-20 22:43:12 +0100
commit94f5b8b190590f4a28a27a5088987a05534705f9 (patch)
treeea6e1d363d927f1a2dd9bd1c69cd68b72c3c1b94 /engines/toltecs
parent8b4c082f6d833d33f2a5299ae9a402eeb05cae04 (diff)
downloadscummvm-rg350-94f5b8b190590f4a28a27a5088987a05534705f9.tar.gz
scummvm-rg350-94f5b8b190590f4a28a27a5088987a05534705f9.tar.bz2
scummvm-rg350-94f5b8b190590f4a28a27a5088987a05534705f9.zip
TOLTECS: Always hide the game interface when showing a movie
Diffstat (limited to 'engines/toltecs')
-rw-r--r--engines/toltecs/TODO.txt3
-rw-r--r--engines/toltecs/movie.cpp3
-rw-r--r--engines/toltecs/toltecs.cpp10
3 files changed, 3 insertions, 13 deletions
diff --git a/engines/toltecs/TODO.txt b/engines/toltecs/TODO.txt
index cac88e4d4d..31215f7fff 100644
--- a/engines/toltecs/TODO.txt
+++ b/engines/toltecs/TODO.txt
@@ -18,9 +18,6 @@ TODO
- When getting the piano player off the well, he walks up facing to the left (his side
animation is shown).
- Load/start sound and music of the saved scene when loading.
-- The animation changes in commit 105 (probably) seem to be insufficient - some animations
- exceed the screen height (together with the interface) - perhaps the interface height
- should not be saved?
- Some sounds are cut off prematurely (e.g. when an animation finishes before the sound
sample, when changing scenes and a dialog is immediately started afterwards).
- When saving a game, save the whole screen when an animation is playing
diff --git a/engines/toltecs/movie.cpp b/engines/toltecs/movie.cpp
index c396d6d4b5..b90015fb26 100644
--- a/engines/toltecs/movie.cpp
+++ b/engines/toltecs/movie.cpp
@@ -47,6 +47,7 @@ void MoviePlayer::playMovie(uint resIndex) {
int16 savedCameraHeight = _vm->_cameraHeight;
int16 savedCameraX = _vm->_cameraX;
int16 savedCameraY = _vm->_cameraY;
+ int16 savedGuiHeight = _vm->_guiHeight;
byte moviePalette[768];
_vm->_isSaveAllowed = false;
@@ -72,6 +73,7 @@ void MoviePlayer::playMovie(uint resIndex) {
_vm->_cameraHeight = 400;
_vm->_cameraX = 0;
_vm->_cameraY = 0;
+ _vm->_guiHeight = 0;
_audioStream = Audio::makeQueuingAudioStream(22050, false);
@@ -178,6 +180,7 @@ void MoviePlayer::playMovie(uint resIndex) {
_vm->_cameraHeight = savedCameraHeight;
_vm->_cameraX = savedCameraX;
_vm->_cameraY = savedCameraY;
+ _vm->_guiHeight = savedGuiHeight;
_vm->_isSaveAllowed = true;
diff --git a/engines/toltecs/toltecs.cpp b/engines/toltecs/toltecs.cpp
index 47cabe00d1..046578cffd 100644
--- a/engines/toltecs/toltecs.cpp
+++ b/engines/toltecs/toltecs.cpp
@@ -310,16 +310,6 @@ void ToltecsEngine::drawScreen() {
if (_screen->_guiRefresh && _guiHeight > 0 && _cameraHeight > 0) {
// Update the GUI when needed and it's visible
- if (_cameraHeight + _guiHeight > 400) {
- // HACK: Sanity check - happens when smoking the peace pipe in the
- // Indian village, when cheating at the game of cards and when
- // the ladies find out that the sergeant is drinking again.
- // FIXME: why does this happen? Fix the actual cause.
- warning("Scene height (%d) and GUI height (%d) exceed the screen "
- "height, cutting off the screen", _cameraHeight, _guiHeight);
- _cameraHeight = 400 - _guiHeight;
- }
-
_system->copyRectToScreen((const byte *)_screen->_frontScreen + _cameraHeight * 640,
640, 0, _cameraHeight, 640, _guiHeight);
_screen->_guiRefresh = false;