From 8b36d14696f2942d1446e641759e05a8089ee8d9 Mon Sep 17 00:00:00 2001 From: Robert Göffringmann Date: Sat, 12 Jul 2003 03:40:44 +0000 Subject: added support for different languages and fixed memory leak and screen refreshes in load/save dialogs svn-id: r8921 --- sky/sky.cpp | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'sky/sky.cpp') diff --git a/sky/sky.cpp b/sky/sky.cpp index 0cfdb9e404..3a444da83e 100644 --- a/sky/sky.cpp +++ b/sky/sky.cpp @@ -87,7 +87,10 @@ SkyState::SkyState(GameDetector *detector, OSystem *syst) _debugMode = detector->_debugMode; _debugLevel = detector->_debugLevel; - _systemVars.language = detector->_language; + if (detector->_language > 10) + _systemVars.language = SKY_USA; + else + _systemVars.language = _languageTable[detector->_language]; _detector = detector; _floppyIntro = detector->_floppyIntro; @@ -110,6 +113,20 @@ void SkyState::errorString(const char *buf1, char *buf2) { strcpy(buf2, buf1); } +uint8 SkyState::_languageTable[11] = { + SKY_USA, // EN_USA + SKY_GERMAN, // DE_DEU + SKY_FRENCH, // FR_FRA + SKY_ITALIAN, // IT_ITA + SKY_PORTUGUESE, // PT_BRA + SKY_SPANISH, // ES_ESP + SKY_USA, // JA_JPN + SKY_USA, // ZH_TWN + SKY_USA, // KO_KOR + SKY_SWEDISH, // SE_SWE + SKY_ENGLISH // EN_GRB +}; + void SkyState::doCheat(uint8 num) { switch(num) { -- cgit v1.2.3