aboutsummaryrefslogtreecommitdiff
path: root/engines/saga
diff options
context:
space:
mode:
authorFilippos Karapetis2007-09-18 09:26:03 +0000
committerFilippos Karapetis2007-09-18 09:26:03 +0000
commitd582e1c7a572ce5d0313e47ec6a0e03260995f26 (patch)
treedc852f17874acb2203fb80df23e14bf682303207 /engines/saga
parent5f05e7b64bd87510ccf941d27182828dd7bec535 (diff)
downloadscummvm-rg350-d582e1c7a572ce5d0313e47ec6a0e03260995f26.tar.gz
scummvm-rg350-d582e1c7a572ce5d0313e47ec6a0e03260995f26.tar.bz2
scummvm-rg350-d582e1c7a572ce5d0313e47ec6a0e03260995f26.zip
Fix for bug #1796045 - "IHNM: Spanish font wrong"
svn-id: r28936
Diffstat (limited to 'engines/saga')
-rw-r--r--engines/saga/font.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/saga/font.cpp b/engines/saga/font.cpp
index 02c17d5e84..06e51a78e4 100644
--- a/engines/saga/font.cpp
+++ b/engines/saga/font.cpp
@@ -328,7 +328,12 @@ void Font::outFont(const FontStyle &drawFont, Surface *ds, const char *text, siz
// Translate character
if (_fontMapping == 0) { // Check font mapping debug flag
// Default game behavior
- if (!(flags & kFontDontmap))
+
+ // It seems that this font mapping causes problems with non-english
+ // versions of IHNM, so it has been changed to apply for ITE only.
+ // It doesn't make any difference for the English version of IHNM.
+ // Fixes bug #1796045: "IHNM: Spanish font wrong".
+ if (!(flags & kFontDontmap) && _vm->getGameType() == GType_ITE)
c_code = _charMap[c_code];
} else if (_fontMapping == 1) {
// Force font mapping
@@ -341,6 +346,8 @@ void Font::outFont(const FontStyle &drawFont, Surface *ds, const char *text, siz
// Check if character is defined
if ((drawFont.fontCharEntry[c_code].index == 0) && (c_code != FONT_FIRSTCHAR)) {
#if FONT_SHOWUNDEFINED
+ // A tab character appears in the IHNM demo instructions screen, so filter
+ // it out here
if (c_code == FONT_CH_SPACE || c_code == FONT_CH_TAB) {
textPoint.x += drawFont.fontCharEntry[c_code].tracking;
continue;