aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorJaromir Wysoglad2019-06-07 13:25:18 +0200
committerThierry Crozat2019-07-28 15:09:14 +0100
commitf4a2441a7cd5813007c3b4e4eb2d4aa3d0f53769 (patch)
tree80f9c765e2dc6e688368b7f34f89cd85b2787c3f /engines
parentaaffee83c0e0bdbd79f8ea629d5971ef1c8bc9ab (diff)
downloadscummvm-rg350-f4a2441a7cd5813007c3b4e4eb2d4aa3d0f53769.tar.gz
scummvm-rg350-f4a2441a7cd5813007c3b4e4eb2d4aa3d0f53769.tar.bz2
scummvm-rg350-f4a2441a7cd5813007c3b4e4eb2d4aa3d0f53769.zip
SUPERNOVA2: Add BotomLeftDoor room
Diffstat (limited to 'engines')
-rw-r--r--engines/supernova2/rooms.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/supernova2/rooms.cpp b/engines/supernova2/rooms.cpp
index 9de8946f2c..b6fa63fe1c 100644
--- a/engines/supernova2/rooms.cpp
+++ b/engines/supernova2/rooms.cpp
@@ -2570,6 +2570,12 @@ BottomLeftDoor::BottomLeftDoor(Supernova2Engine *vm, GameManager *gm) {
_fileNumber = 6;
_id = BOTTOM_LEFT_DOOR;
_shown[0] = kShownTrue;
+ _shown[19] = kShownTrue;
+ _shown[29] = kShownTrue;
+
+ _objectState[0] = Object(_id, kStringRight, kStringDefaultDescription, G_RIGHT, EXIT, 1, 1, 0, PYR_ENTRANCE, 14);
+ _objectState[1] = Object(_id, kStringLeft, kStringDefaultDescription, G_LEFT, EXIT, 2, 2, 0, PYR_ENTRANCE, 10);
+ _objectState[2] = Object(_id, kStringDoor, kStringMassive, DOOR, EXIT | OPENABLE | CLOSED, 0, 0, 0, PYR_ENTRANCE, 2);
}
void BottomLeftDoor::onEntrance() {
@@ -2580,6 +2586,15 @@ void BottomLeftDoor::animation() {
}
bool BottomLeftDoor::interact(Action verb, Object &obj1, Object &obj2) {
+ if (_gm->move(verb, obj1)) {
+ if (verb == ACTION_WALK && obj1._id == G_LEFT)
+ _gm->changeRoom(UPSTAIRS2);
+ else
+ _gm->passageConstruction();
+ _gm->_newRoom = true;
+ }
+ else
+ return false;
return true;
}