diff options
author | Travis Howell | 2003-01-29 10:08:56 +0000 |
---|---|---|
committer | Travis Howell | 2003-01-29 10:08:56 +0000 |
commit | 43d3cbed19851851809eadc3716e46b84501f106 (patch) | |
tree | 0609c1a737825866981cf3bfbf26267a6484c8d3 | |
parent | 80bd1491563bcf974dd87506e43e225f0b3adf61 (diff) | |
download | scummvm-rg350-43d3cbed19851851809eadc3716e46b84501f106.tar.gz scummvm-rg350-43d3cbed19851851809eadc3716e46b84501f106.tar.bz2 scummvm-rg350-43d3cbed19851851809eadc3716e46b84501f106.zip |
Add improved support for french, german and italian
svn-id: r6568
-rw-r--r-- | simon/simon.cpp | 1 | ||||
-rw-r--r-- | simon/simon.h | 1 | ||||
-rw-r--r-- | simon/verb.cpp | 41 |
3 files changed, 39 insertions, 4 deletions
diff --git a/simon/simon.cpp b/simon/simon.cpp index ac1b253a96..79d3eecc76 100644 --- a/simon/simon.cpp +++ b/simon/simon.cpp @@ -177,6 +177,7 @@ SimonState::SimonState(GameDetector *detector, OSystem *syst) _debugMode = detector->_debugMode; _debugLevel = detector->_debugLevel; + _language = detector->_language; _effects_paused = false; _ambient_paused = false; diff --git a/simon/simon.h b/simon/simon.h index e63bc251d0..242e00083d 100644 --- a/simon/simon.h +++ b/simon/simon.h @@ -181,6 +181,7 @@ public: bool _mouse_pos_changed; uint16 _debugMode; uint16 _debugLevel; + uint16 _language; bool _start_mainscript; bool _continous_mainscript; bool _continous_vgascript; diff --git a/simon/verb.cpp b/simon/verb.cpp index 7a7a069175..f75dfce31f 100644 --- a/simon/verb.cpp +++ b/simon/verb.cpp @@ -41,13 +41,30 @@ static const char *const verb_names[] = { "Give" }; -static const char *const verb_prep_names[] = { +static const char *const italian_verb_prep_names[] = { + "", "", "", "", + "", "", "", "con che cosa ?", + "", "", "", "a chi ?" +}; + +static const char *const french_verb_prep_names[] = { + "", "", "", "", + "", "", "", "avec quoi ?", + "", "", "", "; qui ?" +}; + +static const char *const german_verb_prep_names[] = { + "", "", "", "", + "", "", "", "mit was ?", + "", "", "", "zu wem ?" +}; + +static const char *const english_verb_prep_names[] = { "", "", "", "", "", "", "", "with what ?", "", "", "", "to whom ?" }; - void SimonState::defocusHitarea() { HitArea *last; @@ -81,10 +98,26 @@ void SimonState::focusVerb(uint hitarea_id) hitarea_id -= 101; - CHECK_BOUNDS(hitarea_id, verb_prep_names); + if (_language == 3) { + CHECK_BOUNDS(hitarea_id, italian_verb_prep_names); + } else if (_language == 2) { + CHECK_BOUNDS(hitarea_id, french_verb_prep_names); + } else if (_language == 1) { + CHECK_BOUNDS(hitarea_id, german_verb_prep_names); + } else { + CHECK_BOUNDS(hitarea_id, english_verb_prep_names); + } if (_show_preposition) { - txt = verb_prep_names[hitarea_id]; + if (_language == 3) { + txt = italian_verb_prep_names[hitarea_id]; + } else if (_language == 2) { + txt = french_verb_prep_names[hitarea_id]; + } else if (_language == 1) { + txt = german_verb_prep_names[hitarea_id]; + } else { + txt = english_verb_prep_names[hitarea_id]; + } } else { txt = verb_names[hitarea_id]; } |