diff options
author | Denis Kasak | 2009-07-25 03:28:04 +0000 |
---|---|---|
committer | Denis Kasak | 2009-07-25 03:28:04 +0000 |
commit | d28658984dcceb7c090af9f7040d1490239a820b (patch) | |
tree | 93da0bc4e38c273f4c27f7eb4be3e461bcab0493 /engines/draci/game.h | |
parent | b7e97efb7fbd26c91693082339466308c52e7e08 (diff) | |
download | scummvm-rg350-d28658984dcceb7c090af9f7040d1490239a820b.tar.gz scummvm-rg350-d28658984dcceb7c090af9f7040d1490239a820b.tar.bz2 scummvm-rg350-d28658984dcceb7c090af9f7040d1490239a820b.zip |
* Added DraciEngine::_initArchive and made Game use it. Fixes a memory bug because Game uses pointers from the init archive which should outlive it (but didn't previously).
* Added support for setting loop status to Game.
* Made some GPL commands check whether we are in the correct loop status before executing.
svn-id: r42731
Diffstat (limited to 'engines/draci/game.h')
-rw-r--r-- | engines/draci/game.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/engines/draci/game.h b/engines/draci/game.h index 2cee3e024d..6be44cdd68 100644 --- a/engines/draci/game.h +++ b/engines/draci/game.h @@ -132,6 +132,12 @@ struct Room { GPL2Program _program; }; +enum LoopStatus { + kStatusGate, kStatusOrdinary, kStatusInventory, + kStatusDialogue, kStatusTalk, kStatusStrange, + kStatusFade +}; + class Game { public: @@ -185,15 +191,22 @@ public: int getMarkedAnimationIndex(); void setMarkedAnimationIndex(int index); + void setLoopStatus(LoopStatus status); + LoopStatus getLoopStatus(); + private: DraciEngine *_vm; - int *_variables; + GameInfo _info; - Person *_persons; uint *_dialogOffsets; + + int *_variables; byte *_iconStatus; + Person *_persons; GameObject *_objects; + Room _currentRoom; + LoopStatus _loopStatus; int _markedAnimationIndex; //!< Used by the Mark GPL command }; |