From 26d8e04351145e5ef02451cbb5f4ac2a3ee3c632 Mon Sep 17 00:00:00 2001 From: Machiavelli Date: Sat, 6 Nov 2010 10:35:46 +0100 Subject: 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 --- src/server/game/Entities/Unit/Unit.cpp | 2 +- src/server/game/Entities/Unit/Unit.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'src') 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 -- cgit v1.2.3