diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index c1b4ef8e8..658381ef2 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -4726,32 +4726,11 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu break; } /* - // TODO: need find item for aura and triggered spells // Sunwell Exalted Caster Neck (??? neck) // cast ??? Light's Wrath if Exalted by Aldor // cast ??? Arcane Bolt if Exalted by Scryers*/ case 46569: - return false; // disable for while - /* - { - if(GetTypeId() != TYPEID_PLAYER) - return false; - - // Get Aldor reputation rank - if (((Player *)this)->GetReputationRank(932) == REP_EXALTED) - { - target = this; - triggered_spell_id = ??? - break; - } - // Get Scryers reputation rank - if (((Player *)this)->GetReputationRank(934) == REP_EXALTED) - { - triggered_spell_id = ??? - break; - } - return false; - }*/ + return false; // old unused version // Sunwell Exalted Caster Neck (Shattered Sun Pendant of Acumen neck) // cast 45479 Light's Wrath if Exalted by Aldor // cast 45429 Arcane Bolt if Exalted by Scryers @@ -4770,6 +4749,21 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu // Get Scryers reputation rank if (((Player *)this)->GetReputationRank(934) == REP_EXALTED) { + // triggered at positive/self casts also, current attack target used then + if(IsFriendlyTo(target)) + { + target = getVictim(); + if(!target) + { + uint64 selected_guid = ((Player *)this)->GetSelection(); + target = ObjectAccessor::GetUnit(*this,selected_guid); + if(!target) + return false; + } + if(IsFriendlyTo(target)) + return false; + } + triggered_spell_id = 45429; break; } diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 6503b6e89..011fa4bba 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8335" + #define REVISION_NR "8336" #endif // __REVISION_NR_H__