бонус срабатывал только тогда, когда:
1) баф снимался правой кнопкой мыши(44401, 48108, 57761).
2) при повторном проке бафа который уже висел на игроке т.е 44401 или 57761.
С патчем работает правильно.
Код:
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index a854f80..f500fc7 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -8873,16 +8873,14 @@ void SpellAuraHolder::HandleSpellSpecificBoosts(bool apply)
case 48108: // Hot Streak (triggered)
case 57761: // Fireball! (Brain Freeze triggered)
{
- // consumed aura
- if (!apply && m_removeMode != AURA_REMOVE_BY_EXPIRE)
+ if (!apply)
{
Unit* caster = GetCaster();
- // Item - Mage T10 2P Bonus
- if (!caster || !caster->HasAura(70752))
- return;
-
- cast_at_remove = true;
- spellId1 = 70753; // Pushing the Limit
+ if (caster || caster->HasAura(70752)) // Item - Mage T10 2P Bonus
+ {
+ cast_at_remove = true;
+ spellId1 = 70753; // Pushing the Limit
+ }
}
else
return;
diff --git a/src/game/UnitAuraProcHandler.cpp b/src/game/UnitAuraProcHandler.cpp
index e2e38d9..a417eb4 100644
--- a/src/game/UnitAuraProcHandler.cpp
+++ b/src/game/UnitAuraProcHandler.cpp
@@ -2958,6 +2958,11 @@ SpellAuraProcResult Unit::HandleProcTriggerSpellAuraProc(Unit *pVictim, uint32 d
(((Creature*)pVictim)->GetCreatureInfo()->MechanicImmuneMask & (1 << (MECHANIC_STUN - 1))) == 0)
return SPELL_AURA_PROC_FAILED;
}
+ else if (auraSpellInfo->SpellIconID == 3261)
+ {
+ if (HasAura(44401) || HasAura(57761))
+ return SPELL_AURA_PROC_FAILED;
+ }
break;
case SPELLFAMILY_WARRIOR:
// Deep Wounds (replace triggered spells to directly apply DoT), dot spell have familyflags