TrinityCore
Loading...
Searching...
No Matches
WorldSession Class Reference

Player session in the World. More...

#include <WorldSession.h>

Classes

union  ConnectToKey
 
class  DosProtection
 
struct  PlayerDataAccount
 

Public Member Functions

 WorldSession (uint32 id, std::string &&name, uint32 battlenetAccountId, std::string &&battlenetAccountEmail, std::shared_ptr< WorldSocket > &&sock, AccountTypes sec, uint8 expansion, time_t mute_time, std::string &&os, Minutes timezoneOffset, uint32 build, ClientBuild::VariantId clientBuildVariant, LocaleConstant locale, uint32 recruiter, bool isARecruiter)
 WorldSession constructor.
 
 ~WorldSession ()
 WorldSession destructor.
 
bool PlayerLoading () const
 
bool PlayerLogout () const
 
bool PlayerLogoutWithSave () const
 
bool PlayerRecentlyLoggedOut () const
 
bool PlayerDisconnected () const
 
bool IsAddonRegistered (std::string_view prefix) const
 
void SendPacket (WorldPacket const *packet, bool forced=false)
 Send a packet to the client.
 
void SendNotification (char const *format,...) ATTR_PRINTF(2
 
void void SendNotification (uint32 stringId,...)
 
void SendPetNameInvalid (uint32 error, std::string const &name, Optional< DeclinedName > const &declinedName)
 
void SendPartyResult (PartyOperation operation, std::string const &member, PartyResult res, uint32 val=0)
 
void SendQueryTimeResponse ()
 
void SendAuthResponse (uint32 code, bool queued, uint32 queuePos=0)
 
void SendClientCacheVersion (uint32 version)
 
void SendAvailableHotfixes ()
 
void InitializeSession ()
 
void InitializeSessionCallback (LoginDatabaseQueryHolder const &holder, CharacterDatabaseQueryHolder const &realmHolder)
 
rbac::RBACData * GetRBACData () const
 
bool HasPermission (uint32 permissionId)
 
void LoadPermissions ()
 
QueryCallback LoadPermissionsAsync ()
 
void InvalidateRBACData ()
 
AccountTypes GetSecurity () const
 
uint32 GetAccountId () const
 
ObjectGuid GetAccountGUID () const
 
std::string const & GetAccountName () const
 
uint32 GetBattlenetAccountId () const
 
ObjectGuid GetBattlenetAccountGUID () const
 
Battlenet::Account & GetBattlenetAccount () const
 
Player * GetPlayer () const
 
std::string const & GetPlayerName () const
 
std::string GetPlayerInfo () const
 
void SetSecurity (AccountTypes security)
 
std::string const & GetRemoteAddress () const
 
void SetPlayer (Player *player)
 
uint8 GetAccountExpansion () const
 
uint8 GetExpansion () const
 
std::string const & GetOS () const
 
uint32 GetClientBuild () const
 
ClientBuild::VariantId const & GetClientBuildVariant () const
 
bool CanAccessAlliedRaces () const
 
void SetInQueue (bool state)
 Session in auth.queue currently.
 
bool isLogingOut () const
 Is the user engaged in a log out process?
 
void SetLogoutStartTime (time_t requestTime)
 Engage the logout process for the user.
 
bool ShouldLogOut (time_t currTime) const
 Is logout cooldown expired?
 
void LogoutPlayer (bool save)
 Log the player out
 
void KickPlayer (std::string_view reason)
 Kick a player out of the World.
 
bool ValidateHyperlinksAndMaybeKick (std::string const &str)
 
bool DisallowHyperlinksAndMaybeKick (std::string const &str)
 
void QueuePacket (WorldPacket &&new_packet)
 Add an incoming packet to the queue.
 
bool Update (uint32 diff, PacketFilter &updater)
 Update the WorldSession (triggered by World update)
 
void SendAuthWaitQueue (uint32 position)
 Handle the authentication waiting queue (to be completed)
 
void SendSetTimeZoneInformation ()
 
void SendFeatureSystemStatus ()
 
void SendFeatureSystemStatusGlueScreen ()
 
void BuildNameQueryData (ObjectGuid guid, WorldPackets::Query::NameCacheLookupResult &lookupData)
 
void SendTrainerList (Creature *npc, uint32 trainerId)
 
void SendListInventory (ObjectGuid guid)
 
void SendShowBank (ObjectGuid guid, PlayerInteractionType interactionType)
 
bool CanOpenMailBox (ObjectGuid guid)
 
void SendShowMailBox (ObjectGuid guid)
 
void SendTabardVendorActivate (ObjectGuid guid, TabardVendorType type)
 
void SendSpiritResurrect ()
 
void SendBindPoint (Creature *npc)
 
void SendOpenTransmogrifier (ObjectGuid const &guid)
 
void SendTradeStatus (WorldPackets::Trade::TradeStatus &status)
 
void SendUpdateTrade (bool trader_data=true)
 
void SendCancelTrade (TradeStatus status)
 
void SendPetitionQueryOpcode (ObjectGuid petitionguid)
 
void SendQueryPetNameResponse (ObjectGuid guid)
 
void SendPetStableResult (StableResult result)
 
bool CheckStableMaster (ObjectGuid guid)
 
AccountData const * GetAccountData (AccountDataType type) const
 
void SetAccountData (AccountDataType type, time_t time, std::string const &data)
 
void SendAccountDataTimes (ObjectGuid playerGuid, uint32 mask)
 
void LoadAccountData (PreparedQueryResult result, uint32 mask)
 
void LoadTutorialsData (PreparedQueryResult result)
 
void SendTutorialsData ()
 
void SaveTutorialsData (CharacterDatabaseTransaction trans)
 
uint32 GetTutorialInt (uint8 index) const
 
void SetTutorialInt (uint8 index, uint32 value)
 
void LoadInstanceTimeRestrictions (PreparedQueryResult result)
 
void SaveInstanceTimeRestrictions (CharacterDatabaseTransaction trans)
 
bool UpdateAndCheckInstanceCount (uint32 instanceId)
 
void AddInstanceEnterTime (uint32 instanceId, SystemTimePoint enterTime)
 
void UpdateInstanceEnterTimes ()
 
void LoadPlayerDataAccount (PreparedQueryResult const &elementsResult, PreparedQueryResult const &flagsResult)
 
void SavePlayerDataAccount (LoginDatabaseTransaction const &transaction)
 
void SetPlayerDataElementAccount (uint32 dataElementId, float value)
 
void SetPlayerDataElementAccount (uint32 dataElementId, int64 value)
 
void SetPlayerDataFlagAccount (uint32 dataFlagId, bool on)
 
PlayerDataAccount const & GetPlayerDataAccount () const
 
void SendAuctionHello (ObjectGuid guid, Unit const *unit)
 
void SendAuctionCommandResult (uint32 auctionId, AuctionCommand command, AuctionResult errorCode, Milliseconds delayForNextAction, InventoryResult bagResult=InventoryResult(0))
 Notifies the client of the result of his last auction operation. It is called when the player bids, creates, or deletes an auction.
 
void SendAuctionClosedNotification (AuctionPosting const *auction, float mailDelay, bool sold)
 
void SendAuctionOwnerBidNotification (AuctionPosting const *auction)
 
void SendBlackMarketOpenResult (ObjectGuid guid, Creature *auctioneer)
 
void SendBlackMarketBidOnItemResult (int32 result, int32 marketId, WorldPackets::Item::ItemInstance &item)
 
void SendBlackMarketWonNotification (BlackMarketEntry const *entry, Item const *item)
 
void SendBlackMarketOutbidNotification (BlackMarketTemplate const *templ)
 
void SendEnchantmentLog (ObjectGuid owner, ObjectGuid caster, ObjectGuid itemGuid, uint32 itemId, uint32 enchantId, uint32 enchantSlot)
 
void SendItemEnchantTimeUpdate (ObjectGuid Playerguid, ObjectGuid Itemguid, uint32 slot, uint32 Duration)
 
void SendTaxiStatus (ObjectGuid guid)
 
void SendTaxiMenu (Creature *unit)
 
bool SendLearnNewTaxiNode (Creature *unit)
 
void SendDiscoverNewTaxiNode (uint32 nodeid)
 
void SendPetitionShowList (ObjectGuid guid)
 
void DoLootRelease (Loot *loot)
 
void DoLootReleaseAll ()
 
bool CanSpeak () const
 
LocaleConstant GetSessionDbcLocale () const
 
LocaleConstant GetSessionDbLocaleIndex () const
 
Minutes GetTimezoneOffset () const
 
char const * GetTrinityString (uint32 entry) const
 
uint32 GetLatency () const
 
void SetLatency (uint32 latency)
 
void ResetTimeOutTime (bool onlyActive)
 
bool IsConnectionIdle () const
 
uint32 GetRecruiterId () const
 
bool IsARecruiter () const
 
void ResetTimeSync ()
 
void SendTimeSync ()
 
void RegisterTimeSync (uint32 counter)
 
uint32 AdjustClientMovementTime (uint32 time) const
 
time_t GetCalendarEventCreationCooldown () const
 
void SetCalendarEventCreationCooldown (time_t cooldown)
 
BattlePets::BattlePetMgr * GetBattlePetMgr () const
 
CollectionMgr * GetCollectionMgr () const
 
void Handle_NULL (WorldPackets::Null &null)
 
void Handle_EarlyProccess (WorldPackets::Null &null)
 
void LogUnprocessedTail (WorldPacket const *packet)
 Logging helper for unexpected opcodes.
 
void HandleCharEnum (CharacterDatabaseQueryHolder const &holder)
 
void HandleCharEnumOpcode (WorldPackets::Character::EnumCharacters &enumCharacters)
 
void HandleCharUndeleteEnumOpcode (WorldPackets::Character::EnumCharacters &enumCharacters)
 
void HandleCharDeleteOpcode (WorldPackets::Character::CharDelete &charDelete)
 
void HandleCharCreateOpcode (WorldPackets::Character::CreateCharacter &charCreate)
 
void HandlePlayerLoginOpcode (WorldPackets::Character::PlayerLogin &playerLogin)
 
void SendConnectToInstance (WorldPackets::Auth::ConnectToSerial serial)
 
void HandleContinuePlayerLogin ()
 
void AbortLogin (WorldPackets::Character::LoginFailureReason reason)
 
void HandleLoadScreenOpcode (WorldPackets::Character::LoadingScreenNotify &loadingScreenNotify)
 
void HandlePlayerLogin (LoginQueryHolder const &holder)
 
void HandleCheckCharacterNameAvailability (WorldPackets::Character::CheckCharacterNameAvailability &checkCharacterNameAvailability)
 
void HandleCharRenameOpcode (WorldPackets::Character::CharacterRenameRequest &request)
 
void HandleCharRenameCallBack (std::shared_ptr< WorldPackets::Character::CharacterRenameInfo > renameInfo, PreparedQueryResult result)
 
void HandleSetPlayerDeclinedNames (WorldPackets::Character::SetPlayerDeclinedNames &packet)
 
void HandleAlterAppearance (WorldPackets::Character::AlterApperance &packet)
 
void HandleCharCustomizeOpcode (WorldPackets::Character::CharCustomize &packet)
 
void HandleCharCustomizeCallback (std::shared_ptr< WorldPackets::Character::CharCustomizeInfo > customizeInfo, PreparedQueryResult result)
 
void HandleCharRaceOrFactionChangeOpcode (WorldPackets::Character::CharRaceOrFactionChange &packet)
 
void HandleCharRaceOrFactionChangeCallback (std::shared_ptr< WorldPackets::Character::CharRaceOrFactionChangeInfo > factionChangeInfo, PreparedQueryResult result)
 
void HandleRandomizeCharNameOpcode (WorldPackets::Character::GenerateRandomCharacterName &packet)
 
void HandleReorderCharacters (WorldPackets::Character::ReorderCharacters &reorderChars)
 
void HandleOpeningCinematic (WorldPackets::Misc::OpeningCinematic &packet)
 
void HandleGetUndeleteCooldownStatus (WorldPackets::Character::GetUndeleteCharacterCooldownStatus &)
 
void HandleUndeleteCooldownStatusCallback (PreparedQueryResult result)
 
void HandleCharUndeleteOpcode (WorldPackets::Character::UndeleteCharacter &undeleteInfo)
 
void HandleSavePersonalEmblem (WorldPackets::Character::SavePersonalEmblem const &savePersonalEmblem)
 
bool MeetsChrCustomizationReq (ChrCustomizationReqEntry const *req, Races race, Classes playerClass, bool checkRequiredDependentChoices, Trinity::IteratorPair< UF::ChrCustomizationChoice const * > selectedChoices) const
 
bool ValidateAppearance (Races race, Classes playerClass, Gender gender, Trinity::IteratorPair< UF::ChrCustomizationChoice const * > customizations)
 
void SendCharCreate (ResponseCodes result, ObjectGuid const &guid=ObjectGuid::Empty)
 
void SendCharDelete (ResponseCodes result)
 
void SendCharRename (ResponseCodes result, WorldPackets::Character::CharacterRenameInfo const *renameInfo)
 
void SendCharCustomize (ResponseCodes result, WorldPackets::Character::CharCustomizeInfo const *customizeInfo)
 
void SendCharFactionChange (ResponseCodes result, WorldPackets::Character::CharRaceOrFactionChangeInfo const *factionChangeInfo)
 
void SendSetPlayerDeclinedNamesResult (DeclinedNameResult result, ObjectGuid guid)
 
void SendUndeleteCooldownStatusResponse (uint32 currentCooldown, uint32 maxCooldown)
 
void SendUndeleteCharacterResponse (CharacterUndeleteResult result, WorldPackets::Character::CharacterUndeleteInfo const *undeleteInfo)
 
void HandlePlayedTime (WorldPackets::Character::RequestPlayedTime &packet)
 
void HandlePortGraveyard (WorldPackets::Misc::PortGraveyard &packet)
 
void HandleRequestCemeteryList (WorldPackets::Misc::RequestCemeteryList &packet)
 
void HandleInspectOpcode (WorldPackets::Inspect::Inspect &inspect)
 
void HandleQueryInspectAchievements (WorldPackets::Inspect::QueryInspectAchievements &inspect)
 
void HandleMountSpecialAnimOpcode (WorldPackets::Misc::MountSpecial &mountSpecial)
 
void HandleRepairItemOpcode (WorldPackets::Item::RepairItem &packet)
 
void HandleMoveKnockBackAck (WorldPackets::Movement::MoveKnockBackAck &movementAck)
 
void HandleMoveTeleportAck (WorldPackets::Movement::MoveTeleportAck &packet)
 
void HandleForceSpeedChangeAck (WorldPackets::Movement::MovementSpeedAck &packet)
 
void HandleSetAdvFlyingSpeedAck (WorldPackets::Movement::MovementSpeedAck &speedAck)
 
void HandleSetAdvFlyingSpeedRangeAck (WorldPackets::Movement::MovementSpeedRangeAck &speedRangeAck)
 
void HandleSetCollisionHeightAck (WorldPackets::Movement::MoveSetCollisionHeightAck &setCollisionHeightAck)
 
void HandleMoveApplyMovementForceAck (WorldPackets::Movement::MoveApplyMovementForceAck &moveApplyMovementForceAck)
 
void HandleMoveRemoveMovementForceAck (WorldPackets::Movement::MoveRemoveMovementForceAck &moveRemoveMovementForceAck)
 
void HandleMoveSetModMovementForceMagnitudeAck (WorldPackets::Movement::MovementSpeedAck &setModMovementForceMagnitudeAck)
 
void HandleMoveApplyInertiaAck (WorldPackets::Movement::MoveApplyInertiaAck &moveApplyInertiaAck)
 
void HandleMoveRemoveInertiaAck (WorldPackets::Movement::MoveRemoveInertiaAck &moveRemoveInertiaAck)
 
void HandleMoveForceGravityModifierChangeAck (WorldPackets::Movement::MoveForceGravityModifierChangeAck &moveForceGravityModifierChangeAck)
 
void HandleRepopRequest (WorldPackets::Misc::RepopRequest &packet)
 
void HandleAutostoreLootItemOpcode (WorldPackets::Loot::LootItem &packet)
 
void HandleLootMoneyOpcode (WorldPackets::Loot::LootMoney &packet)
 
void HandleLootOpcode (WorldPackets::Loot::LootUnit &packet)
 
void HandleLootReleaseOpcode (WorldPackets::Loot::LootRelease &packet)
 
void HandleLootMasterGiveOpcode (WorldPackets::Loot::MasterLootItem &masterLootItem)
 
void HandleSetLootSpecialization (WorldPackets::Loot::SetLootSpecialization &packet)
 
void HandleWhoOpcode (WorldPackets::Who::WhoRequestPkt &whoRequest)
 
void HandleLogoutRequestOpcode (WorldPackets::Character::LogoutRequest &logoutRequest)
 
void HandleLogoutCancelOpcode (WorldPackets::Character::LogoutCancel &logoutCancel)
 
void HandleGMTicketGetCaseStatusOpcode (WorldPackets::Ticket::GMTicketGetCaseStatus &packet)
 
void HandleGMTicketSystemStatusOpcode (WorldPackets::Ticket::GMTicketGetSystemStatus &packet)
 
void HandleSubmitUserFeedback (WorldPackets::Ticket::SubmitUserFeedback &userFeedback)
 
void HandleSupportTicketSubmitComplaint (WorldPackets::Ticket::SupportTicketSubmitComplaint &packet)
 
void HandleBugReportOpcode (WorldPackets::Ticket::BugReport &bugReport)
 
void HandleComplaint (WorldPackets::Ticket::Complaint &packet)
 
void HandleTogglePvP (WorldPackets::Misc::TogglePvP &packet)
 
void HandleSetPvP (WorldPackets::Misc::SetPvP &packet)
 
void HandleSetWarMode (WorldPackets::Misc::SetWarMode &packet)
 
void HandleSetSelectionOpcode (WorldPackets::Misc::SetSelection &packet)
 
void HandleStandStateChangeOpcode (WorldPackets::Misc::StandStateChange &packet)
 
void HandleEmoteOpcode (WorldPackets::Chat::EmoteClient &packet)
 
void HandleContactListOpcode (WorldPackets::Social::SendContactList &packet)
 
void HandleAddFriendOpcode (WorldPackets::Social::AddFriend &packet)
 
void HandleDelFriendOpcode (WorldPackets::Social::DelFriend &packet)
 
void HandleAddIgnoreOpcode (WorldPackets::Social::AddIgnore &packet)
 
void HandleDelIgnoreOpcode (WorldPackets::Social::DelIgnore &packet)
 
void HandleSetContactNotesOpcode (WorldPackets::Social::SetContactNotes &packet)
 
void HandleAreaTriggerOpcode (WorldPackets::AreaTrigger::AreaTrigger &packet)
 
void HandleUpdateAreaTriggerVisual (WorldPackets::AreaTrigger::UpdateAreaTriggerVisual const &updateAreaTriggerVisual)
 
void HandleSetFactionAtWar (WorldPackets::Character::SetFactionAtWar &packet)
 
void HandleSetFactionNotAtWar (WorldPackets::Character::SetFactionNotAtWar &packet)
 
void HandleSetWatchedFactionOpcode (WorldPackets::Character::SetWatchedFaction &packet)
 
void HandleSetFactionInactiveOpcode (WorldPackets::Character::SetFactionInactive &packet)
 
void HandleUpdateAccountData (WorldPackets::ClientConfig::UserClientUpdateAccountData &packet)
 
void HandleRequestAccountData (WorldPackets::ClientConfig::RequestAccountData &request)
 
void HandleSetAdvancedCombatLogging (WorldPackets::ClientConfig::SetAdvancedCombatLogging &setAdvancedCombatLogging)
 
void HandleSetActionButtonOpcode (WorldPackets::Spells::SetActionButton &packet)
 
void HandleGameObjectUseOpcode (WorldPackets::GameObject::GameObjUse &packet)
 
void HandleGameobjectReportUse (WorldPackets::GameObject::GameObjReportUse &packet)
 
void HandleQueryPlayerNames (WorldPackets::Query::QueryPlayerNames &queryPlayerNames)
 
void HandleQueryTimeOpcode (WorldPackets::Query::QueryTime &queryTime)
 
void HandleCreatureQuery (WorldPackets::Query::QueryCreature &packet)
 Only static data is sent in this packet !!!
 
void HandleGameObjectQueryOpcode (WorldPackets::Query::QueryGameObject &packet)
 Only static data is sent in this packet !!!
 
void HandleDBQueryBulk (WorldPackets::Hotfix::DBQueryBulk &dbQuery)
 
void HandleHotfixRequest (WorldPackets::Hotfix::HotfixRequest &hotfixQuery)
 
void HandleMoveWorldportAckOpcode (WorldPackets::Movement::WorldPortResponse &packet)
 
void HandleMoveWorldportAck ()
 
void HandleSuspendTokenResponse (WorldPackets::Movement::SuspendTokenResponse &suspendTokenResponse)
 
bool ValidateMovementInfo (Unit const *mover, MovementInfo *mi) const
 
void HandleMovementOpcodes (WorldPackets::Movement::ClientPlayerMovement &packet)
 
void HandleMovementOpcode (OpcodeClient opcode, MovementInfo &movementInfo)
 
void HandleSetActiveMoverOpcode (WorldPackets::Movement::SetActiveMover &packet)
 
void HandleMoveDismissVehicle (WorldPackets::Vehicle::MoveDismissVehicle &moveDismissVehicle)
 
void HandleRequestVehiclePrevSeat (WorldPackets::Vehicle::RequestVehiclePrevSeat &requestVehiclePrevSeat)
 
void HandleRequestVehicleNextSeat (WorldPackets::Vehicle::RequestVehicleNextSeat &requestVehicleNextSeat)
 
void HandleMoveChangeVehicleSeats (WorldPackets::Vehicle::MoveChangeVehicleSeats &moveChangeVehicleSeats)
 
void HandleRequestVehicleSwitchSeat (WorldPackets::Vehicle::RequestVehicleSwitchSeat &requestVehicleSwitchSeat)
 
void HandleRideVehicleInteract (WorldPackets::Vehicle::RideVehicleInteract &rideVehicleInteract)
 
void HandleEjectPassenger (WorldPackets::Vehicle::EjectPassenger &ejectPassenger)
 
void HandleRequestVehicleExit (WorldPackets::Vehicle::RequestVehicleExit &requestVehicleExit)
 
void HandleMoveSetVehicleRecAck (WorldPackets::Vehicle::MoveSetVehicleRecIdAck &setVehicleRecIdAck)
 
void HandleMoveTimeSkippedOpcode (WorldPackets::Movement::MoveTimeSkipped &moveTimeSkipped)
 
void HandleMovementAckMessage (WorldPackets::Movement::MovementAckMessage &movementAck)
 
void HandleMoveInitActiveMoverComplete (WorldPackets::Movement::MoveInitActiveMoverComplete const &moveInitActiveMoverComplete)
 
void HandleRequestRaidInfoOpcode (WorldPackets::Party::RequestRaidInfo &packet)
 
void HandlePartyInviteOpcode (WorldPackets::Party::PartyInviteClient &packet)
 
void HandlePartyInviteResponseOpcode (WorldPackets::Party::PartyInviteResponse &packet)
 
void HandlePartyUninviteOpcode (WorldPackets::Party::PartyUninvite &packet)
 
void HandleSetPartyLeaderOpcode (WorldPackets::Party::SetPartyLeader &packet)
 
void HandleSetRoleOpcode (WorldPackets::Party::SetRole &packet)
 
void HandleLeaveGroupOpcode (WorldPackets::Party::LeaveGroup &packet)
 
void HandleOptOutOfLootOpcode (WorldPackets::Party::OptOutOfLoot &packet)
 
void HandleSetLootMethodOpcode (WorldPackets::Party::SetLootMethod &packet)
 
void HandleLootRoll (WorldPackets::Loot::LootRoll &packet)
 
void HandleRequestPartyMemberStatsOpcode (WorldPackets::Party::RequestPartyMemberStats &packet)
 
void HandleUpdateRaidTargetOpcode (WorldPackets::Party::UpdateRaidTarget &packet)
 
void HandleDoReadyCheckOpcode (WorldPackets::Party::DoReadyCheck &packet)
 
void HandleReadyCheckResponseOpcode (WorldPackets::Party::ReadyCheckResponseClient &packet)
 
void HandleConvertRaidOpcode (WorldPackets::Party::ConvertRaid &packet)
 
void HandleRequestPartyJoinUpdates (WorldPackets::Party::RequestPartyJoinUpdates &packet)
 
void HandleChangeSubGroupOpcode (WorldPackets::Party::ChangeSubGroup &packet)
 
void HandleSwapSubGroupsOpcode (WorldPackets::Party::SwapSubGroups &packet)
 
void HandleSetAssistantLeaderOpcode (WorldPackets::Party::SetAssistantLeader &packet)
 
void HandleSetPartyAssignment (WorldPackets::Party::SetPartyAssignment &packet)
 
void HandleInitiateRolePoll (WorldPackets::Party::InitiateRolePoll &packet)
 
void HandleSetEveryoneIsAssistant (WorldPackets::Party::SetEveryoneIsAssistant &packet)
 
void HandleClearRaidMarker (WorldPackets::Party::ClearRaidMarker &packet)
 
void HandleSetRestrictPingsToAssistants (WorldPackets::Party::SetRestrictPingsToAssistants const &setRestrictPingsToAssistants)
 
void HandleSendPingUnit (WorldPackets::Party::SendPingUnit const &pingUnit)
 
void HandleSendPingWorldPoint (WorldPackets::Party::SendPingWorldPoint const &pingWorldPoint)
 
void HandleSendPingCooldown (WorldPackets::Party::SendPingCooldown const &pingCooldown)
 
void HandlePetitionBuy (WorldPackets::Petition::PetitionBuy &packet)
 
void HandlePetitionShowSignatures (WorldPackets::Petition::PetitionShowSignatures &packet)
 
void SendPetitionSigns (Petition const *petition, Player *sendTo)
 
void HandleQueryPetition (WorldPackets::Petition::QueryPetition &packet)
 
void HandlePetitionRenameGuild (WorldPackets::Petition::PetitionRenameGuild &packet)
 
void HandleSignPetition (WorldPackets::Petition::SignPetition &packet)
 
void HandleDeclinePetition (WorldPackets::Petition::DeclinePetition &packet)
 
void HandleOfferPetition (WorldPackets::Petition::OfferPetition &packet)
 
void HandleTurnInPetition (WorldPackets::Petition::TurnInPetition &packet)
 
void HandleGuildQueryOpcode (WorldPackets::Guild::QueryGuildInfo &query)
 
void HandleGuildInviteByName (WorldPackets::Guild::GuildInviteByName &packet)
 
void HandleGuildOfficerRemoveMember (WorldPackets::Guild::GuildOfficerRemoveMember &packet)
 
void HandleGuildAcceptInvite (WorldPackets::Guild::AcceptGuildInvite &invite)
 
void HandleGuildDeclineInvitation (WorldPackets::Guild::GuildDeclineInvitation &decline)
 
void HandleGuildEventLogQuery (WorldPackets::Guild::GuildEventLogQuery &packet)
 
void HandleGuildGetRoster (WorldPackets::Guild::GuildGetRoster &packet)
 
void HandleRequestGuildRewardsList (WorldPackets::Guild::RequestGuildRewardsList &packet)
 
void HandleGuildPromoteMember (WorldPackets::Guild::GuildPromoteMember &promote)
 
void HandleGuildDemoteMember (WorldPackets::Guild::GuildDemoteMember &demote)
 
void HandleGuildAssignRank (WorldPackets::Guild::GuildAssignMemberRank &packet)
 
void HandleGuildLeave (WorldPackets::Guild::GuildLeave &leave)
 
void HandleGuildDelete (WorldPackets::Guild::GuildDelete &packet)
 
void HandleGuildReplaceGuildMaster (WorldPackets::Guild::GuildReplaceGuildMaster &replaceGuildMaster)
 
void HandleGuildSetAchievementTracking (WorldPackets::Guild::GuildSetAchievementTracking &packet)
 
void HandleGuildGetAchievementMembers (WorldPackets::Achievement::GuildGetAchievementMembers &getAchievementMembers)
 
void HandleGuildSetGuildMaster (WorldPackets::Guild::GuildSetGuildMaster &packet)
 
void HandleGuildUpdateMotdText (WorldPackets::Guild::GuildUpdateMotdText &packet)
 
void HandleGuildNewsUpdateSticky (WorldPackets::Guild::GuildNewsUpdateSticky &packet)
 
void HandleGuildSetMemberNote (WorldPackets::Guild::GuildSetMemberNote &packet)
 
void HandleGuildGetRanks (WorldPackets::Guild::GuildGetRanks &packet)
 
void HandleGuildQueryNews (WorldPackets::Guild::GuildQueryNews &newsQuery)
 
void HandleGuildSetRankPermissions (WorldPackets::Guild::GuildSetRankPermissions &packet)
 
void HandleGuildAddRank (WorldPackets::Guild::GuildAddRank &packet)
 
void HandleGuildDeleteRank (WorldPackets::Guild::GuildDeleteRank &packet)
 
void HandleGuildShiftRank (WorldPackets::Guild::GuildShiftRank &shiftRank)
 
void HandleGuildUpdateInfoText (WorldPackets::Guild::GuildUpdateInfoText &packet)
 
void HandleSaveGuildEmblem (WorldPackets::Guild::SaveGuildEmblem &packet)
 
void HandleGuildRequestPartyState (WorldPackets::Guild::RequestGuildPartyState &packet)
 
void HandleGuildChallengeUpdateRequest (WorldPackets::Guild::GuildChallengeUpdateRequest &packet)
 
void HandleDeclineGuildInvites (WorldPackets::Guild::DeclineGuildInvites &packet)
 
void HandleDeclineNeighborhoodInvites (WorldPackets::Housing::DeclineNeighborhoodInvites const &declineNeighborhoodInvites)
 
void HandleEnableTaxiNodeOpcode (WorldPackets::Taxi::EnableTaxiNode &enableTaxiNode)
 
void HandleTaxiNodeStatusQueryOpcode (WorldPackets::Taxi::TaxiNodeStatusQuery &taxiNodeStatusQuery)
 
void HandleTaxiQueryAvailableNodesOpcode (WorldPackets::Taxi::TaxiQueryAvailableNodes &taxiQueryAvailableNodes)
 
void HandleActivateTaxiOpcode (WorldPackets::Taxi::ActivateTaxi &activateTaxi)
 
void HandleMoveSplineDoneOpcode (WorldPackets::Movement::MoveSplineDone &moveSplineDone)
 
void SendActivateTaxiReply (ActivateTaxiReply reply)
 
void HandleTaxiRequestEarlyLanding (WorldPackets::Taxi::TaxiRequestEarlyLanding &taxiRequestEarlyLanding)
 
void HandleTabardVendorActivateOpcode (WorldPackets::NPC::TabardVendorActivate const &tabardVendorActivate)
 
void HandleBankerActivateOpcode (WorldPackets::Bank::BankerActivate const &bankerActivate)
 
void HandleTrainerListOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleTrainerBuySpellOpcode (WorldPackets::NPC::TrainerBuySpell &packet)
 
void HandlePetitionShowList (WorldPackets::Petition::PetitionShowList &packet)
 
void HandleGossipHelloOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleGossipSelectOptionOpcode (WorldPackets::NPC::GossipSelectOption &packet)
 
void HandleSpiritHealerActivate (WorldPackets::NPC::SpiritHealerActivate &packet)
 
void HandleNpcTextQueryOpcode (WorldPackets::Query::QueryNPCText &packet)
 
void HandleBinderActivateOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleRequestStabledPets (WorldPackets::NPC::RequestStabledPets &packet)
 
void HandleSetPetSlot (WorldPackets::NPC::SetPetSlot &setPetSlot)
 
void HandleCanDuel (WorldPackets::Duel::CanDuel &packet)
 
void HandleDuelResponseOpcode (WorldPackets::Duel::DuelResponse &duelResponse)
 
void HandleDuelAccepted (ObjectGuid arbiterGuid)
 
void HandleDuelCancelled ()
 
void HandleAcceptTradeOpcode (WorldPackets::Trade::AcceptTrade &acceptTrade)
 
void HandleBeginTradeOpcode (WorldPackets::Trade::BeginTrade &beginTrade)
 
void HandleBusyTradeOpcode (WorldPackets::Trade::BusyTrade &busyTrade)
 
void HandleCancelTradeOpcode (WorldPackets::Trade::CancelTrade &cancelTrade)
 
void HandleClearTradeItemOpcode (WorldPackets::Trade::ClearTradeItem &clearTradeItem)
 
void HandleIgnoreTradeOpcode (WorldPackets::Trade::IgnoreTrade &ignoreTrade)
 
void HandleInitiateTradeOpcode (WorldPackets::Trade::InitiateTrade &initiateTrade)
 
void HandleSetTradeCurrencyOpcode (WorldPackets::Trade::SetTradeCurrency &setTradeCurrency)
 
void HandleSetTradeGoldOpcode (WorldPackets::Trade::SetTradeGold &setTradeGold)
 
void HandleSetTradeItemOpcode (WorldPackets::Trade::SetTradeItem &setTradeItem)
 
void HandleUnacceptTradeOpcode (WorldPackets::Trade::UnacceptTrade &unacceptTrade)
 
void HandleAuctionBrowseQuery (WorldPackets::AuctionHouse::AuctionBrowseQuery &browseQuery)
 
void HandleAuctionCancelCommoditiesPurchase (WorldPackets::AuctionHouse::AuctionCancelCommoditiesPurchase &cancelCommoditiesPurchase)
 
void HandleAuctionConfirmCommoditiesPurchase (WorldPackets::AuctionHouse::AuctionConfirmCommoditiesPurchase &confirmCommoditiesPurchase)
 
void HandleAuctionGetCommodityQuote (WorldPackets::AuctionHouse::AuctionGetCommodityQuote &startCommoditiesPurchase)
 
void HandleAuctionHelloOpcode (WorldPackets::AuctionHouse::AuctionHelloRequest &hello)
 
void HandleAuctionListBiddedItems (WorldPackets::AuctionHouse::AuctionListBiddedItems &listBiddedItems)
 
void HandleAuctionListBucketsByBucketKeys (WorldPackets::AuctionHouse::AuctionListBucketsByBucketKeys &listBucketsByBucketKeys)
 
void HandleAuctionListItemsByBucketKey (WorldPackets::AuctionHouse::AuctionListItemsByBucketKey &listItemsByBucketKey)
 
void HandleAuctionListItemsByItemID (WorldPackets::AuctionHouse::AuctionListItemsByItemID &listItemsByItemID)
 
void HandleAuctionListOwnedItems (WorldPackets::AuctionHouse::AuctionListOwnedItems &listOwnedItems)
 
void HandleAuctionPlaceBid (WorldPackets::AuctionHouse::AuctionPlaceBid &placeBid)
 
void HandleAuctionRemoveItem (WorldPackets::AuctionHouse::AuctionRemoveItem &removeItem)
 
void HandleAuctionReplicateItems (WorldPackets::AuctionHouse::AuctionReplicateItems &replicateItems)
 
void SendAuctionFavoriteList ()
 
void HandleAuctionSellCommodity (WorldPackets::AuctionHouse::AuctionSellCommodity &sellCommodity)
 
void HandleAuctionSellItem (WorldPackets::AuctionHouse::AuctionSellItem &sellItem)
 
void HandleAuctionSetFavoriteItem (WorldPackets::AuctionHouse::AuctionSetFavoriteItem &setFavoriteItem)
 
void HandleAutoBankItemOpcode (WorldPackets::Bank::AutoBankItem &packet)
 
void HandleAutoStoreBankItemOpcode (WorldPackets::Bank::AutoStoreBankItem &packet)
 
void HandleBuyBankTab (WorldPackets::Bank::BuyBankTab const &buyBankTab)
 
void HandleUpdateBankTabSettings (WorldPackets::Bank::UpdateBankTabSettings const &updateBankTabSettings)
 
void HandleAutoDepositCharacterBank (WorldPackets::Bank::AutoDepositCharacterBank const &autoDepositCharacterBank)
 
void HandleBlackMarketOpen (WorldPackets::BlackMarket::BlackMarketOpen &blackMarketOpen)
 
void HandleBlackMarketRequestItems (WorldPackets::BlackMarket::BlackMarketRequestItems &blackMarketRequestItems)
 
void HandleBlackMarketBidOnItem (WorldPackets::BlackMarket::BlackMarketBidOnItem &blackMarketBidOnItem)
 
void HandleGetMailList (WorldPackets::Mail::MailGetList &getList)
 
void HandleSendMail (WorldPackets::Mail::SendMail &sendMail)
 
void HandleMailTakeMoney (WorldPackets::Mail::MailTakeMoney &takeMoney)
 
void HandleMailTakeItem (WorldPackets::Mail::MailTakeItem &takeItem)
 
void HandleMailMarkAsRead (WorldPackets::Mail::MailMarkAsRead &markAsRead)
 
void HandleMailReturnToSender (WorldPackets::Mail::MailReturnToSender &returnToSender)
 
void HandleMailDelete (WorldPackets::Mail::MailDelete &mailDelete)
 
void HandleItemTextQuery (WorldPackets::Query::ItemTextQuery &itemTextQuery)
 
void HandleMailCreateTextItem (WorldPackets::Mail::MailCreateTextItem &createTextItem)
 
void HandleQueryNextMailTime (WorldPackets::Mail::MailQueryNextMailTime &queryNextMailTime)
 
void HandleSplitItemOpcode (WorldPackets::Item::SplitItem &splitItem)
 
void HandleSwapInvItemOpcode (WorldPackets::Item::SwapInvItem &swapInvItem)
 
void HandleDestroyItemOpcode (WorldPackets::Item::DestroyItem &destroyItem)
 
void HandleAutoEquipItemOpcode (WorldPackets::Item::AutoEquipItem &autoEquipItem)
 
void HandleSellItemOpcode (WorldPackets::Item::SellItem const &sellItem)
 
void HandleSellAllJunkItems (WorldPackets::Item::SellAllJunkItems const &sellAllJunkItems)
 
void HandleBuyItemOpcode (WorldPackets::Item::BuyItem &packet)
 
void HandleListInventoryOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleAutoStoreBagItemOpcode (WorldPackets::Item::AutoStoreBagItem &packet)
 
void HandleReadItem (WorldPackets::Item::ReadItem &readItem)
 
void HandleAutoEquipItemSlotOpcode (WorldPackets::Item::AutoEquipItemSlot &autoEquipItemSlot)
 
void HandleSwapItem (WorldPackets::Item::SwapItem &swapItem)
 
void HandleBuybackItem (WorldPackets::Item::BuyBackItem &packet)
 
void HandleWrapItem (WorldPackets::Item::WrapItem &packet)
 
void HandleUseCritterItem (WorldPackets::Item::UseCritterItem &packet)
 
void HandleChangeBagSlotFlag (WorldPackets::Item::ChangeBagSlotFlag const &changeBagSlotFlag)
 
void HandleSetBackpackAutosortDisabled (WorldPackets::Item::SetBackpackAutosortDisabled const &setBackpackAutosortDisabled)
 
void HandleSetBackpackSellJunkDisabled (WorldPackets::Item::SetBackpackSellJunkDisabled const &setBackpackSellJunkDisabled)
 
void HandleSetBankAutosortDisabled (WorldPackets::Item::SetBankAutosortDisabled const &setBankAutosortDisabled)
 
void HandleAttackSwingOpcode (WorldPackets::Combat::AttackSwing &packet)
 
void HandleAttackStopOpcode (WorldPackets::Combat::AttackStop &packet)
 
void HandleSetSheathedOpcode (WorldPackets::Combat::SetSheathed &packet)
 
void HandleUseItemOpcode (WorldPackets::Spells::UseItem &packet)
 
void HandleOpenItemOpcode (WorldPackets::Spells::OpenItem &packet)
 
void HandleOpenWrappedItemCallback (uint16 pos, ObjectGuid itemGuid, PreparedQueryResult result)
 
void HandleCastSpellOpcode (WorldPackets::Spells::CastSpell &castRequest)
 
void HandleCancelCastOpcode (WorldPackets::Spells::CancelCast &packet)
 
void HandleCancelAuraOpcode (WorldPackets::Spells::CancelAura &cancelAura)
 
void HandleCancelGrowthAuraOpcode (WorldPackets::Spells::CancelGrowthAura &cancelGrowthAura)
 
void HandleCancelMountAuraOpcode (WorldPackets::Spells::CancelMountAura &cancelMountAura)
 
void HandleCancelModSpeedNoControlAuras (WorldPackets::Spells::CancelModSpeedNoControlAuras &cancelModSpeedNoControlAuras)
 
void HandleCancelAutoRepeatSpellOpcode (WorldPackets::Spells::CancelAutoRepeatSpell &cancelAutoRepeatSpell)
 
void HandleCancelQueuedSpellOpcode (WorldPackets::Spells::CancelQueuedSpell &cancelQueuedSpell)
 
void HandleCancelChanneling (WorldPackets::Spells::CancelChannelling &cancelChanneling)
 
void HandleSetEmpowerMinHoldStagePercent (WorldPackets::Spells::SetEmpowerMinHoldStagePercent const &setEmpowerMinHoldStagePercent)
 
void HandleSpellEmpowerRelease (WorldPackets::Spells::SpellEmpowerRelease const &spellEmpowerRelease)
 
void HandleSpellEmpowerRestart (WorldPackets::Spells::SpellEmpowerRestart const &spellEmpowerRestart)
 
void HandleMissileTrajectoryCollision (WorldPackets::Spells::MissileTrajectoryCollision &packet)
 
void HandleUpdateMissileTrajectory (WorldPackets::Spells::UpdateMissileTrajectory &packet)
 
void HandleUpdateAuraVisual (WorldPackets::Spells::UpdateAuraVisual const &updateAuraVisual)
 
void HandleLearnPvpTalentsOpcode (WorldPackets::Talent::LearnPvpTalents &packet)
 
void HandleLearnTalentsOpcode (WorldPackets::Talent::LearnTalents &packet)
 
void HandleConfirmRespecWipeOpcode (WorldPackets::Talent::ConfirmRespecWipe &confirmRespecWipe)
 
void HandleUnlearnSkillOpcode (WorldPackets::Spells::UnlearnSkill &packet)
 
void HandleTradeSkillSetFavorite (WorldPackets::Spells::TradeSkillSetFavorite const &tradeSkillSetFavorite)
 
void HandleTraitsCommitConfig (WorldPackets::Traits::TraitsCommitConfig const &traitsCommitConfig)
 
void HandleClassTalentsRequestNewConfig (WorldPackets::Traits::ClassTalentsRequestNewConfig &classTalentsRequestNewConfig)
 
void HandleClassTalentsRenameConfig (WorldPackets::Traits::ClassTalentsRenameConfig &classTalentsRenameConfig)
 
void HandleClassTalentsDeleteConfig (WorldPackets::Traits::ClassTalentsDeleteConfig const &classTalentsDeleteConfig)
 
void HandleClassTalentsSetStarterBuildActive (WorldPackets::Traits::ClassTalentsSetStarterBuildActive const &classTalentsSetStarterBuildActive)
 
void HandleClassTalentsSetUsesSharedActionBars (WorldPackets::Traits::ClassTalentsSetUsesSharedActionBars const &classTalentsSetUsesSharedActionBars)
 
void HandleQuestgiverStatusQueryOpcode (WorldPackets::Quest::QuestGiverStatusQuery &packet)
 
void HandleQuestgiverStatusMultipleQuery (WorldPackets::Quest::QuestGiverStatusMultipleQuery &packet)
 
void HandleQuestgiverHelloOpcode (WorldPackets::Quest::QuestGiverHello &packet)
 
void HandleQuestgiverAcceptQuestOpcode (WorldPackets::Quest::QuestGiverAcceptQuest &packet)
 
void HandleQuestgiverQueryQuestOpcode (WorldPackets::Quest::QuestGiverQueryQuest &packet)
 
void HandleQuestgiverChooseRewardOpcode (WorldPackets::Quest::QuestGiverChooseReward &packet)
 
void HandleQuestgiverRequestRewardOpcode (WorldPackets::Quest::QuestGiverRequestReward &packet)
 
void HandleQuestQueryOpcode (WorldPackets::Quest::QueryQuestInfo &packet)
 
void HandleQuestLogRemoveQuest (WorldPackets::Quest::QuestLogRemoveQuest &packet)
 
void HandleQuestConfirmAccept (WorldPackets::Quest::QuestConfirmAccept &packet)
 
void HandleQuestgiverCompleteQuest (WorldPackets::Quest::QuestGiverCompleteQuest &packet)
 
void HandleQuestgiverCloseQuest (WorldPackets::Quest::QuestGiverCloseQuest &questGiverCloseQuest)
 
void HandlePushQuestToParty (WorldPackets::Quest::PushQuestToParty &packet)
 
void HandleQuestPushResult (WorldPackets::Quest::QuestPushResult &packet)
 
void HandleRequestWorldQuestUpdate (WorldPackets::Quest::RequestWorldQuestUpdate &packet)
 
void HandlePlayerChoiceResponse (WorldPackets::Quest::ChoiceResponse const &choiceResponse)
 
void HandleUiMapQuestLinesRequest (WorldPackets::Quest::UiMapQuestLinesRequest &uiMapQuestLinesRequest)
 
void HandleQueryTreasurePicker (WorldPackets::Query::QueryTreasurePicker const &queryTreasurePicker)
 
void HandleSpawnTrackingUpdate (WorldPackets::Quest::SpawnTrackingUpdate &spawnTrackingUpdate)
 
void HandleChatMessageOpcode (WorldPackets::Chat::ChatMessage &chatMessage)
 
void HandleChatMessageWhisperOpcode (WorldPackets::Chat::ChatMessageWhisper &chatMessageWhisper)
 
void HandleChatMessageChannelOpcode (WorldPackets::Chat::ChatMessageChannel &chatMessageChannel)
 
ChatMessageResult HandleChatMessage (ChatMsg type, Language lang, std::string msg, std::string target="", Optional< ObjectGuid > targetGuid={})
 
void HandleChatAddonMessageOpcode (WorldPackets::Chat::ChatAddonMessage &chatAddonMessage)
 
void HandleChatAddonMessageTargetedOpcode (WorldPackets::Chat::ChatAddonMessageTargeted &chatAddonMessageTargeted)
 
void HandleChatAddonMessage (ChatMsg type, std::string prefix, std::string text, bool isLogged, std::string target="", Optional< ObjectGuid > targetGuid={})
 
void HandleChatMessageAFKOpcode (WorldPackets::Chat::ChatMessageAFK &chatMessageAFK)
 
void HandleChatMessageDNDOpcode (WorldPackets::Chat::ChatMessageDND &chatMessageDND)
 
void HandleChatMessageEmoteOpcode (WorldPackets::Chat::ChatMessageEmote &chatMessageEmote)
 
void SendChatPlayerNotfoundNotice (std::string const &name)
 
void SendPlayerAmbiguousNotice (std::string const &name)
 
void SendChatRestricted (ChatRestrictionType restriction)
 
void HandleTextEmoteOpcode (WorldPackets::Chat::CTextEmote &packet)
 
void HandleChatIgnoredOpcode (WorldPackets::Chat::ChatReportIgnored &chatReportIgnored)
 
void HandleChatCanLocalWhisperTargetRequest (WorldPackets::Chat::CanLocalWhisperTargetRequest const &canLocalWhisperTargetRequest)
 
void HandleChatUpdateAADCStatus (WorldPackets::Chat::UpdateAADCStatus const &updateAADCStatus)
 
void HandleUnregisterAllAddonPrefixesOpcode (WorldPackets::Chat::ChatUnregisterAllAddonPrefixes &packet)
 
void HandleAddonRegisteredPrefixesOpcode (WorldPackets::Chat::ChatRegisterAddonPrefixes &packet)
 
void HandleReclaimCorpse (WorldPackets::Misc::ReclaimCorpse &packet)
 
void HandleQueryCorpseLocation (WorldPackets::Query::QueryCorpseLocationFromClient &packet)
 
void HandleQueryCorpseTransport (WorldPackets::Query::QueryCorpseTransport &packet)
 
void HandleResurrectResponse (WorldPackets::Misc::ResurrectResponse &packet)
 
void HandleSummonResponseOpcode (WorldPackets::Movement::SummonResponse &packet)
 
void HandleJoinChannel (WorldPackets::Channel::JoinChannel &packet)
 
void HandleLeaveChannel (WorldPackets::Channel::LeaveChannel &packet)
 
void HandleChannelCommand (WorldPackets::Channel::ChannelCommand &packet)
 
void HandleChannelPlayerCommand (WorldPackets::Channel::ChannelPlayerCommand &packet)
 
void HandleChannelPassword (WorldPackets::Channel::ChannelPassword &channelPassword)
 
void HandleCompleteCinematic (WorldPackets::Misc::CompleteCinematic &packet)
 
void HandleNextCinematicCamera (WorldPackets::Misc::NextCinematicCamera &packet)
 
void HandleCompleteMovie (WorldPackets::Misc::CompleteMovie &packet)
 
void HandleQueryPageText (WorldPackets::Query::QueryPageText &packet)
 Only static data is sent in this packet !!!
 
void HandleTutorialFlag (WorldPackets::Misc::TutorialSetFlag &packet)
 
void HandlePetAction (WorldPackets::Pet::PetAction &packet)
 
void HandlePetStopAttack (WorldPackets::Pet::PetStopAttack &packet)
 
void HandlePetActionHelper (Unit *pet, ObjectGuid guid1, uint32 spellid, uint16 flag, ObjectGuid guid2, Position const &pos)
 
void HandleQueryPetName (WorldPackets::Query::QueryPetName &packet)
 
void HandlePetSetAction (WorldPackets::Pet::PetSetAction &packet)
 
void HandlePetAbandon (WorldPackets::Pet::PetAbandon &packet)
 
void HandlePetAbandonByNumber (WorldPackets::Pet::PetAbandonByNumber const &petAbandonByNumber)
 
void HandlePetRename (WorldPackets::Pet::PetRename &packet)
 
void HandlePetCancelAuraOpcode (WorldPackets::Spells::PetCancelAura &packet)
 
void HandlePetSpellAutocastOpcode (WorldPackets::Pet::PetSpellAutocast &packet)
 
void HandlePetCastSpellOpcode (WorldPackets::Spells::PetCastSpell &petCastSpell)
 
void HandleSetActionBarToggles (WorldPackets::Character::SetActionBarToggles &packet)
 
void HandleTotemDestroyed (WorldPackets::Totem::TotemDestroyed &totemDestroyed)
 
void HandleDismissCritter (WorldPackets::Pet::DismissCritter &dismissCritter)
 
void HandleBattlemasterHelloOpcode (WorldPackets::NPC::Hello &hello)
 
void HandleBattlemasterJoinOpcode (WorldPackets::Battleground::BattlemasterJoin &battlemasterJoin)
 
void HandlePVPLogDataOpcode (WorldPackets::Battleground::PVPLogDataRequest &pvpLogDataRequest)
 
void HandleBattleFieldPortOpcode (WorldPackets::Battleground::BattlefieldPort &battlefieldPort)
 
void HandleBattlefieldListOpcode (WorldPackets::Battleground::BattlefieldListRequest &battlefieldList)
 
void HandleBattlefieldLeaveOpcode (WorldPackets::Battleground::BattlefieldLeave &battlefieldLeave)
 
void HandleBattlemasterJoinArena (WorldPackets::Battleground::BattlemasterJoinArena &packet)
 
void HandleReportPvPAFK (WorldPackets::Battleground::ReportPvPPlayerAFK &reportPvPPlayerAFK)
 
void HandleRequestRatedPvpInfo (WorldPackets::Battleground::RequestRatedPvpInfo &packet)
 
void HandleGetPVPOptionsEnabled (WorldPackets::Battleground::GetPVPOptionsEnabled &getPvPOptionsEnabled)
 
void HandleRequestPvpReward (WorldPackets::Battleground::RequestPVPRewards &packet)
 
void HandleAreaSpiritHealerQueryOpcode (WorldPackets::Battleground::AreaSpiritHealerQuery &areaSpiritHealerQuery)
 
void HandleAreaSpiritHealerQueueOpcode (WorldPackets::Battleground::AreaSpiritHealerQueue &areaSpiritHealerQueue)
 
void HandleHearthAndResurrect (WorldPackets::Battleground::HearthAndResurrect &hearthAndResurrect)
 
void HandleRequestBattlefieldStatusOpcode (WorldPackets::Battleground::RequestBattlefieldStatus &requestBattlefieldStatus)
 
void HandleMinimapPingOpcode (WorldPackets::Party::MinimapPingClient &packet)
 
void HandleRandomRollOpcode (WorldPackets::Misc::RandomRollClient &packet)
 
void HandleFarSightOpcode (WorldPackets::Misc::FarSight &packet)
 
void HandleSetDungeonDifficultyOpcode (WorldPackets::Misc::SetDungeonDifficulty &setDungeonDifficulty)
 
void HandleSetRaidDifficultyOpcode (WorldPackets::Misc::SetRaidDifficulty &setRaidDifficulty)
 
void HandleSetTitleOpcode (WorldPackets::Character::SetTitle &packet)
 
void HandleTimeSync (uint32 counter, int64 clientTime, TimePoint responseReceiveTime)
 
void HandleTimeSyncResponse (WorldPackets::Misc::TimeSyncResponse const &timeSyncResponse)
 
void HandleQueuedMessagesEnd (WorldPackets::Auth::QueuedMessagesEnd const &queuedMessagesEnd)
 
void HandleWhoIsOpcode (WorldPackets::Who::WhoIsRequest &packet)
 
void HandleResetInstancesOpcode (WorldPackets::Instance::ResetInstances &packet)
 
void HandleInstanceLockResponse (WorldPackets::Instance::InstanceLockResponse &packet)
 
void SendLfgPlayerLockInfo ()
 
void SendLfgPartyLockInfo ()
 
void HandleLfgJoinOpcode (WorldPackets::LFG::DFJoin &dfJoin)
 
void HandleLfgLeaveOpcode (WorldPackets::LFG::DFLeave &dfLeave)
 
void HandleLfgProposalResultOpcode (WorldPackets::LFG::DFProposalResponse &dfProposalResponse)
 
void HandleLfgSetRolesOpcode (WorldPackets::LFG::DFSetRoles &dfSetRoles)
 
void HandleLfgSetBootVoteOpcode (WorldPackets::LFG::DFBootPlayerVote &dfBootPlayerVote)
 
void HandleLfgTeleportOpcode (WorldPackets::LFG::DFTeleport &dfTeleport)
 
void HandleDFGetSystemInfo (WorldPackets::LFG::DFGetSystemInfo &dfGetSystemInfo)
 
void HandleDFGetJoinStatus (WorldPackets::LFG::DFGetJoinStatus &dfGetJoinStatus)
 
void SendLfgUpdateStatus (lfg::LfgUpdateData const &updateData, bool party)
 
void SendLfgRoleChosen (ObjectGuid guid, uint8 roles)
 
void SendLfgRoleCheckUpdate (lfg::LfgRoleCheck const &pRoleCheck)
 
void SendLfgJoinResult (lfg::LfgJoinResultData const &joinData)
 
void SendLfgQueueStatus (lfg::LfgQueueStatusData const &queueData)
 
void SendLfgPlayerReward (lfg::LfgPlayerRewardData const &lfgPlayerRewardData)
 
void SendLfgBootProposalUpdate (lfg::LfgPlayerBoot const &boot)
 
void SendLfgUpdateProposal (lfg::LfgProposal const &proposal)
 
void SendLfgDisabled ()
 
void SendLfgOfferContinue (uint32 dungeonEntry)
 
void SendLfgTeleportError (lfg::LfgTeleportResult err)
 
void HandleSelfResOpcode (WorldPackets::Spells::SelfRes &selfRes)
 
void HandleRequestPetInfo (WorldPackets::Pet::RequestPetInfo &requestPetInfo)
 
void HandleSocketGems (WorldPackets::Item::SocketGems &socketGems)
 
void HandleSortAccountBankBags (WorldPackets::Item::SortAccountBankBags &sortBankBags)
 
void HandleSortBags (WorldPackets::Item::SortBags &sortBags)
 
void HandleSortBankBags (WorldPackets::Item::SortBankBags &sortBankBags)
 
void HandleRemoveNewItem (WorldPackets::Item::RemoveNewItem &removeNewItem)
 
void HandleCancelTempEnchantmentOpcode (WorldPackets::Item::CancelTempEnchantment &cancelTempEnchantment)
 
void HandleGetItemPurchaseData (WorldPackets::Item::GetItemPurchaseData &packet)
 
void HandleItemRefund (WorldPackets::Item::ItemPurchaseRefund &packet)
 
void HandleSetTaxiBenchmark (WorldPackets::Misc::SetTaxiBenchmarkMode &packet)
 
void HandleGuildPermissionsQuery (WorldPackets::Guild::GuildPermissionsQuery &packet)
 
void HandleGuildBankMoneyWithdrawn (WorldPackets::Guild::GuildBankRemainingWithdrawMoneyQuery &packet)
 
void HandleGuildBankActivate (WorldPackets::Guild::GuildBankActivate &packet)
 
void HandleGuildBankQueryTab (WorldPackets::Guild::GuildBankQueryTab &packet)
 
void HandleGuildBankLogQuery (WorldPackets::Guild::GuildBankLogQuery &packet)
 
void HandleGuildBankDepositMoney (WorldPackets::Guild::GuildBankDepositMoney &packet)
 
void HandleGuildBankWithdrawMoney (WorldPackets::Guild::GuildBankWithdrawMoney &packet)
 
void HandleAutoGuildBankItem (WorldPackets::Guild::AutoGuildBankItem &autoGuildBankItem)
 
void HandleStoreGuildBankItem (WorldPackets::Guild::StoreGuildBankItem &storeGuildBankItem)
 
void HandleSwapItemWithGuildBankItem (WorldPackets::Guild::SwapItemWithGuildBankItem &swapItemWithGuildBankItem)
 
void HandleSwapGuildBankItemWithGuildBankItem (WorldPackets::Guild::SwapGuildBankItemWithGuildBankItem &swapGuildBankItemWithGuildBankItem)
 
void HandleMoveGuildBankItem (WorldPackets::Guild::MoveGuildBankItem &moveGuildBankItem)
 
void HandleMergeItemWithGuildBankItem (WorldPackets::Guild::MergeItemWithGuildBankItem &mergeItemWithGuildBankItem)
 
void HandleSplitItemToGuildBank (WorldPackets::Guild::SplitItemToGuildBank &splitItemToGuildBank)
 
void HandleMergeGuildBankItemWithItem (WorldPackets::Guild::MergeGuildBankItemWithItem &mergeGuildBankItemWithItem)
 
void HandleSplitGuildBankItemToInventory (WorldPackets::Guild::SplitGuildBankItemToInventory &splitGuildBankItemToInventory)
 
void HandleAutoStoreGuildBankItem (WorldPackets::Guild::AutoStoreGuildBankItem &autoStoreGuildBankItem)
 
void HandleMergeGuildBankItemWithGuildBankItem (WorldPackets::Guild::MergeGuildBankItemWithGuildBankItem &mergeGuildBankItemWithGuildBankItem)
 
void HandleSplitGuildBankItem (WorldPackets::Guild::SplitGuildBankItem &splitGuildBankItem)
 
void HandleGuildBankUpdateTab (WorldPackets::Guild::GuildBankUpdateTab &packet)
 
void HandleGuildBankBuyTab (WorldPackets::Guild::GuildBankBuyTab &packet)
 
void HandleGuildBankTextQuery (WorldPackets::Guild::GuildBankTextQuery &packet)
 
void HandleGuildBankSetTabText (WorldPackets::Guild::GuildBankSetTabText &packet)
 
void HandleCalendarGetCalendar (WorldPackets::Calendar::CalendarGetCalendar &calendarGetCalendar)
 
void HandleCalendarGetEvent (WorldPackets::Calendar::CalendarGetEvent &calendarGetEvent)
 
void HandleCalendarCommunityInvite (WorldPackets::Calendar::CalendarCommunityInviteRequest &calendarCommunityInvite)
 
void HandleCalendarAddEvent (WorldPackets::Calendar::CalendarAddEvent &calendarAddEvent)
 
void HandleCalendarUpdateEvent (WorldPackets::Calendar::CalendarUpdateEvent &calendarUpdateEvent)
 
void HandleCalendarRemoveEvent (WorldPackets::Calendar::CalendarRemoveEvent &calendarRemoveEvent)
 
void HandleCalendarCopyEvent (WorldPackets::Calendar::CalendarCopyEvent &calendarCopyEvent)
 
void HandleCalendarInvite (WorldPackets::Calendar::CalendarInvite &calendarEventInvite)
 
void HandleCalendarRsvp (WorldPackets::Calendar::CalendarRSVP &calendarRSVP)
 
void HandleCalendarEventRemoveInvite (WorldPackets::Calendar::CalendarRemoveInvite &calendarRemoveInvite)
 
void HandleCalendarStatus (WorldPackets::Calendar::CalendarStatus &calendarStatus)
 
void HandleCalendarModeratorStatus (WorldPackets::Calendar::CalendarModeratorStatusQuery &calendarModeratorStatus)
 
void HandleCalendarComplain (WorldPackets::Calendar::CalendarComplain &calendarComplain)
 
void HandleCalendarGetNumPending (WorldPackets::Calendar::CalendarGetNumPending &calendarGetNumPending)
 
void HandleCalendarEventSignup (WorldPackets::Calendar::CalendarEventSignUp &calendarEventSignUp)
 
void SendCalendarRaidLockoutAdded (InstanceLock const *lock)
 
void SendCalendarRaidLockoutRemoved (InstanceLock const *lock)
 
void HandleSetSavedInstanceExtend (WorldPackets::Calendar::SetSavedInstanceExtend &setSavedInstanceExtend)
 
void HandleCollectionItemSetFavorite (WorldPackets::Collections::CollectionItemSetFavorite &collectionItemSetFavorite)
 
void HandleTransmogrifyItems (WorldPackets::Transmogrification::TransmogrifyItems &transmogrifyItems)
 
void HandleTransmogOutfitNew (WorldPackets::Transmogrification::TransmogOutfitNew const &transmogOutfitNew)
 
void HandleTransmogOutfitUpdateInfo (WorldPackets::Transmogrification::TransmogOutfitUpdateInfo const &transmogOutfitUpdateInfo)
 
void HandleTransmogOutfitUpdateSituations (WorldPackets::Transmogrification::TransmogOutfitUpdateSituations const &transmogOutfitUpdateSituations)
 
void HandleTransmogOutfitUpdateSlots (WorldPackets::Transmogrification::TransmogOutfitUpdateSlots const &transmogOutfitUpdateSlots)
 
void HandleSpellClick (WorldPackets::Spells::SpellClick &spellClick)
 
void HandleMirrorImageDataRequest (WorldPackets::Spells::GetMirrorImageData &getMirrorImageData)
 
void HandleGuildSetFocusedAchievement (WorldPackets::Achievement::GuildSetFocusedAchievement &setFocusedAchievement)
 
void HandleEquipmentSetSave (WorldPackets::EquipmentSet::SaveEquipmentSet &saveEquipmentSet)
 
void HandleDeleteEquipmentSet (WorldPackets::EquipmentSet::DeleteEquipmentSet &deleteEquipmentSet)
 
void HandleUseEquipmentSet (WorldPackets::EquipmentSet::UseEquipmentSet &useEquipmentSet)
 
void HandleServerTimeOffsetRequest (WorldPackets::Misc::ServerTimeOffsetRequest &)
 
void HandleQueryQuestCompletionNPCs (WorldPackets::Query::QueryQuestCompletionNPCs &queryQuestCompletionNPCs)
 
void HandleQuestPOIQuery (WorldPackets::Query::QuestPOIQuery &questPoiQuery)
 
void HandleViolenceLevel (WorldPackets::Misc::ViolenceLevel &violenceLevel)
 
void HandleObjectUpdateFailedOpcode (WorldPackets::Misc::ObjectUpdateFailed &objectUpdateFailed)
 
void HandleObjectUpdateRescuedOpcode (WorldPackets::Misc::ObjectUpdateRescued &objectUpdateRescued)
 
void HandleCloseInteraction (WorldPackets::Misc::CloseInteraction &closeInteraction)
 
void HandleConversationLineStarted (WorldPackets::Misc::ConversationLineStarted &conversationLineStarted)
 
void HandleKeyboundOverride (WorldPackets::Spells::KeyboundOverride &keyboundOverride)
 
void HandleQueryCountdownTimer (WorldPackets::Misc::QueryCountdownTimer &queryCountdownTimer)
 
void HandleSetCurrencyFlags (WorldPackets::Misc::SetCurrencyFlags const &setCurrenctFlags)
 
void HandleAdventureJournalOpenQuest (WorldPackets::AdventureJournal::AdventureJournalOpenQuest &openQuest)
 
void HandleAdventureJournalUpdateSuggestions (WorldPackets::AdventureJournal::AdventureJournalUpdateSuggestions &updateSuggestions)
 
void HandleCheckIsAdventureMapPoiValid (WorldPackets::AdventureMap::CheckIsAdventureMapPoiValid &CheckIsAdventureMapPoiValid)
 
void HandleAdventureMapStartQuest (WorldPackets::AdventureMap::AdventureMapStartQuest &startQuest)
 
void HandleAddToy (WorldPackets::Toy::AddToy &packet)
 
void HandleUseToy (WorldPackets::Toy::UseToy &packet)
 
void HandleToyClearFanfare (WorldPackets::Toy::ToyClearFanfare &toyClearFanfare)
 
void HandleMountSetFavorite (WorldPackets::Misc::MountSetFavorite &mountSetFavorite)
 
void HandleSceneTriggerEvent (WorldPackets::Scenes::SceneTriggerEvent &sceneTriggerEvent)
 
void HandleScenePlaybackComplete (WorldPackets::Scenes::ScenePlaybackComplete &scenePlaybackComplete)
 
void HandleScenePlaybackCanceled (WorldPackets::Scenes::ScenePlaybackCanceled &scenePlaybackCanceled)
 
void HandleCommerceTokenGetLog (WorldPackets::Token::CommerceTokenGetLog &updateListedAuctionableTokens)
 
void HandleCommerceTokenGetMarketPrice (WorldPackets::Token::CommerceTokenGetMarketPrice &requestWowTokenMarketPrice)
 
void HandleSaveCUFProfiles (WorldPackets::Misc::SaveCUFProfiles &packet)
 
void SendLoadCUFProfiles ()
 
void HandleGetGarrisonInfo (WorldPackets::Garrison::GetGarrisonInfo &getGarrisonInfo)
 
void HandleGarrisonPurchaseBuilding (WorldPackets::Garrison::GarrisonPurchaseBuilding &garrisonPurchaseBuilding)
 
void HandleGarrisonCancelConstruction (WorldPackets::Garrison::GarrisonCancelConstruction &garrisonCancelConstruction)
 
void HandleGarrisonRequestBlueprintAndSpecializationData (WorldPackets::Garrison::GarrisonRequestBlueprintAndSpecializationData &garrisonRequestBlueprintAndSpecializationData)
 
void HandleGarrisonGetMapData (WorldPackets::Garrison::GarrisonGetMapData &garrisonGetMapData)
 
void HandleBattlePetRequestJournal (WorldPackets::BattlePet::BattlePetRequestJournal &battlePetRequestJournal)
 
void HandleBattlePetRequestJournalLock (WorldPackets::BattlePet::BattlePetRequestJournalLock &battlePetRequestJournalLock)
 
void HandleBattlePetSetBattleSlot (WorldPackets::BattlePet::BattlePetSetBattleSlot &battlePetSetBattleSlot)
 
void HandleBattlePetModifyName (WorldPackets::BattlePet::BattlePetModifyName &battlePetModifyName)
 
void HandleQueryBattlePetName (WorldPackets::BattlePet::QueryBattlePetName &queryBattlePetName)
 
void HandleBattlePetDeletePet (WorldPackets::BattlePet::BattlePetDeletePet &battlePetDeletePet)
 
void HandleBattlePetSetFlags (WorldPackets::BattlePet::BattlePetSetFlags &battlePetSetFlags)
 
void HandleBattlePetClearFanfare (WorldPackets::BattlePet::BattlePetClearFanfare &battlePetClearFanfare)
 
void HandleBattlePetSummon (WorldPackets::BattlePet::BattlePetSummon &battlePetSummon)
 
void HandleBattlePetUpdateNotify (WorldPackets::BattlePet::BattlePetUpdateNotify &battlePetUpdateNotify)
 
void HandleCageBattlePet (WorldPackets::BattlePet::CageBattlePet &cageBattlePet)
 
void HandleBattlenetChangeRealmTicket (WorldPackets::Battlenet::ChangeRealmTicket &changeRealmTicket)
 
void HandleBattlenetRequest (WorldPackets::Battlenet::Request &request)
 
void SendBattlenetResponse (uint32 serviceHash, uint32 methodId, uint32 token, pb::Message const *response)
 
void SendBattlenetResponse (uint32 serviceHash, uint32 methodId, uint32 token, uint32 status)
 
void SendBattlenetRequest (uint32 serviceHash, uint32 methodId, pb::Message const *request, std::function< void(MessageBuffer)> callback)
 
void SendBattlenetRequest (uint32 serviceHash, uint32 methodId, pb::Message const *request)
 
std::array< uint8, 32 > const & GetRealmListSecret () const
 
void SetRealmListSecret (std::array< uint8, 32 > const &secret)
 
std::unordered_map< uint32, uint8 > const & GetRealmCharacterCounts () const
 
void HandleQueryRealmName (WorldPackets::Query::QueryRealmName &queryRealmName)
 
void HandleArtifactAddPower (WorldPackets::Artifact::ArtifactAddPower &artifactAddPower)
 
void HandleArtifactSetAppearance (WorldPackets::Artifact::ArtifactSetAppearance &artifactSetAppearance)
 
void HandleConfirmArtifactRespec (WorldPackets::Artifact::ConfirmArtifactRespec &confirmArtifactRespec)
 
void HandleQueryScenarioPOI (WorldPackets::Scenario::QueryScenarioPOI &queryScenarioPOI)
 
void HandleAzeriteEssenceUnlockMilestone (WorldPackets::Azerite::AzeriteEssenceUnlockMilestone &azeriteEssenceUnlockMilestone)
 
void HandleAzeriteEssenceActivateEssence (WorldPackets::Azerite::AzeriteEssenceActivateEssence &azeriteEssenceActivateEssence)
 
void HandleAzeriteEmpoweredItemViewed (WorldPackets::Azerite::AzeriteEmpoweredItemViewed &azeriteEmpoweredItemViewed)
 
void HandleAzeriteEmpoweredItemSelectPower (WorldPackets::Azerite::AzeriteEmpoweredItemSelectPower &azeriteEmpoweredItemSelectPower)
 
void SendAzeriteRespecNPC (ObjectGuid npc)
 
void HandleRequestLatestSplashScreen (WorldPackets::Misc::RequestLatestSplashScreen &requestLatestSplashScreen)
 
void HandleSocialContractRequest (WorldPackets::Social::SocialContractRequest &socialContractRequest)
 
uint64 GetConnectToInstanceKey () const
 
QueryCallbackProcessor & GetQueryProcessor ()
 
TransactionCallback & AddTransactionCallback (TransactionCallback &&callback)
 
SQLQueryHolderCallback & AddQueryHolderCallback (SQLQueryHolderCallback &&callback)
 

Static Public Member Functions

static void AddInstanceConnection (WorldSession *session, std::weak_ptr< WorldSocket > sockRef, ConnectToKey key)
 

Public Attributes

time_t m_muteTime
 
std::atomic< time_t > m_timeOutTime
 

Static Public Attributes

static constexpr uint32 SPECIAL_INIT_ACTIVE_MOVER_TIME_SYNC_COUNTER = 0xFFFFFFFF
 
static constexpr uint32 SPECIAL_RESUME_COMMS_TIME_SYNC_COUNTER = 0xFFFFFFFE
 

Protected Attributes

class WorldSession::DosProtection AntiDOS
 

Private Member Functions

void ProcessQueryCallbacks ()
 
void moveItems (Item *myItems[], Item *hisItems[])
 
bool CanUseBank (ObjectGuid bankerGUID=ObjectGuid::Empty) const
 
void LogUnexpectedOpcode (WorldPacket *packet, char const *status, const char *reason)
 Logging helper for unexpected opcodes.
 
bool IsLegitCharacterForAccount (ObjectGuid lowGUID)
 
Unit * ValidateAndGetUnitBeingMoved (ObjectGuid guid, OpcodeClient opcode, bool forStatusAck) const
 
void ComputeNewClockDelta ()
 
 WorldSession (WorldSession const &right)=delete
 
WorldSession & operator= (WorldSession const &right)=delete
 

Private Attributes

QueryCallbackProcessor _queryProcessor
 
AsyncCallbackProcessor< TransactionCallback > _transactionCallbacks
 
AsyncCallbackProcessor< SQLQueryHolderCallback > _queryHolderProcessor
 
GuidSet _legitCharacters
 
ObjectGuid::LowType m_GUIDLow
 
Player * _player
 
std::array< std::shared_ptr< WorldSocket >, MAX_CONNECTION_TYPES > m_Socket
 
std::string m_Address
 
AccountTypes _security
 
uint32 _accountId
 
std::string _accountName
 
std::unique_ptr< Battlenet::Account > _battlenetAccount
 
uint8 m_accountExpansion
 
uint8 m_expansion
 
std::string _os
 
uint32 _clientBuild
 
ClientBuild::VariantId _clientBuildVariant
 
std::array< uint8, 32 > _realmListSecret
 
std::unordered_map< uint32, uint8 > _realmCharacterCounts
 
std::unordered_map< uint32, std::function< void(MessageBuffer)> > _battlenetResponseCallbacks
 
uint32 _battlenetRequestToken
 
time_t _logoutTime
 
bool m_inQueue
 
ObjectGuid m_playerLoading
 
bool m_playerLogout
 
bool m_playerRecentlyLogout
 
bool m_playerSave
 
LocaleConstant m_sessionDbcLocale
 
LocaleConstant m_sessionDbLocaleIndex
 
Minutes _timezoneOffset
 
std::atomic< uint32 > m_latency
 
AccountData _accountData [NUM_ACCOUNT_DATA_TYPES]
 
std::array< uint32, MAX_ACCOUNT_TUTORIAL_VALUES > _tutorials
 
uint8 _tutorialsChanged
 
std::unordered_map< uint32, SystemTimePoint > _instanceResetTimes
 
PlayerDataAccount _playerDataAccount
 
std::vector< std::string > _registeredAddonPrefixes
 
bool _filterAddonMessages
 
uint32 recruiterId
 
bool isRecruiter
 
LockedQueue< WorldPacket * > _recvQueue
 
rbac::RBACData * _RBACData
 
uint32 expireTime
 
bool forceExit
 
std::unique_ptr< boost::circular_buffer< std::pair< int64, uint32 > > > _timeSyncClockDeltaQueue
 
int64 _timeSyncClockDelta
 
std::map< uint32, int64 > _pendingTimeSyncRequests
 
uint32 _timeSyncNextCounter
 
uint32 _timeSyncTimer
 
time_t _calendarEventCreationCooldown
 
std::unique_ptr< BattlePets::BattlePetMgr > _battlePetMgr
 
std::unique_ptr< CollectionMgr > _collectionMgr
 
ConnectToKey _instanceConnectKey
 

Friends

class World
 

Detailed Description

Player session in the World.

Definition at line 980 of file WorldSession.h.

Constructor & Destructor Documentation

◆ WorldSession() [1/2]

WorldSession::WorldSession ( uint32  id,
std::string &&  name,
uint32  battlenetAccountId,
std::string &&  battlenetAccountEmail,
std::shared_ptr< WorldSocket > &&  sock,
AccountTypes  sec,
uint8  expansion,
time_t  mute_time,
std::string &&  os,
Minutes  timezoneOffset,
uint32  build,
ClientBuild::VariantId  clientBuildVariant,
LocaleConstant  locale,
uint32  recruiter,
bool  isARecruiter 
)

WorldSession constructor.

Definition at line 107 of file WorldSession.cpp.

◆ ~WorldSession()

WorldSession::~WorldSession ( )

WorldSession destructor.

  • unload player if not unloaded
  • If have unclosed socket, close it
  • empty incoming packet queue

Definition at line 164 of file WorldSession.cpp.

References _player, _RBACData, _recvQueue, GetAccountId(), LoginDatabase, LogoutPlayer(), m_Socket, and LockedQueue< T, StorageType >::next().

◆ WorldSession() [2/2]

WorldSession::WorldSession ( WorldSession const &  right)
privatedelete

Member Function Documentation

◆ AbortLogin()

◆ AddInstanceConnection()

void WorldSession::AddInstanceConnection ( WorldSession *  session,
std::weak_ptr< WorldSocket >  sockRef,
ConnectToKey  key 
)
static

◆ AddInstanceEnterTime()

void WorldSession::AddInstanceEnterTime ( uint32  instanceId,
SystemTimePoint  enterTime 
)

Definition at line 1026 of file WorldSession.cpp.

References _instanceResetTimes.

Referenced by InstanceMap::AddPlayerToMap().

◆ AddQueryHolderCallback()

◆ AddTransactionCallback()

◆ AdjustClientMovementTime()

◆ BuildNameQueryData()

◆ CanAccessAlliedRaces()

bool WorldSession::CanAccessAlliedRaces ( ) const

◆ CanOpenMailBox()

◆ CanSpeak()

◆ CanUseBank()

◆ CheckStableMaster()

bool WorldSession::CheckStableMaster ( ObjectGuid  guid)

◆ ComputeNewClockDelta()

◆ DisallowHyperlinksAndMaybeKick()

bool WorldSession::DisallowHyperlinksAndMaybeKick ( std::string const &  str)

◆ DoLootRelease()

void WorldSession::DoLootRelease ( Loot *  loot)

Definition at line 269 of file LootHandler.cpp.

References GameObject::AddUse(), Creature::AllLootRemovedFromCorpse(), ObjectGuid::Clear(), CORPSE_DYNFLAG_LOOTABLE, Player::DestroyItem(), Player::DestroyItemCount(), UF::ObjectData::DynamicFlags, ObjectGuid::Empty, GameObjectValue::FishingHole, BaseEntity::ForceUpdateFieldChange(), GAMEOBJECT_TYPE_FISHINGHOLE, GAMEOBJECT_TYPE_FISHINGNODE, GAMEOBJECT_TYPE_GATHERING_NODE, Player::GetAELootView(), Item::GetBagSlot(), ObjectAccessor::GetCorpse(), Item::GetCount(), Map::GetCreature(), Map::GetGameObject(), GameObject::GetGoType(), GameObject::GetGOValue(), BaseEntity::GetGUID(), Loot::GetGUID(), Player::GetItemByGuid(), Player::GetLootGUID(), WorldObject::GetMap(), Loot::GetOwnerGUID(), GameObject::GetOwnerGUID(), GetPlayer(), Item::GetSlot(), Item::GetTemplate(), GameObject::GetUseCount(), GO_ACTIVATED, GO_JUST_DEACTIVATED, GO_READY, ItemTemplate::HasFlag(), INTERACTION_DISTANCE, Unit::IsAlive(), ObjectGuid::IsCorpse(), Creature::IsFullyLooted(), GameObject::IsFullyLooted(), ObjectGuid::IsGameObject(), BaseEntity::IsInWorld(), ObjectGuid::IsItem(), Loot::isLooted(), GameObject::IsWithinDistInMap(), WorldObject::IsWithinDistInMap(), ITEM_FLAG_HAS_LOOT, LOOT_MILLING, LOOT_PROSPECTING, Loot::loot_type, Player::m_AELootView, Corpse::m_loot, Item::m_loot, Item::m_lootGenerated, Object::m_objectData, BaseEntity::m_values, GameObjectValue::MaxOpens, UF::UpdateFieldHolder::ModifyValue(), Loot::NotifyLootList(), GameObject::OnLootRelease(), Corpse::RemoveCorpseDynamicFlag(), Object::RemoveDynamicFlag(), Loot::RemoveLooter(), Unit::RemoveUnitFlag(), Loot::roundRobinPlayer, Player::SendLootRelease(), Player::SetLootGUID(), GameObject::SetLootState(), UNIT_DYNFLAG_LOOTABLE, and UNIT_FLAG_LOOTING.

Referenced by DoLootReleaseAll(), HandleAutostoreLootItemOpcode(), HandleLootMoneyOpcode(), and HandleLootReleaseOpcode().

◆ DoLootReleaseAll()

void WorldSession::DoLootReleaseAll ( )

◆ GetAccountData()

AccountData const * WorldSession::GetAccountData ( AccountDataType  type) const
inline

Definition at line 1100 of file WorldSession.h.

Referenced by HandleRequestAccountData(), and SendAccountDataTimes().

◆ GetAccountExpansion()

◆ GetAccountGUID()

◆ GetAccountId()

uint32 WorldSession::GetAccountId ( ) const
inline

Definition at line 1018 of file WorldSession.h.

Referenced by World::AddSession_(), AuctionHouseObject::BuyCommodity(), CharacterActionIpLogger::CharacterIPLogAction(), Spell::CheckCast(), Spell::EffectEnchantItemPerm(), Spell::EffectEnchantItemPrismatic(), Spell::EffectEnchantItemTmp(), WorldSession::DosProtection::EvaluateOpcode(), SocialMgr::GetFriendInfo(), GetPlayerInfo(), Player::GetsRecruitAFriendBonus(), Player::GetStartLevel(), HandleAcceptTradeOpcode(), account_commandscript::HandleAccount2FARemoveCommand(), account_commandscript::HandleAccount2FASetupCommand(), account_commandscript::HandleAccountAddonCommand(), account_commandscript::HandleAccountCommand(), battlenet_account_commandscript::HandleAccountCreateCommand(), account_commandscript::HandleAccountCreateCommand(), account_commandscript::HandleAccountEmailCommand(), account_commandscript::HandleAccountLockCountryCommand(), account_commandscript::HandleAccountLockIpCommand(), account_commandscript::HandleAccountPasswordCommand(), account_commandscript::HandleAccountSetAddonCommand(), account_commandscript::HandleAccountSetSecLevelCommand(), HandleAuctionSellCommodity(), HandleAuctionSellItem(), HandleCharCreateOpcode(), HandleCharCustomizeCallback(), HandleCharCustomizeOpcode(), HandleCharDeleteOpcode(), HandleCharEnum(), HandleCharEnumOpcode(), HandleCharRaceOrFactionChangeOpcode(), HandleCharRenameCallBack(), HandleCharRenameOpcode(), HandleCharUndeleteEnumOpcode(), HandleContinuePlayerLogin(), HandleDismissCritter(), HandleForceSpeedChangeAck(), battlenet_account_commandscript::HandleGameAccountCreateCommand(), HandleMailReturnToSender(), HandleMailTakeItem(), Guild::HandleMemberDepositMoney(), HandleMoveSetModMovementForceMagnitudeAck(), misc_commandscript::HandleMuteCommand(), misc_commandscript::HandlePInfoCommand(), HandlePlayerLogin(), HandlePlayerLoginOpcode(), HandleRandomizeCharNameOpcode(), HandleReorderCharacters(), HandleSendMail(), HandleSignPetition(), misc_commandscript::HandleUnmuteCommand(), HandleWhoIsOpcode(), World::HasRecentlyDisconnected(), InitializeSession(), LoadPermissions(), LoadPermissionsAsync(), LogCommandUsage(), LogoutPlayer(), CriteriaHandler::ModifierSatisfied(), moveItems(), SaveInstanceTimeRestrictions(), SaveTutorialsData(), AuctionHouseObject::SendAuctionWon(), BlackMarketMgr::SendAuctionWonMail(), SendConnectToInstance(), SetAccountData(), and ~WorldSession().

◆ GetAccountName()

std::string const & WorldSession::GetAccountName ( ) const
inline

◆ GetBattlenetAccount()

Battlenet::Account & WorldSession::GetBattlenetAccount ( ) const
inline

◆ GetBattlenetAccountGUID()

◆ GetBattlenetAccountId()

◆ GetBattlePetMgr()

◆ GetCalendarEventCreationCooldown()

time_t WorldSession::GetCalendarEventCreationCooldown ( ) const
inline

Definition at line 1229 of file WorldSession.h.

Referenced by HandleCalendarAddEvent(), and HandleCalendarCopyEvent().

◆ GetClientBuild()

uint32 WorldSession::GetClientBuild ( ) const
inline

◆ GetClientBuildVariant()

ClientBuild::VariantId const & WorldSession::GetClientBuildVariant ( ) const
inline

◆ GetCollectionMgr()

◆ GetConnectToInstanceKey()

uint64 WorldSession::GetConnectToInstanceKey ( ) const
inline

Definition at line 1933 of file WorldSession.h.

Referenced by AddInstanceConnection().

◆ GetExpansion()

◆ GetLatency()

uint32 WorldSession::GetLatency ( ) const
inline

◆ GetOS()

std::string const & WorldSession::GetOS ( ) const
inline

◆ GetPlayer()

Player * WorldSession::GetPlayer ( ) const
inline

Definition at line 1024 of file WorldSession.h.

Referenced by AbortLogin(), CollectionMgr::AddHeirloom(), CollectionMgr::AddItemAppearance(), CollectionMgr::AddMount(), BattlePets::BattlePetMgr::AddPet(), CollectionMgr::AddTemporaryAppearance(), Battlenet::Account::AddToObjectUpdate(), CollectionMgr::AddToy(), CollectionMgr::AddTransmogIllusion(), CollectionMgr::AddTransmogOutfit(), CollectionMgr::AddWarbandScene(), Guild::BroadcastAddonToGuild(), Guild::BroadcastToGuild(), Battlenet::Account::BuildUpdate(), BattlePets::BattlePetMgr::CageBattlePet(), CanUseBank(), CollectionMgr::CheckHeirloomUpgrades(), cast_commandscript::CheckSpellExistsAndIsValid(), CheckStableMaster(), DisallowHyperlinksAndMaybeKick(), ArenaTeam::Disband(), BattlePets::BattlePetMgr::DismissPet(), DoLootRelease(), go_commandscript::DoTeleport(), ChatHandler::GetCreatureFromPlayerMapByDbGuid(), ChatHandler::GetNearbyGameObject(), ChatHandler::GetObjectFromPlayerMapByDbGuid(), ChatHandler::GetPlayer(), ChatHandler::GetPlayerGroupAndGUIDByName(), ChatHandler::getSelectedCreature(), ChatHandler::getSelectedObject(), ChatHandler::getSelectedPlayer(), ChatHandler::getSelectedPlayerOrSelf(), GetSelectedPlayerPetOrOwn(), ChatHandler::getSelectedUnit(), BattlePets::BattlePetMgr::GrantBattlePetExperience(), BattlePets::BattlePetMgr::GrantBattlePetLevel(), Guild::HandleAcceptMember(), battlenet_account_commandscript::HandleAccountCreateCommand(), account_commandscript::HandleAccountCreateCommand(), account_commandscript::HandleAccountEmailCommand(), account_commandscript::HandleAccountOnlineListCommandWithParameters(), account_commandscript::HandleAccountPasswordCommand(), battlenet_account_commandscript::HandleAccountPasswordCommand(), HandleActivateTaxiOpcode(), HandleAddFriendOpcode(), HandleAddIgnoreOpcode(), misc_commandscript::HandleAddItemCommand(), misc_commandscript::HandleAddItemSetCommand(), misc_commandscript::HandleAddItemToCommand(), Guild::HandleAddNewRank(), Battlenet::Services::ClubService::HandleAdvanceStreamViewTime(), misc_commandscript::HandleAppearCommand(), HandleAreaSpiritHealerQueryOpcode(), HandleAreaSpiritHealerQueueOpcode(), HandleAreaTriggerOpcode(), HandleAttackStopOpcode(), HandleAuctionBrowseQuery(), HandleAuctionCancelCommoditiesPurchase(), HandleAuctionConfirmCommoditiesPurchase(), HandleAuctionGetCommodityQuote(), HandleAuctionHelloOpcode(), HandleAuctionListBiddedItems(), HandleAuctionListBucketsByBucketKeys(), HandleAuctionListItemsByBucketKey(), HandleAuctionListItemsByItemID(), HandleAuctionListOwnedItems(), HandleAuctionPlaceBid(), HandleAuctionRemoveItem(), HandleAuctionReplicateItems(), HandleAuctionSellCommodity(), HandleAuctionSellItem(), HandleAutoGuildBankItem(), HandleAutoStoreGuildBankItem(), HandleAutostoreLootItemOpcode(), misc_commandscript::HandleBankCommand(), HandleBankerActivateOpcode(), HandleBattlemasterHelloOpcode(), HandleBattlemasterJoinOpcode(), HandleBinderActivateOpcode(), misc_commandscript::HandleBindSightCommand(), HandleBlackMarketBidOnItem(), HandleBlackMarketOpen(), HandleBlackMarketRequestItems(), HandleBuybackItem(), Guild::HandleBuyBankTab(), HandleBuyItemOpcode(), HandleCancelTempEnchantmentOpcode(), cast_commandscript::HandleCastBackCommand(), cast_commandscript::HandleCastCommand(), cast_commandscript::HandleCastDistCommand(), cheat_commandscript::HandleCasttimeCheatCommand(), HandleChangeSubGroupOpcode(), misc_commandscript::HandleChangeWeather(), HandleChannelCommand(), HandleChannelPassword(), HandleChannelPlayerCommand(), message_commandscript::HandleChannelSetOwnership(), character_commandscript::HandleCharacterLevelCommand(), HandleChatAddonMessage(), HandleChatCanLocalWhisperTargetRequest(), HandleChatIgnoredOpcode(), HandleChatMessage(), HandleChatMessageAFKOpcode(), HandleChatMessageDNDOpcode(), cheat_commandscript::HandleCheatStatusCommand(), HandleClearRaidMarker(), misc_commandscript::HandleComeToMeCommand(), HandleCompleteCinematic(), HandleConfirmRespecWipeOpcode(), HandleContinuePlayerLogin(), HandleConvertRaidOpcode(), cheat_commandscript::HandleCoolDownCheatCommand(), misc_commandscript::HandleCooldownCommand(), Battlenet::Services::ClubService::HandleCreateMessage(), misc_commandscript::HandleDamageCommand(), misc_commandscript::HandleDamageGoCommand(), debug_commandscript::HandleDebugArenaCommand(), debug_commandscript::HandleDebugBecomePersonalClone(), scene_commandscript::HandleDebugSceneCommand(), debug_commandscript::HandleDebugSendQuestPartyMsgCommand(), debug_commandscript::HandleDebugSendSetPhaseShiftCommand(), HandleDeclineGuildInvites(), HandleDeclineNeighborhoodInvites(), Guild::HandleDelete(), HandleDelFriendOpcode(), HandleDelIgnoreOpcode(), modify_commandscript::HandleDeMorphCommand(), misc_commandscript::HandleDevCommand(), HandleDFGetJoinStatus(), misc_commandscript::HandleDieCommand(), HandleDismissCritter(), HandleDoReadyCheckOpcode(), HandleDuelAccepted(), HandleDuelCancelled(), HandleEjectPassenger(), HandleEmoteOpcode(), HandleEnableTaxiNodeOpcode(), cheat_commandscript::HandleExploreCheatCommand(), HandleFarSightOpcode(), misc_commandscript::HandleFreezeCommand(), battlenet_account_commandscript::HandleGameAccountCreateCommand(), gobject_commandscript::HandleGameObjectActivateCommand(), gobject_commandscript::HandleGameObjectAddCommand(), gobject_commandscript::HandleGameObjectAddTempCommand(), gobject_commandscript::HandleGameObjectDeleteCommand(), gobject_commandscript::HandleGameObjectMoveCommand(), gobject_commandscript::HandleGameObjectNearCommand(), HandleGameobjectReportUse(), gobject_commandscript::HandleGameObjectTargetCommand(), gobject_commandscript::HandleGameObjectTurnCommand(), HandleGameObjectUseOpcode(), Guild::HandleGetAchievementMembers(), misc_commandscript::HandleGetDistanceCommand(), HandleGetItemPurchaseData(), Battlenet::Services::ClubService::HandleGetMembers(), Battlenet::Services::ClubService::HandleGetStreams(), gm_commandscript::HandleGMFlyCommand(), gm_commandscript::HandleGMListIngameCommand(), gm_commandscript::HandleGMVisibleCommand(), go_commandscript::HandleGoBossCommand(), cheat_commandscript::HandleGodModeCheatCommand(), go_commandscript::HandleGoGraveyardCommand(), go_commandscript::HandleGoGridCommand(), go_commandscript::HandleGoInstanceCommand(), go_commandscript::HandleGoOffsetCommand(), go_commandscript::HandleGoQuestCommand(), HandleGossipHelloOpcode(), HandleGossipSelectOptionOpcode(), go_commandscript::HandleGoTicketCommand(), go_commandscript::HandleGoXYZCommand(), go_commandscript::HandleGoZoneXYCommand(), group_commandscript::HandleGroupSummonCommand(), misc_commandscript::HandleGUIDCommand(), HandleGuildAcceptInvite(), HandleGuildAddRank(), HandleGuildAssignRank(), HandleGuildBankActivate(), HandleGuildBankBuyTab(), HandleGuildBankDepositMoney(), HandleGuildBankLogQuery(), HandleGuildBankMoneyWithdrawn(), HandleGuildBankQueryTab(), HandleGuildBankSetTabText(), HandleGuildBankTextQuery(), HandleGuildBankUpdateTab(), HandleGuildBankWithdrawMoney(), HandleGuildDeclineInvitation(), HandleGuildDelete(), HandleGuildDeleteRank(), HandleGuildDemoteMember(), HandleGuildEventLogQuery(), HandleGuildGetAchievementMembers(), HandleGuildGetRoster(), HandleGuildInviteByName(), HandleGuildLeave(), HandleGuildNewsUpdateSticky(), HandleGuildOfficerRemoveMember(), Guild::HandleGuildPartyRequest(), HandleGuildPermissionsQuery(), HandleGuildPromoteMember(), HandleGuildQueryNews(), HandleGuildReplaceGuildMaster(), HandleGuildSetAchievementTracking(), HandleGuildSetGuildMaster(), HandleGuildSetMemberNote(), HandleGuildSetRankPermissions(), HandleGuildShiftRank(), HandleGuildUpdateInfoText(), HandleGuildUpdateMotdText(), honor_commandscript::HandleHonorAddKillCommand(), HandleInitiateRolePoll(), HandleInitiateTradeOpcode(), HandleInspectOpcode(), instance_commandscript::HandleInstanceListBindsCommand(), instance_commandscript::HandleInstanceUnbindCommand(), Guild::HandleInviteMember(), misc_commandscript::HandleItemMoveCommand(), HandleItemRefund(), HandleJoinChannel(), HandleKeyboundOverride(), misc_commandscript::HandleKickPlayerCommand(), learn_commandscript::HandleLearnAllGMCommand(), learn_commandscript::HandleLearnAllLangCommand(), learn_commandscript::HandleLearnAllTalentsCommand(), learn_commandscript::HandleLearnCommand(), learn_commandscript::HandleLearnMySpellsCommand(), HandleLeaveChannel(), HandleLeaveGroupOpcode(), Guild::HandleLeaveMember(), character_commandscript::HandleLevelUpCommand(), HandleLfgJoinOpcode(), HandleLfgLeaveOpcode(), HandleLfgProposalResultOpcode(), HandleLfgSetBootVoteOpcode(), HandleLfgSetRolesOpcode(), HandleLfgTeleportOpcode(), misc_commandscript::HandleLinkGraveCommand(), list_commandscript::HandleListCreatureCommand(), HandleListInventoryOpcode(), list_commandscript::HandleListMailCommand(), list_commandscript::HandleListObjectCommand(), list_commandscript::HandleListRespawnsCommand(), list_commandscript::HandleListScenesCommand(), list_commandscript::HandleListSpawnPointsCommand(), HandleLogoutCancelOpcode(), HandleLogoutRequestOpcode(), lookup_commandscript::HandleLookupPlayerIpCommand(), lookup_commandscript::HandleLookupQuestCommand(), lookup_commandscript::HandleLookupQuestIdCommand(), HandleLootMasterGiveOpcode(), HandleLootMoneyOpcode(), HandleLootOpcode(), HandleLootReleaseOpcode(), HandleLootRoll(), misc_commandscript::HandleMailBoxCommand(), Guild::HandleMemberDepositMoney(), Guild::HandleMemberLogout(), Guild::HandleMemberWithdrawMoney(), HandleMergeGuildBankItemWithGuildBankItem(), HandleMergeGuildBankItemWithItem(), HandleMergeItemWithGuildBankItem(), HandleMinimapPingOpcode(), mmaps_commandscript::HandleMmapLoadedTilesCommand(), mmaps_commandscript::HandleMmapLocCommand(), mmaps_commandscript::HandleMmapPathCommand(), mmaps_commandscript::HandleMmapStatsCommand(), mmaps_commandscript::HandleMmapTestArea(), modify_commandscript::HandleModifyMorphCommand(), modify_commandscript::HandleModifyStandStateCommand(), HandleMountSpecialAnimOpcode(), HandleMoveChangeVehicleSeats(), HandleMoveGuildBankItem(), HandleMovementOpcode(), HandleMoveSplineDoneOpcode(), HandleMoveTeleportAck(), HandleMoveWorldportAck(), misc_commandscript::HandleNearGraveCommand(), HandleNextCinematicCamera(), npc_commandscript::HandleNpcAddCommand(), npc_commandscript::HandleNpcAddFormationCommand(), npc_commandscript::HandleNpcAddTempSpawnCommand(), npc_commandscript::HandleNpcAddVendorItemCommand(), HandleNpcDespawnGroup(), npc_commandscript::HandleNpcFollowCommand(), npc_commandscript::HandleNpcMoveCommand(), npc_commandscript::HandleNpcNearCommand(), HandleNpcSpawnGroup(), npc_commandscript::HandleNpcTameCommand(), npc_commandscript::HandleNpcUnFollowCommand(), HandleOfferPetition(), HandleOpenItemOpcode(), HandleOpenWrappedItemCallback(), HandleOptOutOfLootOpcode(), HandlePartyInviteOpcode(), HandlePartyInviteResponseOpcode(), HandlePartyUninviteOpcode(), HandlePetAction(), HandlePetActionHelper(), HandlePetCancelAuraOpcode(), HandlePetCastSpellOpcode(), pet_commandscript::HandlePetCreateCommand(), HandlePetitionBuy(), HandlePetitionShowSignatures(), HandlePetSetAction(), HandlePetSpellAutocastOpcode(), HandlePetStopAttack(), misc_commandscript::HandlePlayAllCommand(), HandlePlayerLoginOpcode(), HandlePortGraveyard(), misc_commandscript::HandlePossessCommand(), cheat_commandscript::HandlePowerCheatCommand(), HandlePushQuestToParty(), HandleQueryInspectAchievements(), HandleQuestgiverAcceptQuestOpcode(), HandleQuestgiverHelloOpcode(), HandleRandomRollOpcode(), HandleReadyCheckResponseOpcode(), Guild::HandleRemoveMember(), Guild::HandleRemoveRank(), HandleRepairItemOpcode(), HandleRepopRequest(), HandleRequestPartyJoinUpdates(), HandleRequestPartyMemberStatsOpcode(), HandleRequestStabledPets(), HandleRequestVehicleExit(), HandleRequestVehicleNextSeat(), HandleRequestVehiclePrevSeat(), HandleRequestVehicleSwitchSeat(), reset_commandscript::HandleResetSpellsCommand(), reset_commandscript::HandleResetTalentsCommand(), misc_commandscript::HandleRespawnCommand(), HandleResurrectResponse(), Guild::HandleRoster(), misc_commandscript::HandleSaveCommand(), HandleSaveCUFProfiles(), HandleSaveGuildEmblem(), HandleScenePlaybackCanceled(), HandleScenePlaybackComplete(), HandleSceneTriggerEvent(), HandleSellAllJunkItems(), HandleSellItemOpcode(), send_commandscript::HandleSendItemsCommand(), HandleSendMail(), send_commandscript::HandleSendMailCommand(), send_commandscript::HandleSendMoneyCommand(), Guild::HandleSetAchievementTracking(), HandleSetActionBarToggles(), HandleSetActionButtonOpcode(), HandleSetActiveMoverOpcode(), HandleSetAssistantLeaderOpcode(), Guild::HandleSetEmblem(), HandleSetEveryoneIsAssistant(), HandleSetFactionAtWar(), HandleSetFactionNotAtWar(), Guild::HandleSetInfo(), HandleSetLootSpecialization(), Guild::HandleSetMemberNote(), Guild::HandleSetMemberRank(), Guild::HandleSetMOTD(), Guild::HandleSetNewGuildMaster(), HandleSetPartyAssignment(), HandleSetPartyLeaderOpcode(), HandleSetPvP(), Guild::HandleSetRankInfo(), HandleSetRestrictPingsToAssistants(), HandleSetRoleOpcode(), HandleSetSheathedOpcode(), Battlenet::Services::ClubService::HandleSetStreamFocus(), HandleSetTitleOpcode(), HandleSetWatchedFactionOpcode(), Guild::HandleShiftRank(), HandleSignPetition(), HandleSpiritHealerActivate(), HandleSplitGuildBankItem(), HandleSplitGuildBankItemToInventory(), HandleSplitItemToGuildBank(), HandleStoreGuildBankItem(), HandleSubmitUserFeedback(), Battlenet::Services::ClubService::HandleSubscribe(), Battlenet::Services::ClubMembershipService::HandleSubscribe(), Battlenet::Services::ClubService::HandleSubscribeStream(), misc_commandscript::HandleSummonCommand(), HandleSupportTicketSubmitComplaint(), HandleSuspendTokenResponse(), HandleSwapGuildBankItemWithGuildBankItem(), HandleSwapItemWithGuildBankItem(), HandleSwapSubGroupsOpcode(), HandleTabardVendorActivateOpcode(), cheat_commandscript::HandleTaxiCheatCommand(), HandleTaxiQueryAvailableNodesOpcode(), HandleTaxiRequestEarlyLanding(), tele_commandscript::HandleTeleAddCommand(), tele_commandscript::HandleTeleCommand(), ticket_commandscript::HandleTicketAssignToCommand(), ticket_commandscript::HandleTicketCloseByIdCommand(), ticket_commandscript::HandleTicketCommentCommand(), ticket_commandscript::HandleTicketDeleteByIdCommand(), ticket_commandscript::HandleTicketUnAssignCommand(), HandleTogglePvP(), HandleTrainerBuySpellOpcode(), HandleTrainerListOpcode(), HandleTransmogrifyItems(), misc_commandscript::HandleUnbindSightCommand(), HandleUnlearnSkillOpcode(), misc_commandscript::HandleUnPossessCommand(), misc_commandscript::HandleUnstuckCommand(), Guild::HandleUpdateMemberRank(), HandleUpdateRaidTargetOpcode(), cheat_commandscript::HandleWaterWalkCheatCommand(), message_commandscript::HandleWhispersCommand(), HandleWhoIsOpcode(), CollectionMgr::LoadHeirlooms(), CollectionMgr::LoadItemAppearances(), CollectionMgr::LoadToys(), CollectionMgr::LoadTransmogIllusions(), CollectionMgr::LoadTransmogOutfits(), CollectionMgr::LoadWarbandScenes(), LogCommandUsage(), Guild::MassInviteToEvent(), BattlePets::BattlePetMgr::ModifyName(), ChatHandler::needReportToTarget(), MapSessionFilter::Process(), WorldSessionFilter::Process(), Battlenet::Account::RemoveFromObjectUpdate(), CollectionMgr::RemoveTemporaryAppearance(), ResetTimeOutTime(), SendAuctionHello(), Guild::SendBankList(), SendBindPoint(), SendDiscoverNewTaxiNode(), SendEnchantmentLog(), Guild::SendEventPresenceChanged(), World::SendGlobalGMMessage(), World::SendGMText(), BattlePets::BattlePetMgr::SendJournal(), SendLearnNewTaxiNode(), SendLfgBootProposalUpdate(), SendLfgJoinResult(), SendLfgPartyLockInfo(), SendLfgPlayerLockInfo(), SendLfgPlayerReward(), SendLfgQueueStatus(), SendLfgUpdateProposal(), SendListInventory(), SendLoadCUFProfiles(), Guild::SendLoginInfo(), Guild::SendMoneyInfo(), Guild::SendPermissions(), SendPetitionShowList(), PlayerMenu::SendQuestQueryResponse(), CollectionMgr::SendSingleMountUpdate(), SendTaxiMenu(), SendTaxiStatus(), SendTrainerList(), Player::SetPetSlot(), Player::StartLoadingActionButtons(), BattlePets::BattlePetMgr::SummonPet(), Update(), BattlePets::BattlePetMgr::UpdateBattlePetData(), CollectionMgr::UpgradeHeirloom(), ValidateHyperlinksAndMaybeKick(), and ValidateMovementInfo().

◆ GetPlayerDataAccount()

PlayerDataAccount const & WorldSession::GetPlayerDataAccount ( ) const
inline

Definition at line 1153 of file WorldSession.h.

Referenced by Player::_LoadPlayerData().

◆ GetPlayerInfo()

std::string WorldSession::GetPlayerInfo ( ) const

Definition at line 211 of file WorldSession.cpp.

References _player, GetAccountId(), BaseEntity::GetGUID(), WorldObject::GetName(), ObjectGuid::IsEmpty(), m_playerLoading, and Trinity::StringFormat().

Referenced by Battlenet::WorldserverServiceDispatcher::Dispatch(), Battlenet::WorldserverService< T >::GetCallerInfo(), Handle_EarlyProccess(), Handle_NULL(), HandleAddFriendOpcode(), WorldSocket::HandleAuthContinuedSession(), WorldSocket::HandleAuthSession(), HandleBattleFieldPortOpcode(), HandleChannelCommand(), HandleChannelPassword(), HandleChannelPlayerCommand(), HandleCharRaceOrFactionChangeCallback(), HandleChatMessage(), Battlenet::Services::Shared::GameUtilities::HandleClientRequest(), WorldSocket::HandleConnectToFailed(), HandleDBQueryBulk(), HandleDFGetJoinStatus(), HandleDFGetSystemInfo(), Battlenet::Services::Shared::GameUtilities::HandleGetAllValuesForAttribute(), HandleGuildAddRank(), HandleGuildAssignRank(), HandleGuildBankActivate(), HandleGuildBankBuyTab(), HandleGuildBankDepositMoney(), HandleGuildBankLogQuery(), HandleGuildBankQueryTab(), HandleGuildBankSetTabText(), HandleGuildBankTextQuery(), HandleGuildBankUpdateTab(), HandleGuildBankWithdrawMoney(), HandleGuildDeleteRank(), HandleGuildDemoteMember(), HandleGuildEventLogQuery(), HandleGuildGetRanks(), HandleGuildInviteByName(), HandleGuildOfficerRemoveMember(), Guild::HandleGuildPartyRequest(), HandleGuildPromoteMember(), HandleGuildQueryOpcode(), HandleGuildSetGuildMaster(), HandleGuildSetMemberNote(), HandleGuildSetRankPermissions(), HandleGuildShiftRank(), HandleGuildUpdateInfoText(), HandleGuildUpdateMotdText(), HandleJoinChannel(), HandleLeaveChannel(), HandleLfgJoinOpcode(), HandleLfgLeaveOpcode(), HandleLfgProposalResultOpcode(), HandleLfgSetBootVoteOpcode(), HandleLfgSetRolesOpcode(), HandleLfgTeleportOpcode(), Guild::HandleNewsSetSticky(), WorldSocket::HandlePing(), HandlePlayerChoiceResponse(), Guild::HandleQuery(), HandleRemoveNewItem(), Guild::HandleRoster(), HandleSaveGuildEmblem(), HandleSendMail(), Guild::HandleSetBankTabInfo(), HandleTransmogOutfitNew(), HandleTransmogOutfitUpdateInfo(), HandleTransmogOutfitUpdateSituations(), HandleTransmogOutfitUpdateSlots(), KickPlayer(), Channel::List(), WorldSocket::LogOpcodeText(), LogUnexpectedOpcode(), LogUnprocessedTail(), lfg::LFGPlayerScript::OnLogin(), WorldSocket::ReadDataHandler(), Guild::SendBankLog(), Guild::SendCommandResult(), Guild::SendEventLog(), Guild::SendEventMOTD(), Guild::SendGuildRankInfo(), SendLfgBootProposalUpdate(), SendLfgDisabled(), SendLfgJoinResult(), SendLfgOfferContinue(), SendLfgPartyLockInfo(), SendLfgPlayerLockInfo(), SendLfgPlayerReward(), SendLfgQueueStatus(), SendLfgRoleCheckUpdate(), SendLfgRoleChosen(), SendLfgTeleportError(), SendLfgUpdateProposal(), SendLfgUpdateStatus(), Guild::SendMoneyInfo(), Guild::SendNewsUpdate(), SendPacket(), Guild::SendPermissions(), Guild::SendSaveEmblemResult(), Guild::BankTab::SendText(), Pet::Update(), Update(), and ValidateAndGetUnitBeingMoved().

◆ GetPlayerName()

◆ GetQueryProcessor()

◆ GetRBACData()

◆ GetRealmCharacterCounts()

std::unordered_map< uint32, uint8 > const & WorldSession::GetRealmCharacterCounts ( ) const
inline

◆ GetRealmListSecret()

std::array< uint8, 32 > const & WorldSession::GetRealmListSecret ( ) const
inline

◆ GetRecruiterId()

◆ GetRemoteAddress()

◆ GetSecurity()

◆ GetSessionDbcLocale()

◆ GetSessionDbLocaleIndex()

◆ GetTimezoneOffset()

◆ GetTrinityString()

◆ GetTutorialInt()

uint32 WorldSession::GetTutorialInt ( uint8  index) const
inline

Definition at line 1108 of file WorldSession.h.

Referenced by HandleTutorialFlag().

◆ Handle_EarlyProccess()

void WorldSession::Handle_EarlyProccess ( WorldPackets::Null &  null)

◆ Handle_NULL()

void WorldSession::Handle_NULL ( WorldPackets::Null &  null)

◆ HandleAcceptTradeOpcode()

void WorldSession::HandleAcceptTradeOpcode ( WorldPackets::Trade::AcceptTrade &  acceptTrade)

Definition at line 235 of file TradeHandler.cpp.

References _player, WorldPackets::Trade::TradeStatus::BagResult, Player::CanStoreItems(), CharacterDatabase, Spell::CheckCast(), clearAcceptTradeMode(), EQUIP_ERR_CANT_TRADE_ACCOUNT_ITEM, EQUIP_ERR_NOT_ENOUGH_MONEY, EQUIP_ERR_OK, EQUIP_ERR_TOO_MUCH_GOLD, EQUIP_ERR_TRADE_BOUND_ITEM, WorldPackets::Trade::TradeStatus::FailureForYou, GetAccountId(), Map::GetDifficultyID(), BaseEntity::GetGUID(), TradeData::GetItem(), WorldObject::GetMap(), Player::GetMoney(), TradeData::GetMoney(), WorldObject::GetName(), TradeData::GetServerStateIndex(), Player::GetSession(), TradeData::GetSpell(), TradeData::GetSpellCastItem(), TradeData::GetTrader(), Player::HasEnoughMoney(), HasPermission(), TradeData::HasSpellCastItem(), TradeData::IsAccepted(), Player::IsAccountBankPos(), WorldObject::IsWithinDistInMap(), WorldPackets::Trade::TradeStatus::ItemID, Spell::m_CastItem, Spell::m_targets, Player::m_trade, MAX_MONEY_AMOUNT, Player::ModifyMoney(), Player::MoveItemFromInventory(), moveItems(), Spell::prepare(), rbac::RBAC_PERM_LOG_GM_TRADE, Player::SaveInventoryAndGoldToDB(), Spell::SendCastResult(), SendTradeStatus(), TradeData::SetAccepted(), setAcceptTradeMode(), Item::SetGiftCreator(), TradeData::SetSpell(), SpellCastTargets::SetTradeItemTarget(), sLog, SPELL_CAST_OK, sSpellMgr, WorldPackets::Trade::AcceptTrade::StateIndex, WorldPackets::Trade::TradeStatus::Status, TRADE_DISTANCE, TRADE_SLOT_NONTRADED, TRADE_SLOT_TRADED_COUNT, TRADE_STATUS_ACCEPTED, TRADE_STATUS_CANCELLED, TRADE_STATUS_COMPLETE, TRADE_STATUS_FAILED, TRADE_STATUS_STATE_CHANGED, TRADE_STATUS_TOO_FAR_AWAY, and TRIGGERED_FULL_MASK.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleActivateTaxiOpcode()

◆ HandleAddFriendOpcode()

◆ HandleAddIgnoreOpcode()

◆ HandleAddonRegisteredPrefixesOpcode()

◆ HandleAddToy()

◆ HandleAdventureJournalOpenQuest()

◆ HandleAdventureJournalUpdateSuggestions()

◆ HandleAdventureMapStartQuest()

◆ HandleAlterAppearance()

void WorldSession::HandleAlterAppearance ( WorldPackets::Character::AlterApperance &  packet)

◆ HandleAreaSpiritHealerQueryOpcode()

◆ HandleAreaSpiritHealerQueueOpcode()

◆ HandleAreaTriggerOpcode()

void WorldSession::HandleAreaTriggerOpcode ( WorldPackets::AreaTrigger::AreaTrigger &  packet)

Definition at line 467 of file MiscHandler.cpp.

References _player, Player::AreaExploredOrEventHappens(), AreaTriggerEntry::AreaTriggerActionSetID, WorldPackets::AreaTrigger::AreaTrigger::AreaTriggerID, Player::CanCompleteQuest(), Player::CompleteQuest(), CONDITION_SOURCE_TYPE_AREATRIGGER_CLIENT_TRIGGERED, EnterAreaTriggerWithActionSet, WorldPackets::AreaTrigger::AreaTrigger::Entered, Player::FindQuestSlot(), Player::GetCorpseLocation(), Player::GetGroup(), BaseEntity::GetGUID(), Player::GetInstanceEntrance(), WorldObject::GetMap(), WorldLocation::GetMapId(), WorldObject::GetName(), Player::GetOutdoorPvP(), GetPlayer(), Player::GetRestMgr(), Player::GetSession(), Player::HasCorpse(), Quest::HasFlag(), AreaTriggerEntry::ID, Unit::IsAlive(), InnAreaTrigger::IsDBC, Player::isDebugAreaTriggers, Map::IsDungeon(), Player::IsInAreaTrigger(), Unit::IsInFlight(), Player::IsQuestObjectiveCompletable(), Player::IsQuestObjectiveComplete(), LANG_DEBUG_AREATRIGGER_ENTERED, LANG_DEBUG_AREATRIGGER_LEFT, LeaveAreaTriggerWithActionSet, WorldSafeLocsEntry::Loc, Quest::Objectives, InstanceTemplate::Parent, Map::PlayerCannotEnter(), ChatHandler::PSendSysMessage(), QUEST_FLAGS_COMPLETION_AREA_TRIGGER, QUEST_OBJECTIVE_AREATRIGGER, QUEST_STATUS_INCOMPLETE, RAID_GROUP_ERR_ONLY, Unit::RemovePvpFlag(), RestMgr::RemoveRestFlag(), REST_FLAG_IN_TAVERN, Player::ResurrectPlayer(), sAreaTriggerStore, sConditionMgr, SendPacket(), Player::SendQuestUpdateAddCreditSimple(), Player::SendRaidGroupOnlyMessage(), Player::SendTransferAborted(), RestMgr::SetInnTrigger(), Unit::SetPvpFlag(), Player::SetQuestObjectiveData(), sObjectMgr, Player::SpawnCorpseBones(), sScriptMgr, sWorld, TC_LOG_DEBUG, TELE_TO_NOT_LEAVE_TRANSPORT, Player::TeleportTo(), Player::TeleportToBGEntryPoint(), ObjectGuid::ToString(), TRANSFER_ABORT_ALREADY_COMPLETED_ENCOUNTER, TRANSFER_ABORT_DIFFICULTY, TRANSFER_ABORT_LOCKED_TO_DIFFERENT_INSTANCE, TRANSFER_ABORT_MAP_NOT_ALLOWED, TRANSFER_ABORT_MAX_PLAYERS, TRANSFER_ABORT_NEED_GROUP, TRANSFER_ABORT_NOT_FOUND, TRANSFER_ABORT_TOO_MANY_INSTANCES, TRANSFER_ABORT_ZONE_IN_COMBAT, UNIT_BYTE2_FLAG_FFA_PVP, Player::UpdateCriteria(), and Player::UpdateVisibleObjectInteractions().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleArtifactAddPower()

◆ HandleArtifactSetAppearance()

◆ HandleAttackStopOpcode()

void WorldSession::HandleAttackStopOpcode ( WorldPackets::Combat::AttackStop &  packet)

Definition at line 63 of file CombatHandler.cpp.

References Unit::AttackStop(), and GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleAttackSwingOpcode()

void WorldSession::HandleAttackSwingOpcode ( WorldPackets::Combat::AttackSwing &  packet)

Client explicitly checks the following before sending CMSG_ATTACK_SWING packet, so we'll place the same check here. Note that it might be possible to reuse this snippet in other places as well.

Definition at line 28 of file CombatHandler.cpp.

References _player, ASSERT, Unit::Attack(), VehicleSeatEntry::Flags, ObjectAccessor::GetUnit(), Unit::GetVehicle(), WorldObject::IsValidAttackTarget(), Unit::SendMeleeAttackStop(), VEHICLE_SEAT_FLAG_CAN_ATTACK, and WorldPackets::Combat::AttackSwing::Victim.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleAuctionBrowseQuery()

void WorldSession::HandleAuctionBrowseQuery ( WorldPackets::AuctionHouse::AuctionBrowseQuery &  browseQuery)

◆ HandleAuctionCancelCommoditiesPurchase()

◆ HandleAuctionConfirmCommoditiesPurchase()

◆ HandleAuctionGetCommodityQuote()

◆ HandleAuctionHelloOpcode()

◆ HandleAuctionListBiddedItems()

◆ HandleAuctionListBucketsByBucketKeys()

◆ HandleAuctionListItemsByBucketKey()

◆ HandleAuctionListItemsByItemID()

◆ HandleAuctionListOwnedItems()

◆ HandleAuctionPlaceBid()

void WorldSession::HandleAuctionPlaceBid ( WorldPackets::AuctionHouse::AuctionPlaceBid &  placeBid)

Definition at line 353 of file AuctionHouseHandler.cpp.

References _player, AddTransactionCallback(), TransactionCallback::AfterComplete(), EnumFlag< T >::AsUnderlyingType(), WorldPackets::AuctionHouse::AuctionPlaceBid::Auctioneer, WorldPackets::AuctionHouse::AuctionPlaceBid::AuctionID, AuctionPosting::BidAmount, WorldPackets::AuctionHouse::AuctionPlaceBid::BidAmount, AuctionPosting::Bidder, AuctionPosting::BidderHistory, BidIncrement, BidOwn, AuctionPosting::BuyoutOrUnitPrice, AuctionPosting::CalculateMinIncrement(), CHAR_INS_AUCTION_BIDDER, CHAR_UPD_AUCTION_BID, CharacterDatabase, AuctionThrottleResult::DelayUntilNext, ObjectAccessor::FindConnectedPlayer(), GetAccountGUID(), AuctionHouseObject::GetAuction(), ObjectGuid::GetCounter(), Unit::GetFaction(), BaseEntity::GetGUID(), Player::GetNPCIfCanInteractWith(), GetPlayer(), GmLogBuyer, Player::HasEnoughMoney(), HasPermission(), HigherBid, AuctionPosting::Id, AuctionPosting::IsCommodity(), ObjectGuid::IsEmpty(), ItemNotFound, AuctionPosting::MinBid, Player::ModifyMoney(), NotEnoughMoney, AuctionPosting::Owner, AuctionPosting::OwnerAccount, PlaceBid, rbac::RBAC_PERM_LOG_GM_TRADE, AuctionHouseObject::RemoveAuction(), Unit::RemoveAurasByType(), sAuctionMgr, Player::SaveInventoryAndGoldToDB(), SendAuctionCommandResult(), AuctionHouseObject::SendAuctionOutbid(), AuctionHouseObject::SendAuctionSold(), AuctionHouseObject::SendAuctionWon(), AuctionPosting::ServerFlags, PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt64(), PreparedStatementBase::setUInt8(), SILVER, SPELL_AURA_FEIGN_DEATH, WorldPackets::AuctionHouse::AuctionPlaceBid::TaintedBy, TC_LOG_DEBUG, AuctionThrottleResult::Throttled, ObjectGuid::ToString(), UNIT_NPC_FLAG_2_NONE, UNIT_NPC_FLAG_AUCTIONEER, and UNIT_STATE_DIED.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleAuctionRemoveItem()

◆ HandleAuctionReplicateItems()

◆ HandleAuctionSellCommodity()

void WorldSession::HandleAuctionSellCommodity ( WorldPackets::AuctionHouse::AuctionSellCommodity &  sellCommodity)

Definition at line 607 of file AuctionHouseHandler.cpp.

References _player, AuctionHouseObject::AddAuction(), AddTransactionCallback(), TransactionCallback::AfterComplete(), WorldPackets::AuctionHouse::AuctionSellCommodity::Auctioneer, AuctionHouseBusy, AuctionPosting::BuyoutOrUnitPrice, Item::CanBeTraded(), CharacterDatabase, Item::CloneItem(), DatabaseError, AuctionThrottleResult::DelayUntilNext, Item::DeleteFromInventoryDB(), AuctionPosting::Deposit, AuctionPosting::EndTime, AuctionsBucketKey::ForItem(), GetAccountGUID(), GetAccountId(), AuctionHouseMgr::GetAuctionHouseEntry(), AuctionHouseObject::GetAuctionHouseId(), Item::GetBagSlot(), AuctionHouseMgr::GetCommodityAuctionDeposit(), Item::GetCount(), Object::GetEntry(), Unit::GetFaction(), BaseEntity::GetGUID(), Player::GetItemByGuid(), ItemTemplate::GetMaxStackSize(), WorldObject::GetName(), Item::GetNameForLocaleIdx(), Player::GetNPCIfCanInteractWith(), GetPlayer(), GetPlayerName(), Item::GetSlot(), GameTime::GetSystemTime(), Item::GetTemplate(), Player::HasEnoughMoney(), ItemTemplate::HasFlag(), HasPermission(), AuctionPosting::Id, Item::IsNotEmptyBag(), ITEM_CHANGED, ITEM_FLAG_CONJURED, ItemNotFound, Player::ItemRemovedQuestCheck(), AuctionPosting::Items, WorldPackets::AuctionHouse::AuctionSellCommodity::Items, Item::m_itemData, MAX_MONEY_AMOUNT, MIN_AUCTION_TIME, MINUTE, Player::MoveItemFromInventory(), NotEnoughMoney, AuctionPosting::Owner, AuctionPosting::OwnerAccount, RATE_AUCTION_TIME, rbac::RBAC_PERM_LOG_GM_TRADE, Unit::RemoveAurasByType(), WorldPackets::AuctionHouse::AuctionSellCommodity::RunTime, sAuctionMgr, Player::SaveInventoryAndGoldToDB(), Item::SaveToDB(), SellItem, SendAuctionCommandResult(), Item::SetCount(), Item::SetState(), SILVER, sLog, sObjectMgr, SPELL_AURA_FEIGN_DEATH, AuctionPosting::StartTime, sWorld, WorldPackets::AuctionHouse::AuctionSellCommodity::TaintedBy, TC_LOG_DEBUG, TC_LOG_ERROR, TC_LOG_INFO, AuctionThrottleResult::Throttled, ObjectGuid::ToString(), UNIT_NPC_FLAG_2_NONE, UNIT_NPC_FLAG_AUCTIONEER, UNIT_STATE_DIED, and WorldPackets::AuctionHouse::AuctionSellCommodity::UnitPrice.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleAuctionSellItem()

void WorldSession::HandleAuctionSellItem ( WorldPackets::AuctionHouse::AuctionSellItem &  sellItem)

Definition at line 819 of file AuctionHouseHandler.cpp.

References _player, AuctionHouseObject::AddAuction(), AddTransactionCallback(), TransactionCallback::AfterComplete(), WorldPackets::AuctionHouse::AuctionSellItem::Auctioneer, AuctionHouseBusy, AuctionPosting::BidAmount, AuctionPosting::BuyoutOrUnitPrice, WorldPackets::AuctionHouse::AuctionSellItem::BuyoutPrice, Item::CanBeTraded(), CharacterDatabase, DatabaseError, AuctionThrottleResult::DelayUntilNext, Item::DeleteFromInventoryDB(), AuctionPosting::Deposit, AuctionPosting::EndTime, EQUIP_ERR_TOO_MUCH_GOLD, GetAccountGUID(), GetAccountId(), AuctionHouseMgr::GetAuctionHouseEntry(), AuctionHouseObject::GetAuctionHouseId(), Item::GetBagSlot(), Item::GetCount(), ItemTemplate::GetDefaultLocaleName(), Object::GetEntry(), Unit::GetFaction(), BaseEntity::GetGUID(), AuctionHouseMgr::GetItemAuctionDeposit(), Player::GetItemByGuid(), ItemTemplate::GetMaxStackSize(), WorldObject::GetName(), Player::GetNPCIfCanInteractWith(), GetPlayer(), GetPlayerName(), Item::GetSlot(), GameTime::GetSystemTime(), Item::GetTemplate(), Player::HasEnoughMoney(), ItemTemplate::HasFlag(), HasPermission(), AuctionPosting::Id, Inventory, Item::IsNotEmptyBag(), ITEM_FLAG_CONJURED, ItemNotFound, AuctionPosting::Items, WorldPackets::AuctionHouse::AuctionSellItem::Items, Item::m_itemData, MAX_MONEY_AMOUNT, MIN_AUCTION_TIME, AuctionPosting::MinBid, WorldPackets::AuctionHouse::AuctionSellItem::MinBid, MINUTE, Player::MoveItemFromInventory(), NotEnoughMoney, AuctionPosting::Owner, AuctionPosting::OwnerAccount, RATE_AUCTION_TIME, rbac::RBAC_PERM_LOG_GM_TRADE, Unit::RemoveAurasByType(), WorldPackets::AuctionHouse::AuctionSellItem::RunTime, sAuctionMgr, Player::SaveInventoryAndGoldToDB(), Item::SaveToDB(), SellItem, SendAuctionCommandResult(), SILVER, sLog, sObjectMgr, SPELL_AURA_FEIGN_DEATH, AuctionPosting::StartTime, sWorld, WorldPackets::AuctionHouse::AuctionSellItem::TaintedBy, TC_LOG_DEBUG, TC_LOG_INFO, AuctionThrottleResult::Throttled, ObjectGuid::ToString(), UNIT_NPC_FLAG_2_NONE, UNIT_NPC_FLAG_AUCTIONEER, and UNIT_STATE_DIED.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleAuctionSetFavoriteItem()

◆ HandleAutoBankItemOpcode()

◆ HandleAutoDepositCharacterBank()

◆ HandleAutoEquipItemOpcode()

◆ HandleAutoEquipItemSlotOpcode()

◆ HandleAutoGuildBankItem()

◆ HandleAutoStoreBagItemOpcode()

◆ HandleAutoStoreBankItemOpcode()

◆ HandleAutoStoreGuildBankItem()

◆ HandleAutostoreLootItemOpcode()

◆ HandleAzeriteEmpoweredItemSelectPower()

◆ HandleAzeriteEmpoweredItemViewed()

◆ HandleAzeriteEssenceActivateEssence()

void WorldSession::HandleAzeriteEssenceActivateEssence ( WorldPackets::Azerite::AzeriteEssenceActivateEssence &  azeriteEssenceActivateEssence)

Definition at line 59 of file AzeriteHandler.cpp.

References _player, AffectingCombat, Player::ApplyAzeriteEssence(), WorldPackets::Azerite::ActivateEssenceFailed::Arg, ASSERT_NOTNULL, AsUnderlyingType(), UF::SelectedAzeriteEssences::AzeriteEssenceID, WorldPackets::Azerite::AzeriteEssenceActivateEssence::AzeriteEssenceID, WorldPackets::Azerite::ActivateEssenceFailed::AzeriteEssenceID, CantDoThatRightNow, CantRemoveEssence, AzeriteItem::CanUseEssences(), ConditionFailed, AzeriteItem::CreateSelectedAzeriteEssences(), Equipment, EssenceNotUnlocked, AzeriteItem::GetEssenceRank(), Player::GetItemByEntry(), Player::GetPrimarySpecialization(), AzeriteItem::GetSelectedAzeriteEssences(), Unit::GetSpellHistory(), SpellHistory::HasCooldown(), Player::HasPlayerFlag(), Unit::HasUnitFlag2(), AzeriteItem::HasUnlockedEssenceSlot(), Unit::isDead(), Unit::IsInCombat(), ITEM_CHANGED, ITEM_ID_HEART_OF_AZEROTH, MajorEssence, AzeriteEssencePowerEntry::MajorPowerDescription, MAX_AZERITE_ESSENCE_RANK, MAX_AZERITE_ESSENCE_SLOT, NotEquipped, NotInRestArea, PLAYER_FLAGS_RESTING, WorldPackets::Azerite::ActivateEssenceFailed::Reason, sDB2Manager, SendPacket(), AzeriteItem::SetSelectedAzeriteEssence(), Item::SetState(), WorldPackets::Azerite::AzeriteEssenceActivateEssence::Slot, WorldPackets::Azerite::ActivateEssenceFailed::Slot, SlotLocked, Item::ToAzeriteItem(), UNIT_FLAG2_ALLOW_CHANGING_TALENTS, and WorldPackets::Azerite::ActivateEssenceFailed::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleAzeriteEssenceUnlockMilestone()

◆ HandleBankerActivateOpcode()

◆ HandleBattlefieldLeaveOpcode()

void WorldSession::HandleBattlefieldLeaveOpcode ( WorldPackets::Battleground::BattlefieldLeave &  battlefieldLeave)

◆ HandleBattlefieldListOpcode()

◆ HandleBattleFieldPortOpcode()

void WorldSession::HandleBattleFieldPortOpcode ( WorldPackets::Battleground::BattlefieldPort &  battlefieldPort)

Definition at line 281 of file BattleGroundHandler.cpp.

References _player, WorldPackets::Battleground::BattlefieldPort::AcceptedInvite, GroupQueueInfo::ArenaMatchmakerRating, WorldPackets::Timestamp< Underlying >::AsUnderlyingType(), BATTLEGROUND_AA, BATTLEGROUND_QUEUE_NONE, BATTLEGROUND_TYPE_NONE, BattlegroundQueueTypeId::BattlemasterListId, BattlegroundMgr::BuildBattlegroundStatusActive(), BattlegroundMgr::BuildBattlegroundStatusFailed(), ERR_GROUP_JOIN_BATTLEGROUND_DESERTERS, Player::FinishTaxiFlight(), Player::GetBattleground(), DB2Manager::GetBattlegroundBracketByLevel(), Player::GetBattlegroundQueueJoinTime(), Player::GetBattlegroundQueueTypeId(), PVPDifficultyEntry::GetBracketId(), BaseEntity::GetGUID(), Battleground::GetInstanceID(), Unit::GetLevel(), Battleground::GetMapId(), Battleground::GetMaxLevel(), WorldObject::GetName(), BattlegroundQueue::GetPlayerGroupInfoData(), GetPlayerInfo(), BattlegroundQueue::GetQueueId(), Battleground::GetTypeID(), Unit::HasAura(), WorldPackets::LFG::RideTicket::Id, Player::InBattleground(), Player::InBattlegroundQueue(), Unit::IsAlive(), Player::IsDeserter(), Player::IsInvitedForBattlegroundQueueType(), GroupQueueInfo::IsInvitedToBGInstanceGUID, BattlegroundTemplate::MapIDs, BattlegroundQueueTypeId::Rated, Player::RemoveBattlegroundQueueId(), BattlegroundQueue::RemovePlayer(), Player::ResurrectPlayer(), sBattlegroundMgr, SendPacket(), BattlegroundMgr::SendToBattleground(), Player::SetBattlegroundEntryPoint(), Player::SetBattlegroundId(), Player::SetBGTeam(), Player::SpawnCorpseBones(), TC_LOG_DEBUG, TC_LOG_ERROR, GroupQueueInfo::Team, BattlegroundQueueTypeId::TeamSize, WorldPackets::Battleground::BattlefieldStatusNone::Ticket, WorldPackets::Battleground::BattlefieldPort::Ticket, WorldPackets::LFG::RideTicket::Time, ObjectGuid::ToString(), BattlegroundQueueTypeId::Type, WorldPackets::LFG::RideTicket::Type, WorldPackets::Battleground::BattlefieldStatusNone::Write(), WorldPackets::Battleground::BattlefieldStatusActive::Write(), and WorldPackets::Battleground::BattlefieldStatusFailed::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleBattlemasterHelloOpcode()

◆ HandleBattlemasterJoinArena()

void WorldSession::HandleBattlemasterJoinArena ( WorldPackets::Battleground::BattlemasterJoinArena &  packet)

Definition at line 502 of file BattleGroundHandler.cpp.

References _player, Player::AddBattlegroundQueueId(), BattlegroundQueue::AddGroup(), Arena, BATTLEGROUND_AA, BattlegroundQueueTypeId::BattlemasterListId, BattlegroundMgr::BGQueueTypeId(), BattlegroundMgr::BuildBattlegroundStatusFailed(), BattlegroundMgr::BuildBattlegroundStatusQueued(), Group::CanJoinBattlegroundQueue(), Player::CanJoinToBattleground(), Group::Create(), DISABLE_TYPE_BATTLEGROUND, ERR_BATTLEGROUND_JOIN_FAILED, ERR_BATTLEGROUND_NONE, Player::GetArenaTeamId(), BattlegroundQueue::GetAverageQueueWaitTime(), DB2Manager::GetBattlegroundBracketByLevel(), PVPDifficultyEntry::GetBracketId(), Player::GetGroup(), BaseEntity::GetGUID(), Group::GetLeaderGUID(), Unit::GetLevel(), Group::GetMembers(), WorldObject::GetName(), Player::GetTeam(), ArenaTeam::GetTypeBySlot(), BattlegroundTemplate::Id, Player::InBattleground(), DisableMgr::IsDisabledFor(), GroupQueueInfo::JoinTime, LANG_ARENA_DISABLED, BattlegroundTemplate::MapIDs, ChatHandler::PSendSysMessage(), BattlegroundQueueTypeId::Rated, sBattlegroundMgr, Player::SendDirectMessage(), TC_LOG_DEBUG, TC_LOG_ERROR, BattlegroundQueueTypeId::TeamSize, WorldPackets::Battleground::BattlemasterJoinArena::TeamSizeIndex, ObjectGuid::ToString(), BattlegroundQueueTypeId::Type, WorldPackets::Battleground::BattlefieldStatusQueued::Write(), and WorldPackets::Battleground::BattlefieldStatusFailed::Write().

Referenced by OpcodeTable::InitializeClientOpcodes(), and BattlegroundMgr::QueuePlayerForArena().

◆ HandleBattlemasterJoinOpcode()

void WorldSession::HandleBattlemasterJoinOpcode ( WorldPackets::Battleground::BattlemasterJoin &  battlemasterJoin)

Definition at line 67 of file BattleGroundHandler.cpp.

References _player, Player::AddBattlegroundQueueId(), BattlegroundQueue::AddGroup(), ALLIANCE, Battleground, BATTLEGROUND_RANDOM_EPIC, BATTLEGROUND_RB, BattlegroundQueueTypeId::BattlemasterListId, BattlegroundMgr::BGQueueTypeId(), BattlegroundMgr::BuildBattlegroundStatusFailed(), BattlegroundMgr::BuildBattlegroundStatusQueued(), Group::CanJoinBattlegroundQueue(), Player::CanJoinToBattleground(), DISABLE_TYPE_BATTLEGROUND, WorldPackets::Array< T, N >::empty(), ERR_BATTLEGROUND_JOIN_TIMED_OUT, ERR_BATTLEGROUND_NONE, ERR_BATTLEGROUND_TOO_MANY_QUEUES, ERR_GROUP_JOIN_BATTLEGROUND_DESERTERS, ERR_IN_NON_RANDOM_BG, ERR_IN_RANDOM_BG, ERR_LFG_CANT_USE_BATTLEGROUND, BattlegroundQueueTypeId::FromPacked(), BattlegroundQueue::GetAverageQueueWaitTime(), DB2Manager::GetBattlegroundBracketByLevel(), Player::GetBattlegroundQueueIndex(), PVPDifficultyEntry::GetBracketId(), BattlemasterListEntry::GetFlags(), Player::GetGroup(), BaseEntity::GetGUID(), Group::GetLeaderGUID(), Unit::GetLevel(), BattlegroundTemplate::GetMaxPlayersPerTeam(), Group::GetMembers(), Group::GetMembersCount(), BattlegroundTemplate::GetMinPlayersPerTeam(), WorldObject::GetName(), GetPlayer(), Player::GetTeam(), Unit::HasAura(), Player::HasFreeBattlegroundQueueId(), HORDE, Player::InBattleground(), Player::InBattlegroundQueue(), Player::InBattlegroundQueueForBattlegroundQueueType(), InternalOnly, BattlegroundTemplate::IsArena(), Player::IsDeserter(), DisableMgr::IsDisabledFor(), BattlegroundMgr::IsRandomBattleground(), BattlegroundMgr::IsValidQueueId(), GroupQueueInfo::JoinTime, LANG_BG_DISABLED, BattlegroundTemplate::MapIDs, PLAYER_MAX_BATTLEGROUND_QUEUES, ChatHandler::PSendSysMessage(), WorldPackets::Battleground::BattlemasterJoin::QueueIDs, BattlegroundQueueTypeId::Rated, sBattlegroundMgr, sBattlemasterListStore, Player::SendDirectMessage(), SendPacket(), SPELL_MERCENARY_CONTRACT_ALLIANCE, SPELL_MERCENARY_CONTRACT_HORDE, TC_LOG_DEBUG, TC_LOG_ERROR, BattlegroundQueueTypeId::TeamSize, ObjectGuid::ToString(), BattlegroundQueueTypeId::Type, WorldPackets::Battleground::BattlefieldStatusQueued::Write(), and WorldPackets::Battleground::BattlefieldStatusFailed::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleBattlenetChangeRealmTicket()

◆ HandleBattlenetRequest()

◆ HandleBattlePetClearFanfare()

◆ HandleBattlePetDeletePet()

◆ HandleBattlePetModifyName()

◆ HandleBattlePetRequestJournal()

void WorldSession::HandleBattlePetRequestJournal ( WorldPackets::BattlePet::BattlePetRequestJournal &  battlePetRequestJournal)

◆ HandleBattlePetRequestJournalLock()

void WorldSession::HandleBattlePetRequestJournalLock ( WorldPackets::BattlePet::BattlePetRequestJournalLock &  battlePetRequestJournalLock)

◆ HandleBattlePetSetBattleSlot()

◆ HandleBattlePetSetFlags()

◆ HandleBattlePetSummon()

◆ HandleBattlePetUpdateNotify()

◆ HandleBeginTradeOpcode()

◆ HandleBinderActivateOpcode()

◆ HandleBlackMarketBidOnItem()

◆ HandleBlackMarketOpen()

◆ HandleBlackMarketRequestItems()

◆ HandleBugReportOpcode()

◆ HandleBusyTradeOpcode()

void WorldSession::HandleBusyTradeOpcode ( WorldPackets::Trade::BusyTrade &  busyTrade)

◆ HandleBuybackItem()

◆ HandleBuyBankTab()

◆ HandleBuyItemOpcode()

◆ HandleCageBattlePet()

◆ HandleCalendarAddEvent()

◆ HandleCalendarCommunityInvite()

◆ HandleCalendarComplain()

◆ HandleCalendarCopyEvent()

◆ HandleCalendarEventRemoveInvite()

◆ HandleCalendarEventSignup()

◆ HandleCalendarGetCalendar()

void WorldSession::HandleCalendarGetCalendar ( WorldPackets::Calendar::CalendarGetCalendar &  calendarGetCalendar)

Definition at line 53 of file CalendarHandler.cpp.

References _player, WorldPackets::Calendar::CalendarSendCalendarEventInfo::Date, WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::DifficultyID, WorldPackets::Calendar::CalendarSendCalendarEventInfo::EventClubID, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::EventID, WorldPackets::Calendar::CalendarSendCalendarEventInfo::EventID, WorldPackets::Calendar::CalendarSendCalendarEventInfo::EventName, WorldPackets::Calendar::CalendarSendCalendar::Events, WorldPackets::Calendar::CalendarSendCalendarEventInfo::EventType, WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::ExpireTime, WorldPackets::Calendar::CalendarSendCalendarEventInfo::Flags, BaseEntity::GetGUID(), Player::GetGuildId(), GameTime::GetSystemTime(), GetTimezoneOffset(), GameTime::GetWowTime(), WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::InstanceID, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::InviteID, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::InviterGuid, WorldPackets::Calendar::CalendarSendCalendar::Invites, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::InviteType, WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::MapID, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::Moderator, WorldPackets::Calendar::CalendarSendCalendarEventInfo::OwnerGuid, WorldPackets::Calendar::CalendarSendCalendar::RaidLockouts, sCalendarMgr, SendPacket(), WorldPackets::Calendar::CalendarSendCalendar::ServerTime, WowTime::SetUtcTimeFromUnixTime(), SI64LIT, sInstanceLockMgr, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::Status, WorldPackets::Calendar::CalendarSendCalendarEventInfo::TextureID, and WorldPackets::Calendar::CalendarSendCalendar::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleCalendarGetEvent()

◆ HandleCalendarGetNumPending()

void WorldSession::HandleCalendarGetNumPending ( WorldPackets::Calendar::CalendarGetNumPending &  calendarGetNumPending)

◆ HandleCalendarInvite()

◆ HandleCalendarModeratorStatus()

◆ HandleCalendarRemoveEvent()

void WorldSession::HandleCalendarRemoveEvent ( WorldPackets::Calendar::CalendarRemoveEvent &  calendarRemoveEvent)

◆ HandleCalendarRsvp()

◆ HandleCalendarStatus()

◆ HandleCalendarUpdateEvent()

◆ HandleCancelAuraOpcode()

◆ HandleCancelAutoRepeatSpellOpcode()

void WorldSession::HandleCancelAutoRepeatSpellOpcode ( WorldPackets::Spells::CancelAutoRepeatSpell &  cancelAutoRepeatSpell)

Definition at line 349 of file SpellHandler.cpp.

References _player, and Unit::CancelAutoRepeatSpell().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleCancelCastOpcode()

◆ HandleCancelChanneling()

◆ HandleCancelGrowthAuraOpcode()

◆ HandleCancelModSpeedNoControlAuras()

◆ HandleCancelMountAuraOpcode()

◆ HandleCancelQueuedSpellOpcode()

void WorldSession::HandleCancelQueuedSpellOpcode ( WorldPackets::Spells::CancelQueuedSpell &  cancelQueuedSpell)

Definition at line 354 of file SpellHandler.cpp.

References _player, and Player::CancelPendingCastRequest().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleCancelTempEnchantmentOpcode()

◆ HandleCancelTradeOpcode()

void WorldSession::HandleCancelTradeOpcode ( WorldPackets::Trade::CancelTrade &  cancelTrade)

Definition at line 590 of file TradeHandler.cpp.

References _player, and Player::TradeCancel().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleCanDuel()

◆ HandleCastSpellOpcode()

◆ HandleChangeBagSlotFlag()

◆ HandleChangeSubGroupOpcode()

◆ HandleChannelCommand()

◆ HandleChannelPassword()

◆ HandleChannelPlayerCommand()

◆ HandleCharCreateOpcode()

void WorldSession::HandleCharCreateOpcode ( WorldPackets::Character::CreateCharacter &  charCreate)

◆ HandleCharCustomizeCallback()

◆ HandleCharCustomizeOpcode()

◆ HandleCharDeleteOpcode()

◆ HandleCharEnum()

void WorldSession::HandleCharEnum ( CharacterDatabaseQueryHolder const &  holder)

Definition at line 412 of file CharacterHandler.cpp.

References _collectionMgr, _legitCharacters, AT_LOGIN_CUSTOMIZE, CHAR_UPD_ADD_AT_LOGIN_FLAG, CHARACTER_FLAG_2_CUSTOMIZE, CHARACTER_FLAG_2_FACTION_CHANGE, CHARACTER_FLAG_2_RACE_CHANGE, CHARACTER_FLAG_LOCKED_BY_BILLING, CHARACTER_FLAG_LOCKED_FOR_TRANSFER, CharacterDatabase, EnumCharactersQueryHolder::CHARACTERS, WorldPackets::Character::EnumCharactersResult::Characters, UF::ChrCustomizationChoice::ChrCustomizationChoiceID, UF::ChrCustomizationChoice::ChrCustomizationOptionID, WorldPackets::Character::EnumCharactersResult::ClassDisableMask, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::ClassID, WorldPackets::Character::EnumCharactersResult::ClassUnlock::ClassID, WorldPackets::Character::EnumCharactersResult::RaceUnlock::ClassUnlocks, CONFIG_CHARACTER_CREATING_DISABLE_ALLIED_RACE_ACHIEVEMENT_REQUIREMENT, CONFIG_CHARACTER_CREATING_DISABLED_CLASSMASK, EnumCharactersQueryHolder::CUSTOMIZATIONS, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::Customizations, WorldPackets::Character::EnumCharactersResult::RaceUnlock::DoesNotHaveAvailableClasses, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::ExperienceLevel, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::Flags, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::Flags2, GetAccountExpansion(), GetAccountId(), ObjectGuid::GetCounter(), GetExpansion(), SQLQueryHolderBase::GetPreparedResult(), Field::GetUInt32(), Field::GetUInt64(), WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::Guid, WorldPackets::Character::EnumCharactersResult::ClassUnlock::HasEntitlement, WorldPackets::Character::EnumCharactersResult::RaceUnlock::HasEntitlement, WorldPackets::Character::EnumCharactersResult::ClassUnlock::HasExpansion, WorldPackets::Character::EnumCharactersResult::ClassUnlock::HasUnlockedAchievement, WorldPackets::Character::EnumCharactersResult::RaceUnlock::HasUnlockedAchievement, WorldPackets::Character::EnumCharactersResult::RaceUnlock::HasUnlockedLicense, WorldPackets::Character::EnumCharactersResult::IsDeletedCharacters, MakeChrCustomizationChoiceRange(), Trinity::Containers::MapGetValuePtr(), MAX_CHARACTERS_PER_REALM, WorldPackets::Character::EnumCharactersResult::MaxCharacterLevel, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::Name, WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::RaceID, WorldPackets::Character::EnumCharactersResult::RaceUnlock::RaceID, WorldPackets::Character::EnumCharactersResult::RaceUnlockData, sCharacterCache, SendPacket(), PreparedStatementBase::setUInt16(), PreparedStatementBase::setUInt64(), WorldPackets::Character::EnumCharactersResult::CharacterInfoBasic::SexID, sObjectMgr, WorldPackets::Character::EnumCharactersResult::Success, sWorld, TC_LOG_ERROR, TC_LOG_INFO, ObjectGuid::ToString(), ValidateAppearance(), and WorldPackets::Character::EnumCharactersResult::Write().

Referenced by HandleCharEnumOpcode(), and HandleCharUndeleteEnumOpcode().

◆ HandleCharEnumOpcode()

void WorldSession::HandleCharEnumOpcode ( WorldPackets::Character::EnumCharacters &  enumCharacters)

get all the data necessary for loading all characters (along with their pets) on the account

Definition at line 511 of file CharacterHandler.cpp.

References AddQueryHolderCallback(), SQLQueryHolderCallback::AfterComplete(), CHAR_DEL_EXPIRED_BANS, CharacterDatabase, CONFIG_DECLINED_NAMES_USED, GetAccountId(), HandleCharEnum(), and sWorld.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleCharRaceOrFactionChangeCallback()

void WorldSession::HandleCharRaceOrFactionChangeCallback ( std::shared_ptr< WorldPackets::Character::CharRaceOrFactionChangeInfo >  factionChangeInfo,
PreparedQueryResult  result 
)

Definition at line 2179 of file CharacterHandler.cpp.

References AT_LOGIN_CHANGE_FACTION, AT_LOGIN_CHANGE_RACE, AT_LOGIN_RESURRECT, CHAR_CREATE_CHARACTER_ARENA_LEADER, CHAR_CREATE_CHARACTER_RACE_ONLY, CHAR_CREATE_CHARACTER_SWAP_FACTION, CHAR_CREATE_ERROR, CHAR_CREATE_NAME_IN_USE, CHAR_CREATE_RESTRICTED_RACECLASS, CHAR_DEL_CHAR_ACHIEVEMENT_BY_ACHIEVEMENT, CHAR_DEL_CHAR_DECLINED_NAME, CHAR_DEL_CHAR_QUESTSTATUS, CHAR_DEL_CHAR_QUESTSTATUS_REWARDED_BY_QUEST, CHAR_DEL_CHAR_REP_BY_FACTION, CHAR_DEL_CHAR_SKILL_LANGUAGES, CHAR_DEL_CHAR_SOCIAL_BY_FRIEND, CHAR_DEL_CHAR_SOCIAL_BY_GUID, CHAR_DEL_CHAR_SPELL_BY_SPELL, CHAR_DEL_PLAYER_HOMEBIND, CHAR_INS_CHAR_SKILL_LANGUAGE, CHAR_INS_PLAYER_HOMEBIND, CHAR_NAME_FAILURE, CHAR_NAME_NO_NAME, CHAR_NAME_RESERVED, CHAR_NAME_SUCCESS, CHAR_RES_CHAR_TITLES_FACTION_CHANGE, CHAR_SEL_CHAR_REP_BY_FACTION, CHAR_UPD_CHAR_ACHIEVEMENT, CHAR_UPD_CHAR_INVENTORY_FACTION_CHANGE, CHAR_UPD_CHAR_NAME_AT_LOGIN, CHAR_UPD_CHAR_QUESTSTATUS_REWARDED_ACTIVE, CHAR_UPD_CHAR_QUESTSTATUS_REWARDED_ACTIVE_BY_QUEST, CHAR_UPD_CHAR_QUESTSTATUS_REWARDED_FACTION_CHANGE, CHAR_UPD_CHAR_RACE, CHAR_UPD_CHAR_REP_FACTION_CHANGE, CHAR_UPD_CHAR_SPELL_FACTION_CHANGE, CHAR_UPD_CHAR_TAXI_PATH, CHAR_UPD_CHAR_TAXIMASK, CHAR_UPD_CHAR_TITLES_FACTION_CHANGE, CharacterDatabase, ObjectMgr::CheckPlayerName(), CharacterCacheEntry::Class, CLASS_DEATH_KNIGHT, CONFIG_ALLOW_TWO_SIDE_INTERACTION_GROUP, CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD, CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK, CONFIG_PREVENT_RENAME_CUSTOMIZATION, advstd::ranges::contains, ReputationMgr::GetBaseReputation(), Field::GetInt32(), WorldLocation::GetMapId(), GetPlayerInfo(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), GetRemoteAddress(), GetSessionDbcLocale(), Field::GetString(), Field::GetUInt16(), Field::GetUInt32(), CharacterCacheEntry::GuildId, HasPermission(), ObjectGuid::IsEmpty(), Player::LeaveAllArenaTeams(), CharacterCacheEntry::Level, MakeChrCustomizationChoiceRange(), CharTitlesEntry::MaskID, CharacterCacheEntry::Name, NoRaceChangeOnThisMap, normalizePlayerName(), Player::OfflineResurrect(), PLAYER_EXTRA_HAS_RACE_CHANGED, CharacterCacheEntry::Race, RACE_BLOODELF, RACE_DARK_IRON_DWARF, RACE_DRACTHYR_ALLIANCE, RACE_DRACTHYR_HORDE, RACE_DRAENEI, RACE_DWARF, RACE_EARTHEN_DWARF_ALLIANCE, RACE_EARTHEN_DWARF_HORDE, RACE_GNOME, RACE_GOBLIN, RACE_HARANIR_ALLIANCE, RACE_HARANIR_HORDE, RACE_HIGHMOUNTAIN_TAUREN, RACE_HUMAN, RACE_KUL_TIRAN, RACE_LIGHTFORGED_DRAENEI, RACE_MAGHAR_ORC, RACE_MECHAGNOME, RACE_NIGHTBORNE, RACE_NIGHTELF, RACE_ORC, RACE_PANDAREN_ALLIANCE, RACE_PANDAREN_HORDE, RACE_PANDAREN_NEUTRAL, RACE_TAUREN, RACE_TROLL, RACE_UNDEAD_PLAYER, RACE_VOID_ELF, RACE_VULPERA, RACE_WORGEN, RACE_ZANDALARI_TROLL, rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RACEMASK, rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RESERVEDNAME, rbac::RBAC_PERM_TWO_SIDE_ADD_FRIEND, RESPONSE_SUCCESS, sAllianceTaxiNodesMask, sArenaTeamMgr, Player::SaveCustomizations(), Player::SavePositionInDB(), sCharacterCache, sCharTitlesStore, SendCharFactionChange(), PreparedStatementBase::setFloat(), PreparedStatementBase::setInt32(), PreparedStatementBase::setString(), PreparedStatementBase::setUInt16(), PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt64(), PreparedStatementBase::setUInt8(), sFactionStore, sGroupMgr, sGuildMgr, sHordeTaxiNodesMask, TaxiMask::size(), sMapStore, sObjectMgr, sWorld, TC_LOG_DEBUG, TC_LOG_ERROR, TC_LOG_WARN, TEAM_ALLIANCE, TEAM_HORDE, TEAM_NEUTRAL, Player::TeamIdForRace(), Trinity::Tokenize(), and WorldLocation::WorldRelocate().

◆ HandleCharRaceOrFactionChangeOpcode()

◆ HandleCharRenameCallBack()

◆ HandleCharRenameOpcode()

◆ HandleCharUndeleteEnumOpcode()

void WorldSession::HandleCharUndeleteEnumOpcode ( WorldPackets::Character::EnumCharacters &  enumCharacters)

get all the data necessary for loading all undeleted characters (along with their pets) on the account

Definition at line 531 of file CharacterHandler.cpp.

References AddQueryHolderCallback(), SQLQueryHolderCallback::AfterComplete(), CharacterDatabase, CONFIG_DECLINED_NAMES_USED, GetAccountId(), HandleCharEnum(), and sWorld.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleCharUndeleteOpcode()

◆ HandleChatAddonMessage()

◆ HandleChatAddonMessageOpcode()

◆ HandleChatAddonMessageTargetedOpcode()

◆ HandleChatCanLocalWhisperTargetRequest()

◆ HandleChatIgnoredOpcode()

◆ HandleChatMessage()

ChatMessageResult WorldSession::HandleChatMessage ( ChatMsg  type,
Language  lang,
std::string  msg,
std::string  target = "",
Optional< ObjectGuid >  targetGuid = {} 
)
Todo:
implement cross realm whispers (someday)

Definition at line 145 of file ChatHandler.cpp.

References Player::AddWhisperWhiteList(), Group::BroadcastPacket(), CanSpeak(), ChannelIsReadOnly, CHAT_MSG_AFK, CHAT_MSG_CHANNEL, CHAT_MSG_DND, CHAT_MSG_EMOTE, CHAT_MSG_GUILD, CHAT_MSG_INSTANCE_CHAT, CHAT_MSG_INSTANCE_CHAT_LEADER, CHAT_MSG_OFFICER, CHAT_MSG_PARTY, CHAT_MSG_PARTY_LEADER, CHAT_MSG_RAID, CHAT_MSG_RAID_LEADER, CHAT_MSG_RAID_WARNING, CHAT_MSG_SAY, CHAT_MSG_WHISPER, CHAT_MSG_YELL, CONFIG_ALLOW_TWO_SIDE_INTERACTION_GROUP, CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD, CONFIG_CHAT_CHANNEL_LEVEL_REQ, CONFIG_CHAT_EMOTE_LEVEL_REQ, CONFIG_CHAT_PARTY_RAID_WARNINGS, CONFIG_CHAT_SAY_LEVEL_REQ, CONFIG_CHAT_WHISPER_LEVEL_REQ, CONFIG_CHAT_YELL_LEVEL_REQ, DisallowedLanguage, ExtractExtendedPlayerName(), ObjectAccessor::FindConnectedPlayer(), ObjectAccessor::FindConnectedPlayerByName(), Unit::GetAuraEffectsByType(), ChannelMgr::GetChannelForPlayerByGuid(), ChannelMgr::GetChannelForPlayerByNamePart(), Channel::GetChannelId(), Player::GetEffectiveTeam(), GameTime::GetGameTime(), Player::GetGroup(), BaseEntity::GetGUID(), Player::GetGuildId(), Unit::GetLevel(), Group::GetMemberGroup(), WorldObject::GetName(), Player::GetOriginalGroup(), GetPlayer(), GetPlayerInfo(), Player::GetSession(), GetTrinityString(), GM_SILENCE_AURA, HandledCommand, HasAura, Unit::HasAura(), Unit::HasAuraTypeWithMiscvalue(), HasPermission(), WorldPackets::Chat::Chat::Initialize(), InvalidLanguage, Player::isAcceptWhispers(), Unit::IsAlive(), Group::IsAssistant(), Group::isBGGroup(), Player::IsGameMaster(), Player::IsGameMasterAcceptingWhispers(), Player::IsInWhisperWhiteList(), Group::IsLeader(), Group::isRaidGroup(), LANG_ADDON, LANG_CHANNEL_REQ, LANG_GM_SILENCE, LANG_NOT_LEARNED_LANGUAGE, LANG_SAY_REQ, LANG_UNIVERSAL, LANG_UNKNOWN_LANGUAGE, LANG_WAIT_BEFORE_SPEAKING, LANG_WHISPER_REQ, LanguageNotLearned, LevelTooLow, m_muteTime, MalformedHyperlinks, MessageEmpty, MessageHasInvalidCharacters, MessageTooLong, Muted, ExtendedPlayerName::Name, normalizePlayerName(), NotInGroup, NotLeaderOrAssistant, NoWhisperTarget, Ok, PlayerDead, RaidWarningInPartyDisabled, rbac::RBAC_PERM_CAN_FILTER_WHISPERS, rbac::RBAC_PERM_SKIP_CHECK_CHAT_CHANNEL_REQ, rbac::RBAC_PERM_TWO_SIDE_INTERACTION_CHAT, ReadOnly, Player::ChatFloodThrottle::REGULAR, Channel::Say(), Player::Say(), sChatChannelsStore, secsToTimeString(), SendChatPlayerNotfoundNotice(), SendNotification(), sGuildMgr, SilencedByGM, sLanguageMgr, SPELL_AURA_COMPREHEND_LANGUAGE, SPELL_AURA_MOD_LANGUAGE, sScriptMgr, sWorld, TC_LOG_ERROR, Player::TextEmote(), Player::UpdateSpeakTime(), ValidateHyperlinksAndMaybeKick(), ValidateMessage(), Player::Whisper(), WhisperTargetWrongFaction, WorldPackets::Chat::Chat::Write(), and Player::Yell().

Referenced by HandleChatMessageChannelOpcode(), HandleChatMessageEmoteOpcode(), HandleChatMessageOpcode(), HandleChatMessageWhisperOpcode(), and Battlenet::Services::ClubService::HandleCreateMessage().

◆ HandleChatMessageAFKOpcode()

◆ HandleChatMessageChannelOpcode()

◆ HandleChatMessageDNDOpcode()

◆ HandleChatMessageEmoteOpcode()

void WorldSession::HandleChatMessageEmoteOpcode ( WorldPackets::Chat::ChatMessageEmote &  chatMessageEmote)

◆ HandleChatMessageOpcode()

◆ HandleChatMessageWhisperOpcode()

◆ HandleChatUpdateAADCStatus()

◆ HandleCheckCharacterNameAvailability()

◆ HandleCheckIsAdventureMapPoiValid()

◆ HandleClassTalentsDeleteConfig()

void WorldSession::HandleClassTalentsDeleteConfig ( WorldPackets::Traits::ClassTalentsDeleteConfig const &  classTalentsDeleteConfig)

◆ HandleClassTalentsRenameConfig()

◆ HandleClassTalentsRequestNewConfig()

◆ HandleClassTalentsSetStarterBuildActive()

◆ HandleClassTalentsSetUsesSharedActionBars()

◆ HandleClearRaidMarker()

◆ HandleClearTradeItemOpcode()

◆ HandleCloseInteraction()

◆ HandleCollectionItemSetFavorite()

◆ HandleCommerceTokenGetLog()

◆ HandleCommerceTokenGetMarketPrice()

◆ HandleComplaint()

◆ HandleCompleteCinematic()

void WorldSession::HandleCompleteCinematic ( WorldPackets::Misc::CompleteCinematic &  packet)

◆ HandleCompleteMovie()

void WorldSession::HandleCompleteMovie ( WorldPackets::Misc::CompleteMovie &  packet)

◆ HandleConfirmArtifactRespec()

◆ HandleConfirmRespecWipeOpcode()

◆ HandleContactListOpcode()

◆ HandleContinuePlayerLogin()

◆ HandleConversationLineStarted()

◆ HandleConvertRaidOpcode()

◆ HandleCreatureQuery()

◆ HandleDBQueryBulk()

◆ HandleDeclineGuildInvites()

◆ HandleDeclineNeighborhoodInvites()

◆ HandleDeclinePetition()

◆ HandleDeleteEquipmentSet()

void WorldSession::HandleDeleteEquipmentSet ( WorldPackets::EquipmentSet::DeleteEquipmentSet &  deleteEquipmentSet)

◆ HandleDelFriendOpcode()

◆ HandleDelIgnoreOpcode()

◆ HandleDestroyItemOpcode()

◆ HandleDFGetJoinStatus()

void WorldSession::HandleDFGetJoinStatus ( WorldPackets::LFG::DFGetJoinStatus &  dfGetJoinStatus)

◆ HandleDFGetSystemInfo()

void WorldSession::HandleDFGetSystemInfo ( WorldPackets::LFG::DFGetSystemInfo &  dfGetSystemInfo)

◆ HandleDismissCritter()

◆ HandleDoReadyCheckOpcode()

◆ HandleDuelAccepted()

◆ HandleDuelCancelled()

◆ HandleDuelResponseOpcode()

◆ HandleEjectPassenger()

◆ HandleEmoteOpcode()

void WorldSession::HandleEmoteOpcode ( WorldPackets::Chat::EmoteClient &  packet)

◆ HandleEnableTaxiNodeOpcode()

void WorldSession::HandleEnableTaxiNodeOpcode ( WorldPackets::Taxi::EnableTaxiNode &  enableTaxiNode)

◆ HandleEquipmentSetSave()

◆ HandleFarSightOpcode()

◆ HandleForceSpeedChangeAck()

◆ HandleGameObjectQueryOpcode()

◆ HandleGameobjectReportUse()

◆ HandleGameObjectUseOpcode()

void WorldSession::HandleGameObjectUseOpcode ( WorldPackets::GameObject::GameObjUse &  packet)

◆ HandleGarrisonCancelConstruction()

◆ HandleGarrisonGetMapData()

void WorldSession::HandleGarrisonGetMapData ( WorldPackets::Garrison::GarrisonGetMapData &  garrisonGetMapData)

Definition at line 58 of file GarrisonHandler.cpp.

References _player, and Player::GetGarrison().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGarrisonPurchaseBuilding()

◆ HandleGarrisonRequestBlueprintAndSpecializationData()

void WorldSession::HandleGarrisonRequestBlueprintAndSpecializationData ( WorldPackets::Garrison::GarrisonRequestBlueprintAndSpecializationData &  garrisonRequestBlueprintAndSpecializationData)

Definition at line 52 of file GarrisonHandler.cpp.

References _player, and Player::GetGarrison().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGetGarrisonInfo()

◆ HandleGetItemPurchaseData()

◆ HandleGetMailList()

◆ HandleGetPVPOptionsEnabled()

◆ HandleGetUndeleteCooldownStatus()

◆ HandleGMTicketGetCaseStatusOpcode()

void WorldSession::HandleGMTicketGetCaseStatusOpcode ( WorldPackets::Ticket::GMTicketGetCaseStatus &  packet)

◆ HandleGMTicketSystemStatusOpcode()

◆ HandleGossipHelloOpcode()

◆ HandleGossipSelectOptionOpcode()

◆ HandleGuildAcceptInvite()

void WorldSession::HandleGuildAcceptInvite ( WorldPackets::Guild::AcceptGuildInvite &  invite)

Definition at line 64 of file GuildHandler.cpp.

References GetPlayer(), and sGuildMgr.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildAddRank()

void WorldSession::HandleGuildAddRank ( WorldPackets::Guild::GuildAddRank &  packet)

◆ HandleGuildAssignRank()

◆ HandleGuildBankActivate()

◆ HandleGuildBankBuyTab()

◆ HandleGuildBankDepositMoney()

◆ HandleGuildBankLogQuery()

void WorldSession::HandleGuildBankLogQuery ( WorldPackets::Guild::GuildBankLogQuery &  packet)

◆ HandleGuildBankMoneyWithdrawn()

void WorldSession::HandleGuildBankMoneyWithdrawn ( WorldPackets::Guild::GuildBankRemainingWithdrawMoneyQuery &  packet)

Definition at line 224 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildBankQueryTab()

◆ HandleGuildBankSetTabText()

◆ HandleGuildBankTextQuery()

void WorldSession::HandleGuildBankTextQuery ( WorldPackets::Guild::GuildBankTextQuery &  packet)

◆ HandleGuildBankUpdateTab()

◆ HandleGuildBankWithdrawMoney()

◆ HandleGuildChallengeUpdateRequest()

void WorldSession::HandleGuildChallengeUpdateRequest ( WorldPackets::Guild::GuildChallengeUpdateRequest &  packet)

Definition at line 531 of file GuildHandler.cpp.

References _player, and Player::GetGuild().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildDeclineInvitation()

void WorldSession::HandleGuildDeclineInvitation ( WorldPackets::Guild::GuildDeclineInvitation &  decline)

Definition at line 71 of file GuildHandler.cpp.

References GetPlayer(), Player::SetGuildIdInvited(), and UI64LIT.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildDelete()

void WorldSession::HandleGuildDelete ( WorldPackets::Guild::GuildDelete &  packet)

Definition at line 120 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildDeleteRank()

void WorldSession::HandleGuildDeleteRank ( WorldPackets::Guild::GuildDeleteRank &  packet)

◆ HandleGuildDemoteMember()

◆ HandleGuildEventLogQuery()

void WorldSession::HandleGuildEventLogQuery ( WorldPackets::Guild::GuildEventLogQuery &  packet)

Definition at line 216 of file GuildHandler.cpp.

References GetPlayer(), GetPlayerInfo(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildGetAchievementMembers()

void WorldSession::HandleGuildGetAchievementMembers ( WorldPackets::Achievement::GuildGetAchievementMembers &  getAchievementMembers)

◆ HandleGuildGetRanks()

◆ HandleGuildGetRoster()

void WorldSession::HandleGuildGetRoster ( WorldPackets::Guild::GuildGetRoster &  packet)

◆ HandleGuildInviteByName()

◆ HandleGuildLeave()

void WorldSession::HandleGuildLeave ( WorldPackets::Guild::GuildLeave &  leave)

Definition at line 114 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildNewsUpdateSticky()

◆ HandleGuildOfficerRemoveMember()

◆ HandleGuildPermissionsQuery()

void WorldSession::HandleGuildPermissionsQuery ( WorldPackets::Guild::GuildPermissionsQuery &  packet)

Definition at line 230 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildPromoteMember()

◆ HandleGuildQueryNews()

void WorldSession::HandleGuildQueryNews ( WorldPackets::Guild::GuildQueryNews &  newsQuery)

◆ HandleGuildQueryOpcode()

◆ HandleGuildReplaceGuildMaster()

void WorldSession::HandleGuildReplaceGuildMaster ( WorldPackets::Guild::GuildReplaceGuildMaster &  replaceGuildMaster)

Definition at line 584 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleGuildRequestPartyState()

void WorldSession::HandleGuildRequestPartyState ( WorldPackets::Guild::RequestGuildPartyState &  packet)

◆ HandleGuildSetAchievementTracking()

◆ HandleGuildSetFocusedAchievement()

void WorldSession::HandleGuildSetFocusedAchievement ( WorldPackets::Achievement::GuildSetFocusedAchievement &  setFocusedAchievement)

◆ HandleGuildSetGuildMaster()

◆ HandleGuildSetMemberNote()

◆ HandleGuildSetRankPermissions()

◆ HandleGuildShiftRank()

◆ HandleGuildUpdateInfoText()

void WorldSession::HandleGuildUpdateInfoText ( WorldPackets::Guild::GuildUpdateInfoText &  packet)

◆ HandleGuildUpdateMotdText()

void WorldSession::HandleGuildUpdateMotdText ( WorldPackets::Guild::GuildUpdateMotdText &  packet)

◆ HandleHearthAndResurrect()

◆ HandleHotfixRequest()

◆ HandleIgnoreTradeOpcode()

void WorldSession::HandleIgnoreTradeOpcode ( WorldPackets::Trade::IgnoreTrade &  ignoreTrade)

◆ HandleInitiateRolePoll()

◆ HandleInitiateTradeOpcode()

◆ HandleInspectOpcode()

void WorldSession::HandleInspectOpcode ( WorldPackets::Inspect::Inspect &  inspect)

Definition at line 29 of file InspectHandler.cpp.

References _player, WorldPackets::Inspect::TraitInspectInfo::ActiveCombatTraits, AsUnderlyingType(), WorldPackets::Inspect::InspectResult::AzeriteLevel, CONFIG_TALENTS_INSPECTING, WorldPackets::Inspect::InspectResult::DisplayInfo, Everywhere, Player::GetActiveTalentGroup(), Player::GetAverageItemLevel(), Player::GetEffectiveTeam(), Player::GetGuildId(), Player::GetItemByEntry(), Unit::GetLevel(), GetPlayer(), ObjectAccessor::GetPlayer(), Player::GetPrimarySpecialization(), Player::GetPvpTalentMap(), Player::GetTalentMap(), Player::GetTraitConfig(), WorldPackets::Inspect::InspectResult::GuildData, WorldPackets::Inspect::InspectResult::HonorLevel, WorldPackets::Inspect::PlayerModelDisplayInfo::Initialize(), INSPECT_DISTANCE, ITEM_ID_HEART_OF_AZEROTH, WorldPackets::Inspect::InspectResult::ItemLevel, WorldPackets::Inspect::InspectResult::LifetimeHK, WorldPackets::Inspect::InspectResult::LifetimeMaxRank, Player::m_activePlayerData, Player::m_playerData, WorldPackets::Inspect::TraitInspectInfo::PlayerLevel, PLAYERSPELL_REMOVED, WorldPackets::Inspect::InspectResult::PvpTalents, SendPacket(), sGuildMgr, WorldPackets::Inspect::TraitInspectInfo::SpecID, sWorld, WorldPackets::Inspect::InspectResult::Talents, WorldPackets::Inspect::Inspect::Target, TC_LOG_DEBUG, Item::ToAzeriteItem(), WorldPackets::Inspect::InspectResult::TodayHK, ObjectGuid::ToString(), WorldPackets::Inspect::InspectResult::TraitsInfo, WorldPackets::Inspect::InspectResult::Write(), and WorldPackets::Inspect::InspectResult::YesterdayHK.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleInstanceLockResponse()

◆ HandleItemRefund()

◆ HandleItemTextQuery()

void WorldSession::HandleItemTextQuery ( WorldPackets::Query::ItemTextQuery &  itemTextQuery)

◆ HandleJoinChannel()

◆ HandleKeyboundOverride()

◆ HandleLearnPvpTalentsOpcode()

◆ HandleLearnTalentsOpcode()

◆ HandleLeaveChannel()

◆ HandleLeaveGroupOpcode()

◆ HandleLfgJoinOpcode()

◆ HandleLfgLeaveOpcode()

◆ HandleLfgProposalResultOpcode()

◆ HandleLfgSetBootVoteOpcode()

void WorldSession::HandleLfgSetBootVoteOpcode ( WorldPackets::LFG::DFBootPlayerVote &  dfBootPlayerVote)

◆ HandleLfgSetRolesOpcode()

◆ HandleLfgTeleportOpcode()

void WorldSession::HandleLfgTeleportOpcode ( WorldPackets::LFG::DFTeleport &  dfTeleport)

◆ HandleListInventoryOpcode()

void WorldSession::HandleListInventoryOpcode ( WorldPackets::NPC::Hello &  packet)

◆ HandleLoadScreenOpcode()

void WorldSession::HandleLoadScreenOpcode ( WorldPackets::Character::LoadingScreenNotify &  loadingScreenNotify)

Definition at line 1169 of file CharacterHandler.cpp.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleLogoutCancelOpcode()

void WorldSession::HandleLogoutCancelOpcode ( WorldPackets::Character::LogoutCancel &  logoutCancel)

◆ HandleLogoutRequestOpcode()

◆ HandleLootMasterGiveOpcode()

◆ HandleLootMoneyOpcode()

◆ HandleLootOpcode()

◆ HandleLootReleaseOpcode()

void WorldSession::HandleLootReleaseOpcode ( WorldPackets::Loot::LootRelease &  packet)

◆ HandleLootRoll()

◆ HandleMailCreateTextItem()

◆ HandleMailDelete()

◆ HandleMailMarkAsRead()

◆ HandleMailReturnToSender()

◆ HandleMailTakeItem()

◆ HandleMailTakeMoney()

◆ HandleMergeGuildBankItemWithGuildBankItem()

◆ HandleMergeGuildBankItemWithItem()

◆ HandleMergeItemWithGuildBankItem()

◆ HandleMinimapPingOpcode()

◆ HandleMirrorImageDataRequest()

void WorldSession::HandleMirrorImageDataRequest ( WorldPackets::Spells::GetMirrorImageData &  getMirrorImageData)

Definition at line 465 of file SpellHandler.cpp.

References _player, WorldPackets::Spells::MirrorImageComponentedData::ChrModelID, WorldPackets::Spells::MirrorImageComponentedData::ClassID, WorldPackets::Spells::MirrorImageComponentedData::Customizations, WorldPackets::Spells::MirrorImageCreatureData::DisplayID, WorldPackets::Spells::MirrorImageComponentedData::DisplayScale, ObjectGuid::Empty, EQUIPMENT_SLOT_BACK, EQUIPMENT_SLOT_BODY, EQUIPMENT_SLOT_CHEST, EQUIPMENT_SLOT_FEET, EQUIPMENT_SLOT_HANDS, EQUIPMENT_SLOT_HEAD, EQUIPMENT_SLOT_LEGS, EQUIPMENT_SLOT_SHOULDERS, EQUIPMENT_SLOT_TABARD, EQUIPMENT_SLOT_WAIST, EQUIPMENT_SLOT_WRISTS, WorldPackets::Spells::MirrorImageComponentedData::Gender, Unit::GetAuraEffectsByType(), Unit::GetClass(), Unit::GetDisplayId(), Unit::GetDisplayScale(), Unit::GetGender(), Guild::GetGUID(), Unit::GetRace(), ObjectAccessor::GetUnit(), WorldPackets::Spells::MirrorImageComponentedData::GuildGUID, Unit::HasAuraType(), INVENTORY_SLOT_BAG_0, WorldPackets::Spells::MirrorImageComponentedData::ItemDisplayID, WorldPackets::Spells::MirrorImageComponentedData::RaceID, sDB2Manager, SendPacket(), SPELL_AURA_CLONE_CASTER, Object::ToPlayer(), WorldPackets::Spells::GetMirrorImageData::UnitGUID, WorldPackets::Spells::MirrorImageComponentedData::UnitGUID, WorldPackets::Spells::MirrorImageCreatureData::UnitGUID, WorldPackets::Spells::MirrorImageComponentedData::Write(), and WorldPackets::Spells::MirrorImageCreatureData::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleMissileTrajectoryCollision()

◆ HandleMountSetFavorite()

◆ HandleMountSpecialAnimOpcode()

◆ HandleMoveApplyInertiaAck()

◆ HandleMoveApplyMovementForceAck()

◆ HandleMoveChangeVehicleSeats()

◆ HandleMoveDismissVehicle()

◆ HandleMoveForceGravityModifierChangeAck()

◆ HandleMoveGuildBankItem()

◆ HandleMoveInitActiveMoverComplete()

◆ HandleMoveKnockBackAck()

◆ HandleMovementAckMessage()

◆ HandleMovementOpcode()

void WorldSession::HandleMovementOpcode ( OpcodeClient  opcode,
MovementInfo &  movementInfo 
)
Todo:
discard movement packets after the player is rooted

Definition at line 476 of file MovementHandler.cpp.

References _player, TransportBase::AddPassenger(), AdjustClientMovementTime(), CMSG_MOVE_FALL_LAND, CMSG_MOVE_JUMP, CMSG_MOVE_SET_ADV_FLY, CMSG_MOVE_SET_FLY, CMSG_MOVE_START_SWIM, CMSG_MOVE_STOP, CMSG_MOVE_STOP_ASCEND, CMSG_MOVE_STOP_PITCH, CMSG_MOVE_STOP_STRAFE, CMSG_MOVE_STOP_SWIM, CMSG_MOVE_STOP_TURN, DAMAGE_FALL_TO_VOID, EMOTE_ONESHOT_NONE, Player::EnvironmentalDamage(), MovementInfo::flags, Player::GetBattleground(), Player::GetDebugInfo(), Unit::GetEmoteState(), Position::GetExactDist2d(), Map::GetGameObject(), BaseEntity::GetGUID(), WorldObject::GetMap(), Map::GetMinHeight(), WorldObject::GetName(), GetOpcodeNameForLogging(), Position::GetOrientation(), WorldObject::GetPhaseShift(), GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), WorldObject::GetTransport(), TransportBase::GetTransportGUID(), Unit::GetVehicle(), MovementInfo::guid, MovementInfo::TransportInfo::guid, Player::HandleFall(), Battleground::HandlePlayerUnderMap(), Unit::IsAlive(), Player::IsBeingTeleported(), ObjectGuid::IsEmpty(), Unit::IsInFlight(), Unit::IsSitState(), Trinity::IsValidMapCoord(), Jump, Player::KillPlayer(), LandingOrFlight, WorldObject::m_movementInfo, MOVEMENTFLAG_MASK_MOVING, MOVEMENTFLAG_MASK_TURNING, Unit::movespline, PLAYER_FLAGS_IS_OUT_OF_BOUNDS, MovementInfo::pos, MovementInfo::TransportInfo::pos, PROC_FLAG_JUMP, PROC_FLAG_NONE, PROC_HIT_NONE, PROC_SPELL_PHASE_NONE, PROC_SPELL_TYPE_MASK_ALL, Unit::ProcSkillsAndAuras(), Unit::RemoveAurasWithInterruptFlags(), TransportBase::RemovePassenger(), Player::RemovePlayerFlag(), MovementInfo::TransportInfo::Reset(), MovementInfo::ResetTransport(), WorldObject::SendMessageToSet(), Unit::SetEmoteState(), Position::SetOrientation(), Player::SetPlayerFlag(), Unit::SetStandState(), SIZE_OF_GRIDS, WorldPackets::Movement::MoveUpdate::Status, TC_LOG_DEBUG, TC_LOG_TRACE, MovementInfo::time, Object::ToPlayer(), MovementInfo::transport, Turning, UNIT_STAND_STATE_STAND, Player::UnsummonBattlePetTemporaryIfAny(), Player::UnsummonPetTemporaryIfAny(), Player::UpdateFallInformationIfNeed(), Player::UpdateIndoorsOutdoorsAuras(), Unit::UpdatePosition(), Player::UpdateTavernRestingState(), Player::UpdateZoneAndAreaId(), ValidateAndGetUnitBeingMoved(), ValidateMovementInfo(), VEHICLE_SEAT_FLAG_ALLOW_TURNING, and WorldPackets::Movement::MoveUpdate::Write().

Referenced by HandleCastSpellOpcode(), HandleMovementOpcodes(), HandlePetCastSpellOpcode(), and HandleUpdateMissileTrajectory().

◆ HandleMovementOpcodes()

◆ HandleMoveRemoveInertiaAck()

◆ HandleMoveRemoveMovementForceAck()

◆ HandleMoveSetModMovementForceMagnitudeAck()

◆ HandleMoveSetVehicleRecAck()

◆ HandleMoveSplineDoneOpcode()

◆ HandleMoveTeleportAck()

◆ HandleMoveTimeSkippedOpcode()

◆ HandleMoveWorldportAck()

void WorldSession::HandleMoveWorldportAck ( )

Definition at line 189 of file MovementHandler.cpp.

References Map::AddPlayerToMap(), BATTLEGROUND_QUEUE_NONE, BATTLEGROUND_TYPE_NONE, Map::CannotEnter(), WorldObject::CastSpell(), Player::CheckInstanceValidity(), WorldPackets::Instance::RaidInstanceMessage::DifficultyID, WorldPackets::Instance::RaidInstanceMessage::Extended, Player::FinishTaxiFlight(), Player::GetBattleground(), Player::GetBattlegroundId(), Player::GetCorpseLocation(), MotionMaster::GetCurrentMovementGenerator(), Map::GetDifficultyID(), Player::GetGarrison(), BaseEntity::GetGUID(), Unit::GetHoverOffset(), Map::GetId(), WorldObject::GetMap(), WorldLocation::GetMapId(), Map::GetMapName(), Unit::GetMotionMaster(), WorldObject::GetName(), Position::GetOrientation(), GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), Player::GetTeleportDest(), Player::GetTeleportOptions(), WorldObject::GetTransport(), Map::GetTransport(), WorldObject::GetZoneAndAreaId(), Player::HasPlayerFlag(), MapEntry::ID, Player::InBattleground(), MovementGenerator::Initialize(), TeleportLocation::InstanceId, Unit::IsAlive(), MapEntry::IsBattlegroundOrArena(), MapEntry::IsDungeon(), PvPInfo::IsHostile, Unit::IsInFlight(), Player::IsInvitedForBattlegroundInstance(), BaseEntity::IsInWorld(), Unit::IsPvP(), MapManager::IsValidMapCoord(), TeleportLocation::LfgDungeonsId, TeleportLocation::Location, WorldPackets::Instance::RaidInstanceMessage::Locked, LogoutPlayer(), Player::m_bgData, Player::m_homebind, Player::m_InstanceValid, Unit::m_movementCounter, Player::m_teleport_dest, WorldPackets::Instance::RaidInstanceMessage::MapID, NotTeleporting, PLAYER_FLAGS_IN_PVP, Player::ProcessDelayedOperations(), Player::pvpInfo, BGData::queueId, RAID_INSTANCE_WELCOME, WorldPackets::Movement::ResumeToken::Reason, Position::Relocate(), Map::RemovePlayerFromMap(), Player::ResetMap(), Player::ResummonBattlePetTemporaryUnSummonedIfAny(), Player::ResummonPetTemporaryUnSummonedIfAny(), Player::ResurrectPlayer(), Player::SendInitialPacketsAfterAddToMap(), Player::SendInitialPacketsBeforeAddToMap(), SendPacket(), WorldPackets::Movement::ResumeToken::SequenceIndex, Player::SetBattlegroundId(), Player::SetBGTeam(), Player::SetFallInformation(), Player::SetMap(), Player::SetTeleportState(), sInstanceLockMgr, sMapMgr, sMapStore, Player::SpawnCorpseBones(), TC_LOG_ERROR, TEAM_OTHER, TELE_REVIVE_AT_TELEPORT, TELE_TO_SEAMLESS, Player::TeleportTo(), ObjectGuid::ToString(), TeleportLocation::TransportGuid, WorldPackets::Instance::RaidInstanceMessage::Type, WorldObject::UpdatePositionData(), Player::UpdatePvP(), Player::UpdateVisibilityForPlayer(), Player::UpdateZone(), WorldPackets::Instance::RaidInstanceMessage::Write(), and WorldPackets::Movement::ResumeToken::Write().

