diff options
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 2 | ||||
| -rw-r--r-- | src/server/game/Handlers/BattleGroundHandler.cpp | 2 | ||||
| -rw-r--r-- | src/server/game/Handlers/CharacterHandler.cpp | 4 | ||||
| -rw-r--r-- | src/server/game/Handlers/ItemHandler.cpp | 47 | ||||
| -rw-r--r-- | src/server/game/Handlers/MiscHandler.cpp | 5 | ||||
| -rw-r--r-- | src/server/game/Handlers/PetitionsHandler.cpp | 7 | ||||
| -rw-r--r-- | src/server/game/Handlers/SpellHandler.cpp | 18 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/CharacterPackets.h | 13 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/ItemPackets.cpp | 8 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/ItemPackets.h | 13 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/MiscPackets.h | 10 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/SpellPackets.cpp | 6 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/SpellPackets.h | 11 | ||||
| -rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 19 | ||||
| -rw-r--r-- | src/server/game/Server/Protocol/Opcodes.h | 13 | ||||
| -rw-r--r-- | src/server/game/Server/WorldSession.cpp | 14 | ||||
| -rw-r--r-- | src/server/game/Server/WorldSession.h | 25 | 
17 files changed, 123 insertions, 94 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index d25e10d8646..72031a60e7f 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -8579,7 +8579,7 @@ float Unit::GetUnitSpellCriticalChance(Unit* victim, SpellInfo const* spellProto                              {                                  crit_chance *= 1.5f;                                  if (AuraEffect const* eff = (*i)->GetBase()->GetEffect(EFFECT_1)) -                                    crit_chance += (*i)->GetAmount(); +                                    crit_chance += eff->GetAmount();                              }                              break;                          case 7917: // Glyph of Shadowburn diff --git a/src/server/game/Handlers/BattleGroundHandler.cpp b/src/server/game/Handlers/BattleGroundHandler.cpp index 87434e7b29e..cf6d599eb04 100644 --- a/src/server/game/Handlers/BattleGroundHandler.cpp +++ b/src/server/game/Handlers/BattleGroundHandler.cpp @@ -297,7 +297,7 @@ void WorldSession::HandleBattlegroundPlayerPositionsOpcode(WorldPacket& /*recvDa      ObjectGuid aguid = aplr ? aplr->GetGUID() : ObjectGuid::Empty;      ObjectGuid hguid = hplr ? hplr->GetGUID() : ObjectGuid::Empty; -    WorldPacket data(SMSG_BATTLEFIELD_PLAYER_POSITIONS); +    WorldPacket data(SMSG_BATTLEGROUND_PLAYER_POSITIONS);      data.WriteBits(acount, 22);      for (uint8 i = 0; i < acount; i++) diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index bfe1664c8eb..c255d786ce3 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -314,7 +314,7 @@ void WorldSession::HandleCharUndeleteEnum(PreparedQueryResult result)      SendPacket(charEnum.Write());  } -void WorldSession::HandleCharUndeleteEnumOpcode(WorldPacket& /*recvData*/) +void WorldSession::HandleCharUndeleteEnumOpcode(WorldPackets::Character::EnumCharacters& /*enumCharacters*/)  {      /// get all the data necessary for loading all undeleted characters (along with their pets) on the account      PreparedStatement* stmt = nullptr; @@ -2290,7 +2290,7 @@ void WorldSession::HandleOpeningCinematic(WorldPacket& /*recvData*/)      }  } -void WorldSession::HandleUndeleteCooldownStatusQuery(WorldPacket& /*recvData*/) +void WorldSession::HandleGetUndeleteCooldownStatus(WorldPackets::Character::GetUndeleteCooldownStatus& /*getCooldown*/)  {      /// empty result to force wait      PreparedQueryResultPromise result; diff --git a/src/server/game/Handlers/ItemHandler.cpp b/src/server/game/Handlers/ItemHandler.cpp index 29fd38f649d..d90cadaa119 100644 --- a/src/server/game/Handlers/ItemHandler.cpp +++ b/src/server/game/Handlers/ItemHandler.cpp @@ -684,56 +684,45 @@ void WorldSession::SendListInventory(ObjectGuid vendorGuid)      SendPacket(packet.Write());  } -void WorldSession::HandleAutoStoreBagItemOpcode(WorldPacket& recvData) +void WorldSession::HandleAutoStoreBagItemOpcode(WorldPackets::Item::AutoStoreBagItem& packet)  { -    uint32 itemCount = recvData.ReadBits(2); - -    if (itemCount) +    if (!packet.Inv.Items.empty())      { -        TC_LOG_ERROR("network", "WORLD: HandleAutoStoreBagItemOpcode - Invalid itemCount (%u)", itemCount); +        TC_LOG_ERROR("network", "HandleAutoStoreBagItemOpcode - Invalid itemCount (" SZFMTD ")", packet.Inv.Items.size());          return;      } -    /*for (uint32 i = 0; i < itemCount; ++i) -    { -        recvData.read_skip<uint8>(); -        recvData.read_skip<uint8>(); -    }*/ - -    //TC_LOG_DEBUG("network", "WORLD: CMSG_AUTOSTORE_BAG_ITEM"); -    uint8 srcbag, srcslot, dstbag; +    TC_LOG_DEBUG("network", "HandleAutoStoreBagItemOpcode: receive ContainerSlotA: %u, SlotA: %u, ContainerSlotB: %u", +        packet.ContainerSlotA, packet.SlotA, packet.ContainerSlotB); -    recvData >> srcbag >> dstbag >> srcslot; -    TC_LOG_DEBUG("network", "STORAGE: receive srcbag = %u, srcslot = %u, dstbag = %u", srcbag, srcslot, dstbag); - -    Item* pItem = _player->GetItemByPos(srcbag, srcslot); -    if (!pItem) +    Item* item = _player->GetItemByPos(packet.ContainerSlotA, packet.SlotA); +    if (!item)          return; -    if (!_player->IsValidPos(dstbag, NULL_SLOT, false))      // can be autostore pos +    if (!_player->IsValidPos(packet.ContainerSlotB, NULL_SLOT, false))      // can be autostore pos      { -        _player->SendEquipError(EQUIP_ERR_WRONG_SLOT, NULL, NULL); +        _player->SendEquipError(EQUIP_ERR_WRONG_SLOT);          return;      } -    uint16 src = pItem->GetPos(); +    uint16 src = item->GetPos();      // check unequip potability for equipped items and bank bags -    if (_player->IsEquipmentPos (src) || _player->IsBagPos (src)) +    if (_player->IsEquipmentPos(src) || _player->IsBagPos(src))      { -        InventoryResult msg = _player->CanUnequipItem(src, !_player->IsBagPos (src)); +        InventoryResult msg = _player->CanUnequipItem(src, !_player->IsBagPos(src));          if (msg != EQUIP_ERR_OK)          { -            _player->SendEquipError(msg, pItem, NULL); +            _player->SendEquipError(msg, item);              return;          }      }      ItemPosCountVec dest; -    InventoryResult msg = _player->CanStoreItem(dstbag, NULL_SLOT, dest, pItem, false); +    InventoryResult msg = _player->CanStoreItem(packet.ContainerSlotB, NULL_SLOT, dest, item, false);      if (msg != EQUIP_ERR_OK)      { -        _player->SendEquipError(msg, pItem, NULL); +        _player->SendEquipError(msg, item);          return;      } @@ -741,12 +730,12 @@ void WorldSession::HandleAutoStoreBagItemOpcode(WorldPacket& recvData)      if (dest.size() == 1 && dest[0].pos == src)      {          // just remove grey item state -        _player->SendEquipError(EQUIP_ERR_INTERNAL_BAG_ERROR, pItem, NULL); +        _player->SendEquipError(EQUIP_ERR_INTERNAL_BAG_ERROR, item);          return;      } -    _player->RemoveItem(srcbag, srcslot, true); -    _player->StoreItem(dest, pItem, true); +    _player->RemoveItem(packet.ContainerSlotA, packet.SlotA, true); +    _player->StoreItem(dest, item, true);  }  void WorldSession::HandleBuyBankSlotOpcode(WorldPacket& recvPacket) diff --git a/src/server/game/Handlers/MiscHandler.cpp b/src/server/game/Handlers/MiscHandler.cpp index 508ce1c942a..aed2da5c534 100644 --- a/src/server/game/Handlers/MiscHandler.cpp +++ b/src/server/game/Handlers/MiscHandler.cpp @@ -1770,10 +1770,9 @@ void WorldSession::HandleGuildSetFocusedAchievement(WorldPackets::Achievement::G          guild->GetAchievementMgr().SendAchievementInfo(_player, setFocusedAchievement.AchievementID);  } -void WorldSession::HandleWorldStateUITimerUpdate(WorldPacket& /*recvData*/) +void WorldSession::HandleUITimeRequest(WorldPackets::Misc::UITimeRequest& /*request*/)  { -    // empty opcode -    TC_LOG_DEBUG("network", "WORLD: CMSG_WORLD_STATE_UI_TIMER_UPDATE"); +    TC_LOG_DEBUG("network", "WORLD: CMSG_UI_TIME_REQUEST");      WorldPackets::Misc::UITime response;      response.Time = time(NULL); diff --git a/src/server/game/Handlers/PetitionsHandler.cpp b/src/server/game/Handlers/PetitionsHandler.cpp index 77a9aacfda4..45f8b6dea1d 100644 --- a/src/server/game/Handlers/PetitionsHandler.cpp +++ b/src/server/game/Handlers/PetitionsHandler.cpp @@ -367,9 +367,10 @@ void WorldSession::SendPetitionQueryOpcode(ObjectGuid petitionguid)      SendPacket(&data);  } -void WorldSession::HandlePetitionRenameOpcode(WorldPacket& recvData) +void WorldSession::HandlePetitionRenameGuildOpcode(WorldPacket& recvData)  { -    TC_LOG_DEBUG("network", "Received opcode MSG_PETITION_RENAME"); +    /// @todo: drop arena team code +    TC_LOG_DEBUG("network", "Received opcode CMSG_PETITION_RENAME_GUILD");      ObjectGuid petitionGuid;      uint32 type; @@ -434,7 +435,7 @@ void WorldSession::HandlePetitionRenameOpcode(WorldPacket& recvData)      CharacterDatabase.Execute(stmt);      TC_LOG_DEBUG("network", "Petition %s renamed to '%s'", petitionGuid.ToString().c_str(), newName.c_str()); -    WorldPacket data(MSG_PETITION_RENAME, (8 + newName.size() + 1)); +    WorldPacket data(SMSG_PETITION_RENAME_GUILD_RESPONSE, (8 + newName.size() + 1));      data << petitionGuid;      data << newName;      SendPacket(&data); diff --git a/src/server/game/Handlers/SpellHandler.cpp b/src/server/game/Handlers/SpellHandler.cpp index 25a185896ee..e1459f696f9 100644 --- a/src/server/game/Handlers/SpellHandler.cpp +++ b/src/server/game/Handlers/SpellHandler.cpp @@ -451,16 +451,9 @@ void WorldSession::HandleCancelCastOpcode(WorldPacket& recvPacket)          _player->InterruptNonMeleeSpells(false, spellId, false);  } -void WorldSession::HandleCancelAuraOpcode(WorldPacket& recvPacket) +void WorldSession::HandleCancelAuraOpcode(WorldPackets::Spells::CancelAura& cancelAura)  { -    uint32 spellId; -    recvPacket >> spellId; - -    ObjectGuid guid; -    recvPacket >> guid; - - -    SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId); +    SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(cancelAura.SpellID);      if (!spellInfo)          return; @@ -472,7 +465,7 @@ void WorldSession::HandleCancelAuraOpcode(WorldPacket& recvPacket)      if (spellInfo->IsChanneled())      {          if (Spell* curSpell = _player->GetCurrentSpell(CURRENT_CHANNELED_SPELL)) -            if (curSpell->m_spellInfo->Id == spellId) +            if (curSpell->GetSpellInfo()->Id == cancelAura.SpellID)                  _player->InterruptSpell(CURRENT_CHANNELED_SPELL);          return;      } @@ -483,8 +476,7 @@ void WorldSession::HandleCancelAuraOpcode(WorldPacket& recvPacket)      if (!spellInfo->IsPositive() || spellInfo->IsPassive())          return; -    // maybe should only remove one buff when there are multiple? -    _player->RemoveOwnedAura(spellId, ObjectGuid::Empty, 0, AURA_REMOVE_BY_CANCEL); +    _player->RemoveOwnedAura(cancelAura.SpellID, cancelAura.CasterGUID, 0, AURA_REMOVE_BY_CANCEL);      // If spell being removed is a resource tracker, see if player was tracking both (herbs / minerals) and remove the other      if (sWorld->getBoolConfig(CONFIG_ALLOW_TRACK_BOTH_RESOURCES) && spellInfo->HasAura(DIFFICULTY_NONE, SPELL_AURA_TRACK_RESOURCES)) @@ -501,7 +493,7 @@ void WorldSession::HandleCancelAuraOpcode(WorldPacket& recvPacket)              // Remove all auras related to resource tracking (only Herbs and Minerals in 3.3.5a)              for (std::list<uint32>::iterator it = spellIDs.begin(); it != spellIDs.end(); ++it) -                _player->RemoveOwnedAura(*it, ObjectGuid::Empty, 0, AURA_REMOVE_BY_CANCEL); +                _player->RemoveOwnedAura(*it, cancelAura.CasterGUID, 0, AURA_REMOVE_BY_CANCEL);          }      }  } diff --git a/src/server/game/Server/Packets/CharacterPackets.h b/src/server/game/Server/Packets/CharacterPackets.h index c65de450e6c..1004b5656a8 100644 --- a/src/server/game/Server/Packets/CharacterPackets.h +++ b/src/server/game/Server/Packets/CharacterPackets.h @@ -28,7 +28,10 @@ namespace WorldPackets          class EnumCharacters final : public ClientPacket          {          public: -            EnumCharacters(WorldPacket&& packet) : ClientPacket(CMSG_CHAR_ENUM, std::move(packet)) { } +            EnumCharacters(WorldPacket&& packet) : ClientPacket(std::move(packet)) +            { +                ASSERT(GetOpcode() == CMSG_CHAR_ENUM || GetOpcode() == CMSG_CHAR_UNDELETE_ENUM); +            }              void Read() override { }          }; @@ -383,6 +386,14 @@ namespace WorldPackets              uint32 Result = 0; ///< @see enum CharacterUndeleteResult          }; +        class GetUndeleteCooldownStatus final : public ClientPacket +        { +        public: +            GetUndeleteCooldownStatus(WorldPacket&& packet) : ClientPacket(CMSG_GET_UNDELETE_COOLDOWN_STATUS, std::move(packet)) { } + +            void Read() override { } +        }; +          class UndeleteCooldownStatusResponse final : public ServerPacket          {          public: diff --git a/src/server/game/Server/Packets/ItemPackets.cpp b/src/server/game/Server/Packets/ItemPackets.cpp index 3d62b1bb575..17f26852315 100644 --- a/src/server/game/Server/Packets/ItemPackets.cpp +++ b/src/server/game/Server/Packets/ItemPackets.cpp @@ -157,6 +157,14 @@ void WorldPackets::Item::AutoEquipItem::Read()                   >> Slot;  } +void WorldPackets::Item::AutoStoreBagItem::Read() +{ +    _worldPacket >> Inv +                 >> ContainerSlotB +                 >> ContainerSlotA +                 >> SlotA; +} +  void WorldPackets::Item::DestroyItem::Read()  {      _worldPacket >> Count diff --git a/src/server/game/Server/Packets/ItemPackets.h b/src/server/game/Server/Packets/ItemPackets.h index 5461a4cd4ab..079d7839e90 100644 --- a/src/server/game/Server/Packets/ItemPackets.h +++ b/src/server/game/Server/Packets/ItemPackets.h @@ -188,6 +188,19 @@ namespace WorldPackets              uint8 PackSlot = 0;          }; +        class AutoStoreBagItem final : public ClientPacket +        { +        public: +            AutoStoreBagItem(WorldPacket&& packet) : ClientPacket(CMSG_AUTOSTORE_BAG_ITEM, std::move(packet)) { } + +            void Read() override; + +            uint8 ContainerSlotB = 0; +            InvUpdate Inv; +            uint8 ContainerSlotA = 0; +            uint8 SlotA = 0; +        }; +          class DestroyItem final : public ClientPacket          {          public: diff --git a/src/server/game/Server/Packets/MiscPackets.h b/src/server/game/Server/Packets/MiscPackets.h index b1da6e504a2..b46b0aed60a 100644 --- a/src/server/game/Server/Packets/MiscPackets.h +++ b/src/server/game/Server/Packets/MiscPackets.h @@ -160,10 +160,18 @@ namespace WorldPackets              uint32 MovieID = 0;          }; +        class UITimeRequest final : public ClientPacket +        { +        public: +            UITimeRequest(WorldPacket&& packet) : ClientPacket(CMSG_UI_TIME_REQUEST, std::move(packet)) { } + +            void Read() override { } +        }; +          class UITime final : public ServerPacket          {          public: -            UITime() : ServerPacket(SMSG_WORLD_STATE_UI_TIMER_UPDATE, 4) { } +            UITime() : ServerPacket(SMSG_UI_TIME, 4) { }              WorldPacket const* Write() override; diff --git a/src/server/game/Server/Packets/SpellPackets.cpp b/src/server/game/Server/Packets/SpellPackets.cpp index 53ec8a7f3cf..053bb6c504f 100644 --- a/src/server/game/Server/Packets/SpellPackets.cpp +++ b/src/server/game/Server/Packets/SpellPackets.cpp @@ -19,6 +19,12 @@  #include "SpellAuraEffects.h"  #include "MovementPackets.h" +void WorldPackets::Spells::CancelAura::Read() +{ +    _worldPacket >> SpellID; +    _worldPacket >> CasterGUID; +} +  WorldPacket const* WorldPackets::Spells::CategoryCooldown::Write()  {      _worldPacket.reserve(4 + 8 * CategoryCooldowns.size()); diff --git a/src/server/game/Server/Packets/SpellPackets.h b/src/server/game/Server/Packets/SpellPackets.h index 8357c470573..fa7b8e0b04a 100644 --- a/src/server/game/Server/Packets/SpellPackets.h +++ b/src/server/game/Server/Packets/SpellPackets.h @@ -27,6 +27,17 @@ namespace WorldPackets  {      namespace Spells      { +        class CancelAura final : public ClientPacket +        { +        public: +            CancelAura(WorldPacket&& packet) : ClientPacket(CMSG_CANCEL_AURA, std::move(packet)) { } + +            void Read() override; + +            ObjectGuid CasterGUID; +            int32 SpellID = 0; +        }; +          class CategoryCooldown final : public ServerPacket          {          public: diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 63ea7d66252..cb8cd23482f 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -176,7 +176,7 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(CMSG_AUTOEQUIP_GROUND_ITEM,                   STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_HANDLER(CMSG_AUTOEQUIP_ITEM,                                     STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, WorldPackets::Item::AutoEquipItem, &WorldSession::HandleAutoEquipItemOpcode);      DEFINE_OPCODE_HANDLER_OLD(CMSG_AUTOEQUIP_ITEM_SLOT,                     STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoEquipItemSlotOpcode   ); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_AUTOSTORE_BAG_ITEM,                      STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, &WorldSession::HandleAutoStoreBagItemOpcode    ); +    DEFINE_HANDLER(CMSG_AUTOSTORE_BAG_ITEM,                                 STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, WorldPackets::Item::AutoStoreBagItem, &WorldSession::HandleAutoStoreBagItemOpcode);      DEFINE_OPCODE_HANDLER_OLD(CMSG_AUTOSTORE_BANK_ITEM,                     STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoStoreBankItemOpcode   );      DEFINE_OPCODE_HANDLER_OLD(CMSG_AUTOSTORE_GROUND_ITEM,                   STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_HANDLER(CMSG_AUTOSTORE_LOOT_ITEM,                                STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, WorldPackets::Loot::AutoStoreLootItem, &WorldSession::HandleAutostoreLootItemOpcode); @@ -244,7 +244,7 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(CMSG_CALENDAR_REMOVE_EVENT,                   STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCalendarRemoveEvent       );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CALENDAR_REMOVE_INVITE,                  STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CALENDAR_UPDATE_EVENT,                   STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCalendarUpdateEvent       ); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_AURA,                             STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, &WorldSession::HandleCancelAuraOpcode          ); +    DEFINE_HANDLER(CMSG_CANCEL_AURA,                                        STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, WorldPackets::Spells::CancelAura, &WorldSession::HandleCancelAuraOpcode          );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_AUTO_REPEAT_SPELL,                STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelAutoRepeatSpellOpcode);      DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_CAST,                             STATUS_UNHANDLED, PROCESS_THREADSAFE,   &WorldSession::HandleCancelCastOpcode          );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CANCEL_CHANNELLING,                      STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelChanneling          ); @@ -258,7 +258,6 @@ void OpcodeTable::Initialize()      DEFINE_HANDLER(CMSG_CAST_SPELL,                                         STATUS_LOGGEDIN,  PROCESS_THREADSAFE,   WorldPackets::Spells::SpellCastRequest, &WorldSession::HandleCastSpellOpcode);      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHALLENGE_MODE_REQUEST_LEADERS,          STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHALLENGE_MODE_REQUEST_MAP_STATS,        STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     ); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_CHANGEPLAYER_DIFFICULTY,                 STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHANGE_BAG_SLOT_FLAG,                    STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE,      STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleChangeSeatsOnControlledVehicle);      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHANGE_SUB_GROUP,                        STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     ); @@ -291,7 +290,7 @@ void OpcodeTable::Initialize()      DEFINE_HANDLER(CMSG_CHAR_ENUM,                                          STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::Character::EnumCharacters, &WorldSession::HandleCharEnumOpcode);      DEFINE_HANDLER(CMSG_CHAR_RACE_OR_FACTION_CHANGE,                        STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::Character::CharRaceOrFactionChange, &WorldSession::HandleCharRaceOrFactionChangeOpcode);      DEFINE_HANDLER(CMSG_CHAR_RENAME,                                        STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::Character::CharacterRenameRequest, &WorldSession::HandleCharRenameOpcode); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_CHAR_UNDELETE_ENUM,                      STATUS_AUTHED,    PROCESS_THREADUNSAFE, &WorldSession::HandleCharUndeleteEnumOpcode    ); +    DEFINE_HANDLER(CMSG_CHAR_UNDELETE_ENUM,                                 STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::Character::EnumCharacters, &WorldSession::HandleCharUndeleteEnumOpcode);      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHAT_FILTERED,                           STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHAT_IGNORED,                            STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleChatIgnoredOpcode         );      DEFINE_OPCODE_HANDLER_OLD(CMSG_CHOICE_RESPONSE,                         STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     ); @@ -371,6 +370,7 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(CMSG_GET_MIRROR_IMAGE_DATA,                   STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_GET_SHIPMENT_INFO,                       STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_GET_TROPHY_LIST,                         STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     ); +    DEFINE_HANDLER(CMSG_GET_UNDELETE_COOLDOWN_STATUS,                       STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::Character::GetUndeleteCooldownStatus, &WorldSession::HandleGetUndeleteCooldownStatus);      DEFINE_OPCODE_HANDLER_OLD(CMSG_GHOST,                                   STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_GMRESPONSE_RESOLVE,                      STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleGMResponseResolve         );      DEFINE_OPCODE_HANDLER_OLD(CMSG_GMSURVEY_SUBMIT,                         STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleGMSurveySubmit            ); @@ -635,7 +635,7 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(CMSG_PARTY_UNSILENCE,                         STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_BUY,                            STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionBuyOpcode         );      DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_QUERY,                          STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionQueryOpcode       ); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_RENAME_GUILD,                   STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     ); +    DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_RENAME_GUILD,                   STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionRenameGuildOpcode );      DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_SHOW_LIST,                      STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionShowListOpcode    );      DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_SHOW_SIGNATURES,                STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionShowSignOpcode    );      DEFINE_OPCODE_HANDLER_OLD(CMSG_PETITION_SIGN,                           STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionSignOpcode        ); @@ -847,9 +847,9 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(CMSG_TROPHY_MONUMENT_LOAD_SELECTED_TROPHY_ID, STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_TURN_IN_PETITION,                        STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleTurnInPetitionOpcode      );      DEFINE_HANDLER(CMSG_TUTORIAL_FLAG,                                      STATUS_LOGGEDIN,  PROCESS_THREADUNSAFE, WorldPackets::Misc::TutorialSetFlag, &WorldSession::HandleTutorialFlag); +    DEFINE_HANDLER(CMSG_UI_TIME_REQUEST,                                    STATUS_LOGGEDIN,  PROCESS_INPLACE,      WorldPackets::Misc::UITimeRequest, &WorldSession::HandleUITimeRequest);      DEFINE_OPCODE_HANDLER_OLD(CMSG_UNACCEPT_TRADE,                          STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleUnacceptTradeOpcode       );      DEFINE_HANDLER(CMSG_UNDELETE_CHARACTER,                                 STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::Character::UndeleteCharacter, &WorldSession::HandleCharUndeleteOpcode); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_UNDELETE_COOLDOWN_STATUS_QUERY,          STATUS_AUTHED,    PROCESS_THREADUNSAFE, &WorldSession::HandleUndeleteCooldownStatusQuery);      DEFINE_OPCODE_HANDLER_OLD(CMSG_UNLEARN_SKILL,                           STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleUnlearnSkillOpcode        );      DEFINE_OPCODE_HANDLER_OLD(CMSG_UNREGISTER_ALL_ADDON_PREFIXES,           STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleUnregisterAddonPrefixesOpcode);      DEFINE_HANDLER(CMSG_UPDATE_ACCOUNT_DATA,                                STATUS_AUTHED,    PROCESS_THREADUNSAFE, WorldPackets::ClientConfig::UserClientUpdateAccountData, &WorldSession::HandleUpdateAccountData); @@ -873,7 +873,6 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(CMSG_WARGAME_START,                           STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(CMSG_WHO,                                     STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleWhoOpcode                 );      DEFINE_OPCODE_HANDLER_OLD(CMSG_WHOIS,                                   STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandleWhoisOpcode               ); -    DEFINE_OPCODE_HANDLER_OLD(CMSG_WORLD_STATE_UI_TIMER_UPDATE,             STATUS_LOGGEDIN,  PROCESS_INPLACE,      &WorldSession::HandleWorldStateUITimerUpdate   );      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          ); @@ -894,7 +893,6 @@ void OpcodeTable::Initialize()      DEFINE_OPCODE_HANDLER_OLD(MSG_MOVE_TOGGLE_FALL_LOGGING,                 STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(MSG_MOVE_TOGGLE_LOGGING,                      STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     );      DEFINE_OPCODE_HANDLER_OLD(MSG_NOTIFY_PARTY_SQUELCH,                     STATUS_UNHANDLED, PROCESS_INPLACE,      &WorldSession::Handle_NULL                     ); -    DEFINE_OPCODE_HANDLER_OLD(MSG_PETITION_RENAME,                          STATUS_UNHANDLED, PROCESS_THREADUNSAFE, &WorldSession::HandlePetitionRenameOpcode      );  #undef DEFINE_OPCODE_HANDLER_OLD  #undef DEFINE_HANDLER @@ -977,7 +975,6 @@ void OpcodeTable::Initialize()      DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_MGR_QUEUE_INVITE,            STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_MGR_QUEUE_REQUEST_RESPONSE,  STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_MGR_STATE_CHANGED,           STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); -    DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_PLAYER_POSITIONS,            STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_PORT_DENIED,                 STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_RATED_INFO,                  STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_BATTLEFIELD_STATUS_ACTIVE,               STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); @@ -1570,7 +1567,7 @@ void OpcodeTable::Initialize()      DEFINE_SERVER_OPCODE_HANDLER(SMSG_PERIODICAURALOG,                         STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETGODMODE,                              STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETITION_ALREADY_SIGNED,                 STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); -    DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETITION_RENAME_GUILD_RESULT,            STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); +    DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETITION_RENAME_GUILD_RESPONSE,          STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETITION_SHOW_LIST,                      STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETITION_SHOW_SIGNATURES,                STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_PETITION_SIGN_RESULTS,                   STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); @@ -1851,6 +1848,7 @@ void OpcodeTable::Initialize()      DEFINE_SERVER_OPCODE_HANDLER(SMSG_TRIGGER_MOVIE,                           STATUS_NEVER,        CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_TURN_IN_PETITION_RESULTS,                STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_TUTORIAL_FLAGS,                          STATUS_NEVER,        CONNECTION_TYPE_REALM); +    DEFINE_SERVER_OPCODE_HANDLER(SMSG_UI_TIME,                                 STATUS_NEVER,        CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_UNDELETE_CHARACTER_RESPONSE,             STATUS_NEVER,        CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE,       STATUS_NEVER,        CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_UNIT_HEALTH_FREQUENT,                    STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); @@ -1895,7 +1893,6 @@ void OpcodeTable::Initialize()      DEFINE_SERVER_OPCODE_HANDLER(SMSG_WHO,                                     STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_WHOIS,                                   STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_WORLD_SERVER_INFO,                       STATUS_NEVER,        CONNECTION_TYPE_INSTANCE); -    DEFINE_SERVER_OPCODE_HANDLER(SMSG_WORLD_STATE_UI_TIMER_UPDATE,             STATUS_NEVER,        CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_XP_GAIN_ABORTED,                         STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_XP_GAIN_ENABLED,                         STATUS_UNHANDLED,    CONNECTION_TYPE_REALM);      DEFINE_SERVER_OPCODE_HANDLER(SMSG_ZONE_UNDER_ATTACK,                       STATUS_UNHANDLED,    CONNECTION_TYPE_REALM); diff --git a/src/server/game/Server/Protocol/Opcodes.h b/src/server/game/Server/Protocol/Opcodes.h index 8e6cc96a517..971c69a2151 100644 --- a/src/server/game/Server/Protocol/Opcodes.h +++ b/src/server/game/Server/Protocol/Opcodes.h @@ -168,7 +168,6 @@ enum OpcodeClient : uint32      CMSG_CAST_SPELL                                   = 0x08FE,      CMSG_CHALLENGE_MODE_REQUEST_LEADERS               = 0x0E66,      CMSG_CHALLENGE_MODE_REQUEST_MAP_STATS             = 0x0E78, -    CMSG_CHANGEPLAYER_DIFFICULTY                      = 0xBADD,      CMSG_CHANGE_BAG_SLOT_FLAG                         = 0x1959,      CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE           = 0xBADD,      CMSG_CHANGE_SUB_GROUP                             = 0x0BA4, @@ -281,6 +280,7 @@ enum OpcodeClient : uint32      CMSG_GET_MIRROR_IMAGE_DATA                        = 0x08F6,      CMSG_GET_SHIPMENT_INFO                            = 0x06E3,      CMSG_GET_TROPHY_LIST                              = 0x13B1, +    CMSG_GET_UNDELETE_COOLDOWN_STATUS                 = 0x19A9,      CMSG_GHOST                                        = 0xBADD,      CMSG_GMRESPONSE_RESOLVE                           = 0xBADD,      CMSG_GMSURVEY_SUBMIT                              = 0xBADD, @@ -757,9 +757,9 @@ enum OpcodeClient : uint32      CMSG_TROPHY_MONUMENT_LOAD_SELECTED_TROPHY_ID      = 0x03DE,      CMSG_TURN_IN_PETITION                             = 0x1C89,      CMSG_TUTORIAL_FLAG                                = 0x0B16, +    CMSG_UI_TIME_REQUEST                              = 0x0302,      CMSG_UNACCEPT_TRADE                               = 0x13BA,      CMSG_UNDELETE_CHARACTER                           = 0x0D99, -    CMSG_UNDELETE_COOLDOWN_STATUS_QUERY               = 0x19A9,      CMSG_UNLEARN_SKILL                                = 0x0A26,      CMSG_UNREGISTER_ALL_ADDON_PREFIXES                = 0x082A,      CMSG_UPDATE_ACCOUNT_DATA                          = 0x12A1, @@ -783,7 +783,6 @@ enum OpcodeClient : uint32      CMSG_WARGAME_START                                = 0xBADD,      CMSG_WHO                                          = 0x1322,      CMSG_WHOIS                                        = 0x011F, -    CMSG_WORLD_STATE_UI_TIMER_UPDATE                  = 0x0302,      CMSG_WORLD_TELEPORT                               = 0xBADD,      CMSG_WRAP_ITEM                                    = 0xBADD,      CMSG_ZONEUPDATE                                   = 0xBADD, @@ -803,8 +802,7 @@ enum OpcodeClient : uint32      MSG_MOVE_SET_WALK_SPEED_CHEAT                     = 0xBADD,      MSG_MOVE_TOGGLE_FALL_LOGGING                      = 0xBADD,      MSG_MOVE_TOGGLE_LOGGING                           = 0xBADD, -    MSG_NOTIFY_PARTY_SQUELCH                          = 0xBADD, -    MSG_PETITION_RENAME                               = 0xBADD +    MSG_NOTIFY_PARTY_SQUELCH                          = 0xBADD  };  // SMSGs 6.0.3.19342 @@ -885,7 +883,6 @@ enum OpcodeServer : uint32      SMSG_BATTLEFIELD_MGR_QUEUE_INVITE                 = 0x0B32,      SMSG_BATTLEFIELD_MGR_QUEUE_REQUEST_RESPONSE       = 0x0B28,      SMSG_BATTLEFIELD_MGR_STATE_CHANGED                = 0x13C3, -    SMSG_BATTLEFIELD_PLAYER_POSITIONS                 = 0xBADD,      SMSG_BATTLEFIELD_PORT_DENIED                      = 0x0930,      SMSG_BATTLEFIELD_RATED_INFO                       = 0x1F0A,      SMSG_BATTLEFIELD_STATUS_ACTIVE                    = 0x1284, @@ -1479,7 +1476,7 @@ enum OpcodeServer : uint32      SMSG_PERIODICAURALOG                              = 0x0B1B,      SMSG_PETGODMODE                                   = 0xBADD,      SMSG_PETITION_ALREADY_SIGNED                      = 0x0D8E, -    SMSG_PETITION_RENAME_GUILD_RESULT                 = 0x1055, +    SMSG_PETITION_RENAME_GUILD_RESPONSE               = 0x1055,      SMSG_PETITION_SHOW_LIST                           = 0x0915,      SMSG_PETITION_SHOW_SIGNATURES                     = 0x0830,      SMSG_PETITION_SIGN_RESULTS                        = 0x11E9, @@ -1760,6 +1757,7 @@ enum OpcodeServer : uint32      SMSG_TRIGGER_MOVIE                                = 0x151F,      SMSG_TURN_IN_PETITION_RESULTS                     = 0x0919,      SMSG_TUTORIAL_FLAGS                               = 0x020F, +    SMSG_UI_TIME                                      = 0x0B83,      SMSG_UNDELETE_CHARACTER_RESPONSE                  = 0x0344,      SMSG_UNDELETE_COOLDOWN_STATUS_RESPONSE            = 0x0310,      SMSG_UNIT_HEALTH_FREQUENT                         = 0xBADD, @@ -1804,7 +1802,6 @@ enum OpcodeServer : uint32      SMSG_WHO                                          = 0x0601,      SMSG_WHOIS                                        = 0x1D30,      SMSG_WORLD_SERVER_INFO                            = 0x11AC, -    SMSG_WORLD_STATE_UI_TIMER_UPDATE                  = 0x0B83,      SMSG_XP_GAIN_ABORTED                              = 0x031E,      SMSG_XP_GAIN_ENABLED                              = 0x0FAA,      SMSG_ZONE_UNDER_ATTACK                            = 0x1401 diff --git a/src/server/game/Server/WorldSession.cpp b/src/server/game/Server/WorldSession.cpp index 3567067252f..17ca3e3c58c 100644 --- a/src/server/game/Server/WorldSession.cpp +++ b/src/server/game/Server/WorldSession.cpp @@ -640,7 +640,7 @@ void WorldSession::KickPlayer()      }  } -void WorldSession::SendNotification(const char *format, ...) +void WorldSession::SendNotification(char const* format, ...)  {      if (format)      { @@ -660,15 +660,15 @@ void WorldSession::SendNotification(const char *format, ...)      }  } -void WorldSession::SendNotification(uint32 string_id, ...) +void WorldSession::SendNotification(uint32 stringId, ...)  { -    char const* format = GetTrinityString(string_id); +    char const* format = GetTrinityString(stringId);      if (format)      {          va_list ap;          char szStr[1024];          szStr[0] = '\0'; -        va_start(ap, string_id); +        va_start(ap, stringId);          vsnprintf(szStr, 1024, format, ap);          va_end(ap); @@ -704,12 +704,6 @@ void WorldSession::Handle_ServerSide(WorldPacket& recvPacket)          , GetOpcodeNameForLogging(static_cast<OpcodeClient>(recvPacket.GetOpcode())).c_str(), GetPlayerInfo().c_str());  } -void WorldSession::Handle_Deprecated(WorldPacket& recvPacket) -{ -    TC_LOG_ERROR("network.opcode", "Received deprecated opcode %s from %s" -        , GetOpcodeNameForLogging(static_cast<OpcodeClient>(recvPacket.GetOpcode())).c_str(), GetPlayerInfo().c_str()); -} -  void WorldSession::LoadGlobalAccountData()  {      PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_ACCOUNT_DATA); diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index 71cfaa634d0..0707ffbb6fc 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -105,6 +105,7 @@ namespace WorldPackets          class CharCustomize;          class CharRaceOrFactionChange;          class GenerateRandomCharacterName; +        class GetUndeleteCooldownStatus;          class ReorderCharacters;          class UndeleteCharacter;          class PlayerLogin; @@ -168,15 +169,16 @@ namespace WorldPackets      namespace Item      { +        class AutoEquipItem; +        class AutoStoreBagItem;          class BuyBackItem; +        class DestroyItem;          class ItemRefundInfo;          class RepairItem;          class SellItem;          class SplitItem;          class SwapInvItem;          class SwapItem; -        class AutoEquipItem; -        class DestroyItem;      }      namespace Loot @@ -201,6 +203,7 @@ namespace WorldPackets          class RepopRequest;          class RequestCemeteryList;          class ResurrectResponse; +        class UITimeRequest;      }      namespace Movement @@ -242,6 +245,7 @@ namespace WorldPackets      namespace Spells      { +        class CancelAura;          class SpellCastRequest;          class SetActionButton;      } @@ -435,8 +439,8 @@ class WorldSession          void SendPacket(WorldPacket const* packet, bool forced = false);          void AddInstanceConnection(std::shared_ptr<WorldSocket> sock) { m_Socket[1] = sock; } -        void SendNotification(const char *format, ...) ATTR_PRINTF(2, 3); -        void SendNotification(uint32 string_id, ...); +        void SendNotification(char const* format, ...) ATTR_PRINTF(2, 3); +        void SendNotification(uint32 stringId, ...);          void SendPetNameInvalid(uint32 error, std::string const& name, DeclinedName *declinedName);          void SendPartyResult(PartyOperation operation, std::string const& member, PartyResult res, uint32 val = 0);          void SendAreaTriggerMessage(const char* Text, ...) ATTR_PRINTF(2, 3); @@ -629,12 +633,11 @@ class WorldSession          void Handle_NULL(WorldPacket& recvPacket);          // not used          void Handle_EarlyProccess(WorldPacket& recvPacket); // just mark packets processed in WorldSocket::OnRead          void Handle_ServerSide(WorldPacket& recvPacket);    // sever side only, can't be accepted from client -        void Handle_Deprecated(WorldPacket& recvPacket);    // never used anymore by client          void HandleCharEnum(PreparedQueryResult result);          void HandleCharEnumOpcode(WorldPackets::Character::EnumCharacters& /*enumCharacters*/);          void HandleCharUndeleteEnum(PreparedQueryResult result); -        void HandleCharUndeleteEnumOpcode(WorldPacket& /*recvData*/); +        void HandleCharUndeleteEnumOpcode(WorldPackets::Character::EnumCharacters& /*enumCharacters*/);          void HandleCharDeleteOpcode(WorldPackets::Character::DeleteChar& charDelete);          void HandleCharCreateOpcode(WorldPackets::Character::CreateChar& charCreate);          void HandleCharCreateCallback(PreparedQueryResult result, WorldPackets::Character::CharacterCreateInfo* createInfo); @@ -653,7 +656,7 @@ class WorldSession          void HandleRandomizeCharNameOpcode(WorldPackets::Character::GenerateRandomCharacterName& packet);          void HandleReorderCharacters(WorldPackets::Character::ReorderCharacters& reorderChars);          void HandleOpeningCinematic(WorldPacket& recvData); -        void HandleUndeleteCooldownStatusQuery(WorldPacket& /*recvData*/); +        void HandleGetUndeleteCooldownStatus(WorldPackets::Character::GetUndeleteCooldownStatus& /*getCooldown*/);          void HandleUndeleteCooldownStatusCallback(PreparedQueryResult result);          void HandleCharUndeleteOpcode(WorldPackets::Character::UndeleteCharacter& undeleteInfo);          void HandleCharUndeleteCallback(PreparedQueryResult result, WorldPackets::Character::CharacterUndeleteInfo* undeleteInfo); @@ -806,7 +809,7 @@ class WorldSession          void HandlePetitionBuyOpcode(WorldPacket& recvData);          void HandlePetitionShowSignOpcode(WorldPacket& recvData);          void HandlePetitionQueryOpcode(WorldPacket& recvData); -        void HandlePetitionRenameOpcode(WorldPacket& recvData); +        void HandlePetitionRenameGuildOpcode(WorldPacket& recvData);          void HandlePetitionSignOpcode(WorldPacket& recvData);          void HandlePetitionDeclineOpcode(WorldPacket& recvData);          void HandleOfferPetitionOpcode(WorldPacket& recvData); @@ -928,7 +931,7 @@ class WorldSession          void HandleBuyItemInSlotOpcode(WorldPacket& recvPacket);          void HandleBuyItemOpcode(WorldPacket& recvPacket);          void HandleListInventoryOpcode(WorldPackets::NPC::Hello& packet); -        void HandleAutoStoreBagItemOpcode(WorldPacket& recvPacket); +        void HandleAutoStoreBagItemOpcode(WorldPackets::Item::AutoStoreBagItem& packet);          void HandleReadItem(WorldPacket& recvPacket);          void HandleAutoEquipItemSlotOpcode(WorldPacket& recvPacket);          void HandleSwapItem(WorldPackets::Item::SwapItem& swapItem); @@ -945,7 +948,7 @@ class WorldSession          void HandleOpenItemOpcode(WorldPacket& recvPacket);          void HandleCastSpellOpcode(WorldPackets::Spells::SpellCastRequest& castRequest);          void HandleCancelCastOpcode(WorldPacket& recvPacket); -        void HandleCancelAuraOpcode(WorldPacket& recvPacket); +        void HandleCancelAuraOpcode(WorldPackets::Spells::CancelAura& cancelAura);          void HandleCancelGrowthAuraOpcode(WorldPacket& recvPacket);          void HandleCancelAutoRepeatSpellOpcode(WorldPacket& recvPacket); @@ -1194,7 +1197,7 @@ class WorldSession          void HandleEquipmentSetSave(WorldPackets::EquipmentSet::SaveEquipmentSet& packet);          void HandleEquipmentSetDelete(WorldPacket& recvData);          void HandleEquipmentSetUse(WorldPacket& recvData); -        void HandleWorldStateUITimerUpdate(WorldPacket& recvData); +        void HandleUITimeRequest(WorldPackets::Misc::UITimeRequest& /*request*/);          void HandleQuestNPCQuery(WorldPacket& recvData);          void HandleQuestPOIQuery(WorldPacket& recvData);          void HandleEjectPassenger(WorldPacket& data);  | 
