aboutsummaryrefslogtreecommitdiff
path: root/engines/voyeur
diff options
context:
space:
mode:
authorPaul Gilbert2017-06-10 18:21:04 -0400
committerPaul Gilbert2017-06-10 18:21:04 -0400
commit43440193f02078c4b4b014ded366d06655a53ae5 (patch)
treec27d5d04a691aae66709d75d3471a47fef6c3f32 /engines/voyeur
parent7b03f9e87757e3ab74e0f309879c15d28dc5640c (diff)
downloadscummvm-rg350-43440193f02078c4b4b014ded366d06655a53ae5.tar.gz
scummvm-rg350-43440193f02078c4b4b014ded366d06655a53ae5.tar.bz2
scummvm-rg350-43440193f02078c4b4b014ded366d06655a53ae5.zip
VOYEUR: Fix backgrounds not showing for static rooms
Diffstat (limited to 'engines/voyeur')
-rw-r--r--engines/voyeur/files_threads.cpp1
-rw-r--r--engines/voyeur/screen.cpp11
2 files changed, 8 insertions, 4 deletions
diff --git a/engines/voyeur/files_threads.cpp b/engines/voyeur/files_threads.cpp
index bbd3dfe4e9..d22dcd09cc 100644
--- a/engines/voyeur/files_threads.cpp
+++ b/engines/voyeur/files_threads.cpp
@@ -1186,6 +1186,7 @@ void ThreadResource::doRoom() {
}
vm._eventsManager->_intPtr._hasPalette = true;
+ vm._screen->_vPort->_flags |= DISPFLAG_8;
vm._screen->flipPage();
vm._eventsManager->sWaitFlip();
} while (!vm.shouldQuit() && !vm._eventsManager->_mouseClicked);
diff --git a/engines/voyeur/screen.cpp b/engines/voyeur/screen.cpp
index ca9248398f..4d34078439 100644
--- a/engines/voyeur/screen.cpp
+++ b/engines/voyeur/screen.cpp
@@ -910,10 +910,13 @@ void Screen::flipPage() {
bool flipFlag = false;
for (uint idx = 0; idx < viewPorts.size(); ++idx) {
- if ((viewPorts[idx]->_flags & (DISPFLAG_20 | DISPFLAG_8 | DISPFLAG_1)) == (DISPFLAG_20 | DISPFLAG_8 | DISPFLAG_1)) {
- if (_planeSelect == idx)
- sDisplayPic(viewPorts[idx]->_currentPic);
- flipFlag = true;
+ if (viewPorts[idx]->_flags & DISPFLAG_20) {
+ flipFlag = false;
+ if ((viewPorts[idx]->_flags & DISPFLAG_8) && (viewPorts[idx]->_flags & DISPFLAG_1)) {
+ if (_planeSelect == idx)
+ sDisplayPic(viewPorts[idx]->_currentPic);
+ flipFlag = true;
+ }
}
if (flipFlag) {