Referenced by HandleMoveWorldportAckOpcode(), HandleSuspendTokenResponse(), and LogoutPlayer().

◆ HandleMoveWorldportAckOpcode()

void WorldSession::HandleMoveWorldportAckOpcode ( WorldPackets::Movement::WorldPortResponse &  packet)

◆ HandleNextCinematicCamera()

void WorldSession::HandleNextCinematicCamera ( WorldPackets::Misc::NextCinematicCamera &  packet)

◆ HandleNpcTextQueryOpcode()

◆ HandleObjectUpdateFailedOpcode()

◆ HandleObjectUpdateRescuedOpcode()

◆ HandleOfferPetition()

◆ HandleOpeningCinematic()

◆ HandleOpenItemOpcode()

◆ HandleOpenWrappedItemCallback()

◆ HandleOptOutOfLootOpcode()

void WorldSession::HandleOptOutOfLootOpcode ( WorldPackets::Party::OptOutOfLoot &  packet)

◆ HandlePartyInviteOpcode()

◆ HandlePartyInviteResponseOpcode()

◆ HandlePartyUninviteOpcode()

◆ HandlePetAbandon()

◆ HandlePetAbandonByNumber()

void WorldSession::HandlePetAbandonByNumber ( WorldPackets::Pet::PetAbandonByNumber const &  petAbandonByNumber)

