From d615cb4e6736a50a11c53c19294b7ce8cc9b0c2a Mon Sep 17 00:00:00 2001 From: hondacrx Date: Mon, 9 May 2022 12:38:17 -0400 Subject: [PATCH] Scripts/Spells: Fixed Cold Snap Port From (https://github.com/TrinityCore/TrinityCore/commit/a6dd3a1946be27acab80b78b71eecae7dbad82e6) --- Source/Scripts/Spells/Mage.cs | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/Source/Scripts/Spells/Mage.cs b/Source/Scripts/Spells/Mage.cs index 9b158397b..80e2d4f95 100644 --- a/Source/Scripts/Spells/Mage.cs +++ b/Source/Scripts/Spells/Mage.cs @@ -406,27 +406,24 @@ namespace Scripts.Spells.Mage [Script] // 235219 - Cold Snap class spell_mage_cold_snap : SpellScript { + static uint[] SpellsToReset = + { + SpellIds.ConeOfCold, + SpellIds.IceBarrier, + SpellIds.IceBlock + }; + public override bool Validate(SpellInfo spellInfo) { - return ValidateSpellInfo(SpellIds.ConeOfCold, SpellIds.FrostNova, SpellIds.IceBarrier, SpellIds.IceBlock); + return ValidateSpellInfo(SpellsToReset) && ValidateSpellInfo(SpellIds.FrostNova); } void HandleDummy(uint effIndex) { - GetCaster().GetSpellHistory().ResetCooldowns(p => - { - switch (p.Key) - { - case SpellIds.ConeOfCold: - case SpellIds.FrostNova: - case SpellIds.IceBarrier: - case SpellIds.IceBlock: - return true; - default: - break; - } - return false; - }, true); + foreach (uint spellId in SpellsToReset) + GetCaster().GetSpellHistory().ResetCooldown(spellId, true); + + GetCaster().GetSpellHistory().RestoreCharge(Global.SpellMgr.GetSpellInfo(SpellIds.FrostNova, GetCastDifficulty()).ChargeCategoryId); } public override void Register()