diff options
Diffstat (limited to 'src/game/ObjectAccessor.cpp')
-rw-r--r-- | src/game/ObjectAccessor.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/game/ObjectAccessor.cpp b/src/game/ObjectAccessor.cpp index 29692a7264d..e52423eabd8 100644 --- a/src/game/ObjectAccessor.cpp +++ b/src/game/ObjectAccessor.cpp @@ -185,6 +185,24 @@ ObjectAccessor::SaveAllPlayers() } void +ObjectAccessor::UpdateObject(Object* obj, Player* exceptPlayer) +{ + UpdateDataMapType update_players; + obj->BuildUpdate(update_players); + + WorldPacket packet; + for (UpdateDataMapType::iterator iter = update_players.begin(); iter != update_players.end(); ++iter) + { + if(iter->first == exceptPlayer) + continue; + + iter->second.BuildPacket(&packet); + iter->first->GetSession()->SendPacket(&packet); + packet.clear(); + } +} + +void ObjectAccessor::_buildUpdateObject(Object *obj, UpdateDataMapType &update_players) { if(obj->isType(TYPEMASK_ITEM)) |