diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index eb54b76d8..37249b285 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -673,6 +673,7 @@ uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDa // find owner of pVictim, used for creature cases, AI calls Unit* pOwner = pVictim->GetCharmerOrOwner(); + // in creature kill case group/player tap stored for creature if (pVictim->GetTypeId() == TYPEID_UNIT) { group_tap = ((Creature*)pVictim)->GetGroupLootRecipient(); @@ -680,6 +681,12 @@ uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDa if (Player* recipient = ((Creature*)pVictim)->GetOriginalLootRecipient()) player_tap = recipient; } + // in player kill case group tap selected by player_tap (killer-player itself, or charmer, or owner, etc) + else + { + if (player_tap) + group_tap = player_tap->GetGroup(); + } if (pVictim->GetTypeId() == TYPEID_PLAYER) { diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 817e09de3..571731cbd 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 "9919" + #define REVISION_NR "9920" #endif // __REVISION_NR_H__