Core/Packet: WorldState (#9435)
* Core/Packet: WorldState * Test * WRONG Co-authored-by: acidmanifesto <joshua.lee.betts@gmail.com>
This commit is contained in:
committed by
GitHub
parent
7209f65896
commit
e57582accb
@@ -43,6 +43,7 @@
|
|||||||
#include "Util.h"
|
#include "Util.h"
|
||||||
#include "World.h"
|
#include "World.h"
|
||||||
#include "WorldPacket.h"
|
#include "WorldPacket.h"
|
||||||
|
#include "WorldStatePackets.h"
|
||||||
|
|
||||||
namespace Acore
|
namespace Acore
|
||||||
{
|
{
|
||||||
@@ -625,13 +626,13 @@ void Battleground::SetTeamStartLoc(TeamId teamId, float X, float Y, float Z, flo
|
|||||||
m_TeamStartLocO[teamId] = O;
|
m_TeamStartLocO[teamId] = O;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Battleground::SendPacketToAll(WorldPacket* packet)
|
void Battleground::SendPacketToAll(WorldPacket const* packet)
|
||||||
{
|
{
|
||||||
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
|
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
|
||||||
itr->second->GetSession()->SendPacket(packet);
|
itr->second->GetSession()->SendPacket(packet);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Battleground::SendPacketToTeam(TeamId teamId, WorldPacket* packet, Player* sender, bool self)
|
void Battleground::SendPacketToTeam(TeamId teamId, WorldPacket const* packet, Player* sender, bool self)
|
||||||
{
|
{
|
||||||
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
|
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
|
||||||
if (itr->second->GetBgTeamId() == teamId && (self || sender != itr->second))
|
if (itr->second->GetBgTeamId() == teamId && (self || sender != itr->second))
|
||||||
@@ -719,18 +720,12 @@ uint32 Battleground::GetRealRepFactionForPlayer(uint32 factionId, Player* player
|
|||||||
return factionId;
|
return factionId;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Battleground::UpdateWorldState(uint32 Field, uint32 Value)
|
void Battleground::UpdateWorldState(uint32 variable, uint32 value)
|
||||||
{
|
{
|
||||||
WorldPacket data;
|
WorldPackets::WorldState::UpdateWorldState worldstate;
|
||||||
sBattlegroundMgr->BuildUpdateWorldStatePacket(&data, Field, Value);
|
worldstate.VariableID = variable;
|
||||||
SendPacketToAll(&data);
|
worldstate.Value = value;
|
||||||
}
|
SendPacketToAll(worldstate.Write());
|
||||||
|
|
||||||
void Battleground::UpdateWorldStateForPlayer(uint32 Field, uint32 Value, Player* player)
|
|
||||||
{
|
|
||||||
WorldPacket data;
|
|
||||||
sBattlegroundMgr->BuildUpdateWorldStatePacket(&data, Field, Value);
|
|
||||||
player->GetSession()->SendPacket(&data);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Battleground::EndBattleground(TeamId winnerTeamId)
|
void Battleground::EndBattleground(TeamId winnerTeamId)
|
||||||
|
|||||||
@@ -477,8 +477,8 @@ public:
|
|||||||
// Packet Transfer
|
// Packet Transfer
|
||||||
// method that should fill worldpacket with actual world states (not yet implemented for all battlegrounds!)
|
// method that should fill worldpacket with actual world states (not yet implemented for all battlegrounds!)
|
||||||
virtual void FillInitialWorldStates(WorldPacket& /*data*/) {}
|
virtual void FillInitialWorldStates(WorldPacket& /*data*/) {}
|
||||||
void SendPacketToTeam(TeamId teamId, WorldPacket* packet, Player* sender = nullptr, bool self = true);
|
void SendPacketToTeam(TeamId teamId, WorldPacket const* packet, Player* sender = nullptr, bool self = true);
|
||||||
void SendPacketToAll(WorldPacket* packet);
|
void SendPacketToAll(WorldPacket const* packet);
|
||||||
void YellToAll(Creature* creature, const char* text, uint32 language);
|
void YellToAll(Creature* creature, const char* text, uint32 language);
|
||||||
|
|
||||||
template<class Do>
|
template<class Do>
|
||||||
@@ -491,8 +491,7 @@ public:
|
|||||||
void RewardReputationToTeam(uint32 factionId, uint32 reputation, TeamId teamId);
|
void RewardReputationToTeam(uint32 factionId, uint32 reputation, TeamId teamId);
|
||||||
uint32 GetRealRepFactionForPlayer(uint32 factionId, Player* player);
|
uint32 GetRealRepFactionForPlayer(uint32 factionId, Player* player);
|
||||||
|
|
||||||
void UpdateWorldState(uint32 Field, uint32 Value);
|
void UpdateWorldState(uint32 variable, uint32 value);
|
||||||
void UpdateWorldStateForPlayer(uint32 Field, uint32 Value, Player* player);
|
|
||||||
|
|
||||||
virtual void EndBattleground(TeamId winnerTeamId);
|
virtual void EndBattleground(TeamId winnerTeamId);
|
||||||
void BlockMovement(Player* player);
|
void BlockMovement(Player* player);
|
||||||
|
|||||||
@@ -384,13 +384,6 @@ void BattlegroundMgr::BuildGroupJoinedBattlegroundPacket(WorldPacket* data, Grou
|
|||||||
*data << uint64(0); // player guid
|
*data << uint64(0); // player guid
|
||||||
}
|
}
|
||||||
|
|
||||||
void BattlegroundMgr::BuildUpdateWorldStatePacket(WorldPacket* data, uint32 field, uint32 value)
|
|
||||||
{
|
|
||||||
data->Initialize(SMSG_UPDATE_WORLD_STATE, 4 + 4);
|
|
||||||
*data << uint32(field);
|
|
||||||
*data << uint32(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
void BattlegroundMgr::BuildPlaySoundPacket(WorldPacket* data, uint32 soundid)
|
void BattlegroundMgr::BuildPlaySoundPacket(WorldPacket* data, uint32 soundid)
|
||||||
{
|
{
|
||||||
data->Initialize(SMSG_PLAY_SOUND, 4);
|
data->Initialize(SMSG_PLAY_SOUND, 4);
|
||||||
|
|||||||
@@ -75,7 +75,6 @@ public:
|
|||||||
void BuildPlayerLeftBattlegroundPacket(WorldPacket* data, ObjectGuid guid);
|
void BuildPlayerLeftBattlegroundPacket(WorldPacket* data, ObjectGuid guid);
|
||||||
void BuildBattlegroundListPacket(WorldPacket* data, ObjectGuid guid, Player* player, BattlegroundTypeId bgTypeId, uint8 fromWhere);
|
void BuildBattlegroundListPacket(WorldPacket* data, ObjectGuid guid, Player* player, BattlegroundTypeId bgTypeId, uint8 fromWhere);
|
||||||
void BuildGroupJoinedBattlegroundPacket(WorldPacket* data, GroupJoinBattlegroundResult result);
|
void BuildGroupJoinedBattlegroundPacket(WorldPacket* data, GroupJoinBattlegroundResult result);
|
||||||
void BuildUpdateWorldStatePacket(WorldPacket* data, uint32 field, uint32 value);
|
|
||||||
void BuildPvpLogDataPacket(WorldPacket* data, Battleground* bg);
|
void BuildPvpLogDataPacket(WorldPacket* data, Battleground* bg);
|
||||||
void BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, uint8 queueSlot, uint8 statusId, uint32 time1, uint32 time2, uint8 arenaType, TeamId teamId, bool isRated = false, BattlegroundTypeId forceBgTypeId = BATTLEGROUND_TYPE_NONE);
|
void BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, uint8 queueSlot, uint8 statusId, uint32 time1, uint32 time2, uint8 arenaType, TeamId teamId, bool isRated = false, BattlegroundTypeId forceBgTypeId = BATTLEGROUND_TYPE_NONE);
|
||||||
void BuildPlaySoundPacket(WorldPacket* data, uint32 soundid);
|
void BuildPlaySoundPacket(WorldPacket* data, uint32 soundid);
|
||||||
|
|||||||
@@ -134,14 +134,14 @@ void BattlegroundEY::UpdatePointsState()
|
|||||||
const BattlegroundPlayerMap& bgPlayerMap = GetPlayers();
|
const BattlegroundPlayerMap& bgPlayerMap = GetPlayers();
|
||||||
for (BattlegroundPlayerMap::const_iterator itr = bgPlayerMap.begin(); itr != bgPlayerMap.end(); ++itr)
|
for (BattlegroundPlayerMap::const_iterator itr = bgPlayerMap.begin(); itr != bgPlayerMap.end(); ++itr)
|
||||||
{
|
{
|
||||||
UpdateWorldStateForPlayer(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_DONT_SHOW, itr->second);
|
itr->second->SendUpdateWorldState(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_DONT_SHOW);
|
||||||
for (uint8 point = 0; point < EY_POINTS_MAX; ++point)
|
for (uint8 point = 0; point < EY_POINTS_MAX; ++point)
|
||||||
if (GameObject* pointObject = pointsVec[point])
|
if (GameObject* pointObject = pointsVec[point])
|
||||||
if (itr->second->CanCaptureTowerPoint() && itr->second->IsWithinDistInMap(pointObject, BG_EY_POINT_RADIUS))
|
if (itr->second->CanCaptureTowerPoint() && itr->second->IsWithinDistInMap(pointObject, BG_EY_POINT_RADIUS))
|
||||||
{
|
{
|
||||||
UpdateWorldStateForPlayer(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_SHOW, itr->second);
|
itr->second->SendUpdateWorldState(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_SHOW);
|
||||||
UpdateWorldStateForPlayer(PROGRESS_BAR_PERCENT_GREY, BG_EY_PROGRESS_BAR_PERCENT_GREY, itr->second);
|
itr->second->SendUpdateWorldState(PROGRESS_BAR_PERCENT_GREY, BG_EY_PROGRESS_BAR_PERCENT_GREY);
|
||||||
UpdateWorldStateForPlayer(PROGRESS_BAR_STATUS, _capturePointInfo[point]._barStatus, itr->second);
|
itr->second->SendUpdateWorldState(PROGRESS_BAR_STATUS, _capturePointInfo[point]._barStatus);
|
||||||
++_capturePointInfo[point]._playersCount[itr->second->GetTeamId()];
|
++_capturePointInfo[point]._playersCount[itr->second->GetTeamId()];
|
||||||
|
|
||||||
// Xinef: ugly hax... area trigger is no longer called by client...
|
// Xinef: ugly hax... area trigger is no longer called by client...
|
||||||
|
|||||||
@@ -2175,7 +2175,7 @@ public:
|
|||||||
void DeleteEquipmentSet(uint64 setGuid);
|
void DeleteEquipmentSet(uint64 setGuid);
|
||||||
|
|
||||||
void SendInitWorldStates(uint32 zone, uint32 area);
|
void SendInitWorldStates(uint32 zone, uint32 area);
|
||||||
void SendUpdateWorldState(uint32 Field, uint32 Value);
|
void SendUpdateWorldState(uint32 variable, uint32 value) const;
|
||||||
void SendDirectMessage(WorldPacket const* data) const;
|
void SendDirectMessage(WorldPacket const* data) const;
|
||||||
void SendBGWeekendWorldStates();
|
void SendBGWeekendWorldStates();
|
||||||
void SendBattlefieldWorldStates();
|
void SendBattlefieldWorldStates();
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
#include "UpdateFieldFlags.h"
|
#include "UpdateFieldFlags.h"
|
||||||
#include "Vehicle.h"
|
#include "Vehicle.h"
|
||||||
#include "WeatherMgr.h"
|
#include "WeatherMgr.h"
|
||||||
|
#include "WorldStatePackets.h"
|
||||||
|
|
||||||
// TODO: this import is not necessary for compilation and marked as unused by the IDE
|
// TODO: this import is not necessary for compilation and marked as unused by the IDE
|
||||||
// however, for some reasons removing it would cause a damn linking issue
|
// however, for some reasons removing it would cause a damn linking issue
|
||||||
@@ -2262,12 +2263,12 @@ void Player::UpdateSpecCount(uint8 count)
|
|||||||
SendTalentsInfoData(false);
|
SendTalentsInfoData(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Player::SendUpdateWorldState(uint32 Field, uint32 Value)
|
void Player::SendUpdateWorldState(uint32 variable, uint32 value) const
|
||||||
{
|
{
|
||||||
WorldPacket data(SMSG_UPDATE_WORLD_STATE, 8);
|
WorldPackets::WorldState::UpdateWorldState worldstate;
|
||||||
data << Field;
|
worldstate.VariableID = variable;
|
||||||
data << Value;
|
worldstate.Value = value;
|
||||||
GetSession()->SendPacket(&data);
|
SendDirectMessage(worldstate.Write());
|
||||||
}
|
}
|
||||||
|
|
||||||
void Player::ProcessTerrainStatusUpdate()
|
void Player::ProcessTerrainStatusUpdate()
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
#include "UnitAI.h"
|
#include "UnitAI.h"
|
||||||
#include "Util.h"
|
#include "Util.h"
|
||||||
#include "World.h"
|
#include "World.h"
|
||||||
#include "WorldPacket.h"
|
#include "WorldStatePackets.h"
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
|
||||||
GameEventMgr* GameEventMgr::instance()
|
GameEventMgr* GameEventMgr::instance()
|
||||||
@@ -1620,9 +1620,10 @@ void GameEventMgr::UpdateWorldStates(uint16 event_id, bool Activate)
|
|||||||
BattlemasterListEntry const* bl = sBattlemasterListStore.LookupEntry(bgTypeId);
|
BattlemasterListEntry const* bl = sBattlemasterListStore.LookupEntry(bgTypeId);
|
||||||
if (bl && bl->HolidayWorldStateId)
|
if (bl && bl->HolidayWorldStateId)
|
||||||
{
|
{
|
||||||
WorldPacket data;
|
WorldPackets::WorldState::UpdateWorldState worldstate;
|
||||||
sBattlegroundMgr->BuildUpdateWorldStatePacket(&data, bl->HolidayWorldStateId, Activate ? 1 : 0);
|
worldstate.VariableID = bl->HolidayWorldStateId;
|
||||||
sWorld->SendGlobalMessage(&data);
|
worldstate.Value = Activate ? 1 : 0;
|
||||||
|
sWorld->SendGlobalMessage(worldstate.Write());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
#ifndef AllPackets_h__
|
#ifndef AllPackets_h__
|
||||||
#define AllPackets_h__
|
#define AllPackets_h__
|
||||||
|
|
||||||
|
#include "WorldStatePackets.h"
|
||||||
#include "TotemPackets.h"
|
#include "TotemPackets.h"
|
||||||
#include "BankPackets.h"
|
#include "BankPackets.h"
|
||||||
#include "GuildPackets.h"
|
#include "GuildPackets.h"
|
||||||
|
|||||||
@@ -0,0 +1,46 @@
|
|||||||
|
/*
|
||||||
|
* This file is part of the AzerothCore Project. See AUTHORS file for Copyright information
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU Affero General Public License as published by the
|
||||||
|
* Free Software Foundation; either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
|
||||||
|
* more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "WorldStatePackets.h"
|
||||||
|
|
||||||
|
WorldPackets::WorldState::InitWorldStates::InitWorldStates() : ServerPacket(SMSG_INIT_WORLD_STATES, 4 + 4 + 4 + 2) { }
|
||||||
|
|
||||||
|
WorldPacket const* WorldPackets::WorldState::InitWorldStates::Write()
|
||||||
|
{
|
||||||
|
_worldPacket.reserve(4 + 4 + 4 + 2 + Worldstates.size() * 8);
|
||||||
|
|
||||||
|
_worldPacket << int32(MapID);
|
||||||
|
_worldPacket << int32(ZoneID);
|
||||||
|
_worldPacket << int32(AreaID);
|
||||||
|
|
||||||
|
_worldPacket << uint16(Worldstates.size());
|
||||||
|
for (WorldStateInfo const& wsi : Worldstates)
|
||||||
|
{
|
||||||
|
_worldPacket << int32(wsi.VariableID);
|
||||||
|
_worldPacket << int32(wsi.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
return &_worldPacket;
|
||||||
|
}
|
||||||
|
|
||||||
|
WorldPacket const* WorldPackets::WorldState::UpdateWorldState::Write()
|
||||||
|
{
|
||||||
|
_worldPacket << int32(VariableID);
|
||||||
|
_worldPacket << int32(Value);
|
||||||
|
|
||||||
|
return &_worldPacket;
|
||||||
|
}
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
* This file is part of the AzerothCore Project. See AUTHORS file for Copyright information
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU Affero General Public License as published by the
|
||||||
|
* Free Software Foundation; either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
|
||||||
|
* more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef WorldStatePackets_h__
|
||||||
|
#define WorldStatePackets_h__
|
||||||
|
|
||||||
|
#include "Packet.h"
|
||||||
|
|
||||||
|
namespace WorldPackets
|
||||||
|
{
|
||||||
|
namespace WorldState
|
||||||
|
{
|
||||||
|
class InitWorldStates final : public ServerPacket
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
struct WorldStateInfo
|
||||||
|
{
|
||||||
|
WorldStateInfo(int32 variableID, int32 value) : VariableID(variableID), Value(value) { }
|
||||||
|
|
||||||
|
int32 VariableID;
|
||||||
|
int32 Value;
|
||||||
|
};
|
||||||
|
|
||||||
|
InitWorldStates();
|
||||||
|
|
||||||
|
WorldPacket const* Write() override;
|
||||||
|
|
||||||
|
int32 MapID = 0;
|
||||||
|
int32 ZoneID = 0;
|
||||||
|
int32 AreaID = 0;
|
||||||
|
|
||||||
|
std::vector<WorldStateInfo> Worldstates;
|
||||||
|
};
|
||||||
|
|
||||||
|
class UpdateWorldState final : public ServerPacket
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
UpdateWorldState() : ServerPacket(SMSG_UPDATE_WORLD_STATE, 4 + 4) { }
|
||||||
|
|
||||||
|
WorldPacket const* Write() override;
|
||||||
|
|
||||||
|
int32 VariableID = 0;
|
||||||
|
int32 Value = 0;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // WorldStatePackets_h__
|
||||||
@@ -542,9 +542,9 @@ public:
|
|||||||
virtual void SendWorldTextOptional(uint32 string_id, uint32 flag, ...) = 0;
|
virtual void SendWorldTextOptional(uint32 string_id, uint32 flag, ...) = 0;
|
||||||
virtual void SendGlobalText(const char* text, WorldSession* self) = 0;
|
virtual void SendGlobalText(const char* text, WorldSession* self) = 0;
|
||||||
virtual void SendGMText(uint32 string_id, ...) = 0;
|
virtual void SendGMText(uint32 string_id, ...) = 0;
|
||||||
virtual void SendGlobalMessage(WorldPacket* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
virtual void SendGlobalMessage(WorldPacket const* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
||||||
virtual void SendGlobalGMMessage(WorldPacket* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
virtual void SendGlobalGMMessage(WorldPacket const* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
||||||
virtual bool SendZoneMessage(uint32 zone, WorldPacket* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
virtual bool SendZoneMessage(uint32 zone, WorldPacket const* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
||||||
virtual void SendZoneText(uint32 zone, const char* text, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
virtual void SendZoneText(uint32 zone, const char* text, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL) = 0;
|
||||||
virtual void SendServerMessage(ServerMessageType type, const char* text = "", Player* player = nullptr) = 0;
|
virtual void SendServerMessage(ServerMessageType type, const char* text = "", Player* player = nullptr) = 0;
|
||||||
virtual bool IsShuttingDown() const = 0;
|
virtual bool IsShuttingDown() const = 0;
|
||||||
|
|||||||
@@ -2482,7 +2482,7 @@ void World::ForceGameEventUpdate()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Send a packet to all players (except self if mentioned)
|
/// Send a packet to all players (except self if mentioned)
|
||||||
void World::SendGlobalMessage(WorldPacket* packet, WorldSession* self, TeamId teamId)
|
void World::SendGlobalMessage(WorldPacket const* packet, WorldSession* self, TeamId teamId)
|
||||||
{
|
{
|
||||||
SessionMap::const_iterator itr;
|
SessionMap::const_iterator itr;
|
||||||
for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
|
for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
|
||||||
@@ -2499,7 +2499,7 @@ void World::SendGlobalMessage(WorldPacket* packet, WorldSession* self, TeamId te
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Send a packet to all GMs (except self if mentioned)
|
/// Send a packet to all GMs (except self if mentioned)
|
||||||
void World::SendGlobalGMMessage(WorldPacket* packet, WorldSession* self, TeamId teamId)
|
void World::SendGlobalGMMessage(WorldPacket const* packet, WorldSession* self, TeamId teamId)
|
||||||
{
|
{
|
||||||
SessionMap::iterator itr;
|
SessionMap::iterator itr;
|
||||||
for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
|
for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
|
||||||
@@ -2648,7 +2648,7 @@ void World::SendGlobalText(const char* text, WorldSession* self)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Send a packet to all players (or players selected team) in the zone (except self if mentioned)
|
/// Send a packet to all players (or players selected team) in the zone (except self if mentioned)
|
||||||
bool World::SendZoneMessage(uint32 zone, WorldPacket* packet, WorldSession* self, TeamId teamId)
|
bool World::SendZoneMessage(uint32 zone, WorldPacket const* packet, WorldSession* self, TeamId teamId)
|
||||||
{
|
{
|
||||||
bool foundPlayerToSend = false;
|
bool foundPlayerToSend = false;
|
||||||
SessionMap::const_iterator itr;
|
SessionMap::const_iterator itr;
|
||||||
|
|||||||
@@ -256,9 +256,9 @@ public:
|
|||||||
void SendWorldText(uint32 string_id, ...);
|
void SendWorldText(uint32 string_id, ...);
|
||||||
void SendGlobalText(const char* text, WorldSession* self);
|
void SendGlobalText(const char* text, WorldSession* self);
|
||||||
void SendGMText(uint32 string_id, ...);
|
void SendGMText(uint32 string_id, ...);
|
||||||
void SendGlobalMessage(WorldPacket* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
void SendGlobalMessage(WorldPacket const* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
||||||
void SendGlobalGMMessage(WorldPacket* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
void SendGlobalGMMessage(WorldPacket const* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
||||||
bool SendZoneMessage(uint32 zone, WorldPacket* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
bool SendZoneMessage(uint32 zone, WorldPacket const* packet, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
||||||
void SendZoneText(uint32 zone, const char* text, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
void SendZoneText(uint32 zone, const char* text, WorldSession* self = nullptr, TeamId teamId = TEAM_NEUTRAL);
|
||||||
void SendServerMessage(ServerMessageType type, const char* text = "", Player* player = nullptr);
|
void SendServerMessage(ServerMessageType type, const char* text = "", Player* player = nullptr);
|
||||||
|
|
||||||
|
|||||||
@@ -80,9 +80,9 @@ public:
|
|||||||
void SendWorldTextOptional(uint32 string_id, uint32 flag, ...) override {}
|
void SendWorldTextOptional(uint32 string_id, uint32 flag, ...) override {}
|
||||||
MOCK_METHOD(void, SendGlobalText, (const char* text, WorldSession* self), ());
|
MOCK_METHOD(void, SendGlobalText, (const char* text, WorldSession* self), ());
|
||||||
void SendGMText(uint32 string_id, ...) override {}
|
void SendGMText(uint32 string_id, ...) override {}
|
||||||
MOCK_METHOD(void, SendGlobalMessage, (WorldPacket* packet, WorldSession* self, TeamId teamId), ());
|
MOCK_METHOD(void, SendGlobalMessage, (WorldPacket const* packet, WorldSession* self, TeamId teamId), ());
|
||||||
MOCK_METHOD(void, SendGlobalGMMessage, (WorldPacket* packet, WorldSession* self, TeamId teamId), ());
|
MOCK_METHOD(void, SendGlobalGMMessage, (WorldPacket const* packet, WorldSession* self, TeamId teamId), ());
|
||||||
MOCK_METHOD(bool, SendZoneMessage, (uint32 zone, WorldPacket* packet, WorldSession* self, TeamId teamId), ());
|
MOCK_METHOD(bool, SendZoneMessage, (uint32 zone, WorldPacket const* packet, WorldSession* self, TeamId teamId), ());
|
||||||
MOCK_METHOD(void, SendZoneText, (uint32 zone, const char* text, WorldSession* self, TeamId teamId), ());
|
MOCK_METHOD(void, SendZoneText, (uint32 zone, const char* text, WorldSession* self, TeamId teamId), ());
|
||||||
MOCK_METHOD(void, SendServerMessage, (ServerMessageType type, const char* text, Player* player));
|
MOCK_METHOD(void, SendServerMessage, (ServerMessageType type, const char* text, Player* player));
|
||||||
MOCK_METHOD(bool, IsShuttingDown, (), (const));
|
MOCK_METHOD(bool, IsShuttingDown, (), (const));
|
||||||
|
|||||||
Reference in New Issue
Block a user