diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/xeen/dialogs_input.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/engines/xeen/dialogs_input.cpp b/engines/xeen/dialogs_input.cpp index e44fb39387..0bf95f766b 100644 --- a/engines/xeen/dialogs_input.cpp +++ b/engines/xeen/dialogs_input.cpp @@ -165,14 +165,24 @@ int StringInput::execute(bool type, const Common::String &expected, } } else { // Load in the mirror list - File f(Common::String::format("%smirr.txt", files._isDarkCc ? "dark" : "xeen"), 1); MirrorEntry me; scripts._mirror.clear(); + + File f(Common::String::format("%smirr.txt", files._isDarkCc ? "dark" : "xeen"), 1); while (me.synchronize(f)) scripts._mirror.push_back(me); + f.close(); + + // Load in any extended mirror entries + Common::File f2; + if (f2.open(Common::String::format("%smirr.ext", files._isDarkCc ? "dark" : "xeen"))) { + while (me.synchronize(f2)) + scripts._mirror.push_back(me); + f2.close(); + } for (uint idx = 0; idx < scripts._mirror.size(); ++idx) { - if (line == scripts._mirror[idx]._name) { + if (!line.compareToIgnoreCase(scripts._mirror[idx]._name)) { result = idx + 1; sound.playFX(_vm->_files->_isDarkCc ? 35 : 61); break; |