aboutsummaryrefslogtreecommitdiff
path: root/sky/sky.cpp
diff options
context:
space:
mode:
authorRobert Göffringmann2003-07-12 03:40:44 +0000
committerRobert Göffringmann2003-07-12 03:40:44 +0000
commit8b36d14696f2942d1446e641759e05a8089ee8d9 (patch)
tree6d85ff4de6d7746603b9dedd78593f72b1e70b3e /sky/sky.cpp
parent4dd927f1cf5cc9572f41a2e3d40d8f8aab8d1333 (diff)
downloadscummvm-rg350-8b36d14696f2942d1446e641759e05a8089ee8d9.tar.gz
scummvm-rg350-8b36d14696f2942d1446e641759e05a8089ee8d9.tar.bz2
scummvm-rg350-8b36d14696f2942d1446e641759e05a8089ee8d9.zip
added support for different languages and fixed memory leak and screen refreshes in load/save dialogs
svn-id: r8921
Diffstat (limited to 'sky/sky.cpp')
-rw-r--r--sky/sky.cpp19
1 files changed, 18 insertions, 1 deletions
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) {