From 5c3b4102387d41e460066a97b85ad08b4ec5e506 Mon Sep 17 00:00:00 2001 From: Dramacydal Date: Tue, 4 Nov 2014 23:13:29 +0100 Subject: [PATCH] [12760] Extend pvp team indexes to global use Close #139 Signed-off-by: Xfurry --- src/game/BattleGround/BattleGround.cpp | 46 +++--- src/game/BattleGround/BattleGround.h | 32 ++-- src/game/BattleGround/BattleGroundAB.cpp | 46 +++--- src/game/BattleGround/BattleGroundAB.h | 8 +- src/game/BattleGround/BattleGroundAV.cpp | 62 ++++---- src/game/BattleGround/BattleGroundAV.h | 16 +- src/game/BattleGround/BattleGroundEY.cpp | 18 +-- src/game/BattleGround/BattleGroundEY.h | 2 +- src/game/BattleGround/BattleGroundMgr.cpp | 176 +++++++++++----------- src/game/BattleGround/BattleGroundMgr.h | 8 +- src/game/BattleGround/BattleGroundWS.cpp | 94 ++++++------ src/game/BattleGround/BattleGroundWS.h | 8 +- src/game/SharedDefines.h | 9 ++ src/shared/revision_nr.h | 2 +- 14 files changed, 264 insertions(+), 263 deletions(-) diff --git a/src/game/BattleGround/BattleGround.cpp b/src/game/BattleGround/BattleGround.cpp index ac66d40a211..5e7fa343d3d 100644 --- a/src/game/BattleGround/BattleGround.cpp +++ b/src/game/BattleGround/BattleGround.cpp @@ -196,32 +196,32 @@ BattleGround::BattleGround() m_MapId = 0; m_Map = NULL; - m_TeamStartLocX[BG_TEAM_ALLIANCE] = 0; - m_TeamStartLocX[BG_TEAM_HORDE] = 0; + m_TeamStartLocX[TEAM_INDEX_ALLIANCE] = 0; + m_TeamStartLocX[TEAM_INDEX_HORDE] = 0; - m_TeamStartLocY[BG_TEAM_ALLIANCE] = 0; - m_TeamStartLocY[BG_TEAM_HORDE] = 0; + m_TeamStartLocY[TEAM_INDEX_ALLIANCE] = 0; + m_TeamStartLocY[TEAM_INDEX_HORDE] = 0; - m_TeamStartLocZ[BG_TEAM_ALLIANCE] = 0; - m_TeamStartLocZ[BG_TEAM_HORDE] = 0; + m_TeamStartLocZ[TEAM_INDEX_ALLIANCE] = 0; + m_TeamStartLocZ[TEAM_INDEX_HORDE] = 0; - m_TeamStartLocO[BG_TEAM_ALLIANCE] = 0; - m_TeamStartLocO[BG_TEAM_HORDE] = 0; + m_TeamStartLocO[TEAM_INDEX_ALLIANCE] = 0; + m_TeamStartLocO[TEAM_INDEX_HORDE] = 0; - m_ArenaTeamIds[BG_TEAM_ALLIANCE] = 0; - m_ArenaTeamIds[BG_TEAM_HORDE] = 0; + m_ArenaTeamIds[TEAM_INDEX_ALLIANCE] = 0; + m_ArenaTeamIds[TEAM_INDEX_HORDE] = 0; - m_ArenaTeamRatingChanges[BG_TEAM_ALLIANCE] = 0; - m_ArenaTeamRatingChanges[BG_TEAM_HORDE] = 0; + m_ArenaTeamRatingChanges[TEAM_INDEX_ALLIANCE] = 0; + m_ArenaTeamRatingChanges[TEAM_INDEX_HORDE] = 0; - m_BgRaids[BG_TEAM_ALLIANCE] = NULL; - m_BgRaids[BG_TEAM_HORDE] = NULL; + m_BgRaids[TEAM_INDEX_ALLIANCE] = NULL; + m_BgRaids[TEAM_INDEX_HORDE] = NULL; - m_PlayersCount[BG_TEAM_ALLIANCE] = 0; - m_PlayersCount[BG_TEAM_HORDE] = 0; + m_PlayersCount[TEAM_INDEX_ALLIANCE] = 0; + m_PlayersCount[TEAM_INDEX_HORDE] = 0; - m_TeamScores[BG_TEAM_ALLIANCE] = 0; - m_TeamScores[BG_TEAM_HORDE] = 0; + m_TeamScores[TEAM_INDEX_ALLIANCE] = 0; + m_TeamScores[TEAM_INDEX_HORDE] = 0; m_PrematureCountDown = false; m_PrematureCountDownTimer = 0; @@ -450,7 +450,7 @@ void BattleGround::Update(uint32 diff) void BattleGround::SetTeamStartLoc(Team team, float X, float Y, float Z, float O) { - BattleGroundTeamIndex teamIdx = GetTeamIndexByTeamId(team); + PvpTeamIndex teamIdx = GetTeamIndexByTeamId(team); m_TeamStartLocX[teamIdx] = X; m_TeamStartLocY[teamIdx] = Y; m_TeamStartLocZ[teamIdx] = Z; @@ -629,20 +629,20 @@ void BattleGround::EndBattleGround(Team winner) WorldPacket data; int32 winmsg_id = 0; - uint32 winner_team = 0; + uint32 winner_team = TEAM_INDEX_NEUTRAL; uint64 battleground_id = 1; if (winner == ALLIANCE) { winmsg_id = isBattleGround() ? LANG_BG_A_WINS : LANG_ARENA_GOLD_WINS; - winner_team = BG_TEAM_ALLIANCE; + winner_team = TEAM_INDEX_ALLIANCE; PlaySoundToAll(SOUND_ALLIANCE_WINS); // alliance wins sound } else if (winner == HORDE) { winmsg_id = isBattleGround() ? LANG_BG_H_WINS : LANG_ARENA_GREEN_WINS; - winner_team = BG_TEAM_HORDE; + winner_team = TEAM_INDEX_HORDE; PlaySoundToAll(SOUND_HORDE_WINS); // horde wins sound } @@ -1729,7 +1729,7 @@ WorldSafeLocsEntry const* BattleGround::GetClosestGraveYard(Player* player) bool BattleGround::IsTeamScoreInRange(Team team, uint32 minScore, uint32 maxScore) const { - BattleGroundTeamIndex team_idx = GetTeamIndexByTeamId(team); + PvpTeamIndex team_idx = GetTeamIndexByTeamId(team); uint32 score = (m_TeamScores[team_idx] < 0) ? 0 : uint32(m_TeamScores[team_idx]); return score >= minScore && score <= maxScore; } diff --git a/src/game/BattleGround/BattleGround.h b/src/game/BattleGround/BattleGround.h index 5543a4466aa..a4a898a12c1 100644 --- a/src/game/BattleGround/BattleGround.h +++ b/src/game/BattleGround/BattleGround.h @@ -200,14 +200,6 @@ enum BattleGroundType TYPE_ARENA = 4 }; -enum BattleGroundTeamIndex -{ - BG_TEAM_ALLIANCE = 0, - BG_TEAM_HORDE = 1 -}; - -#define BG_TEAMS_COUNT 2 - enum BattleGroundStartingEvents { BG_STARTING_EVENT_NONE = 0x00, @@ -398,7 +390,7 @@ class BattleGround void SetTeamStartLoc(Team team, float X, float Y, float Z, float O); void GetTeamStartLoc(Team team, float& X, float& Y, float& Z, float& O) const { - BattleGroundTeamIndex idx = GetTeamIndexByTeamId(team); + PvpTeamIndex idx = GetTeamIndexByTeamId(team); X = m_TeamStartLocX[idx]; Y = m_TeamStartLocY[idx]; Z = m_TeamStartLocZ[idx]; @@ -443,7 +435,7 @@ class BattleGround virtual void UpdatePlayerScore(Player* Source, uint32 type, uint32 value); - static BattleGroundTeamIndex GetTeamIndexByTeamId(Team team) { return team == ALLIANCE ? BG_TEAM_ALLIANCE : BG_TEAM_HORDE; } + static PvpTeamIndex GetTeamIndexByTeamId(Team team) { return team == ALLIANCE ? TEAM_INDEX_ALLIANCE : TEAM_INDEX_HORDE; } uint32 GetPlayersCountByTeam(Team team) const { return m_PlayersCount[GetTeamIndexByTeamId(team)]; } uint32 GetAlivePlayersCountByTeam(Team team) const; // used in arenas to correctly handle death in spirit of redemption / last stand etc. (killer = killed) cases void UpdatePlayersCountByTeam(Team team, bool remove) @@ -522,11 +514,11 @@ class BattleGround // since arenas can be AvA or Hvh, we have to get the "temporary" team of a player Team GetPlayerTeam(ObjectGuid guid); static Team GetOtherTeam(Team team) { return team ? ((team == ALLIANCE) ? HORDE : ALLIANCE) : TEAM_NONE; } - static BattleGroundTeamIndex GetOtherTeamIndex(BattleGroundTeamIndex teamIdx) { return teamIdx == BG_TEAM_ALLIANCE ? BG_TEAM_HORDE : BG_TEAM_ALLIANCE; } + static PvpTeamIndex GetOtherTeamIndex(PvpTeamIndex teamIdx) { return teamIdx == TEAM_INDEX_ALLIANCE ? TEAM_INDEX_HORDE : TEAM_INDEX_ALLIANCE; } bool IsPlayerInBattleGround(ObjectGuid guid); /* virtual score-array - get's used in bg-subclasses */ - int32 m_TeamScores[BG_TEAMS_COUNT]; + int32 m_TeamScores[PVP_TEAM_COUNT]; struct EventObjects { @@ -597,15 +589,15 @@ class BattleGround uint32 m_InvitedHorde; /* Raid Group */ - Group* m_BgRaids[BG_TEAMS_COUNT]; // 0 - alliance, 1 - horde + Group* m_BgRaids[PVP_TEAM_COUNT]; // 0 - alliance, 1 - horde /* Players count by team */ - uint32 m_PlayersCount[BG_TEAMS_COUNT]; + uint32 m_PlayersCount[PVP_TEAM_COUNT]; /* Arena team ids by team */ - uint32 m_ArenaTeamIds[BG_TEAMS_COUNT]; + uint32 m_ArenaTeamIds[PVP_TEAM_COUNT]; - int32 m_ArenaTeamRatingChanges[BG_TEAMS_COUNT]; + int32 m_ArenaTeamRatingChanges[PVP_TEAM_COUNT]; /* Limits */ uint32 m_LevelMin; @@ -618,10 +610,10 @@ class BattleGround /* Start location */ uint32 m_MapId; BattleGroundMap* m_Map; - float m_TeamStartLocX[BG_TEAMS_COUNT]; - float m_TeamStartLocY[BG_TEAMS_COUNT]; - float m_TeamStartLocZ[BG_TEAMS_COUNT]; - float m_TeamStartLocO[BG_TEAMS_COUNT]; + float m_TeamStartLocX[PVP_TEAM_COUNT]; + float m_TeamStartLocY[PVP_TEAM_COUNT]; + float m_TeamStartLocZ[PVP_TEAM_COUNT]; + float m_TeamStartLocO[PVP_TEAM_COUNT]; }; // helper functions for world state list fill diff --git a/src/game/BattleGround/BattleGroundAB.cpp b/src/game/BattleGround/BattleGroundAB.cpp index 63156d34f6e..8031022d7a9 100644 --- a/src/game/BattleGround/BattleGroundAB.cpp +++ b/src/game/BattleGround/BattleGroundAB.cpp @@ -47,7 +47,7 @@ void BattleGroundAB::Update(uint32 diff) if (GetStatus() == STATUS_IN_PROGRESS) { - int team_points[BG_TEAMS_COUNT] = { 0, 0 }; + int team_points[PVP_TEAM_COUNT] = { 0, 0 }; for (uint8 node = 0; node < BG_AB_NODES_MAX; ++node) { @@ -94,13 +94,13 @@ void BattleGroundAB::Update(uint32 diff) } } - for (uint8 team = 0; team < BG_TEAMS_COUNT; ++team) + for (uint8 team = 0; team < PVP_TEAM_COUNT; ++team) if (m_Nodes[node] == team + BG_AB_NODE_TYPE_OCCUPIED) ++team_points[team]; } // Accumulate points - for (uint8 team = 0; team < BG_TEAMS_COUNT; ++team) + for (uint8 team = 0; team < PVP_TEAM_COUNT; ++team) { int points = team_points[team]; if (!points) @@ -114,17 +114,17 @@ void BattleGroundAB::Update(uint32 diff) m_ReputationScoreTics[team] += BG_AB_TickPoints[points]; if (m_ReputationScoreTics[team] >= m_ReputationTics) { - (team == BG_TEAM_ALLIANCE) ? RewardReputationToTeam(509, 10, ALLIANCE) : RewardReputationToTeam(510, 10, HORDE); + (team == TEAM_INDEX_ALLIANCE) ? RewardReputationToTeam(509, 10, ALLIANCE) : RewardReputationToTeam(510, 10, HORDE); m_ReputationScoreTics[team] -= m_ReputationTics; } if (m_honorScoreTicks[team] >= m_honorTicks) { - RewardHonorToTeam(GetBonusHonorFromKill(1), (team == BG_TEAM_ALLIANCE) ? ALLIANCE : HORDE); + RewardHonorToTeam(GetBonusHonorFromKill(1), (team == TEAM_INDEX_ALLIANCE) ? ALLIANCE : HORDE); m_honorScoreTicks[team] -= m_honorTicks; } if (!m_IsInformedNearVictory && m_TeamScores[team] > BG_AB_WARNING_NEAR_VICTORY_SCORE) { - if (team == BG_TEAM_ALLIANCE) + if (team == TEAM_INDEX_ALLIANCE) SendMessageToAll(LANG_BG_AB_A_NEAR_VICTORY, CHAT_MSG_BG_SYSTEM_NEUTRAL); else SendMessageToAll(LANG_BG_AB_H_NEAR_VICTORY, CHAT_MSG_BG_SYSTEM_NEUTRAL); @@ -134,24 +134,24 @@ void BattleGroundAB::Update(uint32 diff) if (m_TeamScores[team] > BG_AB_MAX_TEAM_SCORE) m_TeamScores[team] = BG_AB_MAX_TEAM_SCORE; - if (team == BG_TEAM_ALLIANCE) + if (team == TEAM_INDEX_ALLIANCE) UpdateWorldState(BG_AB_OP_RESOURCES_ALLY, m_TeamScores[team]); - if (team == BG_TEAM_HORDE) + if (team == TEAM_INDEX_HORDE) UpdateWorldState(BG_AB_OP_RESOURCES_HORDE, m_TeamScores[team]); // update achievement flags // we increased m_TeamScores[team] so we just need to check if it is 500 more than other teams resources // horde will be a bit disadvantaged, but we can assume that points aren't updated for both team in same Update() call - uint8 otherTeam = (team + 1) % BG_TEAMS_COUNT; + uint8 otherTeam = (team + 1) % PVP_TEAM_COUNT; if (m_TeamScores[team] > m_TeamScores[otherTeam] + 500) m_TeamScores500Disadvantage[otherTeam] = true; } } // Test win condition - if (m_TeamScores[BG_TEAM_ALLIANCE] >= BG_AB_MAX_TEAM_SCORE) + if (m_TeamScores[TEAM_INDEX_ALLIANCE] >= BG_AB_MAX_TEAM_SCORE) EndBattleGround(ALLIANCE); - if (m_TeamScores[BG_TEAM_HORDE] >= BG_AB_MAX_TEAM_SCORE) + if (m_TeamScores[TEAM_INDEX_HORDE] >= BG_AB_MAX_TEAM_SCORE) EndBattleGround(HORDE); } } @@ -271,8 +271,8 @@ void BattleGroundAB::FillInitialWorldStates(WorldPacket& data, uint32& count) // Team scores FillInitialWorldState(data, count, BG_AB_OP_RESOURCES_MAX, BG_AB_MAX_TEAM_SCORE); FillInitialWorldState(data, count, BG_AB_OP_RESOURCES_WARNING, BG_AB_WARNING_NEAR_VICTORY_SCORE); - FillInitialWorldState(data, count, BG_AB_OP_RESOURCES_ALLY, m_TeamScores[BG_TEAM_ALLIANCE]); - FillInitialWorldState(data, count, BG_AB_OP_RESOURCES_HORDE, m_TeamScores[BG_TEAM_HORDE]); + FillInitialWorldState(data, count, BG_AB_OP_RESOURCES_ALLY, m_TeamScores[TEAM_INDEX_ALLIANCE]); + FillInitialWorldState(data, count, BG_AB_OP_RESOURCES_HORDE, m_TeamScores[TEAM_INDEX_HORDE]); // other unknown FillInitialWorldState(data, count, 0x745, 0x2); // 37 1861 unk @@ -327,7 +327,7 @@ void BattleGroundAB::EventPlayerClickedOnFlag(Player* source, GameObject* target return; BG_AB_Nodes node = BG_AB_Nodes(event); - BattleGroundTeamIndex teamIndex = GetTeamIndexByTeamId(source->GetTeam()); + PvpTeamIndex teamIndex = GetTeamIndexByTeamId(source->GetTeam()); // Check if player really could use this banner, not cheated if (!(m_Nodes[node] == 0 || teamIndex == m_Nodes[node] % 2)) @@ -370,7 +370,7 @@ void BattleGroundAB::EventPlayerClickedOnFlag(Player* source, GameObject* target _SendNodeUpdate(node); m_NodeTimers[node] = BG_AB_FLAG_CAPTURING_TIME; - if (teamIndex == BG_TEAM_ALLIANCE) + if (teamIndex == TEAM_INDEX_ALLIANCE) SendMessage2ToAll(LANG_BG_AB_NODE_ASSAULTED, CHAT_MSG_BG_SYSTEM_ALLIANCE, source, _GetNodeNameId(node)); else SendMessage2ToAll(LANG_BG_AB_NODE_ASSAULTED, CHAT_MSG_BG_SYSTEM_HORDE, source, _GetNodeNameId(node)); @@ -385,14 +385,14 @@ void BattleGroundAB::EventPlayerClickedOnFlag(Player* source, GameObject* target _CreateBanner(node, BG_AB_NODE_TYPE_OCCUPIED, teamIndex, true); _SendNodeUpdate(node); m_NodeTimers[node] = 0; - _NodeOccupied(node, (teamIndex == BG_TEAM_ALLIANCE) ? ALLIANCE : HORDE); + _NodeOccupied(node, (teamIndex == TEAM_INDEX_ALLIANCE) ? ALLIANCE : HORDE); - if (teamIndex == BG_TEAM_ALLIANCE) + if (teamIndex == TEAM_INDEX_ALLIANCE) SendMessage2ToAll(LANG_BG_AB_NODE_DEFENDED, CHAT_MSG_BG_SYSTEM_ALLIANCE, source, _GetNodeNameId(node)); else SendMessage2ToAll(LANG_BG_AB_NODE_DEFENDED, CHAT_MSG_BG_SYSTEM_HORDE, source, _GetNodeNameId(node)); } - sound = (teamIndex == BG_TEAM_ALLIANCE) ? BG_AB_SOUND_NODE_ASSAULTED_ALLIANCE : BG_AB_SOUND_NODE_ASSAULTED_HORDE; + sound = (teamIndex == TEAM_INDEX_ALLIANCE) ? BG_AB_SOUND_NODE_ASSAULTED_ALLIANCE : BG_AB_SOUND_NODE_ASSAULTED_HORDE; } // If node is occupied, change to enemy-contested else @@ -405,18 +405,18 @@ void BattleGroundAB::EventPlayerClickedOnFlag(Player* source, GameObject* target _SendNodeUpdate(node); m_NodeTimers[node] = BG_AB_FLAG_CAPTURING_TIME; - if (teamIndex == BG_TEAM_ALLIANCE) + if (teamIndex == TEAM_INDEX_ALLIANCE) SendMessage2ToAll(LANG_BG_AB_NODE_ASSAULTED, CHAT_MSG_BG_SYSTEM_ALLIANCE, source, _GetNodeNameId(node)); else SendMessage2ToAll(LANG_BG_AB_NODE_ASSAULTED, CHAT_MSG_BG_SYSTEM_HORDE, source, _GetNodeNameId(node)); - sound = (teamIndex == BG_TEAM_ALLIANCE) ? BG_AB_SOUND_NODE_ASSAULTED_ALLIANCE : BG_AB_SOUND_NODE_ASSAULTED_HORDE; + sound = (teamIndex == TEAM_INDEX_ALLIANCE) ? BG_AB_SOUND_NODE_ASSAULTED_ALLIANCE : BG_AB_SOUND_NODE_ASSAULTED_HORDE; } // If node is occupied again, send "X has taken the Y" msg. if (m_Nodes[node] >= BG_AB_NODE_TYPE_OCCUPIED) { - if (teamIndex == BG_TEAM_ALLIANCE) + if (teamIndex == TEAM_INDEX_ALLIANCE) SendMessage2ToAll(LANG_BG_AB_NODE_TAKEN, CHAT_MSG_BG_SYSTEM_ALLIANCE, NULL, LANG_BG_ALLY, _GetNodeNameId(node)); else SendMessage2ToAll(LANG_BG_AB_NODE_TAKEN, CHAT_MSG_BG_SYSTEM_HORDE, NULL, LANG_BG_HORDE, _GetNodeNameId(node)); @@ -429,7 +429,7 @@ void BattleGroundAB::Reset() // call parent's class reset BattleGround::Reset(); - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { m_TeamScores[i] = 0; m_lastTick[i] = 0; @@ -471,7 +471,7 @@ void BattleGroundAB::EndBattleGround(Team winner) WorldSafeLocsEntry const* BattleGroundAB::GetClosestGraveYard(Player* player) { - BattleGroundTeamIndex teamIndex = GetTeamIndexByTeamId(player->GetTeam()); + PvpTeamIndex teamIndex = GetTeamIndexByTeamId(player->GetTeam()); // Is there any occupied node for this team? std::vector nodes; diff --git a/src/game/BattleGround/BattleGroundAB.h b/src/game/BattleGround/BattleGroundAB.h index fc3e5705622..40e48a54ecb 100644 --- a/src/game/BattleGround/BattleGroundAB.h +++ b/src/game/BattleGround/BattleGroundAB.h @@ -205,13 +205,13 @@ class BattleGroundAB : public BattleGround uint8 m_prevNodes[BG_AB_NODES_MAX]; // used for performant wordlstate-updating BG_AB_BannerTimer m_BannerTimers[BG_AB_NODES_MAX]; uint32 m_NodeTimers[BG_AB_NODES_MAX]; - uint32 m_lastTick[BG_TEAMS_COUNT]; - uint32 m_honorScoreTicks[BG_TEAMS_COUNT]; - uint32 m_ReputationScoreTics[BG_TEAMS_COUNT]; + uint32 m_lastTick[PVP_TEAM_COUNT]; + uint32 m_honorScoreTicks[PVP_TEAM_COUNT]; + uint32 m_ReputationScoreTics[PVP_TEAM_COUNT]; bool m_IsInformedNearVictory; uint32 m_honorTicks; uint32 m_ReputationTics; // need for achievements - bool m_TeamScores500Disadvantage[BG_TEAMS_COUNT]; + bool m_TeamScores500Disadvantage[PVP_TEAM_COUNT]; }; #endif diff --git a/src/game/BattleGround/BattleGroundAV.cpp b/src/game/BattleGround/BattleGroundAV.cpp index ff0a5734890..7f14b2cf09e 100644 --- a/src/game/BattleGround/BattleGroundAV.cpp +++ b/src/game/BattleGround/BattleGroundAV.cpp @@ -72,7 +72,7 @@ void BattleGroundAV::HandleKillUnit(Creature* creature, Player* killer) return; RewardReputationToTeam(BG_AV_FACTION_H, m_RepCaptain, HORDE); RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_CAPTAIN), HORDE); - UpdateScore(BG_TEAM_ALLIANCE, (-1) * BG_AV_RES_CAPTAIN); + UpdateScore(TEAM_INDEX_ALLIANCE, (-1) * BG_AV_RES_CAPTAIN); // spawn destroyed aura SpawnEvent(BG_AV_NodeEventCaptainDead_A, 0, true); break; @@ -81,7 +81,7 @@ void BattleGroundAV::HandleKillUnit(Creature* creature, Player* killer) return; RewardReputationToTeam(BG_AV_FACTION_A, m_RepCaptain, ALLIANCE); RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_CAPTAIN), ALLIANCE); - UpdateScore(BG_TEAM_HORDE, (-1) * BG_AV_RES_CAPTAIN); + UpdateScore(TEAM_INDEX_HORDE, (-1) * BG_AV_RES_CAPTAIN); // spawn destroyed aura SpawnEvent(BG_AV_NodeEventCaptainDead_H, 0, true); break; @@ -205,10 +205,10 @@ void BattleGroundAV::HandleQuestComplete(uint32 questid, Player* player) RewardReputationToTeam((player->GetTeam() == ALLIANCE) ? BG_AV_FACTION_A : BG_AV_FACTION_H, reputation, player->GetTeam()); } -void BattleGroundAV::UpdateScore(BattleGroundTeamIndex teamIdx, int32 points) +void BattleGroundAV::UpdateScore(PvpTeamIndex teamIdx, int32 points) { // note: to remove reinforcements points must be negative, for adding reinforcements points must be positive - MANGOS_ASSERT(teamIdx == BG_TEAM_ALLIANCE || teamIdx == BG_TEAM_HORDE); + MANGOS_ASSERT(teamIdx == TEAM_INDEX_ALLIANCE || teamIdx == TEAM_INDEX_HORDE); m_TeamScores[teamIdx] += points; // m_TeamScores is int32 - so no problems here if (points < 0) @@ -217,17 +217,17 @@ void BattleGroundAV::UpdateScore(BattleGroundTeamIndex teamIdx, int32 points) { m_TeamScores[teamIdx] = 0; // other team will win: - EndBattleGround((teamIdx == BG_TEAM_ALLIANCE) ? HORDE : ALLIANCE); + EndBattleGround((teamIdx == TEAM_INDEX_ALLIANCE) ? HORDE : ALLIANCE); } else if (!m_IsInformedNearLose[teamIdx] && m_TeamScores[teamIdx] < BG_AV_SCORE_NEAR_LOSE) { - SendMessageToAll((teamIdx == BG_TEAM_HORDE) ? LANG_BG_AV_H_NEAR_LOSE : LANG_BG_AV_A_NEAR_LOSE, CHAT_MSG_BG_SYSTEM_NEUTRAL); + SendMessageToAll((teamIdx == TEAM_INDEX_HORDE) ? LANG_BG_AV_H_NEAR_LOSE : LANG_BG_AV_A_NEAR_LOSE, CHAT_MSG_BG_SYSTEM_NEUTRAL); PlaySoundToAll(BG_AV_SOUND_NEAR_LOSE); m_IsInformedNearLose[teamIdx] = true; } } // must be called here, else it could display a negative value - UpdateWorldState(((teamIdx == BG_TEAM_HORDE) ? BG_AV_Horde_Score : BG_AV_Alliance_Score), m_TeamScores[teamIdx]); + UpdateWorldState(((teamIdx == TEAM_INDEX_HORDE) ? BG_AV_Horde_Score : BG_AV_Alliance_Score), m_TeamScores[teamIdx]); } void BattleGroundAV::Update(uint32 diff) @@ -245,7 +245,7 @@ void BattleGroundAV::Update(uint32 diff) m_Mine_Timer[mine] -= diff; if (m_Mine_Timer[mine] <= 0) { - UpdateScore(BattleGroundTeamIndex(m_Mine_Owner[mine]), WORLD_STATE_ADD); + UpdateScore(PvpTeamIndex(m_Mine_Owner[mine]), WORLD_STATE_ADD); m_Mine_Timer[mine] = BG_AV_MINE_TICK_TIMER; } @@ -291,18 +291,18 @@ void BattleGroundAV::AddPlayer(Player* plr) void BattleGroundAV::EndBattleGround(Team winner) { // calculate bonuskills for both teams: - uint32 tower_survived[BG_TEAMS_COUNT] = {0, 0}; - uint32 graves_owned[BG_TEAMS_COUNT] = {0, 0}; - uint32 mines_owned[BG_TEAMS_COUNT] = {0, 0}; + uint32 tower_survived[PVP_TEAM_COUNT] = {0, 0}; + uint32 graves_owned[PVP_TEAM_COUNT] = {0, 0}; + uint32 mines_owned[PVP_TEAM_COUNT] = {0, 0}; // towers all not destroyed: for (BG_AV_Nodes i = BG_AV_NODES_DUNBALDAR_SOUTH; i <= BG_AV_NODES_STONEHEART_BUNKER; ++i) if (m_Nodes[i].State == POINT_CONTROLLED) if (m_Nodes[i].TotalOwner == BG_AV_TEAM_ALLIANCE) - ++tower_survived[BG_TEAM_ALLIANCE]; + ++tower_survived[TEAM_INDEX_ALLIANCE]; for (BG_AV_Nodes i = BG_AV_NODES_ICEBLOOD_TOWER; i <= BG_AV_NODES_FROSTWOLF_WTOWER; ++i) if (m_Nodes[i].State == POINT_CONTROLLED) if (m_Nodes[i].TotalOwner == BG_AV_TEAM_HORDE) - ++tower_survived[BG_TEAM_HORDE]; + ++tower_survived[TEAM_INDEX_HORDE]; // graves all controlled for (BG_AV_Nodes i = BG_AV_NODES_FIRSTAID_STATION; i < BG_AV_NODES_MAX; ++i) @@ -314,9 +314,9 @@ void BattleGroundAV::EndBattleGround(Team winner) ++mines_owned[m_Mine_Owner[i]]; // now we have the values give the honor/reputation to the teams: - Team team[BG_TEAMS_COUNT] = { ALLIANCE, HORDE }; - uint32 faction[BG_TEAMS_COUNT] = { BG_AV_FACTION_A, BG_AV_FACTION_H }; - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + Team team[PVP_TEAM_COUNT] = { ALLIANCE, HORDE }; + uint32 faction[PVP_TEAM_COUNT] = { BG_AV_FACTION_A, BG_AV_FACTION_H }; + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { if (tower_survived[i]) { @@ -412,8 +412,8 @@ void BattleGroundAV::EventPlayerDestroyedPoint(BG_AV_Nodes node) DEBUG_LOG("BattleGroundAV: player destroyed point node %i", node); MANGOS_ASSERT(m_Nodes[node].Owner != BG_AV_TEAM_NEUTRAL) - BattleGroundTeamIndex ownerTeamIdx = BattleGroundTeamIndex(m_Nodes[node].Owner); - Team ownerTeam = ownerTeamIdx == BG_TEAM_ALLIANCE ? ALLIANCE : HORDE; + PvpTeamIndex ownerTeamIdx = PvpTeamIndex(m_Nodes[node].Owner); + Team ownerTeam = ownerTeamIdx == TEAM_INDEX_ALLIANCE ? ALLIANCE : HORDE; // despawn banner DestroyNode(node); @@ -526,7 +526,7 @@ void BattleGroundAV::EventPlayerDefendsPoint(Player* player, BG_AV_Nodes node) { MANGOS_ASSERT(GetStatus() == STATUS_IN_PROGRESS); - BattleGroundTeamIndex teamIdx = GetTeamIndexByTeamId(player->GetTeam()); + PvpTeamIndex teamIdx = GetTeamIndexByTeamId(player->GetTeam()); if (m_Nodes[node].Owner == BattleGroundAVTeamIndex(teamIdx) || m_Nodes[node].State != POINT_ASSAULTED) return; @@ -554,7 +554,7 @@ void BattleGroundAV::EventPlayerDefendsPoint(Player* player, BG_AV_Nodes node) { SendYell2ToAll(LANG_BG_AV_TOWER_DEFENDED, LANG_UNIVERSAL, GetSingleCreatureGuid(BG_AV_HERALD, 0), GetNodeName(node), - (teamIdx == BG_TEAM_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); + (teamIdx == TEAM_INDEX_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); UpdatePlayerScore(player, SCORE_TOWERS_DEFENDED, 1); PlaySoundToAll(BG_AV_SOUND_BOTH_TOWER_DEFEND); } @@ -562,17 +562,17 @@ void BattleGroundAV::EventPlayerDefendsPoint(Player* player, BG_AV_Nodes node) { SendYell2ToAll(LANG_BG_AV_GRAVE_DEFENDED, LANG_UNIVERSAL, GetSingleCreatureGuid(BG_AV_HERALD, 0), GetNodeName(node), - (teamIdx == BG_TEAM_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); + (teamIdx == TEAM_INDEX_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); UpdatePlayerScore(player, SCORE_GRAVEYARDS_DEFENDED, 1); // update the statistic for the defending player - PlaySoundToAll((teamIdx == BG_TEAM_ALLIANCE) ? BG_AV_SOUND_ALLIANCE_GOOD : BG_AV_SOUND_HORDE_GOOD); + PlaySoundToAll((teamIdx == TEAM_INDEX_ALLIANCE) ? BG_AV_SOUND_ALLIANCE_GOOD : BG_AV_SOUND_HORDE_GOOD); } } void BattleGroundAV::EventPlayerAssaultsPoint(Player* player, BG_AV_Nodes node) { // TODO implement quest 7101, 7081 - BattleGroundTeamIndex teamIdx = GetTeamIndexByTeamId(player->GetTeam()); + PvpTeamIndex teamIdx = GetTeamIndexByTeamId(player->GetTeam()); DEBUG_LOG("BattleGroundAV: player assaults node %i", node); if (m_Nodes[node].Owner == BattleGroundAVTeamIndex(teamIdx) || BattleGroundAVTeamIndex(teamIdx) == m_Nodes[node].TotalOwner) return; @@ -585,19 +585,19 @@ void BattleGroundAV::EventPlayerAssaultsPoint(Player* player, BG_AV_Nodes node) { SendYell2ToAll(LANG_BG_AV_TOWER_ASSAULTED, LANG_UNIVERSAL, GetSingleCreatureGuid(BG_AV_HERALD, 0), GetNodeName(node), - (teamIdx == BG_TEAM_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); + (teamIdx == TEAM_INDEX_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); UpdatePlayerScore(player, SCORE_TOWERS_ASSAULTED, 1); } else { SendYell2ToAll(LANG_BG_AV_GRAVE_ASSAULTED, LANG_UNIVERSAL, GetSingleCreatureGuid(BG_AV_HERALD, 0), GetNodeName(node), - (teamIdx == BG_TEAM_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); + (teamIdx == TEAM_INDEX_ALLIANCE) ? LANG_BG_ALLY : LANG_BG_HORDE); // update the statistic for the assaulting player UpdatePlayerScore(player, SCORE_GRAVEYARDS_ASSAULTED, 1); } - PlaySoundToAll((teamIdx == BG_TEAM_ALLIANCE) ? BG_AV_SOUND_ALLIANCE_ASSAULTS : BG_AV_SOUND_HORDE_ASSAULTS); + PlaySoundToAll((teamIdx == TEAM_INDEX_ALLIANCE) ? BG_AV_SOUND_ALLIANCE_ASSAULTS : BG_AV_SOUND_HORDE_ASSAULTS); } void BattleGroundAV::FillInitialWorldStates(WorldPacket& data, uint32& count) @@ -618,8 +618,8 @@ void BattleGroundAV::FillInitialWorldStates(WorldPacket& data, uint32& count) if (m_Nodes[BG_AV_NODES_SNOWFALL_GRAVE].Owner == BG_AV_TEAM_NEUTRAL) // cause neutral teams aren't handled generic FillInitialWorldState(data, count, AV_SNOWFALL_N, WORLD_STATE_ADD); - FillInitialWorldState(data, count, BG_AV_Alliance_Score, m_TeamScores[BG_TEAM_ALLIANCE]); - FillInitialWorldState(data, count, BG_AV_Horde_Score, m_TeamScores[BG_TEAM_HORDE]); + FillInitialWorldState(data, count, BG_AV_Alliance_Score, m_TeamScores[TEAM_INDEX_ALLIANCE]); + FillInitialWorldState(data, count, BG_AV_Horde_Score, m_TeamScores[TEAM_INDEX_HORDE]); if (GetStatus() == STATUS_IN_PROGRESS) // only if game is running the teamscores are displayed { FillInitialWorldState(data, count, BG_AV_SHOW_A_SCORE, WORLD_STATE_ADD); @@ -713,7 +713,7 @@ uint32 BattleGroundAV::GetNodeName(BG_AV_Nodes node) const } } -void BattleGroundAV::AssaultNode(BG_AV_Nodes node, BattleGroundTeamIndex teamIdx) +void BattleGroundAV::AssaultNode(BG_AV_Nodes node, PvpTeamIndex teamIdx) { MANGOS_ASSERT(m_Nodes[node].TotalOwner != BattleGroundAVTeamIndex(teamIdx)); MANGOS_ASSERT(m_Nodes[node].Owner != BattleGroundAVTeamIndex(teamIdx)); @@ -753,7 +753,7 @@ void BattleGroundAV::InitNode(BG_AV_Nodes node, BattleGroundAVTeamIndex teamIdx, m_ActiveEvents[node + BG_AV_NODES_MAX] = teamIdx * BG_AV_MAX_GRAVETYPES; } -void BattleGroundAV::DefendNode(BG_AV_Nodes node, BattleGroundTeamIndex teamIdx) +void BattleGroundAV::DefendNode(BG_AV_Nodes node, PvpTeamIndex teamIdx) { MANGOS_ASSERT(m_Nodes[node].TotalOwner == BattleGroundAVTeamIndex(teamIdx)); MANGOS_ASSERT(m_Nodes[node].Owner != BattleGroundAVTeamIndex(teamIdx)); @@ -780,7 +780,7 @@ void BattleGroundAV::Reset() m_RepSurviveTower = (isBGWeekend) ? BG_AV_REP_SURVIVING_TOWER_HOLIDAY : BG_AV_REP_SURVIVING_TOWER; m_RepOwnedMine = (isBGWeekend) ? BG_AV_REP_OWNED_MINE_HOLIDAY : BG_AV_REP_OWNED_MINE; - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { for (uint8 j = 0; j < 9; ++j) // 9 quests getting tracked m_Team_QuestStatus[i][j] = 0; diff --git a/src/game/BattleGround/BattleGroundAV.h b/src/game/BattleGround/BattleGroundAV.h index f8ac6fa7bb2..f910ee4a884 100644 --- a/src/game/BattleGround/BattleGroundAV.h +++ b/src/game/BattleGround/BattleGroundAV.h @@ -208,9 +208,9 @@ enum BG_AV_WorldStates // BattleGroundAVTeamIndex -> BattleGroundTeamIndex cast safe and array with BG_TEAMS_COUNT elements must checked != BG_AV_TEAM_NEUTRAL before used enum BattleGroundAVTeamIndex { - BG_AV_TEAM_ALLIANCE = BG_TEAM_ALLIANCE, - BG_AV_TEAM_HORDE = BG_TEAM_HORDE, - BG_AV_TEAM_NEUTRAL = 2, // this is the neutral owner of snowfall + BG_AV_TEAM_ALLIANCE = TEAM_INDEX_ALLIANCE, + BG_AV_TEAM_HORDE = TEAM_INDEX_HORDE, + BG_AV_TEAM_NEUTRAL = TEAM_INDEX_NEUTRAL, // this is the neutral owner of snowfall }; #define BG_AV_TEAMS_COUNT 3 @@ -339,7 +339,7 @@ class BattleGroundAV : public BattleGround virtual void Reset() override; /*general stuff*/ - void UpdateScore(BattleGroundTeamIndex teamIdx, int32 points); + void UpdateScore(PvpTeamIndex teamIdx, int32 points); void UpdatePlayerScore(Player* source, uint32 type, uint32 value) override; /*handle stuff*/ // these are functions which get called from extern scripts @@ -360,10 +360,10 @@ class BattleGroundAV : public BattleGround void EventPlayerDefendsPoint(Player* player, BG_AV_Nodes node); void EventPlayerDestroyedPoint(BG_AV_Nodes node); - void AssaultNode(BG_AV_Nodes node, BattleGroundTeamIndex teamIdx); + void AssaultNode(BG_AV_Nodes node, PvpTeamIndex teamIdx); void DestroyNode(BG_AV_Nodes node); void InitNode(BG_AV_Nodes node, BattleGroundAVTeamIndex teamIdx, bool tower); - void DefendNode(BG_AV_Nodes node, BattleGroundTeamIndex teamIdx); + void DefendNode(BG_AV_Nodes node, PvpTeamIndex teamIdx); void PopulateNode(BG_AV_Nodes node); @@ -380,7 +380,7 @@ class BattleGroundAV : public BattleGround void UpdateNodeWorldState(BG_AV_Nodes node); /*variables */ - uint32 m_Team_QuestStatus[BG_TEAMS_COUNT][9]; // [x][y] x=team y=questcounter + uint32 m_Team_QuestStatus[PVP_TEAM_COUNT][9]; // [x][y] x=team y=questcounter BG_AV_NodeInfo m_Nodes[BG_AV_NODES_MAX]; @@ -390,7 +390,7 @@ class BattleGroundAV : public BattleGround int32 m_Mine_Timer[BG_AV_MAX_MINES]; uint32 m_Mine_Reclaim_Timer[BG_AV_MAX_MINES]; - bool m_IsInformedNearLose[BG_TEAMS_COUNT]; + bool m_IsInformedNearLose[PVP_TEAM_COUNT]; uint32 m_HonorMapComplete; uint32 m_RepTowerDestruction; diff --git a/src/game/BattleGround/BattleGroundEY.cpp b/src/game/BattleGround/BattleGroundEY.cpp index f27d4e58123..f3ffe671308 100644 --- a/src/game/BattleGround/BattleGroundEY.cpp +++ b/src/game/BattleGround/BattleGroundEY.cpp @@ -79,7 +79,7 @@ void BattleGroundEY::StartingEventOpenDoors() void BattleGroundEY::AddPoints(Team team, uint32 points) { - BattleGroundTeamIndex team_index = GetTeamIndexByTeamId(team); + PvpTeamIndex team_index = GetTeamIndexByTeamId(team); m_TeamScores[team_index] += points; m_honorScoreTicks[team_index] += points; if (m_honorScoreTicks[team_index] >= m_honorTicks) @@ -225,7 +225,7 @@ void BattleGroundEY::ProcessCaptureEvent(GameObject* /*go*/, uint32 towerId, Tea SendMessageToAll(message, CHAT_MSG_BG_SYSTEM_ALLIANCE); // spawn gameobjects - SpawnEvent(towerId, BG_TEAM_ALLIANCE, true); + SpawnEvent(towerId, TEAM_INDEX_ALLIANCE, true); } else if (team == HORDE) { @@ -236,7 +236,7 @@ void BattleGroundEY::ProcessCaptureEvent(GameObject* /*go*/, uint32 towerId, Tea SendMessageToAll(message, CHAT_MSG_BG_SYSTEM_HORDE); // spawn gameobjects - SpawnEvent(towerId, BG_TEAM_HORDE, true); + SpawnEvent(towerId, TEAM_INDEX_HORDE, true); } else { @@ -304,15 +304,15 @@ void BattleGroundEY::Reset() // call parent's class reset BattleGround::Reset(); - m_TeamScores[BG_TEAM_ALLIANCE] = 0; - m_TeamScores[BG_TEAM_HORDE] = 0; + m_TeamScores[TEAM_INDEX_ALLIANCE] = 0; + m_TeamScores[TEAM_INDEX_HORDE] = 0; m_towersAlliance = 0; m_towersHorde = 0; m_honorTicks = BattleGroundMgr::IsBGWeekend(GetTypeID()) ? EY_WEEKEND_HONOR_INTERVAL : EY_NORMAL_HONOR_INTERVAL; - m_honorScoreTicks[BG_TEAM_ALLIANCE] = 0; - m_honorScoreTicks[BG_TEAM_HORDE] = 0; + m_honorScoreTicks[TEAM_INDEX_ALLIANCE] = 0; + m_honorScoreTicks[TEAM_INDEX_HORDE] = 0; m_flagState = EY_FLAG_STATE_ON_BASE; m_flagCarrier.Clear(); @@ -506,8 +506,8 @@ void BattleGroundEY::FillInitialWorldStates(WorldPacket& data, uint32& count) FillInitialWorldState(data, count, WORLD_STATE_EY_TOWER_COUNT_ALLIANCE, m_towersAlliance); FillInitialWorldState(data, count, WORLD_STATE_EY_TOWER_COUNT_HORDE, m_towersHorde); - FillInitialWorldState(data, count, WORLD_STATE_EY_RESOURCES_ALLIANCE, m_TeamScores[BG_TEAM_ALLIANCE]); - FillInitialWorldState(data, count, WORLD_STATE_EY_RESOURCES_HORDE, m_TeamScores[BG_TEAM_HORDE]); + FillInitialWorldState(data, count, WORLD_STATE_EY_RESOURCES_ALLIANCE, m_TeamScores[TEAM_INDEX_ALLIANCE]); + FillInitialWorldState(data, count, WORLD_STATE_EY_RESOURCES_HORDE, m_TeamScores[TEAM_INDEX_HORDE]); // tower world states FillInitialWorldState(data, count, WORLD_STATE_EY_BLOOD_ELF_TOWER_ALLIANCE, m_towerOwner[NODE_BLOOD_ELF_TOWER] == ALLIANCE); diff --git a/src/game/BattleGround/BattleGroundEY.h b/src/game/BattleGround/BattleGroundEY.h index b650cc3b7da..736c5d6460f 100644 --- a/src/game/BattleGround/BattleGroundEY.h +++ b/src/game/BattleGround/BattleGroundEY.h @@ -299,7 +299,7 @@ class BattleGroundEY : public BattleGround ObjectGuid m_towers[EY_NODES_MAX]; uint32 m_honorTicks; - uint32 m_honorScoreTicks[BG_TEAMS_COUNT]; + uint32 m_honorScoreTicks[PVP_TEAM_COUNT]; uint32 m_flagRespawnTimer; uint32 m_resourceUpdateTimer; diff --git a/src/game/BattleGround/BattleGroundMgr.cpp b/src/game/BattleGround/BattleGroundMgr.cpp index 8c127ca3e27..26a3ad81e1f 100644 --- a/src/game/BattleGround/BattleGroundMgr.cpp +++ b/src/game/BattleGround/BattleGroundMgr.cpp @@ -53,7 +53,7 @@ INSTANTIATE_SINGLETON_1(BattleGroundMgr); BattleGroundQueue::BattleGroundQueue() { - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { for (uint8 j = 0; j < MAX_BATTLEGROUND_BRACKETS; ++j) { @@ -169,7 +169,7 @@ GroupQueueInfo* BattleGroundQueue::AddGroup(Player* leader, Group* grp, BattleGr // compute index (if group is premade or joined a rated match) to queues uint32 index = 0; if (!isRated && !isPremade) - index += BG_TEAMS_COUNT; // BG_QUEUE_PREMADE_* -> BG_QUEUE_NORMAL_* + index += PVP_TEAM_COUNT; // BG_QUEUE_PREMADE_* -> BG_QUEUE_NORMAL_* if (ginfo->GroupTeam == HORDE) ++index; // BG_QUEUE_*_ALLIANCE -> BG_QUEUE_*_HORDE @@ -254,16 +254,16 @@ GroupQueueInfo* BattleGroundQueue::AddGroup(Player* leader, Group* grp, BattleGr void BattleGroundQueue::PlayerInvitedToBGUpdateAverageWaitTime(GroupQueueInfo* ginfo, BattleGroundBracketId bracket_id) { uint32 timeInQueue = WorldTimer::getMSTimeDiff(ginfo->JoinTime, WorldTimer::getMSTime()); - uint8 team_index = BG_TEAM_ALLIANCE; // default set to BG_TEAM_ALLIANCE - or non rated arenas! + uint8 team_index = TEAM_INDEX_ALLIANCE; // default set to BG_TEAM_ALLIANCE - or non rated arenas! if (ginfo->arenaType == ARENA_TYPE_NONE) { if (ginfo->GroupTeam == HORDE) - team_index = BG_TEAM_HORDE; + team_index = TEAM_INDEX_HORDE; } else { if (ginfo->IsRated) - team_index = BG_TEAM_HORDE; // for rated arenas use BG_TEAM_HORDE + team_index = TEAM_INDEX_HORDE; // for rated arenas use BG_TEAM_HORDE } // store pointer to arrayindex of player that was added first @@ -281,16 +281,16 @@ void BattleGroundQueue::PlayerInvitedToBGUpdateAverageWaitTime(GroupQueueInfo* g uint32 BattleGroundQueue::GetAverageQueueWaitTime(GroupQueueInfo* ginfo, BattleGroundBracketId bracket_id) { - uint8 team_index = BG_TEAM_ALLIANCE; // default set to BG_TEAM_ALLIANCE - or non rated arenas! + uint8 team_index = TEAM_INDEX_ALLIANCE; // default set to BG_TEAM_ALLIANCE - or non rated arenas! if (ginfo->arenaType == ARENA_TYPE_NONE) { if (ginfo->GroupTeam == HORDE) - team_index = BG_TEAM_HORDE; + team_index = TEAM_INDEX_HORDE; } else { if (ginfo->IsRated) - team_index = BG_TEAM_HORDE; // for rated arenas use BG_TEAM_HORDE + team_index = TEAM_INDEX_HORDE; // for rated arenas use BG_TEAM_HORDE } // check if there is enought values(we always add values > 0) if (m_WaitTimes[team_index][bracket_id][COUNT_OF_PLAYERS_TO_AVERAGE_WAIT_TIME - 1]) @@ -520,13 +520,13 @@ void BattleGroundQueue::FillPlayersToBG(BattleGround* bg, BattleGroundBracketId uint32 aliCount = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE].size(); // index to queue which group is current uint32 aliIndex = 0; - for (; aliIndex < aliCount && m_SelectionPools[BG_TEAM_ALLIANCE].AddGroup((*Ali_itr), aliFree); ++aliIndex) + for (; aliIndex < aliCount && m_SelectionPools[TEAM_INDEX_ALLIANCE].AddGroup((*Ali_itr), aliFree); ++aliIndex) ++Ali_itr; // the same thing for horde GroupsQueueType::const_iterator Horde_itr = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_HORDE].begin(); uint32 hordeCount = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_HORDE].size(); uint32 hordeIndex = 0; - for (; hordeIndex < hordeCount && m_SelectionPools[BG_TEAM_HORDE].AddGroup((*Horde_itr), hordeFree); ++hordeIndex) + for (; hordeIndex < hordeCount && m_SelectionPools[TEAM_INDEX_HORDE].AddGroup((*Horde_itr), hordeFree); ++hordeIndex) ++Horde_itr; // if ofc like BG queue invitation is set in config, then we are happy @@ -542,45 +542,45 @@ void BattleGroundQueue::FillPlayersToBG(BattleGround* bg, BattleGroundBracketId */ // At first we need to compare free space in bg and our selection pool - int32 diffAli = aliFree - int32(m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount()); - int32 diffHorde = hordeFree - int32(m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount()); - while (abs(diffAli - diffHorde) > 1 && (m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() > 0 || m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() > 0)) + int32 diffAli = aliFree - int32(m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount()); + int32 diffHorde = hordeFree - int32(m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount()); + while (abs(diffAli - diffHorde) > 1 && (m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() > 0 || m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() > 0)) { // each cycle execution we need to kick at least 1 group if (diffAli < diffHorde) { // kick alliance group, add to pool new group if needed - if (m_SelectionPools[BG_TEAM_ALLIANCE].KickGroup(diffHorde - diffAli)) + if (m_SelectionPools[TEAM_INDEX_ALLIANCE].KickGroup(diffHorde - diffAli)) { - for (; aliIndex < aliCount && m_SelectionPools[BG_TEAM_ALLIANCE].AddGroup((*Ali_itr), (aliFree >= diffHorde) ? aliFree - diffHorde : 0); ++aliIndex) + for (; aliIndex < aliCount && m_SelectionPools[TEAM_INDEX_ALLIANCE].AddGroup((*Ali_itr), (aliFree >= diffHorde) ? aliFree - diffHorde : 0); ++aliIndex) ++Ali_itr; } // if ali selection is already empty, then kick horde group, but if there are less horde than ali in bg - break; - if (!m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount()) + if (!m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount()) { if (aliFree <= diffHorde + 1) break; - m_SelectionPools[BG_TEAM_HORDE].KickGroup(diffHorde - diffAli); + m_SelectionPools[TEAM_INDEX_HORDE].KickGroup(diffHorde - diffAli); } } else { // kick horde group, add to pool new group if needed - if (m_SelectionPools[BG_TEAM_HORDE].KickGroup(diffAli - diffHorde)) + if (m_SelectionPools[TEAM_INDEX_HORDE].KickGroup(diffAli - diffHorde)) { - for (; hordeIndex < hordeCount && m_SelectionPools[BG_TEAM_HORDE].AddGroup((*Horde_itr), (hordeFree >= diffAli) ? hordeFree - diffAli : 0); ++hordeIndex) + for (; hordeIndex < hordeCount && m_SelectionPools[TEAM_INDEX_HORDE].AddGroup((*Horde_itr), (hordeFree >= diffAli) ? hordeFree - diffAli : 0); ++hordeIndex) ++Horde_itr; } - if (!m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount()) + if (!m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount()) { if (hordeFree <= diffAli + 1) break; - m_SelectionPools[BG_TEAM_ALLIANCE].KickGroup(diffAli - diffHorde); + m_SelectionPools[TEAM_INDEX_ALLIANCE].KickGroup(diffAli - diffHorde); } } // count diffs after small update - diffAli = aliFree - int32(m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount()); - diffHorde = hordeFree - int32(m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount()); + diffAli = aliFree - int32(m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount()); + diffHorde = hordeFree - int32(m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount()); } } @@ -604,12 +604,12 @@ bool BattleGroundQueue::CheckPremadeMatch(BattleGroundBracketId bracket_id, uint if (ali_group != m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].end() && horde_group != m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].end()) { - m_SelectionPools[BG_TEAM_ALLIANCE].AddGroup((*ali_group), MaxPlayersPerTeam); - m_SelectionPools[BG_TEAM_HORDE].AddGroup((*horde_group), MaxPlayersPerTeam); + m_SelectionPools[TEAM_INDEX_ALLIANCE].AddGroup((*ali_group), MaxPlayersPerTeam); + m_SelectionPools[TEAM_INDEX_HORDE].AddGroup((*horde_group), MaxPlayersPerTeam); // add groups/players from normal queue to size of bigger group - uint32 maxPlayers = std::max(m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount(), m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount()); + uint32 maxPlayers = std::max(m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount(), m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount()); GroupsQueueType::const_iterator itr; - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { for (itr = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + i].begin(); itr != m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + i].end(); ++itr) { @@ -627,7 +627,7 @@ bool BattleGroundQueue::CheckPremadeMatch(BattleGroundBracketId bracket_id, uint // if first is invited to BG and seconds timer expired, but we can ignore it, because players have only 80 seconds to click to enter bg // and when they click or after 80 seconds the queue info is removed from queue uint32 time_before = WorldTimer::getMSTime() - sWorld.getConfig(CONFIG_UINT32_BATTLEGROUND_PREMADE_GROUP_WAIT_FOR_MATCH); - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { if (!m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE + i].empty()) { @@ -647,8 +647,8 @@ bool BattleGroundQueue::CheckPremadeMatch(BattleGroundBracketId bracket_id, uint // this method tries to create battleground or arena with MinPlayersPerTeam against MinPlayersPerTeam bool BattleGroundQueue::CheckNormalMatch(BattleGround* bg_template, BattleGroundBracketId bracket_id, uint32 minPlayers, uint32 maxPlayers) { - GroupsQueueType::const_iterator itr_team[BG_TEAMS_COUNT]; - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + GroupsQueueType::const_iterator itr_team[PVP_TEAM_COUNT]; + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { itr_team[i] = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + i].begin(); for (; itr_team[i] != m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + i].end(); ++(itr_team[i])) @@ -662,43 +662,43 @@ bool BattleGroundQueue::CheckNormalMatch(BattleGround* bg_template, BattleGround } } // try to invite same number of players - this cycle may cause longer wait time even if there are enough players in queue, but we want ballanced bg - uint32 j = BG_TEAM_ALLIANCE; - if (m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() < m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount()) - j = BG_TEAM_HORDE; + uint32 j = TEAM_INDEX_ALLIANCE; + if (m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() < m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount()) + j = TEAM_INDEX_HORDE; if (sWorld.getConfig(CONFIG_UINT32_BATTLEGROUND_INVITATION_TYPE) != 0 - && m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() >= minPlayers && m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() >= minPlayers) + && m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() >= minPlayers && m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() >= minPlayers) { // we will try to invite more groups to team with less players indexed by j ++(itr_team[j]); // this will not cause a crash, because for cycle above reached break; for (; itr_team[j] != m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + j].end(); ++(itr_team[j])) { if (!(*(itr_team[j]))->IsInvitedToBGInstanceGUID) - if (!m_SelectionPools[j].AddGroup(*(itr_team[j]), m_SelectionPools[(j + 1) % BG_TEAMS_COUNT].GetPlayerCount())) + if (!m_SelectionPools[j].AddGroup(*(itr_team[j]), m_SelectionPools[(j + 1) % PVP_TEAM_COUNT].GetPlayerCount())) break; } // do not allow to start bg with more than 2 players more on 1 faction - if (abs((int32)(m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() - m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount())) > 2) + if (abs((int32)(m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() - m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount())) > 2) return false; } // allow 1v0 if debug bg - if (sBattleGroundMgr.isTesting() && bg_template->isBattleGround() && (m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() || m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount())) + if (sBattleGroundMgr.isTesting() && bg_template->isBattleGround() && (m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() || m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount())) return true; // return true if there are enough players in selection pools - enable to work .debug bg command correctly - return m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() >= minPlayers && m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() >= minPlayers; + return m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() >= minPlayers && m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() >= minPlayers; } // this method will check if we can invite players to same faction skirmish match bool BattleGroundQueue::CheckSkirmishForSameFaction(BattleGroundBracketId bracket_id, uint32 minPlayersPerTeam) { - if (m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() < minPlayersPerTeam && m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() < minPlayersPerTeam) + if (m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() < minPlayersPerTeam && m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() < minPlayersPerTeam) return false; - BattleGroundTeamIndex teamIdx = BG_TEAM_ALLIANCE; - BattleGroundTeamIndex otherTeamIdx = BG_TEAM_HORDE; + PvpTeamIndex teamIdx = TEAM_INDEX_ALLIANCE; + PvpTeamIndex otherTeamIdx = TEAM_INDEX_HORDE; Team otherTeamId = HORDE; - if (m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() == minPlayersPerTeam) + if (m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() == minPlayersPerTeam) { - teamIdx = BG_TEAM_HORDE; - otherTeamIdx = BG_TEAM_ALLIANCE; + teamIdx = TEAM_INDEX_HORDE; + otherTeamIdx = TEAM_INDEX_ALLIANCE; otherTeamId = ALLIANCE; } // clear other team's selection @@ -776,16 +776,16 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI // and iterator is invalid // clear selection pools - m_SelectionPools[BG_TEAM_ALLIANCE].Init(); - m_SelectionPools[BG_TEAM_HORDE].Init(); + m_SelectionPools[TEAM_INDEX_ALLIANCE].Init(); + m_SelectionPools[TEAM_INDEX_HORDE].Init(); // call a function that does the job for us FillPlayersToBG(bg, bracket_id); // now everything is set, invite players - for (GroupsQueueType::const_iterator citr = m_SelectionPools[BG_TEAM_ALLIANCE].SelectedGroups.begin(); citr != m_SelectionPools[BG_TEAM_ALLIANCE].SelectedGroups.end(); ++citr) + for (GroupsQueueType::const_iterator citr = m_SelectionPools[TEAM_INDEX_ALLIANCE].SelectedGroups.begin(); citr != m_SelectionPools[TEAM_INDEX_ALLIANCE].SelectedGroups.end(); ++citr) InviteGroupToBG((*citr), bg, (*citr)->GroupTeam); - for (GroupsQueueType::const_iterator citr = m_SelectionPools[BG_TEAM_HORDE].SelectedGroups.begin(); citr != m_SelectionPools[BG_TEAM_HORDE].SelectedGroups.end(); ++citr) + for (GroupsQueueType::const_iterator citr = m_SelectionPools[TEAM_INDEX_HORDE].SelectedGroups.begin(); citr != m_SelectionPools[TEAM_INDEX_HORDE].SelectedGroups.end(); ++citr) InviteGroupToBG((*citr), bg, (*citr)->GroupTeam); if (!bg->HasFreeSlots()) @@ -847,8 +847,8 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI } } - m_SelectionPools[BG_TEAM_ALLIANCE].Init(); - m_SelectionPools[BG_TEAM_HORDE].Init(); + m_SelectionPools[TEAM_INDEX_ALLIANCE].Init(); + m_SelectionPools[TEAM_INDEX_HORDE].Init(); if (bg_template->isBattleGround()) { @@ -863,14 +863,14 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI return; } // invite those selection pools - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) - for (GroupsQueueType::const_iterator citr = m_SelectionPools[BG_TEAM_ALLIANCE + i].SelectedGroups.begin(); citr != m_SelectionPools[BG_TEAM_ALLIANCE + i].SelectedGroups.end(); ++citr) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) + for (GroupsQueueType::const_iterator citr = m_SelectionPools[TEAM_INDEX_ALLIANCE + i].SelectedGroups.begin(); citr != m_SelectionPools[TEAM_INDEX_ALLIANCE + i].SelectedGroups.end(); ++citr) InviteGroupToBG((*citr), bg2, (*citr)->GroupTeam); // start bg bg2->StartBattleGround(); // clear structures - m_SelectionPools[BG_TEAM_ALLIANCE].Init(); - m_SelectionPools[BG_TEAM_HORDE].Init(); + m_SelectionPools[TEAM_INDEX_ALLIANCE].Init(); + m_SelectionPools[TEAM_INDEX_HORDE].Init(); } } @@ -890,8 +890,8 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI } // invite those selection pools - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) - for (GroupsQueueType::const_iterator citr = m_SelectionPools[BG_TEAM_ALLIANCE + i].SelectedGroups.begin(); citr != m_SelectionPools[BG_TEAM_ALLIANCE + i].SelectedGroups.end(); ++citr) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) + for (GroupsQueueType::const_iterator citr = m_SelectionPools[TEAM_INDEX_ALLIANCE + i].SelectedGroups.begin(); citr != m_SelectionPools[TEAM_INDEX_ALLIANCE + i].SelectedGroups.end(); ++citr) InviteGroupToBG((*citr), bg2, (*citr)->GroupTeam); // start bg bg2->StartBattleGround(); @@ -936,7 +936,7 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI // we need to find 2 teams which will play next game - GroupsQueueType::iterator itr_team[BG_TEAMS_COUNT]; + GroupsQueueType::iterator itr_team[PVP_TEAM_COUNT]; // optimalization : --- we dont need to use selection_pools - each update we select max 2 groups @@ -961,40 +961,40 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI // if we don't have, we must try to continue search in same queue // tmp variables are correctly set // this code isn't much userfriendly - but it is supposed to continue search for mathing group in HORDE queue - if (m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() == 0 && m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount()) + if (m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() == 0 && m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount()) { - itr_team[BG_TEAM_ALLIANCE] = itr_team[BG_TEAM_HORDE]; - ++itr_team[BG_TEAM_ALLIANCE]; - for (; itr_team[BG_TEAM_ALLIANCE] != m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].end(); ++(itr_team[BG_TEAM_ALLIANCE])) + itr_team[TEAM_INDEX_ALLIANCE] = itr_team[TEAM_INDEX_HORDE]; + ++itr_team[TEAM_INDEX_ALLIANCE]; + for (; itr_team[TEAM_INDEX_ALLIANCE] != m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].end(); ++(itr_team[TEAM_INDEX_ALLIANCE])) { - if (!(*itr_team[BG_TEAM_ALLIANCE])->IsInvitedToBGInstanceGUID - && (((*itr_team[BG_TEAM_ALLIANCE])->ArenaTeamRating >= arenaMinRating && (*itr_team[BG_TEAM_ALLIANCE])->ArenaTeamRating <= arenaMaxRating) - || (*itr_team[BG_TEAM_ALLIANCE])->JoinTime < discardTime)) + if (!(*itr_team[TEAM_INDEX_ALLIANCE])->IsInvitedToBGInstanceGUID + && (((*itr_team[TEAM_INDEX_ALLIANCE])->ArenaTeamRating >= arenaMinRating && (*itr_team[TEAM_INDEX_ALLIANCE])->ArenaTeamRating <= arenaMaxRating) + || (*itr_team[TEAM_INDEX_ALLIANCE])->JoinTime < discardTime)) { - m_SelectionPools[BG_TEAM_ALLIANCE].AddGroup((*itr_team[BG_TEAM_ALLIANCE]), MaxPlayersPerTeam); + m_SelectionPools[TEAM_INDEX_ALLIANCE].AddGroup((*itr_team[TEAM_INDEX_ALLIANCE]), MaxPlayersPerTeam); break; } } } // this code isn't much userfriendly - but it is supposed to continue search for mathing group in ALLIANCE queue - if (m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount() == 0 && m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount()) + if (m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount() == 0 && m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount()) { - itr_team[BG_TEAM_HORDE] = itr_team[BG_TEAM_ALLIANCE]; - ++itr_team[BG_TEAM_HORDE]; - for (; itr_team[BG_TEAM_HORDE] != m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].end(); ++(itr_team[BG_TEAM_HORDE])) + itr_team[TEAM_INDEX_HORDE] = itr_team[TEAM_INDEX_ALLIANCE]; + ++itr_team[TEAM_INDEX_HORDE]; + for (; itr_team[TEAM_INDEX_HORDE] != m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].end(); ++(itr_team[TEAM_INDEX_HORDE])) { - if (!(*itr_team[BG_TEAM_HORDE])->IsInvitedToBGInstanceGUID - && (((*itr_team[BG_TEAM_HORDE])->ArenaTeamRating >= arenaMinRating && (*itr_team[BG_TEAM_HORDE])->ArenaTeamRating <= arenaMaxRating) - || (*itr_team[BG_TEAM_HORDE])->JoinTime < discardTime)) + if (!(*itr_team[TEAM_INDEX_HORDE])->IsInvitedToBGInstanceGUID + && (((*itr_team[TEAM_INDEX_HORDE])->ArenaTeamRating >= arenaMinRating && (*itr_team[TEAM_INDEX_HORDE])->ArenaTeamRating <= arenaMaxRating) + || (*itr_team[TEAM_INDEX_HORDE])->JoinTime < discardTime)) { - m_SelectionPools[BG_TEAM_HORDE].AddGroup((*itr_team[BG_TEAM_HORDE]), MaxPlayersPerTeam); + m_SelectionPools[TEAM_INDEX_HORDE].AddGroup((*itr_team[TEAM_INDEX_HORDE]), MaxPlayersPerTeam); break; } } } // if we have 2 teams, then start new arena and invite players! - if (m_SelectionPools[BG_TEAM_ALLIANCE].GetPlayerCount() && m_SelectionPools[BG_TEAM_HORDE].GetPlayerCount()) + if (m_SelectionPools[TEAM_INDEX_ALLIANCE].GetPlayerCount() && m_SelectionPools[TEAM_INDEX_HORDE].GetPlayerCount()) { BattleGround* arena = sBattleGroundMgr.CreateNewBattleGround(bgTypeId, bracketEntry, arenaType, true); if (!arena) @@ -1003,28 +1003,28 @@ void BattleGroundQueue::Update(BattleGroundTypeId bgTypeId, BattleGroundBracketI return; } - (*(itr_team[BG_TEAM_ALLIANCE]))->OpponentsTeamRating = (*(itr_team[BG_TEAM_HORDE]))->ArenaTeamRating; - DEBUG_LOG("setting oposite teamrating for team %u to %u", (*(itr_team[BG_TEAM_ALLIANCE]))->ArenaTeamId, (*(itr_team[BG_TEAM_ALLIANCE]))->OpponentsTeamRating); - (*(itr_team[BG_TEAM_HORDE]))->OpponentsTeamRating = (*(itr_team[BG_TEAM_ALLIANCE]))->ArenaTeamRating; - DEBUG_LOG("setting oposite teamrating for team %u to %u", (*(itr_team[BG_TEAM_HORDE]))->ArenaTeamId, (*(itr_team[BG_TEAM_HORDE]))->OpponentsTeamRating); + (*(itr_team[TEAM_INDEX_ALLIANCE]))->OpponentsTeamRating = (*(itr_team[TEAM_INDEX_HORDE]))->ArenaTeamRating; + DEBUG_LOG("setting oposite teamrating for team %u to %u", (*(itr_team[TEAM_INDEX_ALLIANCE]))->ArenaTeamId, (*(itr_team[TEAM_INDEX_ALLIANCE]))->OpponentsTeamRating); + (*(itr_team[TEAM_INDEX_HORDE]))->OpponentsTeamRating = (*(itr_team[TEAM_INDEX_ALLIANCE]))->ArenaTeamRating; + DEBUG_LOG("setting oposite teamrating for team %u to %u", (*(itr_team[TEAM_INDEX_HORDE]))->ArenaTeamId, (*(itr_team[TEAM_INDEX_HORDE]))->OpponentsTeamRating); // now we must move team if we changed its faction to another faction queue, because then we will spam log by errors in Queue::RemovePlayer - if ((*(itr_team[BG_TEAM_ALLIANCE]))->GroupTeam != ALLIANCE) + if ((*(itr_team[TEAM_INDEX_ALLIANCE]))->GroupTeam != ALLIANCE) { // add to alliance queue - m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].push_front(*(itr_team[BG_TEAM_ALLIANCE])); + m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].push_front(*(itr_team[TEAM_INDEX_ALLIANCE])); // erase from horde queue - m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].erase(itr_team[BG_TEAM_ALLIANCE]); - itr_team[BG_TEAM_ALLIANCE] = m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].begin(); + m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].erase(itr_team[TEAM_INDEX_ALLIANCE]); + itr_team[TEAM_INDEX_ALLIANCE] = m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].begin(); } - if ((*(itr_team[BG_TEAM_HORDE]))->GroupTeam != HORDE) + if ((*(itr_team[TEAM_INDEX_HORDE]))->GroupTeam != HORDE) { - m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].push_front(*(itr_team[BG_TEAM_HORDE])); - m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].erase(itr_team[BG_TEAM_HORDE]); - itr_team[BG_TEAM_HORDE] = m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].begin(); + m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].push_front(*(itr_team[TEAM_INDEX_HORDE])); + m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].erase(itr_team[TEAM_INDEX_HORDE]); + itr_team[TEAM_INDEX_HORDE] = m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_HORDE].begin(); } - InviteGroupToBG(*(itr_team[BG_TEAM_ALLIANCE]), arena, ALLIANCE); - InviteGroupToBG(*(itr_team[BG_TEAM_HORDE]), arena, HORDE); + InviteGroupToBG(*(itr_team[TEAM_INDEX_ALLIANCE]), arena, ALLIANCE); + InviteGroupToBG(*(itr_team[TEAM_INDEX_HORDE]), arena, HORDE); DEBUG_LOG("Starting rated arena match!"); diff --git a/src/game/BattleGround/BattleGroundMgr.h b/src/game/BattleGround/BattleGroundMgr.h index 382add6eafb..e2fba9746e7 100644 --- a/src/game/BattleGround/BattleGroundMgr.h +++ b/src/game/BattleGround/BattleGroundMgr.h @@ -128,12 +128,12 @@ class BattleGroundQueue }; // one selection pool for horde, other one for alliance - SelectionPool m_SelectionPools[BG_TEAMS_COUNT]; + SelectionPool m_SelectionPools[PVP_TEAM_COUNT]; bool InviteGroupToBG(GroupQueueInfo* ginfo, BattleGround* bg, Team side); - uint32 m_WaitTimes[BG_TEAMS_COUNT][MAX_BATTLEGROUND_BRACKETS][COUNT_OF_PLAYERS_TO_AVERAGE_WAIT_TIME]; - uint32 m_WaitTimeLastPlayer[BG_TEAMS_COUNT][MAX_BATTLEGROUND_BRACKETS]; - uint32 m_SumOfWaitTimes[BG_TEAMS_COUNT][MAX_BATTLEGROUND_BRACKETS]; + uint32 m_WaitTimes[PVP_TEAM_COUNT][MAX_BATTLEGROUND_BRACKETS][COUNT_OF_PLAYERS_TO_AVERAGE_WAIT_TIME]; + uint32 m_WaitTimeLastPlayer[PVP_TEAM_COUNT][MAX_BATTLEGROUND_BRACKETS]; + uint32 m_SumOfWaitTimes[PVP_TEAM_COUNT][MAX_BATTLEGROUND_BRACKETS]; }; /* diff --git a/src/game/BattleGround/BattleGroundWS.cpp b/src/game/BattleGround/BattleGroundWS.cpp index 15e8059890f..82ef415a323 100644 --- a/src/game/BattleGround/BattleGroundWS.cpp +++ b/src/game/BattleGround/BattleGroundWS.cpp @@ -42,52 +42,52 @@ void BattleGroundWS::Update(uint32 diff) if (GetStatus() == STATUS_IN_PROGRESS) { - if (m_FlagState[BG_TEAM_ALLIANCE] == BG_WS_FLAG_STATE_WAIT_RESPAWN) + if (m_FlagState[TEAM_INDEX_ALLIANCE] == BG_WS_FLAG_STATE_WAIT_RESPAWN) { - m_FlagsTimer[BG_TEAM_ALLIANCE] -= diff; + m_FlagsTimer[TEAM_INDEX_ALLIANCE] -= diff; - if (m_FlagsTimer[BG_TEAM_ALLIANCE] < 0) + if (m_FlagsTimer[TEAM_INDEX_ALLIANCE] < 0) { - m_FlagsTimer[BG_TEAM_ALLIANCE] = 0; + m_FlagsTimer[TEAM_INDEX_ALLIANCE] = 0; RespawnFlag(ALLIANCE, true); } } - if (m_FlagState[BG_TEAM_ALLIANCE] == BG_WS_FLAG_STATE_ON_GROUND) + if (m_FlagState[TEAM_INDEX_ALLIANCE] == BG_WS_FLAG_STATE_ON_GROUND) { - m_FlagsDropTimer[BG_TEAM_ALLIANCE] -= diff; + m_FlagsDropTimer[TEAM_INDEX_ALLIANCE] -= diff; - if (m_FlagsDropTimer[BG_TEAM_ALLIANCE] < 0) + if (m_FlagsDropTimer[TEAM_INDEX_ALLIANCE] < 0) { - m_FlagsDropTimer[BG_TEAM_ALLIANCE] = 0; + m_FlagsDropTimer[TEAM_INDEX_ALLIANCE] = 0; RespawnDroppedFlag(ALLIANCE); } } - if (m_FlagState[BG_TEAM_HORDE] == BG_WS_FLAG_STATE_WAIT_RESPAWN) + if (m_FlagState[TEAM_INDEX_HORDE] == BG_WS_FLAG_STATE_WAIT_RESPAWN) { - m_FlagsTimer[BG_TEAM_HORDE] -= diff; + m_FlagsTimer[TEAM_INDEX_HORDE] -= diff; - if (m_FlagsTimer[BG_TEAM_HORDE] < 0) + if (m_FlagsTimer[TEAM_INDEX_HORDE] < 0) { - m_FlagsTimer[BG_TEAM_HORDE] = 0; + m_FlagsTimer[TEAM_INDEX_HORDE] = 0; RespawnFlag(HORDE, true); } } - if (m_FlagState[BG_TEAM_HORDE] == BG_WS_FLAG_STATE_ON_GROUND) + if (m_FlagState[TEAM_INDEX_HORDE] == BG_WS_FLAG_STATE_ON_GROUND) { - m_FlagsDropTimer[BG_TEAM_HORDE] -= diff; + m_FlagsDropTimer[TEAM_INDEX_HORDE] -= diff; - if (m_FlagsDropTimer[BG_TEAM_HORDE] < 0) + if (m_FlagsDropTimer[TEAM_INDEX_HORDE] < 0) { - m_FlagsDropTimer[BG_TEAM_HORDE] = 0; + m_FlagsDropTimer[TEAM_INDEX_HORDE] = 0; RespawnDroppedFlag(HORDE); } } if (m_EndTimer <= diff) { - if (m_TeamScores[BG_TEAM_ALLIANCE] > m_TeamScores[BG_TEAM_HORDE]) + if (m_TeamScores[TEAM_INDEX_ALLIANCE] > m_TeamScores[TEAM_INDEX_HORDE]) EndBattleGround(ALLIANCE); - else if (m_TeamScores[BG_TEAM_ALLIANCE] < m_TeamScores[BG_TEAM_HORDE]) + else if (m_TeamScores[TEAM_INDEX_ALLIANCE] < m_TeamScores[TEAM_INDEX_HORDE]) EndBattleGround(HORDE); else { @@ -135,13 +135,13 @@ void BattleGroundWS::RespawnFlag(Team team, bool captured) if (team == ALLIANCE) { DEBUG_LOG("Respawn Alliance flag"); - m_FlagState[BG_TEAM_ALLIANCE] = BG_WS_FLAG_STATE_ON_BASE; + m_FlagState[TEAM_INDEX_ALLIANCE] = BG_WS_FLAG_STATE_ON_BASE; SpawnEvent(WS_EVENT_FLAG_A, 0, true); } else { DEBUG_LOG("Respawn Horde flag"); - m_FlagState[BG_TEAM_HORDE] = BG_WS_FLAG_STATE_ON_BASE; + m_FlagState[TEAM_INDEX_HORDE] = BG_WS_FLAG_STATE_ON_BASE; SpawnEvent(WS_EVENT_FLAG_H, 0, true); } @@ -191,11 +191,11 @@ void BattleGroundWS::EventPlayerCapturedFlag(Player* source) return; ClearHordeFlagCarrier(); // must be before aura remove to prevent 2 events (drop+capture) at the same time // horde flag in base (but not respawned yet) - m_FlagState[BG_TEAM_HORDE] = BG_WS_FLAG_STATE_WAIT_RESPAWN; + m_FlagState[TEAM_INDEX_HORDE] = BG_WS_FLAG_STATE_WAIT_RESPAWN; // Drop Horde Flag from Player source->RemoveAurasDueToSpell(BG_WS_SPELL_WARSONG_FLAG); - if (m_TeamScores[BG_TEAM_ALLIANCE] < BG_WS_MAX_TEAM_SCORE) - m_TeamScores[BG_TEAM_ALLIANCE] += 1; + if (m_TeamScores[TEAM_INDEX_ALLIANCE] < BG_WS_MAX_TEAM_SCORE) + m_TeamScores[TEAM_INDEX_ALLIANCE] += 1; PlaySoundToAll(BG_WS_SOUND_FLAG_CAPTURED_ALLIANCE); RewardReputationToTeam(890, m_ReputationCapture, ALLIANCE); } @@ -205,11 +205,11 @@ void BattleGroundWS::EventPlayerCapturedFlag(Player* source) return; ClearAllianceFlagCarrier(); // must be before aura remove to prevent 2 events (drop+capture) at the same time // alliance flag in base (but not respawned yet) - m_FlagState[BG_TEAM_ALLIANCE] = BG_WS_FLAG_STATE_WAIT_RESPAWN; + m_FlagState[TEAM_INDEX_ALLIANCE] = BG_WS_FLAG_STATE_WAIT_RESPAWN; // Drop Alliance Flag from Player source->RemoveAurasDueToSpell(BG_WS_SPELL_SILVERWING_FLAG); - if (m_TeamScores[BG_TEAM_HORDE] < BG_WS_MAX_TEAM_SCORE) - m_TeamScores[BG_TEAM_HORDE] += 1; + if (m_TeamScores[TEAM_INDEX_HORDE] < BG_WS_MAX_TEAM_SCORE) + m_TeamScores[TEAM_INDEX_HORDE] += 1; PlaySoundToAll(BG_WS_SOUND_FLAG_CAPTURED_HORDE); RewardReputationToTeam(889, m_ReputationCapture, HORDE); } @@ -231,9 +231,9 @@ void BattleGroundWS::EventPlayerCapturedFlag(Player* source) UpdatePlayerScore(source, SCORE_FLAG_CAPTURES, 1); // +1 flag captures Team winner = TEAM_NONE; - if (m_TeamScores[BG_TEAM_ALLIANCE] == BG_WS_MAX_TEAM_SCORE) + if (m_TeamScores[TEAM_INDEX_ALLIANCE] == BG_WS_MAX_TEAM_SCORE) winner = ALLIANCE; - else if (m_TeamScores[BG_TEAM_HORDE] == BG_WS_MAX_TEAM_SCORE) + else if (m_TeamScores[TEAM_INDEX_HORDE] == BG_WS_MAX_TEAM_SCORE) winner = HORDE; if (winner) @@ -290,7 +290,7 @@ void BattleGroundWS::EventPlayerDroppedFlag(Player* source) { ClearHordeFlagCarrier(); source->RemoveAurasDueToSpell(BG_WS_SPELL_WARSONG_FLAG); - m_FlagState[BG_TEAM_HORDE] = BG_WS_FLAG_STATE_ON_GROUND; + m_FlagState[TEAM_INDEX_HORDE] = BG_WS_FLAG_STATE_ON_GROUND; source->CastSpell(source, BG_WS_SPELL_WARSONG_FLAG_DROPPED, true); set = true; } @@ -303,7 +303,7 @@ void BattleGroundWS::EventPlayerDroppedFlag(Player* source) { ClearAllianceFlagCarrier(); source->RemoveAurasDueToSpell(BG_WS_SPELL_SILVERWING_FLAG); - m_FlagState[BG_TEAM_ALLIANCE] = BG_WS_FLAG_STATE_ON_GROUND; + m_FlagState[TEAM_INDEX_ALLIANCE] = BG_WS_FLAG_STATE_ON_GROUND; source->CastSpell(source, BG_WS_SPELL_SILVERWING_FLAG_DROPPED, true); set = true; } @@ -348,7 +348,7 @@ void BattleGroundWS::EventPlayerClickedOnFlag(Player* source, GameObject* target PlaySoundToAll(BG_WS_SOUND_ALLIANCE_FLAG_PICKED_UP); SpawnEvent(WS_EVENT_FLAG_A, 0, false); SetAllianceFlagCarrier(source->GetObjectGuid()); - m_FlagState[BG_TEAM_ALLIANCE] = BG_WS_FLAG_STATE_ON_PLAYER; + m_FlagState[TEAM_INDEX_ALLIANCE] = BG_WS_FLAG_STATE_ON_PLAYER; // update world state to show correct flag carrier UpdateFlagState(HORDE, BG_WS_FLAG_STATE_ON_PLAYER); UpdateWorldState(BG_WS_FLAG_UNK_ALLIANCE, 1); @@ -364,7 +364,7 @@ void BattleGroundWS::EventPlayerClickedOnFlag(Player* source, GameObject* target PlaySoundToAll(BG_WS_SOUND_HORDE_FLAG_PICKED_UP); SpawnEvent(WS_EVENT_FLAG_H, 0, false); SetHordeFlagCarrier(source->GetObjectGuid()); - m_FlagState[BG_TEAM_HORDE] = BG_WS_FLAG_STATE_ON_PLAYER; + m_FlagState[TEAM_INDEX_HORDE] = BG_WS_FLAG_STATE_ON_PLAYER; // update world state to show correct flag carrier UpdateFlagState(ALLIANCE, BG_WS_FLAG_STATE_ON_PLAYER); UpdateWorldState(BG_WS_FLAG_UNK_HORDE, 1); @@ -391,7 +391,7 @@ void BattleGroundWS::EventPlayerClickedOnFlag(Player* source, GameObject* target SpawnEvent(WS_EVENT_FLAG_A, 0, false); SetAllianceFlagCarrier(source->GetObjectGuid()); source->CastSpell(source, BG_WS_SPELL_SILVERWING_FLAG, true); - m_FlagState[BG_TEAM_ALLIANCE] = BG_WS_FLAG_STATE_ON_PLAYER; + m_FlagState[TEAM_INDEX_ALLIANCE] = BG_WS_FLAG_STATE_ON_PLAYER; UpdateFlagState(HORDE, BG_WS_FLAG_STATE_ON_PLAYER); UpdateWorldState(BG_WS_FLAG_UNK_ALLIANCE, 1); } @@ -419,7 +419,7 @@ void BattleGroundWS::EventPlayerClickedOnFlag(Player* source, GameObject* target SpawnEvent(WS_EVENT_FLAG_H, 0, false); SetHordeFlagCarrier(source->GetObjectGuid()); source->CastSpell(source, BG_WS_SPELL_WARSONG_FLAG, true); - m_FlagState[BG_TEAM_HORDE] = BG_WS_FLAG_STATE_ON_PLAYER; + m_FlagState[TEAM_INDEX_HORDE] = BG_WS_FLAG_STATE_ON_PLAYER; UpdateFlagState(ALLIANCE, BG_WS_FLAG_STATE_ON_PLAYER); UpdateWorldState(BG_WS_FLAG_UNK_HORDE, 1); } @@ -472,9 +472,9 @@ void BattleGroundWS::UpdateFlagState(Team team, uint32 value) void BattleGroundWS::UpdateTeamScore(Team team) { if (team == ALLIANCE) - UpdateWorldState(BG_WS_FLAG_CAPTURES_ALLIANCE, m_TeamScores[BG_TEAM_ALLIANCE]); + UpdateWorldState(BG_WS_FLAG_CAPTURES_ALLIANCE, m_TeamScores[TEAM_INDEX_ALLIANCE]); else - UpdateWorldState(BG_WS_FLAG_CAPTURES_HORDE, m_TeamScores[BG_TEAM_HORDE]); + UpdateWorldState(BG_WS_FLAG_CAPTURES_HORDE, m_TeamScores[TEAM_INDEX_HORDE]); } void BattleGroundWS::HandleAreaTrigger(Player* source, uint32 trigger) @@ -495,12 +495,12 @@ void BattleGroundWS::HandleAreaTrigger(Player* source, uint32 trigger) case 3709: // Horde elixir of berserk spawn break; case 3646: // Alliance Flag spawn - if (m_FlagState[BG_TEAM_HORDE] && !m_FlagState[BG_TEAM_ALLIANCE]) + if (m_FlagState[TEAM_INDEX_HORDE] && !m_FlagState[TEAM_INDEX_ALLIANCE]) if (GetHordeFlagCarrierGuid() == source->GetObjectGuid()) EventPlayerCapturedFlag(source); break; case 3647: // Horde Flag spawn - if (m_FlagState[BG_TEAM_ALLIANCE] && !m_FlagState[BG_TEAM_HORDE]) + if (m_FlagState[TEAM_INDEX_ALLIANCE] && !m_FlagState[TEAM_INDEX_HORDE]) if (GetAllianceFlagCarrierGuid() == source->GetObjectGuid()) EventPlayerCapturedFlag(source); break; @@ -526,7 +526,7 @@ void BattleGroundWS::Reset() m_ActiveEvents[WS_EVENT_FLAG_A] = BG_EVENT_NONE; m_ActiveEvents[WS_EVENT_FLAG_H] = BG_EVENT_NONE; - for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i) + for (uint8 i = 0; i < PVP_TEAM_COUNT; ++i) { m_DroppedFlagGuid[i].Clear(); m_FlagState[i] = BG_WS_FLAG_STATE_ON_BASE; @@ -614,31 +614,31 @@ WorldSafeLocsEntry const* BattleGroundWS::GetClosestGraveYard(Player* player) void BattleGroundWS::FillInitialWorldStates(WorldPacket& data, uint32& count) { - FillInitialWorldState(data, count, BG_WS_FLAG_CAPTURES_ALLIANCE, m_TeamScores[BG_TEAM_ALLIANCE]); - FillInitialWorldState(data, count, BG_WS_FLAG_CAPTURES_HORDE, m_TeamScores[BG_TEAM_HORDE]); + FillInitialWorldState(data, count, BG_WS_FLAG_CAPTURES_ALLIANCE, m_TeamScores[TEAM_INDEX_ALLIANCE]); + FillInitialWorldState(data, count, BG_WS_FLAG_CAPTURES_HORDE, m_TeamScores[TEAM_INDEX_HORDE]); - if (m_FlagState[BG_TEAM_ALLIANCE] == BG_WS_FLAG_STATE_ON_GROUND) + if (m_FlagState[TEAM_INDEX_ALLIANCE] == BG_WS_FLAG_STATE_ON_GROUND) FillInitialWorldState(data, count, BG_WS_FLAG_UNK_ALLIANCE, -1); - else if (m_FlagState[BG_TEAM_ALLIANCE] == BG_WS_FLAG_STATE_ON_PLAYER) + else if (m_FlagState[TEAM_INDEX_ALLIANCE] == BG_WS_FLAG_STATE_ON_PLAYER) FillInitialWorldState(data, count, BG_WS_FLAG_UNK_ALLIANCE, 1); else FillInitialWorldState(data, count, BG_WS_FLAG_UNK_ALLIANCE, 0); - if (m_FlagState[BG_TEAM_HORDE] == BG_WS_FLAG_STATE_ON_GROUND) + if (m_FlagState[TEAM_INDEX_HORDE] == BG_WS_FLAG_STATE_ON_GROUND) FillInitialWorldState(data, count, BG_WS_FLAG_UNK_HORDE, -1); - else if (m_FlagState[BG_TEAM_HORDE] == BG_WS_FLAG_STATE_ON_PLAYER) + else if (m_FlagState[TEAM_INDEX_HORDE] == BG_WS_FLAG_STATE_ON_PLAYER) FillInitialWorldState(data, count, BG_WS_FLAG_UNK_HORDE, 1); else FillInitialWorldState(data, count, BG_WS_FLAG_UNK_HORDE, 0); FillInitialWorldState(data, count, BG_WS_FLAG_CAPTURES_MAX, BG_WS_MAX_TEAM_SCORE); - if (m_FlagState[BG_TEAM_HORDE] == BG_WS_FLAG_STATE_ON_PLAYER) + if (m_FlagState[TEAM_INDEX_HORDE] == BG_WS_FLAG_STATE_ON_PLAYER) FillInitialWorldState(data, count, BG_WS_FLAG_STATE_HORDE, 2); else FillInitialWorldState(data, count, BG_WS_FLAG_STATE_HORDE, 1); - if (m_FlagState[BG_TEAM_ALLIANCE] == BG_WS_FLAG_STATE_ON_PLAYER) + if (m_FlagState[TEAM_INDEX_ALLIANCE] == BG_WS_FLAG_STATE_ON_PLAYER) FillInitialWorldState(data, count, BG_WS_FLAG_STATE_ALLIANCE, 2); else FillInitialWorldState(data, count, BG_WS_FLAG_STATE_ALLIANCE, 1); diff --git a/src/game/BattleGround/BattleGroundWS.h b/src/game/BattleGround/BattleGroundWS.h index 5185ba32d09..077b831dbd6 100644 --- a/src/game/BattleGround/BattleGroundWS.h +++ b/src/game/BattleGround/BattleGroundWS.h @@ -152,10 +152,10 @@ class BattleGroundWS : public BattleGround ObjectGuid m_flagCarrierAlliance; ObjectGuid m_flagCarrierHorde; - ObjectGuid m_DroppedFlagGuid[BG_TEAMS_COUNT]; - uint8 m_FlagState[BG_TEAMS_COUNT]; - int32 m_FlagsTimer[BG_TEAMS_COUNT]; - int32 m_FlagsDropTimer[BG_TEAMS_COUNT]; + ObjectGuid m_DroppedFlagGuid[PVP_TEAM_COUNT]; + uint8 m_FlagState[PVP_TEAM_COUNT]; + int32 m_FlagsTimer[PVP_TEAM_COUNT]; + int32 m_FlagsDropTimer[PVP_TEAM_COUNT]; uint32 m_ReputationCapture; uint32 m_HonorWinKills; diff --git a/src/game/SharedDefines.h b/src/game/SharedDefines.h index 4ff6039e9ba..26dd5f4ea2d 100644 --- a/src/game/SharedDefines.h +++ b/src/game/SharedDefines.h @@ -611,6 +611,15 @@ enum Team ALLIANCE = 469, }; +enum PvpTeamIndex +{ + TEAM_INDEX_ALLIANCE = 0, + TEAM_INDEX_HORDE = 1, + TEAM_INDEX_NEUTRAL = 2, +}; + +#define PVP_TEAM_COUNT 2 + enum SpellEffects { SPELL_EFFECT_NONE = 0, diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 01a0511c77f..28bc31beeeb 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 "12759" + #define REVISION_NR "12760" #endif // __REVISION_NR_H__