◆ HandlePetAction()

◆ HandlePetActionHelper()

void WorldSession::HandlePetActionHelper ( Unit *  pet,
ObjectGuid  guid1,
uint32  spellid,
uint16  flag,
ObjectGuid  guid2,
Position const &  pos 
)
Todo:
: confirm this check

Definition at line 141 of file PetHandler.cpp.

References _player, ACT_COMMAND, ACT_DISABLED, ACT_ENABLED, ACT_PASSIVE, ACT_REACTION, Creature::AI(), ASSERT, Unit::Attack(), CreatureAI::AttackStart(), Unit::AttackStop(), Spell::CheckPetCast(), MotionMaster::Clear(), COMMAND_ABANDON, COMMAND_ATTACK, COMMAND_FOLLOW, COMMAND_MOVE_TO, COMMAND_STAY, CURRENT_CHANNELED_SPELL, CURRENT_GENERIC_SPELL, Spell::finish(), Unit::GetCharmerGUID(), Unit::GetCharmerOrOwner(), Unit::GetCharmInfo(), Unit::GetCurrentSpell(), Map::GetDifficultyID(), SpellInfo::GetEffects(), Unit::GetFollowAngle(), BaseEntity::GetGUID(), WorldObject::GetMap(), Unit::GetMotionMaster(), WorldObject::GetOwner(), Unit::GetOwnerGUID(), Pet::getPetType(), GetPlayer(), Unit::GetSpellHistory(), BaseEntity::GetTypeId(), ObjectAccessor::GetUnit(), SpellCastTargets::GetUnitTarget(), Unit::GetVictim(), SpellHistory::HasCooldown(), Unit::HasSpell(), Unit::HasSpellFocus(), Unit::HasUnitTypeMask(), HUNTER_PET, Unit::InterruptSpell(), Unit::IsAIEnabled(), CharmInfo::IsCommandAttack(), ObjectGuid::IsEmpty(), SpellInfo::IsPassive(), Unit::IsPet(), Unit::isPossessed(), Unit::IsVehicle(), Spell::m_castId, Spell::m_SpellVisual, Spell::m_targets, MOTION_PRIORITY_NORMAL, MotionMaster::MoveFollow(), MotionMaster::MoveIdle(), MotionMaster::MovePoint(), PET_ACTION_ATTACK, PET_ACTION_SPECIAL_SPELL, PET_FOLLOW_DIST, PET_SAVE_AS_DELETED, PET_SAVE_NOT_IN_SLOT, Spell::prepare(), REACT_AGGRESSIVE, REACT_DEFENSIVE, REACT_PASSIVE, Player::RemovePet(), SpellHistory::ResetCooldown(), roll_chance(), CharmInfo::SaveStayPosition(), Spell::SendCastResult(), Unit::SendPetActionSound(), Unit::SendPetAIReaction(), Spell::SendPetCastResult(), Unit::SendPetDismissSound(), BaseEntity::SendUpdateToPlayer(), CharmInfo::SetCommandState(), Unit::SetInFront(), CharmInfo::SetIsAtStay(), CharmInfo::SetIsCommandAttack(), CharmInfo::SetIsCommandFollow(), CharmInfo::SetIsFollowing(), CharmInfo::SetIsReturning(), Creature::SetReactState(), SPELL_ATTR9_CHANNEL_PERSISTS_ON_PET_FOLLOW, SPELL_CAST_OK, SPELL_FAILED_UNIT_NOT_INFRONT, sSpellMgr, Player::StopCastingCharm(), Unit::StopMoving(), SUMMON_PET, TARGET_DEST_DYNOBJ_ENEMY, TARGET_UNIT_DEST_AREA_ENEMY, TARGET_UNIT_SRC_AREA_ENEMY, TC_LOG_DEBUG, TC_LOG_ERROR, Object::ToCreature(), Unit::ToPet(), Object::ToPlayer(), ObjectGuid::ToString(), TRIGGERED_NONE, TYPEID_PLAYER, TYPEID_UNIT, and UNIT_MASK_MINION.

