*Remove rank buff when players leave wintergrasp.
--HG-- branch : trunk
This commit is contained in:
@@ -49,6 +49,9 @@ void LoadTeamPair(TeamPairMap &pairMap, const TeamPair *pair)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define REMOVE_RANK_AURAS(p) (p)->RemoveAura(SPELL_RECRUIT);\
|
||||||
|
(p)->RemoveAura(SPELL_CORPORAL);(p)->RemoveAura(SPELL_LIEUTENANT)
|
||||||
|
|
||||||
typedef std::list<const AreaPOIEntry *> AreaPOIList;
|
typedef std::list<const AreaPOIEntry *> AreaPOIList;
|
||||||
|
|
||||||
bool OPvPWintergrasp::SetupOutdoorPvP()
|
bool OPvPWintergrasp::SetupOutdoorPvP()
|
||||||
@@ -342,8 +345,12 @@ void OPvPWintergrasp::HandlePlayerEnterZone(Player * plr, uint32 zone)
|
|||||||
|
|
||||||
void OPvPWintergrasp::HandlePlayerLeaveZone(Player * plr, uint32 zone)
|
void OPvPWintergrasp::HandlePlayerLeaveZone(Player * plr, uint32 zone)
|
||||||
{
|
{
|
||||||
if(!plr->GetSession()->PlayerLogout() && plr->m_Vehicle) // dismiss in change zone case
|
if(!plr->GetSession()->PlayerLogout())
|
||||||
plr->m_Vehicle->Dismiss();
|
{
|
||||||
|
if(plr->m_Vehicle) // dismiss in change zone case
|
||||||
|
plr->m_Vehicle->Dismiss();
|
||||||
|
REMOVE_RANK_AURAS(plr);
|
||||||
|
}
|
||||||
plr->RemoveAura(SPELL_TENACITY);
|
plr->RemoveAura(SPELL_TENACITY);
|
||||||
OutdoorPvP::HandlePlayerLeaveZone(plr, zone);
|
OutdoorPvP::HandlePlayerLeaveZone(plr, zone);
|
||||||
UpdateTenacityStack();
|
UpdateTenacityStack();
|
||||||
@@ -495,9 +502,7 @@ void OPvPWintergrasp::StartBattle()
|
|||||||
{
|
{
|
||||||
for(PlayerSet::iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
|
for(PlayerSet::iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
|
||||||
{
|
{
|
||||||
(*itr)->RemoveAura(SPELL_RECRUIT);
|
REMOVE_RANK_AURAS(*itr);
|
||||||
(*itr)->RemoveAura(SPELL_CORPORAL);
|
|
||||||
(*itr)->RemoveAura(SPELL_LIEUTENANT);
|
|
||||||
(*itr)->CastSpell(*itr, SPELL_RECRUIT, true);
|
(*itr)->CastSpell(*itr, SPELL_RECRUIT, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -514,9 +519,7 @@ void OPvPWintergrasp::EndBattle()
|
|||||||
|
|
||||||
for(PlayerSet::iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
|
for(PlayerSet::iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
|
||||||
{
|
{
|
||||||
(*itr)->RemoveAura(SPELL_RECRUIT);
|
REMOVE_RANK_AURAS(*itr);
|
||||||
(*itr)->RemoveAura(SPELL_CORPORAL);
|
|
||||||
(*itr)->RemoveAura(SPELL_LIEUTENANT);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user