diff options
Diffstat (limited to 'engines/m4/globals.cpp')
-rw-r--r-- | engines/m4/globals.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/engines/m4/globals.cpp b/engines/m4/globals.cpp index 39226f0ebc..856c1bb817 100644 --- a/engines/m4/globals.cpp +++ b/engines/m4/globals.cpp @@ -278,6 +278,8 @@ bool Globals::isInterfaceVisible() { MadsGlobals::MadsGlobals(MadsEngine *vm): Globals(vm) { _vm = vm; + + playerSpriteChanged = false; } MadsGlobals::~MadsGlobals() { @@ -408,6 +410,29 @@ const char *MadsGlobals::loadMessage(uint index) { return (char*)buffer; } +/** + * Adds the specified scene number to list of scenes previously visited + */ +void MadsGlobals::addVisitedScene(int sceneNumber) { + if (!isSceneVisited(sceneNumber)) + _visitedScenes.push_back(sceneNumber); +} + +/** + * Returns true if the specified scene has been previously visited + */ +bool MadsGlobals::isSceneVisited(int sceneNumber) { + Common::List<int>::iterator i; + for (i = _visitedScenes.begin(); i != _visitedScenes.end(); ++i) + if (*i == sceneNumber) + return true; + return false; +} + +void MadsGlobals::removeVisitedScene(int sceneNumber) { + _visitedScenes.remove(sceneNumber); +} + /*--------------------------------------------------------------------------*/ M4Globals::M4Globals(M4Engine *vm): Globals(vm) { |