diff --git a/src/game/Player.cpp b/src/game/Player.cpp index 7124023e0..d222d9d43 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -18678,16 +18678,28 @@ void Player::UpdateAreaDependentAuras( uint32 newArea ) ++iter; } - // Dragonmaw Illusion - if( newArea == 3759 || newArea == 3966 || newArea == 3939 ) + // some auras applied at subzone enter + switch(newArea) { - if( GetDummyAura(40214) ) - { - if( !HasAura(40216,0) ) - CastSpell(this,40216,true); - if( !HasAura(42016,0) ) - CastSpell(this,42016,true); - } + // Dragonmaw Illusion + case 3759: // Netherwing Ledge + case 3939: // Dragonmaw Fortress + case 3966: // Dragonmaw Base Camp + if( GetDummyAura(40214) ) + { + if( !HasAura(40216,0) ) + CastSpell(this,40216,true); + if( !HasAura(42016,0) ) + CastSpell(this,42016,true); + } + break; + // Dominion Over Acherus + case 4281: // Acherus: The Ebon Hold + case 4342: // Acherus: The Ebon Hold + if( HasSpell(51721) ) + if( !HasAura(51721,0) ) + CastSpell(this,51721,true); + break; } } diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index 442c2d376..39eb917dc 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -2333,6 +2333,9 @@ uint8 GetSpellAllowedInLocationError(SpellEntry const *spellInfo,uint32 map_id,u case 40216: // Dragonmaw Illusion case 42016: // Dragonmaw Illusion return area_id == 3759 || area_id == 3966 || area_id == 3939 ? 0 : SPELL_FAILED_INCORRECT_AREA; + case 51721: // Dominion Over Acherus + case 54055: // Dominion Over Acherus + return area_id == 4281 || area_id == 4342 ? 0 : SPELL_FAILED_INCORRECT_AREA; } return 0; diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 262124edd..3e3459cfe 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 "7005" + #define REVISION_NR "7006" #endif // __REVISION_NR_H__