diff options
Diffstat (limited to 'engines/pink/objects/handlers')
-rw-r--r-- | engines/pink/objects/handlers/handler.cpp | 158 | ||||
-rw-r--r-- | engines/pink/objects/handlers/handler.h | 44 | ||||
-rw-r--r-- | engines/pink/objects/handlers/handler_mgr.cpp | 130 | ||||
-rw-r--r-- | engines/pink/objects/handlers/handler_mgr.h | 28 | ||||
-rw-r--r-- | engines/pink/objects/handlers/handler_timer.cpp | 100 | ||||
-rw-r--r-- | engines/pink/objects/handlers/handler_timer.h | 14 |
6 files changed, 237 insertions, 237 deletions
diff --git a/engines/pink/objects/handlers/handler.cpp b/engines/pink/objects/handlers/handler.cpp index 8833153e0c..2f73553f2a 100644 --- a/engines/pink/objects/handlers/handler.cpp +++ b/engines/pink/objects/handlers/handler.cpp @@ -34,123 +34,123 @@ namespace Pink { void Handler::deserialize(Archive &archive) { _conditions.deserialize(archive); - _sideEffects.deserialize(archive); + _sideEffects.deserialize(archive); } bool Handler::isSuitable(Actor *actor) { - for (uint i = 0; i < _conditions.size(); ++i) { - if (!_conditions[i]->evaluate(actor)){ - return false; - } - } - return true; + for (uint i = 0; i < _conditions.size(); ++i) { + if (!_conditions[i]->evaluate(actor)){ + return false; + } + } + return true; } void Handler::executeSideEffects(Actor *actor) { - for (uint i = 0; i < _sideEffects.size(); ++i) { - _sideEffects[i]->execute(actor); - } + for (uint i = 0; i < _sideEffects.size(); ++i) { + _sideEffects[i]->execute(actor); + } } void Handler::handle(Actor *actor) { - executeSideEffects(actor); + executeSideEffects(actor); } Handler::~Handler() { - for (uint i = 0; i < _sideEffects.size(); ++i) { - delete _sideEffects[i]; - } - for (uint i = 0; i < _conditions.size(); ++i) { - delete _conditions[i]; - } + for (uint i = 0; i < _sideEffects.size(); ++i) { + delete _sideEffects[i]; + } + for (uint i = 0; i < _conditions.size(); ++i) { + delete _conditions[i]; + } } void HandlerSequences::deserialize(Archive &archive) { - Handler::deserialize(archive); - _sequences.deserialize(archive); + Handler::deserialize(archive); + _sequences.deserialize(archive); } void HandlerSequences::handle(Actor *actor) { - Handler::handle(actor); - Sequencer *sequencer = actor->getSequencer(); + Handler::handle(actor); + Sequencer *sequencer = actor->getSequencer(); - assert(!_sequences.empty()); + assert(!_sequences.empty()); - Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); - uint index = rnd.getRandomNumber(_sequences.size() - 1); + Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); + uint index = rnd.getRandomNumber(_sequences.size() - 1); - Sequence *sequence = sequencer->findSequence(_sequences[index]); + Sequence *sequence = sequencer->findSequence(_sequences[index]); - assert(sequence); - sequencer->authorSequence(sequence, 0); + assert(sequence); + sequencer->authorSequence(sequence, 0); - execute(sequence); + execute(sequence); } void HandlerStartPage::execute(Sequence *sequence) { - sequence->_unk = 1; + sequence->_unk = 1; } void HandlerStartPage::toConsole() { - debug("HandlerStartPage:"); - - debug("\tSideEffects:"); - for (uint i = 0; i < _sideEffects.size(); ++i) { - _sideEffects[i]->toConsole(); - } - - debug("\tConditions:"); - for (uint i = 0; i < _conditions.size(); ++i) { - _conditions[i]->toConsole(); - } - - debug("\tSequences:"); - for (uint i = 0; i < _sequences.size(); ++i) { - debug("\t\t%s", _sequences[i].c_str()); - } + debug("HandlerStartPage:"); + + debug("\tSideEffects:"); + for (uint i = 0; i < _sideEffects.size(); ++i) { + _sideEffects[i]->toConsole(); + } + + debug("\tConditions:"); + for (uint i = 0; i < _conditions.size(); ++i) { + _conditions[i]->toConsole(); + } + + debug("\tSequences:"); + for (uint i = 0; i < _sequences.size(); ++i) { + debug("\t\t%s", _sequences[i].c_str()); + } } void HandlerLeftClick::toConsole() { - debug("HandlerLeftClick:"); - - debug("\tSideEffects:"); - for (uint i = 0; i < _sideEffects.size(); ++i) { - _sideEffects[i]->toConsole(); - } - - debug("\tConditions:"); - for (uint i = 0; i < _conditions.size(); ++i) { - _conditions[i]->toConsole(); - } - - debug("\tSequences:"); - for (uint i = 0; i < _sequences.size(); ++i) { - debug("\t\t%s", _sequences[i].c_str()); - } + debug("HandlerLeftClick:"); + + debug("\tSideEffects:"); + for (uint i = 0; i < _sideEffects.size(); ++i) { + _sideEffects[i]->toConsole(); + } + + debug("\tConditions:"); + for (uint i = 0; i < _conditions.size(); ++i) { + _conditions[i]->toConsole(); + } + + debug("\tSequences:"); + for (uint i = 0; i < _sequences.size(); ++i) { + debug("\t\t%s", _sequences[i].c_str()); + } } void HandlerUseClick::deserialize(Archive &archive) { - HandlerSequences::deserialize(archive); - _inventoryItem = archive.readString(); - _recepient = archive.readString(); + HandlerSequences::deserialize(archive); + _inventoryItem = archive.readString(); + _recepient = archive.readString(); } void HandlerUseClick::toConsole() { - debug("HandlerUseClick: _inventoryItem=%s, _recepient=%s", _inventoryItem.c_str(), _recepient.c_str()); - debug("\tSideEffects:"); - for (uint i = 0; i < _sideEffects.size(); ++i) { - _sideEffects[i]->toConsole(); - } - - debug("\tConditions:"); - for (uint i = 0; i < _conditions.size(); ++i) { - _conditions[i]->toConsole(); - } - - debug("\tSequences:"); - for (uint i = 0; i < _sequences.size(); ++i) { - debug("\t\t%s", _sequences[i].c_str()); - } + debug("HandlerUseClick: _inventoryItem=%s, _recepient=%s", _inventoryItem.c_str(), _recepient.c_str()); + debug("\tSideEffects:"); + for (uint i = 0; i < _sideEffects.size(); ++i) { + _sideEffects[i]->toConsole(); + } + + debug("\tConditions:"); + for (uint i = 0; i < _conditions.size(); ++i) { + _conditions[i]->toConsole(); + } + + debug("\tSequences:"); + for (uint i = 0; i < _sequences.size(); ++i) { + debug("\t\t%s", _sequences[i].c_str()); + } } } // End of namespace Pink diff --git a/engines/pink/objects/handlers/handler.h b/engines/pink/objects/handlers/handler.h index 9d0d29833e..98d26620b5 100644 --- a/engines/pink/objects/handlers/handler.h +++ b/engines/pink/objects/handlers/handler.h @@ -36,60 +36,60 @@ class Actor; class Handler : public Object { public: - ~Handler(); - virtual void deserialize(Archive &archive); - virtual void handle(Actor *actor); - bool isSuitable(Actor *actor); + ~Handler(); + virtual void deserialize(Archive &archive); + virtual void handle(Actor *actor); + bool isSuitable(Actor *actor); protected: - void executeSideEffects(Actor *actor); + void executeSideEffects(Actor *actor); - Array<Condition*> _conditions; - Array<SideEffect*> _sideEffects; + Array<Condition*> _conditions; + Array<SideEffect*> _sideEffects; }; class Sequence; class HandlerSequences : public Handler { public: - virtual void deserialize(Archive &archive); - virtual void handle(Actor *actor); + virtual void deserialize(Archive &archive); + virtual void handle(Actor *actor); protected: - virtual void execute(Sequence *sequence) = 0; + virtual void execute(Sequence *sequence) = 0; - StringArray _sequences; + StringArray _sequences; }; class HandlerStartPage : public HandlerSequences { public: - virtual void toConsole(); + virtual void toConsole(); private: - virtual void execute(Sequence *sequence); + virtual void execute(Sequence *sequence); }; class HandlerLeftClick : public HandlerSequences { public: - virtual void toConsole(); + virtual void toConsole(); private: - virtual void execute(Sequence *sequence) {} + virtual void execute(Sequence *sequence) {} }; class HandlerUseClick : public HandlerSequences { public: - virtual void deserialize(Archive &archive); - virtual void toConsole(); + virtual void deserialize(Archive &archive); + virtual void toConsole(); - const Common::String &getInventoryItem() const { return _inventoryItem; } - const Common::String &getRecepient() const { return _recepient; } + const Common::String &getInventoryItem() const { return _inventoryItem; } + const Common::String &getRecepient() const { return _recepient; } private: - virtual void execute(Sequence *sequence) {}; + virtual void execute(Sequence *sequence) {}; - Common::String _inventoryItem; - Common::String _recepient; + Common::String _inventoryItem; + Common::String _recepient; }; } // End of namespace Pink diff --git a/engines/pink/objects/handlers/handler_mgr.cpp b/engines/pink/objects/handlers/handler_mgr.cpp index 695030f5d2..cf5b6ca004 100644 --- a/engines/pink/objects/handlers/handler_mgr.cpp +++ b/engines/pink/objects/handlers/handler_mgr.cpp @@ -28,107 +28,107 @@ namespace Pink { void HandlerMgr::deserialize(Archive &archive) { - _leftClickHandlers.deserialize(archive); - _useClickHandlers.deserialize(archive); - _timerHandlers.deserialize(archive); + _leftClickHandlers.deserialize(archive); + _useClickHandlers.deserialize(archive); + _timerHandlers.deserialize(archive); } void HandlerMgr::toConsole() { - debug("HandlerMgr:"); - for (uint i = 0; i < _leftClickHandlers.size(); ++i) { - _leftClickHandlers[i]->toConsole(); - } - for (uint i = 0; i < _useClickHandlers.size(); ++i) { - _useClickHandlers[i]->toConsole(); - } - for (uint i = 0; i < _timerHandlers.size(); ++i) { - _timerHandlers[i]->toConsole(); - } + debug("HandlerMgr:"); + for (uint i = 0; i < _leftClickHandlers.size(); ++i) { + _leftClickHandlers[i]->toConsole(); + } + for (uint i = 0; i < _useClickHandlers.size(); ++i) { + _useClickHandlers[i]->toConsole(); + } + for (uint i = 0; i < _timerHandlers.size(); ++i) { + _timerHandlers[i]->toConsole(); + } } bool HandlerMgr::isLeftClickHandler(Actor *actor) { - for (uint i = 0; i < _leftClickHandlers.size(); ++i) { - if (_leftClickHandlers[i]->isSuitable(actor)) - return true; - } + for (uint i = 0; i < _leftClickHandlers.size(); ++i) { + if (_leftClickHandlers[i]->isSuitable(actor)) + return true; + } - return false; + return false; } bool HandlerMgr::isUseClickHandler(Actor *actor, const Common::String &itemName){ - for (uint i = 0; i < _useClickHandlers.size(); ++i) { - if (itemName == _useClickHandlers[i]->getInventoryItem() && - _useClickHandlers[i]->isSuitable(actor)) - return true; - } + for (uint i = 0; i < _useClickHandlers.size(); ++i) { + if (itemName == _useClickHandlers[i]->getInventoryItem() && + _useClickHandlers[i]->isSuitable(actor)) + return true; + } - return false; + return false; } void HandlerMgr::onTimerMessage(Actor *actor) { - Handler *handler = findSuitableHandlerTimer(actor); - if (handler) - handler->handle(actor); + Handler *handler = findSuitableHandlerTimer(actor); + if (handler) + handler->handle(actor); } bool HandlerMgr::onLeftClickMessage(Actor *actor) { - Handler *handler = findSuitableHandlerLeftClick(actor); - if (handler) { - handler->handle(actor); - return true; - } - return false; + Handler *handler = findSuitableHandlerLeftClick(actor); + if (handler) { + handler->handle(actor); + return true; + } + return false; } bool HandlerMgr::onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr) { - HandlerUseClick *handler = findSuitableHandlerUseClick(actor, item); - if (handler) { - if (!handler->getRecepient().empty()) - mgr->setItemOwner(handler->getRecepient(), item); - handler->handle(actor); - return true; - } - return false; + HandlerUseClick *handler = findSuitableHandlerUseClick(actor, item); + if (handler) { + if (!handler->getRecepient().empty()) + mgr->setItemOwner(handler->getRecepient(), item); + handler->handle(actor); + return true; + } + return false; } Handler *HandlerMgr::findSuitableHandlerTimer(Actor *actor) { - for (uint i = 0; i < _timerHandlers.size(); ++i) { - if (_timerHandlers[i]->isSuitable(actor)) - return _timerHandlers[i]; - } + for (uint i = 0; i < _timerHandlers.size(); ++i) { + if (_timerHandlers[i]->isSuitable(actor)) + return _timerHandlers[i]; + } - return nullptr; + return nullptr; } HandlerLeftClick *HandlerMgr::findSuitableHandlerLeftClick(Actor *actor) { - for (uint i = 0; i < _leftClickHandlers.size(); ++i) { - if (_leftClickHandlers[i]->isSuitable(actor)) - return _leftClickHandlers[i]; - } + for (uint i = 0; i < _leftClickHandlers.size(); ++i) { + if (_leftClickHandlers[i]->isSuitable(actor)) + return _leftClickHandlers[i]; + } - return nullptr; + return nullptr; } HandlerUseClick *HandlerMgr::findSuitableHandlerUseClick(Actor *actor, InventoryItem *item) { - for (uint i = 0; i < _useClickHandlers.size(); ++i) { - if (item->getName() == _useClickHandlers[i]->getInventoryItem() && _useClickHandlers[i]->isSuitable(actor)) - return _useClickHandlers[i]; - } + for (uint i = 0; i < _useClickHandlers.size(); ++i) { + if (item->getName() == _useClickHandlers[i]->getInventoryItem() && _useClickHandlers[i]->isSuitable(actor)) + return _useClickHandlers[i]; + } - return nullptr; + return nullptr; } HandlerMgr::~HandlerMgr() { - for (uint i = 0; i < _leftClickHandlers.size(); ++i) { - delete _leftClickHandlers[i]; - } - for (uint j = 0; j < _useClickHandlers.size(); ++j) { - delete _useClickHandlers[j]; - } - for (uint k = 0; k < _timerHandlers.size(); ++k) { - delete _timerHandlers[k]; - } + for (uint i = 0; i < _leftClickHandlers.size(); ++i) { + delete _leftClickHandlers[i]; + } + for (uint j = 0; j < _useClickHandlers.size(); ++j) { + delete _useClickHandlers[j]; + } + for (uint k = 0; k < _timerHandlers.size(); ++k) { + delete _timerHandlers[k]; + } } } // End of namespace Pink diff --git a/engines/pink/objects/handlers/handler_mgr.h b/engines/pink/objects/handlers/handler_mgr.h index 36e2b05513..dabb329d27 100644 --- a/engines/pink/objects/handlers/handler_mgr.h +++ b/engines/pink/objects/handlers/handler_mgr.h @@ -39,26 +39,26 @@ class Actor; class HandlerMgr : public Object { public: - virtual ~HandlerMgr(); - virtual void deserialize(Archive &archive); + virtual ~HandlerMgr(); + virtual void deserialize(Archive &archive); - virtual void toConsole(); + virtual void toConsole(); - bool isLeftClickHandler(Actor *actor); - bool isUseClickHandler(Actor *actor, const Common::String &itemName); + bool isLeftClickHandler(Actor *actor); + bool isUseClickHandler(Actor *actor, const Common::String &itemName); - void onTimerMessage(Actor *actor); - bool onLeftClickMessage(Actor *actor); - bool onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr); + void onTimerMessage(Actor *actor); + bool onLeftClickMessage(Actor *actor); + bool onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr); private: - Handler *findSuitableHandlerTimer(Actor *actor); - HandlerLeftClick *findSuitableHandlerLeftClick(Actor *actor); - HandlerUseClick *findSuitableHandlerUseClick(Actor *actor, InventoryItem *item); + Handler *findSuitableHandlerTimer(Actor *actor); + HandlerLeftClick *findSuitableHandlerLeftClick(Actor *actor); + HandlerUseClick *findSuitableHandlerUseClick(Actor *actor, InventoryItem *item); - Array<HandlerLeftClick*> _leftClickHandlers; - Array<HandlerUseClick*> _useClickHandlers; - Array<Handler*> _timerHandlers; + Array<HandlerLeftClick*> _leftClickHandlers; + Array<HandlerUseClick*> _useClickHandlers; + Array<Handler*> _timerHandlers; }; } diff --git a/engines/pink/objects/handlers/handler_timer.cpp b/engines/pink/objects/handlers/handler_timer.cpp index d9f75f67b9..e27d4bb207 100644 --- a/engines/pink/objects/handlers/handler_timer.cpp +++ b/engines/pink/objects/handlers/handler_timer.cpp @@ -36,76 +36,76 @@ namespace Pink { void HandlerTimerActions::deserialize(Archive &archive) { - Handler::deserialize(archive); - _actions.deserialize(archive); + Handler::deserialize(archive); + _actions.deserialize(archive); } void HandlerTimerActions::toConsole() { - debug("HandlerTimerActions:"); - - debug("\tSideEffects:"); - for (uint i = 0; i < _sideEffects.size(); ++i) { - _sideEffects[i]->toConsole(); - } - - debug("\tConditions:"); - for (uint i = 0; i < _conditions.size(); ++i) { - _conditions[i]->toConsole(); - } - - debug("\tActions:"); - for (uint i = 0; i < _actions.size(); ++i) { - debug("\t\t%s", _actions[i].c_str()); - } + debug("HandlerTimerActions:"); + + debug("\tSideEffects:"); + for (uint i = 0; i < _sideEffects.size(); ++i) { + _sideEffects[i]->toConsole(); + } + + debug("\tConditions:"); + for (uint i = 0; i < _conditions.size(); ++i) { + _conditions[i]->toConsole(); + } + + debug("\tActions:"); + for (uint i = 0; i < _actions.size(); ++i) { + debug("\t\t%s", _actions[i].c_str()); + } } void HandlerTimerActions::handle(Actor *actor) { - Handler::handle(actor); - if (!actor->isPlaying() && !_actions.empty()) { - Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); - uint index = rnd.getRandomNumber(_actions.size() - 1); - Action *action = actor->findAction(_actions[index]); - assert(action); - actor->setAction(action, 0); - } + Handler::handle(actor); + if (!actor->isPlaying() && !_actions.empty()) { + Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); + uint index = rnd.getRandomNumber(_actions.size() - 1); + Action *action = actor->findAction(_actions[index]); + assert(action); + actor->setAction(action, 0); + } } void HandlerTimerSequences::execute(Sequence *sequence) { - error("HandlerTimerSequences function is not implemented"); + error("HandlerTimerSequences function is not implemented"); } void HandlerTimerSequences::toConsole() { - debug("HandlerTimerSequences:"); - - debug("\tSideEffects:"); - for (uint i = 0; i < _sideEffects.size(); ++i) { - _sideEffects[i]->toConsole(); - } - - debug("\tConditions:"); - for (uint i = 0; i < _conditions.size(); ++i) { - _conditions[i]->toConsole(); - } - - debug("\tSequences:"); - for (uint i = 0; i < _sequences.size(); ++i) { - debug("\t\t%s", _sequences[i].c_str()); - } + debug("HandlerTimerSequences:"); + + debug("\tSideEffects:"); + for (uint i = 0; i < _sideEffects.size(); ++i) { + _sideEffects[i]->toConsole(); + } + + debug("\tConditions:"); + for (uint i = 0; i < _conditions.size(); ++i) { + _conditions[i]->toConsole(); + } + + debug("\tSequences:"); + for (uint i = 0; i < _sequences.size(); ++i) { + debug("\t\t%s", _sequences[i].c_str()); + } } void HandlerTimerSequences::handle(Actor *actor) { - Handler::handle(actor); - Sequencer *sequencer = actor->getSequencer(); + Handler::handle(actor); + Sequencer *sequencer = actor->getSequencer(); - assert(!_sequences.empty()); + assert(!_sequences.empty()); - Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); - uint index = rnd.getRandomNumber(_sequences.size() - 1); + Common::RandomSource &rnd = actor->getPage()->getGame()->getRnd(); + uint index = rnd.getRandomNumber(_sequences.size() - 1); - Sequence *sequence = sequencer->findSequence(_sequences[index]); + Sequence *sequence = sequencer->findSequence(_sequences[index]); - assert(sequence); + assert(sequence); } } // End of namespace Pink diff --git a/engines/pink/objects/handlers/handler_timer.h b/engines/pink/objects/handlers/handler_timer.h index cbe6824d2a..b420272c2a 100644 --- a/engines/pink/objects/handlers/handler_timer.h +++ b/engines/pink/objects/handlers/handler_timer.h @@ -39,23 +39,23 @@ class HandlerTimer : public Handler { //in Peril this is HandlerTimer class HandlerTimerActions : public Handler { public: - virtual void toConsole(); - virtual void deserialize(Archive &archive); - virtual void handle(Actor *actor); + virtual void toConsole(); + virtual void deserialize(Archive &archive); + virtual void handle(Actor *actor); private: - StringArray _actions; + StringArray _actions; }; //appear in HokusPokus class HandlerTimerSequences : public HandlerSequences { //originally it was inherited from HandlerTimer public: - virtual void toConsole(); + virtual void toConsole(); - virtual void handle(Actor *actor); + virtual void handle(Actor *actor); protected: - virtual void execute(Sequence *sequence); + virtual void execute(Sequence *sequence); }; } // End of namespace Pink |