diff options
-rw-r--r-- | sql/FULL/world_scripts_full.sql | 1 | ||||
-rw-r--r-- | sql/updates/6079_world_scripts.sql | 1 | ||||
-rw-r--r-- | src/bindings/scripts/scripts/northrend/naxxramas/boss_faerlina.cpp | 38 |
3 files changed, 5 insertions, 35 deletions
diff --git a/sql/FULL/world_scripts_full.sql b/sql/FULL/world_scripts_full.sql index e49544ccdcf..ec261b05485 100644 --- a/sql/FULL/world_scripts_full.sql +++ b/sql/FULL/world_scripts_full.sql @@ -779,7 +779,6 @@ UPDATE `creature_template` SET `ScriptName`='npc_maghar_captive' WHERE `entry`=1 UPDATE `instance_template` SET `script`='instance_naxxramas' WHERE `map`=533; UPDATE `creature_template` SET `ScriptName`='boss_anubrekhan' WHERE `entry`=15956; UPDATE `creature_template` SET `ScriptName`='boss_faerlina' WHERE `entry`=15953; -UPDATE `creature_template` SET `ScriptName`='mob_worshipper' WHERE `entry`=16506; UPDATE `creature_template` SET `ScriptName`='boss_maexxna' WHERE `entry`=15952; UPDATE `creature_template` SET `ScriptName`='mob_webwrap' WHERE `entry`=16486; UPDATE `creature_template` SET `ScriptName`='boss_noth' WHERE `entry`=15954; diff --git a/sql/updates/6079_world_scripts.sql b/sql/updates/6079_world_scripts.sql new file mode 100644 index 00000000000..97d7d197ec1 --- /dev/null +++ b/sql/updates/6079_world_scripts.sql @@ -0,0 +1 @@ +UPDATE `creature_template` SET `ScriptName`='' WHERE `entry`=16506; diff --git a/src/bindings/scripts/scripts/northrend/naxxramas/boss_faerlina.cpp b/src/bindings/scripts/scripts/northrend/naxxramas/boss_faerlina.cpp index 4dd7dcb2318..e6ade2d868d 100644 --- a/src/bindings/scripts/scripts/northrend/naxxramas/boss_faerlina.cpp +++ b/src/bindings/scripts/scripts/northrend/naxxramas/boss_faerlina.cpp @@ -54,7 +54,7 @@ enum Events enum Creatures { - NPC_FAERLINA = 15953 + NPC_WORSHIPPER = 16506 }; struct TRINITY_DLL_DECL boss_faerlinaAI : public BossAI @@ -126,10 +126,10 @@ struct TRINITY_DLL_DECL boss_faerlinaAI : public BossAI DoMeleeAttackIfReady(); } - void DispellEnrage() + void SpellHit(Unit* caster, const SpellEntry *spell) { - events.ScheduleEvent(EVENT_FRENZY, urand(60000,80000)); - m_creature->RemoveAurasDueToSpell(HEROIC(SPELL_FRENZY,H_SPELL_FRENZY)); + if (caster->GetEntry() == NPC_WORSHIPPER && spell->Id == HEROIC(SPELL_FRENZY,H_SPELL_FRENZY)) + events.ScheduleEvent(EVENT_FRENZY, urand(60000,80000)); } }; @@ -138,31 +138,6 @@ CreatureAI* GetAI_boss_faerlina(Creature* pCreature) return new boss_faerlinaAI (pCreature); } -struct TRINITY_DLL_DECL mob_worshipperAI : public ScriptedAI -{ - mob_worshipperAI(Creature *c) : ScriptedAI(c) - { - pInstance = c->GetInstanceData(); - } - - ScriptedInstance *pInstance; - - void JustDied(Unit *pKiller) - { - if (pInstance) - if (Creature* pFaerlina = pInstance->instance->GetCreature(NPC_FAERLINA)) - { - DoCast(pFaerlina,HEROIC(SPELL_WIDOWS_EMBRACE,H_SPELL_WIDOWS_EMBRACE)); - CAST_AI(boss_faerlinaAI,pFaerlina->AI())->DispellEnrage(); - } - } -}; - -CreatureAI* GetAI_mob_worshipper(Creature* pCreature) -{ - return new mob_worshipperAI (pCreature); -} - void AddSC_boss_faerlina() { Script *newscript; @@ -170,11 +145,6 @@ void AddSC_boss_faerlina() newscript->Name = "boss_faerlina"; newscript->GetAI = &GetAI_boss_faerlina; newscript->RegisterSelf(); - - newscript = new Script; - newscript->Name = "mob_worshipper"; - newscript->GetAI = &GetAI_mob_worshipper; - newscript->RegisterSelf(); } |