diff options
Diffstat (limited to 'engines/drascula')
-rw-r--r-- | engines/drascula/rooms.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/drascula/rooms.cpp b/engines/drascula/rooms.cpp index ea6b7766e2..968cf1952b 100644 --- a/engines/drascula/rooms.cpp +++ b/engines/drascula/rooms.cpp @@ -154,8 +154,11 @@ void DrasculaEngine::setupRoomsTable() { } bool DrasculaEngine::roomParse(int room, int fl) { + bool seen = false; + for (int i = 0; i < ARRAYSIZE(roomActions); i++) { if (roomActions[i].room == room) { + seen = true; if (roomActions[i].chapter == currentChapter || roomActions[i].chapter == -1) { if (roomActions[i].action == pickedObject || @@ -168,7 +171,8 @@ bool DrasculaEngine::roomParse(int room, int fl) { } } } - } + } else if (seen) // Stop searching down the list + break; } return false; |