aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index f1e799ea43d..4347549495e 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -3252,13 +3252,18 @@ void Unit::_UpdateSpells( uint32 time )
++i;
}
- WorldPacket data(SMSG_AURA_UPDATE, 50);
- data.append(GetPackGUID());
+ WorldPacket auras;
for (VisibleAuraMap::iterator itr = m_visibleAuras.begin(); itr != m_visibleAuras.end(); ++itr)
if (itr->second->IsNeedClientUpdate())
- itr->second->ConstructAuraInfo(data);
+ itr->second->ConstructAuraInfo(auras);
- SendMessageToSet(&data, true);
+ if(auras.wpos())
+ {
+ WorldPacket data(SMSG_AURA_UPDATE, GetPackGUID().size() + auras.wpos());
+ data.append(GetPackGUID());
+ data.append(auras);
+ SendMessageToSet(&data, true);
+ }
_DeleteRemovedAuras();