aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/rooms.cpp
diff options
context:
space:
mode:
authorStrangerke2017-11-15 23:11:38 +0100
committerThierry Crozat2018-01-23 02:15:40 +0000
commit45595b9683b9d8ba88bf94d2ba8aaa931551865c (patch)
tree4bbee8dd03f9364cea9ff5eee35eb1f568fd9403 /engines/supernova/rooms.cpp
parentd8e221e206981ed0b9c9f383fd1dacfc86063ea3 (diff)
downloadscummvm-rg350-45595b9683b9d8ba88bf94d2ba8aaa931551865c.tar.gz
scummvm-rg350-45595b9683b9d8ba88bf94d2ba8aaa931551865c.tar.bz2
scummvm-rg350-45595b9683b9d8ba88bf94d2ba8aaa931551865c.zip
SUPERNOVA: enable general dialogs in AxacussIntersection and AxacussExit
Diffstat (limited to 'engines/supernova/rooms.cpp')
-rw-r--r--engines/supernova/rooms.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/engines/supernova/rooms.cpp b/engines/supernova/rooms.cpp
index 7bae002b6b..b598b0dc4a 100644
--- a/engines/supernova/rooms.cpp
+++ b/engines/supernova/rooms.cpp
@@ -2250,8 +2250,6 @@ bool ArsanoMeetup2::interact(Action verb, Object &obj1, Object &obj2) {
bool ArsanoMeetup3::interact(Action verb, Object &obj1, Object &obj2) {
byte row2[6] = {1, 1, 1, 1, 0, 0};
byte row3[6] = {1, 1, 0, 0, 0, 0};
-
- // TODO: Hack, to be move away and renamed when the other uses are found
byte rowsX[6] = {1, 1, 1, 0, 0, 0};
if ((verb == ACTION_WALK) && (obj1._id == STAR))
@@ -2831,6 +2829,8 @@ bool AxacussBcorridor::interact(Action verb, Object &obj1, Object &obj2) {
}
bool AxacussIntersection::interact(Action verb, Object &obj1, Object &obj2) {
+ byte rowsX[6] = {1, 1, 1, 0, 0, 0};
+
if (((verb == ACTION_WALK) || (verb == ACTION_OPEN)) && (obj1._id == DOOR) && !isSectionVisible(1))
_gm->guardShot();
else if ((verb == ACTION_OPEN) && (obj1._id == DOOR) && !obj1.hasProperty(OPENED)) {
@@ -2844,8 +2844,7 @@ bool AxacussIntersection::interact(Action verb, Object &obj1, Object &obj2) {
_gm->_rooms[CORRIDOR9]->getObject(1)->disableProperty(OPENED);
return false;
} else if ((verb == ACTION_TALK) && (obj1._id == GUARDIAN)) {
- // FIXME: refactor _rowsX and _dialogsX
- // _gm->dialog(3, &rowsx, &_dialogsX, 0);
+ _gm->dialog(3, rowsX, _dialogsX, 0);
_gm->guardShot();
} else if ((verb == ACTION_TAKE) && (obj1._id == MASTERKEYCARD)) {
_gm->great(0);
@@ -2860,11 +2859,12 @@ bool AxacussIntersection::interact(Action verb, Object &obj1, Object &obj2) {
}
bool AxacussExit::interact(Action verb, Object &obj1, Object &obj2) {
+ byte rowsX[6] = {1, 1, 1, 0, 0, 0};
+
if (((verb == ACTION_WALK) || (verb == ACTION_OPEN)) && (obj1._id == DOOR) && !_gm->_state._powerOff)
_gm->guard3Shot();
else if ((verb == ACTION_TALK) && (obj1._id == GUARDIAN)) {
- // FIXME: refactor _rowsX and _dialogsX
- // _gm->dialog(3, &_rowsX, &_dialogsX,0);
+ _gm->dialog(3, rowsX, _dialogsX,0);
_gm->guard3Shot();
} else if ((verb == ACTION_USE) && Object::combine(obj1, obj2, LAMP, MAGNET)) {
_gm->_inventory.remove(*_gm->_rooms[CELL]->getObject(7));