Referenced by HandlePetAction().

◆ HandlePetCancelAuraOpcode()

◆ HandlePetCastSpellOpcode()

◆ HandlePetitionBuy()

◆ HandlePetitionRenameGuild()

◆ HandlePetitionShowList()

void WorldSession::HandlePetitionShowList ( WorldPackets::Petition::PetitionShowList &  packet)

◆ HandlePetitionShowSignatures()

◆ HandlePetRename()

◆ HandlePetSetAction()

◆ HandlePetSpellAutocastOpcode()

◆ HandlePetStopAttack()

◆ HandlePlayedTime()

◆ HandlePlayerChoiceResponse()

◆ HandlePlayerLogin()

void WorldSession::HandlePlayerLogin ( LoginQueryHolder const &  holder)

Definition at line 1174 of file CharacterHandler.cpp.

References _player, _timeSyncClockDelta, _timeSyncClockDeltaQueue, Player::AddExploredZones(), ObjectAccessor::AddObject(), Map::AddPlayerToMap(), ALL_ACCOUNT_DATA_CACHE_MASK, ALLIANCE, AsUnderlyingType(), AT_LOGIN_FIRST, AT_LOGIN_RESET_PET_TALENTS, AT_LOGIN_RESET_SPELLS, AT_LOGIN_RESET_TALENTS, Player::CalculateCorpseReclaimDelay(), WorldObject::CastSpell(), PlayerInfo::castSpells, CHAR_DEL_ALL_PET_SPELLS_BY_OWNER, CHAR_UPD_CHAR_ONLINE, CHAR_UPD_PET_SPECS_BY_OWNER, CharacterDatabase, ObjectGuid::Clear(), CONFIG_ALL_TAXI_PATHS, CONFIG_ARENA_SEASON_ID, CONFIG_ARENA_SEASON_IN_PROGRESS, CONFIG_ENABLE_SINFO_LOGIN, CONFIG_START_ALL_EXPLORED, CONFIG_START_ALL_REP, Player::ContinueTaxiFlight(), WorldPackets::Battleground::SeasonInfo::CurrentArenaSeason, DEAD, ObjectGuid::Empty, FRIEND_ONLINE, GetAccountId(), GetBattlePetMgr(), Player::getCinematic(), Unit::GetClass(), ObjectGuid::GetCounter(), Player::GetCreateMode(), GitRevision::GetFullVersion(), GameTime::GetGameTimeMS(), Player::GetGroup(), BaseEntity::GetGUID(), LoginQueryHolder::GetGuid(), Player::GetGuildId(), Unit::GetLevel(), WorldObject::GetMap(), WorldLocation::GetMapId(), Unit::GetMotionMaster(), WorldObject::GetName(), Position::GetPosition(), SQLQueryHolderBase::GetPreparedResult(), Unit::GetRace(), GetRemoteAddress(), Player::GetReputationMgr(), Player::GetSceneMgr(), Player::GetSession(), Player::GetTeam(), GetVirtualRealmAddress(), Player::GetXP(), Player::GetXPForNextLevel(), GLOBAL_CACHE_MASK, Player::HasAtLoginFlag(), Unit::HasAura(), Player::HasPlayerFlag(), Unit::HasUnitState(), HORDE, MotionMaster::Initialize(), Player::IsGameMaster(), Unit::IsStandState(), KickPlayer(), LANG_GM_ON, LANG_RESET_SPELLS, LoadAccountData(), Player::LoadCorpse(), Player::LoadFromDB(), Login, LOGIN_UPD_ACCOUNT_ONLINE, LoginDatabase, Unit::m_deathState, Player::m_homebind, m_playerLoading, WorldPackets::Character::LoginVerifyWorld::MapID, Normal, NPE, PER_CHARACTER_CACHE_MASK, PLAYER_EXPLORED_ZONES_SIZE, PLAYER_FLAGS_CONTESTED_PVP, PLAYER_FLAGS_RESTING, PLAYER_LOCAL_FLAG_OVERRIDE_TRANSPORT_SERVER_TIME, PLAYER_LOGIN_QUERY_LOAD_ACCOUNT_DATA, PLAYER_LOGIN_QUERY_LOAD_CORPSE_LOCATION, PLAYER_LOGIN_QUERY_LOAD_GUILD, SceneMgr::PlayScene(), WorldPackets::Character::LoginVerifyWorld::Pos, WorldPackets::Battleground::SeasonInfo::PreviousArenaSeason, ChatHandler::PSendSysMessage(), RACE_NIGHTELF, Player::RemoveAtLoginFlag(), Unit::RemoveAurasWithInterruptFlags(), Player::ResetSpells(), Player::ResetTalents(), Player::ResetTalentSpecialization(), Player::ResummonPetTemporaryUnSummonedIfAny(), sChrClassesStore, sChrRacesStore, SendAccountDataTimes(), SendAuctionFavoriteList(), Player::SendCinematicStart(), Player::SendCorpseReclaimDelay(), Player::SendDungeonDifficulty(), SendFeatureSystemStatus(), Player::SendInitialPacketsAfterAddToMap(), Player::SendInitialPacketsBeforeAddToMap(), BattlePets::BattlePetMgr::SendJournalLockStatus(), Player::SendMovieStart(), SendNotification(), SendPacket(), Player::SendRaidDifficulty(), SendSetTimeZoneInformation(), ReputationMgr::SendState(), Player::SendTalentsInfoData(), SendTutorialsData(), Player::setCinematic(), Player::SetContestedPvP(), Player::SetGuildLevel(), Player::SetGuildRank(), Player::SetInGameTime(), Player::SetInGuild(), ReputationMgr::SetOneFactionReputation(), SetPlayer(), Player::SetPlayerLocalFlag(), Unit::SetPvpFlag(), Unit::SetStandState(), Player::SetTaxiCheater(), Player::SetTransportServerTime(), PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt64(), Player::SetVirtualPlayerRealm(), Unit::SetWaterWalking(), sFactionStore, sGuildMgr, sObjectMgr, sScriptMgr, sSocialMgr, sWorld, TC_LOG_ERROR, TC_LOG_INFO, TC_METRIC_EVENT, Player::TeleportTo(), WorldPackets::System::MOTD::Text, ObjectGuid::ToString(), UI64LIT, UNIT_BYTE2_FLAG_FFA_PVP, UNIT_STAND_STATE_STAND, UNIT_STATE_STUNNED, Player::UpdateAverageItemLevelEquipped(), Player::UpdateAverageItemLevelTotal(), Player::UpdateCriteria(), Unit::UpdateMountCapability(), WorldPackets::Battleground::SeasonInfo::Write(), WorldPackets::Character::LoginVerifyWorld::Write(), and WorldPackets::System::MOTD::Write().

Referenced by HandleContinuePlayerLogin().

◆ HandlePlayerLoginOpcode()

◆ HandlePortGraveyard()

void WorldSession::HandlePortGraveyard ( WorldPackets::Misc::PortGraveyard &  packet)

◆ HandlePushQuestToParty()

void WorldSession::HandlePushQuestToParty ( WorldPackets::Quest::PushQuestToParty &  packet)

Definition at line 571 of file QuestHandler.cpp.

References _player, Accepted, Player::AddQuestAndCheckCompletion(), AlreadyDone, AlreadyDoneToRecipient, Busy, Player::CanAddQuest(), Player::CanCompleteRepeatableQuest(), Player::CanShareQuest(), Player::CanTakeQuest(), Class, ClassToRecipient, Player::ClearQuestSharingInfo(), Dead, DeadToRecipient, Expansion, ExpansionToRecipient, Player::GetGroup(), BaseEntity::GetGUID(), Group::GetMembers(), GetPlayer(), Player::GetPlayerSharingQuest(), Quest::GetQuestId(), Player::GetQuestStatus(), HighFaction, HighFactionToRecipient, HighLevel, HighLevelToRecipient, Invalid, InvalidToRecipient, Unit::IsAlive(), Quest::IsAutoAccept(), Quest::IsDailyOrWeekly(), ObjectGuid::IsEmpty(), Quest::IsRepeatable(), Quest::IsTurnIn(), LogFull, LogFullToRecipient, LowFaction, LowFactionToRecipient, LowLevel, LowLevelToRecipient, NotAllowed, NotDaily, NotInParty, OnQuest, OnQuestToRecipient, Player::PlayerTalkClass, Prerequisite, PrerequisiteToRecipient, QUEST_STATUS_COMPLETE, QUEST_STATUS_INCOMPLETE, QUEST_STATUS_REWARDED, WorldPackets::Quest::PushQuestToParty::QuestID, Race, RaceToRecipient, Player::SatisfyQuestClass(), Player::SatisfyQuestDay(), Player::SatisfyQuestDependentQuests(), Player::SatisfyQuestExpansion(), Player::SatisfyQuestLog(), Player::SatisfyQuestMaxLevel(), Player::SatisfyQuestMaxReputation(), Player::SatisfyQuestMinLevel(), Player::SatisfyQuestMinReputation(), Player::SatisfyQuestRace(), Player::SendPushToPartyResponse(), Player::SetQuestSharingInfo(), sObjectMgr, sQuestPoolMgr, and Success.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandlePVPLogDataOpcode()

