aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/supernova.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/supernova/supernova.cpp')
-rw-r--r--engines/supernova/supernova.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/supernova/supernova.cpp b/engines/supernova/supernova.cpp
index 5bd49d0d89..faff7bc44f 100644
--- a/engines/supernova/supernova.cpp
+++ b/engines/supernova/supernova.cpp
@@ -359,8 +359,13 @@ void SupernovaEngine::restoreScreen() {
void SupernovaEngine::renderRoom(Room &room) {
if (room.getFileNumber() != -1) {
for (int i = 0; i < _currentImage->_numSections; ++i) {
- if (room.isSectionVisible(i))
- renderImage(room.getFileNumber(), i);
+ int section = i;
+ if (room.isSectionVisible(section)) {
+ do {
+ renderImage(room.getFileNumber(), section);
+ section = _currentImage->_section[section].next;
+ } while (section != 0);
+ }
}
}
}