From ccc293931d00a192f9ff2a1302bd9cb51ad6778f Mon Sep 17 00:00:00 2001 From: Shauren Date: Thu, 1 Jan 2015 20:38:19 +0100 Subject: Core/PacketIO: Removed SMSG_DESTROY_OBJECT from opcodes enum --- src/server/game/Entities/Unit/Unit.cpp | 16 +++++++++++++++- src/server/game/Entities/Unit/Unit.h | 1 + 2 files changed, 16 insertions(+), 1 deletion(-) (limited to 'src/server/game/Entities/Unit') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 7bc82b479bb..db1ff2d5d6f 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -16155,7 +16155,6 @@ bool Unit::IsSplineEnabled() const return movespline->Initialized() && !movespline->Finalized(); } - void Unit::BuildValuesUpdate(uint8 updateType, ByteBuffer* data, Player* target) const { if (!target) @@ -16334,6 +16333,21 @@ void Unit::BuildValuesUpdate(uint8 updateType, ByteBuffer* data, Player* target) data->append(fieldBuffer); } +void Unit::DestroyForPlayer(Player* target) const +{ + if (Battleground* bg = target->GetBattleground()) + { + if (bg->isArena()) + { + WorldPacket data(SMSG_ARENA_UNIT_DESTROYED, 8); + data << GetGUID(); + target->GetSession()->SendPacket(&data); + } + } + + WorldObject::DestroyForPlayer(target); +} + void Unit::BuildCooldownPacket(WorldPacket& data, uint8 flags, uint32 spellId, uint32 cooldown) { data.Initialize(SMSG_SPELL_COOLDOWN, 8 + 1 + 4 + 4); diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index aa05a8b82a3..00bb77a5a1e 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -2228,6 +2228,7 @@ class Unit : public WorldObject explicit Unit (bool isWorldObject); void BuildValuesUpdate(uint8 updatetype, ByteBuffer* data, Player* target) const override; + void DestroyForPlayer(Player* target) const override; UnitAI* i_AI, *i_disabledAI; -- cgit v1.2.3