aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Entities/Object
diff options
context:
space:
mode:
authortreeston <treeston.mmoc@gmail.com>2016-08-31 21:41:23 +0200
committertreeston <treeston.mmoc@gmail.com>2016-08-31 21:41:23 +0200
commit9f15482b849d7a77a4a0cc68f18aabb8ee6c58c9 (patch)
treef745dcdd9e2d6d013efed155c3c9e1c62b583456 /src/server/game/Entities/Object
parentb7112d0fbe457043418415f45f68f159896477d4 (diff)
Core/Position: Allow implicit casting to G3D::Vector. Also, add a utility overload to MotionMaster.
Diffstat (limited to 'src/server/game/Entities/Object')
-rw-r--r--src/server/game/Entities/Object/Position.cpp5
-rw-r--r--src/server/game/Entities/Object/Position.h2
2 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Entities/Object/Position.cpp b/src/server/game/Entities/Object/Position.cpp
index c5b4cda29e4..c1bd90290eb 100644
--- a/src/server/game/Entities/Object/Position.cpp
+++ b/src/server/game/Entities/Object/Position.cpp
@@ -27,6 +27,11 @@ Position::Position(G3D::Vector3 const& vect)
Relocate(vect.x, vect.y, vect.z, 0.f);
}
+Position::operator G3D::Vector3() const
+{
+ return { m_positionX, m_positionY, m_positionZ };
+}
+
bool Position::operator==(Position const &a)
{
return (G3D::fuzzyEq(a.m_positionX, m_positionX) &&
diff --git a/src/server/game/Entities/Object/Position.h b/src/server/game/Entities/Object/Position.h
index e01afe4cc71..b0909463162 100644
--- a/src/server/game/Entities/Object/Position.h
+++ b/src/server/game/Entities/Object/Position.h
@@ -36,6 +36,8 @@ struct TC_GAME_API Position
Position(G3D::Vector3 const& vect);
+ operator G3D::Vector3() const;
+
struct PositionXYStreamer
{
explicit PositionXYStreamer(Position& pos) : Pos(&pos) { }