aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Battlegrounds/Battleground.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2015-04-17 00:06:24 +0200
committerShauren <shauren.trinity@gmail.com>2015-04-17 00:06:24 +0200
commit280a0b8e35ccf2fde55199938dffb2851892eaa2 (patch)
tree8a9a1541b4c592cac569910a3d4ca875057df7ec /src/server/game/Battlegrounds/Battleground.cpp
parent5c3d8c1e8788909181e7a5ded1592dae767d4807 (diff)
Core/PacketIO: Updated and enabled some battleground packets
Diffstat (limited to 'src/server/game/Battlegrounds/Battleground.cpp')
-rw-r--r--src/server/game/Battlegrounds/Battleground.cpp34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/server/game/Battlegrounds/Battleground.cpp b/src/server/game/Battlegrounds/Battleground.cpp
index 02050c8087b..d25d88ec389 100644
--- a/src/server/game/Battlegrounds/Battleground.cpp
+++ b/src/server/game/Battlegrounds/Battleground.cpp
@@ -177,7 +177,7 @@ Battleground::Battleground()
m_PrematureCountDown = false;
m_PrematureCountDownTimer = 0;
- m_Guid = 0;
+ m_queueId = 0;
m_HonorMode = BG_NORMAL;
@@ -527,12 +527,12 @@ inline void Battleground::_ProcessJoin(uint32 diff)
if (Player* player = ObjectAccessor::FindPlayer(itr->first))
{
// BG Status packet
- WorldPacket status;
- BattlegroundQueueTypeId bgQueueTypeId = sBattlegroundMgr->BGQueueTypeId(m_TypeID, GetArenaType());
+ BattlegroundQueueTypeId bgQueueTypeId = BattlegroundMgr::BGQueueTypeId(m_TypeID, GetArenaType());
uint32 queueSlot = player->GetBattlegroundQueueIndex(bgQueueTypeId);
- sBattlegroundMgr->BuildBattlegroundStatusPacket(&status, this, player, queueSlot, STATUS_IN_PROGRESS, player->GetBattlegroundQueueJoinTime(m_TypeID), GetElapsedTime(), GetArenaType());
- player->GetSession()->SendPacket(&status);
+ WorldPackets::Battleground::BattlefieldStatusActive battlefieldStatus;
+ sBattlegroundMgr->BuildBattlegroundStatusActive(&battlefieldStatus, this, player, queueSlot, player->GetBattlegroundQueueJoinTime(bgQueueTypeId), GetArenaType());
+ player->SendDirectMessage(battlefieldStatus.Write());
// Correctly display EnemyUnitFrame
player->SetByteValue(PLAYER_BYTES_3, PLAYER_BYTES_3_OFFSET_ARENA_FACTION, player->GetBGTeam());
@@ -885,9 +885,9 @@ void Battleground::EndBattleground(uint32 winner)
player->SendDirectMessage(pvpLogData.Write());
- WorldPacket data;
- sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_IN_PROGRESS, player->GetBattlegroundQueueJoinTime(GetTypeID()), GetElapsedTime(), GetArenaType());
- player->SendDirectMessage(&data);
+ WorldPackets::Battleground::BattlefieldStatusActive battlefieldStatus;
+ sBattlegroundMgr->BuildBattlegroundStatusActive(&battlefieldStatus, this, player, player->GetBattlegroundQueueIndex(bgQueueTypeId), player->GetBattlegroundQueueJoinTime(bgQueueTypeId), GetArenaType());
+ player->SendDirectMessage(battlefieldStatus.Write());
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_BATTLEGROUND, 1);
}
@@ -973,9 +973,9 @@ void Battleground::RemovePlayerAtLeave(ObjectGuid guid, bool Transport, bool Sen
if (SendPacket)
{
- WorldPacket data;
- sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_NONE, player->GetBattlegroundQueueJoinTime(bgTypeId), 0, m_ArenaType);
- player->SendDirectMessage(&data);
+ WorldPackets::Battleground::BattlefieldStatusNone battlefieldStatus;
+ sBattlegroundMgr->BuildBattlegroundStatusNone(&battlefieldStatus, player, player->GetBattlegroundQueueIndex(bgQueueTypeId), player->GetBattlegroundQueueJoinTime(bgQueueTypeId), m_ArenaType);
+ player->SendDirectMessage(battlefieldStatus.Write());
}
// this call is important, because player, when joins to battleground, this method is not called, so it must be called when leaving bg
@@ -1008,7 +1008,6 @@ void Battleground::RemovePlayerAtLeave(ObjectGuid guid, bool Transport, bool Sen
player->SetBattlegroundId(0, BATTLEGROUND_TYPE_NONE); // We're not in BG.
// reset destination bg team
player->SetBGTeam(0);
- player->RemoveBattlegroundQueueJoinTime(bgTypeId);
if (Transport)
player->TeleportToBGEntryPoint();
@@ -1093,8 +1092,9 @@ void Battleground::AddPlayer(Player* player)
BattlegroundQueueTypeId bgQueueTypeId = sBattlegroundMgr->BGQueueTypeId(m_TypeID, GetArenaType());
uint32 queueSlot = player->GetBattlegroundQueueIndex(bgQueueTypeId);
- sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player, queueSlot, STATUS_IN_PROGRESS, player->GetBattlegroundQueueJoinTime(m_TypeID), GetElapsedTime(), GetArenaType());
- player->GetSession()->SendPacket(&data);
+ WorldPackets::Battleground::BattlefieldStatusActive battlefieldStatus;
+ sBattlegroundMgr->BuildBattlegroundStatusActive(&battlefieldStatus, this, player, queueSlot, player->GetBattlegroundQueueJoinTime(bgQueueTypeId), GetArenaType());
+ player->SendDirectMessage(battlefieldStatus.Write());
player->RemoveAurasByType(SPELL_AURA_MOUNTED);
@@ -1832,9 +1832,9 @@ void Battleground::PlayerAddedToBGCheckIfBGIsRunning(Player* player)
BuildPvPLogDataPacket(pvpLogData);
player->SendDirectMessage(pvpLogData.Write());
- WorldPacket data;
- sBattlegroundMgr->BuildBattlegroundStatusPacket(&data, this, player, player->GetBattlegroundQueueIndex(bgQueueTypeId), STATUS_IN_PROGRESS, player->GetBattlegroundQueueJoinTime(GetTypeID()), GetElapsedTime(), GetArenaType());
- player->SendDirectMessage(&data);
+ WorldPackets::Battleground::BattlefieldStatusActive battlefieldStatus;
+ sBattlegroundMgr->BuildBattlegroundStatusActive(&battlefieldStatus, this, player, player->GetBattlegroundQueueIndex(bgQueueTypeId), player->GetBattlegroundQueueJoinTime(bgQueueTypeId), GetArenaType());
+ player->SendDirectMessage(battlefieldStatus.Write());
}
uint32 Battleground::GetAlivePlayersCountByTeam(uint32 Team) const