aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/SpellEffects.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index df687c3699b..f21b5a5f3ce 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -7414,7 +7414,19 @@ void Spell::EffectWMODamage(uint32 /*i*/)
goft = sFactionTemplateStore.LookupEntry(gameObjTarget->GetUInt32Value(GAMEOBJECT_FACTION));
// Do not allow to damage GO's of friendly factions (ie: Wintergrasp Walls)
if (casterft && goft && !casterft->IsFriendlyTo(*goft))
- gameObjTarget->TakenDamage((uint32)damage, caster);
+ {
+ gameObjTarget->TakenDamage(uint32(damage), caster);
+ WorldPacket data(SMSG_DESTRUCTIBLE_BUILDING_DAMAGE, 8+8+8+4+4);
+ data.append(gameObjTarget->GetPackGUID());
+ data.append(caster->GetPackGUID());
+ if (Unit *who = caster->GetCharmerOrOwner())
+ data.append(who->GetPackGUID());
+ else
+ data << uint8(0);
+ data << uint32(damage);
+ data << uint32(m_spellInfo->Id);
+ gameObjTarget->SendMessageToSet(&data, false);
+ }
}
}