All pastes #805814 Raw Edit

Meins

public text v1 · immutable
·published 2007-12-04 18:12 UTC
rendered paste body
/* Copyright (C) 2006,2007 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/>
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/

#include "../../sc_defines.h"
#include "../../creature/simple_ai.h"

//Blackwing Technician
//Blackwing Spellbinder
//Blackwing Warlock
//Death Talon Overseer

CreatureAI* GetAI_mob_blackwinglair(Creature *_Creature)
{
    SimpleAI* ai = new SimpleAI (_Creature);

    uint32 CreatureID = _Creature->GetEntry();

    switch (CreatureID) 
    {
	//Death Talon Wyrmkin
	case 12465:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=23512;	// Instant Area-Fireball (low dmg)
		ai->Spell[0].Cooldown=5000;
		ai->Spell[0].CooldownRandomAddition=5000;
		ai->Spell[0].Cast_Target_Type = CAST_SELF;
		break;
	//Death Talon Captain
	case 12467:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=26350;	// Cleave
		ai->Spell[0].Cooldown=20000;
		ai->Spell[0].CooldownRandomAddition=5000;
		ai->Spell[0].Cast_Target_Type = CAST_SELF;
		ai->Spell[1].Enabled=true;
		ai->Spell[1].Spell_Id=22911;	// Charge
		ai->Spell[1].Cooldown=30000;
		ai->Spell[1].CooldownRandomAddition=5000;
		ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		break;
	//Death Talon Seether
	case 12464:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=22428;	// Frenzy
		ai->Spell[0].Cooldown=10000;
		ai->Spell[0].CooldownRandomAddition=20000;
		ai->Spell[0].Cast_Target_Type = CAST_SELF;
		break;
	//Death Talon Flamescale
	case 12463:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=22275;	// AoE Flamestrike
		ai->Spell[0].Cooldown=30000;
		ai->Spell[0].CooldownRandomAddition=10000;
		ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		break;
	//Blackwing technician
	case 13996:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=29579;	// dynamite
		ai->Spell[0].Cooldown=20000;
		ai->Spell[0].CooldownRandomAddition=15000;
		ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		ai->Spell[1].Enabled=true;
		ai->Spell[1].Spell_Id=22335;	// poison
		ai->Spell[1].Cooldown=20000;
		ai->Spell[1].CooldownRandomAddition=10000;
		ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		break;
	//Blackwing Spellbinder
	case 12457:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=22275;	// AoE Flamestrike
		ai->Spell[0].Cooldown=30000;
		ai->Spell[0].CooldownRandomAddition=10000;
		ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		ai->Spell[1].Enabled=true;
		ai->Spell[1].Spell_Id=22274;	// Polymorph
		ai->Spell[1].Cooldown=20000;
		ai->Spell[1].CooldownRandomAddition=10000;
		ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		break;
	//Blackwing Warlock
	case 12459:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=24668;	// Shadow bolt
		ai->Spell[0].Cooldown=5000;
		ai->Spell[0].CooldownRandomAddition=10000;
		ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		ai->Spell[1].Enabled=true;
		ai->Spell[1].Spell_Id=19717;	// Rain of Fire
		ai->Spell[1].Cooldown=20000;
		ai->Spell[1].CooldownRandomAddition=20000;
		ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_RANDOM;
		break;
	//Death Talon Overseer
	case 12461:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=26350;	// Cleave
		ai->Spell[0].Cooldown=15000;
		ai->Spell[0].CooldownRandomAddition=10000;
		ai->Spell[0].Cast_Target_Type = CAST_SELF;
		ai->Spell[1].Enabled=true;
		ai->Spell[1].Spell_Id=20623;	// Fire Blast
		ai->Spell[1].Cooldown=20000;
		ai->Spell[1].CooldownRandomAddition=10000;
		ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_TARGET;
		break;
	//Death Talon Wyrmguard
	case 12460:
		ai->Spell[0].Enabled=true;
		ai->Spell[0].Spell_Id=26350;	// Cleave
		ai->Spell[0].Cooldown=50000;
		ai->Spell[0].CooldownRandomAddition=10000;
		ai->Spell[0].Cast_Target_Type = CAST_SELF;
		ai->Spell[1].Enabled=true;
		ai->Spell[1].Spell_Id=27758;	// War Stomp
		ai->Spell[1].First_Cast=10000;
		ai->Spell[1].Cooldown=60000;
		ai->Spell[1].CooldownRandomAddition=10000;
		ai->Spell[1].Cast_Target_Type = CAST_SELF;
		ai->Spell[2].Enabled=true;
		ai->Spell[2].Spell_Id=22559;	// Brood Power: blue
		ai->Spell[2].First_Cast=20000;
		ai->Spell[2].Cooldown=60000;
		ai->Spell[2].CooldownRandomAddition=30000;
		ai->Spell[2].Cast_Target_Type = CAST_HOSTILE_TARGET;
		ai->Spell[3].Enabled=true;
		ai->Spell[3].Spell_Id=22642;	// Brood Power: bronze
		ai->Spell[3].First_Cast=30000;
		ai->Spell[3].Cooldown=60000;
		ai->Spell[3].CooldownRandomAddition=30000;
		ai->Spell[3].Cast_Target_Type = CAST_HOSTILE_TARGET;
		break;
	}
	ai->EnterEvadeMode();

	return ai;
}

void AddSC_mob_blackwing_lair()
{
    Script *newscript;
    newscript = new Script;
    newscript->Name="mob_blackwing_lair";
    newscript->GetAI = GetAI_mob_blackwinglair;
    m_scripts[nrscripts++] = newscript;
}