diff options
Diffstat (limited to 'engines/lure/res_struct.h')
-rw-r--r-- | engines/lure/res_struct.h | 15 |
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, |