diff options
| author | Shauren <shauren.trinity@gmail.com> | 2017-06-04 01:00:45 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2017-06-04 01:00:45 +0200 |
| commit | b453e124231a90321fe79fbf3a62acdcfa54a691 (patch) | |
| tree | ca2a815b923080385ed9a3a69aefe20ee54a7969 /src/server/scripts/Kalimdor | |
| parent | ec72a59b08e71ebc7ba00b32592ec903a7995a84 (diff) | |
Core/Game: Include cleanup part 5
* ObjectMgr.h
* Player.h
* Unit.h
* G3D should no longer propagate everywhere from Spline/MotionMaster
Diffstat (limited to 'src/server/scripts/Kalimdor')
39 files changed, 104 insertions, 106 deletions
diff --git a/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp b/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp index 0300eccc116..d35e70ac1e9 100644 --- a/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp +++ b/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp @@ -84,10 +84,7 @@ public: { Initialize(); if (creature->IsSummon()) - { creature->SetHomePosition(HomePosition); - AttackPlayer(); - } instance = creature->GetInstanceScript(); } @@ -114,28 +111,9 @@ public: Initialize(); } - void AttackPlayer() + void IsSummonedBy(Unit*) override { - Map::PlayerList const &PlList = me->GetMap()->GetPlayers(); - - if (PlList.isEmpty()) - return; - - for (Map::PlayerList::const_iterator i = PlList.begin(); i != PlList.end(); ++i) - { - if (Player* player = i->GetSource()) - { - if (player->IsGameMaster()) - continue; - - if (player->IsAlive()) - { - me->SetInCombatWith(player); - player->SetInCombatWith(me); - me->AddThreat(player, 0.0f); - } - } - } + DoZoneInCombat(); } void UpdateAI(uint32 diff) override diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp index 38fb4c8a68e..49bc82bbad7 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp @@ -26,6 +26,7 @@ EndScriptData */ #include "ScriptMgr.h" #include "hyjal.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "ScriptedCreature.h" #include "SpellScript.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp index 6479dd2cdfe..9b21f128bdd 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp @@ -30,6 +30,7 @@ EndScriptData */ #include "hyjalAI.h" #include "InstanceScript.h" #include "Log.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "TemporarySummon.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp index 32b90c6bfc9..0e842d848f3 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal_trash.cpp @@ -20,6 +20,7 @@ #include "hyjal_trash.h" #include "hyjalAI.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "TemporarySummon.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_mal_ganis.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_mal_ganis.cpp index 1e24c9780e6..2224ca4f439 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_mal_ganis.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_mal_ganis.cpp @@ -26,6 +26,7 @@ Script Data End */ #include "ScriptMgr.h" #include "culling_of_stratholme.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp index f28c9e06e79..72d610d368f 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp @@ -19,6 +19,7 @@ #include "culling_of_stratholme.h" #include "GameObject.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "PassiveAI.h" #include "Player.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp index ef56283f024..de9eead2fc6 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/instance_culling_of_stratholme.cpp @@ -23,6 +23,7 @@ #include "GameObject.h" #include "InstanceScript.h" #include "Map.h" +#include "MotionMaster.h" #include "TemporarySummon.h" #include "WorldStatePackets.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp index f5b2743b487..30a2b565f0d 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/boss_leutenant_drake.cpp @@ -26,6 +26,7 @@ EndScriptData */ #include "ScriptMgr.h" #include "GameObject.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "old_hillsbrad.h" #include "ScriptedEscortAI.h" @@ -72,7 +73,7 @@ enum LieutenantDrake SPELL_FRIGHTENING_SHOUT = 33789 }; -G3D::Vector3 const DrakeWP[]= +Position const DrakeWP[]= { { 2125.84f, 88.2535f, 54.8830f }, { 2111.01f, 93.8022f, 52.6356f }, @@ -156,7 +157,7 @@ public: /// @todo make this work if (CanPatrol && wpId == 0) { - me->GetMotionMaster()->MovePoint(wpId, DrakeWP[wpId].x, DrakeWP[wpId].y, DrakeWP[wpId].z); + me->GetMotionMaster()->MovePoint(wpId, DrakeWP[wpId]); ++wpId; } diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/old_hillsbrad.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/old_hillsbrad.cpp index c96aacef21b..4050d363d06 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/old_hillsbrad.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/EscapeFromDurnholdeKeep/old_hillsbrad.cpp @@ -31,6 +31,7 @@ EndContentData */ #include "ScriptMgr.h" #include "InstanceScript.h" +#include "Map.h" #include "ObjectAccessor.h" #include "old_hillsbrad.h" #include "Player.h" diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/the_black_morass.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/the_black_morass.cpp index 36ce378f575..fe4316b2caf 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/the_black_morass.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/TheBlackMorass/the_black_morass.cpp @@ -32,6 +32,7 @@ EndContentData */ #include "ScriptMgr.h" #include "InstanceScript.h" #include "Log.h" +#include "Map.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp b/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp index 508b010542e..678306030d5 100644 --- a/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp +++ b/src/server/scripts/Kalimdor/Firelands/boss_alysrazor.cpp @@ -20,6 +20,8 @@ #include "DB2Stores.h" #include "firelands.h" #include "GridNotifiersImpl.h" +#include "MotionMaster.h" +#include "MoveSplineInit.h" #include "ObjectAccessor.h" #include "PassiveAI.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/HallsOfOrigination/boss_anraphet.cpp b/src/server/scripts/Kalimdor/HallsOfOrigination/boss_anraphet.cpp index 9efa74edd4f..b4d51bae4a6 100644 --- a/src/server/scripts/Kalimdor/HallsOfOrigination/boss_anraphet.cpp +++ b/src/server/scripts/Kalimdor/HallsOfOrigination/boss_anraphet.cpp @@ -19,6 +19,8 @@ #include "GridNotifiers.h" #include "halls_of_origination.h" #include "InstanceScript.h" +#include "Map.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/HallsOfOrigination/boss_earthrager_ptah.cpp b/src/server/scripts/Kalimdor/HallsOfOrigination/boss_earthrager_ptah.cpp index bdf4e6e3c0a..0a55ae7694c 100644 --- a/src/server/scripts/Kalimdor/HallsOfOrigination/boss_earthrager_ptah.cpp +++ b/src/server/scripts/Kalimdor/HallsOfOrigination/boss_earthrager_ptah.cpp @@ -18,6 +18,7 @@ #include "ScriptMgr.h" #include "halls_of_origination.h" #include "InstanceScript.h" +#include "Map.h" #include "Player.h" #include "ScriptedCreature.h" #include "SpellAuraEffects.h" diff --git a/src/server/scripts/Kalimdor/HallsOfOrigination/boss_temple_guardian_anhuur.cpp b/src/server/scripts/Kalimdor/HallsOfOrigination/boss_temple_guardian_anhuur.cpp index c8c4c57bac7..4537b438914 100644 --- a/src/server/scripts/Kalimdor/HallsOfOrigination/boss_temple_guardian_anhuur.cpp +++ b/src/server/scripts/Kalimdor/HallsOfOrigination/boss_temple_guardian_anhuur.cpp @@ -19,6 +19,7 @@ #include "GridNotifiers.h" #include "halls_of_origination.h" #include "InstanceScript.h" +#include "Map.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedCreature.h" @@ -286,17 +287,14 @@ class spell_anhuur_shield_of_light : public SpellScriptLoader void FilterTargets(std::list<WorldObject*>& targets) { - if (InstanceMap* instance = GetCaster()->GetMap()->ToInstanceMap()) + if (InstanceScript* const script = GetCaster()->GetInstanceScript()) { - if (InstanceScript* const script = instance->GetInstanceScript()) + if (GameObject* go = ObjectAccessor::GetGameObject(*GetCaster(), script->GetGuidData(DATA_ANHUUR_DOOR))) { - if (GameObject* go = ObjectAccessor::GetGameObject(*GetCaster(), script->GetGuidData(DATA_ANHUUR_DOOR))) - { - targets.remove_if(Trinity::HeightDifferenceCheck(go, 5.0f, false)); - targets.remove(GetCaster()); - targets.sort(Trinity::ObjectDistanceOrderPred(GetCaster())); - targets.resize(2); - } + targets.remove_if(Trinity::HeightDifferenceCheck(go, 5.0f, false)); + targets.remove(GetCaster()); + targets.sort(Trinity::ObjectDistanceOrderPred(GetCaster())); + targets.resize(2); } } } @@ -329,10 +327,9 @@ class spell_anhuur_disable_beacon_beams : public SpellScriptLoader void Notify(SpellEffIndex /*index*/) { - if (InstanceMap* instance = GetCaster()->GetMap()->ToInstanceMap()) - if (InstanceScript* const script = instance->GetInstanceScript()) - if (Creature* anhuur = instance->GetCreature(script->GetGuidData(DATA_ANHUUR_GUID))) - anhuur->AI()->DoAction(ACTION_DISABLE_BEACON); + if (InstanceScript* const script = GetCaster()->GetInstanceScript()) + if (Creature* anhuur = ObjectAccessor::GetCreature(*GetCaster(), script->GetGuidData(DATA_ANHUUR_GUID))) + anhuur->AI()->DoAction(ACTION_DISABLE_BEACON); } void Register() override diff --git a/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp b/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp index 2459ff987f8..88736992d67 100644 --- a/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp +++ b/src/server/scripts/Kalimdor/HallsOfOrigination/instance_halls_of_origination.cpp @@ -15,17 +15,13 @@ * with this program. If not, see <http://www.gnu.org/licenses/>. */ -#include "ObjectMgr.h" #include "ScriptMgr.h" +#include "Creature.h" +#include "CreatureAI.h" +#include "GameObject.h" +#include "halls_of_origination.h" #include "InstanceScript.h" -#include "ScriptedCreature.h" #include "Map.h" -#include "PoolMgr.h" -#include "AccountMgr.h" -#include "halls_of_origination.h" -#include "Player.h" -#include "WorldPacket.h" -#include "WorldSession.h" DoorData const doorData[] = { diff --git a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp index 049ab5ef45e..3df735c178b 100644 --- a/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp +++ b/src/server/scripts/Kalimdor/OnyxiasLair/boss_onyxia.cpp @@ -30,6 +30,7 @@ EndScriptData */ #include "CreatureAIImpl.h" #include "GridNotifiersImpl.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "onyxias_lair.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp b/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp index 5fcc2e15a35..c50cba3eef5 100644 --- a/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp +++ b/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp @@ -16,10 +16,11 @@ */ #include "ScriptMgr.h" -#include "ObjectMgr.h" +#include "GameObject.h" #include "InstanceScript.h" +#include "Map.h" +#include "MotionMaster.h" #include "razorfen_downs.h" -#include "Player.h" #include "TemporarySummon.h" Position const PosSummonTutenkash[15] = @@ -135,13 +136,9 @@ public: } if (GameObject* go = instance->GetGameObject(goGongGUID)) - { for (uint8 i = summonLowRange; i < summonHighRange; ++i) - { - Creature* creature = go->SummonCreature(summonCreature, PosSummonTutenkash[i]); + if (Creature* creature = go->SummonCreature(summonCreature, PosSummonTutenkash[i])) creature->GetMotionMaster()->MovePoint(0, 2533.479f + float(irand(-5, 5)), 870.020f + float(irand(-5, 5)), 47.678f); - } - } ++gongWave; break; diff --git a/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp b/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp index d485d6f7802..8f5869b8c3d 100644 --- a/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp +++ b/src/server/scripts/Kalimdor/RazorfenDowns/razorfen_downs.cpp @@ -31,6 +31,7 @@ EndContentData */ #include "CellImpl.h" #include "GridNotifiersImpl.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "Player.h" #include "razorfen_downs.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp b/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp index c8ba60f7aef..ae8f923c961 100644 --- a/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp +++ b/src/server/scripts/Kalimdor/RazorfenKraul/razorfen_kraul.cpp @@ -18,6 +18,8 @@ #include "ScriptMgr.h" #include "GameObject.h" +#include "MotionMaster.h" +#include "ObjectAccessor.h" #include "PetAI.h" #include "Player.h" #include "razorfen_kraul.h" @@ -171,7 +173,7 @@ public: { if (type == POINT_MOTION_TYPE && id == POINT_TUBBER) { - if (GameObject* go = me->GetMap()->GetGameObject(TargetTubberGUID)) + if (GameObject* go = ObjectAccessor::GetGameObject(*me, TargetTubberGUID)) { go->SetRespawnTime(5 * MINUTE); go->Refresh(); diff --git a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ayamiss.cpp b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ayamiss.cpp index aa383be1443..b471f1f6410 100644 --- a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ayamiss.cpp +++ b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ayamiss.cpp @@ -19,6 +19,7 @@ #include "ScriptMgr.h" #include "InstanceScript.h" #include "Map.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "ruins_of_ahnqiraj.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_kurinnaxx.cpp b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_kurinnaxx.cpp index 3d208c4fd1b..c636d8a7a3f 100644 --- a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_kurinnaxx.cpp +++ b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_kurinnaxx.cpp @@ -18,6 +18,7 @@ #include "ScriptMgr.h" #include "CreatureTextMgr.h" #include "InstanceScript.h" +#include "ObjectAccessor.h" #include "ruins_of_ahnqiraj.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ossirian.cpp b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ossirian.cpp index beca6e88156..d0f7938eb07 100644 --- a/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ossirian.cpp +++ b/src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_ossirian.cpp @@ -18,7 +18,9 @@ #include "ScriptMgr.h" #include "GameObject.h" #include "InstanceScript.h" +#include "Map.h" #include "MiscPackets.h" +#include "ObjectAccessor.h" #include "Player.h" #include "ruins_of_ahnqiraj.h" #include "ScriptedCreature.h" @@ -130,7 +132,7 @@ class boss_ossirian : public CreatureScript void DoAction(int32 action) override { if (action == ACTION_TRIGGER_WEAKNESS) - if (Creature* Trigger = me->GetMap()->GetCreature(TriggerGUID)) + if (Creature* Trigger = ObjectAccessor::GetCreature(*me, TriggerGUID)) if (!Trigger->HasUnitState(UNIT_STATE_CASTING)) Trigger->CastSpell(Trigger, SpellWeakness[urand(0, 4)], false); } @@ -181,7 +183,7 @@ class boss_ossirian : public CreatureScript void Cleanup() { - if (GameObject* Crystal = me->GetMap()->GetGameObject(CrystalGUID)) + if (GameObject* Crystal = ObjectAccessor::GetGameObject(*me, CrystalGUID)) Crystal->Use(me); } diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp index c70bede36ed..4571b681e59 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp @@ -25,6 +25,7 @@ EndScriptData */ #include "ScriptMgr.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "ScriptedCreature.h" #include "SpellInfo.h" diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_viscidus.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_viscidus.cpp index c8102675ac5..cf5ab95ae1c 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_viscidus.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_viscidus.cpp @@ -17,6 +17,7 @@ #include "ScriptMgr.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "ScriptedCreature.h" #include "SpellInfo.h" diff --git a/src/server/scripts/Kalimdor/WailingCaverns/wailing_caverns.cpp b/src/server/scripts/Kalimdor/WailingCaverns/wailing_caverns.cpp index 27b096e3561..239624a16ac 100644 --- a/src/server/scripts/Kalimdor/WailingCaverns/wailing_caverns.cpp +++ b/src/server/scripts/Kalimdor/WailingCaverns/wailing_caverns.cpp @@ -28,6 +28,8 @@ EndContentData */ #include "ScriptMgr.h" #include "InstanceScript.h" +#include "MotionMaster.h" +#include "ObjectAccessor.h" #include "Player.h" #include "ScriptedGossip.h" #include "ScriptedEscortAI.h" @@ -259,7 +261,7 @@ public: ++eventProgress; eventTimer = 15000; //CAST_AI(npc_escort::npc_escortAI, me->AI())->SetCanDefend(false); - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) DoCast(naralex, SPELL_NARALEXS_AWAKENING, true); Talk(EMOTE_AWAKENING_RITUAL); } @@ -268,7 +270,7 @@ public: { ++eventProgress; eventTimer = 15000; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) naralex->AI()->Talk(EMOTE_TROUBLED_SLEEP); me->SummonCreature(NPC_DEVIATE_MOCCASIN, 135.943f, 199.701f, -103.529f, 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 15000); me->SummonCreature(NPC_DEVIATE_MOCCASIN, 151.08f, 221.13f, -103.609f, 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 15000); @@ -279,7 +281,7 @@ public: { ++eventProgress; eventTimer = 30000; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) naralex->AI()->Talk(EMOTE_WRITHE_IN_AGONY); me->SummonCreature(NPC_NIGHTMARE_ECTOPLASM, 133.413f, 207.188f, -102.469f, 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 15000); me->SummonCreature(NPC_NIGHTMARE_ECTOPLASM, 142.857f, 218.645f, -102.905f, 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 15000); @@ -293,7 +295,7 @@ public: if (eventProgress == 5) { ++eventProgress; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) naralex->AI()->Talk(EMOTE_HORRENDOUS_VISION); me->SummonCreature(NPC_MUTANUS_THE_DEVOURER, 150.872f, 262.905f, -103.503f, 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 300000); Talk(SAY_MUTANUS_THE_DEVOURER); @@ -304,7 +306,7 @@ public: { ++eventProgress; eventTimer = 3000; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) { if (me->HasAura(SPELL_NARALEXS_AWAKENING)) me->RemoveAura(SPELL_NARALEXS_AWAKENING); @@ -318,7 +320,7 @@ public: { ++eventProgress; eventTimer = 6000; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) naralex->AI()->Talk(SAY_THANK_YOU); } else @@ -326,7 +328,7 @@ public: { ++eventProgress; eventTimer = 8000; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) { naralex->AI()->Talk(SAY_FAREWELL); naralex->AddAura(SPELL_FLIGHT_FORM, naralex); @@ -340,7 +342,7 @@ public: { ++eventProgress; eventTimer = 1500; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) naralex->GetMotionMaster()->MovePoint(25, naralex->GetPositionX(), naralex->GetPositionY(), naralex->GetPositionZ()); } else @@ -348,7 +350,7 @@ public: { ++eventProgress; eventTimer = 2500; - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) { naralex->GetMotionMaster()->MovePoint(0, 117.095512f, 247.107971f, -96.167870f); naralex->GetMotionMaster()->MovePoint(1, 90.388809f, 276.135406f, -83.389801f); @@ -359,7 +361,7 @@ public: else if (eventProgress == 11) { - if (Creature* naralex = instance->instance->GetCreature(instance->GetGuidData(DATA_NARALEX))) + if (Creature* naralex = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NARALEX))) naralex->SetVisible(false); me->SetVisible(false); instance->SetData(TYPE_NARALEX_PART3, DONE); diff --git a/src/server/scripts/Kalimdor/ZulFarrak/instance_zulfarrak.cpp b/src/server/scripts/Kalimdor/ZulFarrak/instance_zulfarrak.cpp index 695d99872e9..f678bf674d6 100644 --- a/src/server/scripts/Kalimdor/ZulFarrak/instance_zulfarrak.cpp +++ b/src/server/scripts/Kalimdor/ZulFarrak/instance_zulfarrak.cpp @@ -19,6 +19,7 @@ #include "GameObject.h" #include "InstanceScript.h" #include "Map.h" +#include "MotionMaster.h" #include "TemporarySummon.h" #include "zulfarrak.h" diff --git a/src/server/scripts/Kalimdor/ZulFarrak/zulfarrak.cpp b/src/server/scripts/Kalimdor/ZulFarrak/zulfarrak.cpp index c30d956bcc4..526232bab63 100644 --- a/src/server/scripts/Kalimdor/ZulFarrak/zulfarrak.cpp +++ b/src/server/scripts/Kalimdor/ZulFarrak/zulfarrak.cpp @@ -31,6 +31,7 @@ EndContentData */ #include "ScriptMgr.h" #include "GameObject.h" #include "InstanceScript.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedCreature.h" @@ -220,19 +221,19 @@ public: { instance->SetData(EVENT_PYRAMID, PYRAMID_CAGES_OPEN); //set bly & co to aggressive & start moving to top of stairs - initBlyCrewMember(instance, ENTRY_BLY, 1884.99f, 1263, 41.52f); - initBlyCrewMember(instance, ENTRY_RAVEN, 1882.5f, 1263, 41.52f); - initBlyCrewMember(instance, ENTRY_ORO, 1886.47f, 1270.68f, 41.68f); - initBlyCrewMember(instance, ENTRY_WEEGLI, 1890, 1263, 41.52f); - initBlyCrewMember(instance, ENTRY_MURTA, 1891.19f, 1272.03f, 41.60f); + initBlyCrewMember(instance, go, ENTRY_BLY, 1884.99f, 1263, 41.52f); + initBlyCrewMember(instance, go, ENTRY_RAVEN, 1882.5f, 1263, 41.52f); + initBlyCrewMember(instance, go, ENTRY_ORO, 1886.47f, 1270.68f, 41.68f); + initBlyCrewMember(instance, go, ENTRY_WEEGLI, 1890, 1263, 41.52f); + initBlyCrewMember(instance, go, ENTRY_MURTA, 1891.19f, 1272.03f, 41.60f); } return false; } private: - void initBlyCrewMember(InstanceScript* instance, uint32 entry, float x, float y, float z) + void initBlyCrewMember(InstanceScript* instance, GameObject* go, uint32 entry, float x, float y, float z) { - if (Creature* crew = instance->instance->GetCreature(instance->GetGuidData(entry))) + if (Creature* crew = ObjectAccessor::GetCreature(*go, instance->GetGuidData(entry))) { crew->SetReactState(REACT_AGGRESSIVE); crew->SetWalk(true); diff --git a/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp b/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp index e9337d3e4ee..4b0a551f229 100644 --- a/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp +++ b/src/server/scripts/Kalimdor/zone_azuremyst_isle.cpp @@ -36,6 +36,7 @@ EndContentData */ #include "CellImpl.h" #include "GridNotifiersImpl.h" #include "Log.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "ScriptedEscortAI.h" #include "ScriptedGossip.h" diff --git a/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp b/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp index f1aec9a37be..cb1cfbf51e8 100644 --- a/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp +++ b/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp @@ -31,6 +31,7 @@ EndContentData */ #include "CellImpl.h" #include "GridNotifiersImpl.h" #include "Group.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "PassiveAI.h" #include "Player.h" diff --git a/src/server/scripts/Kalimdor/zone_desolace.cpp b/src/server/scripts/Kalimdor/zone_desolace.cpp index 6fee111cb4e..6517fdf8928 100644 --- a/src/server/scripts/Kalimdor/zone_desolace.cpp +++ b/src/server/scripts/Kalimdor/zone_desolace.cpp @@ -29,10 +29,10 @@ go_demon_portal EndContentData */ #include "ScriptMgr.h" -#include "ScriptedCreature.h" -#include "ScriptedGossip.h" -#include "ScriptedEscortAI.h" +#include "MotionMaster.h" #include "Player.h" +#include "ScriptedEscortAI.h" +#include "ScriptedGossip.h" #include "SpellInfo.h" enum DyingKodo diff --git a/src/server/scripts/Kalimdor/zone_durotar.cpp b/src/server/scripts/Kalimdor/zone_durotar.cpp index a1a6b2d5329..7c3900f7444 100644 --- a/src/server/scripts/Kalimdor/zone_durotar.cpp +++ b/src/server/scripts/Kalimdor/zone_durotar.cpp @@ -18,6 +18,7 @@ #include "ScriptMgr.h" #include "CreatureAIImpl.h" #include "GameObject.h" +#include "MotionMaster.h" #include "Player.h" #include "ScriptedCreature.h" #include "SpellInfo.h" diff --git a/src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp b/src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp index bb5ca8716e8..d323189e5b0 100644 --- a/src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp +++ b/src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp @@ -27,6 +27,7 @@ EndScriptData */ EndContentData */ #include "ScriptMgr.h" +#include "MotionMaster.h" #include "Player.h" #include "QuestDef.h" #include "ScriptedEscortAI.h" diff --git a/src/server/scripts/Kalimdor/zone_felwood.cpp b/src/server/scripts/Kalimdor/zone_felwood.cpp index 863ad5a1bee..8a9d45aa33d 100644 --- a/src/server/scripts/Kalimdor/zone_felwood.cpp +++ b/src/server/scripts/Kalimdor/zone_felwood.cpp @@ -16,13 +16,9 @@ */ #include "ScriptMgr.h" -#include "ScriptedCreature.h" -#include "ScriptedGossip.h" +#include "MotionMaster.h" #include "Player.h" -#include "Cell.h" -#include "CellImpl.h" -#include "GridNotifiers.h" -#include "GridNotifiersImpl.h" +#include "ScriptedCreature.h" #include "SpellScript.h" /*###### @@ -240,7 +236,7 @@ public: spell_ruumbos_silly_dance() : SpellScriptLoader("spell_ruumbos_silly_dan { player->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_DANCE); - if (player->GetMap()->GetId() == MAP_KALIMDOR) + if (player->GetMapId() == MAP_KALIMDOR) { player->SummonCreature(NPC_DRIZZLE, DrizzleSpawnPos, TEMPSUMMON_TIMED_DESPAWN, 20000); player->SummonCreature(NPC_FERLI, FerliSpawnPos, TEMPSUMMON_TIMED_DESPAWN, 20000); diff --git a/src/server/scripts/Kalimdor/zone_moonglade.cpp b/src/server/scripts/Kalimdor/zone_moonglade.cpp index 85460b4d7f7..a6ecd7aedd6 100644 --- a/src/server/scripts/Kalimdor/zone_moonglade.cpp +++ b/src/server/scripts/Kalimdor/zone_moonglade.cpp @@ -16,15 +16,11 @@ */ #include "ScriptMgr.h" -#include "ScriptedCreature.h" -#include "ScriptedEscortAI.h" -#include "ScriptedGossip.h" +#include "GameObject.h" +#include "MotionMaster.h" #include "Player.h" +#include "ScriptedEscortAI.h" #include "SpellInfo.h" -#include "GridNotifiers.h" -#include "GridNotifiersImpl.h" -#include "Cell.h" -#include "CellImpl.h" /*#### # npc_omen diff --git a/src/server/scripts/Kalimdor/zone_mulgore.cpp b/src/server/scripts/Kalimdor/zone_mulgore.cpp index 15fa1a46ffd..b92251e623f 100644 --- a/src/server/scripts/Kalimdor/zone_mulgore.cpp +++ b/src/server/scripts/Kalimdor/zone_mulgore.cpp @@ -16,6 +16,7 @@ */ #include "ScriptMgr.h" +#include "MotionMaster.h" #include "ScriptedCreature.h" /*###### @@ -28,8 +29,7 @@ enum EagleSpirit SPELL_SPIRIT_FORM = 69324 }; -uint32 const EagleSpiritflightPathSize = 7; -G3D::Vector3 const EagleSpiritflightPath[EagleSpiritflightPathSize] = +Position const EagleSpiritflightPath[] = { { -2884.155f, -71.08681f, 242.0678f }, { -2720.592f, -111.0035f, 242.5955f }, @@ -39,6 +39,7 @@ G3D::Vector3 const EagleSpiritflightPath[EagleSpiritflightPathSize] = { -2465.321f, -502.4896f, 190.7347f }, { -2343.872f, -401.8281f, -8.320873f } }; +size_t const EagleSpiritflightPathSize = std::extent<decltype(EagleSpiritflightPath)>::value; class npc_eagle_spirit : public CreatureScript { @@ -54,7 +55,7 @@ public: if (!apply) return; - me->GetMotionMaster()->MoveSmoothPath(EagleSpiritflightPathSize, EagleSpiritflightPath, EagleSpiritflightPathSize, false, true); + me->GetMotionMaster()->MoveSmoothPath(uint32(EagleSpiritflightPathSize), EagleSpiritflightPath, EagleSpiritflightPathSize, false, true); me->CastSpell(me, SPELL_SPIRIT_FORM); } diff --git a/src/server/scripts/Kalimdor/zone_silithus.cpp b/src/server/scripts/Kalimdor/zone_silithus.cpp index afece0568de..430a04de529 100644 --- a/src/server/scripts/Kalimdor/zone_silithus.cpp +++ b/src/server/scripts/Kalimdor/zone_silithus.cpp @@ -39,6 +39,7 @@ EndContentData */ #include "CreatureAIImpl.h" #include "GameObject.h" #include "Group.h" +#include "MotionMaster.h" #include "Player.h" #include "ObjectAccessor.h" #include "ScriptedCreature.h" diff --git a/src/server/scripts/Kalimdor/zone_tanaris.cpp b/src/server/scripts/Kalimdor/zone_tanaris.cpp index 4c074407025..465ff2222aa 100644 --- a/src/server/scripts/Kalimdor/zone_tanaris.cpp +++ b/src/server/scripts/Kalimdor/zone_tanaris.cpp @@ -29,6 +29,7 @@ npc_OOX17 EndContentData */ #include "ScriptMgr.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedEscortAI.h" diff --git a/src/server/scripts/Kalimdor/zone_the_barrens.cpp b/src/server/scripts/Kalimdor/zone_the_barrens.cpp index 88d776d887d..56004e1ee92 100644 --- a/src/server/scripts/Kalimdor/zone_the_barrens.cpp +++ b/src/server/scripts/Kalimdor/zone_the_barrens.cpp @@ -28,6 +28,7 @@ npc_wizzlecrank_shredder EndContentData */ #include "ScriptMgr.h" +#include "MotionMaster.h" #include "ObjectAccessor.h" #include "Player.h" #include "ScriptedEscortAI.h" diff --git a/src/server/scripts/Kalimdor/zone_winterspring.cpp b/src/server/scripts/Kalimdor/zone_winterspring.cpp index 8d87d82e4a7..8380731b5c3 100644 --- a/src/server/scripts/Kalimdor/zone_winterspring.cpp +++ b/src/server/scripts/Kalimdor/zone_winterspring.cpp @@ -31,6 +31,8 @@ EndContentData */ #include "ScriptMgr.h" #include "GameObject.h" +#include "MotionMaster.h" +#include "ObjectAccessor.h" #include "Player.h" #include "ScriptedEscortAI.h" #include "ScriptedGossip.h" @@ -432,7 +434,7 @@ public: (*itr)->Refresh(); } - if (GameObject* altar = me->GetMap()->GetGameObject(_altarGUID)) + if (GameObject* altar = ObjectAccessor::GetGameObject(*me ,_altarGUID)) me->SetFacingToObject(altar); break; } @@ -446,7 +448,7 @@ public: case 44: // Stop the escort and turn towards the altar SetEscortPaused(true); - if (GameObject* altar = me->GetMap()->GetGameObject(_altarGUID)) + if (GameObject* altar = ObjectAccessor::GetGameObject(*me, _altarGUID)) me->SetFacingToObject(altar); break; } @@ -476,7 +478,7 @@ public: break; case SAY_PRIESTESS_ALTAR_9: // move near the escort npc - if (Creature* priestess = me->GetMap()->GetCreature(_firstPriestessGUID)) + if (Creature* priestess = ObjectAccessor::GetCreature(*me, _firstPriestessGUID)) priestess->GetMotionMaster()->MovePoint(0, wingThicketLocations[6]); break; case SAY_PRIESTESS_ALTAR_13: @@ -487,7 +489,7 @@ public: _guardEluneGUID = guard->GetGUID(); } // summon the Voice of Elune - if (GameObject* altar = me->GetMap()->GetGameObject(_altarGUID)) + if (GameObject* altar = ObjectAccessor::GetGameObject(*me, _altarGUID)) { if (Creature* voice = me->SummonCreature(NPC_VOICE_ELUNE, *altar, TEMPSUMMON_TIMED_DESPAWN, 30000)) _voiceEluneGUID = voice->GetGUID(); @@ -495,7 +497,7 @@ public: break; case SAY_VOICE_ALTAR_15: // move near the escort npc and continue dialogue - if (Creature* priestess = me->GetMap()->GetCreature(_secondPriestessGUID)) + if (Creature* priestess = ObjectAccessor::GetCreature(*me, _secondPriestessGUID)) { priestess->AI()->Talk(SAY_PRIESTESS_ALTAR_14); priestess->GetMotionMaster()->MovePoint(0, wingThicketLocations[7]); @@ -503,7 +505,7 @@ public: break; case SAY_PRIESTESS_ALTAR_19: // make the voice of elune leave - if (Creature* guard = me->GetMap()->GetCreature(_guardEluneGUID)) + if (Creature* guard = ObjectAccessor::GetCreature(*me, _guardEluneGUID)) { guard->GetMotionMaster()->MovePoint(0, wingThicketLocations[2]); guard->DespawnOrUnsummon(4000); @@ -511,7 +513,7 @@ public: break; case SAY_PRIESTESS_ALTAR_20: // make the first priestess leave - if (Creature* priestess = me->GetMap()->GetCreature(_firstPriestessGUID)) + if (Creature* priestess = ObjectAccessor::GetCreature(*me, _firstPriestessGUID)) { priestess->GetMotionMaster()->MovePoint(0, wingThicketLocations[0]); priestess->DespawnOrUnsummon(4000); @@ -519,7 +521,7 @@ public: break; case SAY_PRIESTESS_ALTAR_21: // make the second priestess leave - if (Creature* priestess = me->GetMap()->GetCreature(_secondPriestessGUID)) + if (Creature* priestess = ObjectAccessor::GetCreature(*me, _secondPriestessGUID)) { priestess->GetMotionMaster()->MovePoint(0, wingThicketLocations[1]); priestess->DespawnOrUnsummon(4000); @@ -535,7 +537,7 @@ public: break; case SAY_RANSHALLA_END_2: // Turn towards the altar and kneel - quest complete - if (GameObject* altar = me->GetMap()->GetGameObject(_altarGUID)) + if (GameObject* altar = ObjectAccessor::GetGameObject(*me, _altarGUID)) { me->SetFacingToObject(altar); altar->ResetDoorOrButton(); @@ -558,11 +560,11 @@ public: case NPC_RANSHALLA: return me; case NPC_VOICE_ELUNE: - return me->GetMap()->GetCreature(_voiceEluneGUID); + return ObjectAccessor::GetCreature(*me, _voiceEluneGUID); case NPC_PRIESTESS_DATA_1: - return me->GetMap()->GetCreature(_firstPriestessGUID); + return ObjectAccessor::GetCreature(*me, _firstPriestessGUID); case NPC_PRIESTESS_DATA_2: - return me->GetMap()->GetCreature(_secondPriestessGUID); + return ObjectAccessor::GetCreature(*me, _secondPriestessGUID); default: return NULL; } |
