From 9b51c1dbbd1a4cb894080e73cfde7d84517131ed Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Fri, 6 Oct 2017 20:37:28 -0400 Subject: TITANIC: DE: Fix recognising words with common suffixes --- engines/titanic/true_talk/tt_vocab.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'engines/titanic/true_talk/tt_vocab.cpp') diff --git a/engines/titanic/true_talk/tt_vocab.cpp b/engines/titanic/true_talk/tt_vocab.cpp index 861d8f89a0..5ed163f364 100644 --- a/engines/titanic/true_talk/tt_vocab.cpp +++ b/engines/titanic/true_talk/tt_vocab.cpp @@ -182,10 +182,10 @@ TTword *TTvocab::getWord(TTstring &str, TTword **srcWord) const { if (!word) { TTstring tempStr(str); if (tempStr.size() > 2) { - word = getSuffixedWord(tempStr); + word = getSuffixedWord(tempStr, srcWord); if (!word) - word = getPrefixedWord(tempStr); + word = getPrefixedWord(tempStr, srcWord); } } @@ -230,11 +230,11 @@ TTword *TTvocab::getPrimeWord(TTstring &str, TTword **srcWord) const { return newWord; } -TTword *TTvocab::getSuffixedWord(TTstring &str) const { +TTword *TTvocab::getSuffixedWord(TTstring &str, TTword **srcWord) const { TTstring tempStr(str); TTword *word = nullptr; - if (g_vm->isGerman()) { + if (g_language == Common::DE_DEU) { static const char *const SUFFIXES[11] = { "est", "em", "en", "er", "es", "et", "st", "s", "e", "n", "t" @@ -243,7 +243,7 @@ TTword *TTvocab::getSuffixedWord(TTstring &str) const { for (int idx = 0; idx < 11; ++idx) { if (tempStr.hasSuffix(SUFFIXES[idx])) { tempStr.deleteSuffix(strlen(SUFFIXES[idx])); - word = getPrimeWord(tempStr); + word = getPrimeWord(tempStr, srcWord); if (word) break; tempStr = str; @@ -514,7 +514,7 @@ TTword *TTvocab::getSuffixedWord(TTstring &str) const { return word; } -TTword *TTvocab::getPrefixedWord(TTstring &str) const { +TTword *TTvocab::getPrefixedWord(TTstring &str, TTword **srcWord) const { TTstring tempStr(str); TTword *word = nullptr; int prefixLen = 0; -- cgit v1.2.3