diff options
author | whitertandrek | 2018-03-19 10:43:49 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2018-06-28 23:51:32 +0200 |
commit | 3e2106a1c087b2c27f961ce918ad6459670b99fa (patch) | |
tree | 38704c7c5129669a9b32308d9013d41d116eb9f2 /engines/pink/page.cpp | |
parent | 62f84eae96625e778aae63e75b399a50b16363e8 (diff) | |
download | scummvm-rg350-3e2106a1c087b2c27f961ce918ad6459670b99fa.tar.gz scummvm-rg350-3e2106a1c087b2c27f961ce918ad6459670b99fa.tar.bz2 scummvm-rg350-3e2106a1c087b2c27f961ce918ad6459670b99fa.zip |
PINK: Added more Handler methods
Diffstat (limited to 'engines/pink/page.cpp')
-rw-r--r-- | engines/pink/page.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/engines/pink/page.cpp b/engines/pink/page.cpp index cfc78c8974..77e3bb3c06 100644 --- a/engines/pink/page.cpp +++ b/engines/pink/page.cpp @@ -21,6 +21,8 @@ */ #include <engines/pink/walk/walk_mgr.h> +#include <engines/pink/handlers/handler.h> +#include <engines/pink/handlers/handler_sequences.h> #include "page.h" #include "cursor_mgr.h" #include "actors/lead_actor.h" @@ -60,18 +62,26 @@ void GamePage::load(Archive &archive) { void GamePage::init(bool isLoadingSave) { if (!isLoadingSave){ //assert(perhapsIsLoaded == 0); - loadFields(); + loadManagers(); } //init actor which inits actions if (!isLoadingSave) { + for (int i = 0; i < _handlers.size(); ++i) { + if (_handlers[i]->initConditions(_leadActor)){ + HandlerSequences *handlerSequences = dynamic_cast<HandlerSequences*>(_handlers[i]); + assert(handlerSequences); + handlerSequences->initSequence(_leadActor); + break; + } + } } } -void GamePage::loadFields() { +void GamePage::loadManagers() { perhapsIsLoaded = true; _cursorMgr = new CursorMgr(this); _walkMgr = new WalkMgr; @@ -87,5 +97,8 @@ PinkEngine *GamePage::getGame() { return _module->getGame(); } +Sequencer *GamePage::getSequencer() { + return _sequencer; +} } // End of namespace Pink |