Wintergrasp fix: Defender team should have 'Essence of Wintergrasp' buff. Patch by manuel, thanks to Spp
--HG-- branch : trunk
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -49,10 +49,12 @@ enum WintergraspSpell
|
||||
SPELL_DESTROYED_TOWER = 59136,
|
||||
SPELL_DAMAGED_BUILDING = 59201,
|
||||
SPELL_INTACT_BUILDING = 59203,
|
||||
|
||||
SPELL_ESSENCE_OF_WG = 58045,
|
||||
|
||||
// Unused: Not implemented
|
||||
// SPELL_VICTORY_AURA = 60044,
|
||||
// SPELL_RULERS_OF_WG = 52108,
|
||||
// SPELL_ESSENCE_OF_WG = 58045,
|
||||
};
|
||||
|
||||
enum WintergraspRewardEvent
|
||||
|
||||
Reference in New Issue
Block a user