diff options
| author | athrxx | 2019-11-24 00:35:58 +0100 |
|---|---|---|
| committer | athrxx | 2019-12-18 20:50:43 +0100 |
| commit | 512fe083670e0fa1d37b88876d8b612017714c27 (patch) | |
| tree | f74239beeaa95bf517888bb05d49da030fc7588f /engines/kyra/script | |
| parent | feca6f5a26c912e443d59700b7eda31cc8b2db26 (diff) | |
| download | scummvm-rg350-512fe083670e0fa1d37b88876d8b612017714c27.tar.gz scummvm-rg350-512fe083670e0fa1d37b88876d8b612017714c27.tar.bz2 scummvm-rg350-512fe083670e0fa1d37b88876d8b612017714c27.zip | |
KYRA: (EOB/PC98) - allow both graphics mode / text mode text display for sjis font
The assumption till now was that PC-9801 games in 16 color mode will always use text mode for text display. However, EOB1 uses text mode for intro and ending sequence and graphics mode for ingame.
Add new font variant for this and also do some cleanup, since the text displayer code really needs it.
(The problem is that at least 3 different Japanese publishers did the Japanese ports for the various games and every one of them did his own hacks for his specific target.)
Diffstat (limited to 'engines/kyra/script')
| -rw-r--r-- | engines/kyra/script/script_tim.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/engines/kyra/script/script_tim.cpp b/engines/kyra/script/script_tim.cpp index 7afa35c339..11fe9666fa 100644 --- a/engines/kyra/script/script_tim.cpp +++ b/engines/kyra/script/script_tim.cpp @@ -310,7 +310,7 @@ void TIMInterpreter::displayText(uint16 textId, int16 flags) { if (flags < 0) { static const uint8 colorMap[] = { 0x00, 0xF0, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; - _screen->setFont(sjisMode ? Screen::FID_SJIS_FNT : Screen::FID_8_FNT); + _screen->setFont(sjisMode ? Screen::FID_SJIS_TEXTMODE_FNT : Screen::FID_8_FNT); _screen->setTextColorMap(colorMap); _screen->_charWidth = -2; } @@ -359,7 +359,7 @@ void TIMInterpreter::displayText(uint16 textId, int16 flags) { if (flags < 0) { static const uint8 colorMap[] = { 0x00, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0x00, 0x00, 0x00, 0x00 }; - _screen->setFont(sjisMode ? Screen::FID_SJIS_FNT : Screen::FID_INTRO_FNT); + _screen->setFont(sjisMode ? Screen::FID_SJIS_TEXTMODE_FNT : Screen::FID_INTRO_FNT); _screen->setTextColorMap(colorMap); _screen->_charWidth = 0; } @@ -377,7 +377,7 @@ void TIMInterpreter::displayText(uint16 textId, int16 flags, uint8 color) { if (flags == 255) return; - _screen->setFont((_vm->gameFlags().lang == Common::JA_JPN && _vm->gameFlags().use16ColorMode) ? Screen::FID_SJIS_FNT : Screen::FID_INTRO_FNT); + _screen->setFont((_vm->gameFlags().lang == Common::JA_JPN && _vm->gameFlags().use16ColorMode) ? Screen::FID_SJIS_TEXTMODE_FNT : Screen::FID_INTRO_FNT); static const uint8 colorMap[] = { 0x00, 0xA0, 0xA1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; _screen->setTextColorMap(colorMap); |
