From 1d97edb2f9a1ab7cc8209fff7e8a7c76e47bbf8e Mon Sep 17 00:00:00 2001 From: James Brown Date: Sat, 16 Mar 2002 18:03:28 +0000 Subject: Update to my latest local tree. Various stuff - and a fixme hack by khalek to stop loom intro crashing. svn-id: r3765 --- gui.cpp | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'gui.cpp') diff --git a/gui.cpp b/gui.cpp index 2a5dae201d..bc6650fba0 100644 --- a/gui.cpp +++ b/gui.cpp @@ -660,26 +660,32 @@ void Gui::getSavegameNames(int start) { } } -const char *Gui::queryString(int string, int id) { +const char *Gui::queryString(int stringno, int id) { static char namebuf[64]; - if (!_s->_gameId) - return "blah!"; - + char *result; + int string; if (id>=20 && id<=28) { sprintf(namebuf, "%2d. %s", id-20+_slotIndex, game_names[id-20]); return namebuf; } - if (string == 0) + if (stringno == 0) return NULL; - if (_s->_features&GF_AFTER_V6) { - string = _s->_vars[string_map_table_v6[string-1]]; - } else { - string = string_map_table_v5[string-1]; - } + if (_s->_features&GF_AFTER_V6) + string = _s->_vars[string_map_table_v6[stringno-1].num]; + else + string = string_map_table_v5[stringno-1].num; - return (char*)_s->getStringAddress(string); + result = (char*)_s->getStringAddress(string); + + if (!result) // Gracelessly degrade to english :) + if (_s->_features&GF_AFTER_V6) + return string_map_table_v6[stringno-1].string; + else + return string_map_table_v5[stringno-1].string; + + return result; } void Gui::showCaret(bool show) { -- cgit v1.2.3