aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/supernova2/rooms.cpp54
-rw-r--r--engines/supernova2/rooms.h11
2 files changed, 23 insertions, 42 deletions
diff --git a/engines/supernova2/rooms.cpp b/engines/supernova2/rooms.cpp
index 6d22da76de..ceaccbac61 100644
--- a/engines/supernova2/rooms.cpp
+++ b/engines/supernova2/rooms.cpp
@@ -737,7 +737,7 @@ bool Cabin::interact(Action verb, Object &obj1, Object &obj2) {
}
else if (verb == ACTION_USE && obj1._id == CHAIR) {
if (_paid) {
- if (_var2) {
+ if (_shown[kMaxSection - 2]) {
_vm->paletteFadeOut();
_vm->setCurrentImage(31);
_vm->renderImage(0);
@@ -951,10 +951,6 @@ CulturePalace::CulturePalace(Supernova2Engine *vm, GameManager *gm) {
_id = CULTURE_PALACE;
_shown[0] = kShownTrue;
- _var1 = false;
- _var2 = false;
- _var3 = false;
-
_objectState[0] = Object(_id, kStringEntrance, kStringDefaultDescription, NULLOBJECT, EXIT, 1, 1, 0, CHECKOUT, 6);
_objectState[1] = Object(_id, kStringCulturePalace, kStringFascinating, NULLOBJECT, NULLTYPE, 0, 0, 0);
_objectState[2] = Object(_id, kStringTaxis, kStringTaxisDescription, NULLOBJECT, NULLTYPE, 3, 3, 0);
@@ -1013,10 +1009,10 @@ bool CulturePalace::interact(Action verb, Object &obj1, Object &obj2) {
int e;
if (verb == ACTION_TALK && obj1._id == AXACUSSER) {
- if (_var3) {
+ if (_shown[kMaxSection - 3]) {
_vm->renderImage(1);
_gm->reply(kStringThankYou, 2, 1);
- } else if (_var2) {
+ } else if (_shown[kMaxSection - 2]) {
_vm->renderImage(1);
_gm->reply(kStringWhatYouOffer, 2, 1);
} else {
@@ -1052,7 +1048,7 @@ bool CulturePalace::interact(Action verb, Object &obj1, Object &obj2) {
_gm->reply(kStringOnlyParticipation, 2, 1);
_gm->say(kStringWhatForIt);
_gm->reply(kStringMakeOffer, 2, 1);
- _var2 = true;
+ _shown[kMaxSection - 2] = true;
}
break;
}
@@ -1064,7 +1060,7 @@ bool CulturePalace::interact(Action verb, Object &obj1, Object &obj2) {
_gm->drawMapExits();
_gm->drawCommandBox();
}
- else if (verb == ACTION_GIVE && obj2._id == AXACUSSER && _var2) {
+ else if (verb == ACTION_GIVE && obj2._id == AXACUSSER && _shown[kMaxSection - 2]) {
_vm->renderImage(1);
if (obj1._id != MONEY)
notEnoughMoney();
@@ -1082,8 +1078,8 @@ bool CulturePalace::interact(Action verb, Object &obj1, Object &obj2) {
_vm->renderImage(1 + 128);
setSectionVisible(2, false);
_gm->reply(kStringIdiot, 0, 0);
- _var2 = false;
- _var3 = true;
+ _shown[kMaxSection - 2] = false;
+ _shown[kMaxSection - 3] = true;
_gm->_rooms[CHECKOUT]->addSentence(1,1);
_gm->drawStatus();
_gm->drawInventory();
@@ -1114,20 +1110,14 @@ Checkout::Checkout(Supernova2Engine *vm, GameManager *gm) {
_id = CHECKOUT;
_shown[0] = kShownTrue;
- _var1 = false;
- _var2 = 0;
- _var3 = false;
- _var4 = false;
- _var5 = false;
-
_objectState[0] = Object(_id, kStringEntrance, kStringDefaultDescription, KP_ENTRANCE, EXIT, 0, 0, 0, NULLROOM, 3);
_objectState[1] = Object(_id, kStringExit, kStringDefaultDescription, NULLOBJECT, EXIT, 255, 255, 0, CULTURE_PALACE, 22);
_objectState[2] = Object(_id, kStringAxacussian, kStringDefaultDescription, AXACUSSER, TALK, 1, 1, 0);
}
void Checkout::onEntrance() {
- if (!_var3) {
- _var3 = true;
+ if (!_shown[kMaxSection - 3]) {
+ _shown[kMaxSection - 3] = true;
_gm->reply(kStringAtMusicContest, 1, 1 + 128);
_gm->say(kStringNoImitation);
_gm->reply(kStringGoodJoke, 1, 1 + 128);
@@ -1175,11 +1165,11 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) {
kStringCheckout13
};
if (verb == ACTION_WALK && obj1._id == KP_ENTRANCE) {
- if (_var4) {
+ if (_shown[kMaxSection - 4]) {
_vm->renderImage(2);
_gm->reply(kStringCheckout14, 0, 0);
_vm->renderImage(2 + 128);
- } else if (_var2 == 0) {
+ } else if (_shown[kMaxSection - 2] == 0) {
_vm->renderImage(2);
//_gm->reply("atnuhh", 0, 0);
_gm->reply(kStringCheckout15, 0, 0);
@@ -1190,13 +1180,13 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) {
} else
_gm->say(kStringCheckout18);
_gm->drawGUI();
- } else if (_var2 == 1) {
+ } else if (_shown[kMaxSection - 2] == 1) {
_gm->reply(kStringCheckout19, 1, 1 + 128);
} else {
if (_gm->_state._tipsy) {
_vm->setCurrentImage(22);
_vm->renderImage(0);
- if (_var5 && _gm->_state._admission >= 2)
+ if (_shown[kMaxSection - 5] && _gm->_state._admission >= 2)
appearance();
else {
_gm->dialog(3, _gm->_dials, dialStage1, 0);
@@ -1252,11 +1242,11 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) {
_vm->removeMessage();
_gm->say(kStringCheckout29);
_vm->renderRoom(*this);
- if (_var5)
+ if (_shown[kMaxSection - 5])
_vm->renderMessage(kStringCheckout30);
else
_vm->renderMessage(kStringCheckout31);
- _var4 = true;
+ _shown[kMaxSection - 4] = true;
_gm->drawGUI();
}
} else {
@@ -1267,11 +1257,11 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) {
}
}
} else if (verb == ACTION_GIVE && obj1._id == CHIP && obj2._id == AXACUSSER &&
- _var2 == 1) {
+ _shown[kMaxSection - 2] == 1) {
_gm->_inventory.remove(obj1);
- _var5 = true;
+ _shown[kMaxSection - 5] = true;
_gm->reply(kStringCheckout37, 1, 1 + 128);
- _var2 = 2;
+ _shown[kMaxSection - 2] = 2;
_gm->drawGUI();
} else if (verb == ACTION_GIVE && obj1._id == CARD && obj2._id == AXACUSSER) {
_gm->_inventory.remove(*_gm->_rooms[CULTURE_PALACE]->getObject(4));
@@ -1279,19 +1269,19 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) {
_gm->reply(kStringCheckout35, 1, 1 + 128);
if (_gm->dialog(2, _gm->_dials, dialCheckout2, 0) == 1) {
_gm->reply(kStringCheckout36, 1, 1 + 128);
- _var2 = 1;
+ _shown[kMaxSection - 2] = 1;
} else {
_gm->reply(kStringCheckout37, 1, 1 + 128);
- _var2 = 2;
+ _shown[kMaxSection - 2] = 2;
}
_gm->drawGUI();
} else if (verb == ACTION_TALK && obj1._id == AXACUSSER) {
- if (_var4) {
+ if (_shown[kMaxSection - 4]) {
_gm->say(kStringCheckout38);
_gm->reply(kStringCheckout39, 1, 1 + 128);
_gm->drawGUI();
} else {
- switch (_var2) {
+ switch (_shown[kMaxSection - 2]) {
case 0:
addSentence(2, 1);
switch (_gm->dialog(3, _gm->_dials, dialCheckout1, 1)) {
diff --git a/engines/supernova2/rooms.h b/engines/supernova2/rooms.h
index 16865a0120..3e0f75c457 100644
--- a/engines/supernova2/rooms.h
+++ b/engines/supernova2/rooms.h
@@ -64,7 +64,7 @@ public:
protected:
int _fileNumber;
- bool _shown[kMaxSection];
+ char _shown[kMaxSection];
byte _sentenceRemoved[kMaxDialog];
Object _objectState[kMaxObject];
RoomId _id;
@@ -138,7 +138,6 @@ public:
private:
bool _paid;
- bool _var2; // Not sure what this variable means yet
};
class Kiosk : public Room {
@@ -160,9 +159,6 @@ public:
private:
void notEnoughMoney();
- bool _var1;
- bool _var2;
- bool _var3;
};
class Checkout : public Room {
@@ -174,11 +170,6 @@ public:
private:
void appearance();
- bool _var1;
- int _var2;
- bool _var3;
- bool _var4;
- bool _var5;
};
class City1 : public Room {