diff options
author | Subv <s.v.h21@hotmail.com> | 2012-10-02 18:34:27 -0700 |
---|---|---|
committer | Subv <s.v.h21@hotmail.com> | 2012-10-02 18:34:27 -0700 |
commit | 93a78d9bb524cb251caa21346b642d1dbd7ee62c (patch) | |
tree | c4049d70c50a4fe4837f8e9c8a59e634d18f987a /src | |
parent | 3aa586986fd11e7f43ff7a7ca0219e37ddc8e40b (diff) | |
parent | 256afa097dd8c18ae8803b727ad3b819dac36a02 (diff) |
Merge pull request #7950 from Retriman/ahorasi!
Core/Script: Dungeon Ahnkahet Boss Amanitar.
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp | 32 |
1 files changed, 14 insertions, 18 deletions
diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp index 14909019859..ebab2cb99a9 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp @@ -57,26 +57,14 @@ public: struct boss_amanitarAI : public BossAI { - boss_amanitarAI(Creature* creature) : BossAI(creature, DATA_AMANITAR) - { - instance = creature->GetInstanceScript(); - } + boss_amanitarAI(Creature* creature) : BossAI(creature, DATA_AMANITAR) { } - InstanceScript* instance; - EventMap events; - void Reset() { - events.Reset(); - events.ScheduleEvent(EVENT_ROOT, urand(5,9)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_BASH, urand(10,14)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_BOLT, urand(15,20)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_MINI, urand(12,18)*IN_MILLISECONDS); - events.ScheduleEvent(EVENT_SPAWN, 5 *IN_MILLISECONDS); - - me->SetMeleeDamageSchool(SPELL_SCHOOL_NATURE); - me->ApplySpellImmune(0, IMMUNITY_SCHOOL, SPELL_SCHOOL_MASK_NATURE, true); + _Reset(); + me->SetMeleeDamageSchool(SPELL_SCHOOL_NATURE); + me->ApplySpellImmune(0, IMMUNITY_SCHOOL, SPELL_SCHOOL_MASK_NATURE, true); summons.DespawnAll(); if (instance) @@ -90,6 +78,7 @@ public: { if (instance) { + _JustDied(); instance->SetData(DATA_AMANITAR_EVENT, DONE); instance->DoRemoveAurasDueToSpellOnPlayers(SPELL_MINI); summons.DespawnAll(); @@ -98,6 +87,14 @@ public: void EnterCombat(Unit* /*who*/) { + _EnterCombat(); + + events.ScheduleEvent(EVENT_ROOT, urand(5,9)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_BASH, urand(10,14)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_BOLT, urand(15,20)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_MINI, urand(12,18)*IN_MILLISECONDS); + events.ScheduleEvent(EVENT_SPAWN, 5 *IN_MILLISECONDS); + me->SetInCombatWithZone(); if (instance) instance->SetData(DATA_AMANITAR_EVENT, IN_PROGRESS); @@ -196,7 +193,7 @@ public: events.Reset(); events.ScheduleEvent(EVENT_AURA, 1*IN_MILLISECONDS); - me->SetDisplayId(26981); + me->SetDisplayId(me->GetCreatureTemplate()->Modelid2); DoCast(SPELL_PUTRID_MUSHROOM); if (me->GetEntry() == NPC_POISONOUS_MUSHROOM) @@ -240,7 +237,6 @@ public: break; } } - DoMeleeAttackIfReady(); } }; |