◆ HandleQueryBattlePetName()

◆ HandleQueryCorpseLocation()

◆ HandleQueryCorpseTransport()

◆ HandleQueryCountdownTimer()

◆ HandleQueryInspectAchievements()

◆ HandleQueryNextMailTime()

◆ HandleQueryPageText()

◆ HandleQueryPetition()

◆ HandleQueryPetName()

void WorldSession::HandleQueryPetName ( WorldPackets::Query::QueryPetName &  packet)

◆ HandleQueryPlayerNames()

◆ HandleQueryQuestCompletionNPCs()

◆ HandleQueryRealmName()

◆ HandleQueryScenarioPOI()

◆ HandleQueryTimeOpcode()

void WorldSession::HandleQueryTimeOpcode ( WorldPackets::Query::QueryTime &  queryTime)

Definition at line 59 of file QueryHandler.cpp.

References SendQueryTimeResponse().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleQueryTreasurePicker()

◆ HandleQuestConfirmAccept()

◆ HandleQuestgiverAcceptQuestOpcode()

◆ HandleQuestgiverChooseRewardOpcode()

◆ HandleQuestgiverCloseQuest()

void WorldSession::HandleQuestgiverCloseQuest ( WorldPackets::Quest::QuestGiverCloseQuest &  questGiverCloseQuest)

◆ HandleQuestgiverCompleteQuest()

◆ HandleQuestgiverHelloOpcode()

◆ HandleQuestgiverQueryQuestOpcode()

◆ HandleQuestgiverRequestRewardOpcode()

◆ HandleQuestgiverStatusMultipleQuery()

void WorldSession::HandleQuestgiverStatusMultipleQuery ( WorldPackets::Quest::QuestGiverStatusMultipleQuery &  packet)

◆ HandleQuestgiverStatusQueryOpcode()

◆ HandleQuestLogRemoveQuest()

◆ HandleQuestPOIQuery()

◆ HandleQuestPushResult()

◆ HandleQuestQueryOpcode()

◆ HandleQueuedMessagesEnd()

◆ HandleRandomizeCharNameOpcode()

◆ HandleRandomRollOpcode()

void WorldSession::HandleRandomRollOpcode ( WorldPackets::Misc::RandomRollClient &  packet)

◆ HandleReadItem()

◆ HandleReadyCheckResponseOpcode()

◆ HandleReclaimCorpse()

◆ HandleRemoveNewItem()

◆ HandleReorderCharacters()

◆ HandleRepairItemOpcode()

◆ HandleRepopRequest()

◆ HandleReportPvPAFK()

◆ HandleRequestAccountData()

◆ HandleRequestBattlefieldStatusOpcode()

◆ HandleRequestCemeteryList()

◆ HandleRequestGuildRewardsList()

◆ HandleRequestLatestSplashScreen()

◆ HandleRequestPartyJoinUpdates()

◆ HandleRequestPartyMemberStatsOpcode()

◆ HandleRequestPetInfo()

◆ HandleRequestPvpReward()

void WorldSession::HandleRequestPvpReward ( WorldPackets::Battleground::RequestPVPRewards &  packet)

Definition at line 639 of file BattleGroundHandler.cpp.

References _player, and Player::SendPvpRewards().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleRequestRaidInfoOpcode()

void WorldSession::HandleRequestRaidInfoOpcode ( WorldPackets::Party::RequestRaidInfo &  packet)

Definition at line 595 of file GroupHandler.cpp.

References _player, and Player::SendRaidInfo().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleRequestRatedPvpInfo()

void WorldSession::HandleRequestRatedPvpInfo ( WorldPackets::Battleground::RequestRatedPvpInfo &  packet)

◆ HandleRequestStabledPets()

◆ HandleRequestVehicleExit()

void WorldSession::HandleRequestVehicleExit ( WorldPackets::Vehicle::RequestVehicleExit &  requestVehicleExit)

Definition at line 183 of file VehicleHandler.cpp.

References Unit::ExitVehicle(), GetPlayer(), and TC_LOG_ERROR.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleRequestVehicleNextSeat()

◆ HandleRequestVehiclePrevSeat()

◆ HandleRequestVehicleSwitchSeat()

◆ HandleRequestWorldQuestUpdate()

void WorldSession::HandleRequestWorldQuestUpdate ( WorldPackets::Quest::RequestWorldQuestUpdate &  packet)
Todo:
: 7.x Has to be implemented

Definition at line 750 of file QuestHandler.cpp.

References SendPacket(), and WorldPackets::Quest::WorldQuestUpdateResponse::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleResetInstancesOpcode()

◆ HandleResurrectResponse()

◆ HandleRideVehicleInteract()

◆ HandleSaveCUFProfiles()

◆ HandleSaveGuildEmblem()

◆ HandleSavePersonalEmblem()

◆ HandleScenePlaybackCanceled()

◆ HandleScenePlaybackComplete()

◆ HandleSceneTriggerEvent()

◆ HandleSelfResOpcode()

◆ HandleSellAllJunkItems()

◆ HandleSellItemOpcode()

◆ HandleSendMail()

void WorldSession::HandleSendMail ( WorldPackets::Mail::SendMail &  sendMail)

Definition at line 64 of file MailHandler.cpp.

References _player, AsyncCallbackProcessor< T >::AddCallback(), MailDraft::AddCOD(), MailDraft::AddItem(), MailDraft::AddMoney(), WorldPackets::Mail::SendMail::StructSendMail::Attachments, WorldPackets::Mail::SendMail::StructSendMail::Body, Item::CanBeTraded(), CanOpenMailBox(), CHAR_SEL_MAIL_COUNT, CharacterDatabase, WorldPackets::Mail::SendMail::StructSendMail::Cod, CONFIG_MAIL_DELIVERY_DELAY, CONFIG_MAIL_LEVEL_REQ, EQUIP_ERR_DESTROY_NONEMPTY_BAG, EQUIP_ERR_MAIL_BOUND_ITEM, EQUIP_ERR_NOT_SAME_ACCOUNT, ObjectAccessor::FindConnectedPlayer(), GetAccountId(), GetBattlenetAccountId(), ObjectGuid::GetCounter(), BaseEntity::GetGUID(), Player::GetGuildId(), Battlenet::AccountMgr::GetIdByGameAccountAsync(), Player::GetItemByGuid(), Unit::GetLevel(), GetPlayer(), GetPlayerInfo(), GetPlayerName(), GetQueryProcessor(), Player::GetTeam(), Item::GetTemplate(), GetTrinityString(), Player::HasEnoughMoney(), ItemTemplate::HasFlag(), HasPermission(), WorldPackets::Mail::SendMail::Info, Item::IsBattlenetAccountBound(), Item::IsBoundAccountWide(), Player::IsGameMaster(), Item::IsNotEmptyBag(), Item::IsSoulBound(), Item::IsWrapped(), ITEM_CHANGED, ITEM_FLAG_CONJURED, ITEM_FLAG_IS_BOUND_TO_ACCOUNT, LANG_MAIL_RECEIVER_REQ, LANG_MAIL_SENDER_REQ, Item::m_itemData, MAIL_CHECK_MASK_COPIED, MAIL_CHECK_MASK_HAS_BODY, MAIL_CHECK_MASK_NOT_RETURNABLE, MAIL_ERR_CANNOT_SEND_TO_SELF, MAIL_ERR_CANT_SEND_WRAPPED_COD, MAIL_ERR_EQUIP_ERROR, MAIL_ERR_INTERNAL_ERROR, MAIL_ERR_MAIL_ATTACHMENT_INVALID, MAIL_ERR_NOT_ENOUGH_MONEY, MAIL_ERR_NOT_YOUR_TEAM, MAIL_ERR_RECIPIENT_CAP_REACHED, MAIL_ERR_RECIPIENT_NOT_FOUND, MAIL_ERR_TOO_MANY_ATTACHMENTS, MAIL_OK, MAIL_SEND, WorldPackets::Mail::SendMail::StructSendMail::Mailbox, MAX_CLIENT_MAIL_ITEMS, Player::ModifyMoney(), MoneySpentOnPostage, Player::MoveItemFromInventory(), normalizePlayerName(), rbac::RBAC_PERM_LOG_GM_TRADE, rbac::RBAC_PERM_TWO_SIDE_INTERACTION_MAIL, Player::SaveInventoryAndGoldToDB(), sCharacterCache, Player::SendMailResult(), MailDraft::SendMailTo(), WorldPackets::Mail::SendMail::StructSendMail::SendMoney, SendNotification(), PreparedStatementBase::setUInt64(), sGuildMgr, sLog, WorldPackets::Mail::SendMail::StructSendMail::StationeryID, WorldPackets::Mail::SendMail::StructSendMail::Subject, sWorld, WorldPackets::Mail::SendMail::StructSendMail::Target, TC_LOG_INFO, TC_LOG_WARN, ObjectGuid::ToString(), and Player::UpdateCriteria().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSendPingCooldown()

◆ HandleSendPingUnit()

◆ HandleSendPingWorldPoint()

◆ HandleServerTimeOffsetRequest()

◆ HandleSetActionBarToggles()

◆ HandleSetActionButtonOpcode()

◆ HandleSetActiveMoverOpcode()

◆ HandleSetAdvancedCombatLogging()

void WorldSession::HandleSetAdvancedCombatLogging ( WorldPackets::ClientConfig::SetAdvancedCombatLogging &  setAdvancedCombatLogging)

◆ HandleSetAdvFlyingSpeedAck()

◆ HandleSetAdvFlyingSpeedRangeAck()

◆ HandleSetAssistantLeaderOpcode()

◆ HandleSetBackpackAutosortDisabled()

void WorldSession::HandleSetBackpackAutosortDisabled ( WorldPackets::Item::SetBackpackAutosortDisabled const &  setBackpackAutosortDisabled)

◆ HandleSetBackpackSellJunkDisabled()

void WorldSession::HandleSetBackpackSellJunkDisabled ( WorldPackets::Item::SetBackpackSellJunkDisabled const &  setBackpackSellJunkDisabled)

◆ HandleSetBankAutosortDisabled()

void WorldSession::HandleSetBankAutosortDisabled ( WorldPackets::Item::SetBankAutosortDisabled const &  setBankAutosortDisabled)

◆ HandleSetCollisionHeightAck()

◆ HandleSetContactNotesOpcode()

◆ HandleSetCurrencyFlags()

◆ HandleSetDungeonDifficultyOpcode()

◆ HandleSetEmpowerMinHoldStagePercent()

void WorldSession::HandleSetEmpowerMinHoldStagePercent ( WorldPackets::Spells::SetEmpowerMinHoldStagePercent const &  setEmpowerMinHoldStagePercent)

◆ HandleSetEveryoneIsAssistant()

◆ HandleSetFactionAtWar()

◆ HandleSetFactionInactiveOpcode()

◆ HandleSetFactionNotAtWar()

◆ HandleSetLootMethodOpcode()

void WorldSession::HandleSetLootMethodOpcode ( WorldPackets::Party::SetLootMethod &  packet)

Definition at line 360 of file GroupHandler.cpp.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSetLootSpecialization()

◆ HandleSetPartyAssignment()

◆ HandleSetPartyLeaderOpcode()

◆ HandleSetPetSlot()

◆ HandleSetPlayerDeclinedNames()

◆ HandleSetPvP()

◆ HandleSetRaidDifficultyOpcode()

◆ HandleSetRestrictPingsToAssistants()

◆ HandleSetRoleOpcode()

◆ HandleSetSavedInstanceExtend()

◆ HandleSetSelectionOpcode()

void WorldSession::HandleSetSelectionOpcode ( WorldPackets::Misc::SetSelection &  packet)

◆ HandleSetSheathedOpcode()

◆ HandleSetTaxiBenchmark()

◆ HandleSetTitleOpcode()

void WorldSession::HandleSetTitleOpcode ( WorldPackets::Character::SetTitle &  packet)

◆ HandleSetTradeCurrencyOpcode()

void WorldSession::HandleSetTradeCurrencyOpcode ( WorldPackets::Trade::SetTradeCurrency &  setTradeCurrency)

Definition at line 790 of file TradeHandler.cpp.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSetTradeGoldOpcode()

◆ HandleSetTradeItemOpcode()

◆ HandleSetWarMode()

void WorldSession::HandleSetWarMode ( WorldPackets::Misc::SetWarMode &  packet)

◆ HandleSetWatchedFactionOpcode()

◆ HandleSignPetition()

◆ HandleSocialContractRequest()

◆ HandleSocketGems()

void WorldSession::HandleSocketGems ( WorldPackets::Item::SocketGems &  socketGems)

Definition at line 910 of file ItemHandler.cpp.

References Player::_ApplyItemMods(), _player, BonusData::AddBonusList(), Player::ApplyEnchantment(), BONUS_ENCHANTMENT_SLOT, UF::SocketedGem::BonusListIDs, Player::CanEquipUniqueItem(), Item::ClearSoulboundTradeable(), ItemDynamicFieldGems::Context, Player::DestroyItemCount(), GemPropertiesEntry::EnchantId, EQUIP_ERR_ITEM_UNIQUE_EQUIPPABLE_SOCKETED, WorldPackets::Item::SocketGems::GemItem, Item::GemsFitSockets(), Item::GetChildItem(), Player::GetChildItemByGuid(), Item::GetEnchantmentId(), Object::GetEntry(), Item::GetGem(), BaseEntity::GetGUID(), ItemTemplate::GetId(), Player::GetItemByGuid(), Item::GetItemLimitCategory(), Player::GetItemLimitCategoryQuantity(), Unit::GetLevel(), Item::GetSlot(), ItemTemplate::GetSocketBonus(), Item::GetSocketColor(), Item::GetTemplate(), ItemTemplate::HasFlag(), BonusData::Initialize(), Item::IsEquipped(), ITEM_FLAG_UNIQUE_EQUIPPABLE, ITEM_MODIFIER_TIMEWALKER_LEVEL, WorldPackets::Item::SocketGems::ItemGuid, ItemDynamicFieldGems::ItemId, UF::SocketedGem::ItemID, BonusData::LimitCategory, MAX_GEM_SOCKETS, NULL_SLOT, PRISMATIC_ENCHANTMENT_SLOT, Player::RemoveTradeableItem(), Player::SendEquipError(), Item::SendUpdateSockets(), Item::SetEnchantment(), Item::SetGem(), sGemPropertiesStore, sItemLimitCategoryStore, sObjectMgr, SOCK_ENCHANTMENT_SLOT, SOCKET_COLOR_BLUE, SOCKET_COLOR_RED, SOCKET_COLOR_YELLOW, SocketColorToGemTypeMask, and Player::ToggleMetaGemsActive().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSortAccountBankBags()

void WorldSession::HandleSortAccountBankBags ( WorldPackets::Item::SortAccountBankBags &  sortBankBags)

Definition at line 1224 of file ItemHandler.cpp.

References SendPacket().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSortBags()

void WorldSession::HandleSortBags ( WorldPackets::Item::SortBags &  sortBags)

Definition at line 1231 of file ItemHandler.cpp.

References SendPacket().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSortBankBags()

void WorldSession::HandleSortBankBags ( WorldPackets::Item::SortBankBags &  sortBankBags)

Definition at line 1238 of file ItemHandler.cpp.

References SendPacket().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleSpawnTrackingUpdate()

◆ HandleSpellClick()

void WorldSession::HandleSpellClick ( WorldPackets::Spells::SpellClick &  spellClick)

◆ HandleSpellEmpowerRelease()

◆ HandleSpellEmpowerRestart()

◆ HandleSpiritHealerActivate()

◆ HandleSplitGuildBankItem()

◆ HandleSplitGuildBankItemToInventory()

◆ HandleSplitItemOpcode()

◆ HandleSplitItemToGuildBank()

◆ HandleStandStateChangeOpcode()

◆ HandleStoreGuildBankItem()

◆ HandleSubmitUserFeedback()

◆ HandleSummonResponseOpcode()

◆ HandleSupportTicketSubmitComplaint()

◆ HandleSuspendTokenResponse()

◆ HandleSwapGuildBankItemWithGuildBankItem()

◆ HandleSwapInvItemOpcode()

◆ HandleSwapItem()

◆ HandleSwapItemWithGuildBankItem()

◆ HandleSwapSubGroupsOpcode()

◆ HandleTabardVendorActivateOpcode()

◆ HandleTaxiNodeStatusQueryOpcode()

void WorldSession::HandleTaxiNodeStatusQueryOpcode ( WorldPackets::Taxi::TaxiNodeStatusQuery &  taxiNodeStatusQuery)

◆ HandleTaxiQueryAvailableNodesOpcode()

◆ HandleTaxiRequestEarlyLanding()

void WorldSession::HandleTaxiRequestEarlyLanding ( WorldPackets::Taxi::TaxiRequestEarlyLanding &  taxiRequestEarlyLanding)

Definition at line 218 of file TaxiHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleTextEmoteOpcode()

◆ HandleTimeSync()

void WorldSession::HandleTimeSync ( uint32  counter,
int64  clientTime,
TimePoint  responseReceiveTime 
)

◆ HandleTimeSyncResponse()

◆ HandleTogglePvP()

◆ HandleTotemDestroyed()

◆ HandleToyClearFanfare()

void WorldSession::HandleToyClearFanfare ( WorldPackets::Toy::ToyClearFanfare &  toyClearFanfare)

◆ HandleTradeSkillSetFavorite()

◆ HandleTrainerBuySpellOpcode()

◆ HandleTrainerListOpcode()

◆ HandleTraitsCommitConfig()

◆ HandleTransmogOutfitNew()

◆ HandleTransmogOutfitUpdateInfo()

◆ HandleTransmogOutfitUpdateSituations()

◆ HandleTransmogOutfitUpdateSlots()

void WorldSession::HandleTransmogOutfitUpdateSlots ( WorldPackets::Transmogrification::TransmogOutfitUpdateSlots const &  transmogOutfitUpdateSlots)

Definition at line 448 of file TransmogrificationHandler.cpp.

References _player, CollectionMgr::AddItemAppearance(), Assigned, AsUnderlyingType(), UF::DynamicUpdateFieldBase< T >::begin(), WorldPackets::Transmogrification::TransmogOutfitUpdateSlots::Cost, UF::DynamicUpdateFieldBase< T >::end(), Player::EquipTransmogOutfit(), GetCollectionMgr(), Player::GetItemByGuid(), CollectionMgr::GetItemsProvidingTemporaryAppearance(), Unit::GetLevel(), Player::GetNPCIfCanInteractWith(), GetPlayerInfo(), Unit::GetRace(), TransmogMgr::GetSlotAndOption(), TransmogMgr::GetTransmogIllusionForSpellItemEnchantment(), Unit::HasAuraType(), Player::HasEnoughMoney(), TransmogOutfitEntryEntry::HasFlag(), CollectionMgr::HasItemAppearance(), Player::HasPlayerLocalFlag(), TransmogIllusionEntry::ID, Interacting, ItemModifiedAppearanceEntry::ItemID, Player::m_activePlayerData, Player::ModifyMoney(), WorldPackets::Transmogrification::TransmogOutfitUpdateSlots::Npc, WorldPackets::Transmogrification::TransmogOutfitUpdateSlots::OutfitID, TransmogOutfitEntryEntry::OverrideCostModifier, PLAYER_LOCAL_FLAG_FREE_TRANSMOG_CLAIMED, Unit::RemoveAurasWithInterruptFlags(), sChrRacesStore, sDB2Manager, SendPacket(), Player::SetHasClaimedFreeTransmog(), Player::SetPlayerLocalFlag(), sItemModifiedAppearanceStore, UF::TransmogOutfitData::Slots, WorldPackets::Transmogrification::TransmogOutfitUpdateSlots::Slots, WorldPackets::Transmogrification::TransmogOutfitSlotsUpdated::Slots, SPELL_AURA_MOD_TRANSMOG_OUTFIT_UPDATE_COST, sTransmogHolidayStore, sTransmogOutfitEntryStore, TC_LOG_ERROR, TransmogCost, WorldPackets::Transmogrification::TransmogOutfitSlotsUpdated::TransmogOutfitID, TransmogUpdate, UNIT_NPC_FLAG_2_NONE, UNIT_NPC_FLAG_TRANSMOGRIFIER, Player::UpdateTransmogOutfitSlots(), WorldPackets::Transmogrification::TransmogOutfitUpdateSlots::UseAvailableDiscount, UseOverrideCostModifier, TransmogMgr::ValidateSlots(), VoidVendorDiscount, and WorldPackets::Transmogrification::TransmogOutfitSlotsUpdated::Write().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleTransmogrifyItems()

void WorldSession::HandleTransmogrifyItems ( WorldPackets::Transmogrification::TransmogrifyItems &  transmogrifyItems)

Definition at line 29 of file TransmogrificationHandler.cpp.

