Jump to content

[patch]Aura Mastery


Guest laise

Recommended Posts

What bug does the patch fix? What features does the patch add?

fixes Concentration Aura related part of Aura Mastery talent

For which repository revision was the patch created?

8964

Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread.

haven't seen any

Who has been writing this patch? Please include either forum user names or email addresses.

me

diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index f3906f4..bf76023 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -6091,6 +6091,28 @@ void Aura::HandleSpellSpecificBoosts(bool apply)
        }
        case SPELLFAMILY_PALADIN:
        {
+            if (m_spellProto->Id == 19746)                  // Aura Mastery (on Concentratio Aura remove and apply)
+            {
+                Unit *caster = GetCaster();
+                if (!caster)
+                    return;
+
+                if (apply && caster->HasAura(31821))
+                    caster->CastSpell(caster, 64364, true, NULL, this);
+                else if (!apply)
+                    caster->RemoveAurasDueToSpell(64364);
+            }
+            if (m_spellProto->Id == 31821)                  // Aura Mastery (on Aura Mastery original buff remove)
+            {
+                Unit *caster = GetCaster();
+                if (!caster)
+                    return;
+
+                if (apply && caster->HasAura(19746))
+                    caster->CastSpell(caster, 64364, true, NULL, this);
+                else if (!apply)
+                    caster->RemoveAurasDueToSpell(64364);
+            }
            if (m_spellProto->Id == 31884)                  // Avenging Wrath
            {
                if(!apply)

or if has problems

diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index f3906f4..bf76023 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -6091,6 +6091,28 @@ void Aura::HandleSpellSpecificBoosts(bool apply)
        }
        case SPELLFAMILY_PALADIN:
        {
+            if (m_spellProto->Id == 19746)                  // Aura Mastery (on Concentratio Aura remove and apply)
+            {
+                if (!apply)
+                    m_target->RemoveAurasDueToSpell(64364);
+
+                Unit *caster = GetCaster();
+                if (!caster)
+                    return;
+
+                if (apply && caster->HasAura(31821))
+                    caster->CastSpell(caster, 64364, true, NULL, this);
+            }
+            if (m_spellProto->Id == 31821)                  // Aura Mastery (on Aura Mastery original buff remove)
+            {
+                if (!apply)
+                    m_target->RemoveAurasDueToSpell(64364);
+
+                Unit *caster = GetCaster();
+                if (!caster)
+                    return;
+
+                if (apply && caster->HasAura(19746))
+                    caster->CastSpell(caster, 64364, true, NULL, this);
+            }
            if (m_spellProto->Id == 31884)                  // Avenging Wrath
            {
                if(!apply)

Link to comment
Share on other sites

  • 7 months later...

diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index e7447c9..9b1830c 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -8524,6 +8524,28 @@ void SpellAuraHolder::HandleSpellSpecificBoosts(bool apply)
        }
        case SPELLFAMILY_PALADIN:
        {
+            if (m_spellProto->Id == 19746)                  // Aura Mastery (on Concentration Aura remove and apply)
+            {
+                Unit *caster = GetCaster();
+                if (!caster)
+                    return;
+
+                if (apply && caster->HasAura(31821))
+                    caster->CastSpell(caster, 64364, true, NULL);
+                else if (!apply)
+                    caster->RemoveAurasDueToSpell(64364);
+            }
+            if (m_spellProto->Id == 31821)                  // Aura Mastery (on Aura Mastery original buff remove)
+            {
+                Unit *caster = GetCaster();
+                if (!caster)
+                    return;
+
+                if (apply && caster->HasAura(19746))
+                    caster->CastSpell(caster, 64364, true, NULL);
+                else if (!apply)
+                    caster->RemoveAurasDueToSpell(64364);
+            }
            if (m_spellProto->Id == 31884)                  // Avenging Wrath
            {
                if(!apply)

Bump! ^_^

Link to comment
Share on other sites

  • 3 weeks later...
  • 3 weeks later...

[10400+]

src/game/Spell.cpp 
View file @ 0612903...    ...    @@ -3072,6 +3072,13 @@ void Spell::cast(bool skipCheck)
3072    3072                     AddPrecastSpell(25771);                     // Forbearance
3073    3073                     AddPrecastSpell(61987);                     // Avenging Wrath Marker
3074    3074                 }
    3075    +            // Aura Mastery 
    3076    +            else if (m_spellInfo->Id == 31821) 
    3077    +            { 
    3078    +                // get Concentration Aura 
    3079    +                if (m_caster->GetAura(SPELL_AURA_REDUCE_PUSHBACK, SPELLFAMILY_PALADIN, UI64LIT(0x00020000), (0x00000020), m_caster->GetGUID())) 
    3080    +                    AddTriggeredSpell(64364);               // Aura Mastery - immunity part 
    3081    +            }
3075    3082                 // Lay on Hands
3076    3083                 else if (m_spellInfo->SpellFamilyFlags & UI64LIT(0x0000000000008000))
3077    3084                 {


src/game/SpellAuras.cpp 
View file @ 0612903...    ...    @@ -1046,6 +1046,10 @@ void Aura::HandleAddModifier(bool apply, bool Real)
1046    1046         if(m_modifier.m_miscvalue >= MAX_SPELLMOD)
1047    1047             return;
1048    1048     
    1049    +    // Aura Mastery - Remove immunity effect 
    1050    +    if (!apply && GetSpellProto()->Id == 31821) 
    1051    +        GetTarget()->RemoveAurasDueToSpell(64364); 
    1052    +
1049    1053         if (apply)
1050    1054         {
1051    1055             // Add custom charges for some mod aura

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use