aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMachiavelli <none@none>2010-11-06 10:35:46 +0100
committerMachiavelli <none@none>2010-11-06 10:35:46 +0100
commit26d8e04351145e5ef02451cbb5f4ac2a3ee3c632 (patch)
tree2a9af754adfb0adea431529b1ee72ee89cc40d26 /src
parent1b8007767a3382d70f789f8e4af4d35a8bc39023 (diff)
Core/Unit: Clear threat list on units when they die (fix players having aggro on corpses)
Original suggestion by glorandwarf@yahoo.com Fixes issue #4667 --HG-- branch : trunk
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.cpp2
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.h1
2 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 6423a7a35c2..82b0f32c8da 100755
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -12518,7 +12518,7 @@ bool Unit::CanHaveThreatList() const
return false;
// only alive units can have threat list
- if (!isAlive())
+ if (!isAlive() || isDying())
return false;
// totems can not have threat list
diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h
index 76670217ab9..5432568289a 100755
--- a/src/server/game/Entities/Unit/Unit.h
+++ b/src/server/game/Entities/Unit/Unit.h
@@ -1478,6 +1478,7 @@ class Unit : public WorldObject
void BuildHeartBeatMsg(WorldPacket *data) const;
bool isAlive() const { return (m_deathState == ALIVE); };
+ bool isDying() const { return (m_deathState == JUST_DIED); };
bool isDead() const { return (m_deathState == DEAD || m_deathState == CORPSE); };
DeathState getDeathState() { return m_deathState; };
virtual void setDeathState(DeathState s); // overwrited in Creature/Player/Pet