Core/Spells: Fix Unstable Affliction
Closes #94 Closes #1244 Closes #1528
This commit is contained in:
@@ -3714,11 +3714,14 @@ void Unit::RemoveAurasDueToSpellByDispel(uint32 spellId, uint64 casterGUID, Unit
|
||||
// Unstable Affliction (crash if before removeaura?)
|
||||
if (aura->GetSpellProto()->SpellFamilyFlags[1] & 0x0100)
|
||||
{
|
||||
Unit* caster = aura->GetCaster();
|
||||
if (!caster)
|
||||
break;
|
||||
if (AuraEffect const* aurEff = aura->GetEffect(EFFECT_0))
|
||||
{
|
||||
int32 damage = aurEff->GetAmount() * 9;
|
||||
// backfire damage and silence
|
||||
dispeller->CastCustomSpell(dispeller, 31117, &damage, NULL, NULL, true, NULL, NULL, aura->GetCasterGUID());
|
||||
caster->CastCustomSpell(dispeller, 31117, &damage, NULL, NULL, true, NULL, aurEff);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -3942,6 +3942,11 @@ void SpellMgr::LoadSpellCustomAttr()
|
||||
spellInfo->AttributesEx3 |= SPELL_ATTR3_CAN_PROC_WITH_TRIGGERED;
|
||||
++count;
|
||||
break;
|
||||
case 31117: // Unstable Affliction
|
||||
// this attribute currently makes spell to ignore resilience and absorbs
|
||||
spellInfo->AttributesEx4 &= ~SPELL_ATTR4_FIXED_DAMAGE;
|
||||
++count;
|
||||
break;
|
||||
case 16007: // Draco-Incarcinatrix 900
|
||||
// was 46, but effect is aura effect
|
||||
spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_NEARBY_ENTRY;
|
||||
|
||||
Reference in New Issue
Block a user