aboutsummaryrefslogtreecommitdiff
path: root/engines/lure/res_struct.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/lure/res_struct.h')
-rw-r--r--engines/lure/res_struct.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/engines/lure/res_struct.h b/engines/lure/res_struct.h
index f53f8dd9a0..1a9833c686 100644
--- a/engines/lure/res_struct.h
+++ b/engines/lure/res_struct.h
@@ -589,8 +589,11 @@ public:
// The following classes hold any sequence offsets that are being delayed
class SequenceDelayData {
+private:
+ SequenceDelayData() {};
public:
SequenceDelayData(uint16 delay, uint16 seqOffset, bool canClearFlag);
+ static SequenceDelayData *load(uint32 delay, uint16 seqOffset, bool canClearFlag);
uint32 timeoutCtr;
uint16 sequenceOffset;
@@ -601,7 +604,10 @@ class SequenceDelayList: public ManagedList<SequenceDelayData *> {
public:
void add(uint16 delay, uint16 seqOffset, bool canClear);
void tick();
- void clear();
+ void clear(bool forceClear = false);
+
+ void saveToStream(WriteStream *stream);
+ void loadFromStream(ReadStream *stream);
};
// The following classes holds the data for NPC schedules
@@ -732,6 +738,13 @@ public:
enum BarmanAction {WALK_AROUND = 1, POLISH_BAR = 2, WAIT = 3, WAIT_DIALOG = 4, SERVE_BEER = 5};
+struct RoomTranslationRecord {
+ uint8 srcRoom;
+ uint8 destRoom;
+};
+
+extern RoomTranslationRecord roomTranslations[];
+
enum StringEnum {S_CREDITS = 25, S_RESTART_GAME = 26, S_SAVE_GAME = 27, S_RESTORE_GAME = 28,
S_QUIT = 29, S_FAST_TEXT = 30, S_SLOW_TEXT = 31, S_SOUND_ON = 32, S_SOUND_OFF = 33,
S_NOTHING = 34, S_FOR = 35, S_TO = 36, S_ON = 37, S_AND_THEN = 38,