AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
MovementGeneratorMedium< T, D > Class Template Reference

#include "MovementGenerator.h"

Inheritance diagram for MovementGeneratorMedium< T, D >:
MovementGenerator FleeingMovementGenerator< Creature > PointMovementGenerator< Creature > TimedFleeingMovementGenerator AssistanceMovementGenerator

Public Member Functions

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 &)
 

Detailed Description

template<class T, class D>
class MovementGeneratorMedium< T, D >

Member Function Documentation

◆ Finalize()

template<class T , class D >
void MovementGeneratorMedium< T, D >::Finalize ( Unit u)
inlineoverridevirtual

Implements MovementGenerator.

Reimplemented in TimedFleeingMovementGenerator, and AssistanceMovementGenerator.

65 {
66 //u->AssertIsType<T>();
67 (static_cast<D*>(this))->DoFinalize(static_cast<T*>(u));
68 }

◆ Initialize()

template<class T , class D >
void MovementGeneratorMedium< T, D >::Initialize ( Unit u)
inlineoverridevirtual

Implements MovementGenerator.

59 {
60 //u->AssertIsType<T>();
61 (static_cast<D*>(this))->DoInitialize(static_cast<T*>(u));
62 }

◆ Reset()

template<class T , class D >
void MovementGeneratorMedium< T, D >::Reset ( Unit u)
inlineoverridevirtual

Implements MovementGenerator.

71 {
72 //u->AssertIsType<T>();
73 (static_cast<D*>(this))->DoReset(static_cast<T*>(u));
74 }

◆ Update()

template<class T , class D >
bool MovementGeneratorMedium< T, D >::Update ( Unit u,
uint32  time_diff 
)
inlineoverridevirtual

Implements MovementGenerator.

Reimplemented in TimedFleeingMovementGenerator.

77 {
78 //u->AssertIsType<T>();
79 return (static_cast<D*>(this))->DoUpdate(static_cast<T*>(u), time_diff);
80 }