diff options
author | Eugene Sandulenko | 2008-06-05 19:29:30 +0000 |
---|---|---|
committer | Eugene Sandulenko | 2008-06-05 19:29:30 +0000 |
commit | 9cbf46a7a42f0f71797856dcbcf987ef11ae6723 (patch) | |
tree | c3a4664af290083a3621e349a968cb045f82fe34 /engines/drascula | |
parent | a921549370b89f9cdddb16b5727efe416015663f (diff) | |
download | scummvm-rg350-9cbf46a7a42f0f71797856dcbcf987ef11ae6723.tar.gz scummvm-rg350-9cbf46a7a42f0f71797856dcbcf987ef11ae6723.tar.bz2 scummvm-rg350-9cbf46a7a42f0f71797856dcbcf987ef11ae6723.zip |
Merged all roomXXActions into single array. Thus simplified room parsers.
svn-id: r32559
Diffstat (limited to 'engines/drascula')
-rw-r--r-- | engines/drascula/drascula.h | 3 | ||||
-rw-r--r-- | engines/drascula/rooms.cpp | 141 | ||||
-rw-r--r-- | engines/drascula/staticdata.h | 548 |
3 files changed, 250 insertions, 442 deletions
diff --git a/engines/drascula/drascula.h b/engines/drascula/drascula.h index f93d788fd8..cbc1d0b442 100644 --- a/engines/drascula/drascula.h +++ b/engines/drascula/drascula.h @@ -137,6 +137,7 @@ enum IgorTalkerTypes { struct DrasculaGameDescription; struct RoomTalkAction { + int room; int chapter; int action; int objectID; @@ -473,7 +474,7 @@ public: int whichObject(); bool checkMenuFlags(); void setupRoomsTable(); - bool roomParse(RoomTalkAction*, int, int); + bool roomParse(int, int); void converse(int); void print_abc_opc(const char *, int, int, int); void response(int); diff --git a/engines/drascula/rooms.cpp b/engines/drascula/rooms.cpp index a3eaa13d5a..6f4dd821fe 100644 --- a/engines/drascula/rooms.cpp +++ b/engines/drascula/rooms.cpp @@ -153,17 +153,19 @@ void DrasculaEngine::setupRoomsTable() { UPDATEROOM(update_102); } -bool DrasculaEngine::roomParse(RoomTalkAction* roomActions, int actionCount, int fl) { - for (int i = 0; i < actionCount; i++) { - if (roomActions[i].chapter == currentChapter || - roomActions[i].chapter == -1) { - if (roomActions[i].action == pickedObject || - roomActions[i].action == kVerbDefault) { - if (roomActions[i].objectID == fl || - roomActions[i].objectID == -1) { - talk(roomActions[i].speechID); - hasAnswer = 1; - return true; +bool DrasculaEngine::roomParse(int room, int fl) { + for (int i = 0; i < ARRAYSIZE(roomActions); i++) { + if (roomActions[i].room == room) { + if (roomActions[i].chapter == currentChapter || + roomActions[i].chapter == -1) { + if (roomActions[i].action == pickedObject || + roomActions[i].action == kVerbDefault) { + if (roomActions[i].objectID == fl || + roomActions[i].objectID == -1) { + talk(roomActions[i].speechID); + hasAnswer = 1; + return true; + } } } } @@ -176,9 +178,6 @@ void DrasculaEngine::room_0() { static const int lookExcuses[3] = {100, 101, 54}; static const int actionExcuses[6] = {11, 109, 111, 110, 115, 116}; - if (roomParse(room0Actions, ARRAYSIZE(room0Actions), -1)) - return; - // non-default actions if (currentChapter == 2 || currentChapter == 4 || currentChapter == 5 || currentChapter == 6) { @@ -197,9 +196,6 @@ void DrasculaEngine::room_0() { } void DrasculaEngine::room_1(int fl) { - if (roomParse(room1Actions, ARRAYSIZE(room1Actions), fl)) - return; - if (pickedObject == kVerbLook && fl == 118) { talk(1); pause(10); @@ -211,9 +207,6 @@ void DrasculaEngine::room_1(int fl) { } void DrasculaEngine::room_3(int fl) { - if (roomParse(room3Actions, ARRAYSIZE(room3Actions), fl)) - return; - if (pickedObject == kVerbTalk && fl == 129) { talk(23); pause(6); @@ -250,9 +243,6 @@ void DrasculaEngine::room_3(int fl) { } void DrasculaEngine::room_4(int fl) { - if (roomParse(room4Actions, ARRAYSIZE(room4Actions), fl)) - return; - if (pickedObject == kVerbMove && fl == 189 && flags[34] == 0) { talk(327); pickObject(13); @@ -264,9 +254,6 @@ void DrasculaEngine::room_4(int fl) { } void DrasculaEngine::room_5(int fl) { - if (roomParse(room5Actions, ARRAYSIZE(room5Actions), fl)) - return; - if (pickedObject == kVerbLook && fl == 136 && flags[8] == 0) talk(14); else if (pickedObject == 10 && fl == 136) { @@ -277,9 +264,6 @@ void DrasculaEngine::room_5(int fl) { } void DrasculaEngine::room_6(int fl){ - if (roomParse(room6Actions, ARRAYSIZE(room6Actions), fl)) - return; - if (pickedObject == kVerbLook && fl==144) { talk(41); talk(42); @@ -338,9 +322,6 @@ void DrasculaEngine::room_6(int fl){ } void DrasculaEngine::room_7(int fl){ - if (roomParse(room7Actions, ARRAYSIZE(room7Actions), fl)) - return; - if (pickedObject == kVerbPick && fl == 190) { pickObject(17); flags[35] = 1; @@ -367,9 +348,6 @@ void DrasculaEngine::room_8(int fl) { } void DrasculaEngine::room_9(int fl){ - if (roomParse(room9Actions, ARRAYSIZE(room9Actions), fl)) - return; - if (pickedObject == kVerbTalk && fl == 51 && flags[4] == 0) animation_4_2(); else if (pickedObject == kVerbTalk && fl == 51 && flags[4] == 1) @@ -383,9 +361,6 @@ void DrasculaEngine::room_9(int fl){ } void DrasculaEngine::room_12(int fl){ - if (roomParse(room12Actions, ARRAYSIZE(room12Actions), fl)) - return; - if (pickedObject == kVerbOpen && fl == 156) openDoor(16, 4); else if (pickedObject == kVerbClose && fl == 156) @@ -413,9 +388,6 @@ bool DrasculaEngine::room_13(int fl) { } void DrasculaEngine::room_14(int fl) { - if (roomParse(room14Actions, ARRAYSIZE(room14Actions), fl)) - return; - if (pickedObject == kVerbTalk && fl == 54 && flags[39] == 0) animation_12_2(); else if (pickedObject == kVerbTalk && fl == 54 && flags[39] == 1) @@ -433,9 +405,6 @@ void DrasculaEngine::room_14(int fl) { } void DrasculaEngine::room_15(int fl) { - if (roomParse(room15Actions, ARRAYSIZE(room15Actions), fl)) - return; - if (pickedObject == 19 && fl == 188 && flags[27] == 0) talk(335); else if (pickedObject == 19 && fl == 188 && flags[27] == 1) { @@ -467,9 +436,6 @@ void DrasculaEngine::room_15(int fl) { } void DrasculaEngine::room_16(int fl) { - if (roomParse(room16Actions, ARRAYSIZE(room16Actions), fl)) - return; - if (pickedObject == kVerbOpen && fl == 163) openDoor(17, 0); else if (pickedObject == kVerbClose && fl == 163) @@ -527,9 +493,6 @@ void DrasculaEngine::room_17(int fl) { } void DrasculaEngine::room_18(int fl) { - if (roomParse(room18Actions, ARRAYSIZE(room18Actions), fl)) - return; - if (pickedObject == kVerbTalk && fl == 55 && flags[36] == 0) animation_24_2(); else if (pickedObject == kVerbTalk && fl == 55 && flags[36] == 1) @@ -572,9 +535,6 @@ void DrasculaEngine::room_18(int fl) { } void DrasculaEngine::room_19(int fl) { - if (roomParse(room19Actions, ARRAYSIZE(room19Actions), fl)) - return; - hasAnswer = 0; } @@ -603,9 +563,6 @@ bool DrasculaEngine::room_21(int fl) { } void DrasculaEngine::room_22(int fl) { - if (roomParse(room22Actions, ARRAYSIZE(room22Actions), fl)) - return; - if (pickedObject == 11 && fl == 140) { pickObject(18); visible[1] = 0; @@ -656,9 +613,6 @@ void DrasculaEngine::room_23(int fl) { } void DrasculaEngine::room_24(int fl) { - if (roomParse(room24Actions, ARRAYSIZE(room24Actions), fl)) - return; - if (pickedObject == kVerbOpen && fl == 105) openDoor(1, 0); else if (pickedObject == kVerbClose && fl == 105) @@ -672,9 +626,6 @@ void DrasculaEngine::room_24(int fl) { } void DrasculaEngine::room_26(int fl) { - if (roomParse(room26Actions, ARRAYSIZE(room26Actions), fl)) - return; - if (pickedObject == kVerbOpen && fl == 107 && flags[30] == 0) openDoor(2, 0); else if (pickedObject == kVerbOpen && fl == 107 && flags[30] == 1) @@ -735,9 +686,6 @@ void DrasculaEngine::room_27(int fl) { } void DrasculaEngine::room_29(int fl) { - if (roomParse(room29Actions, ARRAYSIZE(room29Actions), fl)) - return; - if (pickedObject == kVerbOpen && fl == 114) openDoor(4, 1); else if (pickedObject == kVerbClose && fl == 114) @@ -747,9 +695,6 @@ void DrasculaEngine::room_29(int fl) { } void DrasculaEngine::room_30(int fl) { - if (roomParse(room30Actions, ARRAYSIZE(room30Actions), fl)) - return; - if (pickedObject == kVerbOpen && fl == 115) openDoor(4, 0); else if (pickedObject == kVerbClose && fl == 115) @@ -777,9 +722,6 @@ void DrasculaEngine::room_30(int fl) { } void DrasculaEngine::room_31(int fl) { - if (roomParse(room31Actions, ARRAYSIZE(room31Actions), fl)) - return; - if (pickedObject == kVerbPick && fl == 145) { pickObject(11); visible[1] = 0; @@ -793,9 +735,6 @@ void DrasculaEngine::room_31(int fl) { } void DrasculaEngine::room_34(int fl) { - if (roomParse(room34Actions, ARRAYSIZE(room34Actions), fl)) - return; - if (pickedObject == kVerbMove && fl == 146) animation_8_4(); else if (pickedObject == kVerbOpen && fl == 120 && flags[25] == 1) @@ -837,16 +776,10 @@ void DrasculaEngine::room_35(int fl) { } void DrasculaEngine::room_44(int fl) { - if (roomParse(room44Actions, ARRAYSIZE(room44Actions), fl)) - return; - hasAnswer = 0; } void DrasculaEngine::room_49(int fl){ - if (roomParse(room49Actions, ARRAYSIZE(room49Actions), fl)) - return; - if (pickedObject == kVerbTalk && fl ==51) converse(9); else if ((pickedObject == 8 && fl == 51) || (pickedObject == 8 && fl == 203)) @@ -856,9 +789,6 @@ void DrasculaEngine::room_49(int fl){ } void DrasculaEngine::room_53(int fl) { - if (roomParse(room53Actions, ARRAYSIZE(room53Actions), fl)) - return; - if (pickedObject == kVerbPick && fl == 120) { pickObject(16); visible[3] = 0; @@ -881,9 +811,6 @@ void DrasculaEngine::room_53(int fl) { } void DrasculaEngine::room_54(int fl) { - if (roomParse(room54Actions, ARRAYSIZE(room54Actions), fl)) - return; - if ((pickedObject == kVerbTalk && fl == 118) || (pickedObject == kVerbLook && fl == 118 && flags[0] == 0)) animation_1_5(); else if (pickedObject == kVerbLook && fl == 118 && flags[0]==1) @@ -916,9 +843,6 @@ void DrasculaEngine::room_54(int fl) { } void DrasculaEngine::room_55(int fl) { - if (roomParse(room55Actions, ARRAYSIZE(room55Actions), fl)) - return; - if (pickedObject == kVerbPick && fl == 122) { pickObject(12); flags[8] = 1; @@ -933,9 +857,6 @@ void DrasculaEngine::room_55(int fl) { } bool DrasculaEngine::room_56(int fl) { - if (roomParse(room56Actions, ARRAYSIZE(room56Actions), fl)) - return false; - if (pickedObject == kVerbOpen && fl == 124) { animation_14_5(); return true; @@ -946,9 +867,6 @@ bool DrasculaEngine::room_56(int fl) { } void DrasculaEngine::room_58(int fl) { - if (roomParse(room58Actions, ARRAYSIZE(room58Actions), fl)) - return; - if (pickedObject == kVerbMove && fl == 103) animation_7_6(); else @@ -1022,9 +940,6 @@ void DrasculaEngine::room_59(int fl) { } bool DrasculaEngine::room_60(int fl) { - if (roomParse(room60Actions, ARRAYSIZE(room60Actions), fl)) - return false; - if (pickedObject == kVerbMove && fl == 112) animation_10_6(); else if (pickedObject == kVerbTalk && fl == 52) { @@ -1048,16 +963,10 @@ bool DrasculaEngine::room_60(int fl) { } void DrasculaEngine::room_61(int fl) { - if (roomParse(room61Actions, ARRAYSIZE(room61Actions), fl)) - return; - hasAnswer = 0; } void DrasculaEngine::room_62(int fl) { - if (roomParse(room62Actions, ARRAYSIZE(room62Actions), fl)) - return; - if (pickedObject == kVerbTalk && fl == 53) converse(13); else if (pickedObject == kVerbTalk && fl == 52 && flags[0] == 0) @@ -1071,16 +980,10 @@ void DrasculaEngine::room_62(int fl) { } void DrasculaEngine::room_63(int fl) { - if (roomParse(room63Actions, ARRAYSIZE(room63Actions), fl)) - return; - hasAnswer = 0; } void DrasculaEngine::room_102(int fl) { - if (roomParse(room102Actions, ARRAYSIZE(room102Actions), fl)) - return; - if (pickedObject == kVerbPick && fl == 101) pickObject(20); else if (pickedObject == 20 && fl == 100) @@ -2044,14 +1947,16 @@ bool DrasculaEngine::checkAction(int fl) { if (hasAnswer == 0) { hasAnswer = 1; - // Call room-specific parser - char rm[20]; - sprintf(rm, "room_%d", roomNumber); - for (uint i = 0; i < _roomParsers.size(); i++) { - if (!strcmp(rm, _roomParsers[i]->desc)) { - debug(4, "Calling room parser %d", roomNumber); - (this->*(_roomParsers[i]->proc))(fl); - break; + if (!roomParse(roomNumber, fl)) { + // Call room-specific parser + char rm[20]; + sprintf(rm, "room_%d", roomNumber); + for (uint i = 0; i < _roomParsers.size(); i++) { + if (!strcmp(rm, _roomParsers[i]->desc)) { + debug(4, "Calling room parser %d", roomNumber); + (this->*(_roomParsers[i]->proc))(fl); + break; + } } } } diff --git a/engines/drascula/staticdata.h b/engines/drascula/staticdata.h index df4ad18556..fb3d966ec3 100644 --- a/engines/drascula/staticdata.h +++ b/engines/drascula/staticdata.h @@ -127,395 +127,297 @@ int frame_x[20] = {43, 87, 130, 173, 216, 259}; // Note: default action needs to be LAST for each group // of actions with the same number -RoomTalkAction room0Actions[] = { - // num action object speech - { 1, kVerbLook, -1, 54 }, - { 1, kVerbMove, -1, 19 }, - { 1, kVerbPick, -1, 11 }, - { 1, kVerbOpen, -1, 9 }, - { 1, kVerbClose, -1, 9 }, - { 1, kVerbTalk, -1, 16 }, - { 1, kVerbDefault, -1, 11 }, +RoomTalkAction roomActions[] = { + //room num action object speech + { 0, 1, kVerbLook, -1, 54 }, + { 0, 1, kVerbMove, -1, 19 }, + { 0, 1, kVerbPick, -1, 11 }, + { 0, 1, kVerbOpen, -1, 9 }, + { 0, 1, kVerbClose, -1, 9 }, + { 0, 1, kVerbTalk, -1, 16 }, + { 0, 1, kVerbDefault, -1, 11 }, // ---------------------------------- - { 2, kVerbMove, -1, 19 }, - { 2, kVerbOpen, -1, 9 }, - { 2, kVerbClose, -1, 9 }, - { 2, kVerbTalk, -1, 16 }, + { 0, 2, kVerbMove, -1, 19 }, + { 0, 2, kVerbOpen, -1, 9 }, + { 0, 2, kVerbClose, -1, 9 }, + { 0, 2, kVerbTalk, -1, 16 }, // ---------------------------------- - { 3, kVerbLook, -1, 316 }, - { 3, kVerbMove, -1, 317 }, - { 3, kVerbPick, -1, 318 }, - { 3, kVerbOpen, -1, 319 }, - { 3, kVerbClose, -1, 319 }, - { 3, kVerbTalk, -1, 320 }, - { 3, kVerbDefault, -1, 318 }, + { 0, 3, kVerbLook, -1, 316 }, + { 0, 3, kVerbMove, -1, 317 }, + { 0, 3, kVerbPick, -1, 318 }, + { 0, 3, kVerbOpen, -1, 319 }, + { 0, 3, kVerbClose, -1, 319 }, + { 0, 3, kVerbTalk, -1, 320 }, + { 0, 3, kVerbDefault, -1, 318 }, // ---------------------------------- - { 4, kVerbMove, -1, 19 }, - { 4, kVerbOpen, -1, 9 }, - { 4, kVerbClose, -1, 9 }, - { 4, kVerbTalk, -1, 16 }, + { 0, 4, kVerbMove, -1, 19 }, + { 0, 4, kVerbOpen, -1, 9 }, + { 0, 4, kVerbClose, -1, 9 }, + { 0, 4, kVerbTalk, -1, 16 }, // ---------------------------------- - { 5, kVerbOpen, -1, 9 }, - { 5, kVerbClose, -1, 9 }, - { 5, kVerbTalk, -1, 16 }, + { 0, 5, kVerbOpen, -1, 9 }, + { 0, 5, kVerbClose, -1, 9 }, + { 0, 5, kVerbTalk, -1, 16 }, // ---------------------------------- - { 6, kVerbMove, -1, 19 }, - { 6, kVerbOpen, -1, 9 }, - { 6, kVerbClose, -1, 9 }, - { 6, kVerbTalk, -1, 16 } -}; - -RoomTalkAction room1Actions[] = { - // num action object speech - { -1, kVerbPick, 118, 5 }, - { -1, kVerbOpen, 118, 3 }, - { -1, kVerbClose, 118, 4 }, - { -1, kVerbTalk, 118, 6 }, + { 0, 6, kVerbMove, -1, 19 }, + { 0, 6, kVerbOpen, -1, 9 }, + { 0, 6, kVerbClose, -1, 9 }, + { 0, 6, kVerbTalk, -1, 16 }, + // ================================== + { 1, -1, kVerbPick, 118, 5 }, + { 1, -1, kVerbOpen, 118, 3 }, + { 1, -1, kVerbClose, 118, 4 }, + { 1, -1, kVerbTalk, 118, 6 }, // ---------------------------------- - { -1, kVerbLook, 119, 8 }, - { -1, kVerbMove, 119, 13 }, - { -1, kVerbClose, 119, 10 }, - { -1, kVerbTalk, 119, 12 }, + { 1, -1, kVerbLook, 119, 8 }, + { 1, -1, kVerbMove, 119, 13 }, + { 1, -1, kVerbClose, 119, 10 }, + { 1, -1, kVerbTalk, 119, 12 }, // ---------------------------------- - { -1, kVerbMove, 120, 13 }, - { -1, kVerbOpen, 120, 18 }, - { -1, kVerbTalk, 120, 15 } -}; - -RoomTalkAction room3Actions[] = { - // num action object speech - { -1, kVerbLook, 129, 21 }, - { -1, kVerbPick, 129, 5 }, - { -1, kVerbMove, 129, 24 }, - { -1, kVerbOpen, 129, 22 }, - { -1, kVerbClose, 129, 10 }, + { 1, -1, kVerbMove, 120, 13 }, + { 1, -1, kVerbOpen, 120, 18 }, + { 1, -1, kVerbTalk, 120, 15 }, + // ================================== + { 3, -1, kVerbLook, 129, 21 }, + { 3, -1, kVerbPick, 129, 5 }, + { 3, -1, kVerbMove, 129, 24 }, + { 3, -1, kVerbOpen, 129, 22 }, + { 3, -1, kVerbClose, 129, 10 }, // ---------------------------------- - { -1, kVerbLook, 131, 27 }, - { -1, kVerbPick, 131, 5 }, - { -1, kVerbMove, 131, 24 }, - { -1, kVerbOpen, 131, 22 }, - { -1, kVerbClose, 131, 10 }, - { -1, kVerbTalk, 131, 23 }, + { 3, -1, kVerbLook, 131, 27 }, + { 3, -1, kVerbPick, 131, 5 }, + { 3, -1, kVerbMove, 131, 24 }, + { 3, -1, kVerbOpen, 131, 22 }, + { 3, -1, kVerbClose, 131, 10 }, + { 3, -1, kVerbTalk, 131, 23 }, // ---------------------------------- - { -1, kVerbLook, 132, 28 }, - { -1, kVerbPick, 132, 5 }, - { -1, kVerbMove, 132, 24 }, - { -1, kVerbOpen, 132, 22 }, - { -1, kVerbClose, 132, 10 }, - { -1, kVerbTalk, 132, 23 }, + { 3, -1, kVerbLook, 132, 28 }, + { 3, -1, kVerbPick, 132, 5 }, + { 3, -1, kVerbMove, 132, 24 }, + { 3, -1, kVerbOpen, 132, 22 }, + { 3, -1, kVerbClose, 132, 10 }, + { 3, -1, kVerbTalk, 132, 23 }, // ---------------------------------- - { -1, kVerbLook, 133, 321 }, - { -1, kVerbPick, 133, 31 }, - { -1, kVerbMove, 133, 34 }, - { -1, kVerbOpen, 133, 30 }, - { -1, kVerbClose, 133, 10 }, + { 3, -1, kVerbLook, 133, 321 }, + { 3, -1, kVerbPick, 133, 31 }, + { 3, -1, kVerbMove, 133, 34 }, + { 3, -1, kVerbOpen, 133, 30 }, + { 3, -1, kVerbClose, 133, 10 }, // ---------------------------------- - { -1, kVerbLook, 166, 55 }, - { -1, kVerbPick, 166, 7 }, + { 3, -1, kVerbLook, 166, 55 }, + { 3, -1, kVerbPick, 166, 7 }, // ---------------------------------- - { -1, kVerbLook, 211, 184 } -}; - -RoomTalkAction room4Actions[] = { - // num action object speech - { -1, kVerbLook, 189, 182 }, + { 3, -1, kVerbLook, 211, 184 }, + // ================================== + { 4, -1, kVerbLook, 189, 182 }, // ---------------------------------- - { -1, kVerbLook, 207, 175 }, - { -1, kVerbTalk, 207, 176 }, + { 4, -1, kVerbLook, 207, 175 }, + { 4, -1, kVerbTalk, 207, 176 }, // ---------------------------------- - { -1, kVerbLook, 208, 177 }, + { 4, -1, kVerbLook, 208, 177 }, // ---------------------------------- - { -1, kVerbLook, 209, 179 }, + { 4, -1, kVerbLook, 209, 179 }, // ---------------------------------- - { -1, kVerbLook, 210, 180 }, - { -1, kVerbOpen, 210, 181 } -}; - -RoomTalkAction room5Actions[] = { - // num action object speech - { -1, kVerbMove, 136, 13 }, - { -1, kVerbOpen, 136, 18 }, - { -1, kVerbTalk, 136, 15 }, + { 4, -1, kVerbLook, 210, 180 }, + { 4, -1, kVerbOpen, 210, 181 }, + // ================================== + { 5, -1, kVerbMove, 136, 13 }, + { 5, -1, kVerbOpen, 136, 18 }, + { 5, -1, kVerbTalk, 136, 15 }, // ---------------------------------- - { -1, kVerbLook, 212, 187 }, - { -1, kVerbTalk, 212, 188 }, + { 5, -1, kVerbLook, 212, 187 }, + { 5, -1, kVerbTalk, 212, 188 }, // ---------------------------------- - { -1, kVerbLook, 213, 189 }, - { -1, kVerbOpen, 213, 190 } -}; - -RoomTalkAction room6Actions[] = { - // num action object speech - { -1, kVerbPick, 144, 43 }, + { 5, -1, kVerbLook, 213, 189 }, + { 5, -1, kVerbOpen, 213, 190 }, + // ================================== + { 6, -1, kVerbPick, 144, 43 }, // ---------------------------------- - { -1, kVerbLook, 138, 35 }, - { -1, kVerbTalk, 138, 6 }, + { 6, -1, kVerbLook, 138, 35 }, + { 6, -1, kVerbTalk, 138, 6 }, // ---------------------------------- - { -1, kVerbLook, 143, 37 }, - { -1, kVerbPick, 143, 7 }, - { -1, kVerbMove, 143, 7 }, - { -1, kVerbTalk, 143, 38 }, + { 6, -1, kVerbLook, 143, 37 }, + { 6, -1, kVerbPick, 143, 7 }, + { 6, -1, kVerbMove, 143, 7 }, + { 6, -1, kVerbTalk, 143, 38 }, // ---------------------------------- - { -1, kVerbLook, 139, 36 }, + { 6, -1, kVerbLook, 139, 36 }, // ---------------------------------- - { -1, kVerbLook, 140, 147 } -}; - -RoomTalkAction room7Actions[] = { - // num action object speech - { -1, kVerbLook, 164, 35 }, + { 6, -1, kVerbLook, 140, 147 }, + // ================================== + { 7, -1, kVerbLook, 164, 35 }, // ---------------------------------- - { -1, kVerbLook, 169, 44 } -}; - -RoomTalkAction room9Actions[] = { - // num action object speech - { -1, kVerbLook, 150, 35 }, - { -1, kVerbTalk, 150, 6 }, + { 7, -1, kVerbLook, 169, 44 }, + // ================================== + { 9, -1, kVerbLook, 150, 35 }, + { 9, -1, kVerbTalk, 150, 6 }, // ---------------------------------- - { -1, kVerbLook, 51, 60 }, -}; - -RoomTalkAction room12Actions[] = { - // num action object speech - { -1, kVerbLook, 154, 329 }, - { -1, kVerbTalk, 154, 330 }, + { 9, -1, kVerbLook, 51, 60 }, + // ================================== + { 12, -1, kVerbLook, 154, 329 }, + { 12, -1, kVerbTalk, 154, 330 }, // ---------------------------------- - { -1, kVerbMove, 155, 48 }, - { -1, kVerbTalk, 155, 331 }, + { 12, -1, kVerbMove, 155, 48 }, + { 12, -1, kVerbTalk, 155, 331 }, // ---------------------------------- - { -1, kVerbLook, 156, 35 }, - { -1, kVerbMove, 156, 48 }, - { -1, kVerbTalk, 156, 50 } -}; - -RoomTalkAction room14Actions[] = { - // num action object speech - { -1, kVerbLook, 200, 165 }, + { 12, -1, kVerbLook, 156, 35 }, + { 12, -1, kVerbMove, 156, 48 }, + { 12, -1, kVerbTalk, 156, 50 }, + // ================================== + { 14, -1, kVerbLook, 200, 165 }, // ---------------------------------- - { -1, kVerbLook, 201, 166 }, + { 14, -1, kVerbLook, 201, 166 }, // ---------------------------------- - { -1, kVerbLook, 202, 167 }, + { 14, -1, kVerbLook, 202, 167 }, // ---------------------------------- - { -1, kVerbLook, 203, 168 }, - { -1, kVerbPick, 203, 170 }, - { -1, kVerbMove, 203, 170 }, - { -1, kVerbTalk, 203, 169 }, + { 14, -1, kVerbLook, 203, 168 }, + { 14, -1, kVerbPick, 203, 170 }, + { 14, -1, kVerbMove, 203, 170 }, + { 14, -1, kVerbTalk, 203, 169 }, // ---------------------------------- - { -1, kVerbLook, 204, 171 } -}; - -RoomTalkAction room15Actions[] = { - // num action object speech - { -1, kVerbTalk, 188, 333 }, - { -1, kVerbLook, 188, 334 }, + { 14, -1, kVerbLook, 204, 171 }, + // ================================== + { 15, -1, kVerbTalk, 188, 333 }, + { 15, -1, kVerbLook, 188, 334 }, // ---------------------------------- - { -1, kVerbLook, 205, 172 }, + { 15, -1, kVerbLook, 205, 172 }, // ---------------------------------- - { -1, kVerbLook, 206, 173 }, - { -1, kVerbMove, 206, 174 }, - { -1, kVerbOpen, 206, 174 } -}; - -RoomTalkAction room16Actions[] = { - // num action object speech - { -1, kVerbTalk, 163, 6 }, + { 15, -1, kVerbLook, 206, 173 }, + { 15, -1, kVerbMove, 206, 174 }, + { 15, -1, kVerbOpen, 206, 174 }, + // ================================== + { 16, -1, kVerbTalk, 163, 6 }, // ---------------------------------- - { -1, kVerbLook, 183, 340 }, + { 16, -1, kVerbLook, 183, 340 }, // ---------------------------------- - { -1, kVerbLook, 185, 37 }, - { -1, kVerbPick, 185, 7 }, - { -1, kVerbMove, 185, 7 }, - { -1, kVerbTalk, 185, 38 }, + { 16, -1, kVerbLook, 185, 37 }, + { 16, -1, kVerbPick, 185, 7 }, + { 16, -1, kVerbMove, 185, 7 }, + { 16, -1, kVerbTalk, 185, 38 }, // ---------------------------------- - { -1, kVerbTalk, 187, 345 } -}; - -RoomTalkAction room18Actions[] = { - // num action object speech - { -1, kVerbLook, 181, 348 }, + { 16, -1, kVerbTalk, 187, 345 }, + // ================================== + { 18, -1, kVerbLook, 181, 348 }, // ---------------------------------- - { -1, kVerbLook, 182, 154 } -}; - -RoomTalkAction room19Actions[] = { - // num action object speech - { -1, kVerbLook, 214, 191 } -}; - -RoomTalkAction room22Actions[] = { - // num action object speech - { -1, kVerbPick, 140, 7 }, + { 18, -1, kVerbLook, 182, 154 }, + // ================================== + { 19, -1, kVerbLook, 214, 191 }, + // ================================== + { 22, -1, kVerbPick, 140, 7 }, // ---------------------------------- - { -1, kVerbLook, 52, 497 }, - { -1, kVerbTalk, 52, 498 } -}; - -RoomTalkAction room24Actions[] = { - // num action object speech - { -1, kVerbLook, 151, 461 } -}; - -RoomTalkAction room26Actions[] = { - // num action object speech - { -1, kVerbOpen, 167, 467 }, + { 22, -1, kVerbLook, 52, 497 }, + { 22, -1, kVerbTalk, 52, 498 }, + // ================================== + { 24, -1, kVerbLook, 151, 461 }, + // ================================== + { 26, -1, kVerbOpen, 167, 467 }, // ---------------------------------- - { -1, kVerbLook, 164, 470 }, - { -1, kVerbOpen, 164, 471 }, + { 26, -1, kVerbLook, 164, 470 }, + { 26, -1, kVerbOpen, 164, 471 }, // ---------------------------------- - { -1, kVerbLook, 163, 472 }, - { -1, kVerbPick, 163, 473 }, + { 26, -1, kVerbLook, 163, 472 }, + { 26, -1, kVerbPick, 163, 473 }, // ---------------------------------- - { -1, kVerbLook, 165, 474 }, + { 26, -1, kVerbLook, 165, 474 }, // ---------------------------------- - { -1, kVerbLook, 168, 476 }, - { -1, kVerbPick, 168, 477 } -}; - -RoomTalkAction room29Actions[] = { - // num action object speech - { -1, kVerbLook, 152, 463 }, - { -1, kVerbOpen, 152, 464 }, - // ---------------------------------- - { -1, kVerbLook, 153, 465 }, + { 26, -1, kVerbLook, 168, 476 }, + { 26, -1, kVerbPick, 168, 477 }, + // ================================== + { 29, -1, kVerbLook, 152, 463 }, + { 29, -1, kVerbOpen, 152, 464 }, // ---------------------------------- - { -1, kVerbPick, 154, 466 }, + { 29, -1, kVerbLook, 153, 465 }, // ---------------------------------- - { -1, kVerbOpen, 156, 467 } -}; - -RoomTalkAction room30Actions[] = { - // num action object speech - { -1, kVerbOpen, 157, 468 }, + { 29, -1, kVerbPick, 154, 466 }, // ---------------------------------- - { -1, kVerbLook, 158, 469 } -}; - -RoomTalkAction room31Actions[] = { - // num action object speech - { -1, kVerbLook, 161, 470 }, - { -1, kVerbOpen, 161, 471 } -}; - -RoomTalkAction room34Actions[] = { - // num action object speech - { -1, kVerbLook, 146, 458 }, - { -1, kVerbPick, 146, 459 } -}; - -RoomTalkAction room44Actions[] = { - // num action object speech - { -1, kVerbLook, 172, 428 } -}; - -RoomTalkAction room49Actions[] = { - // num action object speech - { -1, kVerbLook, 51, 132 }, + { 29, -1, kVerbOpen, 156, 467 }, + // ================================== + { 30, -1, kVerbOpen, 157, 468 }, // ---------------------------------- - { -1, kVerbLook, 200, 133 }, - { -1, kVerbTalk, 200, 134 }, + { 30, -1, kVerbLook, 158, 469 }, + // ================================== + { 31, -1, kVerbLook, 161, 470 }, + { 31, -1, kVerbOpen, 161, 471 }, + // ================================== + { 34, -1, kVerbLook, 146, 458 }, + { 34, -1, kVerbPick, 146, 459 }, + // ================================== + { 44, -1, kVerbLook, 172, 428 }, + // ================================== + { 49, -1, kVerbLook, 51, 132 }, // ---------------------------------- - { -1, kVerbLook, 201, 135 }, + { 49, -1, kVerbLook, 200, 133 }, + { 49, -1, kVerbTalk, 200, 134 }, // ---------------------------------- - { -1, kVerbLook, 203, 137 } -}; - -RoomTalkAction room53Actions[] = { - // num action object speech - { -1, kVerbLook, 121, 128 }, + { 49, -1, kVerbLook, 201, 135 }, // ---------------------------------- - { -1, kVerbLook, 209, 129 }, + { 49, -1, kVerbLook, 203, 137 }, + // ================================== + { 53, -1, kVerbLook, 121, 128 }, // ---------------------------------- - { -1, kVerbLook, 52, 447 }, - { -1, kVerbTalk, 52, 131 } -}; - -RoomTalkAction room54Actions[] = { - // num action object speech - { -1, kVerbLook, 53, 127 }, + { 53, -1, kVerbLook, 209, 129 }, // ---------------------------------- - { -1, kVerbOpen, 119, 125 }, - { -1, kVerbLook, 119, 126 } -}; - -RoomTalkAction room55Actions[] = { - // num action object speech - { -1, kVerbLook, 122, 138 }, + { 53, -1, kVerbLook, 52, 447 }, + { 53, -1, kVerbTalk, 52, 131 }, + // ================================== + { 54, -1, kVerbLook, 53, 127 }, // ---------------------------------- - { -1, kVerbLook, 204, 139 }, + { 54, -1, kVerbOpen, 119, 125 }, + { 54, -1, kVerbLook, 119, 126 }, + // ================================== + { 55, -1, kVerbLook, 122, 138 }, // ---------------------------------- - { -1, kVerbLook, 205, 140 } -}; - -RoomTalkAction room56Actions[] = { - // num action object speech - { -1, kVerbLook, 124, 450 }, + { 55, -1, kVerbLook, 204, 139 }, // ---------------------------------- - { -1, kVerbOpen, 207, 141 }, + { 55, -1, kVerbLook, 205, 140 }, + // ================================== + { 56, -1, kVerbLook, 124, 450 }, // ---------------------------------- - { -1, kVerbLook, 208, 142 } -}; - -RoomTalkAction room58Actions[] = { - // num action object speech - { -1, kVerbLook, 104, 454 } -}; - -RoomTalkAction room60Actions[] = { - // num action object speech - { -1, kVerbLook, 112, 440 }, + { 56, -1, kVerbOpen, 207, 141 }, // ---------------------------------- - { -1, kVerbTalk, 115, 455 }, + { 56, -1, kVerbLook, 208, 142 }, + // ================================== + { 58, -1, kVerbLook, 104, 454 }, + // ================================== + { 60, -1, kVerbLook, 112, 440 }, // ---------------------------------- - { -1, kVerbTalk, 56, 455 }, + { 60, -1, kVerbTalk, 115, 455 }, // ---------------------------------- - { -1, kVerbLook, 114, 167 }, + { 60, -1, kVerbTalk, 56, 455 }, // ---------------------------------- - { -1, kVerbLook, 113, 168 }, - { -1, kVerbPick, 113, 170 }, - { -1, kVerbMove, 113, 170 }, - { -1, kVerbTalk, 113, 169 } -}; - -RoomTalkAction room61Actions[] = { - // num action object speech - { -1, kVerbLook, 116, 172 }, + { 60, -1, kVerbLook, 114, 167 }, // ---------------------------------- - { -1, kVerbLook, 117, 173 }, + { 60, -1, kVerbLook, 113, 168 }, + { 60, -1, kVerbPick, 113, 170 }, + { 60, -1, kVerbMove, 113, 170 }, + { 60, -1, kVerbTalk, 113, 169 }, + // ================================== + { 61, -1, kVerbLook, 116, 172 }, // ---------------------------------- - { -1, kVerbMove, 117, 174 }, - { -1, kVerbOpen, 117, 174 }, -}; - -RoomTalkAction room62Actions[] = { - // num action object speech - { -1, kVerbLook, 100, 168}, - { -1, kVerbTalk, 100, 169}, - { -1, kVerbPick, 100, 170}, + { 61, -1, kVerbLook, 117, 173 }, // ---------------------------------- - { -1, kVerbLook, 101, 171}, + { 61, -1, kVerbMove, 117, 174 }, + { 61, -1, kVerbOpen, 117, 174 }, + { 62, -1, kVerbLook, 100, 168 }, + { 62, -1, kVerbTalk, 100, 169 }, + { 62, -1, kVerbPick, 100, 170 }, // ---------------------------------- - { -1, kVerbLook, 102, 167}, + { 62, -1, kVerbLook, 101, 171 }, // ---------------------------------- - { -1, kVerbLook, 103, 166} -}; - -RoomTalkAction room63Actions[] = { - // num action object speech - { -1, kVerbLook, 110, 172}, + { 62, -1, kVerbLook, 102, 167 }, // ---------------------------------- - { -1, kVerbLook, 109, 173}, - { -1, kVerbMove, 109, 174}, + { 62, -1, kVerbLook, 103, 166 }, + // ================================== + { 63, -1, kVerbLook, 110, 172 }, // ---------------------------------- - { -1, kVerbLook, 108, 334}, - { -1, kVerbTalk, 108, 333} -}; - -RoomTalkAction room102Actions[] = { - // num action object speech - { -1, kVerbLook, 100, 452}, + { 63, -1, kVerbLook, 109, 173 }, + { 63, -1, kVerbMove, 109, 174 }, // ---------------------------------- - { -1, kVerbLook, 101, 123} + { 63, -1, kVerbLook, 108, 334 }, + { 63, -1, kVerbTalk, 108, 333 }, + // ================================== + { 102, -1, kVerbLook, 100, 452 }, + { 102, -1, kVerbLook, 101, 123 }, }; const char *_text[][501] = { |