aboutsummaryrefslogtreecommitdiff
path: root/src/game/RandomMovementGenerator.h
diff options
context:
space:
mode:
authorshadowu@mail.bg <none@none>2008-12-19 00:37:40 +0200
committershadowu@mail.bg <none@none>2008-12-19 00:37:40 +0200
commit51f0c70b7ea7eca2b0fcc05a38fa155b7378741f (patch)
tree52f9e2db42bfc10d9fd8b65b26c9884ae6ebe71c /src/game/RandomMovementGenerator.h
parent058db69e0730975cd0e3e03e5abca78828808dd8 (diff)
*Movement Generators standardization.
- bool GetDestination(&x,&y,&z) added to all movement generators.(it is used by update of players view distance) - Fixed when creature entering in combat not count this as StoppedByPlayer. - Random Movement Generator - added support for creating custom spawndist during the game. - Random Movement Generator - Db spawndist is checked only at initialize(NOT in each sellect of random location). - Added Random Movement to motion master - it can be called now by MoveRandom(spawndist) e.g. for use in SD2. - Home and Random movements no more using RespawnCoords(Home Position has implemented) - Fixed bug when creature is moving on path and enter combat, after that returns to spawn position. -Typo fix in Confused Movement Generator --HG-- branch : trunk
Diffstat (limited to 'src/game/RandomMovementGenerator.h')
-rw-r--r--src/game/RandomMovementGenerator.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/game/RandomMovementGenerator.h b/src/game/RandomMovementGenerator.h
index dd6e3a48283..a88b227d17f 100644
--- a/src/game/RandomMovementGenerator.h
+++ b/src/game/RandomMovementGenerator.h
@@ -25,17 +25,17 @@
#include "DestinationHolder.h"
#include "Traveller.h"
-
template<class T>
class TRINITY_DLL_SPEC RandomMovementGenerator
: public MovementGeneratorMedium< T, RandomMovementGenerator<T> >
{
public:
- RandomMovementGenerator() : i_nextMoveTime(0) {}
-
- void _setRandomLocation(T &);
+ // Wander dist is related on db spawn dist. So what if we wanna set eandom movement on summoned creature?!
+ RandomMovementGenerator(float spawn_dist = 0.0f) : i_nextMoveTime(0), wander_distance(spawn_dist) {}
+
+ void _setRandomLocation(T &);
void Initialize(T &);
- void Finalize(T &) {}
+ void Finalize(T &);
void Reset(T &);
bool Update(T &, const uint32 &);
bool GetDestination(float &x, float &y, float &z) const;
@@ -48,6 +48,7 @@ class TRINITY_DLL_SPEC RandomMovementGenerator
TimeTrackerSmall i_nextMoveTime;
DestinationHolder< Traveller<T> > i_destinationHolder;
- uint32 i_nextMove;
+ float wander_distance;
+ uint32 i_nextMove;
};
#endif