diff options
author | Florian Kagerer | 2010-10-22 19:28:12 +0000 |
---|---|---|
committer | Florian Kagerer | 2010-10-22 19:28:12 +0000 |
commit | 031e0167e4979fcb9f5bef3fde273605d3dc8eb9 (patch) | |
tree | af3de84306ead9c2a1de3b5096863826dcc84d0f /engines/scumm/charset.cpp | |
parent | 04cd1c1c116bac051f5cd3746922a371aac4f19d (diff) | |
download | scummvm-rg350-031e0167e4979fcb9f5bef3fde273605d3dc8eb9.tar.gz scummvm-rg350-031e0167e4979fcb9f5bef3fde273605d3dc8eb9.tar.bz2 scummvm-rg350-031e0167e4979fcb9f5bef3fde273605d3dc8eb9.zip |
SCUMM/FM-TOWNS JAPANESE: fix another font spacing issue
(fixes MI1 character talk text)
svn-id: r53704
Diffstat (limited to 'engines/scumm/charset.cpp')
-rw-r--r-- | engines/scumm/charset.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/engines/scumm/charset.cpp b/engines/scumm/charset.cpp index db17ecd472..7de424d291 100644 --- a/engines/scumm/charset.cpp +++ b/engines/scumm/charset.cpp @@ -394,8 +394,8 @@ int CharsetRendererClassic::getCharWidth(uint16 chr) { if (spacing) { if (_vm->_game.id == GID_MONKEY) { spacing++; - //if (_curId == 2) - // spacing++; + if (_curId == 2) + spacing++; } else if (_vm->_game.id != GID_INDY4 && _curId == 1) { spacing++; } @@ -910,7 +910,15 @@ void CharsetRendererClassic::printChar(int chr, bool ignoreCharsetMask) { charPtr = 0; _vm->_cjkChar = chr; enableShadow(true); - origWidth = width = getCharWidth(chr); + + width = getCharWidth(chr); + // For whatever reason MI1 uses a different font width + // for alignment calculation and for drawing when + // charset 2 is active. This fixes some subtle glitches. + if (_vm->_game.id == GID_MONKEY && _curId == 2) + width--; + origWidth = width; + origHeight = height = getFontHeight(); offsX = offsY = 0; } else |