Revert bug work around, still can't detect conversation will enough yet.

svn-id: r11770
This commit is contained in:
Travis Howell 2003-12-20 06:00:55 +00:00
parent 19fe4c947a
commit fb89d1a32e
3 changed files with 0 additions and 22 deletions

View File

@ -378,9 +378,7 @@ int SimonEngine::runScript() {
if (_game & GF_TALKIE) {
uint speech_id = getNextWord();
if (var < 20) {
_stringid_array_3_backup[var] = _stringid_array_3[var];
_stringid_array_3[var] = string_id;
_speechid_array_4_backup[var] = _speechid_array_4[var];
_speechid_array_4[var] = speech_id;
}
} else {
@ -936,8 +934,6 @@ int SimonEngine::runScript() {
_show_preposition = true;
o_setup_cond_c();
_show_preposition = false;
if (!(_game & GF_SIMON2) && (_game & GF_TALKIE))
_reset_arrays = true;
}
break;
@ -1010,18 +1006,6 @@ int SimonEngine::runScript() {
talk_with_speech(speech_id, vga_sprite_id);
if (string_ptr != NULL && _subtitles)
talk_with_text(vga_sprite_id, color, string_ptr, tv->a, tv->b, tv->c);
if (_reset_arrays) {
// Work around for bug in original Simon the Sorcerer 1
// The game wouldn't reset array back to room descriptions
// after a conversation.
uint i;
for (i = 0; i < 21; i++) {
_stringid_array_3[i] = _stringid_array_3_backup[i];
_speechid_array_4[i] = _speechid_array_4_backup[i];
}
_reset_arrays = 0;
}
}
break;

View File

@ -453,10 +453,7 @@ SimonEngine::SimonEngine(GameDetector *detector, OSystem *syst)
memset(_stringid_array_2, 0, sizeof(_stringid_array_2));
memset(_stringid_array_3, 0, sizeof(_stringid_array_3));
memset(_stringid_array_3_backup, 0, sizeof(_stringid_array_3_backup));
memset(_speechid_array_4, 0, sizeof(_speechid_array_4));
memset(_speechid_array_4_backup, 0, sizeof(_speechid_array_4_backup));
_reset_arrays = 0;
memset(_bit_array, 0, sizeof(_bit_array));
memset(_variableArray, 0, sizeof(_variableArray));

View File

@ -298,10 +298,7 @@ protected:
uint16 _stringid_array_2[20];
uint16 _stringid_array_3[20];
uint16 _stringid_array_3_backup[20];
uint16 _speechid_array_4[20];
uint16 _speechid_array_4_backup[20];
bool _reset_arrays;
uint16 _bit_array[32];
int16 _variableArray[256];