//-------------------------- Process ------------------------------------------ //----------------------------------------------------------------------------- int GoalAttackTarget::process() { //if status is inactive, call Activate() activateIfInactive(); //process the subgoals _status = processSubgoals(); reactivateIfFailed(); return _status; }
//-------------------------- process ------------------------------------------ //----------------------------------------------------------------------------- int GoalPersistanceAttack::process() { //if status is INACTIVE, call activate() activateIfInactive(); _status = processSubgoals(); if (_status == COMPLETED && _owner->getTargetSys()->getTarget()->isAlive()) { activate(); } return _status; }
Goal<ZeldaEntity>::Status Goal_MoveToPosition::process(const sf::Time& dt) { if (isInactive()) { activate(); } setStatus(processSubgoals(dt)); if (hasFailed()) { activate(); } return getStatus(); }
//------------------------------ process -------------------------------------- // // processes the subgoals //----------------------------------------------------------------------------- int GoalThink::process() { activateIfInactive(); int subgoal_status = processSubgoals(); if (subgoal_status == COMPLETED || subgoal_status == FAILED) { if (!_owner->isPossessed()) { _status = INACTIVE; } } return _status; }