Core/NetworkIO: updated SMSG_UPDATE_WORLD_STATE, added SMSG_PVP_SEASON and added packet class for SMSG_INIT_WORLD_STATES

This commit is contained in:
joschiwald
2014-11-09 04:25:09 +01:00
parent e8576e5d71
commit 2fee7d195b
25 changed files with 348 additions and 137 deletions
+14 -12
View File
@@ -29,6 +29,7 @@
#include "ObjectAccessor.h"
#include "ObjectMgr.h"
#include "WorldPacket.h"
#include "WorldStatePackets.h"
Battlefield::Battlefield()
{
@@ -351,7 +352,7 @@ void Battlefield::DoPlaySoundToAll(uint32 SoundID)
data << uint32(SoundID);
data << uint64(0);
BroadcastPacketToWar(data);
BroadcastPacketToWar(&data);
}
bool Battlefield::HasPlayer(Player* player) const
@@ -410,28 +411,28 @@ void Battlefield::TeamCastSpell(TeamId team, int32 spellId)
}
}
void Battlefield::BroadcastPacketToZone(WorldPacket& data) const
void Battlefield::BroadcastPacketToZone(WorldPacket const* data) const
{
for (uint8 team = 0; team < BG_TEAMS_COUNT; ++team)
for (GuidSet::const_iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
if (Player* player = ObjectAccessor::FindPlayer(*itr))
player->SendDirectMessage(&data);
player->SendDirectMessage(data);
}
void Battlefield::BroadcastPacketToQueue(WorldPacket& data) const
void Battlefield::BroadcastPacketToQueue(WorldPacket const* data) const
{
for (uint8 team = 0; team < BG_TEAMS_COUNT; ++team)
for (GuidSet::const_iterator itr = m_PlayersInQueue[team].begin(); itr != m_PlayersInQueue[team].end(); ++itr)
if (Player* player = ObjectAccessor::FindConnectedPlayer(*itr))
player->SendDirectMessage(&data);
player->SendDirectMessage(data);
}
void Battlefield::BroadcastPacketToWar(WorldPacket& data) const
void Battlefield::BroadcastPacketToWar(WorldPacket const* data) const
{
for (uint8 team = 0; team < BG_TEAMS_COUNT; ++team)
for (GuidSet::const_iterator itr = m_PlayersInWar[team].begin(); itr != m_PlayersInWar[team].end(); ++itr)
if (Player* player = ObjectAccessor::FindPlayer(*itr))
player->SendDirectMessage(&data);
player->SendDirectMessage(data);
}
void Battlefield::SendWarning(uint8 id, WorldObject const* target /*= nullptr*/)
@@ -440,12 +441,13 @@ void Battlefield::SendWarning(uint8 id, WorldObject const* target /*= nullptr*/)
sCreatureTextMgr->SendChat(stalker, id, target);
}
void Battlefield::SendUpdateWorldState(uint32 field, uint32 value)
void Battlefield::SendUpdateWorldState(uint32 variable, uint32 value, bool hidden /*= false*/)
{
for (uint8 i = 0; i < BG_TEAMS_COUNT; ++i)
for (GuidSet::iterator itr = m_players[i].begin(); itr != m_players[i].end(); ++itr)
if (Player* player = ObjectAccessor::FindPlayer(*itr))
player->SendUpdateWorldState(field, value);
WorldPackets::WorldState::UpdateWorldState worldstate;
worldstate.VariableID = variable;
worldstate.Value = value;
worldstate.Hidden = hidden;
BroadcastPacketToZone(worldstate.Write());
}
void Battlefield::RegisterZone(uint32 zoneId)
+4 -4
View File
@@ -200,7 +200,7 @@ class Battlefield : public ZoneScript
virtual bool SetupBattlefield() { return true; }
/// Update data of a worldstate to all players present in zone
void SendUpdateWorldState(uint32 field, uint32 value);
void SendUpdateWorldState(uint32 variable, uint32 value, bool hidden = false);
/**
* \brief Called every time for update bf data and time
@@ -397,9 +397,9 @@ class Battlefield : public ZoneScript
virtual void SendRemoveWorldStates(Player* /*player*/) { }
// use for send a packet for all player list
void BroadcastPacketToZone(WorldPacket& data) const;
void BroadcastPacketToQueue(WorldPacket& data) const;
void BroadcastPacketToWar(WorldPacket& data) const;
void BroadcastPacketToZone(WorldPacket const* data) const;
void BroadcastPacketToQueue(WorldPacket const* data) const;
void BroadcastPacketToWar(WorldPacket const* data) const;
// CapturePoint system
void AddCapturePoint(BfCapturePoint* cp) { m_capturePoints[cp->GetCapturePointEntry()] = cp; }
+9 -13
View File
@@ -37,6 +37,7 @@
#include "SpellAuras.h"
#include "Util.h"
#include "WorldPacket.h"
#include "WorldStatePackets.h"
#include "Transport.h"
namespace Trinity
@@ -634,14 +635,14 @@ Position const* Battleground::GetTeamStartPosition(TeamId teamId) const
return &StartPosition[teamId];
}
void Battleground::SendPacketToAll(WorldPacket* packet)
void Battleground::SendPacketToAll(WorldPacket const* packet) const
{
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
if (Player* player = _GetPlayer(itr, "SendPacketToAll"))
player->SendDirectMessage(packet);
}
void Battleground::SendPacketToTeam(uint32 TeamID, WorldPacket* packet, Player* sender, bool self)
void Battleground::SendPacketToTeam(uint32 TeamID, WorldPacket const* packet, Player* sender, bool self) const
{
for (BattlegroundPlayerMap::const_iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
{
@@ -716,18 +717,13 @@ void Battleground::RewardReputationToTeam(uint32 faction_id, uint32 Reputation,
}
}
void Battleground::UpdateWorldState(uint32 Field, uint32 Value)
void Battleground::UpdateWorldState(uint32 variable, uint32 value, bool hidden /*= false*/)
{
WorldPacket data;
sBattlegroundMgr->BuildUpdateWorldStatePacket(&data, Field, Value);
SendPacketToAll(&data);
}
void Battleground::UpdateWorldStateForPlayer(uint32 field, uint32 value, Player* player)
{
WorldPacket data;
sBattlegroundMgr->BuildUpdateWorldStatePacket(&data, field, value);
player->SendDirectMessage(&data);
WorldPackets::WorldState::UpdateWorldState worldstate;
worldstate.VariableID = variable;
worldstate.Value = value;
worldstate.Hidden = hidden;
SendPacketToAll(worldstate.Write());
}
void Battleground::EndBattleground(uint32 winner)
+3 -4
View File
@@ -347,8 +347,8 @@ class Battleground
// Packet Transfer
// method that should fill worldpacket with actual world states (not yet implemented for all battlegrounds!)
virtual void FillInitialWorldStates(WorldPacket& /*data*/) { }
void SendPacketToTeam(uint32 TeamID, WorldPacket* packet, Player* sender = NULL, bool self = true);
void SendPacketToAll(WorldPacket* packet);
void SendPacketToTeam(uint32 TeamID, WorldPacket const* packet, Player* sender = NULL, bool self = true) const;
void SendPacketToAll(WorldPacket const* packet) const;
void SendChatMessage(Creature* source, uint8 textId, WorldObject* target = NULL);
@@ -361,8 +361,7 @@ class Battleground
void RemoveAuraOnTeam(uint32 SpellID, uint32 TeamID);
void RewardHonorToTeam(uint32 Honor, uint32 TeamID);
void RewardReputationToTeam(uint32 faction_id, uint32 Reputation, uint32 TeamID);
void UpdateWorldState(uint32 Field, uint32 Value);
void UpdateWorldStateForPlayer(uint32 Field, uint32 Value, Player* player);
void UpdateWorldState(uint32 variable, uint32 value, bool hidden = false);
virtual void EndBattleground(uint32 winner);
void BlockMovement(Player* player);
@@ -426,13 +426,6 @@ void BattlegroundMgr::BuildStatusFailedPacket(WorldPacket* data, Battleground* b
data->WriteByteSeq(unkGuid3[5]);
}
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)
{
data->Initialize(SMSG_PLAY_SOUND, 4 + 8);
@@ -74,7 +74,6 @@ class BattlegroundMgr
void BuildPlayerLeftBattlegroundPacket(WorldPacket* data, ObjectGuid guid);
void BuildBattlegroundListPacket(WorldPacket* data, ObjectGuid guid, Player* player, BattlegroundTypeId bgTypeId);
void BuildStatusFailedPacket(WorldPacket* data, Battleground* bg, Player* pPlayer, uint8 QueueSlot, GroupJoinBattlegroundResult result);
void BuildUpdateWorldStatePacket(WorldPacket* data, uint32 field, uint32 value);
void BuildBattlegroundStatusPacket(WorldPacket* data, Battleground* bg, Player* player, uint8 queueSlot, uint8 statusId, uint32 time1, uint32 time2, uint8 arenaType);
void BuildPlaySoundPacket(WorldPacket* data, uint32 soundId);
void SendAreaSpiritHealerQueryOpcode(Player* player, Battleground* bg, ObjectGuid guid);
@@ -179,9 +179,9 @@ void BattlegroundEY::CheckSomeoneJoinedPoint()
{
//player joined point!
//show progress bar
UpdateWorldStateForPlayer(PROGRESS_BAR_PERCENT_GREY, BG_EY_PROGRESS_BAR_PERCENT_GREY, player);
UpdateWorldStateForPlayer(PROGRESS_BAR_STATUS, m_PointBarStatus[i], player);
UpdateWorldStateForPlayer(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_SHOW, player);
player->SendUpdateWorldState(PROGRESS_BAR_PERCENT_GREY, BG_EY_PROGRESS_BAR_PERCENT_GREY);
player->SendUpdateWorldState(PROGRESS_BAR_STATUS, m_PointBarStatus[i]);
player->SendUpdateWorldState(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_SHOW);
//add player to point
m_PlayersNearPoint[i].push_back(m_PlayersNearPoint[EY_POINTS_MAX][j]);
//remove player from "free space"
@@ -222,7 +222,7 @@ void BattlegroundEY::CheckSomeoneLeftPoint()
{
m_PlayersNearPoint[EY_POINTS_MAX].push_back(m_PlayersNearPoint[i][j]);
m_PlayersNearPoint[i].erase(m_PlayersNearPoint[i].begin() + j);
this->UpdateWorldStateForPlayer(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_DONT_SHOW, player);
player->SendUpdateWorldState(PROGRESS_BAR_SHOW, BG_EY_PROGRESS_BAR_DONT_SHOW);
}
else
{
@@ -265,7 +265,7 @@ void BattlegroundEY::UpdatePointStatuses()
Player* player = ObjectAccessor::FindPlayer(m_PlayersNearPoint[point][i]);
if (player)
{
this->UpdateWorldStateForPlayer(PROGRESS_BAR_STATUS, m_PointBarStatus[point], player);
player->SendUpdateWorldState(PROGRESS_BAR_STATUS, m_PointBarStatus[point]);
//if point owner changed we must evoke event!
if (pointOwnerTeamId != m_PointOwnedByTeam[point])
{
+23 -22
View File
@@ -41,6 +41,7 @@
#include "DisableMgr.h"
#include "Formulas.h"
#include "GameEventMgr.h"
#include "GameObjectAI.h"
#include "GossipDef.h"
#include "GridNotifiers.h"
#include "GridNotifiersImpl.h"
@@ -55,6 +56,7 @@
#include "Log.h"
#include "MapInstanced.h"
#include "MapManager.h"
#include "MovementStructures.h"
#include "ObjectAccessor.h"
#include "ObjectMgr.h"
#include "Opcodes.h"
@@ -81,8 +83,7 @@
#include "World.h"
#include "WorldPacket.h"
#include "WorldSession.h"
#include "MovementStructures.h"
#include "GameObjectAI.h"
#include "WorldStatePackets.h"
#define ZONE_UPDATE_INTERVAL (1*IN_MILLISECONDS)
@@ -6516,7 +6517,7 @@ void Player::SendMessageToSet(WorldPacket* data, Player const* skipped_rcvr)
VisitNearbyWorldObject(GetVisibilityRange(), notifier);
}
void Player::SendDirectMessage(WorldPacket* data)
void Player::SendDirectMessage(WorldPacket const* data)
{
m_session->SendPacket(data);
}
@@ -9084,13 +9085,13 @@ void Player::SendNotifyLootItemRemoved(uint8 lootSlot)
GetSession()->SendPacket(&data);
}
void Player::SendUpdateWorldState(uint32 Field, uint32 Value)
void Player::SendUpdateWorldState(uint32 variable, uint32 value, bool hidden /*= false*/)
{
WorldPacket data(SMSG_UPDATE_WORLD_STATE, 4+4+1);
data << Field;
data << Value;
data << uint8(0);
GetSession()->SendPacket(&data);
WorldPackets::WorldState::UpdateWorldState worldstate;
worldstate.VariableID = variable;
worldstate.Value = value;
worldstate.Hidden = hidden;
SendDirectMessage(worldstate.Write());
}
void Player::SendInitWorldStates(uint32 zoneid, uint32 areaid)
@@ -9110,22 +9111,22 @@ void Player::SendInitWorldStates(uint32 zoneid, uint32 areaid)
data << uint32(areaid); // area id, new 2.1.0
size_t countPos = data.wpos();
data << uint16(0); // count of uint64 blocks
data << uint32(0x8d8) << uint32(0x0); // 1
data << uint32(0x8d7) << uint32(0x0); // 2
data << uint32(0x8d6) << uint32(0x0); // 3
data << uint32(0x8d5) << uint32(0x0); // 4
data << uint32(0x8d4) << uint32(0x0); // 5
data << uint32(0x8d3) << uint32(0x0); // 6
// 7 1 - Arena season in progress, 0 - end of season
data << uint32(0xC77) << uint32(sWorld->getBoolConfig(CONFIG_ARENA_SEASON_IN_PROGRESS));
// 8 Arena season id
data << uint32(0xF3D) << uint32(sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID));
data << uint32(2264) << uint32(0); // 1
data << uint32(2263) << uint32(0); // 2
data << uint32(2262) << uint32(0); // 3
data << uint32(2261) << uint32(0); // 4
data << uint32(2260) << uint32(0); // 5
data << uint32(2259) << uint32(0); // 6
data << uint32(3191) << uint32(sWorld->getBoolConfig(CONFIG_ARENA_SEASON_IN_PROGRESS) ? sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID) : 0); // 7 Current Season - Arena season in progress
// 0 - End of season
data << uint32(3901) << uint32(sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID) - sWorld->getBoolConfig(CONFIG_ARENA_SEASON_IN_PROGRESS)); // 8 PreviousSeason
if (mapid == 530) // Outland
{
data << uint32(0x9bf) << uint32(0x0); // 7
data << uint32(0x9bd) << uint32(0xF); // 8
data << uint32(0x9bb) << uint32(0xF); // 9
data << uint32(2495) << uint32(0x0); // 7
data << uint32(2493) << uint32(0xF); // 8
data << uint32(2491) << uint32(0xF); // 9
}
// insert <field> <value>
+2 -2
View File
@@ -2248,8 +2248,8 @@ class Player : public Unit, public GridObject<Player>
void DeleteEquipmentSet(uint64 setGuid);
void SendInitWorldStates(uint32 zone, uint32 area);
void SendUpdateWorldState(uint32 Field, uint32 Value);
void SendDirectMessage(WorldPacket* data);
void SendUpdateWorldState(uint32 variable, uint32 value, bool hidden = false);
void SendDirectMessage(WorldPacket const* data);
void SendBGWeekendWorldStates();
void SendBattlefieldWorldStates();
+6 -4
View File
@@ -19,7 +19,6 @@
#include "GameEventMgr.h"
#include "World.h"
#include "ObjectMgr.h"
#include "WorldPacket.h"
#include "PoolMgr.h"
#include "Language.h"
#include "Log.h"
@@ -29,6 +28,7 @@
#include "BattlegroundMgr.h"
#include "UnitAI.h"
#include "GameObjectAI.h"
#include "WorldStatePackets.h"
bool GameEventMgr::CheckOneGameEvent(uint16 entry) const
{
@@ -1486,9 +1486,11 @@ void GameEventMgr::UpdateWorldStates(uint16 event_id, bool Activate)
BattlemasterListEntry const* bl = sBattlemasterListStore.LookupEntry(bgTypeId);
if (bl && bl->HolidayWorldStateId)
{
WorldPacket data;
sBattlegroundMgr->BuildUpdateWorldStatePacket(&data, bl->HolidayWorldStateId, Activate ? 1 : 0);
sWorld->SendGlobalMessage(&data);
WorldPackets::WorldState::UpdateWorldState worldstate;
worldstate.VariableID = bl->HolidayWorldStateId;
worldstate.Value = Activate;
//worldstate.Hidden = false;
sWorld->SendGlobalMessage(worldstate.Write());
}
}
}
@@ -65,7 +65,7 @@ void WorldSession::SendAuctionHello(ObjectGuid guid, Creature* unit)
if (!ahEntry)
return;
WorldPacket data(MSG_AUCTION_HELLO, 12);
WorldPacket data(SMSG_AUCTION_HELLO, 12);
data << guid;
data << uint32(ahEntry->houseId);
data << uint8(1); // 3.3.3: 1 - AH enabled, 0 - AH disabled
@@ -74,7 +74,7 @@ void WorldSession::SendAuctionHello(ObjectGuid guid, Creature* unit)
void WorldSession::SendAuctionCommandResult(AuctionEntry* auction, uint32 action, uint32 errorCode, uint32 /*bidError = 0*/)
{
WorldPackets::AuctionHousePackets::AuctionCommandResult auctionCommandResult;
WorldPackets::AuctionHouse::AuctionCommandResult auctionCommandResult;
auctionCommandResult.InitializeAuction(auction);
auctionCommandResult.Action = action;
auctionCommandResult.ErrorCode = errorCode;
+17 -2
View File
@@ -19,7 +19,10 @@
#include "AccountMgr.h"
#include "ArenaTeam.h"
#include "ArenaTeamMgr.h"
#include "AuthenticationPackets.h"
#include "Battleground.h"
#include "BattlegroundPackets.h"
#include "BattlenetServerManager.h"
#include "CalendarMgr.h"
#include "CharacterPackets.h"
#include "Chat.h"
@@ -50,8 +53,6 @@
#include "World.h"
#include "WorldPacket.h"
#include "WorldSession.h"
#include "BattlenetServerManager.h"
#include "AuthenticationPackets.h"
class LoginQueryHolder : public SQLQueryHolder
{
@@ -892,6 +893,20 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder* holder)
TC_LOG_DEBUG("network", "WORLD: Sent motd (SMSG_MOTD)");
}
SendSetTimeZoneInformation();
// Send PVPSeason
{
WorldPackets::Battleground::PVPSeason season;
season.PreviousSeason = sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID) - sWorld->getBoolConfig(CONFIG_ARENA_SEASON_IN_PROGRESS);
if (sWorld->getBoolConfig(CONFIG_ARENA_SEASON_IN_PROGRESS))
season.CurrentSeason = sWorld->getIntConfig(CONFIG_ARENA_SEASON_ID);
SendPacket(season.Write());
TC_LOG_DEBUG("network", "WORLD: Sent PVPSeason");
}
// send server info
{
if (sWorld->getIntConfig(CONFIG_ENABLE_SINFO_LOGIN) == 1)
@@ -19,10 +19,10 @@
#include "AuctionHouseMgr.h"
#include "ObjectGuid.h"
WorldPackets::AuctionHousePackets::AuctionCommandResult::AuctionCommandResult()
WorldPackets::AuctionHouse::AuctionCommandResult::AuctionCommandResult()
: ServerPacket(SMSG_AUCTION_COMMAND_RESULT, 4 + 4 + 4 + 8 + 4 + 8 + 8 + 8) { }
void WorldPackets::AuctionHousePackets::AuctionCommandResult::InitializeAuction(AuctionEntry* auction)
void WorldPackets::AuctionHouse::AuctionCommandResult::InitializeAuction(AuctionEntry* auction)
{
if (auction)
{
@@ -33,7 +33,7 @@ void WorldPackets::AuctionHousePackets::AuctionCommandResult::InitializeAuction(
}
}
WorldPacket const* WorldPackets::AuctionHousePackets::AuctionCommandResult::Write()
WorldPacket const* WorldPackets::AuctionHouse::AuctionCommandResult::Write()
{
_worldPacket << uint32(AuctionId);
_worldPacket << uint32(Action);
@@ -20,13 +20,11 @@
#include "Packet.h"
#include "ObjectGuid.h"
class ObjectGuid;
struct AuctionEntry;
namespace WorldPackets
{
namespace AuctionHousePackets
namespace AuctionHouse
{
class AuctionCommandResult final : public ServerPacket
{
@@ -54,4 +52,5 @@ namespace WorldPackets
};
}
}
#endif
#endif // AuctionHousePackets_h__
@@ -0,0 +1,26 @@
/*
* Copyright (C) 2008-2014 TrinityCore <http://www.trinitycore.org/>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 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 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 "BattlegroundPackets.h"
WorldPacket const* WorldPackets::Battleground::PVPSeason::Write()
{
_worldPacket << uint32(CurrentSeason);
_worldPacket << uint32(PreviousSeason);
return &_worldPacket;
}
@@ -0,0 +1,40 @@
/*
* Copyright (C) 2008-2014 TrinityCore <http://www.trinitycore.org/>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 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 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 BattlegroundPackets_h__
#define BattlegroundPackets_h__
#include "Packet.h"
namespace WorldPackets
{
namespace Battleground
{
class PVPSeason final : public ServerPacket
{
public:
PVPSeason() : ServerPacket(SMSG_PVP_SEASON, 8) { }
WorldPacket const* Write() override;
uint32 PreviousSeason = 0;
uint32 CurrentSeason = 0;
};
}
}
#endif // BattlegroundPackets_h__
@@ -0,0 +1,52 @@
/*
* Copyright (C) 2008-2014 TrinityCore <http://www.trinitycore.org/>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 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 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, 16) { }
WorldPacket const* WorldPackets::WorldState::InitWorldStates::Write()
{
_worldPacket.reserve(16 + Worldstates.size() * 8);
_worldPacket << uint32(AreaID);
_worldPacket << uint32(SubareaID);
_worldPacket << uint32(MapID);
_worldPacket << uint32(Worldstates.size());
for (WorldStateInfo const& wsi : Worldstates)
{
_worldPacket << uint32(wsi.VariableID);
_worldPacket << uint32(wsi.Value);
}
return &_worldPacket;
}
WorldPackets::WorldState::UpdateWorldState::UpdateWorldState()
: ServerPacket(SMSG_UPDATE_WORLD_STATE, 9) { }
WorldPacket const* WorldPackets::WorldState::UpdateWorldState::Write()
{
_worldPacket << uint32(VariableID);
_worldPacket << int32(Value);
_worldPacket.WriteBit(Hidden);
_worldPacket.FlushBits();
return &_worldPacket;
}
@@ -0,0 +1,64 @@
/*
* Copyright (C) 2008-2014 TrinityCore <http://www.trinitycore.org/>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 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 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(uint32 variableID, int32 value)
: VariableID(variableID), Value(value) { }
uint32 VariableID;
int32 Value;
};
InitWorldStates();
WorldPacket const* Write() override;
uint32 AreaID = 0; ///< ZoneId
uint32 SubareaID = 0; ///< AreaId
uint32 MapID = 0; ///< MapId
std::list<WorldStateInfo> Worldstates;
};
class UpdateWorldState final : public ServerPacket
{
public:
UpdateWorldState();
WorldPacket const* Write() override;
int32 Value = 0;
bool Hidden = false; ///< @todo: research
uint32 VariableID = 0;
};
}
}
#endif // WorldStatePackets_h__
+18 -6
View File
@@ -130,6 +130,7 @@ void OpcodeTable::Initialize()
DEFINE_OPCODE_HANDLER_OLD(CMSG_ARENA_TEAM_ROSTER, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleArenaTeamRosterOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_ATTACKSTOP, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::HandleAttackStopOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_ATTACKSWING, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::HandleAttackSwingOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_HELLO, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionHelloOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_LIST_BIDDER_ITEMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionListBidderItems );
DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_LIST_ITEMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionListItems );
DEFINE_OPCODE_HANDLER_OLD(CMSG_AUCTION_LIST_OWNER_ITEMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionListOwnerItems );
@@ -161,6 +162,8 @@ void OpcodeTable::Initialize()
DEFINE_OPCODE_HANDLER_OLD(CMSG_BATTLEMASTER_JOIN_ARENA, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBattlemasterJoinArena );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BATTLEMASTER_JOIN_RATED, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BATTLE_PAY_GET_PRODUCT_LIST_QUERY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BATTLE_PAY_GET_PURCHASE_LIST_QUERY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BATTLE_PET_NAME_QUERY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BEGIN_TRADE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBeginTradeOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BINDER_ACTIVATE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBinderActivateOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_BUG, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleBugOpcode );
@@ -498,12 +501,13 @@ void OpcodeTable::Initialize()
DEFINE_OPCODE_HANDLER_OLD(CMSG_QUEST_NPC_QUERY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestNPCQuery );
DEFINE_OPCODE_HANDLER_OLD(CMSG_QUEST_POI_QUERY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestPOIQuery );
DEFINE_OPCODE_HANDLER_OLD(CMSG_QUEST_QUERY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestQueryOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_QUEUED_MESSAGES_END, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_HANDLER(CMSG_RANDOMIZE_CHAR_NAME, STATUS_AUTHED, PROCESS_THREADUNSAFE, WorldPackets::Character::GenerateRandomCharacterName, &WorldSession::HandleRandomizeCharNameOpcode);
DEFINE_OPCODE_HANDLER_OLD(CMSG_READ_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleReadItem );
DEFINE_OPCODE_HANDLER_OLD(CMSG_REALM_SPLIT, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleRealmSplitOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_RECLAIM_CORPSE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleReclaimCorpseOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_REFORGE_ITEM, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::HandleReforgeItemOpcode );
DEFINE_HANDLER(CMSG_REORDER_CHARACTERS, STATUS_AUTHED, PROCESS_INPLACE, WorldPackets::Character::ReorderCharacters, &WorldSession::HandleReorderCharacters);
DEFINE_HANDLER(CMSG_REORDER_CHARACTERS, STATUS_AUTHED, PROCESS_THREADUNSAFE, WorldPackets::Character::ReorderCharacters, &WorldSession::HandleReorderCharacters);
DEFINE_OPCODE_HANDLER_OLD(CMSG_REPAIR_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleRepairItemOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_REPOP_REQUEST, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleRepopRequestOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_REPORT_PVP_AFK, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleReportPvPAFK );
@@ -549,6 +553,7 @@ void OpcodeTable::Initialize()
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_FACTION_ATWAR, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSetFactionAtWar );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_FACTION_INACTIVE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSetFactionInactiveOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_GUILD_BANK_TEXT, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSetGuildBankTabText );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_LOOT_SPECIALIZATION, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_PET_SLOT, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_PLAYER_DECLINED_NAMES, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSetPlayerDeclinedNames );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SET_PREFERED_CEMETERY, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
@@ -576,6 +581,7 @@ void OpcodeTable::Initialize()
DEFINE_OPCODE_HANDLER_OLD(CMSG_SUBMIT_COMPLAIN, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SUGGESTION_SUBMIT, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SUMMON_RESPONSE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSummonResponseOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SUSPEND_COMMS_ACK, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SUSPEND_TOKEN_RESPONSE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SWAP_INV_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSwapInvItemOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_SWAP_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleSwapItem );
@@ -622,9 +628,6 @@ void OpcodeTable::Initialize()
DEFINE_OPCODE_HANDLER_OLD(CMSG_WORLD_TELEPORT, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleWorldTeleportOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_WRAP_ITEM, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleWrapItemOpcode );
DEFINE_OPCODE_HANDLER_OLD(CMSG_ZONEUPDATE, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleZoneUpdateOpcode );
DEFINE_OPCODE_HANDLER_OLD(MSG_AUCTION_HELLO, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAuctionHelloOpcode );
DEFINE_OPCODE_HANDLER_OLD(MSG_CHANNEL_START, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
DEFINE_OPCODE_HANDLER_OLD(MSG_CHANNEL_UPDATE, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
DEFINE_OPCODE_HANDLER_OLD(MSG_CORPSE_QUERY, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCorpseQueryOpcode );
DEFINE_OPCODE_HANDLER_OLD(MSG_INSPECT_ARENA_TEAMS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleInspectArenaTeamsOpcode );
DEFINE_OPCODE_HANDLER_OLD(MSG_LIST_STABLED_PETS, STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleListStabledPetsOpcode );
@@ -679,6 +682,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_DATA_TIMES, STATUS_NEVER);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_INFO_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_MOUNT_UPDATE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACCOUNT_RESTRICTED_WARNING, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACHIEVEMENT_DELETED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ACHIEVEMENT_EARNED, STATUS_UNHANDLED);
@@ -692,7 +696,6 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AREA_TRIGGER_MESSAGE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AREA_TRIGGER_MOVEMENT_UPDATE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ARENA_ERROR, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ARENA_SEASON_WORLD_STATE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ARENA_UNIT_DESTROYED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ARENA_TEAM_CHANGE_FAILED_QUEUED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ARENA_TEAM_COMMAND_RESULT, STATUS_UNHANDLED);
@@ -711,6 +714,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_BIDDER_LIST_RESULT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_BIDDER_NOTIFICATION, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_COMMAND_RESULT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_HELLO, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_LIST_PENDING_SALES, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_LIST_RESULT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_AUCTION_OWNER_LIST_RESULT, STATUS_UNHANDLED);
@@ -745,8 +749,12 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEGROUND_INFO_THROTTLED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEGROUND_PLAYER_JOINED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEGROUND_PLAYER_LEFT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLE_PAY_GET_DISTRIBUTION_LIST_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLE_PAY_GET_PRODUCT_LIST_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLE_PAY_GET_PURCHASE_LIST_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLE_PET_JOURNAL, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLE_PET_JOURNAL_LOCK_ACQUIRED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLE_PET_NAME_QUERY_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BINDER_CONFIRM, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BINDPOINTUPDATE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_BINDZONEREPLY, STATUS_UNHANDLED);
@@ -782,6 +790,8 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_LIST, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_MEMBER_COUNT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_NOTIFY, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_START, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHANNEL_UPDATE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHARACTER_LOGIN_FAILED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAR_CREATE, STATUS_NEVER);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CHAR_CUSTOMIZE, STATUS_UNHANDLED);
@@ -834,6 +844,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_CUSTOM_LOAD_SCREEN, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_DAMAGE_CALC_LOG, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_DANCE_QUERY_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_DANCE_STUDIO_CREATE_RESULT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_DB_REPLY, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_DEATH_RELEASE_LOC, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_DEBUG_RUNE_REGEN, STATUS_UNHANDLED);
@@ -1165,6 +1176,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PVP_CREDIT, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PVP_LOG_DATA, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PVP_OPTIONS_ENABLED, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PVP_SEASON, STATUS_NEVER);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_QUERY_QUESTS_COMPLETED_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_QUERY_TIME_RESPONSE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_QUESTGIVER_OFFER_REWARD, STATUS_UNHANDLED);
@@ -1353,7 +1365,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UPDATE_LAST_INSTANCE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UPDATE_OBJECT, STATUS_NEVER);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UPDATE_SERVER_PLAYER_POSITION, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UPDATE_WORLD_STATE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_UPDATE_WORLD_STATE, STATUS_NEVER);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_USERLIST_ADD, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_USERLIST_REMOVE, STATUS_UNHANDLED);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_USERLIST_UPDATE, STATUS_UNHANDLED);
+44 -34
View File
@@ -105,6 +105,8 @@ enum OpcodeClient : uint32
CMSG_BATTLEMASTER_JOIN_RATED = 0xBADD,
CMSG_BATTLEMASTER_HELLO = 0xBADD,
CMSG_BATTLE_PAY_GET_PRODUCT_LIST_QUERY = 0x1389,
CMSG_BATTLE_PAY_GET_PURCHASE_LIST_QUERY = 0x120C,
CMSG_BATTLE_PET_NAME_QUERY = 0x041C,
CMSG_BEGIN_TRADE = 0xBADD,
CMSG_BINDER_ACTIVATE = 0xBADD,
CMSG_BOT_DETECTED2 = 0xBADD,
@@ -130,7 +132,7 @@ enum OpcodeClient : uint32
CMSG_CALENDAR_GUILD_FILTER = 0xBADD,
CMSG_CALENDAR_REMOVE_EVENT = 0xBADD,
CMSG_CALENDAR_UPDATE_EVENT = 0xBADD,
CMSG_CANCEL_AURA = 0xBADD,
CMSG_CANCEL_AURA = 0x08AE,
CMSG_CANCEL_AUTO_REPEAT_SPELL = 0xBADD,
CMSG_CANCEL_CAST = 0xBADD,
CMSG_CANCEL_CHANNELLING = 0xBADD,
@@ -214,7 +216,7 @@ enum OpcodeClient : uint32
CMSG_EQUIPMENT_SET_USE = 0xBADD,
CMSG_FACTION_BONUS_INFO = 0x0928,
CMSG_FAR_SIGHT = 0xBADD,
CMSG_FORCE_MOVE_ROOT_ACK = 0xBADD,
CMSG_FORCE_MOVE_ROOT_ACK = 0x0B73,
CMSG_FORCE_MOVE_UNROOT_ACK = 0xBADD,
CMSG_GAMEOBJECT_QUERY = 0x03AE,
CMSG_GAMEOBJ_REPORT_USE = 0x082E,
@@ -385,7 +387,7 @@ enum OpcodeClient : uint32
CMSG_MOVE_FORCE_SWIM_SPEED_CHANGE_ACK = 0xBADD,
CMSG_MOVE_FORCE_TURN_RATE_CHANGE_ACK = 0xBADD,
CMSG_MOVE_FORCE_WALK_SPEED_CHANGE_ACK = 0xBADD,
CMSG_MOVE_GRAVITY_DISABLE_ACK = 0xBADD,
CMSG_MOVE_GRAVITY_DISABLE_ACK = 0x0553,
CMSG_MOVE_GRAVITY_ENABLE_ACK = 0xBADD,
CMSG_MOVE_HEARTBEAT = 0x19C1,
CMSG_MOVE_HOVER_ACK = 0xBADD,
@@ -396,7 +398,7 @@ enum OpcodeClient : uint32
CMSG_MOVE_SET_CAN_FLY = 0xBADD,
CMSG_MOVE_SET_CAN_FLY_ACK = 0xBADD,
CMSG_MOVE_SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY_ACK = 0xBADD,
CMSG_MOVE_SET_COLLISION_HEIGHT_ACK = 0xBADD,
CMSG_MOVE_SET_COLLISION_HEIGHT_ACK = 0x0141,
CMSG_MOVE_SET_RELATIVE_POSITION = 0xBADD,
CMSG_MOVE_SET_VEHICLE_REC_ID_ACK = 0xBADD,
CMSG_MOVE_SPLINE_DONE = 0xBADD,
@@ -469,6 +471,7 @@ enum OpcodeClient : uint32
CMSG_QUEST_NPC_QUERY = 0x0B81,
CMSG_QUEST_POI_QUERY = 0x0BD9,
CMSG_QUEST_QUERY = 0x09A6,
CMSG_QUEUED_MESSAGES_END = 0x04DF,
CMSG_RANDOMIZE_CHAR_NAME = 0x1981,
CMSG_READ_ITEM = 0xBADD,
CMSG_REALM_SPLIT = 0xBADD,
@@ -496,7 +499,7 @@ enum OpcodeClient : uint32
CMSG_REQUEST_VEHICLE_NEXT_SEAT = 0xBADD,
CMSG_REQUEST_VEHICLE_PREV_SEAT = 0xBADD,
CMSG_REQUEST_VEHICLE_SWITCH_SEAT = 0xBADD,
CMSG_RESET_FACTION_CHEAT = 0x0C56,
CMSG_RESET_FACTION_CHEAT = 0xBADD,
CMSG_RESET_INSTANCES = 0xBADD,
CMSG_RESURRECT_RESPONSE = 0xBADD,
CMSG_RETURN_TO_GRAVEYARD = 0xBADD,
@@ -528,10 +531,11 @@ enum OpcodeClient : uint32
CMSG_SET_FACTION_INACTIVE = 0xBADD,
CMSG_SET_GUILD_BANK_TEXT = 0xBADD,
CMSG_SET_LFG_COMMENT = 0xBADD,
CMSG_SET_LOOT_SPECIALIZATION = 0x0226,
CMSG_SET_PET_SLOT = 0xBADD,
CMSG_SET_PLAYER_DECLINED_NAMES = 0xBADD,
CMSG_SET_PREFERED_CEMETERY = 0xBADD,
CMSG_SET_RAID_DIFFICULTY = 0x04DF,
CMSG_SET_RAID_DIFFICULTY = 0xBADD,
CMSG_SET_RELATIVE_POSITION = 0xBADD,
CMSG_SET_SAVED_INSTANCE_EXTEND = 0xBADD,
CMSG_SET_SELECTION = 0x05BD,
@@ -547,7 +551,7 @@ enum OpcodeClient : uint32
CMSG_SHOWING_CLOAK = 0x0132,
CMSG_SHOWING_HELM = 0x11E1,
CMSG_SOCKET_GEMS = 0xBADD,
CMSG_SPELLCLICK = 0xBADD,
CMSG_SPELLCLICK = 0x0BC2,
CMSG_SPIRIT_HEALER_ACTIVATE = 0xBADD,
CMSG_SPLIT_ITEM = 0xBADD,
CMSG_STANDSTATECHANGE = 0xBADD,
@@ -558,6 +562,7 @@ enum OpcodeClient : uint32
CMSG_SUBMIT_COMPLAIN = 0xBADD,
CMSG_SUGGESTION_SUBMIT = 0xBADD,
CMSG_SUMMON_RESPONSE = 0xBADD,
CMSG_SUSPEND_COMMS_ACK = 0x0C56,
CMSG_SUSPEND_TOKEN_RESPONSE = 0x0142,
CMSG_SWAP_INV_ITEM = 0xBADD,
CMSG_SWAP_ITEM = 0xBADD,
@@ -576,7 +581,7 @@ enum OpcodeClient : uint32
CMSG_TOTEM_DESTROYED = 0xBADD,
CMSG_TRAINER_BUY_SPELL = 0xBADD,
CMSG_TRAINER_LIST = 0xBADD,
CMSG_TRANSMOGRIFY_ITEMS = 0xBADD,
CMSG_TRANSMOGRIFY_ITEMS = 0x0A85,
CMSG_TRIGGER_CINEMATIC_CHEAT = 0xBADD,
CMSG_TURN_IN_PETITION = 0xBADD,
CMSG_TUTORIAL_CLEAR = 0xBADD,
@@ -596,9 +601,9 @@ enum OpcodeClient : uint32
CMSG_VIOLENCE_LEVEL = 0x098D,
CMSG_VOICE_SESSION_ENABLE = 0xBADD,
CMSG_VOID_STORAGE_QUERY = 0x019E,
CMSG_VOID_STORAGE_TRANSFER = 0xBADD,
CMSG_VOID_STORAGE_TRANSFER = 0x0463,
CMSG_VOID_STORAGE_UNLOCK = 0xBADD,
CMSG_VOID_SWAP_ITEM = 0xBADD,
CMSG_VOID_SWAP_ITEM = 0x0619,
CMSG_WARDEN_DATA = 0x0BA1,
CMSG_WARGAME_ACCEPT = 0xBADD,
CMSG_WARGAME_START = 0xBADD,
@@ -608,9 +613,6 @@ enum OpcodeClient : uint32
CMSG_WORLD_TELEPORT = 0xBADD,
CMSG_WRAP_ITEM = 0xBADD,
CMSG_ZONEUPDATE = 0xBADD,
MSG_AUCTION_HELLO = 0xBADD,
MSG_CHANNEL_START = 0xBADD, // SMSG only?
MSG_CHANNEL_UPDATE = 0xBADD, // SMSG only?
MSG_CORPSE_QUERY = 0xBADD,
MSG_GM_BIND_OTHER = 0xBADD,
MSG_GM_SHOWLABEL = 0xBADD,
@@ -680,6 +682,7 @@ enum OpcodeServer : uint32
{
SMSG_ACCOUNT_DATA_TIMES = 0x0120,
SMSG_ACCOUNT_INFO_RESPONSE = 0xBADD,
SMSG_ACCOUNT_MOUNT_UPDATE = 0x0140,
SMSG_ACCOUNT_RESTRICTED_WARNING = 0xBADD,
SMSG_ACHIEVEMENT_DELETED = 0xBADD,
SMSG_ACHIEVEMENT_EARNED = 0xBADD,
@@ -687,7 +690,7 @@ enum OpcodeServer : uint32
SMSG_ACTIVATETAXIREPLY = 0xBADD,
SMSG_ADDON_INFO = 0x1D9F,
SMSG_ADD_RUNE_POWER = 0xBADD,
SMSG_AI_REACTION = 0xBADD,
SMSG_AI_REACTION = 0x0BA1,
SMSG_ALL_ACHIEVEMENT_DATA = 0xBADD,
SMSG_ALL_ACHIEVEMENT_DATA_ACCOUNT = 0x0123,
SMSG_ALL_ACHIEVEMENT_DATA_PLAYER = 0x0030,
@@ -695,7 +698,6 @@ enum OpcodeServer : uint32
SMSG_AREA_TRIGGER_MESSAGE = 0xBADD,
SMSG_AREA_TRIGGER_MOVEMENT_UPDATE = 0xBADD,
SMSG_ARENA_ERROR = 0xBADD,
SMSG_ARENA_SEASON_WORLD_STATE = 0x09E3,
SMSG_ARENA_UNIT_DESTROYED = 0xBADD,
SMSG_ARENA_TEAM_CHANGE_FAILED_QUEUED = 0xBADD,
SMSG_ARENA_TEAM_COMMAND_RESULT = 0xBADD,
@@ -740,7 +742,7 @@ enum OpcodeServer : uint32
SMSG_BATTLEFIELD_MGR_STATE_CHANGE = 0xBADD,
SMSG_BATTLEFIELD_PLAYER_POSITIONS = 0xBADD,
SMSG_BATTLEFIELD_PORT_DENIED = 0xBADD,
SMSG_BATTLEFIELD_RATED_INFO = 0xBADD,
SMSG_BATTLEFIELD_RATED_INFO = 0x1F0A,
SMSG_BATTLEFIELD_STATUS = 0xBADD,
SMSG_BATTLEFIELD_STATUS_QUEUED = 0xBADD,
SMSG_BATTLEFIELD_STATUS_ACTIVE = 0xBADD,
@@ -750,8 +752,12 @@ enum OpcodeServer : uint32
SMSG_BATTLEGROUND_INFO_THROTTLED = 0xBADD,
SMSG_BATTLEGROUND_PLAYER_JOINED = 0xBADD,
SMSG_BATTLEGROUND_PLAYER_LEFT = 0xBADD,
SMSG_BATTLE_PAY_GET_DISTRIBUTION_LIST_RESPONSE = 0x0F2A,
SMSG_BATTLE_PAY_GET_PRODUCT_LIST_RESPONSE = 0x12A4,
SMSG_BATTLE_PAY_GET_PURCHASE_LIST_RESPONSE = 0x168A,
SMSG_BATTLE_PET_JOURNAL = 0x19A2,
SMSG_BATTLE_PET_JOURNAL_LOCK_ACQUIRED = 0x01A3,
SMSG_BATTLE_PET_NAME_QUERY_RESPONSE = 0x09EC,
SMSG_BINDER_CONFIRM = 0xBADD,
SMSG_BINDPOINTUPDATE = 0x0A30,
SMSG_BINDZONEREPLY = 0xBADD,
@@ -790,6 +796,8 @@ enum OpcodeServer : uint32
SMSG_CHANNEL_MEMBER_COUNT = 0xBADD,
SMSG_CHANNEL_NOTIFY = 0x0643,
SMSG_CHANNEL_NOTIFY_JOINED = 0x1602,
SMSG_CHANNEL_START = 0x016C,
SMSG_CHANNEL_UPDATE = 0x19DB,
SMSG_CHARACTER_LOGIN_FAILED = 0xBADD,
SMSG_CHAR_CREATE = 0x0107,
SMSG_CHAR_CUSTOMIZE = 0xBADD,
@@ -848,6 +856,7 @@ enum OpcodeServer : uint32
SMSG_DAMAGE_CALC_LOG = 0xBADD,
SMSG_DAMAGE_DONE_OBSOLETE = 0xBADD,
SMSG_DANCE_QUERY_RESPONSE = 0xBADD,
SMSG_DANCE_STUDIO_CREATE_RESULT = 0x178D,
SMSG_DB_REPLY = 0x1939,
SMSG_DEATH_RELEASE_LOC = 0xBADD,
SMSG_DEBUG_RUNE_REGEN = 0xBADD,
@@ -936,7 +945,7 @@ enum OpcodeServer : uint32
SMSG_GUILD_ACHIEVEMENT_MEMBERS = 0xBADD,
SMSG_GUILD_BANK_LIST = 0xBADD,
SMSG_GUILD_BANK_LOG_QUERY_RESULT = 0xBADD,
SMSG_GUILD_BANK_MONEY_WITHDRAWN = 0xBADD,
SMSG_GUILD_BANK_MONEY_WITHDRAWN = 0x1047,
SMSG_GUILD_BANK_QUERY_TEXT_RESULT = 0xBADD,
SMSG_GUILD_CANCEL = 0xBADD,
SMSG_GUILD_CHALLENGE_COMPLETED = 0xBADD,
@@ -965,7 +974,7 @@ enum OpcodeServer : uint32
SMSG_GUILD_NEWS_DELETED = 0xBADD,
SMSG_GUILD_NEWS_UPDATE = 0xBADD,
SMSG_GUILD_PARTY_STATE_RESPONSE = 0x1225,
SMSG_GUILD_PERMISSIONS_QUERY_RESULTS = 0xBADD,
SMSG_GUILD_PERMISSIONS_QUERY_RESULTS = 0x1827,
SMSG_GUILD_QUERY_RESPONSE = 0x1046,
SMSG_GUILD_RANK = 0x1218,
SMSG_GUILD_RANKS_UPDATE = 0xBADD,
@@ -1091,16 +1100,16 @@ enum OpcodeServer : uint32
SMSG_MOVE_COLLISION_DISABLE = 0xBADD,
SMSG_MOVE_COLLISION_ENABLE = 0xBADD,
SMSG_MOVE_FEATHER_FALL = 0xBADD,
SMSG_MOVE_GRAVITY_DISABLE = 0xBADD,
SMSG_MOVE_GRAVITY_DISABLE = 0x02C6,
SMSG_MOVE_GRAVITY_ENABLE = 0xBADD,
SMSG_MOVE_KNOCK_BACK = 0xBADD,
SMSG_MOVE_LAND_WALK = 0xBADD,
SMSG_MOVE_NORMAL_FALL = 0xBADD,
SMSG_MOVE_ROOT = 0xBADD,
SMSG_MOVE_ROOT = 0x1B5A,
SMSG_MOVE_SET_ACTIVE_MOVER = 0xBADD,
SMSG_MOVE_SET_CAN_FLY = 0xBADD,
SMSG_MOVE_SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY = 0xBADD,
SMSG_MOVE_SET_COLLISION_HEIGHT = 0xBADD,
SMSG_MOVE_SET_COLLISION_HEIGHT = 0x008D,
SMSG_MOVE_SET_COMPOUND_STATE = 0xBADD,
SMSG_MOVE_SET_FLIGHT_BACK_SPEED = 0xBADD,
SMSG_MOVE_SET_FLIGHT_SPEED = 0xBADD,
@@ -1128,7 +1137,7 @@ enum OpcodeServer : uint32
SMSG_MOVE_UPDATE_RUN_SPEED = 0xBADD,
SMSG_MOVE_UPDATE_SWIM_BACK_SPEED = 0xBADD,
SMSG_MOVE_UPDATE_SWIM_SPEED = 0xBADD,
SMSG_MOVE_UPDATE_TELEPORT = 0xBADD,
SMSG_MOVE_UPDATE_TELEPORT = 0x03D5,
SMSG_MOVE_UPDATE_TURN_RATE = 0xBADD,
SMSG_MOVE_UPDATE_WALK_SPEED = 0xBADD,
SMSG_MOVE_WATER_WALK = 0xBADD,
@@ -1144,7 +1153,7 @@ enum OpcodeServer : uint32
SMSG_NPC_TEXT_UPDATE = 0x1122,
SMSG_NPC_WONT_TALK = 0xBADD,
SMSG_OFFER_PETITION_ERROR = 0xBADD,
SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA = 0xBADD,
SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA = 0x053F,
SMSG_OPEN_CONTAINER = 0xBADD,
SMSG_OPEN_LFG_DUNGEON_FINDER = 0xBADD,
SMSG_OVERRIDE_LIGHT = 0xBADD,
@@ -1189,7 +1198,7 @@ enum OpcodeServer : uint32
SMSG_PLAY_MUSIC = 0xBADD,
SMSG_PLAY_OBJECT_SOUND = 0xBADD,
SMSG_PLAY_ONE_SHOT_ANIM_KIT = 0xBADD,
SMSG_PLAY_SOUND = 0xBADD,
SMSG_PLAY_SOUND = 0x02D2,
SMSG_PLAY_SPELL_VISUAL = 0xBADD,
SMSG_PLAY_SPELL_VISUAL_KIT = 0xBADD,
SMSG_PLAY_TIME_WARNING = 0xBADD,
@@ -1202,8 +1211,9 @@ enum OpcodeServer : uint32
SMSG_PVP_CREDIT = 0xBADD,
SMSG_PVP_LOG_DATA = 0xBADD,
SMSG_PVP_OPTIONS_ENABLED = 0xBADD,
SMSG_PVP_SEASON = 0x09E3,
SMSG_QUERY_QUESTS_COMPLETED_RESPONSE = 0xBADD,
SMSG_QUERY_TIME_RESPONSE = 0xBADD,
SMSG_QUERY_TIME_RESPONSE = 0x1DB0,
SMSG_QUESTGIVER_OFFER_REWARD = 0xBADD,
SMSG_QUESTGIVER_QUEST_COMPLETE = 0xBADD,
SMSG_QUESTGIVER_QUEST_DETAILS = 0x15B3,
@@ -1274,13 +1284,13 @@ enum OpcodeServer : uint32
SMSG_SET_FACTION_STANDING = 0xBADD,
SMSG_SET_FACTION_VISIBLE = 0xBADD,
SMSG_SET_FLAT_SPELL_MODIFIER = 0x1884,
SMSG_SET_FORCED_REACTIONS = 0xBADD,
SMSG_SET_FORCED_REACTIONS = 0x09A9,
SMSG_SET_MELEE_ANIM_KIT = 0xBADD,
SMSG_SET_MOVEMENT_ANIM_KIT = 0xBADD,
SMSG_SET_PCT_SPELL_MODIFIER = 0x113C,
SMSG_SET_PHASE_SHIFT = 0x00D1,
SMSG_SET_PLAYER_DECLINED_NAMES_RESULT = 0xBADD,
SMSG_SET_PLAY_HOVER_ANIM = 0xBADD,
SMSG_SET_PLAY_HOVER_ANIM = 0x02D4,
SMSG_SET_PROFICIENCY = 0x00D3,
SMSG_SET_PROJECTILE_POSITION = 0xBADD,
SMSG_SET_TIME_ZONE_INFORMATION = 0x153E,
@@ -1310,11 +1320,11 @@ enum OpcodeServer : uint32
SMSG_SPELL_FAILURE = 0xBADD,
SMSG_SPELL_GO = 0x1161,
SMSG_SPELL_START = 0x0803,
SMSG_SPELL_UPDATE_CHAIN_TARGETS = 0xBADD,
SMSG_SPELL_UPDATE_CHAIN_TARGETS = 0x0374,
SMSG_SPIRIT_HEALER_CONFIRM = 0xBADD,
SMSG_SPLINE_MOVE_COLLISION_DISABLE = 0xBADD,
SMSG_SPLINE_MOVE_COLLISION_ENABLE = 0xBADD,
SMSG_SPLINE_MOVE_GRAVITY_DISABLE = 0xBADD,
SMSG_SPLINE_MOVE_GRAVITY_DISABLE = 0x03B2,
SMSG_SPLINE_MOVE_GRAVITY_ENABLE = 0xBADD,
SMSG_SPLINE_MOVE_ROOT = 0xBADD,
SMSG_SPLINE_MOVE_SET_ANIM = 0xBADD,
@@ -1339,10 +1349,10 @@ enum OpcodeServer : uint32
SMSG_SPLINE_MOVE_STOP_SWIM = 0xBADD,
SMSG_SPLINE_MOVE_UNROOT = 0xBADD,
SMSG_SPLINE_MOVE_UNSET_FLYING = 0xBADD,
SMSG_SPLINE_MOVE_UNSET_HOVER = 0xBADD,
SMSG_SPLINE_MOVE_UNSET_HOVER = 0x1959,
SMSG_SPLINE_MOVE_WATER_WALK = 0xBADD,
SMSG_STABLE_RESULT = 0xBADD,
SMSG_STANDSTATE_UPDATE = 0xBADD,
SMSG_STANDSTATE_UPDATE = 0x1311,
SMSG_START_MIRROR_TIMER = 0xBADD,
SMSG_START_TIMER = 0xBADD,
SMSG_STOP_DANCE = 0xBADD,
@@ -1404,11 +1414,11 @@ enum OpcodeServer : uint32
SMSG_VOICE_SESSION_LEAVE = 0xBADD,
SMSG_VOICE_SESSION_ROSTER_UPDATE = 0xBADD,
SMSG_VOICE_SET_TALKER_MUTED = 0xBADD,
SMSG_VOID_ITEM_SWAP_RESPONSE = 0xBADD,
SMSG_VOID_ITEM_SWAP_RESPONSE = 0x1131,
SMSG_VOID_STORAGE_CONTENTS = 0x0108,
SMSG_VOID_STORAGE_FAILED = 0xBADD,
SMSG_VOID_STORAGE_TRANSFER_CHANGES = 0xBADD,
SMSG_VOID_TRANSFER_RESULT = 0xBADD,
SMSG_VOID_STORAGE_TRANSFER_CHANGES = 0x0321,
SMSG_VOID_TRANSFER_RESULT = 0x0539,
SMSG_WAIT_QUEUE_FINISH = 0xBADD,
SMSG_WAIT_QUEUE_UPDATE = 0xBADD,
SMSG_WARDEN_DATA = 0x0BEC,
+2 -2
View File
@@ -4207,7 +4207,7 @@ void Spell::SendChannelUpdate(uint32 time)
m_caster->SetUInt32Value(UNIT_CHANNEL_SPELL, 0);
}
WorldPacket data(MSG_CHANNEL_UPDATE, 8+4);
WorldPacket data(SMSG_CHANNEL_UPDATE, 8+4);
data << m_caster->GetPackGUID();
data << uint32(time);
@@ -4221,7 +4221,7 @@ void Spell::SendChannelStart(uint32 duration)
if (m_UniqueTargetInfo.size() + m_UniqueGOTargetInfo.size() == 1) // this is for TARGET_SELECT_CATEGORY_NEARBY
channelTarget = !m_UniqueTargetInfo.empty() ? m_UniqueTargetInfo.front().targetGUID : m_UniqueGOTargetInfo.front().targetGUID;
WorldPacket data(MSG_CHANNEL_START, (8+4+4));
WorldPacket data(SMSG_CHANNEL_START, (8+4+4));
data << m_caster->GetPackGUID();
data << uint32(m_spellInfo->Id);
data << uint32(duration);
+5 -5
View File
@@ -1086,11 +1086,11 @@ void World::LoadConfigSettings(bool reload)
m_int_configs[CONFIG_ARENA_RATED_UPDATE_TIMER] = sConfigMgr->GetIntDefault ("Arena.RatedUpdateTimer", 5 * IN_MILLISECONDS);
m_bool_configs[CONFIG_ARENA_QUEUE_ANNOUNCER_ENABLE] = sConfigMgr->GetBoolDefault("Arena.QueueAnnouncer.Enable", false);
m_bool_configs[CONFIG_ARENA_QUEUE_ANNOUNCER_PLAYERONLY] = sConfigMgr->GetBoolDefault("Arena.QueueAnnouncer.PlayerOnly", false);
m_int_configs[CONFIG_ARENA_SEASON_ID] = sConfigMgr->GetIntDefault ("Arena.ArenaSeason.ID", 1);
m_int_configs[CONFIG_ARENA_SEASON_ID] = sConfigMgr->GetIntDefault ("Arena.ArenaSeason.ID", 15);
m_int_configs[CONFIG_ARENA_START_RATING] = sConfigMgr->GetIntDefault ("Arena.ArenaStartRating", 0);
m_int_configs[CONFIG_ARENA_START_PERSONAL_RATING] = sConfigMgr->GetIntDefault ("Arena.ArenaStartPersonalRating", 1000);
m_int_configs[CONFIG_ARENA_START_MATCHMAKER_RATING] = sConfigMgr->GetIntDefault ("Arena.ArenaStartMatchmakerRating", 1500);
m_bool_configs[CONFIG_ARENA_SEASON_IN_PROGRESS] = sConfigMgr->GetBoolDefault("Arena.ArenaSeason.InProgress", true);
m_bool_configs[CONFIG_ARENA_SEASON_IN_PROGRESS] = sConfigMgr->GetBoolDefault("Arena.ArenaSeason.InProgress", false);
m_bool_configs[CONFIG_ARENA_LOG_EXTENDED_INFO] = sConfigMgr->GetBoolDefault("ArenaLog.ExtendedInfo", false);
m_bool_configs[CONFIG_OFFHAND_CHECK_AT_SPELL_UNLEARN] = sConfigMgr->GetBoolDefault("OffhandCheckAtSpellUnlearn", true);
@@ -2216,7 +2216,7 @@ void World::ForceGameEventUpdate()
}
/// Send a packet to all players (except self if mentioned)
void World::SendGlobalMessage(WorldPacket* packet, WorldSession* self, uint32 team)
void World::SendGlobalMessage(WorldPacket const* packet, WorldSession* self, uint32 team)
{
SessionMap::const_iterator itr;
for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
@@ -2233,7 +2233,7 @@ void World::SendGlobalMessage(WorldPacket* packet, WorldSession* self, uint32 te
}
/// Send a packet to all GMs (except self if mentioned)
void World::SendGlobalGMMessage(WorldPacket* packet, WorldSession* self, uint32 team)
void World::SendGlobalGMMessage(WorldPacket const* packet, WorldSession* self, uint32 team)
{
for (SessionMap::const_iterator itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
{
@@ -2361,7 +2361,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)
bool World::SendZoneMessage(uint32 zone, WorldPacket* packet, WorldSession* self, uint32 team)
bool World::SendZoneMessage(uint32 zone, WorldPacket const* packet, WorldSession* self, uint32 team)
{
bool foundPlayerToSend = false;
SessionMap::const_iterator itr;
+3 -3
View File
@@ -662,9 +662,9 @@ class World
void SendGlobalText(const char* text, WorldSession* self);
void SendGMText(uint32 string_id, ...);
void SendServerMessage(ServerMessageType type, const char *text = "", Player* player = NULL);
void SendGlobalMessage(WorldPacket* packet, WorldSession* self = nullptr, uint32 team = 0);
void SendGlobalGMMessage(WorldPacket* packet, WorldSession* self = nullptr, uint32 team = 0);
bool SendZoneMessage(uint32 zone, WorldPacket* packet, WorldSession* self = nullptr, uint32 team = 0);
void SendGlobalMessage(WorldPacket const* packet, WorldSession* self = nullptr, uint32 team = 0);
void SendGlobalGMMessage(WorldPacket const* packet, WorldSession* self = nullptr, uint32 team = 0);
bool SendZoneMessage(uint32 zone, WorldPacket const* packet, WorldSession* self = nullptr, uint32 team = 0);
void SendZoneText(uint32 zone, const char *text, WorldSession* self = nullptr, uint32 team = 0);
/// Are we in the middle of a shutdown?
+1
View File
@@ -511,6 +511,7 @@ bool LoadRealmInfo()
realm.Id.Build = fields[11].GetUInt32();
realm.Id.Region = fields[12].GetUInt8();
realm.Id.Battlegroup = fields[13].GetUInt8();
return true;
}
/// Initialize connection to the databases
+2 -2
View File
@@ -2265,9 +2265,9 @@ Arena.QueueAnnouncer.Enable = 0
#
# Arena.ArenaSeason.ID
# Description: Current arena season id shown in clients.
# Default: 8
# Default: 15
Arena.ArenaSeason.ID = 8
Arena.ArenaSeason.ID = 15
#
# Arena.ArenaSeason.InProgress