Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Boss Antrix
- By Nevadies
- 05-31-2012
- */
- #include "ScriptPCH.h"
- enum Spells
- {
- SPELL_SHADOW_LANCE = 81635,
- SPELL_SHADOWSTEP = 589,
- SPELL_SHADOW_NOVA = 34914,
- SPELL_SHADOW_BLAST = 81636,
- SPELL_GRAVITY_BOMB = 81636,
- SPELL_DEATH_COIL = 92122,
- SPELL_FEAR = 29321,
- };
- class boss_dragon2 : public CreatureScript
- {
- public:
- boss_dragon2()
- : CreatureScript("boss_dragon2"){}
- struct boss_dragon2AI : public ScriptedAI
- {
- boss_dragon2AI(Creature * c) : ScriptedAI(c){}
- uint32 ShadowLanceTimer;
- uint32 ShadowStepTimer;
- uint32 ShadowNovaTimer;
- uint32 ShadowBlastTimer;
- uint32 GravityBombTimer;
- uint32 DeathCoilTimer;
- uint32 FearTimer;
- void Reset()
- {
- ShadowLanceTimer = 3000;
- ShadowStepTimer = 4500;
- ShadowNovaTimer = 6000;
- ShadowBlastTimer = 1500;
- GravityBombTimer = 1800;
- DeathCoilTimer = 1000;
- FearTimer = 7000;
- me->RestoreFaction();
- }
- void KilledUnit(Unit *)
- {
- me->MonsterYell("As I leach your soul, I'll leach them all!", LANG_UNIVERSAL, me->GetGUID());
- }
- void JustDied(Unit *)
- {
- me->MonsterYell("You've beaten me! You won't pass us all!", LANG_UNIVERSAL, me->GetGUID());
- }
- void EnterCombat(Unit* who)
- {
- me->MonsterYell("You've entered the Realm of Shadow's! You won't return!", LANG_UNIVERSAL, me->GetGUID());
- }
- void AttackStart(Unit* who)
- {
- ScriptedAI::AttackStart(who);
- }
- void UpdateAI(const uint32 diff)
- {
- if (!UpdateVictim())
- return;
- if (ShadowLanceTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_SHADOW_LANCE);
- ShadowLanceTimer = 4500;
- }
- else
- ShadowLanceTimer -= diff;
- if (ShadowStepTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_SHADOWSTEP);
- ShadowStepTimer = 3000;
- }
- else
- ShadowStepTimer -= diff;
- if (ShadowNovaTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_SHADOW_NOVA);
- ShadowNovaTimer = 6000;
- }
- else
- ShadowNovaTimer -= diff;
- if (ShadowBlastTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_SHADOW_BLAST);
- ShadowBlastTimer = 5500;
- }
- else
- ShadowBlastTimer -= diff;
- if (GravityBombTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_GRAVITY_BOMB);
- GravityBombTimer = 3500;
- }
- else
- GravityBombTimer -= diff;
- if (DeathCoilTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_DEATH_COIL);
- DeathCoilTimer = 11000;
- }
- else
- DeathCoilTimer -= diff;
- if (FearTimer < diff)
- {
- DoCast(me->getVictim(), SPELL_FEAR);
- FearTimer = 7000;
- }
- else
- FearTimer -= diff;
- DoMeleeAttackIfReady(); // just add this line
- }
- };
- CreatureAI* GetAI(Creature* creature) const
- {
- return new boss_dragon2AI(creature);
- }
- };
- void AddSC_boss_dragon2()
- {
- new boss_dragon2();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement