aboutsummaryrefslogtreecommitdiff
path: root/engines/xeen/dialogs_input.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/xeen/dialogs_input.cpp')
-rw-r--r--engines/xeen/dialogs_input.cpp14
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;