diff options
| author | Spp <spp@jorge.gr> | 2012-11-27 13:02:04 +0100 |
|---|---|---|
| committer | Spp <spp@jorge.gr> | 2012-11-27 13:03:12 +0100 |
| commit | e9544985608e551d3765dea525d63b30d2c03b17 (patch) | |
| tree | e4ffe11ce5d87171d623c3893a0275162f2307ab /src/server/game/Movement | |
| parent | 2251d1bfae88b8f7d18d4111929f4bb03f4a4131 (diff) | |
Core/Misc: Random changes here and there to minimize differences with 4.3.4 branch
Diffstat (limited to 'src/server/game/Movement')
19 files changed, 136 insertions, 132 deletions
diff --git a/src/server/game/Movement/MotionMaster.h b/src/server/game/Movement/MotionMaster.h index 8d7fdee7ad2..7037d1316f1 100644 --- a/src/server/game/Movement/MotionMaster.h +++ b/src/server/game/Movement/MotionMaster.h @@ -163,7 +163,9 @@ class MotionMaster //: private std::stack<MovementGenerator *> void MoveCharge(float x, float y, float z, float speed = SPEED_CHARGE, uint32 id = EVENT_CHARGE); void MoveKnockbackFrom(float srcX, float srcY, float speedXY, float speedZ); void MoveJumpTo(float angle, float speedXY, float speedZ); - void MoveJump(float x, float y, float z, float speedXY, float speedZ, uint32 id = 0); + void MoveJump(Position const& pos, float speedXY, float speedZ, uint32 id = EVENT_JUMP) + { MoveJump(pos.m_positionX, pos.m_positionY, pos.m_positionZ, speedXY, speedZ, id); }; + void MoveJump(float x, float y, float z, float speedXY, float speedZ, uint32 id = EVENT_JUMP); void MoveFall(uint32 id = 0); void MoveSeekAssistance(float x, float y, float z); diff --git a/src/server/game/Movement/MovementGenerator.h b/src/server/game/Movement/MovementGenerator.h index 0c1fc8114ca..e586d7e6ae6 100644 --- a/src/server/game/Movement/MovementGenerator.h +++ b/src/server/game/Movement/MovementGenerator.h @@ -38,7 +38,7 @@ class MovementGenerator virtual void Reset(Unit &) = 0; - virtual bool Update(Unit &, const uint32& time_diff) = 0; + virtual bool Update(Unit &, uint32 time_diff) = 0; virtual MovementGeneratorType GetMovementGeneratorType() = 0; @@ -64,7 +64,7 @@ class MovementGeneratorMedium : public MovementGenerator //u->AssertIsType<T>(); (static_cast<D*>(this))->DoReset(*((T*)&u)); } - bool Update(Unit &u, const uint32& time_diff) + bool Update(Unit &u, uint32 time_diff) { //u->AssertIsType<T>(); return (static_cast<D*>(this))->DoUpdate(*((T*)&u), time_diff); diff --git a/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.cpp index b8925c8b512..f93e94fa35b 100644..100755 --- a/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.cpp @@ -109,7 +109,7 @@ void ConfusedMovementGenerator<T>::DoReset(T &unit) } template<class T> -bool ConfusedMovementGenerator<T>::DoUpdate(T &unit, const uint32 &diff) +bool ConfusedMovementGenerator<T>::DoUpdate(T &unit, uint32 diff) { if (unit.HasUnitState(UNIT_STATE_ROOT | UNIT_STATE_STUNNED | UNIT_STATE_DISTRACTED)) return true; @@ -168,6 +168,6 @@ template void ConfusedMovementGenerator<Player>::DoInitialize(Player &player); template void ConfusedMovementGenerator<Creature>::DoInitialize(Creature &creature); template void ConfusedMovementGenerator<Player>::DoReset(Player &player); template void ConfusedMovementGenerator<Creature>::DoReset(Creature &creature); -template bool ConfusedMovementGenerator<Player>::DoUpdate(Player &player, const uint32 &diff); -template bool ConfusedMovementGenerator<Creature>::DoUpdate(Creature &creature, const uint32 &diff); +template bool ConfusedMovementGenerator<Player>::DoUpdate(Player &player, uint32 diff); +template bool ConfusedMovementGenerator<Creature>::DoUpdate(Creature &creature, uint32 diff); diff --git a/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.h b/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.h index 1943b113888..34ce1e04dd2 100644..100755 --- a/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/ConfusedMovementGenerator.h @@ -33,7 +33,7 @@ class ConfusedMovementGenerator : public MovementGeneratorMedium< T, ConfusedMov void DoInitialize(T &); void DoFinalize(T &); void DoReset(T &); - bool DoUpdate(T &, const uint32 &); + bool DoUpdate(T &, uint32); MovementGeneratorType GetMovementGeneratorType() { return CONFUSED_MOTION_TYPE; } private: diff --git a/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.cpp index ceeb8c18201..b070e21ed5b 100644..100755 --- a/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.cpp @@ -355,7 +355,7 @@ void FleeingMovementGenerator<T>::DoReset(T &owner) } template<class T> -bool FleeingMovementGenerator<T>::DoUpdate(T &owner, const uint32 &time_diff) +bool FleeingMovementGenerator<T>::DoUpdate(T &owner, uint32 time_diff) { if (!&owner || !owner.isAlive()) return false; @@ -382,8 +382,8 @@ template void FleeingMovementGenerator<Player>::_setTargetLocation(Player &); template void FleeingMovementGenerator<Creature>::_setTargetLocation(Creature &); template void FleeingMovementGenerator<Player>::DoReset(Player &); template void FleeingMovementGenerator<Creature>::DoReset(Creature &); -template bool FleeingMovementGenerator<Player>::DoUpdate(Player &, const uint32 &); -template bool FleeingMovementGenerator<Creature>::DoUpdate(Creature &, const uint32 &); +template bool FleeingMovementGenerator<Player>::DoUpdate(Player &, uint32); +template bool FleeingMovementGenerator<Creature>::DoUpdate(Creature &, uint32); void TimedFleeingMovementGenerator::Finalize(Unit &owner) { @@ -399,7 +399,7 @@ void TimedFleeingMovementGenerator::Finalize(Unit &owner) } } -bool TimedFleeingMovementGenerator::Update(Unit & owner, const uint32& time_diff) +bool TimedFleeingMovementGenerator::Update(Unit & owner, uint32 time_diff) { if (!owner.isAlive()) return false; @@ -414,7 +414,7 @@ bool TimedFleeingMovementGenerator::Update(Unit & owner, const uint32& time_diff if (i_totalFleeTime.Passed()) return false; - // This calls grant-parent Update method hiden by FleeingMovementGenerator::Update(Creature &, const uint32 &) version + // This calls grant-parent Update method hiden by FleeingMovementGenerator::Update(Creature &, uint32) version // This is done instead of casting Unit& to Creature& and call parent method, then we can use Unit directly return MovementGeneratorMedium< Creature, FleeingMovementGenerator<Creature> >::Update(owner, time_diff); } diff --git a/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.h b/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.h index 288abbb5753..5acebb54c99 100644..100755 --- a/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/FleeingMovementGenerator.h @@ -30,7 +30,7 @@ class FleeingMovementGenerator : public MovementGeneratorMedium< T, FleeingMovem void DoInitialize(T &); void DoFinalize(T &); void DoReset(T &); - bool DoUpdate(T &, const uint32 &); + bool DoUpdate(T &, uint32); MovementGeneratorType GetMovementGeneratorType() { return FLEEING_MOTION_TYPE; } @@ -62,7 +62,7 @@ class TimedFleeingMovementGenerator : public FleeingMovementGenerator<Creature> i_totalFleeTime(time) {} MovementGeneratorType GetMovementGeneratorType() { return TIMED_FLEEING_MOTION_TYPE; } - bool Update(Unit &, const uint32&); + bool Update(Unit &, uint32); void Finalize(Unit &); private: diff --git a/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp index 5a2090cfe28..e237f22e8b1 100644..100755 --- a/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp @@ -48,7 +48,7 @@ void RotateMovementGenerator::Initialize(Unit& owner) owner.AttackStop(); } -bool RotateMovementGenerator::Update(Unit& owner, const uint32& diff) +bool RotateMovementGenerator::Update(Unit& owner, uint32 diff) { float angle = owner.GetOrientation(); if (m_direction == ROTATE_DIRECTION_LEFT) @@ -89,7 +89,7 @@ void DistractMovementGenerator::Finalize(Unit& owner) owner.ClearUnitState(UNIT_STATE_DISTRACTED); } -bool DistractMovementGenerator::Update(Unit& /*owner*/, const uint32& time_diff) +bool DistractMovementGenerator::Update(Unit& /*owner*/, uint32 time_diff) { if (time_diff > m_timer) return false; diff --git a/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.h b/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.h index 7acec82af98..ad28cc185e6 100644 --- a/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/IdleMovementGenerator.h @@ -28,7 +28,7 @@ class IdleMovementGenerator : public MovementGenerator void Initialize(Unit &); void Finalize(Unit &) { } void Reset(Unit &); - bool Update(Unit &, const uint32&) { return true; } + bool Update(Unit &, uint32) { return true; } MovementGeneratorType GetMovementGeneratorType() { return IDLE_MOTION_TYPE; } }; @@ -42,7 +42,7 @@ class RotateMovementGenerator : public MovementGenerator void Initialize(Unit& owner); void Finalize(Unit& owner); void Reset(Unit& owner) { Initialize(owner); } - bool Update(Unit& owner, const uint32& time_diff); + bool Update(Unit& owner, uint32 time_diff); MovementGeneratorType GetMovementGeneratorType() { return ROTATE_MOTION_TYPE; } private: @@ -58,7 +58,7 @@ class DistractMovementGenerator : public MovementGenerator void Initialize(Unit& owner); void Finalize(Unit& owner); void Reset(Unit& owner) { Initialize(owner); } - bool Update(Unit& owner, const uint32& time_diff); + bool Update(Unit& owner, uint32 time_diff); MovementGeneratorType GetMovementGeneratorType() { return DISTRACT_MOTION_TYPE; } private: diff --git a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp index 91f77e8ebfe..9bc3e09640f 100644 --- a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.cpp @@ -42,7 +42,7 @@ void PointMovementGenerator<T>::DoInitialize(T &unit) } template<class T> -bool PointMovementGenerator<T>::DoUpdate(T &unit, const uint32 & /*diff*/) +bool PointMovementGenerator<T>::DoUpdate(T &unit, uint32 /*diff*/) { if (!&unit) return false; @@ -103,8 +103,8 @@ template void PointMovementGenerator<Player>::DoFinalize(Player&); template void PointMovementGenerator<Creature>::DoFinalize(Creature&); template void PointMovementGenerator<Player>::DoReset(Player&); template void PointMovementGenerator<Creature>::DoReset(Creature&); -template bool PointMovementGenerator<Player>::DoUpdate(Player &, const uint32 &); -template bool PointMovementGenerator<Creature>::DoUpdate(Creature&, const uint32 &); +template bool PointMovementGenerator<Player>::DoUpdate(Player &, uint32); +template bool PointMovementGenerator<Creature>::DoUpdate(Creature&, uint32); void AssistanceMovementGenerator::Finalize(Unit &unit) { @@ -114,7 +114,7 @@ void AssistanceMovementGenerator::Finalize(Unit &unit) unit.GetMotionMaster()->MoveSeekAssistanceDistract(sWorld->getIntConfig(CONFIG_CREATURE_FAMILY_ASSISTANCE_DELAY)); } -bool EffectMovementGenerator::Update(Unit &unit, const uint32&) +bool EffectMovementGenerator::Update(Unit &unit, uint32) { return !unit.movespline->Finalized(); } diff --git a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h index 62ffb931e6d..93516e5d354 100644 --- a/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/PointMovementGenerator.h @@ -32,7 +32,7 @@ class PointMovementGenerator : public MovementGeneratorMedium< T, PointMovementG void DoInitialize(T &); void DoFinalize(T &); void DoReset(T &); - bool DoUpdate(T &, const uint32 &); + bool DoUpdate(T &, uint32); void MovementInform(T &); @@ -66,7 +66,7 @@ class EffectMovementGenerator : public MovementGenerator void Initialize(Unit &) {} void Finalize(Unit &unit); void Reset(Unit &) {} - bool Update(Unit &u, const uint32&); + bool Update(Unit &u, uint32); MovementGeneratorType GetMovementGeneratorType() { return EFFECT_MOTION_TYPE; } private: uint32 m_Id; diff --git a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp index 9a4d33a5665..7a669642e7e 100644..100755 --- a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.cpp @@ -139,7 +139,7 @@ void TargetedMovementGeneratorMedium<Creature,FollowMovementGenerator<Creature> } template<class T, typename D> -bool TargetedMovementGeneratorMedium<T,D>::DoUpdate(T &owner, const uint32 & time_diff) +bool TargetedMovementGeneratorMedium<T,D>::DoUpdate(T &owner, uint32 time_diff) { if (!i_target.isValid() || !i_target->IsInWorld()) return false; @@ -325,10 +325,10 @@ template void TargetedMovementGeneratorMedium<Player,ChaseMovementGenerator<Play template void TargetedMovementGeneratorMedium<Player,FollowMovementGenerator<Player> >::_setTargetLocation(Player &); template void TargetedMovementGeneratorMedium<Creature,ChaseMovementGenerator<Creature> >::_setTargetLocation(Creature &); template void TargetedMovementGeneratorMedium<Creature,FollowMovementGenerator<Creature> >::_setTargetLocation(Creature &); -template bool TargetedMovementGeneratorMedium<Player,ChaseMovementGenerator<Player> >::DoUpdate(Player &, const uint32 &); -template bool TargetedMovementGeneratorMedium<Player,FollowMovementGenerator<Player> >::DoUpdate(Player &, const uint32 &); -template bool TargetedMovementGeneratorMedium<Creature,ChaseMovementGenerator<Creature> >::DoUpdate(Creature &, const uint32 &); -template bool TargetedMovementGeneratorMedium<Creature,FollowMovementGenerator<Creature> >::DoUpdate(Creature &, const uint32 &); +template bool TargetedMovementGeneratorMedium<Player,ChaseMovementGenerator<Player> >::DoUpdate(Player &, uint32); +template bool TargetedMovementGeneratorMedium<Player,FollowMovementGenerator<Player> >::DoUpdate(Player &, uint32); +template bool TargetedMovementGeneratorMedium<Creature,ChaseMovementGenerator<Creature> >::DoUpdate(Creature &, uint32); +template bool TargetedMovementGeneratorMedium<Creature,FollowMovementGenerator<Creature> >::DoUpdate(Creature &, uint32); template void ChaseMovementGenerator<Player>::_reachTarget(Player &); template void ChaseMovementGenerator<Creature>::_reachTarget(Creature &); diff --git a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.h b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.h index 94b4078efbd..67cd8771aa7 100644..100755 --- a/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/TargetedMovementGenerator.h @@ -46,7 +46,7 @@ class TargetedMovementGeneratorMedium : public MovementGeneratorMedium< T, D >, ~TargetedMovementGeneratorMedium() {} public: - bool DoUpdate(T &, const uint32 &); + bool DoUpdate(T &, uint32); Unit* GetTarget() const { return i_target.getTarget(); } void unitSpeedChanged() { i_recalculateTravel=true; } @@ -113,4 +113,3 @@ class FollowMovementGenerator : public TargetedMovementGeneratorMedium<T, Follow }; #endif - diff --git a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp index 5a65e6e3493..e9c9cf6548d 100644 --- a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp +++ b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.cpp @@ -130,7 +130,7 @@ bool WaypointMovementGenerator<Creature>::StartMove(Creature &creature) return true; } -bool WaypointMovementGenerator<Creature>::DoUpdate(Creature &creature, const uint32 &diff) +bool WaypointMovementGenerator<Creature>::DoUpdate(Creature &creature, uint32 diff) { // Waypoint movement can be switched on/off // This is quite handy for escort quests and other stuff @@ -241,7 +241,7 @@ void FlightPathMovementGenerator::DoReset(Player & player) init.Launch(); } -bool FlightPathMovementGenerator::DoUpdate(Player &player, const uint32& /*diff*/) +bool FlightPathMovementGenerator::DoUpdate(Player &player, uint32 /*diff*/) { uint32 pointId = (uint32)player.movespline->currentPathIdx(); if (pointId > i_currentNode) diff --git a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h index bb6381da2f0..0bd75076a33 100644 --- a/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h +++ b/src/server/game/Movement/MovementGenerators/WaypointMovementGenerator.h @@ -68,7 +68,7 @@ class WaypointMovementGenerator<Creature> : public MovementGeneratorMedium< Crea void DoInitialize(Creature &); void DoFinalize(Creature &); void DoReset(Creature &); - bool DoUpdate(Creature &, const uint32 &diff); + bool DoUpdate(Creature &, uint32 diff); void MovementInform(Creature &); @@ -121,7 +121,7 @@ class FlightPathMovementGenerator : public MovementGeneratorMedium< Player, Flig void DoInitialize(Player &); void DoReset(Player &); void DoFinalize(Player &); - bool DoUpdate(Player &, const uint32&); + bool DoUpdate(Player &, uint32); MovementGeneratorType GetMovementGeneratorType() { return FLIGHT_MOTION_TYPE; } TaxiPathNodeList const& GetPath() { return *i_path; } diff --git a/src/server/game/Movement/Spline/MoveSpline.cpp b/src/server/game/Movement/Spline/MoveSpline.cpp index 1821a78d993..1e96cd00fd3 100644 --- a/src/server/game/Movement/Spline/MoveSpline.cpp +++ b/src/server/game/Movement/Spline/MoveSpline.cpp @@ -51,15 +51,15 @@ Location MoveSpline::ComputePosition() const if (splineflags.final_angle) c.orientation = facing.angle; else if (splineflags.final_point) - c.orientation = atan2(facing.f.y-c.y, facing.f.x-c.x); + c.orientation = atan2(facing.f.y - c.y, facing.f.x - c.x); //nothing to do for MoveSplineFlag::Final_Target flag } else { - if (!splineflags.hasFlag(MoveSplineFlag::OrientationFixed|MoveSplineFlag::Falling)) + if (!splineflags.hasFlag(MoveSplineFlag::OrientationFixed | MoveSplineFlag::Falling)) { Vector3 hermite; - spline.evaluate_derivative(point_Idx,u,hermite); + spline.evaluate_derivative(point_Idx, u, hermite); c.orientation = atan2(hermite.y, hermite.x); } diff --git a/src/server/game/Movement/Spline/MoveSpline.h b/src/server/game/Movement/Spline/MoveSpline.h index 945adf6d9f8..46611e58447 100644 --- a/src/server/game/Movement/Spline/MoveSpline.h +++ b/src/server/game/Movement/Spline/MoveSpline.h @@ -41,7 +41,8 @@ namespace Movement { public: typedef Spline<int32> MySpline; - enum UpdateResult{ + enum UpdateResult + { Result_None = 0x01, Result_Arrived = 0x02, Result_NextCycle = 0x04, @@ -70,27 +71,27 @@ namespace Movement void init_spline(const MoveSplineInitArgs& args); protected: - const MySpline::ControlArray& getPath() const { return spline.getPoints();} + const MySpline::ControlArray& getPath() const { return spline.getPoints(); } void computeParabolicElevation(float& el) const; void computeFallElevation(float& el) const; UpdateResult _updateState(int32& ms_time_diff); - int32 next_timestamp() const { return spline.length(point_Idx+1);} - int32 segment_time_elapsed() const { return next_timestamp()-time_passed;} - int32 Duration() const { return spline.length();} - int32 timeElapsed() const { return Duration() - time_passed;} - int32 timePassed() const { return time_passed;} + int32 next_timestamp() const { return spline.length(point_Idx+1); } + int32 segment_time_elapsed() const { return next_timestamp()-time_passed; } + int32 Duration() const { return spline.length(); } + int32 timeElapsed() const { return Duration() - time_passed; } + int32 timePassed() const { return time_passed; } public: - const MySpline& _Spline() const { return spline;} - int32 _currentSplineIdx() const { return point_Idx;} + const MySpline& _Spline() const { return spline; } + int32 _currentSplineIdx() const { return point_Idx; } void _Finalize(); void _Interrupt() { splineflags.done = true;} public: void Initialize(const MoveSplineInitArgs&); - bool Initialized() const { return !spline.empty();} + bool Initialized() const { return !spline.empty(); } explicit MoveSpline(); @@ -112,11 +113,11 @@ namespace Movement Location ComputePosition() const; - uint32 GetId() const { return m_Id;} + uint32 GetId() const { return m_Id; } bool Finalized() const { return splineflags.done; } - bool isCyclic() const { return splineflags.cyclic;} - const Vector3 FinalDestination() const { return Initialized() ? spline.getPoint(spline.last()) : Vector3();} - const Vector3 CurrentDestination() const { return Initialized() ? spline.getPoint(point_Idx+1) : Vector3();} + bool isCyclic() const { return splineflags.cyclic; } + const Vector3 FinalDestination() const { return Initialized() ? spline.getPoint(spline.last()) : Vector3(); } + const Vector3 CurrentDestination() const { return Initialized() ? spline.getPoint(point_Idx+1) : Vector3(); } int32 currentPathIdx() const; bool onTransport; diff --git a/src/server/game/Movement/Spline/MoveSplineFlag.h b/src/server/game/Movement/Spline/MoveSplineFlag.h index a7262182391..f3f436c9d00 100644 --- a/src/server/game/Movement/Spline/MoveSplineFlag.h +++ b/src/server/game/Movement/Spline/MoveSplineFlag.h @@ -33,7 +33,8 @@ namespace Movement class MoveSplineFlag { public: - enum eFlags{ + enum eFlags + { None = 0x00000000, // x00-xFF(first byte) used as animation Ids storage in pair with Animation flag Done = 0x00000100, @@ -73,8 +74,8 @@ namespace Movement Mask_Unused = No_Spline|Enter_Cycle|Frozen|Unknown7|Unknown8|Unknown10|Unknown11|Unknown12|Unknown13 }; - inline uint32& raw() { return (uint32&)*this;} - inline const uint32& raw() const { return (const uint32&)*this;} + inline uint32& raw() { return (uint32&)*this; } + inline const uint32& raw() const { return (const uint32&)*this; } MoveSplineFlag() { raw() = 0; } MoveSplineFlag(uint32 f) { raw() = f; } @@ -82,21 +83,21 @@ namespace Movement // Constant interface - bool isSmooth() const { return raw() & Mask_CatmullRom;} - bool isLinear() const { return !isSmooth();} - bool isFacing() const { return raw() & Mask_Final_Facing;} + bool isSmooth() const { return raw() & Mask_CatmullRom; } + bool isLinear() const { return !isSmooth(); } + bool isFacing() const { return raw() & Mask_Final_Facing; } - uint8 getAnimationId() const { return animId;} - bool hasAllFlags(uint32 f) const { return (raw() & f) == f;} - bool hasFlag(uint32 f) const { return (raw() & f) != 0;} - uint32 operator & (uint32 f) const { return (raw() & f);} - uint32 operator | (uint32 f) const { return (raw() | f);} + uint8 getAnimationId() const { return animId; } + bool hasAllFlags(uint32 f) const { return (raw() & f) == f; } + bool hasFlag(uint32 f) const { return (raw() & f) != 0; } + uint32 operator & (uint32 f) const { return (raw() & f); } + uint32 operator | (uint32 f) const { return (raw() | f); } std::string ToString() const; // Not constant interface - void operator &= (uint32 f) { raw() &= f;} - void operator |= (uint32 f) { raw() |= f;} + void operator &= (uint32 f) { raw() &= f; } + void operator |= (uint32 f) { raw() |= f; } void EnableAnimation(uint8 anim) { raw() = (raw() & ~(Mask_Animations | Falling | Parabolic)) | Animation | anim; } void EnableParabolic() { raw() = (raw() & ~(Mask_Animations | Falling | Animation)) | Parabolic; } @@ -109,31 +110,31 @@ namespace Movement void EnableTransportEnter() { raw() = (raw() & ~TransportExit) | TransportEnter; } void EnableTransportExit() { raw() = (raw() & ~TransportEnter) | TransportExit; } - uint8 animId : 8; - bool done : 1; - bool falling : 1; - bool no_spline : 1; - bool parabolic : 1; - bool walkmode : 1; - bool flying : 1; - bool orientationFixed : 1; - bool final_point : 1; - bool final_target : 1; - bool final_angle : 1; - bool catmullrom : 1; - bool cyclic : 1; - bool enter_cycle : 1; - bool animation : 1; - bool frozen : 1; - bool transportEnter: 1; - bool transportExit : 1; - bool unknown7 : 1; - bool unknown8 : 1; + uint8 animId : 8; + bool done : 1; + bool falling : 1; + bool no_spline : 1; + bool parabolic : 1; + bool walkmode : 1; + bool flying : 1; + bool orientationFixed : 1; + bool final_point : 1; + bool final_target : 1; + bool final_angle : 1; + bool catmullrom : 1; + bool cyclic : 1; + bool enter_cycle : 1; + bool animation : 1; + bool frozen : 1; + bool transportEnter : 1; + bool transportExit : 1; + bool unknown7 : 1; + bool unknown8 : 1; bool orientationInversed : 1; - bool unknown10 : 1; - bool unknown11 : 1; - bool unknown12 : 1; - bool unknown13 : 1; + bool unknown10 : 1; + bool unknown11 : 1; + bool unknown12 : 1; + bool unknown13 : 1; }; #if defined( __GNUC__ ) #pragma pack() diff --git a/src/server/game/Movement/Spline/MovementTypedefs.h b/src/server/game/Movement/Spline/MovementTypedefs.h index 01c8a5b7e7b..d8fe21ad4e6 100644 --- a/src/server/game/Movement/Spline/MovementTypedefs.h +++ b/src/server/game/Movement/Spline/MovementTypedefs.h @@ -54,7 +54,7 @@ namespace Movement class counter { public: - counter() { init();} + counter() { init(); } void Increase() { @@ -64,8 +64,8 @@ namespace Movement ++m_counter; } - T NewId() { Increase(); return m_counter;} - T getCurrent() const { return m_counter;} + T NewId() { Increase(); return m_counter; } + T getCurrent() const { return m_counter; } private: void init() { m_counter = 0; } diff --git a/src/server/game/Movement/Spline/MovementUtil.cpp b/src/server/game/Movement/Spline/MovementUtil.cpp index f0ed01c4676..b69d4b39e19 100644 --- a/src/server/game/Movement/Spline/MovementUtil.cpp +++ b/src/server/game/Movement/Spline/MovementUtil.cpp @@ -26,31 +26,31 @@ namespace Movement /// Velocity bounds that makes fall speed limited float terminalVelocity = 60.148003f; - float terminalSavefallVelocity = 7.f; + float terminalSafefallVelocity = 7.0f; - const float terminal_length = float(terminalVelocity * terminalVelocity) / (2.f * gravity); - const float terminal_savefall_length = (terminalSavefallVelocity * terminalSavefallVelocity) / (2.f * gravity); - const float terminalFallTime = float(terminalVelocity/gravity); // the time that needed to reach terminalVelocity + const float terminal_length = float(terminalVelocity * terminalVelocity) / (2.0f * gravity); + const float terminal_safefall_length = (terminalSafefallVelocity * terminalSafefallVelocity) / (2.0f * gravity); + const float terminalFallTime = float(terminalVelocity / gravity); // the time that needed to reach terminalVelocity float computeFallTime(float path_length, bool isSafeFall) { - if (path_length < 0.f) - return 0.f; + if (path_length < 0.0f) + return 0.0f; float time; - if ( isSafeFall ) + if (isSafeFall) { - if (path_length >= terminal_savefall_length) - time = (path_length - terminal_savefall_length)/terminalSavefallVelocity + terminalSavefallVelocity/gravity; + if (path_length >= terminal_safefall_length) + time = (path_length - terminal_safefall_length) / terminalSafefallVelocity + terminalSafefallVelocity / gravity; else - time = sqrtf(2.f * path_length/gravity); + time = sqrtf(2.0f * path_length / gravity); } else { if (path_length >= terminal_length) - time = (path_length - terminal_length)/terminalVelocity + terminalFallTime; + time = (path_length - terminal_length) / terminalVelocity + terminalFallTime; else - time = sqrtf(2.f * path_length/gravity); + time = sqrtf(2.0f * path_length / gravity); } return time; @@ -61,20 +61,21 @@ namespace Movement float termVel; float result; - if ( isSafeFall ) - termVel = terminalSavefallVelocity; + if (isSafeFall) + termVel = terminalSafefallVelocity; else termVel = terminalVelocity; - if ( start_velocity > termVel ) + if (start_velocity > termVel) start_velocity = termVel; float terminal_time = terminalFallTime - start_velocity / gravity; // the time that needed to reach terminalVelocity - if ( t_passed > terminal_time ) + if (t_passed > terminal_time) { - result = terminalVelocity*(t_passed - terminal_time) + - start_velocity*terminal_time + gravity*terminal_time*terminal_time*0.5f; + result = terminalVelocity * (t_passed - terminal_time) + + start_velocity * terminal_time + + gravity * terminal_time * terminal_time*0.5f; } else result = t_passed * (start_velocity + t_passed * gravity * 0.5f); @@ -100,7 +101,7 @@ namespace Movement #define STR(x) #x - const char * g_MovementFlag_names[]= + char const* g_MovementFlag_names[] = { STR(Forward ),// 0x00000001, STR(Backward ),// 0x00000002, @@ -135,25 +136,25 @@ namespace Movement STR(Safe_Fall ),// 0x20000000, // Active Rogue Safe Fall Spell (Passive) STR(Hover ),// 0x40000000 STR(Unknown13 ),// 0x80000000 - STR(Unk1 ), - STR(Unk2 ), - STR(Unk3 ), - STR(Fullspeedturning ), - STR(Fullspeedpitching ), - STR(Allow_Pitching ), - STR(Unk4 ), - STR(Unk5 ), - STR(Unk6 ), - STR(Unk7 ), - STR(Interp_Move ), - STR(Interp_Turning ), - STR(Interp_Pitching ), - STR(Unk8 ), - STR(Unk9 ), - STR(Unk10 ), + STR(Unk1 ), + STR(Unk2 ), + STR(Unk3 ), + STR(Fullspeedturning ), + STR(Fullspeedpitching ), + STR(Allow_Pitching ), + STR(Unk4 ), + STR(Unk5 ), + STR(Unk6 ), + STR(Unk7 ), + STR(Interp_Move ), + STR(Interp_Turning ), + STR(Interp_Pitching ), + STR(Unk8 ), + STR(Unk9 ), + STR(Unk10 ), }; - const char * g_SplineFlag_names[32]= + char const* g_SplineFlag_names[32] = { STR(AnimBit1 ),// 0x00000001, STR(AnimBit2 ),// 0x00000002, @@ -190,11 +191,11 @@ namespace Movement }; template<class Flags, int N> - void print_flags(Flags t, const char* (&names)[N], std::string& str) + void print_flags(Flags t, char const* (&names)[N], std::string& str) { for (int i = 0; i < N; ++i) { - if ((t & (Flags)(1 << i)) && names[i] != NULL) + if ((t & Flags(1 << i)) && names[i] != NULL) str.append(" ").append(names[i]); } } @@ -202,7 +203,7 @@ namespace Movement std::string MoveSplineFlag::ToString() const { std::string str; - print_flags(raw(),g_SplineFlag_names,str); + print_flags(raw(), g_SplineFlag_names, str); return str; } } |
