From cb72853dc6a9e7aa5301c1ab4e7fccbe1f34d2f4 Mon Sep 17 00:00:00 2001 From: megamage Date: Wed, 27 May 2009 09:09:22 -0500 Subject: *Cleanup message deliver functions. Remove unused parameters. --HG-- branch : trunk --- src/game/GridNotifiers.h | 50 ++++++++++++++++-------------------------------- 1 file changed, 17 insertions(+), 33 deletions(-) (limited to 'src/game/GridNotifiers.h') diff --git a/src/game/GridNotifiers.h b/src/game/GridNotifiers.h index 138807674ae..87b0a11a226 100644 --- a/src/game/GridNotifiers.h +++ b/src/game/GridNotifiers.h @@ -101,48 +101,32 @@ namespace Trinity void Visit(CorpseMapType &m) { updateObjects(m); } }; - struct TRINITY_DLL_DECL Deliverer + struct TRINITY_DLL_DECL MessageDistDeliverer { WorldObject &i_source; WorldPacket *i_message; - std::set plr_list; - bool i_toPossessor; - bool i_toSelf; + std::set plr_list; uint32 i_phaseMask; - float i_dist; - Deliverer(WorldObject &src, WorldPacket *msg, bool to_possessor, bool to_self, float dist = 0.0f) - : i_source(src), i_message(msg), i_toPossessor(to_possessor), i_toSelf(to_self), i_dist(dist), i_phaseMask(src.GetPhaseMask()) {} + float i_distSq; + MessageDistDeliverer(WorldObject &src, WorldPacket *msg, bool to_self, float dist) + : i_source(src), i_message(msg), i_distSq(dist * dist), i_phaseMask(src.GetPhaseMask()) + { + if(!to_self) + plr_list.insert((Player*)&i_source); + } void Visit(PlayerMapType &m); void Visit(CreatureMapType &m); void Visit(DynamicObjectMapType &m); - virtual void VisitObject(Player* plr) = 0; - void SendPacket(Player* plr); template void Visit(GridRefManager &) {} - }; - - struct TRINITY_DLL_DECL MessageDeliverer : public Deliverer - { - MessageDeliverer(Player &pl, WorldPacket *msg, bool to_possessor, bool to_self) : Deliverer(pl, msg, to_possessor, to_self) {} - void VisitObject(Player* plr); - }; - - struct TRINITY_DLL_DECL ObjectMessageDeliverer : public Deliverer - { - explicit ObjectMessageDeliverer(WorldObject &src, WorldPacket *msg, bool to_possessor) : Deliverer(src, msg, to_possessor, false) {} - void VisitObject(Player* plr) { SendPacket(plr); } - }; - struct TRINITY_DLL_DECL MessageDistDeliverer : public Deliverer - { - bool i_ownTeamOnly; - MessageDistDeliverer(Player &pl, WorldPacket *msg, bool to_possessor, float dist, bool to_self, bool ownTeamOnly) : Deliverer(pl, msg, to_possessor, to_self, dist), i_ownTeamOnly(ownTeamOnly) {} - void VisitObject(Player* plr); - }; - - struct TRINITY_DLL_DECL ObjectMessageDistDeliverer : public Deliverer - { - ObjectMessageDistDeliverer(WorldObject &obj, WorldPacket *msg, bool to_possessor, float dist) : Deliverer(obj, msg, to_possessor, false, dist) {} - void VisitObject(Player* plr) { SendPacket(plr); } + void SendPacket(Player* plr) + { + if (plr_list.find(plr) == plr_list.end()) + { + plr->GetSession()->SendPacket(i_message); + plr_list.insert(plr); + } + } }; struct TRINITY_DLL_DECL ObjectUpdater -- cgit v1.2.3