diff options
author | Strangerke | 2013-05-04 09:57:40 +0200 |
---|---|---|
committer | Strangerke | 2013-05-04 09:57:40 +0200 |
commit | f286ae8f0757c9d645bfc29c424479829c12245b (patch) | |
tree | 2419ece9a92052c59cf091f43ef4a00b26a81172 /engines/hopkins | |
parent | 874b96b409ae32d881635c960c1790434b2793da (diff) | |
download | scummvm-rg350-f286ae8f0757c9d645bfc29c424479829c12245b.tar.gz scummvm-rg350-f286ae8f0757c9d645bfc29c424479829c12245b.tar.bz2 scummvm-rg350-f286ae8f0757c9d645bfc29c424479829c12245b.zip |
HOPKINS: Fix bug #3612482 - ending credits issues
Diffstat (limited to 'engines/hopkins')
-rw-r--r-- | engines/hopkins/font.cpp | 1 | ||||
-rw-r--r-- | engines/hopkins/hopkins.cpp | 5 |
2 files changed, 4 insertions, 2 deletions
diff --git a/engines/hopkins/font.cpp b/engines/hopkins/font.cpp index 611327e9a8..ac0eee2866 100644 --- a/engines/hopkins/font.cpp +++ b/engines/hopkins/font.cpp @@ -433,6 +433,7 @@ void FontManager::displayText(int xp, int yp, const Common::String &message, int if (currentChar > 31) { int characterIndex = currentChar - 32; _vm->_graphicsMan->displayFont(_vm->_graphicsMan->_frontBuffer, _font, xp, yp, characterIndex, col); + _vm->_graphicsMan->addDirtyRect(xp, yp, xp + _vm->_objectsMan->getWidth(_font, characterIndex) + 1, yp + _vm->_objectsMan->getHeight(_font, characterIndex) + 1); xp += _vm->_objectsMan->getWidth(_font, characterIndex); } } diff --git a/engines/hopkins/hopkins.cpp b/engines/hopkins/hopkins.cpp index a778b84b88..83d0bdf030 100644 --- a/engines/hopkins/hopkins.cpp +++ b/engines/hopkins/hopkins.cpp @@ -2443,13 +2443,14 @@ void HopkinsEngine::displayCredits() { _globals->_eventMode = EVENTMODE_CREDITS; _globals->_creditsStartX = _globals->_creditsEndX = _globals->_creditsStartY = _globals->_creditsEndY = -1; int soundId = 28; + do { for (int i = 0; i < _globals->_creditsLineNumb; ++i) { if (_globals->_creditsItem[i]._actvFl) { int nextY = _globals->_creditsPosY + i * _globals->_creditsStep; _globals->_creditsItem[i]._linePosY = nextY; - if ((nextY - 21 >= 0) && (nextY - 21 <= 418)) { + if ((nextY >= 51) && (nextY <= 460)) { int col = 0; switch (_globals->_creditsItem[i]._color) { case '1': @@ -2474,7 +2475,7 @@ void HopkinsEngine::displayCredits() { --_globals->_creditsPosY; if (_globals->_creditsStartX != -1 || _globals->_creditsEndX != -1 || _globals->_creditsStartY != -1 || _globals->_creditsEndY != -1) { _events->refreshScreenAndEvents(); - _graphicsMan->copySurface(_graphicsMan->_backBuffer, 60, 50, 520, 380, _graphicsMan->_frontBuffer, 60, 50); + _graphicsMan->copySurface(_graphicsMan->_backBuffer, 60, 50, 520, 430, _graphicsMan->_frontBuffer, 60, 50); } else { _events->refreshScreenAndEvents(); } |