From 747350a0bcffaa4ef2b5d3317bb75fac78c64472 Mon Sep 17 00:00:00 2001 From: joschiwald Date: Sun, 26 Oct 2014 01:46:28 +0200 Subject: Scripts: replaced various Location struct defines with proper Position or G3D::Vector3 --- src/server/game/Entities/Object/Object.cpp | 9 ++++++++- src/server/game/Entities/Object/Object.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'src/server/game/Entities/Object') diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 7e7eb3e7e67..669ec512afd 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -1632,6 +1632,13 @@ void Position::GetPositionOffsetTo(const Position & endPos, Position & retOffset retOffset.SetOrientation(endPos.GetOrientation() - GetOrientation()); } +Position Position::GetPositionWithOffset(Position const& offset) const +{ + Position ret(*this); + ret.RelocateOffset(offset); + return ret; +} + float Position::GetAngle(const Position* obj) const { if (!obj) @@ -2797,7 +2804,7 @@ void WorldObject::DestroyForNearbyPlayers() if (!player->HaveAtClient(this)) continue; - if (isType(TYPEMASK_UNIT) && ((Unit*)this)->GetCharmerGUID() == player->GetGUID()) /// @todo this is for puppet + if (isType(TYPEMASK_UNIT) && ToUnit()->GetCharmerGUID() == player->GetGUID()) /// @todo this is for puppet continue; DestroyForPlayer(player); diff --git a/src/server/game/Entities/Object/Object.h b/src/server/game/Entities/Object/Object.h index 7eee9f0c4c4..f7e8a7a6447 100644 --- a/src/server/game/Entities/Object/Object.h +++ b/src/server/game/Entities/Object/Object.h @@ -339,6 +339,7 @@ struct Position { return std::sqrt(GetExactDistSq(pos)); } void GetPositionOffsetTo(Position const & endPos, Position & retOffset) const; + Position GetPositionWithOffset(Position const& offset) const; float GetAngle(Position const* pos) const; float GetAngle(float x, float y) const; -- cgit v1.2.3