Пример #1
0
    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;
    }
Пример #2
0
    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;
    }
Пример #3
0
    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;
    }
Пример #4
0
//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;
}
Пример #5
0
    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;
    }
Пример #6
0
//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;
}
Пример #7
0
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);

}
Пример #8
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;
}
Пример #9
0
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;
}