aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/Kalimdor
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2017-05-13 19:37:33 +0200
committerShauren <shauren.trinity@gmail.com>2017-05-13 19:37:33 +0200
commit9299e9bde087af7e5d777d5a55a3b79d2b63c48e (patch)
tree4d3e436ae21faf28154be8a70fd7d23c1b7692f0 /src/server/scripts/Kalimdor
parent229c78b5a38dc58e14f4912de49437b68341452b (diff)
Core/Grids: Ported cmangos/mangos-wotlk@ea99457e50790acde8928aa0f3dc4a9c096b4a8c
Diffstat (limited to 'src/server/scripts/Kalimdor')
-rw-r--r--src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp35
-rw-r--r--src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp4
-rw-r--r--src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp2
-rw-r--r--src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp2
-rw-r--r--src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp2
-rw-r--r--src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp2
-rw-r--r--src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp2
7 files changed, 11 insertions, 38 deletions
diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp
index 04bdd84cb54..9a9f0103e97 100644
--- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp
+++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp
@@ -906,17 +906,11 @@ void hyjalAI::JustDied(Unit* /*killer*/)
void hyjalAI::HideNearPos(float x, float y)
{
- CellCoord pair(Trinity::ComputeCellCoord(x, y));
- Cell cell(pair);
- cell.SetNoCreate();
-
// First get all creatures.
std::list<Creature*> creatures;
Trinity::AllFriendlyCreaturesInGrid creature_check(me);
Trinity::CreatureListSearcher<Trinity::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
-
- TypeContainerVisitor <Trinity::CreatureListSearcher<Trinity::AllFriendlyCreaturesInGrid>, GridTypeMapContainer> creature_visitor(creature_searcher);
- cell.Visit(pair, creature_visitor, *(me->GetMap()), *me, me->GetGridActivationRange());
+ Cell::VisitGridObjects(me, creature_searcher, me->GetGridActivationRange());
if (!creatures.empty())
{
@@ -930,14 +924,9 @@ void hyjalAI::HideNearPos(float x, float y)
void hyjalAI::RespawnNearPos(float x, float y)
{
- CellCoord p(Trinity::ComputeCellCoord(x, y));
- Cell cell(p);
- cell.SetNoCreate();
-
Trinity::RespawnDo u_do;
Trinity::WorldObjectWorker<Trinity::RespawnDo> worker(me, u_do);
- TypeContainerVisitor<Trinity::WorldObjectWorker<Trinity::RespawnDo>, GridTypeMapContainer > obj_worker(worker);
- cell.Visit(p, obj_worker, *me->GetMap(), *me, me->GetGridActivationRange());
+ Cell::VisitGridObjects(me, worker, me->GetGridActivationRange());
}
void hyjalAI::WaypointReached(uint32 waypointId)
@@ -961,19 +950,11 @@ void hyjalAI::WaypointReached(uint32 waypointId)
}
//do some talking
//all alive guards walk near here
- CellCoord pair(Trinity::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
- Cell cell(pair);
- cell.SetNoCreate();
-
// First get all creatures.
std::list<Creature*> creatures;
Trinity::AllFriendlyCreaturesInGrid creature_check(me);
Trinity::CreatureListSearcher<Trinity::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
- TypeContainerVisitor
- <Trinity::CreatureListSearcher<Trinity::AllFriendlyCreaturesInGrid>,
- GridTypeMapContainer> creature_visitor(creature_searcher);
-
- cell.Visit(pair, creature_visitor, *(me->GetMap()), *me, me->GetGridActivationRange());
+ Cell::VisitGridObjects(me, creature_searcher, me->GetGridActivationRange());
if (!creatures.empty())
{
@@ -1002,18 +983,10 @@ void hyjalAI::DoOverrun(uint32 faction, const uint32 diff)
{
if (TeleportTimer <= diff)
{
- CellCoord pair(Trinity::ComputeCellCoord(me->GetPositionX(), me->GetPositionY()));
- Cell cell(pair);
- cell.SetNoCreate();
-
std::list<Creature*> creatures;
Trinity::AllFriendlyCreaturesInGrid creature_check(me);
Trinity::CreatureListSearcher<Trinity::AllFriendlyCreaturesInGrid> creature_searcher(me, creatures, creature_check);
- TypeContainerVisitor
- <Trinity::CreatureListSearcher<Trinity::AllFriendlyCreaturesInGrid>,
- GridTypeMapContainer> creature_visitor(creature_searcher);
-
- cell.Visit(pair, creature_visitor, *(me->GetMap()), *me, me->GetGridActivationRange());
+ Cell::VisitGridObjects(me, creature_searcher, me->GetGridActivationRange());
if (!creatures.empty())
{
diff --git a/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp b/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp
index 3910789805a..d6933f03032 100644
--- a/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp
+++ b/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp
@@ -163,7 +163,7 @@ static void AlysrazorTrashEvaded(Creature* creature)
{
TrashRespawnWorker check;
Trinity::CreatureWorker<TrashRespawnWorker> worker(creature, check);
- creature->VisitNearbyGridObject(SIZE_OF_GRIDS, worker);
+ Cell::VisitGridObjects(creature, worker, SIZE_OF_GRIDS);
}
class npc_harbinger_of_flame : public CreatureScript
@@ -461,7 +461,7 @@ class npc_egg_pile : public CreatureScript
std::list<Creature*> eggs;
MoltenEggCheck check(me);
Trinity::CreatureListSearcher<MoltenEggCheck> searcher(me, eggs, check);
- me->VisitNearbyGridObject(20.0f, searcher);
+ Cell::VisitGridObjects(me, searcher, 20.0f);
if (!eggs.empty())
{
Creature* egg = Trinity::Containers::SelectRandomContainerElement(eggs);
diff --git a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp
index 6f6660219b1..1da2fcb45c3 100644
--- a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp
+++ b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp
@@ -356,7 +356,7 @@ public:
GameObject* Floor = NULL;
Trinity::GameObjectInRangeCheck check(me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 15);
Trinity::GameObjectLastSearcher<Trinity::GameObjectInRangeCheck> searcher(me, Floor, check);
- me->VisitNearbyGridObject(30, searcher);
+ Cell::VisitGridObjects(me, searcher, 30.0f);
if (Floor)
instance->SetGuidData(DATA_FLOOR_ERUPTION_GUID, Floor->GetGUID());
events.ScheduleEvent(EVENT_BELLOWING_ROAR, 30000);
diff --git a/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp b/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp
index 7845ce26f89..a0dfec7d722 100644
--- a/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp
+++ b/src/server/scripts/Kalimdor/OnyxiasLair/instance_onyxias_lair.cpp
@@ -118,7 +118,7 @@ public:
std::list<GameObject*> nearFloorList;
Trinity::GameObjectInRangeCheck check(floorEruption->GetPositionX(), floorEruption->GetPositionY(), floorEruption->GetPositionZ(), 15);
Trinity::GameObjectListSearcher<Trinity::GameObjectInRangeCheck> searcher(floorEruption, nearFloorList, check);
- floorEruption->VisitNearbyGridObject(999, searcher);
+ Cell::VisitGridObjects(floorEruption, searcher, SIZE_OF_GRIDS);
//remove all that are not present on FloorEruptionGUID[1] and update treeLen on each GUID
for (std::list<GameObject*>::const_iterator itr = nearFloorList.begin(); itr != nearFloorList.end(); ++itr)
{
diff --git a/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp b/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp
index 0c36843b6f2..24cb88a071c 100644
--- a/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp
+++ b/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp
@@ -208,7 +208,7 @@ public:
std::list<WorldObject*> ClusterList;
Trinity::AllWorldObjectsInRange objects(me, 50.0f);
Trinity::WorldObjectListSearcher<Trinity::AllWorldObjectsInRange> searcher(me, ClusterList, objects);
- me->VisitNearbyObject(50.0f, searcher);
+ Cell::VisitAllObjects(me, searcher, 50.0f);
for (std::list<WorldObject*>::const_iterator itr = ClusterList.begin(); itr != ClusterList.end(); ++itr)
{
if (Player* player = (*itr)->ToPlayer())
diff --git a/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp b/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp
index 244d084f218..0a7695eaf13 100644
--- a/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp
+++ b/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp
@@ -573,7 +573,7 @@ public:
std::list<Player*> players;
Trinity::AnyPlayerInObjectRangeCheck checker(me, radius);
Trinity::PlayerListSearcher<Trinity::AnyPlayerInObjectRangeCheck> searcher(me, players, checker);
- me->VisitNearbyWorldObject(radius, searcher);
+ Cell::VisitWorldObjects(me, searcher, radius);
for (std::list<Player*>::const_iterator itr = players.begin(); itr != players.end(); ++itr)
if ((*itr)->GetQuestStatus(QUEST_TREES_COMPANY) == QUEST_STATUS_INCOMPLETE && (*itr)->HasAura(SPELL_TREE_DISGUISE))
diff --git a/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp b/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp
index 09770b58d65..04da6aa74aa 100644
--- a/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp
+++ b/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp
@@ -743,7 +743,7 @@ public:
Creature* sironas = NULL;
Trinity::AllCreaturesOfEntryInRange check(me, NPC_SIRONAS, SIZE_OF_GRIDS);
Trinity::CreatureSearcher<Trinity::AllCreaturesOfEntryInRange> searcher(me, sironas, check);
- me->VisitNearbyObject(SIZE_OF_GRIDS, searcher);
+ Cell::VisitAllObjects(me, searcher, SIZE_OF_GRIDS);
if (sironas)
{