diff options
Diffstat (limited to 'src/server/game/Movement/MotionMaster.cpp')
| -rw-r--r-- | src/server/game/Movement/MotionMaster.cpp | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/src/server/game/Movement/MotionMaster.cpp b/src/server/game/Movement/MotionMaster.cpp index d378c7f0c5d..202663cf1cc 100644 --- a/src/server/game/Movement/MotionMaster.cpp +++ b/src/server/game/Movement/MotionMaster.cpp @@ -801,7 +801,7 @@ void MotionMaster::MoveCharge(PathGenerator const& path, float speed /*= SPEED_C init.Launch(); } -void MotionMaster::MoveKnockbackFrom(Position const& origin, float speedXY, float speedZ, Movement::SpellEffectExtraData const* spellEffectExtraData /*= nullptr*/) +void MotionMaster::MoveKnockbackFrom(Position const& origin, float speedXY, float speedZ, float angle /*= M_PI*/, Movement::SpellEffectExtraData const* spellEffectExtraData /*= nullptr*/) { // This function may make players fall below map if (_owner->GetTypeId() == TYPEID_PLAYER) @@ -811,7 +811,7 @@ void MotionMaster::MoveKnockbackFrom(Position const& origin, float speedXY, floa return; Position dest = _owner->GetPosition(); - float o = dest == origin ? 0.0f : _owner->GetRelativeAngle(origin) + float(M_PI); + float o = (dest == origin ? 0.0f : _owner->GetRelativeAngle(origin)) + angle; if (speedXY < 0) { speedXY = -speedXY; @@ -858,23 +858,6 @@ void MotionMaster::MoveKnockbackFrom(Position const& origin, float speedXY, floa Add(movement); } -void MotionMaster::MoveJumpTo(float angle, float speedXY, float speedZ) -{ - // This function may make players fall below map - if (_owner->GetTypeId() == TYPEID_PLAYER) - return; - - float x, y, z = _owner->GetPositionZ(); - - float moveTimeHalf = speedZ / Movement::gravity; - float dist = 2 * moveTimeHalf * speedXY; - - _owner->GetNearPoint2D(nullptr, x, y, dist, _owner->GetOrientation() + angle); - _owner->UpdateAllowedPositionZ(x, y, z); - - MoveJump({ x, y, z }, speedXY, speedZ); -} - void MotionMaster::MoveJump(Position const& pos, float speedXY, float speedZ, uint32 id /*= EVENT_JUMP*/, MovementFacingTarget const& facing /*= {}*/, bool orientationFixed /*= false*/, JumpArrivalCastArgs const* arrivalCast /*= nullptr*/, Movement::SpellEffectExtraData const* spellEffectExtraData /*= nullptr*/, Optional<Scripting::v2::ActionResultSetter<MovementStopReason>>&& scriptResult /*= {}*/) |
