diff options
author | Florian Kagerer | 2009-09-05 22:28:18 +0000 |
---|---|---|
committer | Florian Kagerer | 2009-09-05 22:28:18 +0000 |
commit | 5d8453b09d6d77c90037ec219b8deccb1dc60d22 (patch) | |
tree | 8e247b1a9b3d3e138241b9ce7096ac0eff40d88e | |
parent | a4cf9a39e5a197de02856555202e0ad0da1aedd7 (diff) | |
download | scummvm-rg350-5d8453b09d6d77c90037ec219b8deccb1dc60d22.tar.gz scummvm-rg350-5d8453b09d6d77c90037ec219b8deccb1dc60d22.tar.bz2 scummvm-rg350-5d8453b09d6d77c90037ec219b8deccb1dc60d22.zip |
LOL/Floppy: fix compass
svn-id: r43968
-rw-r--r-- | engines/kyra/gui_lol.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/engines/kyra/gui_lol.cpp b/engines/kyra/gui_lol.cpp index fd01dd0178..052ba100b0 100644 --- a/engines/kyra/gui_lol.cpp +++ b/engines/kyra/gui_lol.cpp @@ -45,7 +45,7 @@ void LoLEngine::gui_drawPlayField() { if (_flagsTable[31] & 0x40) { // copy compass shape static const int cx[] = { 112, 152, 224 }; - _screen->copyRegion(cx[_lang], 32, 288, 0, 32, 32, 2, 2, Screen::CR_NO_P_CHECK); + _screen->copyRegion(cx[_flags.isTalkie ? _lang : 0], 32, 288, 0, 32, 32, 2, 2, Screen::CR_NO_P_CHECK); _compassDirection = -1; } @@ -576,9 +576,16 @@ void LoLEngine::gui_drawCompass() { const CompassDef *c = &_compassDefs[t]; - _screen->drawShape(_screen->_curPage, _gameShapes[22 + _lang], 294, 3, 0, 0); - _screen->drawShape(_screen->_curPage, _gameShapes[(_flags.isTalkie ? 25 : 23) + c->shapeIndex], 298 + c->x, c->y + 9, 0, c->flags | 0x300, _screen->_paletteOverlay1, 1); - _screen->drawShape(_screen->_curPage, _gameShapes[(_flags.isTalkie ? 25 : 23) + c->shapeIndex], 299 + c->x, c->y + 8, 0, c->flags); + int compassShp = 22; + int compassPtr = 23; + if (_flags.isTalkie) { + compassShp += _lang; + compassPtr = 25; + } + + _screen->drawShape(_screen->_curPage, _gameShapes[compassShp], 294, 3, 0, 0); + _screen->drawShape(_screen->_curPage, _gameShapes[compassPtr + c->shapeIndex], 298 + c->x, c->y + 9, 0, c->flags | 0x300, _screen->_paletteOverlay1, 1); + _screen->drawShape(_screen->_curPage, _gameShapes[compassPtr + c->shapeIndex], 299 + c->x, c->y + 8, 0, c->flags); if (!_screen->_curPage) _screen->showMouse(); |