aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2022_02_13_02_world_priest_twist_of_fate.sql9
-rw-r--r--src/server/scripts/Spells/spell_priest.cpp18
2 files changed, 27 insertions, 0 deletions
diff --git a/sql/updates/world/master/2022_02_13_02_world_priest_twist_of_fate.sql b/sql/updates/world/master/2022_02_13_02_world_priest_twist_of_fate.sql
new file mode 100644
index 00000000000..bd5076eecd0
--- /dev/null
+++ b/sql/updates/world/master/2022_02_13_02_world_priest_twist_of_fate.sql
@@ -0,0 +1,9 @@
+DELETE FROM `spell_proc` WHERE `SpellId` IN (109142,265259);
+INSERT INTO `spell_proc` (`SpellId`,`SchoolMask`,`SpellFamilyName`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`SpellFamilyMask3`,`ProcFlags`,`ProcFlags2`,`SpellTypeMask`,`SpellPhaseMask`,`HitMask`,`AttributesMask`,`DisableEffectsMask`,`ProcsPerMinute`,`Chance`,`Cooldown`,`Charges`) VALUES
+(109142,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x0,0x0,0x0,0,0,0,0), -- Twist of Fate (Shadow)
+(265259,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x0,0x0,0x0,0,0,0,0); -- Twist of Fate (Discipline)
+
+DELETE FROM `spell_script_names` WHERE `ScriptName` = 'spell_pri_twist_of_fate';
+INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
+(109142, 'spell_pri_twist_of_fate'),
+(265259, 'spell_pri_twist_of_fate');
diff --git a/src/server/scripts/Spells/spell_priest.cpp b/src/server/scripts/Spells/spell_priest.cpp
index 0677fc396ea..9d699ce5795 100644
--- a/src/server/scripts/Spells/spell_priest.cpp
+++ b/src/server/scripts/Spells/spell_priest.cpp
@@ -1231,6 +1231,23 @@ class spell_pri_t10_heal_2p_bonus : public SpellScriptLoader
}
};
+// 109142 - Twist of Fate (Shadow)
+// 265259 - Twist of Fate (Discipline)
+class spell_pri_twist_of_fate : public AuraScript
+{
+ PrepareAuraScript(spell_pri_twist_of_fate);
+
+ bool CheckProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo)
+ {
+ return eventInfo.GetProcTarget()->GetHealthPct() < aurEff->GetAmount();
+ }
+
+ void Register() override
+ {
+ DoCheckEffectProc += AuraCheckEffectProcFn(spell_pri_twist_of_fate::CheckProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
+ }
+};
+
// 15286 - Vampiric Embrace
class spell_pri_vampiric_embrace : public SpellScriptLoader
{
@@ -1481,6 +1498,7 @@ void AddSC_priest_spell_scripts()
new spell_pri_t3_4p_bonus();
new spell_pri_t5_heal_2p_bonus();
new spell_pri_t10_heal_2p_bonus();
+ RegisterSpellScript(spell_pri_twist_of_fate);
new spell_pri_vampiric_embrace();
new spell_pri_vampiric_embrace_target();
new spell_pri_vampiric_touch();