diff options
-rw-r--r-- | engines/pink/objects/handlers/handler_timer.cpp | 15 | ||||
-rw-r--r-- | engines/pink/objects/handlers/handler_timer.h | 11 |
2 files changed, 22 insertions, 4 deletions
diff --git a/engines/pink/objects/handlers/handler_timer.cpp b/engines/pink/objects/handlers/handler_timer.cpp index 757790ea64..b0bfb90918 100644 --- a/engines/pink/objects/handlers/handler_timer.cpp +++ b/engines/pink/objects/handlers/handler_timer.cpp @@ -29,6 +29,7 @@ #include <engines/pink/objects/condition.h> #include <engines/pink/objects/actors/lead_actor.h> #include <engines/pink/objects/pages/game_page.h> +#include <engines/pink/objects/sequences/sequencer.h> #include <engines/pink/pink.h> @@ -94,4 +95,18 @@ void HandlerTimerSequences::toConsole() { } } +void HandlerTimerSequences::handle(Actor *actor) { + Handler::handle(actor); + Sequencer *sequencer = actor->getSequencer(); + + assert(!_sequences.empty()); + + Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); + uint index = rnd.getRandomNumber(_sequences.size() - 1); + + Sequence *sequence = sequencer->findSequence(_sequences[index]); + + assert(sequence); +} + } // End of namespace Pink
\ No newline at end of file diff --git a/engines/pink/objects/handlers/handler_timer.h b/engines/pink/objects/handlers/handler_timer.h index 540c7dcc6c..3f5458296f 100644 --- a/engines/pink/objects/handlers/handler_timer.h +++ b/engines/pink/objects/handlers/handler_timer.h @@ -30,15 +30,15 @@ namespace Pink { class LeadActor; -//TODO: in Peril create HandlerTimerActions when it is request for HandlerTimer - +/* // This class has differences in games class HandlerTimer : public Handler { }; +*/ //in Peril this is HandlerTimer -class HandlerTimerActions : public HandlerTimer { +class HandlerTimerActions : public Handler { public: virtual void toConsole(); virtual void deserialize(Archive &archive); @@ -52,8 +52,11 @@ private: class HandlerTimerSequences : public HandlerSequences { //originally it was inherited from HandlerTimer public: virtual void toConsole(); + + virtual void handle(Actor *actor); + protected: - virtual void execute(Sequence *sequence); // very big and hard function + virtual void execute(Sequence *sequence); }; } // End of namespace Pink |