diff options
| author | Spp <spp@jorge.gr> | 2013-03-21 11:06:05 +0100 |
|---|---|---|
| committer | Spp <spp@jorge.gr> | 2013-03-21 11:06:05 +0100 |
| commit | d0910974336115be1dd06577c63fe3703e8170d2 (patch) | |
| tree | e656319942795130e33fb7829aae9f5e027a96b6 /src/server/scripts | |
| parent | 64cffa1271e852f88abd45519fdca301d9c887f2 (diff) | |
Core/AI: Do not expose internal storage of SummonList
Diffstat (limited to 'src/server/scripts')
9 files changed, 35 insertions, 34 deletions
diff --git a/src/server/scripts/Kalimdor/zone_winterspring.cpp b/src/server/scripts/Kalimdor/zone_winterspring.cpp index 637eda841f5..b48fbb2f1ae 100644 --- a/src/server/scripts/Kalimdor/zone_winterspring.cpp +++ b/src/server/scripts/Kalimdor/zone_winterspring.cpp @@ -147,7 +147,7 @@ enum Dummies struct DialogueEntry { int32 TextEntry; ///< To be said text entry - uint32 SayerEntry; ///< Entry of the mob who should say + int32 SayerEntry; ///< Entry of the mob who should say uint32 SayTimer; ///< Time delay until next text of array is said (0 stops) }; @@ -202,9 +202,9 @@ public: protected: /// Will be called when a dialogue step was done - virtual void JustDidDialogueStep(int32 entry) {} + virtual void JustDidDialogueStep(int32 /*entry*/) {} /// Will be called to get a speaker, MUST be implemented if not used in instances - virtual Creature* GetSpeakerByEntry(uint32 entry) { return NULL; } + virtual Creature* GetSpeakerByEntry(uint32 /*entry*/) { return NULL; } private: void DoNextDialogueStep() @@ -225,7 +225,7 @@ private: if (sayerEntry && textEntry >= 0) { // Use Speaker if directly provided - if(Creature* speaker = GetSpeakerByEntry(sayerEntry)) + if (Creature* speaker = GetSpeakerByEntry(sayerEntry)) speaker->AI()->Talk(textEntry); } @@ -281,11 +281,11 @@ static Position wingThicketLocations[] = {5515.98f, -4903.43f, 846.30f, 4.58f}, // 0 right priestess summon loc {5501.94f, -4920.20f, 848.69f, 6.15f}, // 1 left priestess summon loc {5497.35f, -4906.49f, 850.83f, 2.76f}, // 2 guard of elune summon loc - {5518.38f, -4913.47f, 845.57f}, // 3 right priestess move loc - {5510.36f, -4921.17f, 846.33f}, // 4 left priestess move loc - {5511.31f, -4913.82f, 847.17f}, // 5 guard of elune move loc - {5518.51f, -4917.56f, 845.23f}, // 6 right priestess second move loc - {5514.40f, -4921.16f, 845.49f} // 7 left priestess second move loc + {5518.38f, -4913.47f, 845.57f, 0.00f}, // 3 right priestess move loc + {5510.36f, -4921.17f, 846.33f, 0.00f}, // 4 left priestess move loc + {5511.31f, -4913.82f, 847.17f, 0.00f}, // 5 guard of elune move loc + {5518.51f, -4917.56f, 845.23f, 0.00f}, // 6 right priestess second move loc + {5514.40f, -4921.16f, 845.49f, 0.00f} // 7 left priestess second move loc }; /*##### @@ -549,15 +549,18 @@ public: } } - Creature* GetSpeakerByEntry(uint32 entry) + Creature* GetSpeakerByEntry(int32 entry) { switch (entry) { - case NPC_RANSHALLA: return me; - case NPC_VOICE_ELUNE: return me->GetMap()->GetCreature(_voiceEluneGUID); - case NPC_PRIESTESS_DATA_1: return me->GetMap()->GetCreature(_firstPriestessGUID); - case NPC_PRIESTESS_DATA_2: return me->GetMap()->GetCreature(_secondPriestessGUID); - + case NPC_RANSHALLA: + return me; + case NPC_VOICE_ELUNE: + return me->GetMap()->GetCreature(_voiceEluneGUID); + case NPC_PRIESTESS_DATA_1: + return me->GetMap()->GetCreature(_firstPriestessGUID); + case NPC_PRIESTESS_DATA_2: + return me->GetMap()->GetCreature(_secondPriestessGUID); default: return NULL; } @@ -597,7 +600,7 @@ class go_elune_fire : public GameObjectScript { public: go_elune_fire() : GameObjectScript("go_elune_fire") { } - bool OnGossipHello(Player* player, GameObject* go) + bool OnGossipHello(Player* /*player*/, GameObject* go) { // Check if we are using the torches or the altar bool isAltar = false; diff --git a/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp b/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp index 3dcac3f68dc..2438273dcba 100644 --- a/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp +++ b/src/server/scripts/Northrend/DraktharonKeep/boss_trollgore.cpp @@ -185,7 +185,7 @@ public: void JustSummoned(Creature* summon) { - lSummons.push_back(summon->GetGUID()); + lSummons.Summon(summon); if (summon->AI()) summon->AI()->AttackStart(me); } diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp index e377f5f8d07..cab02c9ca75 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp @@ -687,7 +687,7 @@ class boss_professor_putricide : public CreatureScript me->SetFacingToObject(face); me->HandleEmoteCommand(EMOTE_ONESHOT_KNEEL); Talk(SAY_TRANSFORM_2); - summons.remove_if(AbominationDespawner(me)); + summons.DespawnIf(AbominationDespawner(me)); events.ScheduleEvent(EVENT_RESUME_ATTACK, 8500, 0, PHASE_COMBAT_3); break; default: diff --git a/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp b/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp index 878107ab35d..0e5941138a6 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_sapphiron.cpp @@ -89,11 +89,10 @@ class boss_sapphiron : public CreatureScript struct boss_sapphironAI : public BossAI { - boss_sapphironAI(Creature* creature) : BossAI(creature, BOSS_SAPPHIRON) - , _phase(PHASE_NULL) - { - _map = me->GetMap(); - } + boss_sapphironAI(Creature* creature) : + BossAI(creature, BOSS_SAPPHIRON), _phase(PHASE_NULL), + _map(me->GetMap()) + { } void InitializeAI() { diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp index 47e39574690..d861343116f 100644 --- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp +++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp @@ -621,7 +621,7 @@ public: { VehicleCheckPredicate pred; summons.DoAction(ACTION_DELAYED_DESPAWN, pred); - summons.remove_if(pred); + summons.DespawnIf(pred); summons.DespawnAll(); } else if (_phase == PHASE_THREE) diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp index 33a14aaa3df..3299148ea43 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_freya.cpp @@ -287,7 +287,6 @@ class boss_freya : public CreatureScript void Reset() { _Reset(); - summons.clear(); trioWaveCount = 0; trioWaveController = 0; waveCount = 0; @@ -494,7 +493,7 @@ class boss_freya : public CreatureScript { for (uint8 n = 0; n < 3; ++n) { - summons.remove(Elemental[n][i]->GetGUID()); + summons.Despawn(Elemental[n][i]); Elemental[n][i]->DespawnOrUnsummon(5000); trioDefeated[i] = true; Elemental[n][i]->CastSpell(me, SPELL_REMOVE_10STACK, true); @@ -625,7 +624,7 @@ class boss_freya : public CreatureScript case NPC_ANCIENT_WATER_SPIRIT: case NPC_STORM_LASHER: ElementalGUID[trioWaveController][trioWaveCount] = summoned->GetGUID(); - summons.push_back(summoned->GetGUID()); + summons.Summon(summoned); ++trioWaveController; if (trioWaveController > 2) trioWaveController = 0; @@ -633,7 +632,7 @@ class boss_freya : public CreatureScript case NPC_DETONATING_LASHER: case NPC_ANCIENT_CONSERVATOR: default: - summons.push_back(summoned->GetGUID()); + summons.Summon(summoned); break; } @@ -654,12 +653,12 @@ class boss_freya : public CreatureScript summoned->CastSpell(me, SPELL_REMOVE_2STACK, true); summoned->CastSpell(who, SPELL_DETONATE, true); summoned->DespawnOrUnsummon(5000); - summons.remove(summoned->GetGUID()); + summons.Despawn(summoned); break; case NPC_ANCIENT_CONSERVATOR: summoned->CastSpell(me, SPELL_REMOVE_25STACK, true); summoned->DespawnOrUnsummon(5000); - summons.remove(summoned->GetGUID()); + summons.Despawn(summoned); break; } } diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_hodir.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_hodir.cpp index b970dc6d7ab..0f99ea9cc2d 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_hodir.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_hodir.cpp @@ -821,7 +821,7 @@ class npc_hodir_mage : public CreatureScript void SummonedCreatureDespawn(Creature* summoned) { if (summoned->GetEntry() == NPC_TOASTY_FIRE) - summons.remove(summoned->GetGUID()); + summons.Despawn(summoned); } void UpdateAI(uint32 diff) diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_kologarn.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_kologarn.cpp index 5e94fc2ee5d..47fe7c8f80a 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_kologarn.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_kologarn.cpp @@ -219,7 +219,7 @@ class boss_kologarn : public CreatureScript summon->CastSpell(me, SPELL_FOCUSED_EYEBEAM_VISUAL_RIGHT, true); break; case NPC_RUBBLE: - summons.push_back(summon->GetGUID()); + summons.Summon(summon); // absence of break intended default: return; diff --git a/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp b/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp index cfb3c03b12c..db70177f8a0 100644 --- a/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp +++ b/src/server/scripts/Northrend/VioletHold/boss_ichoron.cpp @@ -306,7 +306,7 @@ public: { summoned->SetSpeed(MOVE_RUN, 0.3f); summoned->GetMotionMaster()->MoveFollow(me, 0, 0); - m_waterElements.push_back(summoned->GetGUID()); + m_waterElements.Summon(summoned); instance->SetData64(DATA_ADD_TRASH_MOB, summoned->GetGUID()); } } @@ -315,7 +315,7 @@ public: { if (summoned) { - m_waterElements.remove(summoned->GetGUID()); + m_waterElements.Despawn(summoned); instance->SetData64(DATA_DEL_TRASH_MOB, summoned->GetGUID()); } } |
