From e28ea507666ade68772e76acd5ca7fc1af7bad5c Mon Sep 17 00:00:00 2001 From: Jelle Meeus Date: Sun, 20 Jul 2025 16:11:59 +0200 Subject: [PATCH] fix(Scripts/Spells): killing with Victory Rush grants Victory Rush (#22514) --- src/server/game/Entities/Unit/Unit.cpp | 10 ---------- src/server/scripts/Spells/spell_warrior.cpp | 16 ++++------------ 2 files changed, 4 insertions(+), 22 deletions(-) diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 7fafbc748..f6c3e92b3 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -7205,16 +7205,6 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere } case SPELLFAMILY_WARRIOR: { - switch (dummySpell->Id) - { - // Victorious - case 32216: - { - RemoveAura(dummySpell->Id); - return false; - } - } - // Second Wind if (dummySpell->SpellIconID == 1697) { diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp index 3298acc92..faf4af9be 100644 --- a/src/server/scripts/Spells/spell_warrior.cpp +++ b/src/server/scripts/Spells/spell_warrior.cpp @@ -102,23 +102,15 @@ class spell_warr_victory_rush : public SpellScript { PrepareSpellScript(spell_warr_victory_rush); - void VictoryRushHit() + void HandleCast() { - if (Unit* player = GetCaster()) - { - if (Unit* victim = GetHitUnit()) - { - if (victim->isDead()) - { - player->CastSpell(player, SPELL_VICTORIOUS, true); - } - } - } + if (Unit* caster = GetCaster()) + caster->RemoveAurasDueToSpell(SPELL_VICTORIOUS); } void Register() override { - AfterHit += SpellHitFn(spell_warr_victory_rush::VictoryRushHit); + OnCast += SpellCastFn(spell_warr_victory_rush::HandleCast); } };