From b47f791d8ff489dd255ed7653fb3a1f43f38921d Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sat, 11 Feb 2023 23:34:05 -0500 Subject: [PATCH] Scripts/Monk: Implement Power Strikes Port From (https://github.com/TrinityCore/TrinityCore/commit/b73330999f447a2c4893d50b3d24fd77b2500178) --- Source/Scripts/Spells/Monk.cs | 40 +++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/Source/Scripts/Spells/Monk.cs b/Source/Scripts/Spells/Monk.cs index 8282f64af..014c547e5 100644 --- a/Source/Scripts/Spells/Monk.cs +++ b/Source/Scripts/Spells/Monk.cs @@ -16,6 +16,8 @@ namespace Scripts.Spells.Monk public const uint CracklingJadeLightningChiProc = 123333; public const uint CracklingJadeLightningKnockback = 117962; public const uint CracklingJadeLightningKnockbackCd = 117953; + public const uint PowerStrikeProc = 129914; + public const uint PowerStrikeEnergize = 121283; public const uint ProvokeSingleTarget = 116189; public const uint ProvokeAoe = 118635; public const uint NoFeatherFall = 79636; @@ -88,6 +90,44 @@ namespace Scripts.Spells.Monk } } + [Script] // 121817 - Power Strike + class spell_monk_power_strike_periodic : AuraScript + { + public override bool Validate(SpellInfo spellInfo) + { + return ValidateSpellInfo(SpellIds.PowerStrikeProc); + } + + void HandlePeriodic(AuraEffect aurEff) + { + GetTarget().CastSpell(GetTarget(), SpellIds.PowerStrikeProc, true); + } + + public override void Register() + { + OnEffectPeriodic.Add(new EffectPeriodicHandler(HandlePeriodic, 0, AuraType.PeriodicDummy)); + } + } + + [Script] // 129914 - Power Strike Proc + class spell_monk_power_strike_proc : AuraScript + { + public override bool Validate(SpellInfo spellInfo) + { + return ValidateSpellInfo(SpellIds.PowerStrikeEnergize); + } + + void HandleProc(AuraEffect aurEff, ProcEventInfo eventInfo) + { + GetTarget().CastSpell(GetTarget(), SpellIds.PowerStrikeEnergize, true); + } + + public override void Register() + { + OnEffectProc.Add(new EffectProcHandler(HandleProc, 0, AuraType.Dummy)); + } + } + [Script] // 115546 - Provoke class spell_monk_provoke : SpellScript {