From dec59b72cce1b06dcf39f86ae45d992f4234dbc2 Mon Sep 17 00:00:00 2001 From: Golrag Date: Fri, 1 Jan 2016 12:03:31 +0100 Subject: Core/PacketIO: SMSG_DESTRUCTIBLE_BUILDING_DAMAGE --- src/server/game/Entities/GameObject/GameObject.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'src/server/game/Entities/GameObject') diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index f58fcb8a69d..e39a8c96741 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -1985,14 +1985,13 @@ void GameObject::ModifyHealth(int32 change, Unit* attackerOrHealer /*= NULL*/, u // dealing damage, send packet if (player) { - WorldPacket data(SMSG_DESTRUCTIBLE_BUILDING_DAMAGE, 8 + 8 + 8 + 4 + 4); - data << GetPackGUID(); - data << attackerOrHealer->GetPackGUID(); - data << player->GetPackGUID(); - data << uint32(-change); // change < 0 triggers SPELL_BUILDING_HEAL combat log event - // change >= 0 triggers SPELL_BUILDING_DAMAGE event - data << uint32(spellId); - player->SendDirectMessage(&data); + WorldPackets::GameObject::DestructibleBuildingDamage packet; + packet.Caster = attackerOrHealer->GetGUID(); // todo: this can be a GameObject + packet.Target = GetGUID(); + packet.Damage = -change; + packet.Owner = player->GetGUID(); + packet.SpellID = spellId; + player->SendDirectMessage(packet.Write()); } GameObjectDestructibleState newState = GetDestructibleState(); -- cgit v1.2.3