References _player, CollectionMgr::AddItemAppearance(), AppearanceModifierSlotBySpec, Item::CanTransmogrifyItemWithItem(), Player::CanUseItem(), Item::ClearSoulboundTradeable(), WorldPackets::Transmogrification::TransmogrifyItems::CurrentSpecOnly, EQUIP_ERR_OK, EQUIPMENT_SLOT_END, EQUIPMENT_SLOT_MAINHAND, EQUIPMENT_SLOT_OFFHAND, Player::GetActiveTalentGroup(), GetCollectionMgr(), Object::GetEntry(), BaseEntity::GetGUID(), ItemTemplate::GetInventoryType(), Player::GetItemByGuid(), Player::GetItemByPos(), CollectionMgr::GetItemsProvidingTemporaryAppearance(), Item::GetModifier(), WorldObject::GetName(), Player::GetNPCIfCanInteractWith(), GetPlayer(), Item::GetSellPrice(), Item::GetSlot(), Item::GetTemplate(), TransmogMgr::GetTransmogIllusionForSpellItemEnchantment(), Unit::HasAuraType(), Player::HasEnoughMoney(), CollectionMgr::HasItemAppearance(), IllusionModifierSlotBySpec, INVENTORY_SLOT_BAG_0, INVTYPE_SHOULDERS, ConditionMgr::IsPlayerMeetingCondition(), ITEM_CHANGED, ITEM_MODIFIER_ENCHANT_ILLUSION_ALL_SPECS, ITEM_MODIFIER_ENCHANT_ILLUSION_SPEC_1, ITEM_MODIFIER_ENCHANT_ILLUSION_SPEC_2, ITEM_MODIFIER_ENCHANT_ILLUSION_SPEC_3, ITEM_MODIFIER_ENCHANT_ILLUSION_SPEC_4, ITEM_MODIFIER_TRANSMOG_APPEARANCE_ALL_SPECS, ITEM_MODIFIER_TRANSMOG_APPEARANCE_SPEC_1, ITEM_MODIFIER_TRANSMOG_APPEARANCE_SPEC_2, ITEM_MODIFIER_TRANSMOG_APPEARANCE_SPEC_3, ITEM_MODIFIER_TRANSMOG_APPEARANCE_SPEC_4, ITEM_MODIFIER_TRANSMOG_SECONDARY_APPEARANCE_ALL_SPECS, ITEM_MODIFIER_TRANSMOG_SECONDARY_APPEARANCE_SPEC_1, ITEM_MODIFIER_TRANSMOG_SECONDARY_APPEARANCE_SPEC_2, ITEM_MODIFIER_TRANSMOG_SECONDARY_APPEARANCE_SPEC_3, ITEM_MODIFIER_TRANSMOG_SECONDARY_APPEARANCE_SPEC_4, ItemModifiedAppearanceEntry::ItemID, WorldPackets::Transmogrification::TransmogrifyItems::Items, Player::ModifyMoney(), WorldPackets::Transmogrification::TransmogrifyItems::Npc, SecondaryAppearanceModifierSlotBySpec, Item::SetModifier(), Item::SetNotRefundable(), Item::SetState(), Player::SetVisibleItemSlot(), sItemModifiedAppearanceStore, sObjectMgr, SPELL_AURA_REMOVE_TRANSMOG_COST, TC_LOG_DEBUG, ObjectGuid::ToString(), TransmogIllusionEntry::TransmogCost, UNIT_NPC_FLAG_2_NONE, UNIT_NPC_FLAG_TRANSMOGRIFIER, and TransmogIllusionEntry::UnlockConditionID.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleTurnInPetition()

◆ HandleTutorialFlag()

◆ HandleUiMapQuestLinesRequest()

◆ HandleUnacceptTradeOpcode()

void WorldSession::HandleUnacceptTradeOpcode ( WorldPackets::Trade::UnacceptTrade &  unacceptTrade)

◆ HandleUndeleteCooldownStatusCallback()

void WorldSession::HandleUndeleteCooldownStatusCallback ( PreparedQueryResult  result)

◆ HandleUnlearnSkillOpcode()

◆ HandleUnregisterAllAddonPrefixesOpcode()

void WorldSession::HandleUnregisterAllAddonPrefixesOpcode ( WorldPackets::Chat::ChatUnregisterAllAddonPrefixes &  packet)

Definition at line 1200 of file WorldSession.cpp.

References _registeredAddonPrefixes.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleUpdateAccountData()

◆ HandleUpdateAreaTriggerVisual()

◆ HandleUpdateAuraVisual()

◆ HandleUpdateBankTabSettings()

◆ HandleUpdateMissileTrajectory()

◆ HandleUpdateRaidTargetOpcode()

◆ HandleUseCritterItem()

◆ HandleUseEquipmentSet()

◆ HandleUseItemOpcode()

◆ HandleUseToy()

◆ HandleViolenceLevel()

void WorldSession::HandleViolenceLevel ( WorldPackets::Misc::ViolenceLevel &  violenceLevel)

Definition at line 1100 of file MiscHandler.cpp.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleWhoIsOpcode()

◆ HandleWhoOpcode()

void WorldSession::HandleWhoOpcode ( WorldPackets::Who::WhoRequestPkt &  whoRequest)
Todo:
: handle following packet values VirtualRealmNames ShowEnemies ShowArenaPlayers ExactName ServerInfo

Definition at line 86 of file MiscHandler.cpp.

References _player, WorldPackets::Who::WhoEntry::AreaID, WorldPackets::Who::WhoRequestPkt::Areas, WorldPackets::Who::WhoRequest::ClassFilter, CONFIG_GM_LEVEL_IN_WHO_LIST, CONFIG_MAX_WHO, WorldPackets::Array< T, N >::empty(), WorldPackets::Array< T, N >::end(), WorldPackets::Who::WhoResponse::Entries, BaseEntity::GetGUID(), GetSecurity(), Player::GetSession(), GetSessionDbcLocale(), Player::GetTeam(), GetVirtualRealmAddress(), WorldPackets::Who::WhoRequest::Guild, WorldPackets::Who::WhoEntry::GuildGUID, WorldPackets::Who::WhoEntry::GuildName, WorldPackets::Who::WhoEntry::GuildVirtualRealmAddress, WorldPackets::Who::WhoRequest::GuildVirtualRealmName, HasPermission(), Trinity::RaceMask< T, N >::HasRace(), WorldPackets::Query::PlayerGuidLookupData::Initialize(), WorldPackets::Who::WhoEntry::IsGM, AccountMgr::IsPlayerAccount(), MAX_LEVEL, WorldPackets::Who::WhoRequest::MaxLevel, WorldPackets::Who::WhoRequest::MinLevel, WorldPackets::Who::WhoRequest::Name, WorldPackets::Who::WhoEntry::PlayerData, WorldPackets::Who::WhoRequest::RaceFilter, Trinity::RaceMask< T, N >::RawValue, rbac::RBAC_PERM_TWO_SIDE_WHO_LIST, rbac::RBAC_PERM_WHO_SEE_ALL_SEC_LEVELS, WorldPackets::Who::WhoRequestPkt::Request, WorldPackets::Who::WhoResponsePkt::Response, sAreaTableStore, SendPacket(), WorldPackets::Array< T, N >::size(), STRONG_MAX_LEVEL, sWhoListStorageMgr, sWorld, TC_LOG_DEBUG, WorldPackets::Who::WhoRequestPkt::Token, WorldPackets::Who::WhoResponsePkt::Token, Utf8FitTo(), Utf8toWStr(), WorldPackets::Who::WhoRequest::VirtualRealmName, WorldPackets::Who::WhoRequest::Words, WorldPackets::Who::WhoResponsePkt::Write(), and wstrToLower().

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HandleWrapItem()

void WorldSession::HandleWrapItem ( WorldPackets::Item::WrapItem &  packet)
Todo:
: 6.x find better way for read

Definition at line 778 of file ItemHandler.cpp.

References _player, CHAR_INS_CHAR_GIFT, CharacterDatabase, Player::DestroyItemCount(), EQUIP_ERR_CANT_WRAP_BAGS, EQUIP_ERR_CANT_WRAP_BOUND, EQUIP_ERR_CANT_WRAP_EQUIPPED, EQUIP_ERR_CANT_WRAP_STACKABLE, EQUIP_ERR_CANT_WRAP_UNIQUE, EQUIP_ERR_CANT_WRAP_WRAPPED, EQUIP_ERR_ITEM_NOT_FOUND, ObjectGuid::GetCounter(), Object::GetEntry(), Item::GetGiftCreator(), BaseEntity::GetGUID(), Player::GetItemByPos(), ItemTemplate::GetMaxCount(), Item::GetMaxStackCount(), Item::GetOwnerGUID(), Item::GetState(), Item::GetTemplate(), ItemTemplate::HasFlag(), WorldPackets::Item::WrapItem::Inv, Item::IsBag(), ObjectGuid::IsEmpty(), Item::IsEquipped(), Item::IsSoulBound(), ITEM_BLUE_RIBBONED_GIFT, ITEM_BLUE_RIBBONED_HOLIDAY_GIFT, ITEM_BLUE_RIBBONED_HOLIDAY_WRAPPING_PAPER, ITEM_BLUE_RIBBONED_WRAPPING_PAPER, ITEM_CHANGED, ITEM_EMPTY_WRAPPER, ITEM_FIELD_FLAG_WRAPPED, ITEM_FLAG_IS_WRAPPER, ITEM_GREEN_RIBBONED_HOLIDAY_GIFT, ITEM_GREEN_RIBBONED_WRAPPING_PAPER, ITEM_NEW, ITEM_PURPLE_RIBBONED_HOLIDAY_GIFT, ITEM_PURPLE_RIBBONED_WRAPPING_PAPER, ITEM_RED_RIBBONED_GIFT, ITEM_RED_RIBBONED_WRAPPING_PAPER, ITEM_WRAPPED_GIFT, WorldPackets::Item::InvUpdate::Items, Item::m_itemData, RemoveItemFromUpdateQueueOf(), Item::ReplaceAllItemFlags(), Item::SaveToDB(), Player::SendEquipError(), Object::SetEntry(), Item::SetGiftCreator(), Item::SetState(), PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt64(), TC_LOG_DEBUG, and TC_LOG_ERROR.

Referenced by OpcodeTable::InitializeClientOpcodes().

◆ HasPermission()

bool WorldSession::HasPermission ( uint32  permissionId)

Definition at line 1483 of file WorldSession.cpp.

References _RBACData, rbac::RBACData::GetId(), rbac::RBACData::GetName(), rbac::RBACData::HasPermission(), LoadPermissions(), sRealmList, and TC_LOG_DEBUG.

Referenced by ChatHandler::_ParseCommands(), InstanceScript::_SkipCheckRequiredBosses(), World::AddSession_(), Channel::Announce(), SocialMgr::BroadcastToFriendListers(), AuctionHouseObject::BuyCommodity(), Player::CanBeGameMaster(), Player::CanJoinToBattleground(), CanOpenMailBox(), AchievementMgr::CanUpdateCriteriaTree(), PlayerAchievementMgr::CompletedAchievement(), Spell::EffectEnchantItemPerm(), Spell::EffectEnchantItemPrismatic(), Spell::EffectEnchantItemTmp(), SocialMgr::GetFriendInfo(), lfg::LFGMgr::GetLockedDungeons(), Player::GetStartLevel(), HandleAcceptTradeOpcode(), HandleAddFriendOpcode(), HandleAuctionPlaceBid(), HandleAuctionSellCommodity(), HandleAuctionSellItem(), HandleCharCreateOpcode(), HandleCharCustomizeCallback(), HandleCharRaceOrFactionChangeCallback(), HandleCharRenameOpcode(), HandleChatCanLocalWhisperTargetRequest(), HandleChatMessage(), HandleCheckCharacterNameAvailability(), group_commandscript::HandleGroupReviveCommand(), HandleInitiateTradeOpcode(), HandleLogoutRequestOpcode(), HandleMailTakeItem(), Guild::HandleMemberDepositMoney(), WorldSocket::HandlePing(), misc_commandscript::HandleReviveCommand(), misc_commandscript::HandleSaveCommand(), HandleSendMail(), tele_commandscript::HandleTeleCommand(), misc_commandscript::HandleUnstuckCommand(), HandleWhoIsOpcode(), HandleWhoOpcode(), ChatHandler::HasLowerSecurityAccount(), ChatHandler::HasPermission(), Channel::Invite(), Channel::JoinChannel(), lfg::LFGMgr::JoinLfg(), Channel::KickOrBan(), Channel::LeaveChannel(), Channel::List(), moveItems(), Channel::Password(), BlackMarketMgr::SendAuctionWonMail(), SendAuthResponse(), World::SendGlobalGMMessage(), World::SendGMText(), Channel::SetMode(), Channel::SetOwner(), Channel::UnBan(), Update(), and CriteriaHandler::UpdateCriteria().

◆ InitializeSession()

◆ InitializeSessionCallback()

void WorldSession::InitializeSessionCallback ( LoginDatabaseQueryHolder const &  holder,
CharacterDatabaseQueryHolder const &  realmHolder 
)

Definition at line 1431 of file WorldSession.cpp.

References _battlePetMgr, _collectionMgr, _realmCharacterCounts, AccountInfoQueryHolder::BATTLE_PET_SLOTS, AccountInfoQueryHolder::BATTLE_PETS, CONFIG_CLIENTCACHE_VERSION, ObjectGuid::Empty, ERROR_OK, SQLQueryHolderBase::GetPreparedResult(), Field::GetUInt32(), Field::GetUInt8(), AccountInfoQueryHolderPerRealm::GLOBAL_ACCOUNT_DATA, AccountInfoQueryHolder::GLOBAL_ACCOUNT_HEIRLOOMS, AccountInfoQueryHolder::GLOBAL_ACCOUNT_TOYS, GLOBAL_CACHE_MASK, AccountInfoQueryHolder::GLOBAL_REALM_CHARACTER_COUNTS, AccountInfoQueryHolderPerRealm::INSTANCE_TIMES, AccountInfoQueryHolder::ITEM_APPEARANCES, AccountInfoQueryHolder::ITEM_FAVORITE_APPEARANCES, LoadAccountData(), LoadInstanceTimeRestrictions(), LoadPlayerDataAccount(), LoadTutorialsData(), m_inQueue, AccountInfoQueryHolder::MOUNTS, AccountInfoQueryHolder::PLAYER_DATA_ELEMENTS_ACCOUNT, AccountInfoQueryHolder::PLAYER_DATA_FLAGS_ACCOUNT, ResetTimeOutTime(), SendAccountDataTimes(), SendAuthResponse(), SendAuthWaitQueue(), SendAvailableHotfixes(), SendClientCacheVersion(), SendFeatureSystemStatusGlueScreen(), SendPacket(), SendSetTimeZoneInformation(), SendTutorialsData(), SetInQueue(), WorldPackets::Battlenet::ConnectionStatus::State, sWorld, AccountInfoQueryHolder::TRANSMOG_ILLUSIONS, AccountInfoQueryHolder::TRANSMOG_OUTFITS, AccountInfoQueryHolderPerRealm::TUTORIALS, AccountInfoQueryHolder::WARBAND_SCENES, and WorldPackets::Battlenet::ConnectionStatus::Write().

Referenced by InitializeSession().

◆ InvalidateRBACData()

void WorldSession::InvalidateRBACData ( )

◆ IsAddonRegistered()

bool WorldSession::IsAddonRegistered ( std::string_view  prefix) const

◆ IsARecruiter()

bool WorldSession::IsARecruiter ( ) const
inline

Definition at line 1217 of file WorldSession.h.

Referenced by RestMgr::SetRestBonus().

◆ IsConnectionIdle()

bool WorldSession::IsConnectionIdle ( ) const

Definition at line 801 of file WorldSession.cpp.

References GameTime::GetGameTime(), m_inQueue, and m_timeOutTime.

Referenced by Update().

◆ IsLegitCharacterForAccount()

bool WorldSession::IsLegitCharacterForAccount ( ObjectGuid  lowGUID)
inlineprivate

◆ isLogingOut()

bool WorldSession::isLogingOut ( ) const
inline

◆ KickPlayer()

◆ LoadAccountData()

◆ LoadInstanceTimeRestrictions()

void WorldSession::LoadInstanceTimeRestrictions ( PreparedQueryResult  result)

Definition at line 979 of file WorldSession.cpp.

References _instanceResetTimes, and GameTime::GetSystemTime().

Referenced by InitializeSessionCallback().

◆ LoadPermissions()

void WorldSession::LoadPermissions ( )

◆ LoadPermissionsAsync()

◆ LoadPlayerDataAccount()

◆ LoadTutorialsData()

void WorldSession::LoadTutorialsData ( PreparedQueryResult  result)

◆ LogoutPlayer()

void WorldSession::LogoutPlayer ( bool  save)

Log the player out

  • If the player just died before logging out, make him appear as a ghost
  • If the player is in a guild, update the guild roster and broadcast a logout message to other guild members
  • Remove pet
  • Release battle pet journal lock
  • Clear whisper whitelist
  • empty buyback items and save the player in the database
  • Leave all channels before player delete...
  • If the player is in a group (or invited), remove him. If the group if then only 1 person, disband the group.

Send update to group and reset stored max enchanting level

Broadcast a logout message to the player's friends

Call script hook before deletion

Remove the player from the world

Pointer already deleted during RemovePlayerFromMap

Send the 'logout complete' packet to the client Client will respond by sending 3x CMSG_CANCEL_TRADE, which we currently dont handle

Since each account can only have one online character at any given time, ensure all characters for active account are marked as offline

Definition at line 557 of file WorldSession.cpp.

References _battlePetMgr, _player, BATTLEGROUND_QUEUE_NONE, Player::BuildPlayerRepop(), BUYBACK_SLOT_END, BUYBACK_SLOT_START, CHAR_UPD_ACCOUNT_ONLINE, CharacterDatabase, Player::CleanupChannels(), Player::CleanupsBeforeDelete(), Player::ClearWhisperWhiteList(), Unit::CombatStop(), CONNECTION_TYPE_INSTANCE, DoLootReleaseAll(), ObjectGuid::Empty, Unit::ExitAllAreaTriggers(), Player::FailQuestsWithFlag(), WorldObject::FindMap(), FRIEND_OFFLINE, GetAccountId(), Player::GetBattleground(), Player::GetBattlegroundQueueTypeId(), Player::GetDeathTimer(), Player::GetGroup(), BaseEntity::GetGUID(), Player::GetGuildId(), Unit::GetLevel(), Player::GetLootGUID(), WorldObject::GetName(), GetRemoteAddress(), Player::GetXP(), Player::GetXPForNextLevel(), WorldObject::GetZoneId(), HandleMoveWorldportAck(), Unit::HasAuraType(), Player::HasPendingBind(), Player::IsBeingTeleportedFar(), ObjectGuid::IsEmpty(), Player::KillPlayer(), m_playerLogout, m_playerRecentlyLogout, m_playerSave, m_Socket, PET_SAVE_AS_CURRENT, PLAYER_MAX_BATTLEGROUND_QUEUES, QUEST_FLAGS_FAIL_ON_LOGOUT, Unit::RemoveAurasByType(), Player::RemoveBattlegroundQueueId(), Player::RemovePet(), BattlegroundQueue::RemovePlayer(), Player::RemoveSocial(), Player::RepopAtGraveyard(), Player::SaveToDB(), sBattlegroundMgr, SendPacket(), Player::SetBuybackPrice(), Player::SetBuybackTimestamp(), BaseEntity::SetDestroyedObject(), Player::SetInvSlot(), SetLogoutStartTime(), Player::SetPendingBind(), SetPlayer(), PreparedStatementBase::setUInt32(), sGuildMgr, sOutdoorPvPMgr, SPELL_AURA_MOD_SHAPESHIFT, SPELL_AURA_SPIRIT_OF_REDEMPTION, sScriptMgr, sSocialMgr, TC_LOG_DEBUG, TC_LOG_INFO, TC_METRIC_EVENT, ObjectGuid::ToString(), and Player::UninviteFromGroup().

Referenced by AccountMgr::DeleteAccount(), HandleLogoutRequestOpcode(), HandleMoveWorldportAck(), HandleObjectUpdateFailedOpcode(), Update(), and ~WorldSession().

◆ LogUnexpectedOpcode()

void WorldSession::LogUnexpectedOpcode ( WorldPacket *  packet,
char const *  status,
const char *  reason 
)
private

Logging helper for unexpected opcodes.

Definition at line 334 of file WorldSession.cpp.

References WorldPacket::GetOpcode(), GetOpcodeNameForLogging(), GetPlayerInfo(), and TC_LOG_ERROR.

Referenced by Update().

◆ LogUnprocessedTail()

void WorldSession::LogUnprocessedTail ( WorldPacket const *  packet)

◆ MeetsChrCustomizationReq()

◆ moveItems()

◆ operator=()

WorldSession & WorldSession::operator= ( WorldSession const &  right)
privatedelete

◆ PlayerDisconnected()

bool WorldSession::PlayerDisconnected ( ) const

◆ PlayerLoading()

◆ PlayerLogout()

bool WorldSession::PlayerLogout ( ) const
inline

◆ PlayerLogoutWithSave()

bool WorldSession::PlayerLogoutWithSave ( ) const
inline

Definition at line 990 of file WorldSession.h.

◆ PlayerRecentlyLoggedOut()

bool WorldSession::PlayerRecentlyLoggedOut ( ) const
inline

Definition at line 991 of file WorldSession.h.

Referenced by SendCancelTrade().

◆ ProcessQueryCallbacks()

void WorldSession::ProcessQueryCallbacks ( )
private

◆ QueuePacket()

void WorldSession::QueuePacket ( WorldPacket &&  new_packet)

Add an incoming packet to the queue.

Definition at line 328 of file WorldSession.cpp.

References _recvQueue, and LockedQueue< T, StorageType >::add().

Referenced by WorldSocket::ReadDataHandler().

◆ RegisterTimeSync()

void WorldSession::RegisterTimeSync ( uint32  counter)

◆ ResetTimeOutTime()

◆ ResetTimeSync()

void WorldSession::ResetTimeSync ( )

◆ SaveInstanceTimeRestrictions()

◆ SavePlayerDataAccount()

◆ SaveTutorialsData()

◆ SendAccountDataTimes()

◆ SendActivateTaxiReply()

◆ SendAuctionClosedNotification()

◆ SendAuctionCommandResult()

void WorldSession::SendAuctionCommandResult ( uint32  auctionId,
AuctionCommand  command,
AuctionResult  errorCode,
Milliseconds  delayForNextAction,
InventoryResult  bagResult = InventoryResult(0) 
)

◆ SendAuctionFavoriteList()

◆ SendAuctionHello()

◆ SendAuctionOwnerBidNotification()

◆ SendAuthResponse()

◆ SendAuthWaitQueue()

void WorldSession::SendAuthWaitQueue ( uint32  position)

◆ SendAvailableHotfixes()

◆ SendAzeriteRespecNPC()

◆ SendBattlenetRequest() [1/2]

◆ SendBattlenetRequest() [2/2]

void WorldSession::SendBattlenetRequest ( uint32  serviceHash,
uint32  methodId,
pb::Message const *  request,
std::function< void(MessageBuffer)>  callback 
)

◆ SendBattlenetResponse() [1/2]

◆ SendBattlenetResponse() [2/2]

◆ SendBindPoint()

void WorldSession::SendBindPoint ( Creature *  npc)

◆ SendBlackMarketBidOnItemResult()

◆ SendBlackMarketOpenResult()

◆ SendBlackMarketOutbidNotification()

◆ SendBlackMarketWonNotification()

◆ SendCalendarRaidLockoutAdded()

◆ SendCalendarRaidLockoutRemoved()

◆ SendCancelTrade()

void WorldSession::SendCancelTrade ( TradeStatus  status)

◆ SendCharCreate()

◆ SendCharCustomize()

◆ SendCharDelete()

void WorldSession::SendCharDelete ( ResponseCodes  result)

◆ SendCharFactionChange()

◆ SendCharRename()

◆ SendChatPlayerNotfoundNotice()

void WorldSession::SendChatPlayerNotfoundNotice ( std::string const &  name)

Definition at line 774 of file ChatHandler.cpp.

References SendPacket().

Referenced by HandleChatMessage().

◆ SendChatRestricted()

void WorldSession::SendChatRestricted ( ChatRestrictionType  restriction)

◆ SendClientCacheVersion()

void WorldSession::SendClientCacheVersion ( uint32  version)

◆ SendConnectToInstance()

◆ SendDiscoverNewTaxiNode()

void WorldSession::SendDiscoverNewTaxiNode ( uint32  nodeid)

Definition at line 153 of file TaxiHandler.cpp.

References GetPlayer(), and SendPacket().

Referenced by Spell::EffectDiscoverTaxi().

◆ SendEnchantmentLog()

◆ SendFeatureSystemStatus()

void WorldSession::SendFeatureSystemStatus ( )

START OF DUMMY VALUES

END OF DUMMY VALUES

Definition at line 1522 of file CharacterHandler.cpp.

References WorldPackets::System::FeatureSystemStatus::AddonChatThrottle, AsUnderlyingType(), WorldPackets::System::FeatureSystemStatus::BnetGroupsEnabled, CanSpeak(), WorldPackets::System::FeatureSystemStatus::CfgRealmID, WorldPackets::System::FeatureSystemStatus::CfgRealmRecID, WorldPackets::System::FeatureSystemStatus::CharacterCommunitiesEnabled, WorldPackets::System::FeatureSystemStatus::CharUndeleteEnabled, WorldPackets::System::FeatureSystemStatus::ClubPresenceAllowSubscribeAll, WorldPackets::System::FeatureSystemStatus::ClubPresenceUnsubscribeDelay, WorldPackets::System::FeatureSystemStatus::CommercePricePollTimeSeconds, WorldPackets::System::FeatureSystemStatus::CommunitiesEnabled, COMPLAINT_ENABLED_WITH_AUTO_IGNORE, WorldPackets::System::FeatureSystemStatus::ComplaintStatus, CONFIG_FEATURE_SYSTEM_CHARACTER_UNDELETE_ENABLED, CONFIG_SUPPORT_BUGS_ENABLED, CONFIG_SUPPORT_COMPLAINTS_ENABLED, CONFIG_SUPPORT_SUGGESTIONS_ENABLED, CONFIG_SUPPORT_TICKETS_ENABLED, WorldPackets::System::FeatureSystemStatus::EuropaTicketSystemStatus, WorldPackets::System::FeatureSystemStatus::GameRules, WorldPackets::System::FeatureSystemStatus::GroupChatThrottle, WorldPackets::System::FeatureSystemStatus::GuildChatThrottle, WorldPackets::System::FeatureSystemStatus::IsChatMuted, WorldPackets::System::FeatureSystemStatus::ChatThrottleParams::MaxTries, WorldPackets::System::FeatureSystemStatus::NPETutorialsEnabled, WorldPackets::System::GameRuleValuePair::Rule, SendPacket(), WorldPackets::System::FeatureSystemStatus::SpeakForMeAllowed, sRealmList, sWorld, WorldPackets::System::FeatureSystemStatus::ChatThrottleParams::TriesRestoredPerSecond, WorldPackets::System::FeatureSystemStatus::TutorialEnabled, WorldPackets::System::FeatureSystemStatus::ChatThrottleParams::UsedTriesPerMessage, WorldPackets::System::GameRuleValuePair::Value, WorldPackets::System::GameRuleValuePair::ValueF, WorldPackets::System::FeatureSystemStatus::VoiceEnabled, and WorldPackets::System::FeatureSystemStatus::Write().

Referenced by HandlePlayerLogin().

◆ SendFeatureSystemStatusGlueScreen()

◆ SendItemEnchantTimeUpdate()

◆ SendLearnNewTaxiNode()

◆ SendLfgBootProposalUpdate()

◆ SendLfgDisabled()

void WorldSession::SendLfgDisabled ( )

Definition at line 492 of file LFGHandler.cpp.

References GetPlayerInfo(), SendPacket(), and TC_LOG_DEBUG.

◆ SendLfgJoinResult()

◆ SendLfgOfferContinue()

void WorldSession::SendLfgOfferContinue ( uint32  dungeonEntry)

◆ SendLfgPartyLockInfo()

◆ SendLfgPlayerLockInfo()

void WorldSession::SendLfgPlayerLockInfo ( )

Definition at line 140 of file LFGHandler.cpp.

References _player, WorldPackets::LFG::LfgPlayerInfo::BlackList, Player::CanRewardQuest(), WorldPackets::LFG::LfgPlayerDungeonInfo::CompletedMask, WorldPackets::LFG::LfgPlayerDungeonInfo::CompletionCurrencyID, WorldPackets::LFG::LfgPlayerDungeonInfo::CompletionLimit, WorldPackets::LFG::LfgPlayerDungeonInfo::CompletionQuantity, WorldPackets::LFG::LfgPlayerQuestReward::Currency, WorldPackets::LFG::LfgPlayerInfo::Dungeon, WorldPackets::LFG::LfgPlayerDungeonInfo::EncounterMask, WorldPackets::LFG::LfgPlayerDungeonInfo::FirstReward, GetExpansion(), BaseEntity::GetGUID(), Unit::GetLevel(), GetPlayer(), GetPlayerInfo(), Player::GetQuestMoneyReward(), Player::GetQuestXPReward(), WorldPackets::LFG::LfgPlayerQuestReward::Item, Player::m_playerData, WorldPackets::LFG::LfgPlayerDungeonInfo::OverallLimit, WorldPackets::LFG::LfgPlayerDungeonInfo::OverallQuantity, WorldPackets::LFG::LfgPlayerDungeonInfo::PurseLimit, WorldPackets::LFG::LfgPlayerDungeonInfo::PurseQuantity, WorldPackets::LFG::LfgPlayerDungeonInfo::PurseWeeklyLimit, WorldPackets::LFG::LfgPlayerDungeonInfo::PurseWeeklyQuantity, WorldPackets::LFG::LfgPlayerDungeonInfo::Quantity, QUEST_REWARD_CURRENCY_COUNT, QUEST_REWARD_ITEM_COUNT, WorldPackets::LFG::LfgPlayerQuestReward::RewardMoney, WorldPackets::LFG::LfgPlayerDungeonInfo::Rewards, WorldPackets::LFG::LfgPlayerQuestReward::RewardXP, SendPacket(), sLFGMgr, WorldPackets::LFG::LFGBlackList::Slot, WorldPackets::LFG::LfgPlayerDungeonInfo::Slot, sObjectMgr, WorldPackets::LFG::LfgPlayerDungeonInfo::SpecificLimit, WorldPackets::LFG::LfgPlayerDungeonInfo::SpecificQuantity, TC_LOG_DEBUG, and WorldPackets::LFG::LfgPlayerInfo::Write().

Referenced by HandleDFGetSystemInfo().

◆ SendLfgPlayerReward()

◆ SendLfgQueueStatus()

◆ SendLfgRoleCheckUpdate()

◆ SendLfgRoleChosen()

◆ SendLfgTeleportError()

void WorldSession::SendLfgTeleportError ( lfg::LfgTeleportResult  err)

Definition at line 505 of file LFGHandler.cpp.

References GetPlayerInfo(), SendPacket(), and TC_LOG_DEBUG.

Referenced by lfg::LFGMgr::TeleportPlayer().

◆ SendLfgUpdateProposal()

◆ SendLfgUpdateStatus()

◆ SendListInventory()

void WorldSession::SendListInventory ( ObjectGuid  guid)

Definition at line 572 of file ItemHandler.cpp.

References _player, ALLIANCE, AsUnderlyingType(), BIND_ON_ACQUIRE, VendorItem::BonusListIDs, CalculatePct(), WorldPackets::NPC::VendorItem::DoNotFilterOnVendor, Empty, ObjectGuid::Empty, VendorItem::ExtendedCost, WorldPackets::NPC::VendorItem::ExtendedCostID, ItemTemplate::GetAllowableClass(), ItemTemplate::GetBonding(), ItemTemplate::GetBuyCount(), ItemTemplate::GetBuyPrice(), Unit::GetClassMask(), Object::GetEntry(), BaseEntity::GetGUID(), CreatureMovementData::GetInteractionPauseTimer(), VendorItemData::GetItem(), VendorItemData::GetItemCount(), ItemTemplate::GetMaxStackSize(), Creature::GetMovementTemplate(), Player::GetNPCIfCanInteractWith(), GetPlayer(), Position::GetPosition(), Player::GetReputationPriceDiscount(), Player::GetTeam(), Unit::GetTotalAuraModifier(), Creature::GetVendorItemCurrentCount(), Creature::GetVendorItems(), ItemTemplate::HasFlag(), HORDE, VendorItem::IgnoreFiltering, Player::IsGameMaster(), ConditionMgr::IsPlayerMeetingCondition(), VendorItem::item, WorldPackets::NPC::VendorItem::Item, ITEM_FLAG2_FACTION_ALLIANCE, ITEM_FLAG2_FACTION_HORDE, ITEM_FLAG_ITEM_PURCHASE_RECORD, ITEM_VENDOR_TYPE_CURRENCY, ITEM_VENDOR_TYPE_ITEM, WorldPackets::Item::ItemInstance::ItemBonus, WorldPackets::Item::ItemInstance::ItemID, WorldPackets::NPC::VendorInventory::Items, MAX_VENDOR_ITEMS, VendorItem::maxcount, WorldPackets::NPC::VendorItem::MuID, None, Unit::PauseMovement(), WorldPackets::NPC::VendorItem::PlayerConditionFailed, VendorItem::PlayerConditionId, Player::PlayerTalkClass, WorldPackets::NPC::VendorItem::Price, WorldPackets::NPC::VendorItem::Quantity, WorldPackets::NPC::VendorInventory::Reason, WorldPackets::NPC::VendorItem::Refundable, Unit::RemoveAurasByType(), sConditionMgr, sCurrencyTypesStore, SELL_ERR_CANT_FIND_VENDOR, SendPacket(), Player::SendSellError(), Creature::SetHomePosition(), sItemExtendedCostStore, sObjectMgr, SPELL_AURA_FEIGN_DEATH, SPELL_AURA_MOD_VENDOR_ITEMS_PRICES, WorldPackets::NPC::VendorItem::StackCount, TC_LOG_DEBUG, ObjectGuid::ToString(), VendorItem::Type, WorldPackets::NPC::VendorItem::Type, UNIT_NPC_FLAG_2_NONE, UNIT_NPC_FLAG_VENDOR, UNIT_STATE_DIED, Vendor, WorldPackets::NPC::VendorInventory::Vendor, and WorldPackets::NPC::VendorInventory::Write().

Referenced by HandleListInventoryOpcode(), npc_lokhtos_darkbargainer::npc_lokhtos_darkbargainerAI::OnGossipSelect(), npc_zm_field_scout::OnGossipSelect(), and Player::OnGossipSelect().

◆ SendLoadCUFProfiles()

◆ SendNotification() [1/2]

◆ SendNotification() [2/2]

void WorldSession::SendNotification ( uint32  stringId,
  ... 
)

Definition at line 767 of file WorldSession.cpp.

References GetTrinityString(), and SendPacket().

◆ SendOpenTransmogrifier()

◆ SendPacket()

void WorldSession::SendPacket ( WorldPacket const *  packet,
bool  forced = false 
)

Send a packet to the client.

Definition at line 223 of file WorldSession.cpp.

References CONNECTION_TYPE_DEFAULT, CONNECTION_TYPE_INSTANCE, ServerOpcodeHandler::ConnectionIndex, WorldPacket::GetConnection(), GameTime::GetGameTime(), WorldPacket::GetOpcode(), GetOpcodeNameForLogging(), GetPlayerInfo(), IsInstanceOnlyOpcode(), OpcodeTable::IsValid(), m_Socket, opcodeTable, ByteBuffer::size(), sScriptMgr, ServerOpcodeHandler::Status, STATUS_UNHANDLED, TC_LOG_DEBUG, TC_LOG_ERROR, TC_LOG_TRACE, UNKNOWN_OPCODE, and ByteBuffer::wpos().

