diff options
author | shadowu@mail.bg <none@none> | 2008-12-19 00:37:40 +0200 |
---|---|---|
committer | shadowu@mail.bg <none@none> | 2008-12-19 00:37:40 +0200 |
commit | 51f0c70b7ea7eca2b0fcc05a38fa155b7378741f (patch) | |
tree | 52f9e2db42bfc10d9fd8b65b26c9884ae6ebe71c /src/game/RandomMovementGenerator.h | |
parent | 058db69e0730975cd0e3e03e5abca78828808dd8 (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.h | 13 |
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 |