walock i will upload sql later

This commit is contained in:
luis
2026-09-15 14:33:27 -03:00
parent bae6615dfc
commit 98b6221faf
@@ -111,6 +111,8 @@ enum WarlockSpells
SPELL_WARLOCK_HAVOC = 80240, SPELL_WARLOCK_HAVOC = 80240,
SPELL_WARLOCK_CALL_DREADSTALKERS_LEFT = 193331, SPELL_WARLOCK_CALL_DREADSTALKERS_LEFT = 193331,
SPELL_WARLOCK_CALL_DREADSTALKERS_RIGHT = 193332, SPELL_WARLOCK_CALL_DREADSTALKERS_RIGHT = 193332,
SPELL_WARLOCK_CARNIVOROUS_STALKERS = 386194,
SPELL_WARLOCK_DREADBITE = 205196,
SPELL_WARLOCK_DREADSTALKER_CHARGE = 194247, SPELL_WARLOCK_DREADSTALKER_CHARGE = 194247,
SPELL_WARLOCK_HAND_OF_GULDAN_DAMAGE = 86040, SPELL_WARLOCK_HAND_OF_GULDAN_DAMAGE = 86040,
SPELL_WARLOCK_WILD_IMP_SUMMON = 279910, SPELL_WARLOCK_WILD_IMP_SUMMON = 279910,
@@ -1639,6 +1641,43 @@ class spell_warl_dreadstalker_spawn : public SpellScript
} }
}; };
// 205196/271971 - Dreadbite
class spell_warl_carnivorous_stalkers : public SpellScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({ SPELL_WARLOCK_CARNIVOROUS_STALKERS });
}
void HandleAfterCast() const
{
Spell const* spell = GetSpell();
Unit* dreadstalker = GetCaster();
Unit* victim = GetExplTargetUnit();
if (!spell || !dreadstalker || !victim)
return;
if (!spell->m_originalCastId.IsEmpty())
return;
Unit* owner = dreadstalker->IsSummon() ? dreadstalker->ToTempSummon()->GetSummonerUnit() : nullptr;
if (!owner)
return;
AuraEffect const* chance = owner->GetAuraEffect(SPELL_WARLOCK_CARNIVOROUS_STALKERS, EFFECT_0);
if (!chance || !roll_chance(chance->GetAmount()))
return;
dreadstalker->CastSpell(victim, spell->m_spellInfo->Id, CastSpellExtraArgs(TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR)
.SetOriginalCastId(spell->m_castId));
}
void Register() override
{
AfterCast += SpellCastFn(spell_warl_carnivorous_stalkers::HandleAfterCast);
}
};
// 105174 - Hand of Gul'Dan // 105174 - Hand of Gul'Dan
class spell_warl_hand_of_guldan : public SpellScript class spell_warl_hand_of_guldan : public SpellScript
{ {
@@ -2285,6 +2324,7 @@ void AddSC_warlock_spell_scripts()
//WowCommunity //WowCommunity
RegisterSpellScript(spell_warl_call_dreadstalkers); RegisterSpellScript(spell_warl_call_dreadstalkers);
RegisterSpellScript(spell_warl_dreadstalker_spawn); RegisterSpellScript(spell_warl_dreadstalker_spawn);
RegisterSpellScript(spell_warl_carnivorous_stalkers);
RegisterSpellScript(spell_warl_hand_of_guldan); RegisterSpellScript(spell_warl_hand_of_guldan);
RegisterSpellScript(spell_warl_hand_of_guldan_damage); RegisterSpellScript(spell_warl_hand_of_guldan_damage);
RegisterSpellScript(spell_warl_demonic_gateway); RegisterSpellScript(spell_warl_demonic_gateway);