From c6f5297e4c7850240c013ccf6f77f4b83378feba Mon Sep 17 00:00:00 2001 From: tartalo Date: Mon, 19 Oct 2009 01:24:52 +0200 Subject: Wintergrasp fix: Defender team should have 'Essence of Wintergrasp' buff. Patch by manuel, thanks to Spp --HG-- branch : trunk --- src/game/Wintergrasp.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/game/Wintergrasp.cpp') diff --git a/src/game/Wintergrasp.cpp b/src/game/Wintergrasp.cpp index 711d6bc5568..fe6e192438a 100644 --- a/src/game/Wintergrasp.cpp +++ b/src/game/Wintergrasp.cpp @@ -755,6 +755,11 @@ bool OPvPWintergrasp::UpdateGameObjectInfo(GameObject *go) const void OPvPWintergrasp::HandlePlayerEnterZone(Player * plr, uint32 zone) { + if(plr->GetTeam() == getDefenderTeam() && !isWarTime()) + { + plr->CastSpell(plr,SPELL_ESSENCE_OF_WG,true); + } + if (isWarTime() && !plr->HasAura(SPELL_RECRUIT) && !plr->HasAura(SPELL_CORPORAL) && !plr->HasAura(SPELL_LIEUTENANT)) plr->CastSpell(plr, SPELL_RECRUIT, true); @@ -789,6 +794,7 @@ void OPvPWintergrasp::HandlePlayerLeaveZone(Player * plr, uint32 zone) REMOVE_TENACITY_AURA(plr); OutdoorPvP::HandlePlayerLeaveZone(plr, zone); UpdateTenacityStack(); + plr->RemoveAura(SPELL_ESSENCE_OF_WG); } void OPvPWintergrasp::PromotePlayer(Player *killer) const @@ -1167,7 +1173,6 @@ void OPvPWintergrasp::EndBattle() (*itr)->AreaExploredOrEventHappens(A_VICTORY_IN_WG); (*itr)->AreaExploredOrEventHappens(H_VICTORY_IN_WG); } - } REMOVE_WARTIME_AURAS(*itr); REMOVE_TENACITY_AURA(*itr); @@ -1177,6 +1182,7 @@ void OPvPWintergrasp::EndBattle() //3.2.0: TeamCastSpell(getAttackerTeam(), SPELL_TELEPORT_DALARAN); RemoveOfflinePlayerWGAuras(); + TeamCastSpell(getDefenderTeam(),SPELL_ESSENCE_OF_WG); } void OPvPWintergrasp::SetData(uint32 id, uint32 value) -- cgit v1.2.3