![]() |
TrinityCore
|
#include <ChaseMovementGenerator.h>
Inheritance diagram for ChaseMovementGenerator:Public Member Functions | |
| ChaseMovementGenerator (Unit *target, Optional< ChaseRange > range={}, Optional< ChaseAngle > angle={}) | |
| ~ChaseMovementGenerator () | |
| bool | Initialize (Unit *) override |
| bool | Reset (Unit *) override |
| bool | Update (Unit *, uint32) override |
| void | Deactivate (Unit *) override |
| void | Finalize (Unit *, bool, bool) override |
| MovementGeneratorType | GetMovementGeneratorType () const override |
| void | UnitSpeedChanged () override |
Public Member Functions inherited from MovementGenerator | |
| MovementGenerator () | |
| MovementGenerator (MovementGenerator const &)=delete | |
| MovementGenerator (MovementGenerator &&)=delete | |
| MovementGenerator & | operator= (MovementGenerator const &)=delete |
| MovementGenerator & | operator= (MovementGenerator &&)=delete |
| virtual | ~MovementGenerator () |
| virtual void | Pause (uint32) |
| virtual void | Resume (uint32) |
| virtual bool | GetResetPosition (Unit *, float &, float &, float &) |
| void | AddFlag (uint16 const flag) |
| bool | HasFlag (uint16 const flag) const |
| void | RemoveFlag (uint16 const flag) |
| virtual std::string | GetDebugInfo () const |
Public Member Functions inherited from AbstractFollower | |
| AbstractFollower (Unit *target=nullptr) | |
| ~AbstractFollower () | |
| void | SetTarget (Unit *unit) |
| Unit * | GetTarget () const |
Private Attributes | |
| Optional< ChaseRange > const | _range |
| Optional< ChaseAngle > const | _angle |
| std::unique_ptr< PathGenerator > | _path |
| Optional< Position > | _lastTargetPosition |
| TimeTracker | _rangeCheckTimer |
| bool | _movingTowards = true |
| bool | _mutualChase = true |
Static Private Attributes | |
| static constexpr uint32 | RANGE_CHECK_INTERVAL = 100 |
Additional Inherited Members | |
Public Attributes inherited from MovementGenerator | |
| uint8 | Priority |
| uint16 | Flags |
| uint32 | BaseUnitState |
| Scripting::v2::ActionResultSetter< MovementStopReason > | ScriptResult |
Protected Member Functions inherited from MovementGenerator | |
| void | SetScriptResult (MovementStopReason reason) |
Definition at line 31 of file ChaseMovementGenerator.h.
|
explicit |
Definition at line 66 of file ChaseMovementGenerator.cpp.
References MovementGenerator::BaseUnitState, MovementGenerator::Flags, MOTION_PRIORITY_NORMAL, MOVEMENTGENERATOR_FLAG_INITIALIZATION_PENDING, MovementGenerator::Priority, and UNIT_STATE_CHASE.
|
default |
|
overridevirtual |
Implements MovementGenerator.
Definition at line 244 of file ChaseMovementGenerator.cpp.
References MovementGenerator::AddFlag(), Unit::ClearUnitState(), MOVEMENTGENERATOR_FLAG_DEACTIVATED, MOVEMENTGENERATOR_FLAG_INFORM_ENABLED, MOVEMENTGENERATOR_FLAG_TRANSITORY, MovementGenerator::RemoveFlag(), Object::ToCreature(), and UNIT_STATE_CHASE_MOVE.
|
overridevirtual |
Implements MovementGenerator.
Definition at line 253 of file ChaseMovementGenerator.cpp.
References MovementGenerator::AddFlag(), Unit::ClearUnitState(), MOVEMENTGENERATOR_FLAG_FINALIZED, Object::ToCreature(), and UNIT_STATE_CHASE_MOVE.
|
inlineoverridevirtual |
Implements MovementGenerator.
Definition at line 42 of file ChaseMovementGenerator.h.
References CHASE_MOTION_TYPE.
|
overridevirtual |
Implements MovementGenerator.
Definition at line 75 of file ChaseMovementGenerator.cpp.
References _lastTargetPosition, _path, MovementGenerator::AddFlag(), MOVEMENTGENERATOR_FLAG_DEACTIVATED, MOVEMENTGENERATOR_FLAG_INFORM_ENABLED, MOVEMENTGENERATOR_FLAG_INITIALIZATION_PENDING, MOVEMENTGENERATOR_FLAG_INITIALIZED, and MovementGenerator::RemoveFlag().
Referenced by Reset().
|
overridevirtual |
Implements MovementGenerator.
Definition at line 85 of file ChaseMovementGenerator.cpp.
References Initialize(), MOVEMENTGENERATOR_FLAG_DEACTIVATED, and MovementGenerator::RemoveFlag().
|
inlineoverridevirtual |
Reimplemented from MovementGenerator.
Definition at line 44 of file ChaseMovementGenerator.h.
References _lastTargetPosition.
Implements MovementGenerator.
Definition at line 92 of file ChaseMovementGenerator.cpp.
References _angle, _lastTargetPosition, _movingTowards, _mutualChase, _path, _range, _rangeCheckTimer, MovementGenerator::AddFlag(), Unit::AddUnitState(), AlwaysWalk, Unit::CanFly(), CanWalk, Unit::ClearUnitState(), CONTACT_DISTANCE, DoMovementInform(), Position::GetAbsoluteAngle(), CreatureMovementData::GetChase(), Unit::GetCombatReach(), Unit::GetMeleeRange(), Creature::GetMovementTemplate(), WorldObject::GetNearPoint(), Position::GetPosition(), AbstractFollower::GetTarget(), MovementGenerator::HasFlag(), HasLostTarget(), Unit::HasUnitState(), Unit::IsAlive(), Unit::IsHovering(), Unit::isInAccessiblePlaceFor(), Position::IsInDist(), BaseEntity::IsInWorld(), Unit::IsMovementPreventedByCasting(), IsMutualChase(), Unit::IsPet(), Unit::IsWalking(), Movement::MoveSplineInit::Launch(), Movement::MoveSplineInit::MovebyPath(), MOVEMENTGENERATOR_FLAG_INFORM_ENABLED, Unit::movespline, TimeTracker::Passed(), PATHFIND_NOPATH, PositionOkay(), RANGE_CHECK_INTERVAL, MovementGenerator::RemoveFlag(), TimeTracker::Reset(), Creature::SetCannotReachTarget(), Movement::MoveSplineInit::SetFacing(), Unit::SetInFront(), Movement::MoveSplineInit::SetWalk(), Unit::StopMoving(), Position::ToAbsoluteAngle(), Object::ToCreature(), UNIT_STATE_CHASE_MOVE, UNIT_STATE_NOT_MOVE, TimeTracker::Update(), and WorldObject::UpdateAllowedPositionZ().
|
private |
Definition at line 50 of file ChaseMovementGenerator.h.
Referenced by Update().
Definition at line 53 of file ChaseMovementGenerator.h.
Referenced by Initialize(), UnitSpeedChanged(), and Update().
|
private |
Definition at line 55 of file ChaseMovementGenerator.h.
Referenced by Update().
|
private |
Definition at line 56 of file ChaseMovementGenerator.h.
Referenced by Update().
|
private |
Definition at line 52 of file ChaseMovementGenerator.h.
Referenced by Initialize(), and Update().
|
private |
Definition at line 49 of file ChaseMovementGenerator.h.
Referenced by Update().
|
private |
Definition at line 54 of file ChaseMovementGenerator.h.
Referenced by Update().
|
staticconstexprprivate |
Definition at line 47 of file ChaseMovementGenerator.h.
Referenced by Update().