aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova/supernova1
diff options
context:
space:
mode:
authorJaromir Wysoglad2019-06-21 22:30:43 +0200
committerThierry Crozat2019-07-28 15:09:14 +0100
commit3cf9cfbf78433e81ac5dcc39b31f5fa76983bde4 (patch)
tree883aacdbb2473884e15fc81c8f20fda6316a2850 /engines/supernova/supernova1
parenteb2a017a68e965b46881a2b41d9178d5e20b05b2 (diff)
downloadscummvm-rg350-3cf9cfbf78433e81ac5dcc39b31f5fa76983bde4.tar.gz
scummvm-rg350-3cf9cfbf78433e81ac5dcc39b31f5fa76983bde4.tar.bz2
scummvm-rg350-3cf9cfbf78433e81ac5dcc39b31f5fa76983bde4.zip
SUPERNOVA: Merge in the supernova2 engine.
Diffstat (limited to 'engines/supernova/supernova1')
-rw-r--r--engines/supernova/supernova1/rooms.cpp48
-rw-r--r--engines/supernova/supernova1/rooms.h154
-rw-r--r--engines/supernova/supernova1/state.cpp37
-rw-r--r--engines/supernova/supernova1/state.h2
-rw-r--r--engines/supernova/supernova1/stringid.h188
5 files changed, 369 insertions, 60 deletions
diff --git a/engines/supernova/supernova1/rooms.cpp b/engines/supernova/supernova1/rooms.cpp
index 4c5290308d..7190a7584a 100644
--- a/engines/supernova/supernova1/rooms.cpp
+++ b/engines/supernova/supernova1/rooms.cpp
@@ -35,7 +35,7 @@ Intro::Intro(SupernovaEngine *vm, GameManager1 *gm) {
_gm = gm;
_fileNumber = -1;
- _id = INTRO;
+ _id = INTRO1;
_shown[0] = kShownFalse;
_objectState[0] =
@@ -162,7 +162,7 @@ bool Intro::animate(int section1, int section2, int duration) {
}
bool Intro::animate(int section1, int section2, int duration,
- MessagePosition position, StringId textId) {
+ MessagePosition position, int textId) {
Common::KeyCode key = Common::KEYCODE_INVALID;
const Common::String& text = _vm->getGameString(textId);
_vm->renderMessage(text, position);
@@ -187,7 +187,7 @@ bool Intro::animate(int section1, int section2, int duration,
}
bool Intro::animate(int section1, int section2, int section3, int section4,
- int duration, MessagePosition position, StringId textId) {
+ int duration, MessagePosition position, int textId) {
Common::KeyCode key = Common::KEYCODE_INVALID;
const Common::String& text = _vm->getGameString(textId);
_vm->renderMessage(text, position);
@@ -266,7 +266,7 @@ void Intro::cutscene() {
exitOnEscape(28);
_vm->removeMessage();
- StringId textCounting[4] =
+ int textCounting[4] =
{kStringIntroCutscene7, kStringIntroCutscene8, kStringIntroCutscene9, kStringIntroCutscene10};
_vm->setCurrentImage(31);
_vm->renderImage(0);
@@ -461,7 +461,7 @@ ShipCorridor::ShipCorridor(SupernovaEngine *vm, GameManager1 *gm) {
_gm = gm;
_fileNumber = 17;
- _id = CORRIDOR;
+ _id = CORRIDOR_ROOM;
_shown[0] = kShownTrue;
_shown[4] = kShownTrue;
@@ -518,7 +518,7 @@ ShipHall::ShipHall(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[2] = Object(_id, kStringHatch, kStringStasisHatchDescription, NULLOBJECT, OPENABLE | CLOSED | EXIT, 1, 1, 2, SLEEP, 8);
_objectState[3] = Object(_id, kStringSlot, kStringSlotDescription, SLEEP_SLOT, COMBINABLE, 2, 2, 0, NULLROOM, 0);
_objectState[4] = Object(_id, kStringLadder, kStringDefaultDescription, NULLOBJECT, NULLTYPE, 3, SLEEP, 0, NULLROOM, 0);
- _objectState[5] = Object(_id, kStringCorridor, kStringDefaultDescription, NULLOBJECT, EXIT, 6, 6, 0, CORRIDOR, 19);
+ _objectState[5] = Object(_id, kStringCorridor, kStringDefaultDescription, NULLOBJECT, EXIT, 6, 6, 0, CORRIDOR_ROOM, 19);
}
bool ShipHall::interact(Action verb, Object &obj1, Object &obj2) {
@@ -869,7 +869,7 @@ ShipCabinL1::ShipCabinL1(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[3] = Object(_id, kStringMagnete, kStringMagneteDescription, NULLOBJECT, UNNECESSARY, 8, 8, 0, NULLROOM, 0);
_objectState[4] = Object(_id, kStringImage, kStringGenericDescription4, NULLOBJECT, UNNECESSARY, 9, 9, 0);
_objectState[5] = Object(_id, kStringPen, kStringPenDescription, PEN, TAKE | COMBINABLE, 10, 10, 5 | 128);
- _objectState[6] = Object(_id, kStringHatch, kStringDefaultDescription, NULLOBJECT, OPENABLE | OPENED | EXIT, 3, 3, 24 | 128, CORRIDOR, 9);
+ _objectState[6] = Object(_id, kStringHatch, kStringDefaultDescription, NULLOBJECT, OPENABLE | OPENED | EXIT, 3, 3, 24 | 128, CORRIDOR_ROOM, 9);
_objectState[7] = Object(_id, kStringSlot, kStringSlotDescription, NULLOBJECT, COMBINABLE, 0, 0, 0);
_objectState[8] = Object(_id, kStringShelf, kStringDefaultDescription, NULLOBJECT, OPENABLE | CLOSED, 1, 1, 0);
_objectState[9] = Object(_id, kStringCompartment, kStringDefaultDescription, NULLOBJECT, OPENABLE | CLOSED, 2, 2, 0);
@@ -905,7 +905,7 @@ ShipCabinL2::ShipCabinL2(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[16] = Object(_id, kStringJunk,kStringJunkDescription,NULLOBJECT,UNNECESSARY,38,38,0);
_objectState[17] = Object(_id, kStringMagnete,kStringMagneteDescription,NULLOBJECT,UNNECESSARY,23,23,0);
_objectState[18] = Object(_id, kStringToilet,kStringDefaultDescription,BATHROOM_DOOR,EXIT,255,255,0,BATHROOM,22);
- _objectState[19] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,24 | 128,CORRIDOR,9);
+ _objectState[19] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,24 | 128,CORRIDOR_ROOM,9);
_objectState[20] = Object(_id, kStringSlot,kStringSlotDescription,NULLOBJECT,COMBINABLE,0,0,0);
_objectState[21] = Object(_id, kStringShelf,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,1,1,0);
_objectState[22] = Object(_id, kStringCompartment,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,2,2,0);
@@ -979,7 +979,7 @@ ShipCabinL3::ShipCabinL3(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[8] = Object(_id, kStringWire,kStringDefaultDescription,WIRE,COMBINABLE,18,18,0);
_objectState[9] = Object(_id, kStringWire,kStringDefaultDescription,WIRE2,COMBINABLE,19,19,0);
_objectState[10] = Object(_id, kStringPlug,kStringDefaultDescription,PLUG,COMBINABLE,20,20,0);
- _objectState[11] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,24 | 128,CORRIDOR,9);
+ _objectState[11] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,24 | 128,CORRIDOR_ROOM,9);
_objectState[12] = Object(_id, kStringSlot,kStringSlotDescription,NULLOBJECT,COMBINABLE,0,0,0);
_objectState[13] = Object(_id, kStringShelf,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,1,1,0);
_objectState[14] = Object(_id, kStringCompartment,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,2,2,0);
@@ -1081,7 +1081,7 @@ ShipCabinR1::ShipCabinR1(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[0] = Object(_id, kStringImage,kStringImageDescription1,NULLOBJECT,UNNECESSARY,5,5,0);
_objectState[1] = Object(_id, kStringDrawingInstruments,kStringDrawingInstrumentsDescription,NULLOBJECT,UNNECESSARY,6,6,0);
_objectState[2] = Object(_id, kStringMagnete,kStringMagneteDescription,NULLOBJECT,UNNECESSARY,7,7,0);
- _objectState[3] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,15 | 128,CORRIDOR,5);
+ _objectState[3] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,15 | 128,CORRIDOR_ROOM,5);
_objectState[4] = Object(_id, kStringSlot,kStringSlotDescription,NULLOBJECT,COMBINABLE,0,0,0);
_objectState[5] = Object(_id, kStringShelf,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,1,1,0);
_objectState[6] = Object(_id, kStringCompartment,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,2,2,0);
@@ -1103,7 +1103,7 @@ ShipCabinR2::ShipCabinR2(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[0] = Object(_id, kStringChessGame,kStringChessGameDescription1,NULLOBJECT,UNNECESSARY,11,11,0);
_objectState[1] = Object(_id, kStringTennisRacket,kStringTennisRacketDescription,NULLOBJECT,UNNECESSARY,8,8,0);
_objectState[2] = Object(_id, kStringTennisBall,kStringGenericDescription2,NULLOBJECT,UNNECESSARY,9,9,0);
- _objectState[3] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,15 | 128,CORRIDOR,5);
+ _objectState[3] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | OPENED | EXIT,3,3,15 | 128,CORRIDOR_ROOM,5);
_objectState[4] = Object(_id, kStringSlot,kStringSlotDescription,NULLOBJECT,COMBINABLE,0,0,0);
_objectState[5] = Object(_id, kStringShelf,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,1,1,0);
_objectState[6] = Object(_id, kStringCompartment,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,2,2,0);
@@ -1140,7 +1140,7 @@ ShipCabinR3::ShipCabinR3(SupernovaEngine *vm, GameManager1 *gm) {
_objectState[15] = Object(_id, kStringCompartment,kStringCompartmentDescription,SHELF4,OPENABLE | CLOSED,24,25,13);
_objectState[16] = Object(_id, kStringBook,kStringBookHitchhiker,BOOK,TAKE,26,26,14);
_objectState[17] = Object(_id, kStringDiscman,kStringDiscmanDescription,DISCMAN,TAKE | COMBINABLE,33,33,16);
- _objectState[18] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | EXIT,3,3,15 | 128,CORRIDOR,5);
+ _objectState[18] = Object(_id, kStringHatch,kStringDefaultDescription,NULLOBJECT,OPENABLE | EXIT,3,3,15 | 128,CORRIDOR_ROOM,5);
_objectState[19] = Object(_id, kStringSlot,kStringSlotDescription,NULLOBJECT,COMBINABLE,0,0,0);
_objectState[20] = Object(_id, kStringShelf,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,1,1,0);
_objectState[21] = Object(_id, kStringCompartment,kStringDefaultDescription,NULLOBJECT,OPENABLE | CLOSED,2,2,0);
@@ -1194,7 +1194,7 @@ bool ShipCabinR3::interact(Action verb, Object &obj1, Object &obj2) {
void ShipCabinR3::onEntrance() {
for (int i = 0; i < 3; ++i)
- _gm->_inventory.add(*_gm->_rooms[INTRO]->getObject(i));
+ _gm->_inventory.add(*_gm->_rooms[INTRO1]->getObject(i));
setRoomSeen(true);
}
@@ -1221,7 +1221,7 @@ ShipAirlock::ShipAirlock(SupernovaEngine *vm, GameManager1 *gm) {
_shown[0] = kShownTrue;
_shown[6] = kShownTrue;
- _objectState[0] = Object(_id, kStringHatch,kStringHatchDescription1,NULLOBJECT,EXIT | OPENABLE | OPENED | CLOSED,0,0,0,CORRIDOR,10);
+ _objectState[0] = Object(_id, kStringHatch,kStringHatchDescription1,NULLOBJECT,EXIT | OPENABLE | OPENED | CLOSED,0,0,0,CORRIDOR_ROOM,10);
_objectState[1] = Object(_id, kStringHatch,kStringHatchDescription2,NULLOBJECT,EXIT | OPENABLE | CLOSED,1,1,0,HOLD,14);
_objectState[2] = Object(_id, kStringButton,kStringDefaultDescription,BUTTON1,PRESS,2,2,0);
_objectState[3] = Object(_id, kStringButton,kStringDefaultDescription,BUTTON2,PRESS,3,3,0);
@@ -2591,7 +2591,7 @@ bool ArsanoMeetup2::interact(Action verb, Object &obj1, Object &obj2) {
if (((verb == ACTION_WALK) &&
((obj1._id == SPACESHIP) || (obj1._id == ROGER_W))) ||
((verb == ACTION_TALK) && (obj1._id == ROGER_W))) {
- _gm->changeRoom(INTRO);
+ _gm->changeRoom(INTRO1);
_vm->setCurrentImage(30);
_vm->renderImage(0);
_vm->paletteBrightness();
@@ -2823,17 +2823,17 @@ bool ArsanoMeetup3::interact(Action verb, Object &obj1, Object &obj2) {
_gm->reply(kStringArsanoMeetup3_28, 1, 1 + 128);
_vm->paletteFadeOut();
// Remove all objects from the inventory except the Knife, Watch and Discman
- bool has_knife = _gm->_rooms[INTRO]->getObject(1)->hasProperty(CARRIED);
- bool has_watch = _gm->_rooms[INTRO]->getObject(2)->hasProperty(CARRIED);
- bool has_discman = _gm->_rooms[INTRO]->getObject(3)->hasProperty(CARRIED);
+ bool has_knife = _gm->_rooms[INTRO1]->getObject(1)->hasProperty(CARRIED);
+ bool has_watch = _gm->_rooms[INTRO1]->getObject(2)->hasProperty(CARRIED);
+ bool has_discman = _gm->_rooms[INTRO1]->getObject(3)->hasProperty(CARRIED);
_gm->_inventory.clear();
_gm->_inventoryScroll = 0;
if (has_knife)
- _gm->_inventory.add(*_gm->_rooms[INTRO]->getObject(1));
+ _gm->_inventory.add(*_gm->_rooms[INTRO1]->getObject(1));
if (has_watch)
- _gm->_inventory.add(*_gm->_rooms[INTRO]->getObject(2));
+ _gm->_inventory.add(*_gm->_rooms[INTRO1]->getObject(2));
if (has_discman)
- _gm->_inventory.add(*_gm->_rooms[INTRO]->getObject(3));
+ _gm->_inventory.add(*_gm->_rooms[INTRO1]->getObject(3));
_gm->changeRoom(CELL);
_gm->_state._dream = true;
} else
@@ -3158,7 +3158,7 @@ bool AxacussCorridor4::interact(Action verb, Object &obj1, Object &obj2) {
} else if ((verb == ACTION_TAKE) && (obj1._id == WATCH) && !obj1.hasProperty(CARRIED)) {
setSectionVisible(29, false);
getObject(4)->_click = 255;
- _gm->takeObject(*_gm->_rooms[INTRO]->getObject(2));
+ _gm->takeObject(*_gm->_rooms[INTRO1]->getObject(2));
if (isSectionVisible(9))
_vm->renderImage(9);
} else
@@ -4004,7 +4004,7 @@ AxacussStation::AxacussStation(SupernovaEngine *vm, GameManager1 *gm) {
bool AxacussStation::interact(Action verb, Object &obj1, Object &obj2) {
if ((verb == ACTION_LOOK) && (obj1._id == STATION_SIGN)) {
- _gm->changeRoom(SIGN);
+ _gm->changeRoom(SIGN_ROOM);
} else if ((verb == ACTION_WALK) && (obj1._id == DOOR) && obj1.hasProperty(OPENED)) {
_gm->great(0);
_gm->_guiEnabled = false;
@@ -4022,7 +4022,7 @@ AxacussSign::AxacussSign(SupernovaEngine *vm, GameManager1 *gm) {
_gm = gm;
_fileNumber = 32;
- _id = SIGN;
+ _id = SIGN_ROOM;
_shown[0] = kShownTrue;
_shown[1] = kShownTrue;
diff --git a/engines/supernova/supernova1/rooms.h b/engines/supernova/supernova1/rooms.h
index c49e8356c9..0b0dbc432b 100644
--- a/engines/supernova/supernova1/rooms.h
+++ b/engines/supernova/supernova1/rooms.h
@@ -26,6 +26,7 @@
#include "common/str.h"
#include "supernova/msn_def.h"
+#include "supernova/supernova1/stringid.h"
#include "supernova/room.h"
namespace Common {
@@ -45,11 +46,12 @@ public:
virtual void onEntrance();
private:
+ GameManager1 *_gm;
bool animate(int section1, int section2, int duration);
bool animate(int section1, int section2, int duration, MessagePosition position,
- StringId text);
+ int text);
bool animate(int section1, int section2, int section3, int section4, int duration,
- MessagePosition position, StringId text);
+ MessagePosition position, int text);
void titleScreen();
void titleFadeIn();
@@ -66,6 +68,9 @@ public:
ShipCorridor(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ShipHall: public Room {
@@ -73,6 +78,9 @@ public:
ShipHall(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ShipSleepCabin: public Room {
@@ -84,6 +92,7 @@ public:
virtual void onEntrance();
private:
+ GameManager1 *_gm;
byte _color;
};
@@ -96,12 +105,16 @@ public:
virtual void onEntrance();
private:
+ GameManager1 *_gm;
byte _color;
};
class ShipCabinL1: public Room {
public:
ShipCabinL1(SupernovaEngine *vm, GameManager1 *gm);
+
+private:
+ GameManager1 *_gm;
};
class ShipCabinL2 : public Room {
@@ -109,6 +122,9 @@ public:
ShipCabinL2(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ShipCabinL3 : public Room {
@@ -116,16 +132,25 @@ public:
ShipCabinL3(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ShipCabinR1 : public Room {
public:
ShipCabinR1(SupernovaEngine *vm, GameManager1 *gm);
+
+private:
+ GameManager1 *_gm;
};
class ShipCabinR2 : public Room {
public:
ShipCabinR2(SupernovaEngine *vm, GameManager1 *gm);
+
+private:
+ GameManager1 *_gm;
};
class ShipCabinR3 : public Room {
@@ -134,11 +159,17 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class ShipCabinBathroom : public Room {
public:
ShipCabinBathroom(SupernovaEngine *vm, GameManager1 *gm);
+
+private:
+ GameManager1 *_gm;
};
class ShipAirlock : public Room {
@@ -147,6 +178,9 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class ShipHold : public Room {
@@ -155,6 +189,9 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class ShipLandingModule : public Room {
@@ -162,6 +199,9 @@ public:
ShipLandingModule(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ShipGenerator : public Room {
@@ -169,11 +209,17 @@ public:
ShipGenerator(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ShipOuterSpace : public Room {
public:
ShipOuterSpace(SupernovaEngine *vm, GameManager1 *gm);
+
+private:
+ GameManager1 *_gm;
};
@@ -184,11 +230,17 @@ public:
virtual void onEntrance();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class ArsanoCave : public Room {
public:
ArsanoCave(SupernovaEngine *vm, GameManager1 *gm);
+
+private:
+ GameManager1 *_gm;
};
class ArsanoMeetup : public Room {
@@ -202,6 +254,7 @@ public:
private:
byte _sign;
byte _beacon;
+ GameManager1 *_gm;
};
class ArsanoEntrance : public Room {
@@ -212,10 +265,11 @@ public:
virtual void animation();
private:
- StringId _dialog1[5];
- StringId _dialog2[5];
- StringId _dialog3[5];
+ int _dialog1[5];
+ int _dialog2[5];
+ int _dialog3[5];
byte _eyewitness;
+ GameManager1 *_gm;
};
class ArsanoRemaining : public Room {
@@ -227,6 +281,7 @@ public:
private:
bool _chewing;
int _i;
+ GameManager1 *_gm;
};
class ArsanoRoger : public Room {
@@ -238,9 +293,10 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
private:
- StringId _dialog1[4];
+ int _dialog1[4];
byte _eyewitness;
byte _hands;
+ GameManager1 *_gm;
};
class ArsanoGlider : public Room {
@@ -252,6 +308,7 @@ public:
private:
byte _sinus;
+ GameManager1 *_gm;
};
class ArsanoMeetup2 : public Room {
@@ -265,10 +322,11 @@ public:
private:
// TODO: change to 6, fix initialization
- StringId _dialog1[2];
- StringId _dialog2[2];
- StringId _dialog3[4];
- StringId _dialog4[3];
+ int _dialog1[2];
+ int _dialog2[2];
+ int _dialog3[4];
+ int _dialog4[3];
+ GameManager1 *_gm;
// FIXME: Remove following unused bool variables?
//bool _found;
@@ -282,11 +340,12 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
private:
- StringId _dialog2[4];
- StringId _dialog3[2];
+ int _dialog2[4];
+ int _dialog3[2];
// TODO: Hack, to be move away and renamed when the other uses are found
- StringId _dialogsX[6];
+ int _dialogsX[6];
+ GameManager1 *_gm;
};
@@ -298,6 +357,9 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
virtual void animation();
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor1 : public Room {
@@ -305,6 +367,9 @@ public:
AxacussCorridor1(SupernovaEngine *vm, GameManager1 *gm);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor2 : public Room {
@@ -312,6 +377,9 @@ public:
AxacussCorridor2(SupernovaEngine *vm, GameManager1 *gm);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor3 : public Room {
@@ -319,6 +387,9 @@ public:
AxacussCorridor3(SupernovaEngine *vm, GameManager1 *gm);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor4 : public Room {
@@ -328,6 +399,9 @@ public:
virtual void onEntrance();
virtual void animation();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor5 : public Room {
@@ -342,11 +416,13 @@ private:
bool handleMoneyDialog();
// TODO: Change to 6, or change struct, and fix initialization
- StringId _dialog1[2];
- StringId _dialog2[2];
- StringId _dialog3[4];
+ int _dialog1[2];
+ int _dialog2[2];
+ int _dialog3[4];
byte _rows[6];
+
+ GameManager1 *_gm;
};
class AxacussCorridor6 : public Room {
@@ -355,6 +431,9 @@ public:
virtual void onEntrance();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor7 : public Room {
@@ -362,6 +441,9 @@ public:
AxacussCorridor7(SupernovaEngine *vm, GameManager1 *gm);
virtual void onEntrance();
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor8 : public Room {
@@ -370,6 +452,9 @@ public:
virtual void onEntrance();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussCorridor9 : public Room {
@@ -378,6 +463,9 @@ public:
virtual void onEntrance();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussBcorridor : public Room {
@@ -386,6 +474,9 @@ public:
virtual void onEntrance();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussIntersection : public Room {
@@ -395,7 +486,8 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
private:
- StringId _dialogsX[6];
+ int _dialogsX[6];
+ GameManager1 *_gm;
};
class AxacussExit : public Room {
@@ -405,7 +497,8 @@ public:
virtual bool interact(Action verb, Object &obj1, Object &obj2);
private:
- StringId _dialogsX[6];
+ int _dialogsX[6];
+ GameManager1 *_gm;
};
class AxacussOffice1 : public Room {
@@ -413,6 +506,9 @@ public:
AxacussOffice1(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussOffice2 : public Room {
@@ -420,6 +516,9 @@ public:
AxacussOffice2(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussOffice3 : public Room {
@@ -427,6 +526,9 @@ public:
AxacussOffice3(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussOffice4 : public Room {
@@ -434,6 +536,9 @@ public:
AxacussOffice4(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussOffice5 : public Room {
@@ -442,6 +547,9 @@ public:
virtual void onEntrance();
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussElevator : public Room {
@@ -449,6 +557,9 @@ public:
AxacussElevator(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussStation : public Room {
@@ -456,6 +567,9 @@ public:
AxacussStation(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class AxacussSign : public Room {
@@ -463,6 +577,9 @@ public:
AxacussSign(SupernovaEngine *vm, GameManager1 *gm);
virtual bool interact(Action verb, Object &obj1, Object &obj2);
+
+private:
+ GameManager1 *_gm;
};
class Outro : public Room {
@@ -480,6 +597,7 @@ private:
MessagePosition position, const char *text);
Common::String _outroText;
+ GameManager1 *_gm;
};
}
diff --git a/engines/supernova/supernova1/state.cpp b/engines/supernova/supernova1/state.cpp
index fff5ad7993..f3f8bbac63 100644
--- a/engines/supernova/supernova1/state.cpp
+++ b/engines/supernova/supernova1/state.cpp
@@ -28,6 +28,7 @@
#include "supernova/screen.h"
#include "supernova/supernova.h"
#include "supernova/supernova1/state.h"
+#include "supernova/supernova1/stringid.h"
namespace Supernova {
@@ -75,7 +76,7 @@ bool GameManager1::serialize(Common::WriteStream *out) {
// Rooms
out->writeByte(_currentRoom->getId());
- for (int i = 0; i < NUMROOMS; ++i) {
+ for (int i = 0; i < NUMROOMS1; ++i) {
_rooms[i]->serialize(out);
}
@@ -144,7 +145,7 @@ bool GameManager1::deserialize(Common::ReadStream *in, int version) {
// Rooms
RoomId curRoomId = static_cast<RoomId>(in->readByte());
- for (int i = 0; i < NUMROOMS; ++i) {
+ for (int i = 0; i < NUMROOMS1; ++i) {
_rooms[i]->deserialize(in, version);
}
changeRoom(curRoomId);
@@ -179,7 +180,7 @@ static Common::String timeToString(int msec) {
GameManager1::GameManager1(SupernovaEngine *vm, Sound *sound)
: GameManager(vm, sound) {
initRooms();
- changeRoom(INTRO);
+ changeRoom(INTRO1);
initState();
}
@@ -188,8 +189,8 @@ GameManager1::~GameManager1() {
}
void GameManager1::destroyRooms() {
- delete _rooms[INTRO];
- delete _rooms[CORRIDOR];
+ delete _rooms[INTRO1];
+ delete _rooms[CORRIDOR_ROOM];
delete _rooms[HALL];
delete _rooms[SLEEP];
delete _rooms[COCKPIT];
@@ -236,8 +237,9 @@ void GameManager1::destroyRooms() {
delete _rooms[OFFICE_L];
delete _rooms[ELEVATOR];
delete _rooms[STATION];
- delete _rooms[SIGN];
+ delete _rooms[SIGN_ROOM];
delete _rooms[OUTRO];
+ delete _rooms;
}
void GameManager1::initState() {
@@ -297,8 +299,9 @@ void GameManager1::initState() {
}
void GameManager1::initRooms() {
- _rooms[INTRO] = new Intro(_vm, this);
- _rooms[CORRIDOR] = new ShipCorridor(_vm, this);
+ _rooms = new Room *[NUMROOMS1];
+ _rooms[INTRO1] = new Intro(_vm, this);
+ _rooms[CORRIDOR_ROOM] = new ShipCorridor(_vm, this);
_rooms[HALL] = new ShipHall(_vm, this);
_rooms[SLEEP] = new ShipSleepCabin(_vm, this);
_rooms[COCKPIT] = new ShipCockpit(_vm, this);
@@ -345,7 +348,7 @@ void GameManager1::initRooms() {
_rooms[OFFICE_L] = new AxacussOffice5(_vm, this);
_rooms[ELEVATOR] = new AxacussElevator(_vm, this);
_rooms[STATION] = new AxacussStation(_vm, this);
- _rooms[SIGN] = new AxacussSign(_vm, this);
+ _rooms[SIGN_ROOM] = new AxacussSign(_vm, this);
_rooms[OUTRO] = new Outro(_vm, this);
}
@@ -408,7 +411,7 @@ void GameManager1::updateEvents() {
case Common::EVENT_LBUTTONUP:
// fallthrough
case Common::EVENT_RBUTTONUP:
- if (_currentRoom->getId() != INTRO && _sound->isPlaying())
+ if (_currentRoom->getId() != INTRO1 && _sound->isPlaying())
return;
_mouseClicked = true;
// fallthrough
@@ -449,7 +452,7 @@ void GameManager1::telomat(int nr) {
"Alga Hurz Li"
};
- StringId dial1[4];
+ int dial1[4];
dial1[0] = kStringTelomat1;
dial1[1] = kNoString;
dial1[2] = kStringTelomat3;
@@ -457,7 +460,7 @@ void GameManager1::telomat(int nr) {
static byte rows1[3] = {1, 2, 1};
- StringId dial2[4];
+ int dial2[4];
dial2[0] = kStringTelomat4;
dial2[1] = kStringTelomat5;
dial2[2] = kStringTelomat6;
@@ -947,7 +950,7 @@ void GameManager1::guardWalkEvent() {
}
void GameManager1::taxiEvent() {
- if (_currentRoom->getId() == SIGN) {
+ if (_currentRoom->getId() == SIGN_ROOM) {
changeRoom(STATION);
_vm->renderRoom(*_currentRoom);
}
@@ -966,8 +969,8 @@ void GameManager1::taxiEvent() {
_vm->renderImage(invertSection(i - 1));
_vm->renderImage(i);
}
- _rooms[SIGN]->setSectionVisible(2, false);
- _rooms[SIGN]->setSectionVisible(3, true);
+ _rooms[SIGN_ROOM]->setSectionVisible(2, false);
+ _rooms[SIGN_ROOM]->setSectionVisible(3, true);
}
void GameManager1::searchStartEvent() {
@@ -1098,7 +1101,7 @@ void GameManager1::shot(int a, int b) {
}
void GameManager1::takeMoney(int amount) {
- Object *moneyObject = _rooms[INTRO]->getObject(4);
+ Object *moneyObject = _rooms[INTRO1]->getObject(4);
_state._money += amount;
_vm->setGameString(kStringInventoryMoney, Common::String::format("%d Xa", _state._money));
@@ -1567,7 +1570,7 @@ void GameManager1::guard3Shot() {
}
void GameManager1::alarm() {
- if (_rooms[INTRO]->getObject(2)->hasProperty(CARRIED)) {
+ if (_rooms[INTRO1]->getObject(2)->hasProperty(CARRIED)) {
alarmSound();
if (_currentRoom->getId() == GUARD)
guardShot();
diff --git a/engines/supernova/supernova1/state.h b/engines/supernova/supernova1/state.h
index ba02b012a5..9e997e95b7 100644
--- a/engines/supernova/supernova1/state.h
+++ b/engines/supernova/supernova1/state.h
@@ -64,7 +64,7 @@ class GameState {
bool _playerHidden;
};
-class GameManager1 : public GameManager {
+class GameManager1: public GameManager {
public:
GameManager1(SupernovaEngine *vm, Sound *sound);
virtual ~GameManager1();
diff --git a/engines/supernova/supernova1/stringid.h b/engines/supernova/supernova1/stringid.h
new file mode 100644
index 0000000000..7f3c1f1fcb
--- /dev/null
+++ b/engines/supernova/supernova1/stringid.h
@@ -0,0 +1,188 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef SUPERNOVA_STRINGID_H
+#define SUPERNOVA_STRINGID_H
+
+#include "common/scummsys.h"
+
+namespace Supernova {
+
+enum StringId1 {
+ kStringTitleVersion = 25, kStringTitle1, kStringTitle2, kStringTitle3, kStringIntro1,
+ kStringIntro2, kStringIntro3, kStringIntro4, kStringIntro5, kStringIntro6,
+ kStringIntro7, kStringIntro8, kStringIntro9, kStringIntro10, kStringIntro11,
+ kStringIntro12, kStringIntro13, kStringBroken, kStringTakeMessage,
+ kStringKeycard, kStringKeycardDescription, kStringKnife, kStringKnifeDescription, kStringWatch,
+ kStringDiscman, kStringDiscmanDescription, kStringHatch, kStringButton, kStringHatchButtonDescription,
+ // 50
+ kStringLadder, kStringExit, kStringCockpitHatchDescription, kStringKitchenHatchDescription, kStringStasisHatchDescription,
+ kStringStasisHatchDescription2, kStringSlot, kStringSlotDescription, kStringCorridor, kStringComputer,
+ kStringComputerPassword, kStringInstruments, kStringInstrumentsDescription1, kStringMonitor, kStringMonitorDescription,
+ kStringImage, kStringGenericDescription1, kStringGenericDescription2, kStringGenericDescription3, kStringGenericDescription4,
+ kStringMagnete, kStringMagneteDescription, kStringPen, kStringPenDescription, kStringShelf,
+ kStringCompartment, kStringSocket, kStringToilet, kStringPistol, kStringPistolDescription,
+ kStringBooks, kStringBooksDescription, kStringSpool, kStringSpoolDescription, kStringBook,
+ kStringUnderwear, kStringUnderwearDescription, kStringClothes, kStringJunk, kStringJunkDescription,
+ kStringFolders, kStringFoldersDescription, kStringPoster, kStringPosterDescription1, kStringPosterDescription2,
+ kStringSpeaker, kStringRecord, kStringRecordDescription, kStringRecordStand, kStringRecordStandDescription,
+ // 100
+ kStringTurntable, kStringTurntableDescription, kStringWire, kStringPlug, kStringImageDescription1,
+ kStringDrawingInstruments, kStringDrawingInstrumentsDescription, kStringChessGame, kStringChessGameDescription1, kStringTennisRacket,
+ kStringTennisRacketDescription, kStringTennisBall, kStringChessGameDescription2, kStringBed, kStringBedDescription,
+ kStringCompartmentDescription, kStringAlbums, kStringAlbumsDescription, kStringRope, kStringRopeDescription,
+ kStringShelfDescription, kStringClothesDescription, kStringSocks, kStringBookHitchhiker, kStringBathroom,
+ kStringBathroomDescription, kStringShower, kStringHatchDescription1, kStringHatchDescription2, kStringHelmet,
+ kStringHelmetDescription, kStringSuit, kStringSuitDescription, kStringLifeSupport, kStringLifeSupportDescription,
+ kStringScrap, kStringScrapDescription1, kStringTerminalStrip, kStringScrapDescription2, kStringReactor,
+ kStringReactorDescription, kStringNozzle, kStringPumpkin, kStringPumpkinDescription, kStringLandingModule,
+ kStringLandingModuleDescription, kStringHatchDescription3, kStringGenerator, kStringGeneratorDescription, kStringScrapDescription3,
+ // 150
+ kSafetyButtonDescription, kStringKeyboard, kStringGeneratorWire, kStringEmptySpool, kStringKeycard2,
+ kStringKeycard2Description, kStringTrap, kStringVoltmeter, kStringClip, kStringWireDescription,
+ kStringStone, kStringCaveOpening, kStringCaveOpeningDescription, kStringExitDescription, kStringCave,
+ kStringSign, kStringSignDescription, kStringEntrance, kStringStar, kStringSpaceshift,
+ kStringPorter, kStringPorterDescription, kStringDoor, kStringChewingGum, kStringGummyBears,
+ kStringChocolateBall, kStringEgg, kStringLiquorice, kStringPill, kStringPillDescription,
+ kStringVendingMachine, kStringVendingMachineDescription, kStringToiletDescription, kStringStaircase, kStringCoins,
+ kStringCoinsDescription, kStringTabletPackage, kStringTabletPackageDescription, kStringChair, kStringShoes,
+ kStringShoesDescription, kStringFrogFace, kStringScrible, kStringScribleDescription, kStringWallet,
+ kStringMenu, kStringMenuDescription, kStringCup, kStringCupDescription, kStringBill,
+ // 200
+ kStringBillDescription, kStringKeycard3, kStringAnnouncement, kStringAnnouncementDescription, kStringRoger,
+ kStringUfo, kStringUfoDescription, kStringTray, kStringTrayDescription, kStringLamp,
+ kStringLampDescription, kStringEyes, kStringEyesDescription, kStringSocketDescription, kStringMetalBlock,
+ kStringMetalBlockDescription, kStringRobot, kStringRobotDescription, kStringTable, kStringTableDescription,
+ kStringCellDoor, kStringCellDoorDescription, kStringLaptop, kStringWristwatch, kStringPillar,
+ kStringDoorDescription1, kStringDoorDescription2, kStringDoorDescription3, kStringDoorDescription4, kStringDontEnter,
+ kStringAxacussan, kStringAxacussanDescription, kStringImageDescription2, kStringMastercard, kStringMastercardDescription,
+ kStringLamp2, kStringGenericDescription5, kStringMoney, kStringMoneyDescription1, kStringLocker,
+ kStringLockerDescription, kStringLetter, kStringCube, kStringGenericDescription6, kStringGenericDescription7,
+ kStringStrangeThing, kStringGenericDescription8, kStringImageDescription3, kStringPlant, kStringStatue,
+ // 250
+ kStringStatueDescription, kStringPlantDescription, kStringComputerDescription, kStringGraffiti, kStringGraffitiDescription,
+ kStringMoneyDescription2, kStringJungle, kStringJungleDescription, kStringOutro1, kStringOutro2,
+ kStringOutro3, kStringOutro4, kStringOutro5, kStringOutro6, kStringOutro7,
+ kStringOutro8, kStringOutro9, kStringOutro10, kStringOutro11, kStringOutro12,
+ kStringOutro13, kStringOutro14, kStringWireAndPlug, kStringWireAndClip, kStringWireAndPlug2,
+ // 275
+ kStringSignDescription2, kStringCoin, kStringDoorDescription5, kStringDoorDescription6, kStringKeycard2Description2,
+ kSringSpoolAndClip, kStringIntroCutscene1, kStringIntroCutscene2, kStringIntroCutscene3, kStringIntroCutscene4,
+ kStringIntroCutscene5, kStringIntroCutscene6, kStringIntroCutscene7, kStringIntroCutscene8, kStringIntroCutscene9,
+ kStringIntroCutscene10, kStringIntroCutscene11, kStringIntroCutscene12, kStringIntroCutscene13, kStringIntroCutscene14,
+ kStringIntroCutscene15, kStringIntroCutscene16, kStringIntroCutscene17, kStringIntroCutscene18, kStringIntroCutscene19,
+ // 300
+ kStringIntroCutscene20, kStringIntroCutscene21, kStringIntroCutscene22, kStringIntroCutscene23, kStringIntroCutscene24,
+ kStringIntroCutscene25, kStringIntroCutscene26, kStringIntroCutscene27, kStringIntroCutscene28, kStringIntroCutscene29,
+ kStringIntroCutscene30, kStringIntroCutscene31, kStringIntroCutscene32, kStringIntroCutscene33, kStringIntroCutscene34,
+ kStringIntroCutscene35, kStringIntroCutscene36, kStringIntroCutscene37, kStringIntroCutscene38, kStringIntroCutscene39,
+ kStringIntroCutscene40, kStringIntroCutscene41, kStringIntroCutscene42, kStringShipHall1, kStringShipSleepCabin1,
+ //325
+ kStringShipSleepCabin2, kStringShipSleepCabin3, kStringShipSleepCabin4, kStringShipSleepCabin5, kStringShipSleepCabin6,
+ kStringShipSleepCabin7, kStringShipSleepCabin8, kStringShipSleepCabin9, kStringShipSleepCabin10, kStringShipSleepCabin11,
+ kStringShipSleepCabin12, kStringShipSleepCabin13, kStringShipSleepCabin14, kStringShipSleepCabin15, kStringShipSleepCabin16,
+ kStringShipCockpit1, kStringShipCockpit2, kStringShipCockpit3, kStringShipCockpit4, kStringShipCockpit5,
+ kStringShipCockpit6, kStringShipCockpit7, kStringShipCockpit8, kStringShipCockpit9, kStringShipCockpit10,
+ // 350
+ kStringShipCockpit11, kStringShipCockpit12, kStringShipCockpit13, kStringShipCabinL3_1, kStringShipCabinL3_2,
+ kStringShipCabinL3_3, kStringShipCabinL3_4, kStringShipCabinL3_5, kStringShipAirlock1, kStringShipAirlock2,
+ kStringShipAirlock3, kStringShipAirlock4, kStringShipHold1, kStringCable1, kStringCable2,
+ kStringCable3, kStringCable4, kStringShipHold2, kStringShipHold3, kStringShipHold4,
+ kStringShipHold5, kStringShipHold6, kStringShipHold7, kStringShipHold8, kStringShipHold9,
+ // 375
+ kStringShipHold10, kStringShipHold11, kStringShipHold12, kStringShipHold13, kStringShipHold14,
+ kStringShipHold15, kStringShipHold16, kStringArsanoMeetup1, kStringArsanoMeetup2, kStringArsanoMeetup3,
+ kStringArsanoEntrance1, kStringArsanoEntrance2, kStringArsanoEntrance3, kStringArsanoEntrance4, kStringArsanoEntrance5,
+ kStringArsanoEntrance6, kStringArsanoEntrance7, kStringArsanoEntrance8, kStringArsanoEntrance9, kStringArsanoEntrance10,
+ kStringArsanoEntrance11, kStringArsanoEntrance12, kStringArsanoEntrance13, kStringArsanoEntrance14, kStringArsanoEntrance15,
+ // 400
+ kStringArsanoEntrance16, kStringArsanoEntrance17, kStringArsanoEntrance18, kStringArsanoEntrance19, kStringArsanoEntrance20,
+ kStringArsanoEntrance21, kStringArsanoEntrance22, kStringArsanoEntrance23, kStringArsanoEntrance24, kStringArsanoEntrance25,
+ kStringArsanoEntrance26, kStringArsanoEntrance27, kStringArsanoDialog1, kStringArsanoDialog2, kStringArsanoDialog3,
+ kStringArsanoDialog4, kStringArsanoDialog5, kStringArsanoDialog6, kStringArsanoDialog7, kStringArsanoDialog8,
+ kStringArsanoDialog9, kStringDialogArsanoRoger1, kStringDialogArsanoRoger2, kStringDialogArsanoRoger3,
+ // 425
+ kStringDialogArsanoMeetup3_1, kStringDialogArsanoMeetup3_2, kStringDialogArsanoMeetup3_3, kStringDialogArsanoMeetup3_4, kStringDialogArsanoMeetup3_5,
+ kStringArsanoRoger1, kStringArsanoRoger2, kStringArsanoRoger3, kStringArsanoRoger4, kStringArsanoRoger5,
+ kStringArsanoRoger6, kStringArsanoRoger7, kStringArsanoRoger8, kStringArsanoRoger9, kStringArsanoRoger10,
+ kStringArsanoRoger11, kStringArsanoRoger12, kStringArsanoRoger13, kStringArsanoRoger14, kStringArsanoRoger15,
+ kStringArsanoRoger16, kStringArsanoRoger17, kStringArsanoRoger18, kStringArsanoRoger19, kStringArsanoRoger20,
+ // 450
+ kStringArsanoRoger21, kStringArsanoRoger22, kStringArsanoRoger23, kStringArsanoRoger24, kStringArsanoRoger25,
+ kStringArsanoRoger26, kStringArsanoRoger27, kStringArsanoRoger28, kStringArsanoRoger29, kStringArsanoRoger30,
+ kStringArsanoRoger31, kStringArsanoRoger32, kStringArsanoRoger33, kStringArsanoRoger34, kStringArsanoRoger35,
+ kStringArsanoRoger36, kStringArsanoRoger37, kStringArsanoRoger38, kStringArsanoRoger39, kStringArsanoRoger40,
+ kStringArsanoGlider1, kStringArsanoMeetup2_1, kStringArsanoMeetup2_2, kStringArsanoMeetup2_3, kStringArsanoMeetup2_4,
+ // 475
+ kStringArsanoMeetup2_5, kStringArsanoMeetup2_6, kStringArsanoMeetup2_7, kStringArsanoMeetup2_8, kStringArsanoMeetup2_9,
+ kStringArsanoMeetup2_10, kStringArsanoMeetup2_11, kStringArsanoMeetup2_12, kStringArsanoMeetup2_13, kStringArsanoMeetup3_1,
+ kStringArsanoMeetup3_2, kStringArsanoMeetup3_3, kStringArsanoMeetup3_4, kStringArsanoMeetup3_5, kStringArsanoMeetup3_6,
+ kStringArsanoMeetup3_7, kStringArsanoMeetup3_8, kStringArsanoMeetup3_9, kStringArsanoMeetup3_10, kStringArsanoMeetup3_11,
+ kStringArsanoMeetup3_12, kStringArsanoMeetup3_13, kStringArsanoMeetup3_14, kStringArsanoMeetup3_15, kStringArsanoMeetup3_16,
+ // 500
+ kStringArsanoMeetup3_17, kStringArsanoMeetup3_18, kStringArsanoMeetup3_19, kStringArsanoMeetup3_20, kStringArsanoMeetup3_21,
+ kStringArsanoMeetup3_22, kStringArsanoMeetup3_23, kStringArsanoMeetup3_24, kStringArsanoMeetup3_25, kStringArsanoMeetup3_26,
+ kStringArsanoMeetup3_27, kStringArsanoMeetup3_28, kStringAxacussCell_1, kStringAxacussCell_2, kStringAxacussCell_3,
+ kStringAxacussCell_4, kStringAxacussCell_5, kStringOk, kStringDialogArsanoMeetup2_1, kStringDialogArsanoMeetup2_2,
+ kStringDialogArsanoMeetup2_3, kStringDialogArsanoMeetup2_4, kStringDialogArsanoMeetup2_5, kStringDialogArsanoMeetup2_6, kStringDialogArsanoMeetup2_7,
+ // 525
+ kStringDialogArsanoMeetup2_8, kStringDialogArsanoMeetup2_9, kStringDialogArsanoMeetup2_10, kStringDialogArsanoMeetup2_11, kStringDialogAxacussCorridor5_1,
+ kStringDialogAxacussCorridor5_2, kStringDialogAxacussCorridor5_3, kStringDialogAxacussCorridor5_4, kStringDialogAxacussCorridor5_5, kStringDialogAxacussCorridor5_6,
+ kStringDialogAxacussCorridor5_7, kStringDialogX1, kStringDialogX2, kStringDialogX3, kStringAxacussCorridor5_1,
+ kStringAxacussCorridor5_2, kStringAxacussCorridor5_3, kStringAxacussCorridor5_4, kStringAxacussCorridor5_5, kStringAxacussCorridor5_6,
+ kStringAxacussCorridor5_7, kStringAxacussBcorridor_1, kStringAxacussOffice1_1, kStringAxacussOffice1_2, kStringAxacussOffice1_3,
+ // 550
+ kStringAxacussOffice1_4, kStringAxacussOffice1_5, kStringAxacussOffice1_6, kStringAxacussOffice1_7, kStringAxacussOffice1_8,
+ kStringAxacussOffice1_9, kStringAxacussOffice1_10, kStringAxacussOffice1_11, kStringAxacussOffice1_12, kStringAxacussOffice1_13,
+ kStringAxacussOffice1_14, kStringAxacussOffice1_15, kStringAxacussOffice1_16, kStringAxacussOffice3_1, kStringAxacussElevator_1,
+ kStringAxacussElevator_2, kStringAxacussElevator_3, kStringShock, kStringShot, kStringCloseLocker_1,
+ kStringIsHelmetOff_1, kStringGenericInteract_1, kStringGenericInteract_2, kStringGenericInteract_3, kStringGenericInteract_4,
+ // 575
+ kStringGenericInteract_5, kStringGenericInteract_6, kStringGenericInteract_7, kStringGenericInteract_8, kStringGenericInteract_9,
+ kStringGenericInteract_10, kStringGenericInteract_11, kStringGenericInteract_12,
+ kStringGenericInteract_13, kStringGenericInteract_14, kStringGenericInteract_15, kStringGenericInteract_16, kStringGenericInteract_17,
+ kStringGenericInteract_18, kStringGenericInteract_19, kStringGenericInteract_20, kStringGenericInteract_21, kStringGenericInteract_22,
+ kStringGenericInteract_23, kStringGenericInteract_24, kStringGenericInteract_25, kStringGenericInteract_26, kStringGenericInteract_27,
+ // 600
+ kStringGenericInteract_28, kStringGenericInteract_29, kStringGenericInteract_30, kStringGenericInteract_31, kStringGenericInteract_32,
+ kStringGenericInteract_33, kStringGenericInteract_34, kStringGenericInteract_35, kStringGenericInteract_36, kStringGenericInteract_37,
+ kStringGenericInteract_38, kStringGenericInteract_39, kStringGenericInteract_40, kStringGenericInteract_41, kStringGenericInteract_42,
+ kStringGenericInteract_43, kStringSupernova1, kStringSupernova2, kStringSupernova3,
+ kStringSupernova4, kStringSupernova5, kStringSupernova6, kStringSupernova7, kStringSupernova8,
+ // 625
+ kStringTextSpeed, kStringGuardNoticed1, kStringGuardNoticed2, kStringTelomat1, kStringTelomat2,
+ kStringTelomat3, kStringTelomat4, kStringTelomat5, kStringTelomat6, kStringTelomat7,
+ kStringTelomat8, kStringTelomat9, kStringTelomat10, kStringTelomat11, kStringTelomat12,
+ kStringTelomat13, kStringTelomat14, kStringTelomat15, kStringTelomat16, kStringTelomat17,
+ kStringTelomat18, kStringTelomat19, kStringTelomat20, kStringTelomat21, kStringAlarm,
+ // 650
+ kStringLeaveGame, kStringYes, kStringNo, kStringHelpOverview1, kStringHelpOverview2,
+ kStringHelpOverview3, kStringHelpOverview4, kStringHelpOverview5, kStringHelpOverview6, kStringHelpOverview7,
+
+ // Add two placeholder strings at the end for variable text
+ kStringPlaceholder1, kStringPlaceholder2,
+
+ // String for money in inventory
+ kStringInventoryMoney
+};
+}
+#endif // SUPERNOVA_STRINGID_H