diff options
Diffstat (limited to 'engines/sci/gui/gui_screen.cpp')
-rw-r--r-- | engines/sci/gui/gui_screen.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/engines/sci/gui/gui_screen.cpp b/engines/sci/gui/gui_screen.cpp index 1079b4c3f9..6f1b278739 100644 --- a/engines/sci/gui/gui_screen.cpp +++ b/engines/sci/gui/gui_screen.cpp @@ -51,6 +51,9 @@ SciGuiScreen::SciGuiScreen(int16 width, int16 height, int16 scaleFactor) : _controlScreen = initScreen(_pixels); _displayScreen = initScreen(_displayPixels); + // Sets display screen to be actually displayed + _activeScreen = _displayScreen; + for (i = 0; i < _height; i++) { _baseTable[i] = base; _baseDisplayTable[i] = base; base += _width; @@ -73,7 +76,7 @@ byte *SciGuiScreen::initScreen(uint16 pixelCount) { } void SciGuiScreen::copyToScreen() { - g_system->copyRectToScreen(_displayScreen, _displayWidth, 0, 0, _displayWidth, _displayHeight); + g_system->copyRectToScreen(_activeScreen, _displayWidth, 0, 0, _displayWidth, _displayHeight); } byte SciGuiScreen::getDrawingMask(byte color, byte prio, byte control) { @@ -237,4 +240,21 @@ void SciGuiScreen::dither() { } } +void SciGuiScreen::debugShowMap(int mapNo) { + switch (mapNo) { + case 0: + _activeScreen = _visualScreen; + break; + case 1: + _activeScreen = _priorityScreen; + break; + case 2: + _activeScreen = _controlScreen; + break; + case 3: + _activeScreen = _displayScreen; + break; + } +} + } // End of namespace Sci |