From dae312b3c32ea91516e5a27cd4d39e201294eca3 Mon Sep 17 00:00:00 2001 From: Retriman Date: Tue, 2 Oct 2012 21:44:18 -0400 Subject: Core/Script: Dungeon Ahnkahet Boss Amanitar. *Add commented/sugestion from 139a9533256e0312e06fb72cb30622545629f161 (thanks @ joschiwald). *Add beter displayID. thanks @Aokromes from u point. --- .../AzjolNerub/Ahnkahet/boss_amanitar.cpp | 34 ++++++++++------------ 1 file changed, 15 insertions(+), 19 deletions(-) (limited to 'src') diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp index 14909019859..43f2d79ead5 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,9 +87,17 @@ 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); + instance->SetData(DATA_AMANITAR_EVENT, IN_PROGRESS); } void SpawnAdds() @@ -196,7 +193,7 @@ public: events.Reset(); events.ScheduleEvent(EVENT_AURA, 1*IN_MILLISECONDS); - me->SetDisplayId(26981); + me->SetDisplayId(me->GetCreatureTemplate()->Modelid1); DoCast(SPELL_PUTRID_MUSHROOM); if (me->GetEntry() == NPC_POISONOUS_MUSHROOM) @@ -240,7 +237,6 @@ public: break; } } - DoMeleeAttackIfReady(); } }; -- cgit v1.2.3 From 256afa097dd8c18ae8803b727ad3b819dac36a02 Mon Sep 17 00:00:00 2001 From: Retriman Date: Tue, 2 Oct 2012 21:51:06 -0400 Subject: Core/Script: Dungeon Ahnkahet Boss Amanitar. *Fix whitespaces *Fix modelid1 -> modelid2 thnks @Aokromes --- src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp index 43f2d79ead5..ebab2cb99a9 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp @@ -97,7 +97,7 @@ public: me->SetInCombatWithZone(); if (instance) - instance->SetData(DATA_AMANITAR_EVENT, IN_PROGRESS); + instance->SetData(DATA_AMANITAR_EVENT, IN_PROGRESS); } void SpawnAdds() @@ -193,7 +193,7 @@ public: events.Reset(); events.ScheduleEvent(EVENT_AURA, 1*IN_MILLISECONDS); - me->SetDisplayId(me->GetCreatureTemplate()->Modelid1); + me->SetDisplayId(me->GetCreatureTemplate()->Modelid2); DoCast(SPELL_PUTRID_MUSHROOM); if (me->GetEntry() == NPC_POISONOUS_MUSHROOM) -- cgit v1.2.3