diff options
author | Xanadu <none@none> | 2010-02-06 00:28:19 +0100 |
---|---|---|
committer | Xanadu <none@none> | 2010-02-06 00:28:19 +0100 |
commit | d536614df85c57e6e9ef6344156798e23d6418d7 (patch) | |
tree | 120cc1c830cdba189628b16b9de1c03c40b6ede0 /src/game/Object.cpp | |
parent | d9ecdfdd56ce60639c36288a46df80d2cb63c5b1 (diff) |
Fixed some GetDistance functions, added several asserts
--HG--
branch : trunk
Diffstat (limited to 'src/game/Object.cpp')
-rw-r--r-- | src/game/Object.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/game/Object.cpp b/src/game/Object.cpp index a53d4f9c48a..1b8a21650bd 100644 --- a/src/game/Object.cpp +++ b/src/game/Object.cpp @@ -1103,6 +1103,7 @@ bool Object::PrintIndexError(uint32 index, bool set) const bool Position::HasInLine(const Unit * const target, float distance, float width) const { + assert(target); if(!HasInArc(M_PI, target) || !target->IsWithinDist3d(m_positionX, m_positionY, m_positionZ, distance)) return false; width += target->GetObjectSize(); float angle = GetRelativeAngle(target); @@ -1192,6 +1193,7 @@ InstanceData* WorldObject::GetInstanceData() float WorldObject::GetDistanceZ(const WorldObject* obj) const { + assert(obj); float dz = fabs(GetPositionZ() - obj->GetPositionZ()); float sizefactor = GetObjectSize() + obj->GetObjectSize(); float dist = dz - sizefactor; @@ -1200,6 +1202,7 @@ float WorldObject::GetDistanceZ(const WorldObject* obj) const bool WorldObject::_IsWithinDist(WorldObject const* obj, float dist2compare, bool is3D) const { + assert(obj); float dx = GetPositionX() - obj->GetPositionX(); float dy = GetPositionY() - obj->GetPositionY(); float distsq = dx*dx + dy*dy; @@ -1357,6 +1360,7 @@ void Position::GetSinCos(const float x, const float y, float &vsin, float &vcos) bool Position::HasInArc(float arc, const Position *obj) const { + assert(obj); // always have self in arc if(obj == this) return true; |