564 void SendAddonsInfo();
570 void SendNotification(
char const* format, ...)
ATTR_PRINTF(2, 3);
571 void SendNotification(
uint32 stringId, ...);
575 void SendSetPhaseShift(
uint32 phaseShift);
576 void SendQueryTimeResponse();
578 void SendAuthResponse(
uint8 code,
bool shortForm,
uint32 queuePos = 0);
579 void SendClientCacheVersion(
uint32 version);
581 void InitializeSession();
587 bool HasPermission(
uint32 permissionId);
588 void LoadPermissions();
590 void InvalidateRBACData();
596 std::string
const& GetPlayerName()
const;
597 std::string GetPlayerInfo()
const;
601 void SetPlayer(
Player* player);
604 void InitWarden(
SessionKey const& k, std::string
const& os);
612 bool isLogingOut()
const {
return _logoutTime || m_playerLogout; }
617 _logoutTime = requestTime;
623 return (_logoutTime > 0 && currTime >= _logoutTime + 20);
626 void LogoutPlayer(
bool save);
627 void KickPlayer(std::string
const& reason);
630 bool ValidateHyperlinksAndMaybeKick(std::string
const& str);
633 bool DisallowHyperlinksAndMaybeKick(std::string
const& str);
639 void SendAuthWaitQueue(
uint32 position);
641 void SendFeatureSystemStatus();
645 void SendTrainerList(
Creature* npc);
650 void SendTabardVendorActivate(
ObjectGuid guid);
651 void SendSpiritResurrect();
655 void SendUpdateTrade(
bool trader_data =
true);
658 void SendPetitionQueryOpcode(
ObjectGuid petitionguid);
666 void SendPetStableResult(
uint8 guid);
671 void SetAccountData(
AccountDataType type, time_t time, std::string
const& data);
672 void SendAccountDataTimes(
uint32 mask);
676 void SendTutorialsData();
681 if (_tutorials[index] != value)
683 _tutorials[index] = value;
689 bool UpdateAndCheckInstanceCount(
uint32 instanceId);
691 void UpdateInstanceEnterTimes();
707 void SendAuctionOwnerNotification(
AuctionEntry* auction);
708 void SendAuctionRemovedNotification(
uint32 auctionId,
uint32 itemEntry,
int32 randomPropertyId);
718 bool SendLearnNewTaxiNode(
Creature* unit);
719 void SendDiscoverNewTaxiNode(
uint32 nodeid);
722 void SendArenaTeamCommandResult(
uint32 team_action, std::string
const& team, std::string
const& player,
uint32 error_id = 0);
723 void SendNotInArenaTeamPacket(
uint8 type);
731 bool CanSpeak()
const;
740 char const* GetTrinityString(
uint32 entry)
const;
747 void ResetTimeOutTime(
bool onlyActive);
749 bool IsConnectionIdle()
const;
756 void ResetTimeSync();
767 void Handle_EarlyProccess(
WorldPacket& recvPacket);
773 void HandlePlayerLoginOpcode(
WorldPacket& recvPacket);
777 void HandleCharRaceOrFactionChangeCallback(std::shared_ptr<WorldPackets::Character::CharRaceOrFactionChangeInfo> factionChangeInfo,
PreparedQueryResult result);
779 void HandleCharRenameCallBack(std::shared_ptr<WorldPackets::Character::CharacterRenameInfo> renameInfo,
PreparedQueryResult result);
780 void HandleSetPlayerDeclinedNames(
WorldPacket& recvData);
783 void HandleCharCustomizeCallback(std::shared_ptr<WorldPackets::Character::CharCustomizeInfo> customizeInfo,
PreparedQueryResult result);
802 void HandleForceSpeedChangeAck(
WorldPacket& recvData);
803 void HandleMoveKnockBackAck(
WorldPacket& recvPacket);
805 void HandleMoveWaterWalkAck(
WorldPacket& recvPacket);
810 void HandleMoveSetCanFlyAckOpcode(
WorldPacket& recvData);
811 void HandleMoveSetCanTransitionBetweenSwinAndFlyAck(
WorldPacket& recvData);
812 void HandleMoveGravityDisableAck(
WorldPacket& recvData);
813 void HandleMoveGravityEnableAck(
WorldPacket& recvData);
814 void HandleMoveSetCollisionHgtAck(
WorldPacket& recvData);
816 void HandleMountSpecialAnimOpcode(
WorldPacket& recvdata);
830 void HandleLootMasterGiveOpcode(
WorldPacket& recvPacket);
837 void HandleGMTicketCreateOpcode(
WorldPacket& recvPacket);
838 void HandleGMTicketUpdateOpcode(
WorldPacket& recvPacket);
839 void HandleGMTicketDeleteOpcode(
WorldPacket& recvPacket);
842 void HandleGMSurveySubmit(
WorldPacket& recvPacket);
844 void HandleGMResponseResolve(
WorldPacket& recvPacket);
848 void HandleZoneUpdateOpcode(
WorldPacket& recvPacket);
862 void HandleItemNameQueryOpcode(
WorldPacket& recvPacket);
868 void HandleSetWatchedFactionOpcode(
WorldPacket& recvData);
869 void HandleSetFactionInactiveOpcode(
WorldPacket& recvData);
885 void HandleMoveWorldportAck();
892 void HandleSetActiveMoverOpcode(
WorldPacket& recvData);
893 void HandleMoveNotActiveMover(
WorldPacket& recvData);
894 void HandleDismissControlledVehicle(
WorldPacket& recvData);
895 void HandleRequestVehicleExit(
WorldPacket& recvData);
896 void HandleChangeSeatsOnControlledVehicle(
WorldPacket& recvData);
897 void HandleMoveTimeSkippedOpcode(
WorldPacket& recvData);
899 void HandleRequestRaidInfoOpcode(
WorldPacket& recvData);
902 void HandleGroupAcceptOpcode(
WorldPacket& recvPacket);
903 void HandleGroupDeclineOpcode(
WorldPacket& recvPacket);
904 void HandleGroupUninviteOpcode(
WorldPacket& recvPacket);
905 void HandleGroupUninviteGuidOpcode(
WorldPacket& recvPacket);
906 void HandleGroupSetLeaderOpcode(
WorldPacket& recvPacket);
907 void HandleGroupDisbandOpcode(
WorldPacket& recvPacket);
908 void HandleOptOutOfLootOpcode(
WorldPacket& recvData);
909 void HandleLootMethodOpcode(
WorldPacket& recvPacket);
911 void HandleRequestPartyMemberStatsOpcode(
WorldPacket& recvData);
912 void HandleRaidTargetUpdateOpcode(
WorldPacket& recvData);
913 void HandleRaidReadyCheckOpcode(
WorldPacket& recvData);
914 void HandleRaidReadyCheckFinishedOpcode(
WorldPacket& recvData);
915 void HandleGroupRaidConvertOpcode(
WorldPacket& recvData);
916 void HandleGroupChangeSubGroupOpcode(
WorldPacket& recvData);
917 void HandleGroupAssistantLeaderOpcode(
WorldPacket& recvData);
918 void HandlePartyAssignmentOpcode(
WorldPacket& recvData);
920 void HandlePetitionBuyOpcode(
WorldPacket& recvData);
921 void HandlePetitionShowSignatures(
WorldPacket& recvData);
924 void HandlePetitionRenameGuild(
WorldPacket& recvData);
927 void HandleOfferPetitionOpcode(
WorldPacket& recvData);
928 void HandleTurnInPetitionOpcode(
WorldPacket& recvData);
953 void HandleTaxiNodeStatusQueryOpcode(
WorldPacket& recvPacket);
954 void HandleTaxiQueryAvailableNodes(
WorldPacket& recvPacket);
955 void HandleActivateTaxiOpcode(
WorldPacket& recvPacket);
956 void HandleActivateTaxiExpressOpcode(
WorldPacket& recvPacket);
957 void HandleMoveSplineDoneOpcode(
WorldPacket& recvPacket);
960 void HandleTabardVendorActivateOpcode(
WorldPacket& recvPacket);
963 void HandlePetitionShowListOpcode(
WorldPacket& recvPacket);
965 void HandleGossipSelectOptionOpcode(
WorldPacket& recvPacket);
966 void HandleSpiritHealerActivateOpcode(
WorldPacket& recvPacket);
969 void HandleRequestStabledPets(
WorldPacket& recvPacket);
973 void HandleStableRevivePet(
WorldPacket& recvPacket);
979 void HandleAcceptTradeOpcode(
WorldPacket& recvPacket);
980 void HandleBeginTradeOpcode(
WorldPacket& recvPacket);
981 void HandleBusyTradeOpcode(
WorldPacket& recvPacket);
983 void HandleClearTradeItemOpcode(
WorldPacket& recvPacket);
984 void HandleIgnoreTradeOpcode(
WorldPacket& recvPacket);
985 void HandleInitiateTradeOpcode(
WorldPacket& recvPacket);
986 void HandleSetTradeGoldOpcode(
WorldPacket& recvPacket);
987 void HandleSetTradeItemOpcode(
WorldPacket& recvPacket);
988 void HandleUnacceptTradeOpcode(
WorldPacket& recvPacket);
991 void HandleAuctionListItems(
WorldPacket& recvData);
992 void HandleAuctionListBidderItems(
WorldPacket& recvData);
994 void HandleAuctionRemoveItem(
WorldPacket& recvData);
995 void HandleAuctionListOwnerItems(
WorldPacket& recvData);
997 void HandleAuctionListPendingSales(
WorldPacket& recvData);
1022 void HandleBuyItemInSlotOpcode(
WorldPacket& recvPacket);
1023 void HandleBuyItemOpcode(
WorldPacket& recvPacket);
1027 void HandleAutoEquipItemSlotOpcode(
WorldPacket& recvPacket);
1030 void HandleWrapItemOpcode(
WorldPacket& recvPacket);
1036 void HandleUseItemOpcode(
WorldPacket& recvPacket);
1037 void HandleOpenItemOpcode(
WorldPacket& recvPacket);
1050 void HandleUnlearnSkillOpcode(
WorldPacket& recvPacket);
1054 void HandleQuestgiverHelloOpcode(
WorldPacket& recvPacket);
1055 void HandleQuestgiverAcceptQuestOpcode(
WorldPacket& recvPacket);
1057 void HandleQuestgiverChooseRewardOpcode(
WorldPacket& recvPacket);
1060 void HandleQuestgiverCancel(
WorldPacket& recvData);
1061 void HandleQuestLogSwapQuest(
WorldPacket& recvData);
1062 void HandleQuestLogRemoveQuest(
WorldPacket& recvData);
1063 void HandleQuestConfirmAccept(
WorldPacket& recvData);
1064 void HandleQuestgiverCompleteQuest(
WorldPacket& recvData);
1065 void HandleQuestgiverQuestAutoLaunch(
WorldPacket& recvPacket);
1066 void HandlePushQuestToParty(
WorldPacket& recvPacket);
1067 void HandleQuestPushResult(
WorldPacket& recvPacket);
1070 void HandleChatMessage(
ChatMsg type,
Language lang, std::string msg, std::string target);
1071 void SendPlayerNotFoundNotice(std::string
const& name);
1072 void SendPlayerAmbiguousNotice(std::string
const& name);
1073 void SendWrongFactionNotice();
1076 void HandleChatIgnoredOpcode(
WorldPacket& recvPacket);
1082 void HandleSummonResponseOpcode(
WorldPacket& recvData);
1111 void HandlePetLearnTalent(
WorldPacket& recvPacket);
1112 void HandleLearnPreviewTalentsPet(
WorldPacket& recvPacket);
1136 void SendBfInvitePlayerToQueue(
uint32 battleId);
1137 void SendBfQueueInviteResponse(
uint32 battleId,
uint32 zoneId,
bool canQueue =
true,
bool full =
false);
1138 void SendBfEntered(
uint32 battleId);
1140 void HandleBfQueueInviteResponse(
WorldPacket& recvData);
1141 void HandleBfEntryInviteResponse(
WorldPacket& recvData);
1142 void HandleBfQueueExitRequest(
WorldPacket& recvData);
1144 void HandleWardenDataOpcode(
WorldPacket& recvData);
1146 void HandleMinimapPingOpcode(
WorldPacket& recvData);
1152 void HandleRealmSplitOpcode(
WorldPacket& recvData);
1155 void HandleResetInstancesOpcode(
WorldPacket& recvData);
1156 void HandleInstanceLockResponse(
WorldPacket& recvPacket);
1159 void HandleLfgSetCommentOpcode(
WorldPacket& recvData);
1160 void HandleLfgPlayerLockInfoRequestOpcode(
WorldPacket& recvData);
1161 void HandleLfgPartyLockInfoRequestOpcode(
WorldPacket& recvData);
1162 void SendLfgPlayerLockInfo();
1163 void SendLfgPartyLockInfo();
1166 void HandleLfgSetRolesOpcode(
WorldPacket& recvData);
1167 void HandleLfgProposalResultOpcode(
WorldPacket& recvData);
1168 void HandleLfgSetBootVoteOpcode(
WorldPacket& recvData);
1169 void HandleLfgTeleportOpcode(
WorldPacket& recvData);
1178 void SendLfgLfrList(
bool update);
1184 void SendLfgDisabled();
1185 void SendLfgOfferContinue(
uint32 dungeonEntry);
1186 void SendLfgTeleportError(
uint8 err);
1189 void HandleInspectArenaTeamsOpcode(
WorldPacket& recvData);
1190 void HandleArenaTeamQueryOpcode(
WorldPacket& recvData);
1191 void HandleArenaTeamRosterOpcode(
WorldPacket& recvData);
1192 void HandleArenaTeamInviteOpcode(
WorldPacket& recvData);
1193 void HandleArenaTeamAcceptOpcode(
WorldPacket& recvData);
1194 void HandleArenaTeamDeclineOpcode(
WorldPacket& recvData);
1195 void HandleArenaTeamLeaveOpcode(
WorldPacket& recvData);
1196 void HandleArenaTeamRemoveOpcode(
WorldPacket& recvData);
1197 void HandleArenaTeamDisbandOpcode(
WorldPacket& recvData);
1198 void HandleArenaTeamLeaderOpcode(
WorldPacket& recvData);
1207 void HandleCancelTempEnchantmentOpcode(
WorldPacket& recvData);
1212 void HandleVoiceSessionEnableOpcode(
WorldPacket& recvData);
1213 void HandleSetActiveVoiceChannel(
WorldPacket& recvData);
1214 void HandleSetTaxiBenchmarkOpcode(
WorldPacket& recvData);
1233 void HandleAcceptGrantLevel(
WorldPacket& recvData);
1253 void SendCalendarRaidLockoutAdded(
InstanceSave const* save);
1254 void SendCalendarRaidLockoutRemoved(
InstanceSave const* save);
1255 void SendCalendarRaidLockoutUpdated(
InstanceSave const* save);
1259 void HandleMirrorImageDataRequest(
WorldPacket& recvData);
1262 void HandleEquipmentSetDelete(
WorldPacket& recvData);
1263 void HandleEquipmentSetUse(
WorldPacket& recvData);
1265 void HandleReadyForAccountDataTimes(
WorldPacket& recvData);
1270 void HandleUpdateProjectilePosition(
WorldPacket& recvPacket);
1271 void HandleUpdateMissileTrajectory(
WorldPacket& recvPacket);
1279 void ProcessQueryCallbacks();
1292 bool EvaluateOpcode(
WorldPacket& p, time_t time)
const;
1301 uint32 GetMaxPacketCounterAllowed(
uint16 opcode)
const;
1317 void moveItems(
Item* myItems[],
Item* hisItems[]);
1322 void LogUnexpectedOpcode(
WorldPacket* packet,
char const* status,
const char *reason);
1328 return _legitCharacters.find(lowGUID) != _legitCharacters.end();
1370 static uint32 constexpr MaxSecureAddons = 25;
1385 void ComputeNewClockDelta();