From fcb34b392855bbd6b7e1935b85b3e2b722a1f22f Mon Sep 17 00:00:00 2001 From: ApoC Date: Tue, 14 Jul 2009 19:27:40 +0200 Subject: [PATCH] [8181] Prevent passing negative values into IsWithinDist() in stealth detection * This should fix wrong stealth detection for high level differencies Signed-off-by: ApoC --- src/game/Unit.cpp | 2 +- src/shared/revision_nr.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 21cef1b02..df41fbafa 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -9259,7 +9259,7 @@ bool Unit::isVisibleForOrDetect(Unit const* u, bool detect, bool inVisibleList, //based on wowwiki every 5 mod we have 1 more level diff in calculation visibleDistance += (int32(u->GetTotalAuraModifier(SPELL_AURA_MOD_DETECT)) - stealthMod)/5.0f; - if(!IsWithinDist(u,visibleDistance)) + if(visibleDistance <= 0 || !IsWithinDist(u,visibleDistance)) return false; } diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index eddc36fc9..33f5a72f5 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8180" + #define REVISION_NR "8181" #endif // __REVISION_NR_H__