Referenced by Guild::_SendBankContentUpdate(), AbortLogin(), InstanceMap::AddPlayerToMap(), SocialMgr::BroadcastToFriendListers(), BattlePets::BattlePetMgr::CageBattlePet(), Unit::DestroyForPlayer(), HandleAdventureJournalUpdateSuggestions(), HandleAlterAppearance(), HandleAreaTriggerOpcode(), HandleAuctionBrowseQuery(), HandleAuctionGetCommodityQuote(), HandleAuctionListBiddedItems(), HandleAuctionListBucketsByBucketKeys(), HandleAuctionListItemsByBucketKey(), HandleAuctionListItemsByItemID(), HandleAuctionListOwnedItems(), HandleAuctionReplicateItems(), HandleAzeriteEssenceActivateEssence(), HandleBattleFieldPortOpcode(), HandleBattlemasterJoinOpcode(), HandleBattlenetChangeRealmTicket(), HandleBlackMarketRequestItems(), HandleCalendarGetCalendar(), HandleCalendarGetNumPending(), HandleCanDuel(), HandleCharEnum(), HandleChatCanLocalWhisperTargetRequest(), HandleChatUpdateAADCStatus(), HandleCheckCharacterNameAvailability(), HandleCheckIsAdventureMapPoiValid(), HandleCommerceTokenGetLog(), HandleCommerceTokenGetMarketPrice(), HandleComplaint(), HandleContinuePlayerLogin(), HandleCreatureQuery(), HandleDBQueryBulk(), debug_commandscript::HandleDebugSendChannelNotifyCommand(), debug_commandscript::HandleDebugSendChatMsgCommand(), debug_commandscript::HandleDebugSendOpcodeCommand(), debug_commandscript::HandleDebugSendSpellFailCommand(), HandleDuelAccepted(), HandleGameObjectQueryOpcode(), HandleGetGarrisonInfo(), HandleGetMailList(), HandleGetPVPOptionsEnabled(), HandleGMTicketGetCaseStatusOpcode(), HandleGMTicketSystemStatusOpcode(), Guild::HandleGuildPartyRequest(), HandleGuildQueryOpcode(), Guild::HandleGuildRequestChallengeUpdate(), HandleHotfixRequest(), HandleInspectOpcode(), HandleItemTextQuery(), HandleJoinChannel(), HandleLearnPvpTalentsOpcode(), HandleLearnTalentsOpcode(), HandleLogoutCancelOpcode(), HandleLogoutRequestOpcode(), HandleLootMoneyOpcode(), HandleLootOpcode(), HandleMirrorImageDataRequest(), HandleMoveWorldportAck(), Guild::HandleNewsSetSticky(), HandleNpcTextQueryOpcode(), HandlePetCastSpellOpcode(), HandlePetitionRenameGuild(), HandlePlayedTime(), HandlePlayerLogin(), HandlePVPLogDataOpcode(), Guild::HandleQuery(), HandleQueryBattlePetName(), HandleQueryCorpseLocation(), HandleQueryCorpseTransport(), HandleQueryNextMailTime(), HandleQueryPageText(), HandleQueryPlayerNames(), HandleQueryQuestCompletionNPCs(), HandleQueryRealmName(), HandleQueryScenarioPOI(), HandleQueryTreasurePicker(), HandleQuestPOIQuery(), HandleQuestQueryOpcode(), HandleRandomizeCharNameOpcode(), HandleReadItem(), HandleRequestAccountData(), HandleRequestBattlefieldStatusOpcode(), HandleRequestCemeteryList(), HandleRequestGuildRewardsList(), HandleRequestLatestSplashScreen(), HandleRequestPartyMemberStatsOpcode(), HandleRequestRatedPvpInfo(), HandleRequestWorldQuestUpdate(), Guild::HandleRoster(), HandleSavePersonalEmblem(), HandleServerTimeOffsetRequest(), HandleSetRoleOpcode(), HandleSetSavedInstanceExtend(), HandleSignPetition(), HandleSocialContractRequest(), HandleSortAccountBankBags(), HandleSortBags(), HandleSortBankBags(), HandleSpawnTrackingUpdate(), HandleSuspendTokenResponse(), HandleTraitsCommitConfig(), HandleTransmogOutfitNew(), HandleTransmogOutfitUpdateInfo(), HandleTransmogOutfitUpdateSituations(), HandleTransmogOutfitUpdateSlots(), HandleTurnInPetition(), HandleUiMapQuestLinesRequest(), HandleUpdateAccountData(), HandleUseEquipmentSet(), HandleUseToy(), HandleWhoIsOpcode(), HandleWhoOpcode(), InitializeSessionCallback(), Pet::learnSpells(), LogoutPlayer(), Guild::MassInviteToEvent(), Guild::ResetTimes(), AddonChannelCommandHandler::Send(), SendAccountDataTimes(), SendActivateTaxiReply(), SendAuctionClosedNotification(), SendAuctionCommandResult(), SendAuctionFavoriteList(), SendAuctionHello(), SendAuctionOwnerBidNotification(), SendAuthResponse(), SendAuthWaitQueue(), SendAvailableHotfixes(), SendAzeriteRespecNPC(), Guild::SendBankList(), Guild::SendBankLog(), SendBattlenetRequest(), SendBattlenetResponse(), SendBattlenetResponse(), SendBlackMarketBidOnItemResult(), SendBlackMarketOpenResult(), SendBlackMarketOutbidNotification(), SendBlackMarketWonNotification(), SendCalendarRaidLockoutAdded(), SendCalendarRaidLockoutRemoved(), SendCharCreate(), SendCharCustomize(), SendCharDelete(), SendCharFactionChange(), SendCharRename(), SendChatPlayerNotfoundNotice(), SendChatRestricted(), SendClientCacheVersion(), PlayerMenu::SendCloseGossip(), Guild::SendCommandResult(), SendConnectToInstance(), Player::SendDirectMessage(), SendDiscoverNewTaxiNode(), Unit::SendDurabilityLoss(), BattlePets::BattlePetMgr::SendError(), Guild::SendEventLog(), Guild::SendEventMOTD(), Guild::SendEventPresenceChanged(), CollectionMgr::SendFavoriteAppearances(), SendFeatureSystemStatus(), SendFeatureSystemStatusGlueScreen(), World::SendGlobalGMMessage(), PlayerMenu::SendGossipMenu(), Guild::SendGuildRankInfo(), SendItemEnchantTimeUpdate(), BattlePets::BattlePetMgr::SendJournal(), BattlePets::BattlePetMgr::SendJournalLockStatus(), SendLearnNewTaxiNode(), SendLfgBootProposalUpdate(), SendLfgDisabled(), SendLfgJoinResult(), SendLfgOfferContinue(), SendLfgPartyLockInfo(), SendLfgPlayerLockInfo(), SendLfgPlayerReward(), SendLfgQueueStatus(), SendLfgRoleCheckUpdate(), SendLfgRoleChosen(), SendLfgTeleportError(), SendLfgUpdateProposal(), SendLfgUpdateStatus(), SendListInventory(), SendLoadCUFProfiles(), Guild::SendLoginInfo(), Guild::SendMoneyInfo(), Unit::SendMoveKnockBack(), Guild::SendNewsUpdate(), SendNotification(), SendNotification(), SendOpenTransmogrifier(), SendPartyResult(), Guild::SendPermissions(), SendPetitionQueryOpcode(), SendPetitionShowList(), SendPetNameInvalid(), SendPetStableResult(), SendPlayerAmbiguousNotice(), PlayerMenu::SendPointOfInterest(), SendQueryTimeResponse(), PlayerMenu::SendQuestGiverQuestListMessage(), PlayerMenu::SendQuestGiverStatus(), PlayerMenu::SendQuestQueryResponse(), Group::SendRaidMarkersChanged(), Guild::SendSaveEmblemResult(), SendSetPlayerDeclinedNamesResult(), SendSetTimeZoneInformation(), SendShowBank(), SendShowMailBox(), ArenaTeam::SendStats(), ChatHandler::SendSysMessage(), SendTabardVendorActivate(), Group::SendTargetIconList(), SendTaxiMenu(), SendTaxiStatus(), Guild::BankTab::SendText(), SendTimeSync(), SendTradeStatus(), SendTutorialsData(), SendUndeleteCharacterResponse(), SendUndeleteCooldownStatusResponse(), BattlePets::BattlePetMgr::SendUpdates(), SendUpdateTrade(), Map::SendUpdateTransportVisibility(), CollectionMgr::SendWarbandSceneCollectionData(), CollectionMgr::SetAppearanceIsFavorite(), Pet::SetSpecialization(), Pet::unlearnSpells(), and BattlePets::BattlePetMgr::UnlockSlot().

◆ SendPartyResult()

◆ SendPetitionQueryOpcode()

◆ SendPetitionShowList()

◆ SendPetitionSigns()

◆ SendPetNameInvalid()

◆ SendPetStableResult()

void WorldSession::SendPetStableResult ( StableResult  result)

◆ SendPlayerAmbiguousNotice()

void WorldSession::SendPlayerAmbiguousNotice ( std::string const &  name)

Definition at line 779 of file ChatHandler.cpp.

References SendPacket().

◆ SendQueryPetNameResponse()

◆ SendQueryTimeResponse()

◆ SendSetPlayerDeclinedNamesResult()

◆ SendSetTimeZoneInformation()

◆ SendShowBank()

◆ SendShowMailBox()

◆ SendSpiritResurrect()

◆ SendTabardVendorActivate()

◆ SendTaxiMenu()

◆ SendTaxiStatus()

◆ SendTimeSync()

◆ SendTradeStatus()

◆ SendTrainerList()

◆ SendTutorialsData()

◆ SendUndeleteCharacterResponse()

◆ SendUndeleteCooldownStatusResponse()

◆ SendUpdateTrade()

◆ SetAccountData()

◆ SetCalendarEventCreationCooldown()

void WorldSession::SetCalendarEventCreationCooldown ( time_t  cooldown)
inline

Definition at line 1230 of file WorldSession.h.

Referenced by HandleCalendarAddEvent(), and HandleCalendarCopyEvent().

◆ SetInQueue()

void WorldSession::SetInQueue ( bool  state)
inline

Session in auth.queue currently.

Definition at line 1040 of file WorldSession.h.

Referenced by World::AddQueuedPlayer(), InitializeSessionCallback(), and World::RemoveQueuedPlayer().

◆ SetLatency()

void WorldSession::SetLatency ( uint32  latency)
inline

Definition at line 1207 of file WorldSession.h.

Referenced by WorldSocket::HandlePing().

◆ SetLogoutStartTime()

void WorldSession::SetLogoutStartTime ( time_t  requestTime)
inline

Engage the logout process for the user.

Definition at line 1046 of file WorldSession.h.

Referenced by HandleLogoutCancelOpcode(), HandleLogoutRequestOpcode(), and LogoutPlayer().

◆ SetPlayer()

void WorldSession::SetPlayer ( Player *  player)

◆ SetPlayerDataElementAccount() [1/2]

void WorldSession::SetPlayerDataElementAccount ( uint32  dataElementId,
float  value 
)

◆ SetPlayerDataElementAccount() [2/2]

void WorldSession::SetPlayerDataElementAccount ( uint32  dataElementId,
int64  value 
)

◆ SetPlayerDataFlagAccount()

◆ SetRealmListSecret()

void WorldSession::SetRealmListSecret ( std::array< uint8, 32 > const &  secret)
inline

Definition at line 1896 of file WorldSession.h.

Referenced by HandleBattlenetChangeRealmTicket().

◆ SetSecurity()

void WorldSession::SetSecurity ( AccountTypes  security)
inline

Definition at line 1028 of file WorldSession.h.

◆ SetTutorialInt()

void WorldSession::SetTutorialInt ( uint8  index,
uint32  value 
)
inline

Definition at line 1109 of file WorldSession.h.

References TUTORIALS_FLAG_CHANGED.

Referenced by HandleTutorialFlag().

◆ ShouldLogOut()

bool WorldSession::ShouldLogOut ( time_t  currTime) const
inline

Is logout cooldown expired?

Definition at line 1052 of file WorldSession.h.

Referenced by Update().

◆ Update()

bool WorldSession::Update ( uint32  diff,
PacketFilter &  updater 
)

Update the WorldSession (triggered by World update)

  • Before we process anything: If necessary, kick the player because the client didn't send anything for too long (or they've been idling in character select)
  • Retrieve packets from the receive queue and call the appropriate handlers not process packets if socket already closed

Delete packet after processing by default

If player didn't log out a while ago, it means packets are being sent while the server does not recognize the client to be in world yet. We will re-add the packets to the bottom of the queue and process them later.

  • If necessary, log the player out
  • Cleanup socket pointer if need

Definition at line 352 of file WorldSession.cpp.

References _player, _recvQueue, _timeSyncTimer, AntiDOS, ClientOpcodeHandler::Call, CMSG_ENUM_CHARACTERS, CONFIG_CHAT_STRICT_LINK_CHECKING_KICK, CONNECTION_TYPE_REALM, WorldSession::DosProtection::EvaluateOpcode(), expireTime, forceExit, GameTime::GetGameTime(), WorldPacket::GetOpcode(), GetOpcodeNameForLogging(), GetPlayer(), GetPlayerInfo(), WorldPackets::InvalidHyperlinkException::GetReason(), GetRemoteAddress(), HasPermission(), ByteBuffer::hexlike(), IsConnectionIdle(), ObjectGuid::IsEmpty(), BaseEntity::IsInWorld(), KickPlayer(), LogoutPlayer(), LogUnexpectedOpcode(), m_inQueue, m_playerLoading, m_playerLogout, m_playerRecentlyLogout, m_Socket, WorldPackets::InvalidHyperlinkException::Malformed, ClientOpcodeHandler::Name, LockedQueue< T, StorageType >::next(), WorldPackets::InvalidHyperlinkException::NotAllowed, opcodeTable, ProcessQueryCallbacks(), PacketFilter::ProcessUnsafe(), rbac::RBAC_PERM_IGNORE_IDLE_CONNECTION, LockedQueue< T, StorageType >::readd(), SendTimeSync(), ShouldLogOut(), sScriptMgr, ClientOpcodeHandler::Status, STATUS_AUTHED, STATUS_IGNORED, STATUS_LOGGEDIN, STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT, STATUS_NEVER, STATUS_TRANSFER, STATUS_UNHANDLED, sWorld, TC_LOG_DEBUG, TC_LOG_ERROR, TC_METRIC_DETAILED_TIMER, TC_METRIC_TAG, TC_METRIC_VALUE, and ByteBufferException::what().

Referenced by Map::Update(), and World::UpdateSessions().

◆ UpdateAndCheckInstanceCount()

bool WorldSession::UpdateAndCheckInstanceCount ( uint32  instanceId)

◆ UpdateInstanceEnterTimes()

void WorldSession::UpdateInstanceEnterTimes ( )

◆ ValidateAndGetUnitBeingMoved()

◆ ValidateAppearance()

bool WorldSession::ValidateAppearance ( Races  race,
Classes  playerClass,
Gender  gender,
Trinity::IteratorPair< UF::ChrCustomizationChoice const * >  customizations 
)

◆ ValidateHyperlinksAndMaybeKick()

bool WorldSession::ValidateHyperlinksAndMaybeKick ( std::string const &  str)

◆ ValidateMovementInfo()

bool WorldSession::ValidateMovementInfo ( Unit const *  mover,
MovementInfo *  mi 
) const

Anti-cheat checks. Please keep them in seperate if () blocks to maintain a clear overview. Might be subject to latency, so just remove improper flags.

This must be a packet spoofing attempt. MOVEMENTFLAG_ROOT sent from the client is not valid in conjunction with any of the moving movement flags such as MOVEMENTFLAG_FORWARD. It will freeze clients that receive this player's movement info.

Cannot hover without SPELL_AURA_HOVER

Cannot ascend and descend at the same time

Cannot move left and right at the same time

Cannot strafe left and right at the same time

Cannot pitch up and down at the same time

Cannot move forwards and backwards at the same time

Cannot walk on water without SPELL_AURA_WATER_WALK except for ghosts

Cannot feather fall without SPELL_AURA_FEATHER_FALL

Cannot fly if no fly auras present. Exception is being a GM. Note that we check for account level instead of Player::IsGameMaster() because in some situations it may be feasable to use .gm fly on as a GM without having .gm on, e.g. aerial combat.

Definition at line 49 of file MovementHandler.cpp.

References MovementInfo::AddMovementFlag(), GetPlayer(), GetSecurity(), Unit::HasAuraType(), MovementInfo::HasMovementFlag(), Position::IsPositionValid(), MOVEMENTFLAG_ASCENDING, MOVEMENTFLAG_BACKWARD, MOVEMENTFLAG_CAN_FLY, MOVEMENTFLAG_DESCENDING, MOVEMENTFLAG_DISABLE_GRAVITY, MOVEMENTFLAG_FALLING, MOVEMENTFLAG_FALLING_SLOW, MOVEMENTFLAG_FLYING, MOVEMENTFLAG_FORWARD, MOVEMENTFLAG_HOVER, MOVEMENTFLAG_LEFT, MOVEMENTFLAG_MASK_MOVING, MOVEMENTFLAG_PITCH_DOWN, MOVEMENTFLAG_PITCH_UP, MOVEMENTFLAG_RIGHT, MOVEMENTFLAG_ROOT, MOVEMENTFLAG_SPLINE_ELEVATION, MOVEMENTFLAG_STRAFE_LEFT, MOVEMENTFLAG_STRAFE_RIGHT, MOVEMENTFLAG_WATERWALKING, MovementInfo::pos, REMOVE_VIOLATING_FLAGS, SEC_PLAYER, SPELL_AURA_ADV_FLYING, SPELL_AURA_FEATHER_FALL, SPELL_AURA_FLY, SPELL_AURA_GHOST, SPELL_AURA_HOVER, SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED, SPELL_AURA_WATER_WALK, MovementInfo::stepUpStartElevation, and VEHICLE_FLAG_FIXED_POSITION.

Referenced by HandleForceSpeedChangeAck(), HandleMoveApplyInertiaAck(), HandleMoveApplyMovementForceAck(), HandleMoveChangeVehicleSeats(), HandleMoveDismissVehicle(), HandleMoveForceGravityModifierChangeAck(), HandleMoveKnockBackAck(), HandleMovementAckMessage(), HandleMovementOpcode(), HandleMoveRemoveInertiaAck(), HandleMoveRemoveMovementForceAck(), HandleMoveSetModMovementForceMagnitudeAck(), HandleMoveSetVehicleRecAck(), HandleMoveSplineDoneOpcode(), HandleSetAdvFlyingSpeedAck(), HandleSetAdvFlyingSpeedRangeAck(), and HandleSetCollisionHeightAck().

Friends And Related Symbol Documentation

◆ World

friend class World
friend

Definition at line 1948 of file WorldSession.h.

Member Data Documentation

◆ _accountData

AccountData WorldSession::_accountData[NUM_ACCOUNT_DATA_TYPES]
private

Definition at line 2031 of file WorldSession.h.

Referenced by LoadAccountData(), and SetAccountData().

◆ _accountId

uint32 WorldSession::_accountId
private

Definition at line 2007 of file WorldSession.h.

◆ _accountName

std::string WorldSession::_accountName
private

Definition at line 2008 of file WorldSession.h.

Referenced by LoadPermissions(), and LoadPermissionsAsync().

◆ _battlenetAccount

std::unique_ptr<Battlenet::Account> WorldSession::_battlenetAccount
private

Definition at line 2009 of file WorldSession.h.

Referenced by GetBattlenetAccountGUID().

◆ _battlenetRequestToken

uint32 WorldSession::_battlenetRequestToken
private

Definition at line 2019 of file WorldSession.h.

Referenced by SendBattlenetRequest(), and SendBattlenetRequest().

◆ _battlenetResponseCallbacks

std::unordered_map<uint32, std::function<void(MessageBuffer)> > WorldSession::_battlenetResponseCallbacks
private

Definition at line 2018 of file WorldSession.h.

Referenced by SendBattlenetRequest().

◆ _battlePetMgr

std::unique_ptr<BattlePets::BattlePetMgr> WorldSession::_battlePetMgr
private

Definition at line 2058 of file WorldSession.h.

Referenced by InitializeSessionCallback(), and LogoutPlayer().

◆ _calendarEventCreationCooldown

time_t WorldSession::_calendarEventCreationCooldown
private

Definition at line 2056 of file WorldSession.h.

◆ _clientBuild

uint32 WorldSession::_clientBuild
private

Definition at line 2013 of file WorldSession.h.

◆ _clientBuildVariant

ClientBuild::VariantId WorldSession::_clientBuildVariant
private

Definition at line 2014 of file WorldSession.h.

◆ _collectionMgr

std::unique_ptr<CollectionMgr> WorldSession::_collectionMgr
private

◆ _filterAddonMessages

bool WorldSession::_filterAddonMessages
private

Definition at line 2039 of file WorldSession.h.

Referenced by HandleAddonRegisteredPrefixesOpcode(), and IsAddonRegistered().

◆ _instanceConnectKey

ConnectToKey WorldSession::_instanceConnectKey
private

Definition at line 2062 of file WorldSession.h.

Referenced by SendConnectToInstance().

◆ _instanceResetTimes

std::unordered_map<uint32 , SystemTimePoint> WorldSession::_instanceResetTimes
private

◆ _legitCharacters

GuidSet WorldSession::_legitCharacters
private

Definition at line 1998 of file WorldSession.h.

Referenced by HandleCharEnum().

◆ _logoutTime

time_t WorldSession::_logoutTime
private

Definition at line 2021 of file WorldSession.h.

◆ _os

std::string WorldSession::_os
private

Definition at line 2012 of file WorldSession.h.

◆ _pendingTimeSyncRequests

std::map<uint32, int64> WorldSession::_pendingTimeSyncRequests
private

Definition at line 2051 of file WorldSession.h.

Referenced by HandleTimeSync(), RegisterTimeSync(), and ResetTimeSync().

◆ _player

Player* WorldSession::_player
private

Definition at line 2001 of file WorldSession.h.

Referenced by CanOpenMailBox(), CanUseBank(), ComputeNewClockDelta(), DoLootReleaseAll(), GetPlayerInfo(), GetPlayerName(), HandleAcceptTradeOpcode(), HandleAddFriendOpcode(), HandleAddToy(), HandleAdventureJournalOpenQuest(), HandleAdventureJournalUpdateSuggestions(), HandleAdventureMapStartQuest(), HandleAlterAppearance(), HandleAreaSpiritHealerQueryOpcode(), HandleAreaSpiritHealerQueueOpcode(), HandleAreaTriggerOpcode(), HandleArtifactAddPower(), HandleArtifactSetAppearance(), HandleAttackSwingOpcode(), HandleAuctionBrowseQuery(), HandleAuctionCancelCommoditiesPurchase(), HandleAuctionConfirmCommoditiesPurchase(), HandleAuctionGetCommodityQuote(), HandleAuctionListBiddedItems(), HandleAuctionListBucketsByBucketKeys(), HandleAuctionListItemsByBucketKey(), HandleAuctionListItemsByItemID(), HandleAuctionListOwnedItems(), HandleAuctionPlaceBid(), HandleAuctionRemoveItem(), HandleAuctionSellCommodity(), HandleAuctionSellItem(), HandleAuctionSetFavoriteItem(), HandleAutoBankItemOpcode(), HandleAutoDepositCharacterBank(), HandleAutoEquipItemOpcode(), HandleAutoEquipItemSlotOpcode(), HandleAutoStoreBagItemOpcode(), HandleAutoStoreBankItemOpcode(), HandleAzeriteEmpoweredItemSelectPower(), HandleAzeriteEmpoweredItemViewed(), HandleAzeriteEssenceActivateEssence(), HandleAzeriteEssenceUnlockMilestone(), HandleBattlefieldLeaveOpcode(), HandleBattlefieldListOpcode(), HandleBattleFieldPortOpcode(), HandleBattlemasterHelloOpcode(), HandleBattlemasterJoinArena(), HandleBattlemasterJoinOpcode(), HandleBattlePetSummon(), HandleBeginTradeOpcode(), HandleBusyTradeOpcode(), HandleBuybackItem(), HandleBuyBankTab(), HandleBuyItemOpcode(), HandleCalendarAddEvent(), HandleCalendarCommunityInvite(), HandleCalendarComplain(), HandleCalendarCopyEvent(), HandleCalendarEventRemoveInvite(), HandleCalendarEventSignup(), HandleCalendarGetCalendar(), HandleCalendarGetEvent(), HandleCalendarGetNumPending(), HandleCalendarInvite(), HandleCalendarModeratorStatus(), HandleCalendarRemoveEvent(), HandleCalendarRsvp(), HandleCalendarStatus(), HandleCalendarUpdateEvent(), HandleCancelAuraOpcode(), HandleCancelAutoRepeatSpellOpcode(), HandleCancelCastOpcode(), HandleCancelChanneling(), HandleCancelGrowthAuraOpcode(), HandleCancelModSpeedNoControlAuras(), HandleCancelMountAuraOpcode(), HandleCancelQueuedSpellOpcode(), HandleCancelTradeOpcode(), HandleCanDuel(), HandleCastSpellOpcode(), HandleChangeBagSlotFlag(), HandleChatIgnoredOpcode(), HandleCheckIsAdventureMapPoiValid(), HandleClassTalentsDeleteConfig(), HandleClassTalentsRenameConfig(), HandleClassTalentsRequestNewConfig(), HandleClassTalentsSetStarterBuildActive(), HandleClassTalentsSetUsesSharedActionBars(), HandleClearTradeItemOpcode(), HandleCloseInteraction(), HandleCompleteMovie(), HandleConfirmArtifactRespec(), HandleConfirmRespecWipeOpcode(), HandleContactListOpcode(), HandleConversationLineStarted(), HandleConvertRaidOpcode(), HandleCreatureQuery(), HandleDeclinePetition(), HandleDeleteEquipmentSet(), HandleDestroyItemOpcode(), HandleDismissCritter(), HandleEjectPassenger(), HandleEmoteOpcode(), HandleEquipmentSetSave(), HandleFarSightOpcode(), HandleForceSpeedChangeAck(), HandleGameobjectReportUse(), HandleGarrisonCancelConstruction(), HandleGarrisonGetMapData(), HandleGarrisonPurchaseBuilding(), HandleGarrisonRequestBlueprintAndSpecializationData(), HandleGetGarrisonInfo(), HandleGetItemPurchaseData(), HandleGetMailList(), HandleGossipHelloOpcode(), HandleGossipSelectOptionOpcode(), HandleGuildChallengeUpdateRequest(), HandleGuildGetRanks(), HandleGuildSetFocusedAchievement(), HandleHearthAndResurrect(), HandleIgnoreTradeOpcode(), HandleInitiateTradeOpcode(), HandleInspectOpcode(), HandleInstanceLockResponse(), HandleItemRefund(), HandleItemTextQuery(), HandleLearnPvpTalentsOpcode(), HandleLearnTalentsOpcode(), HandleLeaveGroupOpcode(), HandleLootMasterGiveOpcode(), HandleLootOpcode(), HandleMailCreateTextItem(), HandleMailDelete(), HandleMailMarkAsRead(), HandleMailReturnToSender(), HandleMailTakeItem(), HandleMailTakeMoney(), HandleMirrorImageDataRequest(), HandleMissileTrajectoryCollision(), HandleMountSpecialAnimOpcode(), HandleMoveDismissVehicle(), HandleMoveInitActiveMoverComplete(), HandleMovementOpcode(), HandleMoveSetModMovementForceMagnitudeAck(), HandleMoveTimeSkippedOpcode(), HandleMoveWorldportAckOpcode(), HandleObjectUpdateFailedOpcode(), HandleObjectUpdateRescuedOpcode(), HandleOfferPetition(), HandleOpeningCinematic(), HandlePetAbandon(), HandlePetAbandonByNumber(), HandlePetAction(), HandlePetActionHelper(), HandlePetCancelAuraOpcode(), HandlePetCastSpellOpcode(), HandlePetitionBuy(), HandlePetitionRenameGuild(), HandlePetitionShowSignatures(), HandlePetRename(), HandlePetSetAction(), HandlePetSpellAutocastOpcode(), HandlePetStopAttack(), HandlePlayedTime(), HandlePlayerChoiceResponse(), HandlePlayerLogin(), HandlePushQuestToParty(), HandlePVPLogDataOpcode(), HandleQueryBattlePetName(), HandleQueryCorpseLocation(), HandleQueryCorpseTransport(), HandleQueryCountdownTimer(), HandleQueryInspectAchievements(), HandleQueryNextMailTime(), HandleQueryQuestCompletionNPCs(), HandleQuestConfirmAccept(), HandleQuestgiverAcceptQuestOpcode(), HandleQuestgiverChooseRewardOpcode(), HandleQuestgiverCloseQuest(), HandleQuestgiverCompleteQuest(), HandleQuestgiverHelloOpcode(), HandleQuestgiverQueryQuestOpcode(), HandleQuestgiverRequestRewardOpcode(), HandleQuestgiverStatusMultipleQuery(), HandleQuestgiverStatusQueryOpcode(), HandleQuestLogRemoveQuest(), HandleQuestPOIQuery(), HandleQuestPushResult(), HandleQuestQueryOpcode(), HandleReadItem(), HandleReclaimCorpse(), HandleRemoveNewItem(), HandleRepairItemOpcode(), HandleReportPvPAFK(), HandleRequestAccountData(), HandleRequestBattlefieldStatusOpcode(), HandleRequestCemeteryList(), HandleRequestGuildRewardsList(), HandleRequestLatestSplashScreen(), HandleRequestPetInfo(), HandleRequestPvpReward(), HandleRequestRaidInfoOpcode(), HandleRequestStabledPets(), HandleResetInstancesOpcode(), HandleRideVehicleInteract(), HandleSavePersonalEmblem(), HandleSelfResOpcode(), HandleSellAllJunkItems(), HandleSellItemOpcode(), HandleSendMail(), HandleSendPingCooldown(), HandleSendPingUnit(), HandleSendPingWorldPoint(), HandleSetActiveMoverOpcode(), HandleSetAdvancedCombatLogging(), HandleSetBackpackAutosortDisabled(), HandleSetBackpackSellJunkDisabled(), HandleSetBankAutosortDisabled(), HandleSetContactNotesOpcode(), HandleSetCurrencyFlags(), HandleSetDungeonDifficultyOpcode(), HandleSetEmpowerMinHoldStagePercent(), HandleSetFactionInactiveOpcode(), HandleSetPetSlot(), HandleSetRaidDifficultyOpcode(), HandleSetSavedInstanceExtend(), HandleSetSelectionOpcode(), HandleSetTaxiBenchmark(), HandleSetTradeGoldOpcode(), HandleSetTradeItemOpcode(), HandleSetWarMode(), HandleSignPetition(), HandleSocketGems(), HandleSpawnTrackingUpdate(), HandleSpellClick(), HandleSpellEmpowerRelease(), HandleSpellEmpowerRestart(), HandleSplitItemOpcode(), HandleStandStateChangeOpcode(), HandleSummonResponseOpcode(), HandleSuspendTokenResponse(), HandleSwapInvItemOpcode(), HandleSwapItem(), HandleTextEmoteOpcode(), HandleTotemDestroyed(), HandleTradeSkillSetFavorite(), HandleTrainerBuySpellOpcode(), HandleTraitsCommitConfig(), HandleTransmogOutfitNew(), HandleTransmogOutfitUpdateInfo(), HandleTransmogOutfitUpdateSituations(), HandleTransmogOutfitUpdateSlots(), HandleTransmogrifyItems(), HandleTurnInPetition(), HandleUiMapQuestLinesRequest(), HandleUnacceptTradeOpcode(), HandleUpdateAreaTriggerVisual(), HandleUpdateAuraVisual(), HandleUpdateBankTabSettings(), HandleUpdateMissileTrajectory(), HandleUseCritterItem(), HandleUseEquipmentSet(), HandleUseItemOpcode(), HandleUseToy(), HandleWhoOpcode(), HandleWrapItem(), LogoutPlayer(), MeetsChrCustomizationReq(), moveItems(), SendAuctionFavoriteList(), SendBindPoint(), SendLfgPlayerLockInfo(), SendLfgUpdateStatus(), SendListInventory(), SendQueryPetNameResponse(), SendShowBank(), SendSpiritResurrect(), SendTradeStatus(), SendTrainerList(), SendUpdateTrade(), SetPlayer(), Update(), ValidateAndGetUnitBeingMoved(), and ~WorldSession().

◆ _playerDataAccount

◆ _queryHolderProcessor

AsyncCallbackProcessor<SQLQueryHolderCallback> WorldSession::_queryHolderProcessor
private

Definition at line 1946 of file WorldSession.h.

Referenced by AddQueryHolderCallback(), and ProcessQueryCallbacks().

◆ _queryProcessor

◆ _RBACData

rbac::RBACData* WorldSession::_RBACData
private

◆ _realmCharacterCounts

std::unordered_map<uint32 , uint8> WorldSession::_realmCharacterCounts
private

Definition at line 2017 of file WorldSession.h.

Referenced by InitializeSessionCallback().

◆ _realmListSecret

std::array<uint8, 32> WorldSession::_realmListSecret
private

Definition at line 2016 of file WorldSession.h.

◆ _recvQueue

LockedQueue<WorldPacket*> WorldSession::_recvQueue
private

Definition at line 2042 of file WorldSession.h.

Referenced by QueuePacket(), Update(), and ~WorldSession().

◆ _registeredAddonPrefixes

std::vector<std::string> WorldSession::_registeredAddonPrefixes
private

◆ _security

AccountTypes WorldSession::_security
private

Definition at line 2006 of file WorldSession.h.

◆ _timeSyncClockDelta

int64 WorldSession::_timeSyncClockDelta
private

◆ _timeSyncClockDeltaQueue

std::unique_ptr<boost::circular_buffer<std::pair<int64, uint32> > > WorldSession::_timeSyncClockDeltaQueue
private

Definition at line 2047 of file WorldSession.h.

Referenced by ComputeNewClockDelta(), HandlePlayerLogin(), and HandleTimeSync().

◆ _timeSyncNextCounter

uint32 WorldSession::_timeSyncNextCounter
private

Definition at line 2052 of file WorldSession.h.

Referenced by ResetTimeSync(), and SendTimeSync().

◆ _timeSyncTimer

uint32 WorldSession::_timeSyncTimer
private

Definition at line 2053 of file WorldSession.h.

Referenced by SendTimeSync(), and Update().

◆ _timezoneOffset

Minutes WorldSession::_timezoneOffset
private

Definition at line 2029 of file WorldSession.h.

◆ _transactionCallbacks

AsyncCallbackProcessor<TransactionCallback> WorldSession::_transactionCallbacks
private

Definition at line 1945 of file WorldSession.h.

Referenced by AddTransactionCallback(), and ProcessQueryCallbacks().

◆ _tutorials

std::array<uint32, MAX_ACCOUNT_TUTORIAL_VALUES> WorldSession::_tutorials
private

Definition at line 2032 of file WorldSession.h.

Referenced by LoadTutorialsData(), SaveTutorialsData(), and SendTutorialsData().

◆ _tutorialsChanged

uint8 WorldSession::_tutorialsChanged
private

Definition at line 2033 of file WorldSession.h.

Referenced by LoadTutorialsData(), and SaveTutorialsData().

◆ AntiDOS

class WorldSession::DosProtection WorldSession::AntiDOS
protected

Referenced by Update().

◆ expireTime

uint32 WorldSession::expireTime
private

Definition at line 2044 of file WorldSession.h.

Referenced by Update().

◆ forceExit

bool WorldSession::forceExit
private

Definition at line 2045 of file WorldSession.h.

Referenced by KickPlayer(), and Update().

◆ isRecruiter

bool WorldSession::isRecruiter
private

Definition at line 2041 of file WorldSession.h.

◆ m_accountExpansion

uint8 WorldSession::m_accountExpansion
private

Definition at line 2010 of file WorldSession.h.

◆ m_Address

std::string WorldSession::m_Address
private

Definition at line 2003 of file WorldSession.h.

◆ m_expansion

uint8 WorldSession::m_expansion
private

Definition at line 2011 of file WorldSession.h.

◆ m_GUIDLow

ObjectGuid::LowType WorldSession::m_GUIDLow
private

Definition at line 2000 of file WorldSession.h.

Referenced by HandleAddFriendOpcode(), SetAccountData(), and SetPlayer().

◆ m_inQueue

bool WorldSession::m_inQueue
private

Definition at line 2022 of file WorldSession.h.

Referenced by InitializeSessionCallback(), IsConnectionIdle(), and Update().

◆ m_latency

std::atomic<uint32> WorldSession::m_latency
private

Definition at line 2030 of file WorldSession.h.

◆ m_muteTime

◆ m_playerLoading

ObjectGuid WorldSession::m_playerLoading
private

◆ m_playerLogout

bool WorldSession::m_playerLogout
private

Definition at line 2024 of file WorldSession.h.

Referenced by LogoutPlayer(), and Update().

◆ m_playerRecentlyLogout

bool WorldSession::m_playerRecentlyLogout
private

Definition at line 2025 of file WorldSession.h.

Referenced by LogoutPlayer(), and Update().

◆ m_playerSave

bool WorldSession::m_playerSave
private

Definition at line 2026 of file WorldSession.h.

Referenced by LogoutPlayer().

◆ m_sessionDbcLocale

LocaleConstant WorldSession::m_sessionDbcLocale
private

Definition at line 2027 of file WorldSession.h.

◆ m_sessionDbLocaleIndex

LocaleConstant WorldSession::m_sessionDbLocaleIndex
private

Definition at line 2028 of file WorldSession.h.

◆ m_Socket

std::array<std::shared_ptr<WorldSocket>, MAX_CONNECTION_TYPES> WorldSession::m_Socket
private

◆ m_timeOutTime

std::atomic<time_t> WorldSession::m_timeOutTime

Definition at line 1209 of file WorldSession.h.

Referenced by IsConnectionIdle(), and ResetTimeOutTime().

◆ recruiterId

uint32 WorldSession::recruiterId
private

Definition at line 2040 of file WorldSession.h.

◆ SPECIAL_INIT_ACTIVE_MOVER_TIME_SYNC_COUNTER

constexpr uint32 WorldSession::SPECIAL_INIT_ACTIVE_MOVER_TIME_SYNC_COUNTER = 0xFFFFFFFF
staticconstexpr

Definition at line 1225 of file WorldSession.h.

Referenced by HandleMoveInitActiveMoverComplete(), and Map::SendInitSelf().

◆ SPECIAL_RESUME_COMMS_TIME_SYNC_COUNTER

constexpr uint32 WorldSession::SPECIAL_RESUME_COMMS_TIME_SYNC_COUNTER = 0xFFFFFFFE
staticconstexpr

Definition at line 1226 of file WorldSession.h.

Referenced by HandleContinuePlayerLogin(), and HandleQueuedMessagesEnd().


The documentation for this class was generated from the following files: