18#ifndef TRINITY_POINTMOVEMENTGENERATOR_H
19#define TRINITY_POINTMOVEMENTGENERATOR_H
28 struct SpellEffectExtraData;
45 void Finalize(
Unit* owner,
bool active,
bool movementInform)
override;
71 void Finalize(
Unit* owner,
bool active,
bool movementInform)
override;
MovementWalkRunSpeedSelectionMode
@ MOVEMENTGENERATOR_FLAG_SPEED_UPDATE_PENDING
std::optional< T > Optional
Optional helper class to wrap optional values within.
AssistanceMovementGenerator(uint32 id, float x, float y, float z)
void Finalize(Unit *owner, bool active, bool movementInform) override
MovementGeneratorType GetMovementGeneratorType() const override
void AddFlag(uint16 const flag)
MovementWalkRunSpeedSelectionMode _speedSelectionMode
Optional< float > _closeEnoughDistance
Optional< float > _finalOrient
if set then unit will turn to specified _orient in provided _pos
void MovementInform(Unit *)
void Deactivate(Unit *owner) override
void Initialize(Unit *owner) override
PointMovementGenerator(uint32 id, float x, float y, float z, bool generatePath, Optional< float > speed={}, Optional< float > finalOrient={}, Unit const *faceTarget=nullptr, Movement::SpellEffectExtraData const *spellEffectExtraData=nullptr, MovementWalkRunSpeedSelectionMode speedSelectionMode=MovementWalkRunSpeedSelectionMode::Default, Optional< float > closeEnoughDistance={})
void UnitSpeedChanged() override
MovementGeneratorType GetMovementGeneratorType() const override
std::unique_ptr< Movement::SpellEffectExtraData > i_spellEffectExtra
Unit const * i_faceTarget
bool Update(Unit *owner, uint32 diff) override
void Finalize(Unit *owner, bool active, bool movementInform) override
void Reset(Unit *owner) override