[9542] Make MovementGenerator::GetMovementGeneratorType() const

This commit is contained in:
VladimirMangos 2010-03-07 13:52:37 +03:00
parent 66f0e6662f
commit 531b3b669e
12 changed files with 36 additions and 35 deletions

View file

@ -38,7 +38,7 @@ class MANGOS_DLL_SPEC ConfusedMovementGenerator
void Reset(T &);
bool Update(T &, const uint32 &);
MovementGeneratorType GetMovementGeneratorType() { return CONFUSED_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return CONFUSED_MOTION_TYPE; }
private:
void _InitSpecific(T &, bool &, bool &);
TimeTracker i_nextMoveTime;

View file

@ -36,7 +36,7 @@ class MANGOS_DLL_SPEC FleeingMovementGenerator
void Reset(T &);
bool Update(T &, const uint32 &);
MovementGeneratorType GetMovementGeneratorType() { return FLEEING_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return FLEEING_MOTION_TYPE; }
private:
void _setTargetLocation(T &owner);
@ -68,7 +68,7 @@ class MANGOS_DLL_SPEC TimedFleeingMovementGenerator
FleeingMovementGenerator<Creature>(fright),
i_totalFleeTime(time) {}
MovementGeneratorType GetMovementGeneratorType() { return TIMED_FLEEING_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return TIMED_FLEEING_MOTION_TYPE; }
bool Update(Unit &, const uint32 &);
void Finalize(Unit &);

View file

@ -43,7 +43,7 @@ class MANGOS_DLL_SPEC HomeMovementGenerator<Creature>
void Reset(Creature &);
bool Update(Creature &, const uint32 &);
void modifyTravelTime(uint32 travel_time) { i_travel_timer = travel_time; }
MovementGeneratorType GetMovementGeneratorType() { return HOME_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return HOME_MOTION_TYPE; }
bool GetDestination(float& x, float& y, float& z) const { i_destinationHolder.GetDestination(x,y,z); return true; }
private:

View file

@ -30,7 +30,7 @@ class MANGOS_DLL_SPEC IdleMovementGenerator : public MovementGenerator
void Interrupt(Unit &) {}
void Reset(Unit &);
bool Update(Unit &, const uint32 &) { return true; }
MovementGeneratorType GetMovementGeneratorType() { return IDLE_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return IDLE_MOTION_TYPE; }
};
extern IdleMovementGenerator si_idleMovement;
@ -45,7 +45,7 @@ class MANGOS_DLL_SPEC DistractMovementGenerator : public MovementGenerator
void Interrupt(Unit& );
void Reset(Unit& );
bool Update(Unit& owner, const uint32& time_diff);
MovementGeneratorType GetMovementGeneratorType() { return DISTRACT_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return DISTRACT_MOTION_TYPE; }
private:
uint32 m_timer;
@ -57,7 +57,7 @@ class MANGOS_DLL_SPEC AssistanceDistractMovementGenerator : public DistractMovem
AssistanceDistractMovementGenerator(uint32 timer) :
DistractMovementGenerator(timer) {}
MovementGeneratorType GetMovementGeneratorType() { return ASSISTANCE_DISTRACT_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return ASSISTANCE_DISTRACT_MOTION_TYPE; }
void Finalize(Unit& unit);
};

View file

@ -5620,7 +5620,6 @@ bool ChatHandler::HandleMovegensCommand(const char* /*args*/)
case IDLE_MOTION_TYPE: SendSysMessage(LANG_MOVEGENS_IDLE); break;
case RANDOM_MOTION_TYPE: SendSysMessage(LANG_MOVEGENS_RANDOM); break;
case WAYPOINT_MOTION_TYPE: SendSysMessage(LANG_MOVEGENS_WAYPOINT); break;
case ANIMAL_RANDOM_MOTION_TYPE: SendSysMessage(LANG_MOVEGENS_ANIMAL_RANDOM); break;
case CONFUSED_MOTION_TYPE: SendSysMessage(LANG_MOVEGENS_CONFUSED); break;
case CHASE_MOTION_TYPE:
{

View file

@ -36,7 +36,7 @@ enum MovementGeneratorType
RANDOM_MOTION_TYPE = 1, // RandomMovementGenerator.h
WAYPOINT_MOTION_TYPE = 2, // WaypointMovementGenerator.h
MAX_DB_MOTION_TYPE = 3, // *** this and below motion types can't be set in DB.
ANIMAL_RANDOM_MOTION_TYPE = MAX_DB_MOTION_TYPE, // Just a dummy
CONFUSED_MOTION_TYPE = 4, // ConfusedMovementGenerator.h
CHASE_MOTION_TYPE = 5, // TargetedMovementGenerator.h
HOME_MOTION_TYPE = 6, // HomeMovementGenerator.h
@ -44,7 +44,7 @@ enum MovementGeneratorType
POINT_MOTION_TYPE = 8, // PointMovementGenerator.h
FLEEING_MOTION_TYPE = 9, // FleeingMovementGenerator.h
DISTRACT_MOTION_TYPE = 10, // IdleMovementGenerator.h
ASSISTANCE_MOTION_TYPE= 11, // PointMovementGenerator.h (first part of flee for assistance)
ASSISTANCE_MOTION_TYPE = 11, // PointMovementGenerator.h (first part of flee for assistance)
ASSISTANCE_DISTRACT_MOTION_TYPE = 12, // IdleMovementGenerator.h (second part of flee for assistance)
TIMED_FLEEING_MOTION_TYPE = 13, // FleeingMovementGenerator.h (alt.second part of flee for assistance)
FOLLOW_MOTION_TYPE = 14, // TargetedMovementGenerator.h
@ -99,12 +99,12 @@ class MANGOS_DLL_SPEC MotionMaster : private std::stack<MovementGenerator *>
void MoveFollow(Unit* target, float dist, float angle);
void MoveChase(Unit* target, float dist = 0.0f, float angle = 0.0f);
void MoveConfused();
void MoveFleeing(Unit* enemy, uint32 time = 0);
void MoveFleeing(Unit* enemy, uint32 timeLimit = 0);
void MovePoint(uint32 id, float x,float y,float z);
void MoveSeekAssistance(float x,float y,float z);
void MoveSeekAssistanceDistract(uint32 timer);
void MoveTaxiFlight(uint32 path, uint32 pathnode);
void MoveDistract(uint32 time);
void MoveDistract(uint32 timeLimit);
MovementGeneratorType GetCurrentMovementGeneratorType() const;

View file

@ -45,7 +45,7 @@ class MANGOS_DLL_SPEC MovementGenerator
virtual bool Update(Unit &, const uint32 &time_diff) = 0;
virtual MovementGeneratorType GetMovementGeneratorType() = 0;
virtual MovementGeneratorType GetMovementGeneratorType() const = 0;
virtual void unitSpeedChanged() { }
@ -123,5 +123,6 @@ struct MovementGeneratorFactory : public SelectableMovement
typedef FactoryHolder<MovementGenerator,MovementGeneratorType> MovementGeneratorCreator;
typedef FactoryHolder<MovementGenerator,MovementGeneratorType>::FactoryHolderRegistry MovementGeneratorRegistry;
typedef FactoryHolder<MovementGenerator,MovementGeneratorType>::FactoryHolderRepository MovementGeneratorRepository;
#endif

View file

@ -40,7 +40,7 @@ class MANGOS_DLL_SPEC PointMovementGenerator
void MovementInform(T &);
MovementGeneratorType GetMovementGeneratorType() { return POINT_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return POINT_MOTION_TYPE; }
bool GetDestination(float& x, float& y, float& z) const { x=i_x; y=i_y; z=i_z; return true; }
private:
@ -57,7 +57,7 @@ class MANGOS_DLL_SPEC AssistanceMovementGenerator
AssistanceMovementGenerator(float _x, float _y, float _z) :
PointMovementGenerator<Creature>(0, _x, _y, _z) {}
MovementGeneratorType GetMovementGeneratorType() { return ASSISTANCE_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return ASSISTANCE_MOTION_TYPE; }
void Finalize(Unit &);
};

View file

@ -28,7 +28,7 @@ class MANGOS_DLL_SPEC RandomMovementGenerator
: public MovementGeneratorMedium< T, RandomMovementGenerator<T> >
{
public:
RandomMovementGenerator(const Unit &) : i_nextMoveTime(0) {}
explicit RandomMovementGenerator(const Unit &) : i_nextMoveTime(0) {}
void _setRandomLocation(T &);
void Initialize(T &);
@ -40,7 +40,7 @@ class MANGOS_DLL_SPEC RandomMovementGenerator
{
i_destinationHolder.GetLocationNow(mapid, x,y,z);
}
MovementGeneratorType GetMovementGeneratorType() { return RANDOM_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return RANDOM_MOTION_TYPE; }
bool GetResetPosition(T&, float& x, float& y, float& z);
private:
@ -49,4 +49,5 @@ class MANGOS_DLL_SPEC RandomMovementGenerator
DestinationHolder< Traveller<T> > i_destinationHolder;
uint32 i_nextMove;
};
#endif

View file

@ -80,7 +80,7 @@ class MANGOS_DLL_SPEC ChaseMovementGenerator : public TargetedMovementGeneratorM
: TargetedMovementGeneratorMedium<T, ChaseMovementGenerator<T> >(target, offset, angle) {}
~ChaseMovementGenerator() {}
MovementGeneratorType GetMovementGeneratorType() { return CHASE_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return CHASE_MOTION_TYPE; }
void Initialize(T &);
void Finalize(T &);
@ -103,7 +103,7 @@ class MANGOS_DLL_SPEC FollowMovementGenerator : public TargetedMovementGenerator
: TargetedMovementGeneratorMedium<T, FollowMovementGenerator<T> >(target, offset, angle) {}
~FollowMovementGenerator() {}
MovementGeneratorType GetMovementGeneratorType() { return FOLLOW_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return FOLLOW_MOTION_TYPE; }
void Initialize(T &);
void Finalize(T &);

View file

@ -84,7 +84,7 @@ public PathMovementBase<Creature, WaypointPath const*>
void MovementInform(Creature &);
MovementGeneratorType GetMovementGeneratorType() { return WAYPOINT_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return WAYPOINT_MOTION_TYPE; }
// now path movement implmementation
void LoadPath(Creature &c);
@ -121,7 +121,7 @@ public PathMovementBase<Player>
void Interrupt(Player &);
void Reset(Player &);
bool Update(Player &, const uint32 &);
MovementGeneratorType GetMovementGeneratorType() { return FLIGHT_MOTION_TYPE; }
MovementGeneratorType GetMovementGeneratorType() const { return FLIGHT_MOTION_TYPE; }
void LoadPath(Player &);

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "9541"
#define REVISION_NR "9542"
#endif // __REVISION_NR_H__