Can anyone help me to add a counter of the hit creatures to be possible to cast SUMMON_DRAKKARI_CHIEFTAIN if 20 creatures are hit with knockback effect?
[CODE]
enum BurstAtTheSeams
{
BURST_AT_THE_SEAMS = 52510,
BURST_AT_THE_SEAMS_DMG = 52508, //dmg spell
BURST_AT_THE_SEAMS_DMG_2 = 59580, //abomin self dmg spell
BURST_AT_THE_SEAMS_BONE = 52516, //visual bones
DRAKKARI_SKULLCRUSHER_KC_BUNNY = 29099,
SUMMON_DRAKKARI_CHIEFTAIN = 52616,
DRAKKARI_CHIEFTAINK_KILL_CREDIT = 52620,
};
class spell_q12690_burst_at_the_seams : public SpellScriptLoader
{
public:
spell_q12690_burst_at_the_seams() : SpellScriptLoader(“spell_q12690_burst_at_the_seams”) { }
class spell_q12690_burst_at_the_seams_SpellScript : public SpellScript
{
PrepareSpellScript(spell_q12690_burst_at_the_seams_SpellScript);
bool Validate(SpellInfo const* spellInfo) OVERRIDE
{
if (!sSpellMgr->GetSpellInfo(BURST_AT_THE_SEAMS) && !sSpellMgr->GetSpellInfo(BURST_AT_THE_SEAMS_DMG) && !sSpellMgr->GetSpellInfo(BURST_AT_THE_SEAMS_DMG_2) && !sSpellMgr->GetSpellInfo(BURST_AT_THE_SEAMS_BONE))
return false;
return true;
}
bool Load() OVERRIDE
{
return GetCaster()->GetTypeId() == TYPEID_UNIT;
}
void HandleKnockBack(SpellEffIndex /*effIndex*/)
{
if (Unit* abomination = GetCaster())
if (Unit* creature = GetHitCreature())
if(Player* player = abomination->GetCharmerOrOwner()->ToPlayer())
{
player->KilledMonsterCredit(DRAKKARI_SKULLCRUSHER_KC_BUNNY,player->GetGUID());
creature->CastSpell(creature,BURST_AT_THE_SEAMS_BONE);
creature->CastSpell(creature,BURST_AT_THE_SEAMS_DMG);
}
}
void HandleScript(SpellEffIndex /*effIndex*/)
{
if (Unit* abomination = GetCaster())
if(abomination->IsAlive())
abomination->ToCreature()->DespawnOrUnsummon(2*IN_MILLISECONDS);
}
void Register() OVERRIDE
{
OnEffectHitTarget += SpellEffectFn(spell_q12690_burst_at_the_seams_SpellScript::HandleKnockBack, EFFECT_1, SPELL_EFFECT_KNOCK_BACK);
OnEffectHitTarget += SpellEffectFn(spell_q12690_burst_at_the_seams_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
}
};
SpellScript* GetSpellScript() const OVERRIDE
{
return new spell_q12690_burst_at_the_seams_SpellScript();
}
};[/CODE]