AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "FleeingMovementGenerator.h"
Public Member Functions | |
FleeingMovementGenerator (ObjectGuid fleeTargetGUID) | |
MovementGeneratorType | GetMovementGeneratorType () override |
void | DoInitialize (T *) |
void | DoFinalize (T *) |
void | DoReset (T *) |
bool | DoUpdate (T *, uint32) |
void | DoFinalize (Player *owner) |
Public Member Functions inherited from MovementGeneratorMedium< T, FleeingMovementGenerator< T > > | |
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 void | Initialize (Unit *)=0 |
virtual void | Finalize (Unit *)=0 |
virtual void | Reset (Unit *)=0 |
virtual bool | Update (Unit *, uint32 time_diff)=0 |
virtual MovementGeneratorType | GetMovementGeneratorType ()=0 |
virtual uint32 | GetSplineId () const |
virtual void | unitSpeedChanged () |
virtual void | Pause (uint32) |
virtual void | Resume (uint32) |
virtual bool | GetResetPosition (float &, float &, float &) |
Private Member Functions | |
void | SetTargetLocation (T *) |
void | GetPoint (T *, Position &position) |
Private Attributes | |
std::unique_ptr< PathGenerator > | _path |
ObjectGuid | _fleeTargetGUID |
TimeTracker | _timer |
bool | _interrupt |
uint8 | _shortPathsCount |
|
inlineexplicit |
void FleeingMovementGenerator< Player >::DoFinalize | ( | Player * | owner | ) |
References Unit::ClearUnitState(), Unit::RemoveUnitFlag(), Unit::StopMoving(), UNIT_FLAG_FLEEING, and UNIT_STATE_FLEEING.
void FleeingMovementGenerator< T >::DoFinalize | ( | T * | ) |
template void FleeingMovementGenerator< T >::DoInitialize | ( | T * | ) |
template void FleeingMovementGenerator< T >::DoReset | ( | T * | ) |
template bool FleeingMovementGenerator< T >::DoUpdate | ( | T * | , |
uint32 | |||
) |
References UNIT_STATE_NOT_MOVE.
|
inlineoverridevirtual |
|
private |
References frand(), Position::GetAngle(), WorldObject::GetDistance(), ObjectAccessor::GetUnit(), MAX_QUIET_DISTANCE, and MIN_QUIET_DISTANCE.
|
private |
References Position::GetPosition(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), Movement::MoveSplineInit::Launch(), MIN_PATH_LENGTH, Movement::MoveSplineInit::MovebyPath(), PATHFIND_FARFROMPOLY, PATHFIND_NOPATH, PATHFIND_SHORTCUT, Movement::MoveSplineInit::SetWalk(), UNIT_STATE_FLEEING_MOVE, UNIT_STATE_NOT_MOVE, and urand().
|
private |
|
private |
|
private |
|
private |
|
private |