CreatureAI* GetAI(Creature* creature) const { SimpleAI* ai = new SimpleAI(creature); ai->Spell[0].Enabled = true; ai->Spell[0].Spell_Id = SPELL_CONE_OF_FIRE; ai->Spell[0].Cooldown = 7000; ai->Spell[0].First_Cast = 10000; ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_TARGET; uint32 RandDebuff = RAND(SPELL_GROUND_STOMP, SPELL_ANCIENT_DREAD, SPELL_CAUTERIZING_FLAMES, SPELL_WITHERING_HEAT, SPELL_ANCIENT_DESPAIR, SPELL_ANCIENT_HYSTERIA); ai->Spell[1].Enabled = true; ai->Spell[1].Spell_Id = RandDebuff; ai->Spell[1].Cooldown = 24000; ai->Spell[1].First_Cast = 15000; ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_TARGET; ai->Spell[2].Enabled = true; ai->Spell[2].Spell_Id = SPELL_BITE; ai->Spell[2].Cooldown = 6000; ai->Spell[2].First_Cast = 4000; ai->Spell[2].Cast_Target_Type = CAST_HOSTILE_TARGET; ai->EnterEvadeMode(); return ai; }
CreatureAI* GetAI(Creature* pCreature) const { sLog->outString("SCR: Convert simpleAI script for Creature Entry %u to ACID", pCreature->GetEntry()); SimpleAI* ai = new SimpleAI (pCreature); ai->Spell[0].Enabled = true; ai->Spell[0].Spell_Id = SPELL_SHADOW_PYRO; ai->Spell[0].Cooldown = 5000; ai->Spell[0].First_Cast = 1000; ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_TARGET; ai->EnterEvadeMode(); return ai; }
CreatureAI* GetAI(Creature* creature) const { SimpleAI* ai = new SimpleAI (creature); ai->Spell[0].Enabled = true; ai->Spell[0].Spell_Id = 31345; //Cleave ai->Spell[0].Cooldown = 15000; ai->Spell[0].CooldownRandomAddition = 5000; ai->Spell[0].First_Cast = 5000; ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_RANDOM; ai->EnterEvadeMode(); return ai; }
//Coilfang Elite //It's an elite Naga mob with 170,000 HP. It does about 5000 damage on plate, and has a nasty cleave hitting for about 7500 damage CreatureAI* GetAI_mob_coilfang_elite(Creature* pCreature) { SimpleAI* pAI = new SimpleAI (pCreature); pAI->Spell[0].Enabled = true; pAI->Spell[0].Spell_Id = 31345; //Cleave pAI->Spell[0].Cooldown = 15000; pAI->Spell[0].CooldownRandomAddition = 5000; pAI->Spell[0].First_Cast = 5000; pAI->Spell[0].Cast_Target_Type = CAST_HOSTILE_RANDOM; pAI->EnterEvadeMode(); return pAI; }
CreatureAI* GetAI(Creature* creature) const { SimpleAI* ai = new SimpleAI (creature); ai->Spell[0].Enabled = true; ai->Spell[0].Spell_Id = 41374; //Mind Blast ai->Spell[0].Cooldown = 30000; ai->Spell[0].CooldownRandomAddition = 10000; ai->Spell[0].First_Cast = 8000; ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_TARGET; //Scream aura not implemented ai->EnterEvadeMode(); return ai; }
//Coilfang Strifer //It hits plate for about 8000 damage, has a Mind Blast spell doing about 3000 shadow damage, and a Psychic Scream Aura, which fears everybody in a 8 yard range of it every 2-3 seconds , for 5 seconds and increasing their movement speed by 150% during the fear. CreatureAI* GetAI_mob_coilfang_strider(Creature* pCreature) { SimpleAI* pAI = new SimpleAI (pCreature); pAI->Spell[0].Enabled = true; pAI->Spell[0].Spell_Id = 41374; //Mind Blast pAI->Spell[0].Cooldown = 30000; pAI->Spell[0].CooldownRandomAddition = 10000; pAI->Spell[0].First_Cast = 8000; pAI->Spell[0].Cast_Target_Type = CAST_HOSTILE_TARGET; //Scream aura not implemented pAI->EnterEvadeMode(); return pAI; }
void testmJump() { using std::cout; using std::endl; Game g(false, false); SimpleAI a; Move move; do { cout << "P1: " << g.getP1score() <<"P2: " << g.getP2score() << endl; g.print(); move = a.evaluate_game(g); cout << errorTable[g.move(move)]; } while (g.getP1score() > 0 && g.getP2score() > 0); }
CreatureAI* GetAI_mob_ancient_core_hound(Creature *_Creature) { SimpleAI *ai = new SimpleAI(_Creature); ai->Spell[0].Enabled = true; ai->Spell[0].Spell_Id = SPELL_CONE_OF_FIRE; ai->Spell[0].Cooldown = 7000; ai->Spell[0].First_Cast = 10000; ai->Spell[0].Cast_Target_Type = CAST_HOSTILE_TARGET; uint32 RandDebuff; switch(rand()%6) { case 0 : RandDebuff = SPELL_GROUND_STOMP; break; case 1 : RandDebuff = SPELL_ANCIENT_DREAD; break; case 2 : RandDebuff = SPELL_CAUTERIZING_FLAMES; break; case 3 : RandDebuff = SPELL_WITHERING_HEAT; break; case 4 : RandDebuff = SPELL_ANCIENT_DESPAIR; break; case 5 : RandDebuff = SPELL_ANCIENT_HYSTERIA; break; } ai->Spell[1].Enabled = true; ai->Spell[1].Spell_Id = RandDebuff; ai->Spell[1].Cooldown = 24000; ai->Spell[1].First_Cast = 15000; ai->Spell[1].Cast_Target_Type = CAST_HOSTILE_TARGET; ai->Spell[2].Enabled = true; ai->Spell[2].Spell_Id = SPELL_BITE; ai->Spell[2].Cooldown = 6000; ai->Spell[2].First_Cast = 4000; ai->Spell[2].Cast_Target_Type = CAST_HOSTILE_TARGET; ai->EnterEvadeMode(); return ai; }
CreatureAI* GetAI_boss_ghazan(Creature *_Creature) { SimpleAI* ai = new SimpleAI (_Creature); // Acid Spit - 34290; timer: 8sec ai->Spell[0].Enabled = true; ai->Spell[0].Spell_Id = 34290; ai->Spell[0].Cooldown = 8000; ai->Spell[0].First_Cast = 8000; ai->Spell[0].Cast_Target_Type = CAST_SELF; // Acid Breath - 34268; timer: 5sec ai->Spell[1].Enabled = true; ai->Spell[1].Spell_Id = 34268; ai->Spell[1].Cooldown = 5000; ai->Spell[1].First_Cast = 5000; ai->Spell[1].Cast_Target_Type = CAST_SELF; // Tail Sweep - 34267 ai->Spell[2].Enabled = true; ai->Spell[2].Spell_Id = 34267; ai->Spell[2].Cooldown = 10000; ai->Spell[2].First_Cast = 10000; ai->Spell[2].Cast_Target_Type = CAST_SELF; // Enrage - 20% hp; 40683 ai->Spell[3].Enabled = true; ai->Spell[3].Spell_Id = 40683; ai->Spell[3].Cooldown = -1; ai->Spell[3].First_Cast = -80; ai->Spell[3].Cast_Target_Type = CAST_SELF; ai->EnterEvadeMode(); return ai; }