bool OPvPWintergrasp::Update(uint32 diff) { if(m_timer > diff) { m_timer -= diff; if(m_wartime) OutdoorPvP::Update(diff); // update capture points } else { if(m_wartime) { if(m_defender == TEAM_ALLIANCE) sWorld.SendZoneText(ZONE_WINTERGRASP, "Alliance has successfully defended the fortress!"); else sWorld.SendZoneText(ZONE_WINTERGRASP, "Horde has successfully defended the fortress!"); GiveReward(); EndBattle(); } else { sWorld.SendZoneText(ZONE_WINTERGRASP, "Battle begins!"); UpdateAllWorldObject(); StartBattle(); } } return false; }
void OPvPWintergrasp::ChangeDefender() { m_defender = OTHER_TEAM(m_defender); if(m_defender == TEAM_ALLIANCE) sWorld.SendZoneText(ZONE_WINTERGRASP, "Alliance has taken over the fortress!"); else sWorld.SendZoneText(ZONE_WINTERGRASP, "Horde has taken over the fortress!"); UpdateAllWorldObject(); GiveReward(); EndBattle(); }
bool OPvPWintergrasp::Update(uint32 diff) { if (m_timer > diff) { m_timer -= diff; if (m_wartime) OutdoorPvP::Update(diff); // update capture points UpdateClock(); } else { m_sendUpdate = false; if (m_wartime) { if (m_changeDefender) { m_changeDefender = false; m_defender = OTHER_TEAM(m_defender); if (m_defender == TEAM_ALLIANCE) sWorld.SendZoneText(ZONE_WINTERGRASP, "Alliance has taken over the fortress!"); else sWorld.SendZoneText(ZONE_WINTERGRASP, "Horde has taken over the fortress!"); } else { if (m_defender == TEAM_ALLIANCE) sWorld.SendZoneText(ZONE_WINTERGRASP, "Alliance has successfully defended the fortress!"); else sWorld.SendZoneText(ZONE_WINTERGRASP, "Horde has successfully defended the fortress!"); } EndBattle(); } else { sWorld.SendZoneText(ZONE_WINTERGRASP, "Battle begins!"); StartBattle(); } UpdateAllWorldObject(); UpdateClock(); SendInitWorldStatesTo(); m_sendUpdate = true; } return false; }