![]() |
AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "FormationMovementGenerator.h"
Public Member Functions | |
| FormationMovementGenerator (Unit *leader, float range, float angle, uint32 point1, uint32 point2) | |
| MovementGeneratorType | GetMovementGeneratorType () |
| void | DoInitialize (Creature *) |
| void | DoFinalize (Creature *) |
| void | DoReset (Creature *) |
| bool | DoUpdate (Creature *, uint32) |
Public Member Functions inherited from MovementGeneratorMedium< Creature, FormationMovementGenerator > | |
| void | Initialize (Unit *u) override |
| void | Finalize (Unit *u) override |
| void | Reset (Unit *u) override |
| bool | Update (Unit *u, uint32 time_diff) override |
Public Member Functions inherited from MovementGenerator | |
| virtual | ~MovementGenerator () |
| virtual uint32 | GetSplineId () const |
| virtual void | unitSpeedChanged () |
| virtual void | Pause (uint32) |
| virtual void | Resume (uint32) |
| virtual bool | GetResetPosition (float &, float &, float &) |
Public Member Functions inherited from AbstractFollower | |
| AbstractFollower (Unit *target=nullptr) | |
| virtual | ~AbstractFollower () |
| void | SetTarget (Unit *unit) |
| Unit * | GetTarget () const |
Private Member Functions | |
| void | MovementInform (Creature *owner) |
| void | LaunchMovement (Creature *owner, Unit *target) |
Private Attributes | |
| float const | _range |
| float | _angle |
| uint32 const | _point1 |
| uint32 const | _point2 |
| uint32 | _lastLeaderSplineID |
| bool | _hasPredictedDestination |
| bool | _isMoving |
| Position | _lastLeaderPosition |
| TimeTracker | _nextMoveTimer |
Static Private Attributes | |
| static constexpr uint32 | FORMATION_MOVEMENT_INTERVAL = 1200 |
|
explicit |
| void FormationMovementGenerator::DoFinalize | ( | Creature * | owner | ) |
References Unit::ClearUnitState(), and UNIT_STATE_FOLLOW_MOVE.
| void FormationMovementGenerator::DoInitialize | ( | Creature * | owner | ) |
References _nextMoveTimer, Unit::HasUnitState(), Creature::IsMovementPreventedByCasting(), TimeTracker::Reset(), Unit::StopMoving(), and UNIT_STATE_NOT_MOVE.
Referenced by DoReset().
| void FormationMovementGenerator::DoReset | ( | Creature * | owner | ) |
References DoInitialize().
References _angle, _hasPredictedDestination, _isMoving, _lastLeaderPosition, _lastLeaderSplineID, _nextMoveTimer, _point1, _point2, Movement::MoveSpline::Finalized(), FORMATION_MOVEMENT_INTERVAL, Creature::GetFormation(), Movement::MoveSpline::GetId(), Position::GetOrientation(), Position::GetPosition(), AbstractFollower::GetTarget(), Unit::HasUnitState(), Object::IsCreature(), Creature::IsMovementPreventedByCasting(), LaunchMovement(), MovementInform(), Unit::movespline, Position::NormalizeOrientation(), TimeTracker::Passed(), TimeTracker::Reset(), Unit::SetFacingTo(), Creature::SetHomePosition(), Unit::StopMoving(), Object::ToCreature(), UNIT_STATE_NOT_MOVE, and TimeTracker::Update().
|
inlinevirtual |
References _angle, _hasPredictedDestination, _isMoving, _lastLeaderPosition, _range, Unit::AddUnitState(), Movement::MoveSpline::CurrentDestination(), Movement::MoveSpline::Finalized(), Position::GetExactDist(), Position::GetPosition(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), Position::GetRelativeAngle(), Unit::GetSpeed(), Movement::MoveSplineInit::Launch(), MOVE_WALK, WorldObject::MovePositionToFirstCollision(), Unit::movespline, Movement::MoveSplineInit::MoveTo(), Position::Relocate(), Movement::MoveSplineInit::SetVelocity(), UNIT_STATE_FOLLOW_MOVE, and Movement::MoveSpline::Velocity().
Referenced by DoUpdate().
|
private |
References Creature::AI(), FORMATION_MOTION_TYPE, and CreatureAI::MovementInform().
Referenced by DoUpdate().
|
private |
Referenced by DoUpdate(), and LaunchMovement().
|
private |
Referenced by DoUpdate(), and LaunchMovement().
|
private |
Referenced by DoUpdate(), and LaunchMovement().
|
private |
Referenced by DoUpdate(), and LaunchMovement().
|
private |
Referenced by DoUpdate().
|
private |
Referenced by DoInitialize(), and DoUpdate().
|
private |
Referenced by DoUpdate().
|
private |
Referenced by DoUpdate().
|
private |
Referenced by LaunchMovement().
|
staticconstexprprivate |
Referenced by DoUpdate().