All pastes #729227 Raw Edit

Miscellany

public cpp v1 · immutable
·published 2007-10-07 19:41 UTC
rendered paste body
#include "../../sc_defines.h"#include "../../creature/simple_ai.h"#define MARK_OF_HYDROS              38218#define WATER_TOMB                  38235#define MARK_OF_CORRUPTION          38222#define VILE_SLUDGE                 38242#define ENRAGE                      34624#define SAY_ENTER                   "I cannot allow you to interfere!"#define SAY_JUSTDIED                "I am... released..."CreatureAI* GetAI_ boss_hydross(Creature *_Creature){    SimpleAI* ai = new SimpleAI (_Creature);        ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_DISARM, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_POLYMORPH, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_INTERRUPT, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_DAZE, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_FEAR, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_CHARM, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_ROOT, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_FREEZE, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_SILENCE, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_STUNE, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_CONFUSE, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_SLEEP, true);    ai->m_creature->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_BANISH, true);        //On Aggro    ai->Aggro_Yell[0] = SAY_ENTER;        //Just Died    ai->Death_Yell[0] = SAY_JUSTDIED;        //Mark of hydros    ai->Spell[0].Enabled = true;    ai->Spell[0].Spell_Id = MARK_OF_HYDROS;    ai->Spell[0].Cooldown = 60000;    ai->Spell[0].First_Cast = 1000;    ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_TARGET;        //Water Tomb    ai->Spell[1].Enabled = true;    ai->Spell[1].Spell_Id = WATER_TOMB;    ai->Spell[1].Cooldown = 14000;    ai->Spell[1].First_Cast = 2000;    ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_TARGET;        //Mark of Corruption    ai->Spell[2].Enabled = true;    ai->Spell[2].Spell_Id = MARK_OF_CORRUPTION;    ai->Spell[2].Cooldown = 60000;    ai->Spell[2].First_Cast = 30000;    ai->Spell[2].Cast_Target_Type = CAST_HOSTILE_TARGET;        //Vile Sludge    ai->Spell[3].Enabled = true;    ai->Spell[3].Spell_Id = VILE_SLUDGE;    ai->Spell[3].Cooldown = 30000;    ai->Spell[3].First_Cast = 31000;    ai->Spell[3].Cast_Target_Type = CAST_HOSTILE_TARGET;        //Enrage    ai->Spell[4].Enabled = true;    ai->Spell[4].Spell_Id = ENRAGE;    ai->Spell[4].First_Cast = 600000;    ai->Spell[4].Cast_Target_Type = CAST_SELF;        ai->EnterEvadeMode();    return ai;}    void AddSC_boss_hydross(){    Script *newscript;    newscript = new Script;    newscript->Name="boss_hydross";    newscript->GetAI = GetAI_boss_hydross;    m_scripts[nrscripts++] = newscript;}