mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-08 15:58:04 +00:00
fix(Core/Spells): Combustion non-crit hits now add crit stacks (#24752)
Co-authored-by: blinkysc <blinkysc@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,4 @@
|
|||||||
|
-- Enable charge tracking for Combustion (11129)
|
||||||
|
-- Charges were 0 (disabled), should be 3 to match DBC ProcCharges
|
||||||
|
-- Combustion should be removed after 3 critical strikes with Fire spells
|
||||||
|
UPDATE `spell_proc` SET `Charges` = 3 WHERE `SpellId` = 11129;
|
||||||
@@ -37,6 +37,7 @@ enum MageSpells
|
|||||||
SPELL_MAGE_BURNOUT_TRIGGER = 44450,
|
SPELL_MAGE_BURNOUT_TRIGGER = 44450,
|
||||||
SPELL_MAGE_IMPROVED_BLIZZARD_CHILLED = 12486,
|
SPELL_MAGE_IMPROVED_BLIZZARD_CHILLED = 12486,
|
||||||
SPELL_MAGE_COMBUSTION = 11129,
|
SPELL_MAGE_COMBUSTION = 11129,
|
||||||
|
SPELL_MAGE_COMBUSTION_PROC = 28682,
|
||||||
SPELL_MAGE_COLD_SNAP = 11958,
|
SPELL_MAGE_COLD_SNAP = 11958,
|
||||||
SPELL_MAGE_FOCUS_MAGIC_PROC = 54648,
|
SPELL_MAGE_FOCUS_MAGIC_PROC = 54648,
|
||||||
SPELL_MAGE_FROST_WARDING_R1 = 11189,
|
SPELL_MAGE_FROST_WARDING_R1 = 11189,
|
||||||
@@ -997,10 +998,21 @@ class spell_mage_combustion : public AuraScript
|
|||||||
{
|
{
|
||||||
PrepareAuraScript(spell_mage_combustion);
|
PrepareAuraScript(spell_mage_combustion);
|
||||||
|
|
||||||
|
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||||
|
{
|
||||||
|
return ValidateSpellInfo({ SPELL_MAGE_COMBUSTION_PROC });
|
||||||
|
}
|
||||||
|
|
||||||
bool CheckProc(ProcEventInfo& eventInfo)
|
bool CheckProc(ProcEventInfo& eventInfo)
|
||||||
{
|
{
|
||||||
// Prevent charge consumption on non-crits
|
// Do not take charges, add a stack of crit buff
|
||||||
return eventInfo.GetHitMask() & PROC_EX_CRITICAL_HIT;
|
if (!(eventInfo.GetHitMask() & PROC_HIT_CRITICAL))
|
||||||
|
{
|
||||||
|
eventInfo.GetActor()->CastSpell(static_cast<Unit*>(nullptr), SPELL_MAGE_COMBUSTION_PROC, true);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Register() override
|
void Register() override
|
||||||
|
|||||||
Reference in New Issue
Block a user