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

Player session in the World. More...

#include <WorldSession.h>

Classes

struct  Addons
 
class  DosProtection
 

Public Member Functions

 WorldSession (uint32 id, std::string &&name, std::shared_ptr< WorldSocket > sock, AccountTypes sec, uint8 expansion, time_t mute_time, Minutes timezoneOffset, 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
 
void ReadAddonsInfo (ByteBuffer &data)
 
void SendAddonsInfo ()
 
void ReadMovementInfo (WorldPacket &data, MovementInfo *mi)
 
void SendPacket (WorldPacket const *packet)
 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, DeclinedName *declinedName)
 
void SendPartyResult (PartyOperation operation, std::string const &member, PartyResult res, uint32 val=0)
 
void SendAreaTriggerMessage (char const *Text,...) ATTR_PRINTF(2
 
void void SendSetPhaseShift (uint32 phaseShift)
 
void SendQueryTimeResponse ()
 
void SendAuthResponse (uint8 code, bool shortForm, uint32 queuePos=0)
 
void SendClientCacheVersion (uint32 version)
 
void InitializeSession ()
 
void InitializeSessionCallback (CharacterDatabaseQueryHolder const &realmHolder)
 
GameClient * GetGameClient () const
 
rbac::RBACData * GetRBACData () const
 
bool HasPermission (uint32 permissionId)
 
void LoadPermissions ()
 
QueryCallback LoadPermissionsAsync ()
 
void InvalidateRBACData ()
 
AccountTypes GetSecurity () const
 
uint32 GetAccountId () const
 
std::string const & GetAccountName () 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 GetExpansion () const
 
void InitWarden (SessionKey const &k, std::string const &os)
 
Warden * GetWarden ()
 
Warden const * GetWarden () 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 const &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 SendFeatureSystemStatus ()
 
void SendNameQueryOpcode (ObjectGuid guid)
 
void SendTrainerList (Creature *npc)
 
void SendListInventory (ObjectGuid guid)
 
void SendShowBank (ObjectGuid guid)
 
bool CanOpenMailBox (ObjectGuid guid)
 
void SendShowMailBox (ObjectGuid guid)
 
void SendTabardVendorActivate (ObjectGuid guid)
 
void SendSpiritResurrect ()
 
void SendBindPoint (Creature *npc)
 
void SendTradeStatus (TradeStatusInfo const &status)
 
void SendUpdateTrade (bool trader_data=true)
 
void SendCancelTrade (TradeStatus status)
 
void SendPetitionQueryOpcode (ObjectGuid petitionguid)
 
void HandleClientCastFlags (WorldPacket &recvPacket, uint8 castFlags, SpellCastTargets &targets)
 
void SendQueryPetNameResponse (ObjectGuid guid, uint32 petnumber)
 
void SendStablePet (ObjectGuid guid)
 
void SendPetStableResult (uint8 guid)
 
bool CheckStableMaster (ObjectGuid guid)
 
AccountData const * GetAccountData (AccountDataType type) const
 
void SetAccountData (AccountDataType type, time_t time, std::string const &data)
 
void SendAccountDataTimes (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 SendAuctionHello (ObjectGuid guid, Unit const *unit)
 
void SendAuctionCommandResult (AuctionEntry const *auction, AuctionCommand command, AuctionResult errorCode, 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 SendAuctionBidderNotification (uint32 location, uint32 auctionId, ObjectGuid bidder, uint32 bidSum, uint32 diff, uint32 item_template)
 
void SendAuctionOwnerNotification (AuctionEntry *auction)
 
void SendAuctionRemovedNotification (uint32 auctionId, uint32 itemEntry, int32 randomPropertyId)
 
void SendEnchantmentLog (ObjectGuid target, ObjectGuid caster, uint32 itemId, uint32 enchantId)
 
void SendItemEnchantTimeUpdate (ObjectGuid Playerguid, ObjectGuid Itemguid, uint32 slot, uint32 Duration)
 
void SendTaxiStatus (ObjectGuid guid)
 
void SendTaxiMenu (Creature *unit)
 
void SendDoFlight (uint32 mountDisplayId, uint32 path, uint32 pathNode=0)
 
bool SendLearnNewTaxiNode (Creature *unit)
 
void SendDiscoverNewTaxiNode (uint32 nodeid)
 
void SendArenaTeamCommandResult (uint32 team_action, std::string const &team, std::string const &player, uint32 error_id=0)
 
void SendNotInArenaTeamPacket (uint8 type)
 
void SendPetitionShowList (ObjectGuid guid)
 
void BuildPartyMemberStatsChangedPacket (Player *player, WorldPacket *data)
 
void DoLootRelease (ObjectGuid lguid)
 
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 ()
 
uint32 AdjustClientMovementTime (uint32 time) const
 
time_t GetCalendarEventCreationCooldown () const
 
void SetCalendarEventCreationCooldown (time_t cooldown)
 
void Handle_NULL (WorldPacket &recvPacket)
 
void Handle_EarlyProccess (WorldPacket &recvPacket)
 
void Handle_ServerSide (WorldPacket &recvPacket)
 
void HandleCharEnumOpcode (WorldPackets::Character::EnumCharacters &enumCharacters)
 
void HandleCharDeleteOpcode (WorldPackets::Character::CharDelete &charDelete)
 
void HandleCharCreateOpcode (WorldPackets::Character::CreateCharacter &charCreate)
 
void HandlePlayerLoginOpcode (WorldPacket &recvPacket)
 
void HandleCharEnum (PreparedQueryResult result)
 
void HandlePlayerLogin (LoginQueryHolder const &holder)
 
void HandleCharRaceOrFactionChange (WorldPackets::Character::CharRaceOrFactionChange &packet)
 
void HandleCharRaceOrFactionChangeCallback (std::shared_ptr< WorldPackets::Character::CharRaceOrFactionChangeInfo > factionChangeInfo, PreparedQueryResult result)
 
void HandleCharRenameOpcode (WorldPackets::Character::CharacterRenameRequest &request)
 
void HandleCharRenameCallBack (std::shared_ptr< WorldPackets::Character::CharacterRenameInfo > renameInfo, PreparedQueryResult result)
 
void HandleSetPlayerDeclinedNames (WorldPacket &recvData)
 
void HandleAlterAppearance (WorldPacket &recvData)
 
void HandleCharCustomize (WorldPackets::Character::CharCustomize &packet)
 
void HandleCharCustomizeCallback (std::shared_ptr< WorldPackets::Character::CharCustomizeInfo > customizeInfo, PreparedQueryResult result)
 
void HandleOpeningCinematic (WorldPackets::Misc::OpeningCinematic &packet)
 
void SendCharCreate (ResponseCodes result)
 
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 SendBarberShopResult (BarberShopResult result)
 
void HandlePlayedTime (WorldPackets::Character::PlayedTimeClient &packet)
 
void HandleInspectOpcode (WorldPackets::Inspect::Inspect &inspect)
 
void HandleRequestHonorStats (WorldPackets::Inspect::RequestHonorStats &request)
 
void HandleQueryInspectAchievements (WorldPackets::Inspect::QueryInspectAchievements &inspect)
 
void HandleForceSpeedChangeAck (WorldPacket &recvData)
 
void HandleMoveKnockBackAck (WorldPacket &recvPacket)
 
void HandleMoveTeleportAck (WorldPackets::Movement::MoveTeleportAck &packet)
 
void HandleMoveWaterWalkAck (WorldPacket &recvPacket)
 
void HandleFeatherFallAck (WorldPacket &recvData)
 
void HandleMoveHoverAck (WorldPacket &recvData)
 
void HandleMoveUnRootAck (WorldPacket &recvPacket)
 
void HandleMoveRootAck (WorldPacket &recvPacket)
 
void HandleMoveSetCanFlyAckOpcode (WorldPacket &recvData)
 
void HandleMoveSetCanTransitionBetweenSwinAndFlyAck (WorldPacket &recvData)
 
void HandleMoveGravityDisableAck (WorldPacket &recvData)
 
void HandleMoveGravityEnableAck (WorldPacket &recvData)
 
void HandleMoveSetCollisionHgtAck (WorldPacket &recvData)
 
void HandleMountSpecialAnimOpcode (WorldPacket &recvdata)
 
void HandleShowingHelmOpcode (WorldPackets::Character::ShowingHelm &packet)
 
void HandleShowingCloakOpcode (WorldPackets::Character::ShowingCloak &packet)
 
void HandleRepairItemOpcode (WorldPackets::Item::RepairItem &packet)
 
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 (WorldPacket &recvPacket)
 
void HandleWhoOpcode (WorldPackets::Who::WhoRequestPkt &whoRequest)
 
void HandleLogoutRequestOpcode (WorldPackets::Character::LogoutRequest &logoutRequest)
 
void HandlePlayerLogoutOpcode (WorldPackets::Character::PlayerLogout &playerLogout)
 
void HandleLogoutCancelOpcode (WorldPackets::Character::LogoutCancel &logoutCancel)
 
void HandleGMTicketCreateOpcode (WorldPacket &recvPacket)
 
void HandleGMTicketUpdateOpcode (WorldPacket &recvPacket)
 
void HandleGMTicketDeleteOpcode (WorldPacket &recvPacket)
 
void HandleGMTicketGetTicketOpcode (WorldPackets::Ticket::GMTicketGetTicket &packet)
 
void HandleGMTicketSystemStatusOpcode (WorldPackets::Ticket::GMTicketGetSystemStatus &packet)
 
void HandleGMSurveySubmit (WorldPacket &recvPacket)
 
void HandleReportLag (WorldPacket &recvPacket)
 
void HandleGMResponseResolve (WorldPacket &recvPacket)
 
void HandleTogglePvP (WorldPackets::Misc::TogglePvP &togglePvP)
 
void HandleZoneUpdateOpcode (WorldPacket &recvPacket)
 
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 HandleBugOpcode (WorldPacket &recvPacket)
 
void HandleSetAmmoOpcode (WorldPacket &recvPacket)
 
void HandleItemNameQueryOpcode (WorldPacket &recvPacket)
 
void HandleAreaTriggerOpcode (WorldPackets::AreaTrigger::AreaTrigger &packet)
 
void HandleSetFactionAtWar (WorldPacket &recvData)
 
void HandleSetFactionCheat (WorldPacket &recvData)
 
void HandleSetWatchedFactionOpcode (WorldPacket &recvData)
 
void HandleSetFactionInactiveOpcode (WorldPacket &recvData)
 
void HandleUpdateAccountData (WorldPackets::ClientConfig::UserClientUpdateAccountData &packet)
 
void HandleRequestAccountData (WorldPackets::ClientConfig::RequestAccountData &request)
 
void HandleSetActionButtonOpcode (WorldPackets::Spells::SetActionButton &packet)
 
void HandleGameObjectUseOpcode (WorldPackets::GameObject::GameObjUse &packet)
 
void HandleGameobjectReportUse (WorldPackets::GameObject::GameObjReportUse &packet)
 
void HandleNameQueryOpcode (WorldPackets::Query::QueryPlayerName &queryPlayerName)
 
void HandleQueryTimeOpcode (WorldPackets::Query::QueryTime &queryTime)
 
void HandleCreatureQueryOpcode (WorldPackets::Query::QueryCreature &query)
 Only static data is sent in this packet !!!
 
void HandleGameObjectQueryOpcode (WorldPackets::Query::QueryGameObject &query)
 Only static data is sent in this packet !!!
 
void HandleMoveWorldportAckOpcode (WorldPackets::Movement::WorldPortResponse &packet)
 
void HandleMoveWorldportAck ()
 
bool ValidateMovementInfo (Unit const *mover, MovementInfo *mi) const
 
void HandleMovementOpcodes (WorldPackets::Movement::ClientPlayerMovement &packet)
 
void HandleMovementOpcode (OpcodeClient opcode, MovementInfo &movementInfo)
 
void HandleSetActiveMoverOpcode (WorldPacket &recvData)
 
void HandleMoveNotActiveMover (WorldPacket &recvData)
 
void HandleDismissControlledVehicle (WorldPacket &recvData)
 
void HandleRequestVehicleExit (WorldPacket &recvData)
 
void HandleChangeSeatsOnControlledVehicle (WorldPacket &recvData)
 
void HandleMoveTimeSkippedOpcode (WorldPacket &recvData)
 
void HandleRequestRaidInfoOpcode (WorldPacket &recvData)
 
void HandleGroupInviteOpcode (WorldPackets::Party::PartyInviteClient &packet)
 
void HandleGroupAcceptOpcode (WorldPacket &recvPacket)
 
void HandleGroupDeclineOpcode (WorldPacket &recvPacket)
 
void HandleGroupUninviteOpcode (WorldPacket &recvPacket)
 
void HandleGroupUninviteGuidOpcode (WorldPacket &recvPacket)
 
void HandleGroupSetLeaderOpcode (WorldPacket &recvPacket)
 
void HandleGroupDisbandOpcode (WorldPacket &recvPacket)
 
void HandleOptOutOfLootOpcode (WorldPacket &recvData)
 
void HandleLootMethodOpcode (WorldPacket &recvPacket)
 
void HandleLootRoll (WorldPacket &recvData)
 
void HandleRequestPartyMemberStatsOpcode (WorldPacket &recvData)
 
void HandleRaidTargetUpdateOpcode (WorldPacket &recvData)
 
void HandleRaidReadyCheckOpcode (WorldPacket &recvData)
 
void HandleRaidReadyCheckFinishedOpcode (WorldPacket &recvData)
 
void HandleGroupRaidConvertOpcode (WorldPacket &recvData)
 
void HandleGroupChangeSubGroupOpcode (WorldPacket &recvData)
 
void HandleGroupAssistantLeaderOpcode (WorldPacket &recvData)
 
void HandlePartyAssignmentOpcode (WorldPacket &recvData)
 
void HandlePetitionBuyOpcode (WorldPacket &recvData)
 
void HandlePetitionShowSignatures (WorldPacket &recvData)
 
void SendPetitionSigns (Petition const *petition, Player *sendTo)
 
void HandleQueryPetition (WorldPacket &recvData)
 
void HandlePetitionRenameGuild (WorldPacket &recvData)
 
void HandleSignPetition (WorldPacket &recvData)
 
void HandleDeclinePetition (WorldPacket &recvData)
 
void HandleOfferPetitionOpcode (WorldPacket &recvData)
 
void HandleTurnInPetitionOpcode (WorldPacket &recvData)
 
void HandleGuildQueryOpcode (WorldPackets::Guild::QueryGuildInfo &query)
 
void HandleGuildCreateOpcode (WorldPackets::Guild::GuildCreate &packet)
 
void HandleGuildInviteOpcode (WorldPackets::Guild::GuildInviteByName &packet)
 
void HandleGuildOfficerRemoveMember (WorldPackets::Guild::GuildOfficerRemoveMember &packet)
 
void HandleGuildAcceptOpcode (WorldPackets::Guild::AcceptGuildInvite &invite)
 
void HandleGuildDeclineOpcode (WorldPackets::Guild::GuildDeclineInvitation &decline)
 
void HandleGuildInfoOpcode (WorldPackets::Guild::GuildGetInfo &packet)
 
void HandleGuildEventLogQueryOpcode (WorldPackets::Guild::GuildEventLogQuery &packet)
 
void HandleGuildRosterOpcode (WorldPackets::Guild::GuildGetRoster &packet)
 
void HandleGuildPromoteOpcode (WorldPackets::Guild::GuildPromoteMember &promote)
 
void HandleGuildDemoteOpcode (WorldPackets::Guild::GuildDemoteMember &demote)
 
void HandleGuildLeaveOpcode (WorldPackets::Guild::GuildLeave &leave)
 
void HandleGuildDelete (WorldPackets::Guild::GuildDelete &packet)
 
void HandleGuildSetGuildMaster (WorldPackets::Guild::GuildSetGuildMaster &packet)
 
void HandleGuildUpdateMotdText (WorldPackets::Guild::GuildUpdateMotdText &packet)
 
void HandleGuildSetPublicNoteOpcode (WorldPackets::Guild::GuildSetMemberNote &packet)
 
void HandleGuildSetOfficerNoteOpcode (WorldPackets::Guild::GuildSetMemberNote &packet)
 
void HandleGuildSetRankPermissions (WorldPackets::Guild::GuildSetRankPermissions &packet)
 
void HandleGuildAddRankOpcode (WorldPackets::Guild::GuildAddRank &packet)
 
void HandleGuildDeleteRank (WorldPackets::Guild::GuildDeleteRank &packet)
 
void HandleGuildUpdateInfoText (WorldPackets::Guild::GuildUpdateInfoText &packet)
 
void HandleSaveGuildEmblemOpcode (WorldPackets::Guild::SaveGuildEmblem &packet)
 
void HandleTaxiNodeStatusQueryOpcode (WorldPacket &recvPacket)
 
void HandleTaxiQueryAvailableNodes (WorldPacket &recvPacket)
 
void HandleActivateTaxiOpcode (WorldPacket &recvPacket)
 
void HandleActivateTaxiExpressOpcode (WorldPacket &recvPacket)
 
void HandleMoveSplineDoneOpcode (WorldPacket &recvPacket)
 
void SendActivateTaxiReply (ActivateTaxiReply reply)
 
void HandleTabardVendorActivateOpcode (WorldPacket &recvPacket)
 
void HandleTrainerListOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleTrainerBuySpellOpcode (WorldPackets::NPC::TrainerBuySpell &packet)
 
void HandlePetitionShowListOpcode (WorldPacket &recvPacket)
 
void HandleGossipHelloOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleGossipSelectOptionOpcode (WorldPacket &recvPacket)
 
void HandleSpiritHealerActivateOpcode (WorldPacket &recvPacket)
 
void HandleNpcTextQueryOpcode (WorldPackets::Query::QueryNPCText &packet)
 
void HandleBinderActivateOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleRequestStabledPets (WorldPacket &recvPacket)
 
void HandleStablePet (WorldPacket &recvPacket)
 
void HandleUnstablePet (WorldPacket &recvPacket)
 
void HandleBuyStableSlot (WorldPacket &recvPacket)
 
void HandleStableRevivePet (WorldPacket &recvPacket)
 
void HandleStableSwapPet (WorldPacket &recvPacket)
 
void HandleDuelAccepted (WorldPackets::Duel::DuelResponse &duelResponse)
 
void HandleDuelCancelled (WorldPackets::Duel::DuelResponse &duelResponse)
 
void HandleAcceptTradeOpcode (WorldPacket &recvPacket)
 
void HandleBeginTradeOpcode (WorldPacket &recvPacket)
 
void HandleBusyTradeOpcode (WorldPacket &recvPacket)
 
void HandleCancelTradeOpcode (WorldPackets::Trade::CancelTrade &cancelTrade)
 
void HandleClearTradeItemOpcode (WorldPacket &recvPacket)
 
void HandleIgnoreTradeOpcode (WorldPacket &recvPacket)
 
void HandleInitiateTradeOpcode (WorldPacket &recvPacket)
 
void HandleSetTradeGoldOpcode (WorldPacket &recvPacket)
 
void HandleSetTradeItemOpcode (WorldPacket &recvPacket)
 
void HandleUnacceptTradeOpcode (WorldPacket &recvPacket)
 
void HandleAuctionHelloOpcode (WorldPackets::AuctionHouse::AuctionHelloRequest &packet)
 
void HandleAuctionListItems (WorldPacket &recvData)
 
void HandleAuctionListBidderItems (WorldPacket &recvData)
 
void HandleAuctionSellItem (WorldPacket &recvData)
 
void HandleAuctionRemoveItem (WorldPacket &recvData)
 
void HandleAuctionListOwnerItems (WorldPacket &recvData)
 
void HandleAuctionPlaceBid (WorldPacket &recvData)
 
void HandleAuctionListPendingSales (WorldPacket &recvData)
 
void HandleBankerActivateOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleAutoBankItemOpcode (WorldPackets::Bank::AutoBankItem &packet)
 
void HandleAutoStoreBankItemOpcode (WorldPackets::Bank::AutoStoreBankItem &packet)
 
void HandleBuyBankSlotOpcode (WorldPackets::Bank::BuyBankSlot &buyBankSlot)
 
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 (WorldPacket &recvData)
 
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 HandleItemQuerySingleOpcode (WorldPackets::Query::QueryItemSingle &query)
 
void HandleSellItemOpcode (WorldPackets::Item::SellItem &packet)
 
void HandleBuyItemInSlotOpcode (WorldPacket &recvPacket)
 
void HandleBuyItemOpcode (WorldPacket &recvPacket)
 
void HandleListInventoryOpcode (WorldPackets::NPC::Hello &packet)
 
void HandleAutoStoreBagItemOpcode (WorldPackets::Item::AutoStoreBagItem &packet)
 
void HandleReadItem (WorldPacket &recvPacket)
 
void HandleAutoEquipItemSlotOpcode (WorldPacket &recvPacket)
 
void HandleSwapItem (WorldPackets::Item::SwapItem &swapItem)
 
void HandleBuybackItem (WorldPackets::Item::BuyBackItem &packet)
 
void HandleWrapItemOpcode (WorldPacket &recvPacket)
 
void HandleAttackSwingOpcode (WorldPackets::Combat::AttackSwing &packet)
 
void HandleAttackStopOpcode (WorldPackets::Combat::AttackStop &packet)
 
void HandleSetSheathedOpcode (WorldPackets::Combat::SetSheathed &packet)
 
void HandleUseItemOpcode (WorldPacket &recvPacket)
 
void HandleOpenItemOpcode (WorldPacket &recvPacket)
 
void HandleOpenWrappedItemCallback (uint16 pos, ObjectGuid itemGuid, PreparedQueryResult result)
 
void HandleCastSpellOpcode (WorldPackets::Spells::CastSpell &castRequest)
 
void HandleCancelCastOpcode (WorldPackets::Spells::CancelCast &cancelCast)
 
void HandleCancelAuraOpcode (WorldPackets::Spells::CancelAura &cancelAura)
 
void HandleCancelGrowthAuraOpcode (WorldPackets::Spells::CancelGrowthAura &cancelGrowthAura)
 
void HandleCancelMountAuraOpcode (WorldPackets::Spells::CancelMountAura &cancelMountAura)
 
void HandleCancelAutoRepeatSpellOpcode (WorldPackets::Spells::CancelAutoRepeatSpell &cancelAutoRepeatSpell)
 
void HandleCancelChanneling (WorldPackets::Spells::CancelChannelling &cancelChanneling)
 
void HandleLearnTalentOpcode (WorldPackets::Talent::LearnTalent &packet)
 
void HandleLearnPreviewTalents (WorldPackets::Talent::LearnPreviewTalents &learnPreviewTalents)
 
void HandleTalentWipeConfirmOpcode (WorldPackets::Talent::ConfirmRespecWipe &confirmRespecWipe)
 
void HandleUnlearnSkillOpcode (WorldPacket &recvPacket)
 
void HandleQuestgiverStatusQueryOpcode (WorldPackets::Quest::QuestGiverStatusQuery &packet)
 
void HandleQuestgiverStatusMultipleQuery (WorldPackets::Quest::QuestGiverStatusMultipleQuery &packet)
 
void HandleQuestgiverHelloOpcode (WorldPacket &recvPacket)
 
void HandleQuestgiverAcceptQuestOpcode (WorldPacket &recvPacket)
 
void HandleQuestgiverQueryQuestOpcode (WorldPackets::Quest::QuestGiverQueryQuest &packet)
 
void HandleQuestgiverChooseRewardOpcode (WorldPacket &recvPacket)
 
void HandleQuestgiverRequestRewardOpcode (WorldPackets::Quest::QuestGiverRequestReward &packet)
 
void HandleQuestQueryOpcode (WorldPackets::Quest::QueryQuestInfo &query)
 
void HandleQuestgiverCancel (WorldPacket &recvData)
 
void HandleQuestLogSwapQuest (WorldPacket &recvData)
 
void HandleQuestLogRemoveQuest (WorldPacket &recvData)
 
void HandleQuestConfirmAccept (WorldPacket &recvData)
 
void HandleQuestgiverCompleteQuest (WorldPacket &recvData)
 
void HandleQuestgiverQuestAutoLaunch (WorldPacket &recvPacket)
 
void HandlePushQuestToParty (WorldPacket &recvPacket)
 
void HandleQuestPushResult (WorldPacket &recvPacket)
 
void HandleChatMessageOpcode (WorldPackets::Chat::ChatMessage &chatMessage)
 
void HandleChatMessage (ChatMsg type, Language lang, std::string msg, std::string target)
 
void SendPlayerNotFoundNotice (std::string const &name)
 
void SendPlayerAmbiguousNotice (std::string const &name)
 
void SendWrongFactionNotice ()
 
void SendChatRestrictedNotice (ChatRestrictionType restriction)
 
void HandleTextEmoteOpcode (WorldPackets::Chat::CTextEmote &packet)
 
void HandleChatIgnoredOpcode (WorldPacket &recvPacket)
 
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 (WorldPacket &recvData)
 
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 &packet)
 
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 HandleTutorialClear (WorldPackets::Misc::TutorialClear &tutorialClear)
 
void HandleTutorialReset (WorldPackets::Misc::TutorialReset &tutorialReset)
 
void HandlePetAction (WorldPacket &recvData)
 
void HandlePetStopAttack (WorldPackets::Pet::PetStopAttack &packet)
 
void HandlePetActionHelper (Unit *pet, ObjectGuid guid1, uint32 spellid, uint16 flag, ObjectGuid guid2)
 
void HandleQueryPetName (WorldPacket &recvData)
 
void HandlePetSetAction (WorldPacket &recvData)
 
void HandlePetAbandon (WorldPackets::Pet::PetAbandon &packet)
 
void HandlePetRename (WorldPacket &recvData)
 
void HandlePetCancelAuraOpcode (WorldPackets::Spells::PetCancelAura &packet)
 
void HandlePetSpellAutocastOpcode (WorldPackets::Pet::PetSpellAutocast &packet)
 
void HandlePetCastSpellOpcode (WorldPackets::Spells::PetCastSpell &petCastSpell)
 
void HandlePetLearnTalent (WorldPacket &recvPacket)
 
void HandleLearnPreviewTalentsPet (WorldPacket &recvPacket)
 
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 HandleBattlegroundPlayerPositionsOpcode (WorldPackets::Battleground::BattlegroundPlayerPositionsRequest &battlegroundPlayerPositionsRequest)
 
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 HandleAreaSpiritHealerQueryOpcode (WorldPackets::Battleground::AreaSpiritHealerQuery &areaSpiritHealerQuery)
 
void HandleAreaSpiritHealerQueueOpcode (WorldPackets::Battleground::AreaSpiritHealerQueue &areaSpiritHealerQueue)
 
void HandleHearthAndResurrect (WorldPackets::Battleground::HearthAndResurrect &hearthAndResurrect)
 
void HandleRequestBattlefieldStatusOpcode (WorldPackets::Battleground::RequestBattlefieldStatus &requestBattlefieldStatus)
 
void SendBfInvitePlayerToWar (uint32 battleId, uint32 zoneId, uint32 time)
 This send to player windows for invite player to join the war.
 
void SendBfInvitePlayerToQueue (uint32 battleId)
 This send invitation to player to join the queue.
 
void SendBfQueueInviteResponse (uint32 battleId, uint32 zoneId, bool canQueue=true, bool full=false)
 This send packet for inform player that he join queue.
 
void SendBfEntered (uint32 battleId)
 This is call when player accept to join war.
 
void SendBfLeaveMessage (uint32 battleId, BFLeaveReason reason=BF_LEAVE_REASON_EXITED)
 This is call when player leave battlefield zone.
 
void HandleBfQueueInviteResponse (WorldPacket &recvData)
 Send by client when he click on accept for queue.
 
void HandleBfEntryInviteResponse (WorldPacket &recvData)
 Send by client on clicking in accept or refuse of invitation windows for join game.
 
void HandleBfQueueExitRequest (WorldPacket &recvData)
 Send by client when exited battlefield.
 
void HandleWardenDataOpcode (WorldPacket &recvData)
 
void HandleWorldTeleportOpcode (WorldPackets::Misc::WorldTeleport &worldTeleport)
 
void HandleMinimapPingOpcode (WorldPacket &recvData)
 
void HandleRandomRollOpcode (WorldPackets::Misc::RandomRollClient &packet)
 
void HandleFarSightOpcode (WorldPacket &recvData)
 
void HandleSetDungeonDifficultyOpcode (WorldPackets::Misc::SetDungeonDifficulty &setDungeonDifficulty)
 
void HandleSetRaidDifficultyOpcode (WorldPackets::Misc::SetRaidDifficulty &setRaidDifficulty)
 
void HandleSetTitleOpcode (WorldPacket &recvData)
 
void HandleRealmSplitOpcode (WorldPacket &recvData)
 
void HandleTimeSyncResponse (WorldPackets::Misc::TimeSyncResponse &packet)
 
void HandleWhoIsOpcode (WorldPackets::Who::WhoIsRequest &packet)
 
void HandleResetInstancesOpcode (WorldPacket &recvData)
 
void HandleInstanceLockResponse (WorldPacket &recvPacket)
 
void HandleLfgSetCommentOpcode (WorldPacket &recvData)
 
void HandleLfgPlayerLockInfoRequestOpcode (WorldPacket &recvData)
 
void HandleLfgPartyLockInfoRequestOpcode (WorldPacket &recvData)
 
void SendLfgPlayerLockInfo ()
 
void SendLfgPartyLockInfo ()
 
void HandleLfgJoinOpcode (WorldPackets::LFG::LFGJoin &lfgJoin)
 
void HandleLfgLeaveOpcode (WorldPackets::LFG::LFGLeave &lfgleave)
 
void HandleLfgSetRolesOpcode (WorldPacket &recvData)
 
void HandleLfgProposalResultOpcode (WorldPacket &recvData)
 
void HandleLfgSetBootVoteOpcode (WorldPacket &recvData)
 
void HandleLfgTeleportOpcode (WorldPacket &recvData)
 
void HandleLfrJoinOpcode (WorldPacket &recvData)
 
void HandleLfrLeaveOpcode (WorldPacket &recvData)
 
void HandleLfgGetStatus (WorldPacket &recvData)
 
void SendLfgUpdatePlayer (lfg::LfgUpdateData const &updateData)
 
void SendLfgUpdateParty (lfg::LfgUpdateData const &updateData)
 
void SendLfgRoleChosen (ObjectGuid guid, uint8 roles)
 
void SendLfgRoleCheckUpdate (lfg::LfgRoleCheck const &pRoleCheck)
 
void SendLfgLfrList (bool update)
 
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 (uint8 err)
 
void HandleInspectArenaTeamsOpcode (WorldPacket &recvData)
 
void HandleArenaTeamQueryOpcode (WorldPacket &recvData)
 
void HandleArenaTeamRosterOpcode (WorldPacket &recvData)
 
void HandleArenaTeamInviteOpcode (WorldPacket &recvData)
 
void HandleArenaTeamAcceptOpcode (WorldPacket &recvData)
 
void HandleArenaTeamDeclineOpcode (WorldPacket &recvData)
 
void HandleArenaTeamLeaveOpcode (WorldPacket &recvData)
 
void HandleArenaTeamRemoveOpcode (WorldPacket &recvData)
 
void HandleArenaTeamDisbandOpcode (WorldPacket &recvData)
 
void HandleArenaTeamLeaderOpcode (WorldPacket &recvData)
 
void HandleSelfResOpcode (WorldPacket &recvData)
 
void HandleComplainOpcode (WorldPacket &recvData)
 
void HandleRequestPetInfo (WorldPackets::Pet::RequestPetInfo &packet)
 
void HandleSocketOpcode (WorldPacket &recvData)
 
void HandleCancelTempEnchantmentOpcode (WorldPacket &recvData)
 
void HandleGetItemPurchaseData (WorldPackets::Item::GetItemPurchaseData &packet)
 
void HandleItemRefund (WorldPacket &recvData)
 
void HandleVoiceSessionEnableOpcode (WorldPacket &recvData)
 
void HandleSetActiveVoiceChannel (WorldPacket &recvData)
 
void HandleSetTaxiBenchmarkOpcode (WorldPacket &recvData)
 
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 HandleGuildBankSwapItems (WorldPackets::Guild::GuildBankSwapItems &packet)
 
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 HandleGrantLevel (WorldPacket &recvData)
 
void HandleAcceptGrantLevel (WorldPacket &recvData)
 
void HandleCalendarGetCalendar (WorldPackets::Calendar::CalendarGetCalendar &calendarGetCalendar)
 
void HandleCalendarGetEvent (WorldPackets::Calendar::CalendarGetEvent &calendarGetEvent)
 
void HandleCalendarGuildFilter (WorldPackets::Calendar::CalendarGuildFilter &calendarGuildFilter)
 
void HandleCalendarArenaTeam (WorldPackets::Calendar::CalendarArenaTeam &calendarArenaTeam)
 
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 HandleCalendarEventInvite (WorldPackets::Calendar::CalendarInvite &calendarEventInvite)
 
void HandleCalendarEventRsvp (WorldPackets::Calendar::CalendarRSVP &calendarRSVP)
 
void HandleCalendarEventRemoveInvite (WorldPackets::Calendar::CalendarRemoveInvite &calendarRemoveInvite)
 
void HandleCalendarEventStatus (WorldPackets::Calendar::CalendarStatus &calendarStatus)
 
void HandleCalendarEventModeratorStatus (WorldPackets::Calendar::CalendarModeratorStatusQuery &calendarModeratorStatus)
 
void HandleCalendarComplain (WorldPackets::Calendar::CalendarComplain &calendarComplain)
 
void HandleCalendarGetNumPending (WorldPackets::Calendar::CalendarGetNumPending &calendarGetNumPending)
 
void HandleCalendarEventSignup (WorldPackets::Calendar::CalendarEventSignUp &calendarEventSignUp)
 
void SendCalendarRaidLockoutAdded (InstanceSave const *save)
 
void SendCalendarRaidLockoutRemoved (InstanceSave const *save)
 
void SendCalendarRaidLockoutUpdated (InstanceSave const *save)
 
void HandleSetSavedInstanceExtend (WorldPackets::Calendar::SetSavedInstanceExtend &setSavedInstanceExtend)
 
void HandleSpellClick (WorldPacket &recvData)
 
void HandleMirrorImageDataRequest (WorldPacket &recvData)
 
void HandleRemoveGlyph (WorldPacket &recvData)
 
void HandleEquipmentSetSave (WorldPackets::EquipmentSet::SaveEquipmentSet &saveEquipmentSet)
 
void HandleEquipmentSetDelete (WorldPacket &recvData)
 
void HandleEquipmentSetUse (WorldPacket &recvData)
 
void HandleUITimeRequest (WorldPackets::Misc::UITimeRequest &recvData)
 
void HandleReadyForAccountDataTimes (WorldPacket &recvData)
 
void HandleQueryQuestsCompleted (WorldPackets::Quest::QueryQuestsCompleted &queryQuestsCompleted)
 
void HandleQuestPOIQuery (WorldPackets::Query::QuestPOIQuery &query)
 
void HandleEjectPassenger (WorldPacket &data)
 
void HandleEnterPlayerVehicle (WorldPacket &data)
 
void HandleUpdateProjectilePosition (WorldPacket &recvPacket)
 
void HandleUpdateMissileTrajectory (WorldPacket &recvPacket)
 
QueryCallbackProcessor & GetQueryProcessor ()
 
TransactionCallback & AddTransactionCallback (TransactionCallback &&callback)
 
SQLQueryHolderCallback & AddQueryHolderCallback (SQLQueryHolderCallback &&callback)
 

Static Public Member Functions

static void WriteMovementInfo (WorldPacket *data, MovementInfo *mi)
 

Public Attributes

time_t m_muteTime
 
std::atomic< time_t > m_timeOutTime
 

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.
 
void LogUnprocessedTail (WorldPacket *packet)
 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::shared_ptr< WorldSocket > m_Socket
 
std::string m_Address
 
AccountTypes _security
 
uint32 _accountId
 
std::string _accountName
 
uint8 m_expansion
 
std::unique_ptr< Warden > _warden
 
time_t _logoutTime
 
bool m_inQueue
 
bool 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
 
struct WorldSession::Addons _addons
 
uint32 recruiterId
 
bool isRecruiter
 
LockedQueue< WorldPacket * > _recvQueue
 
rbac::RBACData * _RBACData
 
uint32 expireTime
 
bool forceExit
 
ObjectGuid m_currentBankerGUID
 
std::unique_ptr< boost::circular_buffer< std::pair< int64, uint32 > > > _timeSyncClockDeltaQueue
 
int64 _timeSyncClockDelta
 
std::map< uint32, uint32 > _pendingTimeSyncRequests
 
uint32 _timeSyncNextCounter
 
uint32 _timeSyncTimer
 
time_t _calendarEventCreationCooldown
 
GameClient * _gameClient
 

Friends

class World
 

Detailed Description

Player session in the World.

Definition at line 550 of file WorldSession.h.

Constructor & Destructor Documentation

◆ WorldSession() [1/2]

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

WorldSession constructor.

Definition at line 114 of file WorldSession.cpp.

References GetAccountId(), LoginDatabase, m_Address, m_Socket, and ResetTimeOutTime().

◆ ~WorldSession()

WorldSession::~WorldSession ( )

WorldSession destructor.

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

Definition at line 162 of file WorldSession.cpp.

References _gameClient, _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

◆ AddInstanceEnterTime()

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

Definition at line 925 of file WorldSession.cpp.

References _instanceResetTimes.

Referenced by InstanceMap::AddPlayerToMap().

◆ AddQueryHolderCallback()

SQLQueryHolderCallback & WorldSession::AddQueryHolderCallback ( SQLQueryHolderCallback &&  callback)

◆ AddTransactionCallback()

TransactionCallback & WorldSession::AddTransactionCallback ( TransactionCallback &&  callback)

◆ AdjustClientMovementTime()

uint32 WorldSession::AdjustClientMovementTime ( uint32  time) const

◆ BuildPartyMemberStatsChangedPacket()

void WorldSession::BuildPartyMemberStatsChangedPacket ( Player *  player,
WorldPacket *  data 
)

Definition at line 719 of file GroupHandler.cpp.

References ObjectGuid::Empty, Pet::GetAuraUpdateMaskForRaid(), Player::GetAuraUpdateMaskForRaid(), AuraApplication::GetBase(), Unit::GetDisplayId(), AuraApplication::GetFlags(), Player::GetGroupUpdateFlag(), Object::GetGUID(), Unit::GetHealth(), Aura::GetId(), Unit::GetLevel(), Unit::GetMaxHealth(), Unit::GetMaxPower(), WorldObject::GetName(), Object::GetPackGUID(), Player::GetPet(), Position::GetPositionX(), Position::GetPositionY(), Unit::GetPower(), Unit::GetPowerType(), Unit::GetVehicle(), Unit::GetVisibleAura(), WorldObject::GetZoneId(), GROUP_UPDATE_FLAG_AURAS, GROUP_UPDATE_FLAG_CUR_HP, GROUP_UPDATE_FLAG_CUR_POWER, GROUP_UPDATE_FLAG_LEVEL, GROUP_UPDATE_FLAG_MAX_HP, GROUP_UPDATE_FLAG_MAX_POWER, GROUP_UPDATE_FLAG_NONE, GROUP_UPDATE_FLAG_PET_AURAS, GROUP_UPDATE_FLAG_PET_CUR_HP, GROUP_UPDATE_FLAG_PET_CUR_POWER, GROUP_UPDATE_FLAG_PET_GUID, GROUP_UPDATE_FLAG_PET_MAX_HP, GROUP_UPDATE_FLAG_PET_MAX_POWER, GROUP_UPDATE_FLAG_PET_MODEL_ID, GROUP_UPDATE_FLAG_PET_NAME, GROUP_UPDATE_FLAG_PET_POWER_TYPE, GROUP_UPDATE_FLAG_POSITION, GROUP_UPDATE_FLAG_POWER_TYPE, GROUP_UPDATE_FLAG_STATUS, GROUP_UPDATE_FLAG_VEHICLE_SEAT, GROUP_UPDATE_FLAG_ZONE, GROUP_UPDATE_FLAGS_COUNT, GroupUpdateLength, Object::HasFlag(), WorldPacket::Initialize(), Player::isAFK(), Unit::IsAlive(), Player::isDND(), Unit::IsFFAPvP(), Unit::IsPvP(), WorldObject::m_movementInfo, MAX_AURAS_GROUP_UPDATE, MEMBER_STATUS_AFK, MEMBER_STATUS_DEAD, MEMBER_STATUS_DND, MEMBER_STATUS_GHOST, MEMBER_STATUS_ONLINE, MEMBER_STATUS_PVP, MEMBER_STATUS_PVP_FFA, PLAYER_FLAGS, PLAYER_FLAGS_GHOST, MovementInfo::TransportInfo::seat, SMSG_PARTY_MEMBER_STATS, and MovementInfo::transport.

Referenced by Group::UpdatePlayerOutOfRange().

◆ CanOpenMailBox()

◆ CanSpeak()

bool WorldSession::CanSpeak ( ) const

◆ CanUseBank()

◆ CheckStableMaster()

◆ ComputeNewClockDelta()

void WorldSession::ComputeNewClockDelta ( )
private

Definition at line 1065 of file MovementHandler.cpp.

References _timeSyncClockDelta, and _timeSyncClockDeltaQueue.

Referenced by HandleTimeSyncResponse().

◆ DisallowHyperlinksAndMaybeKick()

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

◆ DoLootRelease()

void WorldSession::DoLootRelease ( ObjectGuid  lguid)

Definition at line 246 of file LootHandler.cpp.

References _player, GameObject::AddUse(), Creature::AllLootRemovedFromCorpse(), CLASS_ROGUE, ObjectGuid::Clear(), Loot::clear(), CORPSE_DYNFLAG_LOOTABLE, Player::DestroyItem(), Player::DestroyItemCount(), ObjectGuid::Empty, GameObjectValue::FishingHole, Object::ForceValuesUpdateAtIndex(), GAMEOBJECT_TYPE_DOOR, GAMEOBJECT_TYPE_FISHINGHOLE, GAMEOBJECT_TYPE_FISHINGNODE, Item::GetBagSlot(), Unit::GetClass(), ObjectAccessor::GetCorpse(), Item::GetCount(), Map::GetCreature(), Map::GetGameObject(), GameObject::GetGoType(), GameObject::GetGOValue(), Player::GetGroup(), Object::GetGUID(), Player::GetItemByGuid(), WorldObject::GetMap(), GameObject::GetOwnerGUID(), GetPlayer(), Item::GetSlot(), Item::GetTemplate(), GameObject::GetUseCount(), GO_ACTIVATED, GO_JUST_DEACTIVATED, GO_READY, ItemTemplate::HasFlag(), INTERACTION_DISTANCE, Unit::IsAlive(), ObjectGuid::IsCorpse(), ObjectGuid::IsGameObject(), Object::IsInWorld(), ObjectGuid::IsItem(), Loot::isLooted(), GameObject::IsWithinDistInMap(), WorldObject::IsWithinDistInMap(), ITEM_FLAG_HAS_LOOT, ITEM_FLAG_IS_MILLABLE, ITEM_FLAG_IS_PROSPECTABLE, Corpse::loot, Creature::loot, GameObject::loot, Item::loot, LOOT_PICKPOCKETING, Loot::loot_type, Item::m_lootGenerated, GameObjectValue::MaxOpens, Corpse::RemoveCorpseDynamicFlag(), Object::RemoveDynamicFlag(), Loot::RemoveLooter(), Unit::RemoveUnitFlag(), Loot::roundRobinPlayer, Player::SendLootRelease(), Player::SetLootGUID(), GameObject::SetLootState(), UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE, UNIT_FLAG_LOOTING, and GameObject::UseDoorOrButton().

Referenced by HandleAutostoreLootItemOpcode(), HandleLogoutRequestOpcode(), HandleLootMoneyOpcode(), HandleLootReleaseOpcode(), LogoutPlayer(), Player::RemoveFromWorld(), Player::SendLoot(), and Player::SwapItem().

◆ GetAccountData()

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

Definition at line 670 of file WorldSession.h.

Referenced by HandleRequestAccountData(), and SendAccountDataTimes().

◆ GetAccountId()

uint32 WorldSession::GetAccountId ( ) const
inline

Definition at line 593 of file WorldSession.h.

Referenced by World::AddSession_(), Warden::ApplyPenalty(), CharacterActionIpLogger::CharacterIPLogAction(), Spell::CheckCast(), Spell::EffectEnchantItemPerm(), Spell::EffectEnchantItemPrismatic(), Spell::EffectEnchantItemTmp(), WorldSession::DosProtection::EvaluateOpcode(), SocialMgr::GetFriendInfo(), GetPlayerInfo(), Player::GetsRecruitAFriendBonus(), HandleAcceptGrantLevel(), HandleAcceptTradeOpcode(), account_commandscript::HandleAccount2FARemoveCommand(), account_commandscript::HandleAccount2FASetupCommand(), account_commandscript::HandleAccountAddonCommand(), account_commandscript::HandleAccountCommand(), account_commandscript::HandleAccountCreateCommand(), account_commandscript::HandleAccountEmailCommand(), account_commandscript::HandleAccountLockCountryCommand(), account_commandscript::HandleAccountLockIpCommand(), account_commandscript::HandleAccountPasswordCommand(), account_commandscript::HandleAccountSetAddonCommand(), account_commandscript::HandleAccountSetSecLevelCommand(), HandleAuctionPlaceBid(), HandleAuctionSellItem(), HandleCharCreateOpcode(), HandleCharCustomize(), HandleCharCustomizeCallback(), HandleCharDeleteOpcode(), HandleCharEnum(), HandleCharEnumOpcode(), HandleCharRaceOrFactionChange(), HandleCharRenameCallBack(), HandleCharRenameOpcode(), WardenWin::HandleCheckResult(), HandleDismissCritter(), HandleForceSpeedChangeAck(), HandleGrantLevel(), HandleMailReturnToSender(), HandleMailTakeItem(), Guild::HandleMemberDepositMoney(), misc_commandscript::HandleMuteCommand(), misc_commandscript::HandlePInfoCommand(), HandlePlayerLogin(), HandlePlayerLoginOpcode(), HandleSendMail(), HandleSignPetition(), misc_commandscript::HandleUnmuteCommand(), HandleWhoIsOpcode(), World::HasRecentlyDisconnected(), WardenMac::Init(), WardenWin::Init(), InitializeSession(), KickPlayer(), LoadPermissions(), LoadPermissionsAsync(), LogCommandUsage(), LogoutPlayer(), moveItems(), ReadAddonsInfo(), WardenWin::RequestChecks(), SaveInstanceTimeRestrictions(), SaveTutorialsData(), AuctionHouseMgr::SendAuctionWonMail(), SetAccountData(), Guild::Member::SetStats(), Update(), WorldSession(), and ~WorldSession().

◆ GetAccountName()

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

◆ GetCalendarEventCreationCooldown()

time_t WorldSession::GetCalendarEventCreationCooldown ( ) const
inline

Definition at line 761 of file WorldSession.h.

Referenced by HandleCalendarAddEvent(), and HandleCalendarCopyEvent().

◆ GetExpansion()

◆ GetGameClient()

◆ GetLatency()

◆ GetPlayer()

Player * WorldSession::GetPlayer ( ) const
inline

Definition at line 595 of file WorldSession.h.

Referenced by ticket_commandscript::_HandleGMTicketResponseAppendCommand(), Guild::BroadcastToGuild(), CanUseBank(), cast_commandscript::CheckSpellExistsAndIsValid(), CheckStableMaster(), DisallowHyperlinksAndMaybeKick(), ArenaTeam::Disband(), DoLootRelease(), go_commandscript::DoTeleport(), ChatHandler::GetCreatureFromPlayerMapByDbGuid(), ChatHandler::GetNameLink(), ChatHandler::GetNearbyGameObject(), ChatHandler::GetObjectFromPlayerMapByDbGuid(), ChatHandler::GetPlayer(), ChatHandler::GetPlayerGroupAndGUIDByName(), ChatHandler::getSelectedCreature(), ChatHandler::getSelectedObject(), ChatHandler::getSelectedPlayer(), ChatHandler::getSelectedPlayerOrSelf(), GetSelectedPlayerPetOrOwn(), ChatHandler::getSelectedUnit(), Guild::HandleAcceptMember(), account_commandscript::HandleAccountCreateCommand(), account_commandscript::HandleAccountEmailCommand(), account_commandscript::HandleAccountOnlineListCommandWithParameters(), account_commandscript::HandleAccountPasswordCommand(), HandleActivateTaxiExpressOpcode(), HandleActivateTaxiOpcode(), HandleAddFriendOpcode(), HandleAddIgnoreOpcode(), misc_commandscript::HandleAddItemCommand(), misc_commandscript::HandleAddItemSetCommand(), misc_commandscript::HandleAddItemToCommand(), Guild::HandleAddNewRank(), misc_commandscript::HandleAppearCommand(), HandleAreaSpiritHealerQueryOpcode(), HandleAreaSpiritHealerQueueOpcode(), HandleAreaTriggerOpcode(), HandleArenaTeamInviteOpcode(), HandleAttackStopOpcode(), HandleAuctionHelloOpcode(), HandleAuctionListBidderItems(), HandleAuctionListItems(), HandleAuctionListOwnerItems(), HandleAuctionPlaceBid(), HandleAuctionRemoveItem(), HandleAuctionSellItem(), HandleAutostoreLootItemOpcode(), misc_commandscript::HandleBankCommand(), HandleBankerActivateOpcode(), HandleBattlemasterHelloOpcode(), HandleBattlemasterJoinArena(), HandleBattlemasterJoinOpcode(), HandleBinderActivateOpcode(), misc_commandscript::HandleBindSightCommand(), HandleBuybackItem(), Guild::HandleBuyBankTab(), HandleBuyItemInSlotOpcode(), HandleBuyItemOpcode(), HandleBuyStableSlot(), HandleCancelTempEnchantmentOpcode(), cast_commandscript::HandleCastBackCommand(), cast_commandscript::HandleCastCommand(), cast_commandscript::HandleCastDistCommand(), cheat_commandscript::HandleCasttimeCheatCommand(), HandleChangeSeatsOnControlledVehicle(), misc_commandscript::HandleChangeWeather(), HandleChannelCommand(), HandleChannelPassword(), HandleChannelPlayerCommand(), message_commandscript::HandleChannelSetOwnership(), character_commandscript::HandleCharacterLevelCommand(), HandleChatIgnoredOpcode(), HandleChatMessage(), cheat_commandscript::HandleCheatStatusCommand(), misc_commandscript::HandleComeToMeCommand(), HandleCompleteCinematic(), cheat_commandscript::HandleCoolDownCheatCommand(), misc_commandscript::HandleCooldownCommand(), misc_commandscript::HandleDamageCommand(), misc_commandscript::HandleDamageGoCommand(), HandleDelFriendOpcode(), HandleDelIgnoreOpcode(), modify_commandscript::HandleDeMorphCommand(), misc_commandscript::HandleDevCommand(), misc_commandscript::HandleDieCommand(), Guild::HandleDisband(), HandleDismissCritter(), HandleDuelAccepted(), HandleDuelCancelled(), HandleEjectPassenger(), cheat_commandscript::HandleExploreCheatCommand(), HandleFarSightOpcode(), misc_commandscript::HandleFreezeCommand(), 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(), misc_commandscript::HandleGetDistanceCommand(), HandleGetItemPurchaseData(), gm_commandscript::HandleGMFlyCommand(), gm_commandscript::HandleGMListIngameCommand(), HandleGMResponseResolve(), HandleGMSurveySubmit(), ticket_commandscript::HandleGMTicketAssignToCommand(), ticket_commandscript::HandleGMTicketCloseByIdCommand(), ticket_commandscript::HandleGMTicketCommentCommand(), ticket_commandscript::HandleGMTicketCompleteCommand(), HandleGMTicketCreateOpcode(), ticket_commandscript::HandleGMTicketDeleteByIdCommand(), HandleGMTicketDeleteOpcode(), HandleGMTicketGetTicketOpcode(), ticket_commandscript::HandleGMTicketUnAssignCommand(), HandleGMTicketUpdateOpcode(), gm_commandscript::HandleGMVisibleCommand(), go_commandscript::HandleGoBossCommand(), cheat_commandscript::HandleGodModeCheatCommand(), go_commandscript::HandleGoGraveyardCommand(), go_commandscript::HandleGoGridCommand(), go_commandscript::HandleGoInstanceCommand(), go_commandscript::HandleGoOffsetCommand(), HandleGossipHelloOpcode(), HandleGossipSelectOptionOpcode(), go_commandscript::HandleGoTicketCommand(), go_commandscript::HandleGoXYZCommand(), go_commandscript::HandleGoZoneXYCommand(), misc_commandscript::HandleGPSCommand(), HandleGroupAcceptOpcode(), HandleGroupAssistantLeaderOpcode(), HandleGroupChangeSubGroupOpcode(), HandleGroupDeclineOpcode(), HandleGroupDisbandOpcode(), HandleGroupInviteOpcode(), HandleGroupRaidConvertOpcode(), HandleGroupSetLeaderOpcode(), group_commandscript::HandleGroupSummonCommand(), HandleGroupUninviteGuidOpcode(), HandleGroupUninviteOpcode(), misc_commandscript::HandleGUIDCommand(), HandleGuildAcceptOpcode(), HandleGuildAddRankOpcode(), HandleGuildBankActivate(), HandleGuildBankBuyTab(), HandleGuildBankDepositMoney(), HandleGuildBankLogQuery(), HandleGuildBankMoneyWithdrawn(), HandleGuildBankQueryTab(), HandleGuildBankSetTabText(), HandleGuildBankSwapItems(), HandleGuildBankTextQuery(), HandleGuildBankUpdateTab(), HandleGuildBankWithdrawMoney(), HandleGuildDeclineOpcode(), HandleGuildDelete(), HandleGuildDeleteRank(), HandleGuildDemoteOpcode(), HandleGuildEventLogQueryOpcode(), HandleGuildInfoOpcode(), HandleGuildInviteOpcode(), HandleGuildLeaveOpcode(), HandleGuildOfficerRemoveMember(), HandleGuildPermissionsQuery(), HandleGuildPromoteOpcode(), HandleGuildRosterOpcode(), HandleGuildSetGuildMaster(), HandleGuildSetOfficerNoteOpcode(), HandleGuildSetPublicNoteOpcode(), HandleGuildSetRankPermissions(), HandleGuildUpdateInfoText(), HandleGuildUpdateMotdText(), honor_commandscript::HandleHonorAddKillCommand(), HandleInitiateTradeOpcode(), HandleInspectArenaTeamsOpcode(), HandleInspectOpcode(), instance_commandscript::HandleInstanceListBindsCommand(), instance_commandscript::HandleInstanceSaveDataCommand(), instance_commandscript::HandleInstanceUnbindCommand(), Guild::HandleInviteMember(), misc_commandscript::HandleItemMoveCommand(), HandleItemRefund(), HandleJoinChannel(), misc_commandscript::HandleKickPlayerCommand(), learn_commandscript::HandleLearnAllGMCommand(), learn_commandscript::HandleLearnAllPetTalentsCommand(), learn_commandscript::HandleLearnAllTalentsCommand(), learn_commandscript::HandleLearnCommand(), HandleLeaveChannel(), Guild::HandleLeaveMember(), character_commandscript::HandleLevelUpCommand(), HandleLfgGetStatus(), HandleLfgJoinOpcode(), HandleLfgLeaveOpcode(), HandleLfgProposalResultOpcode(), HandleLfgSetBootVoteOpcode(), HandleLfgSetCommentOpcode(), HandleLfgSetRolesOpcode(), HandleLfgTeleportOpcode(), misc_commandscript::HandleLinkGraveCommand(), list_commandscript::HandleListCreatureCommand(), HandleListInventoryOpcode(), list_commandscript::HandleListObjectCommand(), list_commandscript::HandleListRespawnsCommand(), list_commandscript::HandleListSpawnPointsCommand(), HandleLogoutCancelOpcode(), HandleLogoutRequestOpcode(), lookup_commandscript::HandleLookupPlayerIpCommand(), HandleLootMasterGiveOpcode(), HandleLootMethodOpcode(), HandleLootMoneyOpcode(), HandleLootOpcode(), HandleLootReleaseOpcode(), HandleLootRoll(), misc_commandscript::HandleMailBoxCommand(), Guild::HandleMemberDepositMoney(), Guild::HandleMemberLogout(), Guild::HandleMemberWithdrawMoney(), HandleMinimapPingOpcode(), mmaps_commandscript::HandleMmapLoadedTilesCommand(), mmaps_commandscript::HandleMmapLocCommand(), mmaps_commandscript::HandleMmapPathCommand(), mmaps_commandscript::HandleMmapStatsCommand(), mmaps_commandscript::HandleMmapTestArea(), modify_commandscript::HandleModifyMorphCommand(), modify_commandscript::HandleModifyPhaseCommand(), modify_commandscript::HandleModifyStandStateCommand(), HandleMountSpecialAnimOpcode(), HandleMovementOpcode(), HandleMoveSplineDoneOpcode(), HandleMoveTeleportAck(), HandleMoveTimeSkippedOpcode(), 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(), HandleOfferPetitionOpcode(), HandleOpenItemOpcode(), HandleOpenWrappedItemCallback(), HandleOptOutOfLootOpcode(), HandlePartyAssignmentOpcode(), HandlePetAction(), HandlePetActionHelper(), HandlePetCancelAuraOpcode(), HandlePetCastSpellOpcode(), pet_commandscript::HandlePetCreateCommand(), HandlePetitionBuyOpcode(), HandlePetitionShowSignatures(), HandlePetSetAction(), HandlePetSpellAutocastOpcode(), HandlePetStopAttack(), HandlePlayerLoginOpcode(), misc_commandscript::HandlePossessCommand(), cheat_commandscript::HandlePowerCheatCommand(), HandlePushQuestToParty(), HandleQueryCorpseLocation(), HandleQueryInspectAchievements(), HandleQuestgiverAcceptQuestOpcode(), HandleQuestgiverHelloOpcode(), HandleQuestLogSwapQuest(), HandleRaidReadyCheckFinishedOpcode(), HandleRaidReadyCheckOpcode(), HandleRaidTargetUpdateOpcode(), HandleRandomRollOpcode(), Guild::HandleRemoveMember(), Guild::HandleRemoveRank(), HandleRepairItemOpcode(), HandleRepopRequest(), HandleReportLag(), HandleRequestHonorStats(), HandleRequestPartyMemberStatsOpcode(), HandleRequestStabledPets(), HandleRequestVehicleExit(), reset_commandscript::HandleResetSpellsCommand(), reset_commandscript::HandleResetTalentsCommand(), misc_commandscript::HandleRespawnCommand(), HandleResurrectResponse(), Guild::HandleRoster(), misc_commandscript::HandleSaveCommand(), HandleSaveGuildEmblemOpcode(), HandleSellItemOpcode(), send_commandscript::HandleSendItemsCommand(), HandleSendMail(), send_commandscript::HandleSendMailCommand(), send_commandscript::HandleSendMoneyCommand(), HandleSetActionBarToggles(), HandleSetActionButtonOpcode(), Guild::HandleSetEmblem(), HandleSetFactionAtWar(), HandleSetFactionCheat(), Guild::HandleSetInfo(), Guild::HandleSetMemberNote(), Guild::HandleSetMOTD(), Guild::HandleSetNewGuildMaster(), Guild::HandleSetRankInfo(), HandleSetSavedInstanceExtend(), HandleSetTitleOpcode(), HandleSetWatchedFactionOpcode(), HandleSignPetition(), HandleSpiritHealerActivateOpcode(), HandleStablePet(), HandleStableSwapPet(), misc_commandscript::HandleSummonCommand(), HandleTabardVendorActivateOpcode(), HandleTalentWipeConfirmOpcode(), cheat_commandscript::HandleTaxiCheatCommand(), HandleTaxiQueryAvailableNodes(), tele_commandscript::HandleTeleAddCommand(), tele_commandscript::HandleTeleCommand(), HandleTogglePvP(), HandleTrainerBuySpellOpcode(), HandleTrainerListOpcode(), misc_commandscript::HandleUnbindSightCommand(), HandleUnlearnSkillOpcode(), misc_commandscript::HandleUnPossessCommand(), HandleUnstablePet(), misc_commandscript::HandleUnstuckCommand(), Guild::HandleUpdateMemberRank(), cheat_commandscript::HandleWaterWalkCheatCommand(), message_commandscript::HandleWhispersCommand(), HandleWhoIsOpcode(), wp_commandscript::HandleWpAddCommand(), wp_commandscript::HandleWpModifyCommand(), wp_commandscript::HandleWpShowCommand(), HandleZoneUpdateOpcode(), LogCommandUsage(), ArenaTeam::MassInviteToEvent(), Guild::MassInviteToEvent(), ChatHandler::needReportToTarget(), MapSessionFilter::Process(), WorldSessionFilter::Process(), WardenWin::RequestChecks(), ResetTimeOutTime(), SendAuctionHello(), Guild::SendBankList(), SendBindPoint(), SendDiscoverNewTaxiNode(), SendDoFlight(), SendEnchantmentLog(), World::SendGlobalGMMessage(), World::SendGMText(), SendLearnNewTaxiNode(), SendLfgBootProposalUpdate(), SendLfgPartyLockInfo(), SendLfgPlayerLockInfo(), SendLfgPlayerReward(), SendLfgQueueStatus(), SendLfgUpdateProposal(), SendListInventory(), Guild::SendLoginInfo(), Guild::SendMoneyInfo(), Guild::SendPermissions(), SendPetitionShowList(), PlayerMenu::SendQuestGiverOfferReward(), PlayerMenu::SendQuestGiverQuestDetails(), SendStablePet(), SendTaxiMenu(), SendTaxiStatus(), SendTrainerList(), Update(), ValidateHyperlinksAndMaybeKick(), and ValidateMovementInfo().

◆ GetPlayerInfo()

std::string WorldSession::GetPlayerInfo ( ) const

Definition at line 192 of file WorldSession.cpp.

References _player, GetAccountId(), Object::GetGUID(), WorldObject::GetName(), m_playerLoading, and Trinity::StringFormat().

Referenced by Handle_EarlyProccess(), Handle_NULL(), Handle_ServerSide(), HandleAddFriendOpcode(), HandleBattleFieldPortOpcode(), HandleChannelCommand(), HandleChannelPassword(), HandleChannelPlayerCommand(), HandleCharRaceOrFactionChangeCallback(), HandleChatMessage(), WardenWin::HandleCheckResult(), HandleGuildAddRankOpcode(), HandleGuildBankActivate(), HandleGuildBankBuyTab(), HandleGuildBankDepositMoney(), HandleGuildBankLogQuery(), HandleGuildBankQueryTab(), HandleGuildBankSetTabText(), HandleGuildBankTextQuery(), HandleGuildBankUpdateTab(), HandleGuildBankWithdrawMoney(), HandleGuildCreateOpcode(), HandleGuildDeclineOpcode(), HandleGuildDelete(), HandleGuildDeleteRank(), HandleGuildDemoteOpcode(), HandleGuildEventLogQueryOpcode(), HandleGuildInfoOpcode(), HandleGuildInviteOpcode(), HandleGuildLeaveOpcode(), HandleGuildOfficerRemoveMember(), HandleGuildPromoteOpcode(), HandleGuildQueryOpcode(), HandleGuildRosterOpcode(), HandleGuildSetGuildMaster(), HandleGuildSetOfficerNoteOpcode(), HandleGuildSetPublicNoteOpcode(), HandleGuildSetRankPermissions(), HandleGuildUpdateInfoText(), HandleGuildUpdateMotdText(), WardenMac::HandleHashResult(), WardenWin::HandleHashResult(), HandleJoinChannel(), HandleLeaveChannel(), HandleLfgGetStatus(), HandleLfgJoinOpcode(), HandleLfgLeaveOpcode(), HandleLfgPartyLockInfoRequestOpcode(), HandleLfgPlayerLockInfoRequestOpcode(), HandleLfgProposalResultOpcode(), HandleLfgSetBootVoteOpcode(), HandleLfgSetCommentOpcode(), HandleLfgSetRolesOpcode(), HandleLfgTeleportOpcode(), HandleLfrJoinOpcode(), HandleLfrLeaveOpcode(), WorldSocket::HandlePing(), Guild::HandleQuery(), Guild::HandleRoster(), HandleSaveGuildEmblemOpcode(), HandleSendMail(), Guild::HandleSetBankTabInfo(), Channel::List(), WorldSocket::LogOpcodeText(), LogUnexpectedOpcode(), LogUnprocessedTail(), lfg::LFGPlayerScript::OnLogin(), Warden::ProcessLuaCheckResponse(), WorldSocket::ReadDataHandler(), Guild::SendBankList(), Guild::SendBankLog(), Guild::SendCommandResult(), Guild::SendEventLog(), Guild::SendInfo(), SendLfgBootProposalUpdate(), SendLfgDisabled(), SendLfgJoinResult(), SendLfgLfrList(), SendLfgOfferContinue(), SendLfgPartyLockInfo(), SendLfgPlayerLockInfo(), SendLfgPlayerReward(), SendLfgQueueStatus(), SendLfgRoleCheckUpdate(), SendLfgRoleChosen(), SendLfgTeleportError(), SendLfgUpdateParty(), SendLfgUpdatePlayer(), SendLfgUpdateProposal(), Guild::SendLoginInfo(), Guild::SendMoneyInfo(), SendPacket(), Guild::SendPermissions(), Guild::SendSaveEmblemResult(), Guild::BankTab::SendText(), SendTrainerList(), Warden::Update(), Pet::Update(), Update(), and ValidateAndGetUnitBeingMoved().

◆ GetPlayerName()

◆ GetQueryProcessor()

QueryCallbackProcessor & WorldSession::GetQueryProcessor ( )
inline

◆ GetRBACData()

◆ GetRecruiterId()

uint32 WorldSession::GetRecruiterId ( ) const
inline

◆ GetRemoteAddress()

◆ GetSecurity()

◆ GetSessionDbcLocale()

◆ GetSessionDbLocaleIndex()

◆ GetTimezoneOffset()

◆ GetTrinityString()

◆ GetTutorialInt()

uint32 WorldSession::GetTutorialInt ( uint8  index) const
inline

Definition at line 678 of file WorldSession.h.

Referenced by HandleTutorialFlag().

◆ GetWarden() [1/2]

Warden * WorldSession::GetWarden ( )
inline

Definition at line 605 of file WorldSession.h.

Referenced by debug_commandscript::HandleDebugWardenForce().

◆ GetWarden() [2/2]

Warden const * WorldSession::GetWarden ( ) const
inline

Definition at line 606 of file WorldSession.h.

◆ Handle_EarlyProccess()

void WorldSession::Handle_EarlyProccess ( WorldPacket &  recvPacket)

◆ Handle_NULL()

void WorldSession::Handle_NULL ( WorldPacket &  recvPacket)

◆ Handle_ServerSide()

void WorldSession::Handle_ServerSide ( WorldPacket &  recvPacket)

◆ HandleAcceptGrantLevel()

◆ HandleAcceptTradeOpcode()

void WorldSession::HandleAcceptTradeOpcode ( WorldPacket &  recvPacket)

◆ HandleActivateTaxiExpressOpcode()

◆ HandleActivateTaxiOpcode()

◆ HandleAddFriendOpcode()

◆ HandleAddIgnoreOpcode()

◆ HandleAlterAppearance()

◆ HandleAreaSpiritHealerQueryOpcode()

◆ HandleAreaSpiritHealerQueueOpcode()

◆ HandleAreaTriggerOpcode()

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

Definition at line 563 of file MiscHandler.cpp.

References _player, Player::AreaExploredOrEventHappens(), WorldPackets::AreaTrigger::AreaTrigger::AreaTriggerID, Map::CANNOT_ENTER_CORPSE_IN_DIFFERENT_INSTANCE, Map::CANNOT_ENTER_DIFFICULTY_UNAVAILABLE, Map::CANNOT_ENTER_INSTANCE_BIND_MISMATCH, Map::CANNOT_ENTER_MAX_PLAYERS, Map::CANNOT_ENTER_NO_ENTRY, Map::CANNOT_ENTER_NOT_IN_RAID, Map::CANNOT_ENTER_TOO_MANY_INSTANCES, Map::CANNOT_ENTER_UNINSTANCED_DUNGEON, Map::CANNOT_ENTER_ZONE_IN_COMBAT, CONDITION_SOURCE_TYPE_AREATRIGGER_CLIENT_TRIGGERED, Player::GetBattleground(), Player::GetCorpseLocation(), Player::GetDifficultyID(), Group::GetDifficultyID(), Player::GetGroup(), Object::GetGUID(), WorldObject::GetMap(), WorldLocation::GetMapId(), WorldObject::GetName(), Player::GetOutdoorPvP(), GetPlayer(), Player::GetQuestStatus(), Player::GetSession(), GetSessionDbcLocale(), GetTrinityString(), Player::HasCorpse(), AreaTriggerEntry::ID, Unit::IsAlive(), Player::isDebugAreaTriggers, Map::IsDungeon(), Player::IsInAreaTriggerRadius(), Unit::IsInFlight(), LANG_DEBUG_AREATRIGGER_REACHED, LANG_INSTANCE_BIND_MISMATCH, ChatHandler::PSendSysMessage(), QUEST_STATUS_INCOMPLETE, Unit::RemovePvpFlag(), REST_FLAG_IN_TAVERN, Player::ResurrectPlayer(), sAreaTriggerStore, sConditionMgr, Player::SendDirectMessage(), Player::SendTransferAborted(), Player::SetRestFlag(), sMapMgr, sMapStore, SMSG_RAID_GROUP_ONLY, sObjectMgr, Player::SpawnCorpseBones(), sScriptMgr, STATUS_IN_PROGRESS, sWorld, AreaTriggerTeleport::target_mapId, AreaTriggerTeleport::target_Orientation, AreaTriggerTeleport::target_X, AreaTriggerTeleport::target_Y, AreaTriggerTeleport::target_Z, TC_LOG_DEBUG, TELE_TO_NOT_LEAVE_TRANSPORT, Player::TeleportTo(), Player::TeleportToBGEntryPoint(), ObjectGuid::ToString(), TRANSFER_ABORT_DIFFICULTY, TRANSFER_ABORT_MAX_PLAYERS, TRANSFER_ABORT_TOO_MANY_INSTANCES, TRANSFER_ABORT_ZONE_IN_COMBAT, and UNIT_BYTE2_FLAG_FFA_PVP.

Referenced by OpcodeTable::Initialize().

◆ HandleArenaTeamAcceptOpcode()

◆ HandleArenaTeamDeclineOpcode()

void WorldSession::HandleArenaTeamDeclineOpcode ( WorldPacket &  recvData)

Definition at line 203 of file ArenaTeamHandler.cpp.

References _player, Player::SetArenaTeamIdInvited(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleArenaTeamDisbandOpcode()

◆ HandleArenaTeamInviteOpcode()

◆ HandleArenaTeamLeaderOpcode()

◆ HandleArenaTeamLeaveOpcode()

◆ HandleArenaTeamQueryOpcode()

void WorldSession::HandleArenaTeamQueryOpcode ( WorldPacket &  recvData)

Definition at line 61 of file ArenaTeamHandler.cpp.

References sArenaTeamMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleArenaTeamRemoveOpcode()

◆ HandleArenaTeamRosterOpcode()

void WorldSession::HandleArenaTeamRosterOpcode ( WorldPacket &  recvData)

Definition at line 75 of file ArenaTeamHandler.cpp.

References sArenaTeamMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleAttackStopOpcode()

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

Definition at line 64 of file CombatHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ 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 29 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::Initialize().

◆ HandleAuctionHelloOpcode()

◆ HandleAuctionListBidderItems()

◆ HandleAuctionListItems()

◆ HandleAuctionListOwnerItems()

◆ HandleAuctionListPendingSales()

void WorldSession::HandleAuctionListPendingSales ( WorldPacket &  recvData)

◆ HandleAuctionPlaceBid()

◆ HandleAuctionRemoveItem()

◆ HandleAuctionSellItem()

void WorldSession::HandleAuctionSellItem ( WorldPacket &  recvData)

Definition at line 135 of file AuctionHouseHandler.cpp.

References _player, ACHIEVEMENT_CRITERIA_TYPE_CREATE_AUCTION, AuctionHouseObject::AddAuction(), AUCTION_ENTRY_FLAG_NONE, AUCTION_SELL_ITEM, AUCTIONHOUSE_NEUTRAL, AuctionEntry::auctionHouseEntry, AuctionEntry::bid, AuctionEntry::bidder, AuctionEntry::buyout, Item::CanBeTraded(), CharacterDatabase, Item::CloneItem(), CONFIG_ALLOW_TWO_SIDE_INTERACTION_AUCTION, Item::DeleteFromDB(), Item::DeleteFromInventoryDB(), AuctionEntry::deposit, ERR_AUCTION_DATABASE_ERROR, ERR_AUCTION_ITEM_NOT_FOUND, ERR_AUCTION_NOT_ENOUGHT_MONEY, ERR_AUCTION_OK, AuctionEntry::etime, AuctionEntry::expire_time, CreatureTemplate::faction, AuctionEntry::Flags, GetAccountId(), AuctionHouseMgr::GetAuctionHouseEntry(), Item::GetBagSlot(), Item::GetCount(), ObjectGuid::GetCounter(), Object::GetEntry(), Unit::GetFaction(), GameTime::GetGameTime(), Object::GetGUID(), AuctionEntry::GetHouseId(), ItemTemplate::GetId(), Player::GetItemByGuid(), Item::GetMaxStackCount(), WorldObject::GetName(), Item::GetNameForLocaleIdx(), Player::GetNPCIfCanInteractWith(), GetPlayer(), GetPlayerName(), Item::GetSlot(), Creature::GetSpawnId(), Item::GetTemplate(), Object::GetUInt32Value(), Player::HasEnoughMoney(), ItemTemplate::HasFlag(), HasPermission(), AuctionEntry::houseId, AuctionEntry::Id, SpawnData::id, AuctionHouseEntry::ID, Item::IsNotEmptyBag(), ITEM_CHANGED, ITEM_FIELD_DURATION, ITEM_FLAG_CONJURED, AuctionEntry::itemCount, AuctionEntry::itemEntry, AuctionEntry::itemGUIDLow, Player::ItemRemovedQuestCheck(), MAX_AUCTION_ITEMS, MAX_MONEY_AMOUNT, MIN_AUCTION_TIME, MINUTE, Player::MoveItemFromInventory(), AuctionEntry::owner, RATE_AUCTION_TIME, rbac::RBAC_PERM_LOG_GM_TRADE, Unit::RemoveAurasByType(), ByteBuffer::rfinish(), sAuctionMgr, Player::SaveInventoryAndGoldToDB(), Item::SaveToDB(), AuctionEntry::SaveToDB(), SendAuctionCommandResult(), Object::SendUpdateToPlayer(), Item::SetCount(), Item::SetState(), sLog, sObjectMgr, SPELL_AURA_FEIGN_DEATH, AuctionEntry::startbid, sWorld, TC_LOG_DEBUG, TC_LOG_ERROR, TC_LOG_INFO, ObjectGuid::ToString(), UNIT_NPC_FLAG_AUCTIONEER, UNIT_STATE_DIED, and Player::UpdateAchievementCriteria().

Referenced by OpcodeTable::Initialize().

◆ HandleAutoBankItemOpcode()

◆ HandleAutoEquipItemOpcode()

◆ HandleAutoEquipItemSlotOpcode()

void WorldSession::HandleAutoEquipItemSlotOpcode ( WorldPacket &  recvPacket)

◆ HandleAutoStoreBagItemOpcode()

◆ HandleAutoStoreBankItemOpcode()

◆ HandleAutostoreLootItemOpcode()

◆ HandleBankerActivateOpcode()

◆ HandleBattlefieldLeaveOpcode()

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

◆ HandleBattlefieldListOpcode()

◆ HandleBattleFieldPortOpcode()

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

Definition at line 295 of file BattleGroundHandler.cpp.

References _player, WorldPackets::Battleground::BattlefieldPort::AcceptedInvite, GroupQueueInfo::ArenaMatchmakerRating, BattlegroundQueueTypeId::BattlemasterListId, BG_DESERTION_TYPE_LEAVE_QUEUE, BattlegroundQueueTypeId::BracketId, BattlegroundMgr::BuildBattlegroundStatusActive(), BattlegroundMgr::BuildBattlegroundStatusFailed(), BattlegroundMgr::BuildBattlegroundStatusNone(), CHAR_INS_DESERTER_TRACK, CharacterDatabase, CONFIG_BATTLEGROUND_TRACK_DESERTERS, ERR_GROUP_JOIN_BATTLEGROUND_DESERTERS, Player::FinishTaxiFlight(), BattlegroundQueueTypeId::FromPacked(), Player::GetBattleground(), GetBattlegroundBracketByLevel(), Player::GetBattlegroundQueueIndex(), ObjectGuid::GetCounter(), Object::GetGUID(), Battleground::GetInstanceID(), Unit::GetLevel(), Battleground::GetMapId(), Battleground::GetMaxLevel(), WorldObject::GetName(), BattlegroundQueue::GetPlayerGroupInfoData(), GetPlayerInfo(), BattlegroundQueue::GetQueueId(), Battleground::GetStatus(), Battleground::GetTypeID(), Unit::HasAura(), Player::InBattleground(), Unit::IsAlive(), Battleground::isArena(), Battleground::isBattleground(), Player::IsDeserter(), Player::IsInvitedForBattlegroundQueueType(), GroupQueueInfo::IsInvitedToBGInstanceGUID, PLAYER_MAX_BATTLEGROUND_QUEUES, WorldPackets::Battleground::BattlefieldPort::QueueID, Player::RemoveBattlegroundQueueId(), BattlegroundQueue::RemovePlayer(), Player::ResurrectPlayer(), sBattlegroundMgr, SendPacket(), Player::SetBattlegroundEntryPoint(), Player::SetBattlegroundId(), Player::SetBGTeam(), PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt8(), Player::SpawnCorpseBones(), STATUS_IN_PROGRESS, STATUS_WAIT_JOIN, STATUS_WAIT_QUEUE, sWorld, TC_LOG_DEBUG, TC_LOG_ERROR, GroupQueueInfo::Team, BattlegroundQueueTypeId::TeamSize, ObjectGuid::ToString(), WorldPackets::Battleground::BattlefieldStatusNone::Write(), WorldPackets::Battleground::BattlefieldStatusActive::Write(), and WorldPackets::Battleground::GroupJoinedBattleground::Write().

Referenced by OpcodeTable::Initialize().

◆ HandleBattlegroundPlayerPositionsOpcode()

◆ HandleBattlemasterHelloOpcode()

◆ HandleBattlemasterJoinArena()

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

Definition at line 521 of file BattleGroundHandler.cpp.

References _player, Player::AddBattlegroundQueueId(), BattlegroundQueue::AddGroup(), BATTLEGROUND_AA, WorldPackets::Battleground::BattlemasterJoinArena::BattlemasterGuid, BattlegroundQueueTypeId::BattlemasterListId, BattlegroundMgr::BGQueueTypeId(), BattlegroundQueueTypeId::BracketId, BattlegroundMgr::BuildBattlegroundStatusFailed(), BattlegroundMgr::BuildBattlegroundStatusQueued(), BattlegroundMgr::BuildGroupJoinedBattlegroundPacket(), Group::CanJoinBattlegroundQueue(), Player::CanJoinToBattleground(), DISABLE_TYPE_BATTLEGROUND, ERR_BATTLEGROUND_JOIN_FAILED, ERR_LFG_CANT_USE_BATTLEGROUND, Player::GetArenaTeamId(), ArenaTeam::GetAverageMMR(), BattlegroundQueue::GetAverageQueueWaitTime(), GetBattlegroundBracketByLevel(), Player::GetBattlegroundQueueIndex(), PvPDifficultyEntry::GetBracketId(), Group::GetFirstMember(), Player::GetGroup(), Object::GetGUID(), Group::GetLeaderGUID(), Unit::GetLevel(), Battleground::GetMapId(), WorldObject::GetName(), Player::GetNPCIfCanInteractWith(), GetPlayer(), ArenaTeam::GetPreviousOpponents(), ArenaTeam::GetRating(), ArenaTeam::GetTypeBySlot(), Battleground::GetTypeID(), Player::HasFreeBattlegroundQueueId(), Player::InBattleground(), DisableMgr::IsDisabledFor(), WorldPackets::Battleground::BattlemasterJoinArena::IsRated, Player::isUsingLfg(), WorldPackets::Battleground::BattlemasterJoinArena::JoinAsGroup, GroupQueueInfo::JoinTime, LANG_ARENA_DISABLED, PLAYER_MAX_BATTLEGROUND_QUEUES, ChatHandler::PSendSysMessage(), sArenaTeamMgr, sBattlegroundMgr, Player::SendDirectMessage(), SendNotInArenaTeamPacket(), SendPacket(), Battleground::SetRated(), TC_LOG_DEBUG, TC_LOG_ERROR, BattlegroundQueueTypeId::TeamSize, WorldPackets::Battleground::BattlemasterJoinArena::TeamSizeIndex, ObjectGuid::ToString(), UNIT_NPC_FLAG_BATTLEMASTER, WorldPackets::Battleground::BattlefieldStatusQueued::Write(), and WorldPackets::Battleground::GroupJoinedBattleground::Write().

Referenced by OpcodeTable::Initialize().

◆ HandleBattlemasterJoinOpcode()

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

Definition at line 65 of file BattleGroundHandler.cpp.

References _player, Player::AddBattlegroundQueueId(), BattlegroundQueue::AddGroup(), BATTLEGROUND_RB, WorldPackets::Battleground::BattlemasterJoin::BattlemasterListID, BattlegroundQueueTypeId::BattlemasterListId, BattlegroundMgr::BGQueueTypeId(), BattlegroundQueueTypeId::BracketId, BattlegroundMgr::BuildBattlegroundStatusFailed(), BattlegroundMgr::BuildBattlegroundStatusQueued(), BattlegroundMgr::BuildGroupJoinedBattlegroundPacket(), Group::CanJoinBattlegroundQueue(), Player::CanJoinToBattleground(), DISABLE_TYPE_BATTLEGROUND, 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, BattlegroundQueue::GetAverageQueueWaitTime(), GetBattlegroundBracketByLevel(), Player::GetBattlegroundQueueIndex(), Player::GetBattlegroundQueueTypeId(), PvPDifficultyEntry::GetBracketId(), Group::GetFirstMember(), Player::GetGroup(), Object::GetGUID(), Group::GetLeaderGUID(), Unit::GetLevel(), Battleground::GetMapId(), Battleground::GetMaxPlayersPerTeam(), Group::GetMembersCount(), Battleground::GetMinPlayersPerTeam(), WorldObject::GetName(), GetPlayer(), Unit::HasAura(), Player::HasFreeBattlegroundQueueId(), Player::InBattleground(), Player::InBattlegroundQueue(), WorldPackets::Battleground::BattlemasterJoin::InstanceID, Player::IsDeserter(), DisableMgr::IsDisabledFor(), BattlegroundMgr::IsRandomBattleground(), WorldPackets::Battleground::BattlemasterJoin::JoinAsGroup, GroupQueueInfo::JoinTime, LANG_BG_DISABLED, PLAYER_MAX_BATTLEGROUND_QUEUES, ChatHandler::PSendSysMessage(), sBattlegroundMgr, sBattlemasterListStore, Player::SendDirectMessage(), SendPacket(), TC_LOG_DEBUG, TC_LOG_ERROR, BattlegroundQueueTypeId::TeamSize, ObjectGuid::ToString(), WorldPackets::Battleground::BattlefieldStatusQueued::Write(), and WorldPackets::Battleground::GroupJoinedBattleground::Write().

Referenced by OpcodeTable::Initialize().

◆ HandleBeginTradeOpcode()

void WorldSession::HandleBeginTradeOpcode ( WorldPacket &  recvPacket)

◆ HandleBfEntryInviteResponse()

void WorldSession::HandleBfEntryInviteResponse ( WorldPacket &  recvData)

Send by client on clicking in accept or refuse of invitation windows for join game.

Definition at line 143 of file BattlefieldHandler.cpp.

References _player, Object::GetGUID(), Battlefield::GetZoneId(), WorldObject::GetZoneId(), Battlefield::KickPlayerFromBattlefield(), Battlefield::PlayerAcceptInviteToWar(), sBattlefieldMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleBfQueueExitRequest()

void WorldSession::HandleBfQueueExitRequest ( WorldPacket &  recvData)

Send by client when exited battlefield.

Definition at line 169 of file BattlefieldHandler.cpp.

References _player, sBattlefieldMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleBfQueueInviteResponse()

void WorldSession::HandleBfQueueInviteResponse ( WorldPacket &  recvData)

Send by client when he click on accept for queue.

Definition at line 121 of file BattlefieldHandler.cpp.

References _player, Battlefield::PlayerAcceptInviteToQueue(), sBattlefieldMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleBinderActivateOpcode()

◆ HandleBugOpcode()

void WorldSession::HandleBugOpcode ( WorldPacket &  recvPacket)

◆ HandleBusyTradeOpcode()

void WorldSession::HandleBusyTradeOpcode ( WorldPacket &  recvPacket)

Definition at line 69 of file TradeHandler.cpp.

References _player, TRADE_STATUS_BUSY, and Player::TradeCancel().

Referenced by OpcodeTable::Initialize().

◆ HandleBuybackItem()

◆ HandleBuyBankSlotOpcode()

◆ HandleBuyItemInSlotOpcode()

void WorldSession::HandleBuyItemInSlotOpcode ( WorldPacket &  recvPacket)

◆ HandleBuyItemOpcode()

void WorldSession::HandleBuyItemOpcode ( WorldPacket &  recvPacket)

◆ HandleBuyStableSlot()

◆ HandleCalendarAddEvent()

◆ HandleCalendarArenaTeam()

void WorldSession::HandleCalendarArenaTeam ( WorldPackets::Calendar::CalendarArenaTeam &  calendarArenaTeam)

◆ HandleCalendarComplain()

◆ HandleCalendarCopyEvent()

◆ HandleCalendarEventInvite()

◆ HandleCalendarEventModeratorStatus()

◆ HandleCalendarEventRemoveInvite()

◆ HandleCalendarEventRsvp()

◆ HandleCalendarEventSignup()

◆ HandleCalendarEventStatus()

◆ HandleCalendarGetCalendar()

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

Definition at line 57 of file CalendarHandler.cpp.

References _player, HolidaysEntry::CalendarFilterType, WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::CalendarFlags, HolidaysEntry::CalendarFlags, WorldPackets::Calendar::CalendarSendCalendarEventInfo::Date, WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::Date, HolidaysEntry::Date, WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::DifficultyID, WorldPackets::Calendar::CalendarSendCalendarRaidResetInfo::Duration, WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::Duration, HolidaysEntry::Duration, 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::CalendarSendCalendarHolidayInfo::FilterType, WorldPackets::Calendar::CalendarSendCalendarEventInfo::Flags, Player::GetBoundInstances(), InstanceSave::GetDifficultyID(), GameTime::GetGameTime(), Object::GetGUID(), Player::GetGuildId(), InstanceSave::GetInstanceId(), InstanceSave::GetMapId(), InstanceSave::GetResetTime(), GetTimezoneOffset(), GameTime::GetWowTime(), WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::HolidayID, WorldPackets::Calendar::CalendarSendCalendar::Holidays, HolidaysEntry::ID, WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::InstanceID, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::InviteID, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::InviterGuid, WorldPackets::Calendar::CalendarSendCalendar::Invites, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::InviteType, MapEntry::IsRaid(), WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::Looping, HolidaysEntry::Looping, WorldPackets::Calendar::CalendarSendCalendarRaidLockoutInfo::MapID, WorldPackets::Calendar::CalendarSendCalendarRaidResetInfo::MapID, MAX_DIFFICULTY, MAX_HOLIDAY_DATES, MAX_HOLIDAY_DURATIONS, MAX_HOLIDAY_FLAGS, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::Moderator, WorldPackets::Calendar::CalendarSendCalendarRaidResetInfo::Offset, WorldPackets::Calendar::CalendarSendCalendarEventInfo::OwnerGuid, PAIR32_LOPART(), WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::Priority, HolidaysEntry::Priority, WorldPackets::Calendar::CalendarSendCalendar::RaidLockouts, WorldPackets::Calendar::CalendarSendCalendar::RaidOrigin, WorldPackets::Calendar::CalendarSendCalendar::RaidResets, WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::Region, HolidaysEntry::Region, sCalendarMgr, SendPacket(), WorldPackets::Calendar::CalendarSendCalendar::ServerNow, WorldPackets::Calendar::CalendarSendCalendar::ServerTime, WowTime::SetUtcTimeFromUnixTime(), sGameEventMgr, sHolidaysStore, SI64LIT, sInstanceSaveMgr, sMapStore, WorldPackets::Calendar::CalendarSendCalendarInviteInfo::Status, TC_LOG_DEBUG, WorldPackets::Calendar::CalendarSendCalendarHolidayInfo::TextureFilename, HolidaysEntry::TextureFilename, WorldPackets::Calendar::CalendarSendCalendarEventInfo::TextureID, ObjectGuid::ToString(), and WorldPackets::Calendar::CalendarSendCalendar::Write().

Referenced by OpcodeTable::Initialize().

◆ HandleCalendarGetEvent()

◆ HandleCalendarGetNumPending()

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

◆ HandleCalendarGuildFilter()

◆ HandleCalendarRemoveEvent()

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

◆ HandleCalendarUpdateEvent()

◆ HandleCancelAuraOpcode()

◆ HandleCancelAutoRepeatSpellOpcode()

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

Definition at line 494 of file SpellHandler.cpp.

References _player, CURRENT_AUTOREPEAT_SPELL, and Unit::InterruptSpell().

Referenced by OpcodeTable::Initialize().

◆ HandleCancelCastOpcode()

void WorldSession::HandleCancelCastOpcode ( WorldPackets::Spells::CancelCast &  cancelCast)

◆ HandleCancelChanneling()

◆ HandleCancelGrowthAuraOpcode()

◆ HandleCancelMountAuraOpcode()

◆ HandleCancelTempEnchantmentOpcode()

◆ HandleCancelTradeOpcode()

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

Definition at line 582 of file TradeHandler.cpp.

References _player, and Player::TradeCancel().

Referenced by OpcodeTable::Initialize().

◆ HandleCastSpellOpcode()

◆ HandleChangeSeatsOnControlledVehicle()

◆ HandleChannelCommand()

◆ HandleChannelPassword()

◆ HandleChannelPlayerCommand()

◆ HandleCharCreateOpcode()

void WorldSession::HandleCharCreateOpcode ( WorldPackets::Character::CreateCharacter &  charCreate)
Todo:
what to if account already has characters of both races?
Todo:
check if cinematic already shown? (already logged in?; cinematic field)

Definition at line 273 of file CharacterHandler.cpp.

References _queryProcessor, AsyncCallbackProcessor< T >::AddCallback(), ChrRacesEntry::Alliance, ALLIANCE, CHAR_CREATE_DISABLED, CHAR_CREATE_EXPANSION, CHAR_CREATE_EXPANSION_CLASS, CHAR_CREATE_FAILED, CHAR_CREATE_LEVEL_REQUIREMENT, CHAR_CREATE_UNIQUE_CLASS_LIMIT, CHAR_NAME_NO_NAME, CHAR_NAME_RESERVED, CHAR_NAME_SUCCESS, CHAR_SEL_CHECK_NAME, CharacterDatabase, ObjectMgr::CheckPlayerName(), CHRRACES_ALLIANCE_TYPE_NOT_PLAYABLE, CHRRACES_FLAGS_NOT_PLAYABLE, CLASS_DEATH_KNIGHT, CONFIG_CHARACTER_CREATING_DISABLED, CONFIG_CHARACTER_CREATING_DISABLED_CLASSMASK, CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK, CONFIG_CHARACTER_CREATING_MIN_LEVEL_FOR_DEATH_KNIGHT, CONFIG_DEATH_KNIGHTS_PER_REALM, CONFIG_MAX_PLAYER_LEVEL, WorldPackets::Character::CreateCharacter::CreateInfo, GetAccountId(), GetExpansion(), GetSessionDbcLocale(), ChrRacesEntry::HasFlag(), HasPermission(), HORDE, LOGIN_SEL_SUM_REALM_CHARACTERS, LoginDatabase, normalizePlayerName(), rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_CLASSMASK, rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_DEATH_KNIGHT, rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RACEMASK, rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RESERVEDNAME, rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_TEAMMASK, ChrClassesEntry::RequiredExpansion, ChrRacesEntry::RequiredExpansion, sChrClassesStore, sChrRacesStore, SendCharCreate(), QueryCallback::SetNextQuery(), PreparedStatementBase::setString(), PreparedStatementBase::setUInt32(), sObjectMgr, sWorld, TC_LOG_ERROR, and Player::TeamForRace().

Referenced by OpcodeTable::Initialize().

◆ HandleCharCustomize()

◆ HandleCharCustomizeCallback()

◆ HandleCharDeleteOpcode()

◆ HandleCharEnum()

◆ HandleCharEnumOpcode()

◆ HandleCharRaceOrFactionChange()

◆ HandleCharRaceOrFactionChangeCallback()

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

Definition at line 1600 of file CharacterHandler.cpp.

References ALLIANCE, 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, CHAR_UPD_GENDER_AND_APPEARANCE, 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, Field::GetInt32(), WorldLocation::GetMapId(), GetPlayerInfo(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), GetRemoteAddress(), GetSessionDbcLocale(), Field::GetString(), Field::GetUInt16(), Field::GetUInt32(), CharacterCacheEntry::GuildId, HasPermission(), HORDE, ObjectGuid::IsEmpty(), Field::IsNull(), Player::LeaveAllArenaTeams(), CharacterCacheEntry::Level, CharTitlesEntry::MaskID, CharacterCacheEntry::Name, normalizePlayerName(), Player::OfflineResurrect(), PLAYER_EXTRA_HAS_RACE_CHANGED, CharacterCacheEntry::Race, RACE_BLOODELF, RACE_DRAENEI, RACE_DWARF, RACE_GNOME, RACE_HUMAN, RACE_NIGHTELF, RACE_ORC, RACE_TAUREN, RACE_TROLL, RACE_UNDEAD_PLAYER, RACEMASK_ALLIANCE, RACEMASK_HORDE, 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::SavePositionInDB(), sCharacterCache, sCharTitlesStore, sDeathKnightTaxiNodesMask, SendCharFactionChange(), PreparedStatementBase::setFloat(), PreparedStatementBase::setInt32(), PreparedStatementBase::setString(), PreparedStatementBase::setUInt16(), PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt8(), sFactionStore, sGroupMgr, sGuildMgr, sHordeTaxiNodesMask, sObjectMgr, sWorld, TC_LOG_DEBUG, TC_LOG_WARN, Player::TeamForRace(), Trinity::Tokenize(), and WorldLocation::WorldRelocate().

◆ HandleCharRenameCallBack()

◆ HandleCharRenameOpcode()

◆ HandleChatIgnoredOpcode()

◆ HandleChatMessage()

void WorldSession::HandleChatMessage ( ChatMsg  type,
Language  lang,
std::string  msg,
std::string  target 
)

Definition at line 61 of file ChatHandler.cpp.

References _warden, Player::ChatFloodThrottle::ADDON, Player::AddWhisperWhiteList(), Player::autoReplyMsg, Group::BroadcastPacket(), CanSpeak(), CHAT_MSG_AFK, CHAT_MSG_BATTLEGROUND, CHAT_MSG_BATTLEGROUND_LEADER, CHAT_MSG_CHANNEL, CHAT_MSG_DND, CHAT_MSG_EMOTE, CHAT_MSG_GUILD, 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_ADDON_CHANNEL, CONFIG_ALLOW_TWO_SIDE_INTERACTION_GROUP, CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD, CONFIG_CHAT_CHANNEL_LEVEL_REQ, CONFIG_CHAT_EMOTE_LEVEL_REQ, CONFIG_CHAT_FAKE_MESSAGE_PREVENTING, CONFIG_CHAT_PARTY_RAID_WARNINGS, CONFIG_CHAT_SAY_LEVEL_REQ, CONFIG_CHAT_WHISPER_LEVEL_REQ, CONFIG_CHAT_YELL_LEVEL_REQ, ObjectAccessor::FindConnectedPlayerByName(), Unit::GetAuraEffectsByType(), ChannelMgr::GetChannelForPlayerByNamePart(), GameTime::GetGameTime(), Player::GetGroup(), Object::GetGUID(), Player::GetGuildId(), GetLanguageDescByID(), Unit::GetLevel(), Group::GetMemberGroup(), WorldObject::GetName(), Player::GetOriginalGroup(), GetPlayer(), GetPlayerInfo(), Player::GetSession(), Player::GetTeam(), GetTrinityString(), GM_SILENCE_AURA, Unit::HasAura(), HasPermission(), Player::HasSkill(), WorldPackets::Chat::Chat::Initialize(), Player::isAcceptWhispers(), Player::isAFK(), Unit::IsAlive(), Group::IsAssistant(), Group::isBGGroup(), Player::isDND(), Player::IsGameMaster(), Player::IsGameMasterAcceptingWhispers(), Unit::IsInCombat(), Player::IsInWhisperWhiteList(), Group::IsLeader(), isNasty(), Group::isRaidGroup(), LANG_ADDON, LANG_CHANNEL_REQ, LANG_GM_SILENCE, LANG_NOT_LEARNED_LANGUAGE, LANG_PLAYER_AFK_DEFAULT, LANG_PLAYER_DND_DEFAULT, LANG_SAY_REQ, LANG_UNIVERSAL, LANG_UNKNOWN_LANGUAGE, LANG_WAIT_BEFORE_SPEAKING, LANG_WHISPER_REQ, m_muteTime, MAX_CHAT_MSG_TYPE, normalizePlayerName(), rbac::RBAC_PERM_CAN_FILTER_WHISPERS, rbac::RBAC_PERM_SKIP_CHECK_CHAT_CHANNEL_REQ, rbac::RBAC_PERM_TWO_SIDE_INTERACTION_CHAT, Player::ChatFloodThrottle::REGULAR, Player::Say(), secsToTimeString(), SendNotification(), SendPlayerNotFoundNotice(), SendWrongFactionNotice(), sGuildMgr, LanguageDesc::skill_id, SPELL_AURA_COMPREHEND_LANGUAGE, SPELL_AURA_MOD_LANGUAGE, sScriptMgr, sWorld, TC_LOG_ERROR, Player::TextEmote(), Player::ToggleAFK(), Player::ToggleDND(), Player::UpdateSpeakTime(), ValidateHyperlinksAndMaybeKick(), Player::Whisper(), Player::WhisperAddon(), WorldPackets::Chat::Chat::Write(), and Player::Yell().

Referenced by HandleChatMessageOpcode().

◆ HandleChatMessageOpcode()

◆ HandleClearTradeItemOpcode()

void WorldSession::HandleClearTradeItemOpcode ( WorldPacket &  recvPacket)

Definition at line 770 of file TradeHandler.cpp.

References _player, Player::m_trade, TradeData::SetItem(), and TRADE_SLOT_COUNT.

Referenced by OpcodeTable::Initialize().

◆ HandleClientCastFlags()

void WorldSession::HandleClientCastFlags ( WorldPacket &  recvPacket,
uint8  castFlags,
SpellCastTargets &  targets 
)

◆ HandleComplainOpcode()

void WorldSession::HandleComplainOpcode ( WorldPacket &  recvData)

◆ HandleCompleteCinematic()

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

◆ HandleCompleteMovie()

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

Definition at line 809 of file MiscHandler.cpp.

References _player, Player::GetMovie(), Player::SetMovie(), and sScriptMgr.

Referenced by OpcodeTable::Initialize().

◆ HandleContactListOpcode()

void WorldSession::HandleContactListOpcode ( WorldPackets::Social::SendContactList &  packet)

◆ HandleCreatureQueryOpcode()

◆ HandleDeclinePetition()

◆ HandleDelFriendOpcode()

◆ HandleDelIgnoreOpcode()

◆ HandleDestroyItemOpcode()

◆ HandleDismissControlledVehicle()

◆ HandleDismissCritter()

◆ HandleDuelAccepted()

◆ HandleDuelCancelled()

◆ HandleEjectPassenger()

◆ HandleEmoteOpcode()

◆ HandleEnterPlayerVehicle()

void WorldSession::HandleEnterPlayerVehicle ( WorldPacket &  data)

◆ HandleEquipmentSetDelete()

void WorldSession::HandleEquipmentSetDelete ( WorldPacket &  recvData)

◆ HandleEquipmentSetSave()

◆ HandleEquipmentSetUse()

◆ HandleFarSightOpcode()

◆ HandleFeatherFallAck()

◆ HandleForceSpeedChangeAck()

void WorldSession::HandleForceSpeedChangeAck ( WorldPacket &  recvData)

Definition at line 557 of file MovementHandler.cpp.

References _player, AdjustClientMovementTime(), ASSERT, AsUnderlyingType(), baseMoveSpeed, CMSG_FORCE_FLIGHT_BACK_SPEED_CHANGE_ACK, CMSG_FORCE_FLIGHT_SPEED_CHANGE_ACK, CMSG_FORCE_PITCH_RATE_CHANGE_ACK, CMSG_FORCE_RUN_BACK_SPEED_CHANGE_ACK, CMSG_FORCE_RUN_SPEED_CHANGE_ACK, CMSG_FORCE_SWIM_BACK_SPEED_CHANGE_ACK, CMSG_FORCE_SWIM_SPEED_CHANGE_ACK, CMSG_FORCE_TURN_RATE_CHANGE_ACK, CMSG_FORCE_WALK_SPEED_CHANGE_ACK, CONFIG_PENDING_MOVE_CHANGES_TIMEOUT, GetAccountId(), GetGameClient(), WorldObject::GetName(), WorldPacket::GetOpcode(), GetOpcodeNameForLogging(), Player::GetSession(), ObjectAccessor::GetUnit(), MovementInfo::guid, Unit::HasPendingMovementChange(), GameClient::IsAllowedToMove(), Unit::IsControlledByPlayer(), KickPlayer(), WorldObject::m_movementInfo, MOVE_FLIGHT, MOVE_FLIGHT_BACK, MOVE_PITCH_RATE, MOVE_RUN, MOVE_RUN_BACK, MOVE_SWIM, MOVE_SWIM_BACK, MOVE_TURN_RATE, MOVE_WALK, PlayerMovementPendingChange::movementChangeType, PlayerMovementPendingChange::movementCounter, PlayerMovementPendingChange::newValue, Unit::PeakFirstPendingMovementChange(), playerBaseMoveSpeed, Unit::PopPendingMovementChange(), MovementInfo::pos, RATE_CHANGE_PITCH, RATE_CHANGE_TURN, ObjectGuid::ReadAsPacked(), ReadMovementInfo(), ByteBuffer::rfinish(), MovementPacketSender::SendSpeedChangeToObservers(), Unit::SetSpeedRateReal(), SPEED_CHANGE_FLIGHT_BACK_SPEED, SPEED_CHANGE_FLIGHT_SPEED, SPEED_CHANGE_RUN, SPEED_CHANGE_RUN_BACK, SPEED_CHANGE_SWIM, SPEED_CHANGE_SWIM_BACK, SPEED_CHANGE_WALK, sWorld, TC_LOG_DEBUG, TC_LOG_ERROR, TC_LOG_INFO, MovementInfo::time, and Unit::UpdatePosition().

Referenced by OpcodeTable::Initialize().

◆ HandleGameObjectQueryOpcode()

◆ HandleGameobjectReportUse()

◆ HandleGameObjectUseOpcode()

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

Definition at line 293 of file SpellHandler.cpp.

References GetPlayer(), and WorldPackets::GameObject::GameObjUse::Guid.

Referenced by OpcodeTable::Initialize().

◆ HandleGetItemPurchaseData()

◆ HandleGetMailList()

◆ HandleGMResponseResolve()

◆ HandleGMSurveySubmit()

◆ HandleGMTicketCreateOpcode()

◆ HandleGMTicketDeleteOpcode()

void WorldSession::HandleGMTicketDeleteOpcode ( WorldPacket &  recvPacket)

◆ HandleGMTicketGetTicketOpcode()

void WorldSession::HandleGMTicketGetTicketOpcode ( WorldPackets::Ticket::GMTicketGetTicket &  packet)

Definition at line 171 of file TicketHandler.cpp.

References GetPlayer(), SendQueryTimeResponse(), and sTicketMgr.

Referenced by OpcodeTable::Initialize().

◆ HandleGMTicketSystemStatusOpcode()

◆ HandleGMTicketUpdateOpcode()

◆ HandleGossipHelloOpcode()

◆ HandleGossipSelectOptionOpcode()

◆ HandleGrantLevel()

◆ HandleGroupAcceptOpcode()

◆ HandleGroupAssistantLeaderOpcode()

void WorldSession::HandleGroupAssistantLeaderOpcode ( WorldPacket &  recvData)

◆ HandleGroupChangeSubGroupOpcode()

◆ HandleGroupDeclineOpcode()

◆ HandleGroupDisbandOpcode()

◆ HandleGroupInviteOpcode()

◆ HandleGroupRaidConvertOpcode()

◆ HandleGroupSetLeaderOpcode()

void WorldSession::HandleGroupSetLeaderOpcode ( WorldPacket &  recvPacket)

◆ HandleGroupUninviteGuidOpcode()

◆ HandleGroupUninviteOpcode()

◆ HandleGuildAcceptOpcode()

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

Definition at line 60 of file GuildHandler.cpp.

References GetPlayer(), sGuildMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleGuildAddRankOpcode()

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

◆ HandleGuildBankActivate()

◆ HandleGuildBankBuyTab()

◆ HandleGuildBankDepositMoney()

◆ HandleGuildBankLogQuery()

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

◆ HandleGuildBankMoneyWithdrawn()

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

Definition at line 230 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::Initialize().

◆ HandleGuildBankQueryTab()

◆ HandleGuildBankSetTabText()

◆ HandleGuildBankSwapItems()

◆ HandleGuildBankTextQuery()

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

◆ HandleGuildBankUpdateTab()

◆ HandleGuildBankWithdrawMoney()

◆ HandleGuildCreateOpcode()

void WorldSession::HandleGuildCreateOpcode ( WorldPackets::Guild::GuildCreate &  packet)

◆ HandleGuildDeclineOpcode()

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

◆ HandleGuildDelete()

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

Definition at line 122 of file GuildHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleGuildDeleteRank()

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

Definition at line 181 of file GuildHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleGuildDemoteOpcode()

void WorldSession::HandleGuildDemoteOpcode ( WorldPackets::Guild::GuildDemoteMember &  demote)

◆ HandleGuildEventLogQueryOpcode()

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

Definition at line 222 of file GuildHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleGuildInfoOpcode()

void WorldSession::HandleGuildInfoOpcode ( WorldPackets::Guild::GuildGetInfo &  packet)

Definition at line 78 of file GuildHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleGuildInviteOpcode()

void WorldSession::HandleGuildInviteOpcode ( WorldPackets::Guild::GuildInviteByName &  packet)

◆ HandleGuildLeaveOpcode()

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

Definition at line 114 of file GuildHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleGuildOfficerRemoveMember()

void WorldSession::HandleGuildOfficerRemoveMember ( WorldPackets::Guild::GuildOfficerRemoveMember &  packet)

◆ HandleGuildPermissionsQuery()

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

Definition at line 236 of file GuildHandler.cpp.

References GetPlayer().

Referenced by OpcodeTable::Initialize().

◆ HandleGuildPromoteOpcode()

void WorldSession::HandleGuildPromoteOpcode ( WorldPackets::Guild::GuildPromoteMember &  promote)

◆ HandleGuildQueryOpcode()

void WorldSession::HandleGuildQueryOpcode ( WorldPackets::Guild::QueryGuildInfo &  query)

◆ HandleGuildRosterOpcode()

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

◆ HandleGuildSetGuildMaster()

void WorldSession::HandleGuildSetGuildMaster ( WorldPackets::Guild::GuildSetGuildMaster &  packet)

◆ HandleGuildSetOfficerNoteOpcode()

◆ HandleGuildSetPublicNoteOpcode()

◆ HandleGuildSetRankPermissions()

◆ HandleGuildUpdateInfoText()

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

◆ HandleGuildUpdateMotdText()

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

◆ HandleHearthAndResurrect()

◆ HandleIgnoreTradeOpcode()

void WorldSession::HandleIgnoreTradeOpcode ( WorldPacket &  recvPacket)

Definition at line 64 of file TradeHandler.cpp.

References _player, TRADE_STATUS_IGNORE_YOU, and Player::TradeCancel().

Referenced by OpcodeTable::Initialize().

◆ HandleInitiateTradeOpcode()

◆ HandleInspectArenaTeamsOpcode()

void WorldSession::HandleInspectArenaTeamsOpcode ( WorldPacket &  recvData)

◆ HandleInspectOpcode()

◆ HandleInstanceLockResponse()

◆ HandleItemNameQueryOpcode()

◆ HandleItemQuerySingleOpcode()

◆ HandleItemRefund()

void WorldSession::HandleItemRefund ( WorldPacket &  recvData)

◆ HandleItemTextQuery()

void WorldSession::HandleItemTextQuery ( WorldPacket &  recvData)

Handles the packet sent by the client when requesting information about item text.

This function is called when player clicks on item which has some flag set

Definition at line 1153 of file ItemHandler.cpp.

References _player, Player::GetItemByGuid(), SendPacket(), SMSG_ITEM_TEXT_QUERY_RESPONSE, TC_LOG_DEBUG, and ObjectGuid::ToString().

Referenced by OpcodeTable::Initialize().

◆ HandleJoinChannel()

◆ HandleLearnPreviewTalents()

void WorldSession::HandleLearnPreviewTalents ( WorldPackets::Talent::LearnPreviewTalents &  learnPreviewTalents)

◆ HandleLearnPreviewTalentsPet()

void WorldSession::HandleLearnPreviewTalentsPet ( WorldPacket &  recvPacket)

◆ HandleLearnTalentOpcode()

◆ HandleLeaveChannel()

◆ HandleLfgGetStatus()

void WorldSession::HandleLfgGetStatus ( WorldPacket &  recvData)

◆ HandleLfgJoinOpcode()

◆ HandleLfgLeaveOpcode()

void WorldSession::HandleLfgLeaveOpcode ( WorldPackets::LFG::LFGLeave &  lfgleave)

◆ HandleLfgPartyLockInfoRequestOpcode()

void WorldSession::HandleLfgPartyLockInfoRequestOpcode ( WorldPacket &  recvData)

Definition at line 231 of file LFGHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleLfgPlayerLockInfoRequestOpcode()

void WorldSession::HandleLfgPlayerLockInfoRequestOpcode ( WorldPacket &  recvData)

Definition at line 154 of file LFGHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleLfgProposalResultOpcode()

void WorldSession::HandleLfgProposalResultOpcode ( WorldPacket &  recvData)

Definition at line 92 of file LFGHandler.cpp.

References Object::GetGUID(), GetPlayer(), GetPlayerInfo(), sLFGMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleLfgSetBootVoteOpcode()

void WorldSession::HandleLfgSetBootVoteOpcode ( WorldPacket &  recvData)

Definition at line 133 of file LFGHandler.cpp.

References Object::GetGUID(), GetPlayer(), GetPlayerInfo(), sLFGMgr, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleLfgSetCommentOpcode()

void WorldSession::HandleLfgSetCommentOpcode ( WorldPacket &  recvData)

Definition at line 122 of file LFGHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleLfgSetRolesOpcode()

void WorldSession::HandleLfgSetRolesOpcode ( WorldPacket &  recvData)

◆ HandleLfgTeleportOpcode()

void WorldSession::HandleLfgTeleportOpcode ( WorldPacket &  recvData)

Definition at line 144 of file LFGHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleLfrJoinOpcode()

void WorldSession::HandleLfrJoinOpcode ( WorldPacket &  recvData)

Definition at line 271 of file LFGHandler.cpp.

References GetPlayerInfo(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleLfrLeaveOpcode()

void WorldSession::HandleLfrLeaveOpcode ( WorldPacket &  recvData)

Definition at line 280 of file LFGHandler.cpp.

References GetPlayerInfo(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleListInventoryOpcode()

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

◆ HandleLogoutCancelOpcode()

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

◆ HandleLogoutRequestOpcode()

◆ HandleLootMasterGiveOpcode()

◆ HandleLootMethodOpcode()

◆ HandleLootMoneyOpcode()

◆ HandleLootOpcode()

◆ HandleLootReleaseOpcode()

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

◆ HandleLootRoll()

◆ HandleMailCreateTextItem()

◆ HandleMailDelete()

◆ HandleMailMarkAsRead()

◆ HandleMailReturnToSender()

◆ HandleMailTakeItem()

◆ HandleMailTakeMoney()

◆ HandleMinimapPingOpcode()

void WorldSession::HandleMinimapPingOpcode ( WorldPacket &  recvData)

◆ HandleMirrorImageDataRequest()

◆ HandleMountSpecialAnimOpcode()

void WorldSession::HandleMountSpecialAnimOpcode ( WorldPacket &  recvdata)

◆ HandleMoveGravityDisableAck()

◆ HandleMoveGravityEnableAck()

◆ HandleMoveHoverAck()

◆ HandleMoveKnockBackAck()

◆ HandleMovementOpcode()

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

Definition at line 406 of file MovementHandler.cpp.

References _player, AdjustClientMovementTime(), AURA_INTERRUPT_FLAG_LANDING, AURA_INTERRUPT_FLAG_TURNING, Player::CheckOutdoorsAuraRequirements(), CMSG_MOVE_SET_FLY, DAMAGE_FALL_TO_VOID, EMOTE_ONESHOT_NONE, Player::EnvironmentalDamage(), Movement::MoveSpline::Finalized(), MovementInfo::flags, GAMEOBJECT_TYPE_TRANSPORT, Player::GetBattleground(), Player::GetDebugInfo(), Unit::GetEmoteState(), Position::GetExactDist2d(), Map::GetGameObject(), GameObject::GetGoType(), Object::GetGUID(), WorldObject::GetMap(), Map::GetMinHeight(), Position::GetOrientation(), GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), WorldObject::GetTransport(), Map::GetTransport(), Unit::GetVehicle(), MovementInfo::guid, MovementInfo::TransportInfo::guid, Player::HandleFall(), Battleground::HandlePlayerUnderMap(), MovementInfo::HasMovementFlag(), Unit::IsAlive(), Player::IsBeingTeleported(), Unit::IsInFlight(), Unit::IsSitState(), Trinity::IsValidMapCoord(), Player::KillPlayer(), WorldObject::m_movementInfo, MOVEMENTFLAG_MASK_MOVING, MOVEMENTFLAG_MASK_TURNING, MOVEMENTFLAG_ONTRANSPORT, Unit::movespline, MSG_MOVE_FALL_LAND, MSG_MOVE_START_SWIM, MSG_MOVE_STOP, MSG_MOVE_STOP_ASCEND, MSG_MOVE_STOP_PITCH, MSG_MOVE_STOP_STRAFE, MSG_MOVE_STOP_SWIM, MSG_MOVE_STOP_TURN, PLAYER_FLAGS, PLAYER_FLAGS_IS_OUT_OF_BOUNDS, MovementInfo::pos, MovementInfo::TransportInfo::pos, Unit::RemoveAurasWithInterruptFlags(), Object::RemoveFlag(), MovementInfo::RemoveMovementFlag(), Transport::RemovePassenger(), MovementInfo::TransportInfo::Reset(), WorldObject::SendMessageToSet(), Unit::SetEmoteState(), Object::SetFlag(), Position::SetOrientation(), Unit::SetStandState(), SIZE_OF_GRIDS, WorldPackets::Movement::MoveUpdate::Status, TC_LOG_DEBUG, MovementInfo::time, Object::ToPlayer(), MovementInfo::transport, UNIT_STAND_STATE_STAND, Player::UpdateFallInformationIfNeed(), Unit::UpdatePosition(), ValidateAndGetUnitBeingMoved(), ValidateMovementInfo(), VEHICLE_SEAT_FLAG_ALLOW_TURNING, and WorldPackets::Movement::MoveUpdate::Write().

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

◆ HandleMovementOpcodes()

◆ HandleMoveNotActiveMover()

◆ HandleMoveRootAck()

◆ HandleMoveSetCanFlyAckOpcode()

◆ HandleMoveSetCanTransitionBetweenSwinAndFlyAck()

void WorldSession::HandleMoveSetCanTransitionBetweenSwinAndFlyAck ( WorldPacket &  recvData)

◆ HandleMoveSetCollisionHgtAck()

◆ HandleMoveSplineDoneOpcode()

◆ HandleMoveTeleportAck()

◆ HandleMoveTimeSkippedOpcode()

◆ HandleMoveUnRootAck()

◆ HandleMoveWaterWalkAck()

◆ HandleMoveWorldportAck()

void WorldSession::HandleMoveWorldportAck ( )

Definition at line 193 of file MovementHandler.cpp.

References Map::AddPlayerToMap(), InstanceTemplate::AllowMount, BATTLEGROUND_TYPE_NONE, Map::CannotEnter(), WorldObject::CastSpell(), Player::CheckInstanceValidity(), Player::FinishTaxiFlight(), Player::GetBattleground(), Player::GetBattlegroundId(), Player::GetCorpseLocation(), MotionMaster::GetCurrentMovementGenerator(), Map::GetDifficultyID(), GameTime::GetGameTime(), Object::GetGUID(), Unit::GetHoverOffset(), Map::GetId(), WorldObject::GetMap(), GetMapDifficultyData(), WorldLocation::GetMapId(), Map::GetMapName(), Unit::GetMotionMaster(), WorldObject::GetName(), Position::GetOrientation(), GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), Player::GetTeleportDest(), Player::GetTeleportOptions(), WorldObject::GetZoneAndAreaId(), Object::HasFlag(), MapEntry::ID, Player::InBattleground(), MovementGenerator::Initialize(), Unit::IsAlive(), MapEntry::IsBattlegroundOrArena(), Player::IsBeingTeleportedFar(), MapEntry::IsDungeon(), PvPInfo::IsHostile, Unit::IsInFlight(), Player::IsInvitedForBattlegroundInstance(), Object::IsInWorld(), Unit::IsPvP(), MapManager::IsValidMapCoord(), LogoutPlayer(), Player::m_homebindMapId, Player::m_homebindX, Player::m_homebindY, Player::m_homebindZ, Player::m_InstanceValid, PLAYER_FLAGS, PLAYER_FLAGS_IN_PVP, Player::ProcessDelayedOperations(), Player::pvpInfo, Position::Relocate(), Unit::RemoveAurasByType(), Map::RemovePlayerFromMap(), Player::ResetMap(), Player::ResummonPetTemporaryUnSummonedIfAny(), Player::ResurrectPlayer(), Player::SendInitialPacketsAfterAddToMap(), Player::SendInitialPacketsBeforeAddToMap(), Player::SendInstanceResetWarning(), Player::SetBattlegroundId(), Player::SetBGTeam(), Player::SetFallInformation(), Player::SetMap(), Player::SetSemaphoreTeleportFar(), sInstanceSaveMgr, sMapMgr, sMapStore, sObjectMgr, Player::SpawnCorpseBones(), SPELL_AURA_MOUNTED, TC_LOG_ERROR, TELE_REVIVE_AT_TELEPORT, Player::TeleportTo(), ObjectGuid::ToString(), Player::UpdatePvP(), and Player::UpdateZone().

Referenced by HandleMoveWorldportAckOpcode(), and LogoutPlayer().

◆ HandleMoveWorldportAckOpcode()

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

Definition at line 187 of file MovementHandler.cpp.

References HandleMoveWorldportAck(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleNameQueryOpcode()

void WorldSession::HandleNameQueryOpcode ( WorldPackets::Query::QueryPlayerName &  queryPlayerName)

◆ HandleNextCinematicCamera()

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

◆ HandleNpcTextQueryOpcode()

◆ HandleOfferPetitionOpcode()

◆ HandleOpeningCinematic()

◆ HandleOpenItemOpcode()

◆ HandleOpenWrappedItemCallback()

◆ HandleOptOutOfLootOpcode()

void WorldSession::HandleOptOutOfLootOpcode ( WorldPacket &  recvData)

◆ HandlePartyAssignmentOpcode()

◆ HandlePetAbandon()

◆ HandlePetAction()

◆ HandlePetActionHelper()

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

Definition at line 137 of file PetHandler.cpp.

References _player, ACT_COMMAND, ACT_DISABLED, ACT_ENABLED, ACT_PASSIVE, ACT_REACTION, Creature::AI(), ASSERT, Unit::Attack(), UnitAI::AttackStart(), Unit::AttackStop(), Spell::CheckPetCast(), MotionMaster::Clear(), COMMAND_ABANDON, COMMAND_ATTACK, COMMAND_FOLLOW, COMMAND_STAY, Spell::finish(), Unit::GetCharmerGUID(), Unit::GetCharmerOrOwner(), Unit::GetCharmInfo(), SpellInfo::GetEffects(), Unit::GetFollowAngle(), Object::GetGUID(), Unit::GetMotionMaster(), WorldObject::GetOwner(), Unit::GetOwnerGUID(), Pet::getPetType(), GetPlayer(), Unit::GetSpellHistory(), Object::GetTypeId(), ObjectAccessor::GetUnit(), SpellCastTargets::GetUnitTarget(), Unit::GetVictim(), SpellHistory::HasCooldown(), Unit::HasSpell(), Unit::HasSpellFocus(), Unit::HasUnitTypeMask(), HUNTER_PET, Unit::InterruptNonMeleeSpells(), Unit::IsAIEnabled(), CharmInfo::IsCommandAttack(), ObjectGuid::IsEmpty(), SpellInfo::IsPassive(), Unit::IsPet(), Unit::isPossessed(), Unit::IsVehicle(), Spell::m_targets, MOTION_PRIORITY_NORMAL, MotionMaster::MoveFollow(), MotionMaster::MoveIdle(), 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_i(), CharmInfo::SaveStayPosition(), Spell::SendCastResult(), Unit::SendPetActionSound(), Unit::SendPetAIReaction(), Spell::SendPetCastResult(), Unit::SendPetDismissSound(), Object::SendUpdateToPlayer(), CharmInfo::SetCommandState(), Unit::SetInFront(), CharmInfo::SetIsAtStay(), CharmInfo::SetIsCommandAttack(), CharmInfo::SetIsCommandFollow(), CharmInfo::SetIsFollowing(), CharmInfo::SetIsReturning(), Creature::SetReactState(), SPELL_CAST_OK, SPELL_FAILED_UNIT_NOT_INFRONT, sSpellMgr, Player::StopCastingCharm(), 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()

◆ HandlePetitionBuyOpcode()

void WorldSession::HandlePetitionBuyOpcode ( WorldPacket &  recvData)
Todo:
find correct opcode

Definition at line 48 of file PetitionsHandler.cpp.

References _player, ARENA_TEAM_CHARTER_2v2, ARENA_TEAM_CHARTER_2v2_TYPE, ARENA_TEAM_CHARTER_3v3, ARENA_TEAM_CHARTER_3v3_TYPE, ARENA_TEAM_CHARTER_5v5, ARENA_TEAM_CHARTER_5v5_TYPE, BUY_ERR_CANT_FIND_ITEM, BUY_ERR_NOT_ENOUGHT_MONEY, Player::CanStoreNewItem(), CharacterDatabase, CHARTER_TYPE_NONE, CONFIG_CHARTER_COST_ARENA_2v2, CONFIG_CHARTER_COST_ARENA_3v3, CONFIG_CHARTER_COST_ARENA_5v5, CONFIG_CHARTER_COST_GUILD, EQUIP_ERR_OK, ERR_ALREADY_IN_ARENA_TEAM, ERR_ARENA_TEAM_CREATE_S, ERR_ARENA_TEAM_NAME_EXISTS_S, ERR_ARENA_TEAM_NAME_INVALID, ERR_ARENA_TEAM_TARGET_TOO_LOW_S, ERR_GUILD_NAME_EXISTS_S, ERR_GUILD_NAME_INVALID, Player::GetArenaTeamId(), ItemTemplate::GetBuyCount(), ObjectGuid::GetCounter(), Object::GetGUID(), Player::GetGuildId(), WorldObject::GetName(), Player::GetNPCIfCanInteractWith(), GetPlayer(), GUILD_CHARTER, GUILD_CHARTER_TYPE, GUILD_COMMAND_CREATE, Player::HasEnoughMoney(), Player::IsMaxLevel(), Unit::IsTabardDesigner(), ObjectMgr::IsValidCharterName(), ITEM_CHANGED, Player::ModifyMoney(), NULL_BAG, NULL_SLOT, ByteBuffer::read_skip(), Unit::RemoveAurasByType(), sArenaTeamMgr, SendArenaTeamCommandResult(), Player::SendBuyError(), Guild::SendCommandResult(), Player::SendEquipError(), Player::SendNewItem(), Item::SetPetitionId(), Item::SetState(), sGuildMgr, sObjectMgr, SPELL_AURA_FEIGN_DEATH, sPetitionMgr, Player::StoreNewItem(), sWorld, TC_LOG_DEBUG, ObjectGuid::ToString(), UNIT_NPC_FLAG_PETITIONER, and UNIT_STATE_DIED.

Referenced by OpcodeTable::Initialize().

◆ HandlePetitionRenameGuild()

◆ HandlePetitionShowListOpcode()

void WorldSession::HandlePetitionShowListOpcode ( WorldPacket &  recvPacket)

Definition at line 747 of file PetitionsHandler.cpp.

References SendPetitionShowList(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandlePetitionShowSignatures()

void WorldSession::HandlePetitionShowSignatures ( WorldPacket &  recvData)

◆ HandlePetLearnTalent()

void WorldSession::HandlePetLearnTalent ( WorldPacket &  recvPacket)

◆ HandlePetRename()

◆ HandlePetSetAction()

◆ HandlePetSpellAutocastOpcode()

◆ HandlePetStopAttack()

◆ HandlePlayedTime()

◆ HandlePlayerLogin()

void WorldSession::HandlePlayerLogin ( LoginQueryHolder const &  holder)

Definition at line 720 of file CharacterHandler.cpp.

References _player, ACHIEVEMENT_CRITERIA_TYPE_ON_LOGIN, ObjectAccessor::AddObject(), Map::AddPlayerToMap(), ALLIANCE, AT_LOGIN_FIRST, AT_LOGIN_RESET_PET_TALENTS, AT_LOGIN_RESET_SPELLS, AT_LOGIN_RESET_TALENTS, Player::BuildPlayerRepop(), WorldObject::CastSpell(), PlayerInfo::castSpells, CHAR_UPD_CHAR_ONLINE, CharacterDatabase, CONFIG_ALL_TAXI_PATHS, CONFIG_ENABLE_SINFO_LOGIN, CONFIG_START_ALL_EXPLORED, CONFIG_START_ALL_REP, Player::ContinueTaxiFlight(), CORPSE, DEAD, FRIEND_ONLINE, GetAccountId(), Player::getCinematic(), Unit::GetClass(), ObjectGuid::GetCounter(), Unit::getDeathState(), GitRevision::GetFullVersion(), GameTime::GetGameTimeMS(), Player::GetGroup(), LoginQueryHolder::GetGuid(), Object::GetGUID(), Player::GetGuildId(), Unit::GetLevel(), WorldObject::GetMap(), WorldLocation::GetMapId(), Unit::GetMotionMaster(), WorldObject::GetName(), Position::GetOrientation(), Position::GetPosition(), SQLQueryHolderBase::GetPreparedResult(), Unit::GetRace(), GetRemoteAddress(), Player::GetReputationMgr(), Player::GetSession(), Player::GetTeam(), Player::GetXP(), Player::GetXPForNextLevel(), Player::HasAtLoginFlag(), Object::HasFlag(), Unit::HasUnitState(), HORDE, MotionMaster::Initialize(), Player::IsGameMaster(), Unit::IsStandState(), KickPlayer(), LANG_GM_ON, LANG_RESET_SPELLS, LoadAccountData(), Player::LoadCorpse(), Player::LoadFromDB(), Player::LoadPet(), LOGIN_UPD_ACCOUNT_ONLINE, LoginDatabase, Unit::m_deathState, Player::m_homebindMapId, Player::m_homebindX, Player::m_homebindY, Player::m_homebindZ, m_playerLoading, WorldPackets::Character::LoginVerifyWorld::MapID, PER_CHARACTER_CACHE_MASK, PLAYER_EXPLORED_ZONES_1, PLAYER_EXPLORED_ZONES_SIZE, PLAYER_FLAGS, PLAYER_FLAGS_CONTESTED_PVP, PLAYER_FLAGS_RESTING, PLAYER_LOGIN_QUERY_LOAD_ACCOUNT_DATA, PLAYER_LOGIN_QUERY_LOAD_CORPSE_LOCATION, PLAYER_LOGIN_QUERY_LOAD_GUILD, WorldPackets::Character::LoginVerifyWorld::Pos, ChatHandler::PSendSysMessage(), Player::RemoveAtLoginFlag(), Player::RepopAtGraveyard(), Player::ResetSpells(), Player::ResetTalents(), Pet::resetTalentsForAllPetsOf(), sChrClassesStore, sChrRacesStore, SendAccountDataTimes(), Player::SendCinematicStart(), Player::SendDungeonDifficulty(), SendFeatureSystemStatus(), Player::SendInitialPacketsAfterAddToMap(), Player::SendInitialPacketsBeforeAddToMap(), SendNotification(), SendPacket(), Player::SendRaidDifficulty(), ReputationMgr::SendState(), Player::SendTalentsInfoData(), Player::setCinematic(), Player::SetContestedPvP(), Object::SetFlag(), Player::SetGuildRank(), Player::SetInGameTime(), Player::SetInGuild(), ReputationMgr::SetOneFactionReputation(), SetPlayer(), Unit::SetPvpFlag(), Unit::SetStandState(), Player::SetTaxiCheater(), PreparedStatementBase::setUInt32(), Unit::SetWaterWalking(), sFactionStore, sGuildMgr, SMSG_LEARNED_DANCE_MOVES, sObjectMgr, sScriptMgr, sSocialMgr, sWorld, AreaTriggerTeleport::target_mapId, AreaTriggerTeleport::target_X, AreaTriggerTeleport::target_Y, AreaTriggerTeleport::target_Z, TC_LOG_ERROR, TC_LOG_INFO, TC_METRIC_EVENT, Player::TeleportTo(), WorldPackets::System::MOTD::Text, ObjectGuid::ToString(), UNIT_BYTE2_FLAG_FFA_PVP, UNIT_STAND_STATE_STAND, UNIT_STATE_STUNNED, Player::UpdateAchievementCriteria(), WorldPackets::Character::LoginVerifyWorld::Write(), and WorldPackets::System::MOTD::Write().

Referenced by HandlePlayerLoginOpcode().

◆ HandlePlayerLoginOpcode()

◆ HandlePlayerLogoutOpcode()

void WorldSession::HandlePlayerLogoutOpcode ( WorldPackets::Character::PlayerLogout &  playerLogout)

Definition at line 357 of file MiscHandler.cpp.

Referenced by OpcodeTable::Initialize().

◆ HandlePushQuestToParty()

◆ HandlePVPLogDataOpcode()

◆ HandleQueryCorpseLocation()

◆ HandleQueryCorpseTransport()

◆ HandleQueryInspectAchievements()

◆ HandleQueryNextMailTime()

◆ HandleQueryPageText()

◆ HandleQueryPetition()

void WorldSession::HandleQueryPetition ( WorldPacket &  recvData)

◆ HandleQueryPetName()

void WorldSession::HandleQueryPetName ( WorldPacket &  recvData)

Definition at line 389 of file PetHandler.cpp.

References SendQueryPetNameResponse(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleQueryQuestsCompleted()

◆ HandleQueryTimeOpcode()

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

Definition at line 65 of file QueryHandler.cpp.

References SendQueryTimeResponse().

Referenced by OpcodeTable::Initialize().

◆ HandleQuestConfirmAccept()

◆ HandleQuestgiverAcceptQuestOpcode()

◆ HandleQuestgiverCancel()

void WorldSession::HandleQuestgiverCancel ( WorldPacket &  recvData)

◆ HandleQuestgiverChooseRewardOpcode()

◆ HandleQuestgiverCompleteQuest()

◆ HandleQuestgiverHelloOpcode()

◆ HandleQuestgiverQueryQuestOpcode()

◆ HandleQuestgiverQuestAutoLaunch()

void WorldSession::HandleQuestgiverQuestAutoLaunch ( WorldPacket &  recvPacket)

Definition at line 539 of file QuestHandler.cpp.

References TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleQuestgiverRequestRewardOpcode()

◆ HandleQuestgiverStatusMultipleQuery()

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

Definition at line 655 of file QuestHandler.cpp.

References _player, Player::SendQuestGiverStatusMultiple(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleQuestgiverStatusQueryOpcode()

◆ HandleQuestLogRemoveQuest()

◆ HandleQuestLogSwapQuest()

void WorldSession::HandleQuestLogSwapQuest ( WorldPacket &  recvData)

◆ HandleQuestPOIQuery()

◆ HandleQuestPushResult()

void WorldSession::HandleQuestPushResult ( WorldPacket &  recvPacket)

◆ HandleQuestQueryOpcode()

◆ HandleRaidReadyCheckFinishedOpcode()

void WorldSession::HandleRaidReadyCheckFinishedOpcode ( WorldPacket &  recvData)

◆ HandleRaidReadyCheckOpcode()

◆ HandleRaidTargetUpdateOpcode()

◆ HandleRandomRollOpcode()

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

◆ HandleReadItem()

◆ HandleReadyForAccountDataTimes()

void WorldSession::HandleReadyForAccountDataTimes ( WorldPacket &  recvData)

Definition at line 1178 of file MiscHandler.cpp.

References GLOBAL_CACHE_MASK, SendAccountDataTimes(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleRealmSplitOpcode()

void WorldSession::HandleRealmSplitOpcode ( WorldPacket &  recvData)

Definition at line 953 of file MiscHandler.cpp.

References SendPacket(), SMSG_REALM_SPLIT, and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleReclaimCorpse()

◆ HandleRemoveGlyph()

◆ HandleRepairItemOpcode()

◆ HandleRepopRequest()

◆ HandleReportLag()

◆ HandleReportPvPAFK()

◆ HandleRequestAccountData()

◆ HandleRequestBattlefieldStatusOpcode()

◆ HandleRequestHonorStats()

◆ HandleRequestPartyMemberStatsOpcode()

void WorldSession::HandleRequestPartyMemberStatsOpcode ( WorldPacket &  recvData)

Definition at line 905 of file GroupHandler.cpp.

References ASSERT_NOTNULL, ObjectAccessor::FindConnectedPlayer(), Unit::GetDisplayId(), Unit::GetHealth(), Unit::GetLevel(), Unit::GetMaxHealth(), Unit::GetMaxPower(), WorldObject::GetName(), Object::GetPackGUID(), Player::GetPet(), GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), Unit::GetPower(), Unit::GetPowerType(), Unit::GetVehicle(), Vehicle::GetVehicleInfo(), Unit::GetVisibleAura(), WorldObject::GetZoneId(), GROUP_UPDATE_FLAG_AURAS, GROUP_UPDATE_FLAG_CUR_HP, GROUP_UPDATE_FLAG_CUR_POWER, GROUP_UPDATE_FLAG_LEVEL, GROUP_UPDATE_FLAG_MAX_HP, GROUP_UPDATE_FLAG_MAX_POWER, GROUP_UPDATE_FLAG_PET_AURAS, GROUP_UPDATE_FLAG_PET_CUR_HP, GROUP_UPDATE_FLAG_PET_CUR_POWER, GROUP_UPDATE_FLAG_PET_GUID, GROUP_UPDATE_FLAG_PET_MAX_HP, GROUP_UPDATE_FLAG_PET_MAX_POWER, GROUP_UPDATE_FLAG_PET_MODEL_ID, GROUP_UPDATE_FLAG_PET_NAME, GROUP_UPDATE_FLAG_PET_POWER_TYPE, GROUP_UPDATE_FLAG_POSITION, GROUP_UPDATE_FLAG_POWER_TYPE, GROUP_UPDATE_FLAG_STATUS, GROUP_UPDATE_FLAG_VEHICLE_SEAT, GROUP_UPDATE_FLAG_ZONE, Object::HasFlag(), Player::isAFK(), Unit::IsAlive(), Player::isDND(), Unit::IsFFAPvP(), Unit::IsPvP(), WorldObject::m_movementInfo, MAX_AURAS_GROUP_UPDATE, MEMBER_STATUS_AFK, MEMBER_STATUS_DEAD, MEMBER_STATUS_DND, MEMBER_STATUS_GHOST, MEMBER_STATUS_OFFLINE, MEMBER_STATUS_ONLINE, MEMBER_STATUS_PVP, MEMBER_STATUS_PVP_FFA, PLAYER_FLAGS, PLAYER_FLAGS_GHOST, POWER_MANA, ByteBuffer::put(), MovementInfo::TransportInfo::seat, VehicleEntry::SeatID, SendPacket(), SMSG_PARTY_MEMBER_STATS_FULL, TC_LOG_DEBUG, MovementInfo::transport, ByteBuffer::wpos(), and ObjectGuid::WriteAsPacked().

Referenced by OpcodeTable::Initialize().

◆ HandleRequestPetInfo()

◆ HandleRequestRaidInfoOpcode()

void WorldSession::HandleRequestRaidInfoOpcode ( WorldPacket &  recvData)

Definition at line 1040 of file GroupHandler.cpp.

References _player, and Player::SendRaidInfo().

Referenced by OpcodeTable::Initialize().

◆ HandleRequestStabledPets()

void WorldSession::HandleRequestStabledPets ( WorldPacket &  recvPacket)

◆ HandleRequestVehicleExit()

void WorldSession::HandleRequestVehicleExit ( WorldPacket &  recvData)

Definition at line 190 of file VehicleHandler.cpp.

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

Referenced by OpcodeTable::Initialize().

◆ HandleResetInstancesOpcode()

void WorldSession::HandleResetInstancesOpcode ( WorldPacket &  recvData)

◆ HandleResurrectResponse()

◆ HandleSaveGuildEmblemOpcode()

◆ HandleSelfResOpcode()

◆ HandleSellItemOpcode()

◆ HandleSendMail()

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

Definition at line 62 of file MailHandler.cpp.

References _player, ACHIEVEMENT_CRITERIA_TYPE_GOLD_SPENT_FOR_MAIL, 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(), ObjectGuid::GetCounter(), Object::GetGUID(), Player::GetItemByGuid(), Unit::GetLevel(), GetPlayer(), GetPlayerInfo(), GetPlayerName(), GetQueryProcessor(), Player::GetTeam(), Item::GetTemplate(), GetTrinityString(), Object::GetUInt32Value(), Player::HasEnoughMoney(), ItemTemplate::HasFlag(), HasPermission(), WorldPackets::Mail::SendMail::Info, Item::IsBoundAccountWide(), Player::IsGameMaster(), Item::IsNotEmptyBag(), Item::IsSoulBound(), Item::IsWrapped(), ITEM_CHANGED, ITEM_FIELD_DURATION, ITEM_FLAG_CONJURED, ITEM_FLAG_IS_BOUND_TO_ACCOUNT, LANG_MAIL_RECEIVER_REQ, LANG_MAIL_SENDER_REQ, 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_MAIL_ITEMS, Player::ModifyMoney(), Player::MoveItemFromInventory(), normalizePlayerName(), WorldPackets::Mail::SendMail::StructSendMail::PackageID, 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::setUInt32(), 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::UpdateAchievementCriteria().

Referenced by OpcodeTable::Initialize().

◆ HandleSetActionBarToggles()

void WorldSession::HandleSetActionBarToggles ( WorldPackets::Character::SetActionBarToggles &  packet)

◆ HandleSetActionButtonOpcode()

◆ HandleSetActiveMoverOpcode()

◆ HandleSetActiveVoiceChannel()

void WorldSession::HandleSetActiveVoiceChannel ( WorldPacket &  recvData)

Definition at line 31 of file VoiceChatHandler.cpp.

References ByteBuffer::read_skip(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleSetAmmoOpcode()

◆ HandleSetContactNotesOpcode()

◆ HandleSetDungeonDifficultyOpcode()

◆ HandleSetFactionAtWar()

void WorldSession::HandleSetFactionAtWar ( WorldPacket &  recvData)

◆ HandleSetFactionCheat()

void WorldSession::HandleSetFactionCheat ( WorldPacket &  recvData)

◆ HandleSetFactionInactiveOpcode()

void WorldSession::HandleSetFactionInactiveOpcode ( WorldPacket &  recvData)

◆ HandleSetPlayerDeclinedNames()

◆ HandleSetRaidDifficultyOpcode()

◆ HandleSetSavedInstanceExtend()

◆ HandleSetSelectionOpcode()

◆ HandleSetSheathedOpcode()

void WorldSession::HandleSetSheathedOpcode ( WorldPackets::Combat::SetSheathed &  packet)

◆ HandleSetTaxiBenchmarkOpcode()

void WorldSession::HandleSetTaxiBenchmarkOpcode ( WorldPacket &  recvData)

◆ HandleSetTitleOpcode()

void WorldSession::HandleSetTitleOpcode ( WorldPacket &  recvData)

◆ HandleSetTradeGoldOpcode()

void WorldSession::HandleSetTradeGoldOpcode ( WorldPacket &  recvPacket)

Definition at line 703 of file TradeHandler.cpp.

References _player, Player::GetTradeData(), and TradeData::SetMoney().

Referenced by OpcodeTable::Initialize().

◆ HandleSetTradeItemOpcode()

◆ HandleSetWatchedFactionOpcode()

void WorldSession::HandleSetWatchedFactionOpcode ( WorldPacket &  recvData)

◆ HandleShowingCloakOpcode()

◆ HandleShowingHelmOpcode()

◆ HandleSignPetition()

◆ HandleSocketOpcode()

◆ HandleSpellClick()

void WorldSession::HandleSpellClick ( WorldPacket &  recvData)
Todo:
Unit::SetCharmedBy: 28782 is not in world but 0 is trying to charm it! -> crash

Definition at line 558 of file SpellHandler.cpp.

References _player, ObjectAccessor::GetCreatureOrPetOrVehicle(), Unit::HandleSpellClick(), and Object::IsInWorld().

Referenced by OpcodeTable::Initialize().

◆ HandleSpiritHealerActivateOpcode()

◆ HandleSplitItemOpcode()

◆ HandleStablePet()

◆ HandleStableRevivePet()

void WorldSession::HandleStableRevivePet ( WorldPacket &  recvPacket)

Definition at line 586 of file NPCHandler.cpp.

References TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleStableSwapPet()

◆ HandleStandStateChangeOpcode()

◆ HandleSummonResponseOpcode()

void WorldSession::HandleSummonResponseOpcode ( WorldPacket &  recvData)

◆ HandleSwapInvItemOpcode()

◆ HandleSwapItem()

◆ HandleTabardVendorActivateOpcode()

◆ HandleTalentWipeConfirmOpcode()

◆ HandleTaxiNodeStatusQueryOpcode()

void WorldSession::HandleTaxiNodeStatusQueryOpcode ( WorldPacket &  recvPacket)

Definition at line 32 of file TaxiHandler.cpp.

References SendTaxiStatus(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleTaxiQueryAvailableNodes()

◆ HandleTextEmoteOpcode()

◆ HandleTimeSyncResponse()

◆ HandleTogglePvP()

◆ HandleTotemDestroyed()

◆ HandleTrainerBuySpellOpcode()

◆ HandleTrainerListOpcode()

◆ HandleTurnInPetitionOpcode()

◆ HandleTutorialClear()

void WorldSession::HandleTutorialClear ( WorldPackets::Misc::TutorialClear &  tutorialClear)

Definition at line 1043 of file CharacterHandler.cpp.

References MAX_ACCOUNT_TUTORIAL_VALUES, and SetTutorialInt().

Referenced by OpcodeTable::Initialize().

◆ HandleTutorialFlag()

◆ HandleTutorialReset()

void WorldSession::HandleTutorialReset ( WorldPackets::Misc::TutorialReset &  tutorialReset)

Definition at line 1049 of file CharacterHandler.cpp.

References MAX_ACCOUNT_TUTORIAL_VALUES, and SetTutorialInt().

Referenced by OpcodeTable::Initialize().

◆ HandleUITimeRequest()

void WorldSession::HandleUITimeRequest ( WorldPackets::Misc::UITimeRequest &  recvData)

◆ HandleUnacceptTradeOpcode()

void WorldSession::HandleUnacceptTradeOpcode ( WorldPacket &  recvPacket)

Definition at line 551 of file TradeHandler.cpp.

References _player, Player::GetTradeData(), and TradeData::SetAccepted().

Referenced by OpcodeTable::Initialize().

◆ HandleUnlearnSkillOpcode()

void WorldSession::HandleUnlearnSkillOpcode ( WorldPacket &  recvPacket)

◆ HandleUnstablePet()

◆ HandleUpdateAccountData()

◆ HandleUpdateMissileTrajectory()

◆ HandleUpdateProjectilePosition()

◆ HandleUseItemOpcode()

◆ HandleVoiceSessionEnableOpcode()

void WorldSession::HandleVoiceSessionEnableOpcode ( WorldPacket &  recvData)

Definition at line 23 of file VoiceChatHandler.cpp.

References ByteBuffer::read_skip(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HandleWardenDataOpcode()

void WorldSession::HandleWardenDataOpcode ( WorldPacket &  recvData)

Definition at line 268 of file Warden.cpp.

References _warden, and ByteBuffer::empty().

Referenced by OpcodeTable::Initialize().

◆ HandleWhoIsOpcode()

◆ HandleWhoOpcode()

void WorldSession::HandleWhoOpcode ( WorldPackets::Who::WhoRequestPkt &  whoRequest)

◆ HandleWorldTeleportOpcode()

◆ HandleWrapItemOpcode()

◆ HandleZoneUpdateOpcode()

void WorldSession::HandleZoneUpdateOpcode ( WorldPacket &  recvPacket)

Definition at line 411 of file MiscHandler.cpp.

References GetPlayer(), Player::SetNeedsZoneUpdate(), and TC_LOG_DEBUG.

Referenced by OpcodeTable::Initialize().

◆ HasPermission()

bool WorldSession::HasPermission ( uint32  permissionId)

Definition at line 1188 of file WorldSession.cpp.

References _RBACData, rbac::RBACData::GetId(), rbac::RBACData::GetName(), rbac::RBACData::HasPermission(), Realm::Id, LoadPermissions(), realm, RealmHandle::Realm, and TC_LOG_DEBUG.

Referenced by ChatHandler::_ParseCommands(), InstanceScript::_SkipCheckRequiredBosses(), World::AddSession_(), Channel::Announce(), SocialMgr::BroadcastToFriendListers(), Player::CanBeGameMaster(), Player::CanJoinToBattleground(), CanOpenMailBox(), AchievementMgr::CompletedAchievement(), Spell::EffectEnchantItemPerm(), Spell::EffectEnchantItemPrismatic(), Spell::EffectEnchantItemTmp(), SocialMgr::GetFriendInfo(), lfg::LFGMgr::GetLockedDungeons(), Player::GetStartLevel(), HandleAcceptTradeOpcode(), HandleAddFriendOpcode(), HandleAuctionPlaceBid(), HandleAuctionSellItem(), HandleCharCreateOpcode(), HandleCharCustomizeCallback(), HandleCharRaceOrFactionChangeCallback(), HandleCharRenameOpcode(), HandleChatMessage(), 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(), HandleWorldTeleportOpcode(), ChatHandler::HasLowerSecurityAccount(), ChatHandler::HasPermission(), Channel::Invite(), Channel::JoinChannel(), lfg::LFGMgr::JoinLfg(), Channel::KickOrBan(), Channel::LeaveChannel(), Channel::List(), moveItems(), Channel::Password(), AchievementMgr::ResetAchievementCriteria(), World::SendGlobalGMMessage(), World::SendGMText(), Channel::SetMode(), Channel::SetOwner(), Channel::UnBan(), Update(), and AchievementMgr::UpdateAchievementCriteria().

◆ InitializeSession()

◆ InitializeSessionCallback()

◆ InitWarden()

void WorldSession::InitWarden ( SessionKey const &  k,
std::string const &  os 
)

Definition at line 1079 of file WorldSession.cpp.

References _warden.

Referenced by WorldSocket::HandleAuthSessionCallback().

◆ InvalidateRBACData()

void WorldSession::InvalidateRBACData ( )

◆ IsARecruiter()

bool WorldSession::IsARecruiter ( ) const
inline

Definition at line 753 of file WorldSession.h.

◆ IsConnectionIdle()

bool WorldSession::IsConnectionIdle ( ) const

Definition at line 723 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

Is the user engaged in a log out process?

Definition at line 612 of file WorldSession.h.

Referenced by HandleInitiateTradeOpcode(), send_commandscript::HandleSendMessageCommand(), and Player::SaveToDB().

◆ KickPlayer()

◆ LoadAccountData()

◆ LoadInstanceTimeRestrictions()

void WorldSession::LoadInstanceTimeRestrictions ( PreparedQueryResult  result)

Definition at line 878 of file WorldSession.cpp.

References _instanceResetTimes, and GameTime::GetSystemTime().

Referenced by InitializeSessionCallback().

◆ LoadPermissions()

void WorldSession::LoadPermissions ( )

◆ LoadPermissionsAsync()

◆ 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
  • 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 483 of file WorldSession.cpp.

References _player, BATTLEGROUND_QUEUE_NONE, BG_DESERTION_TYPE_INVITE_LOGOUT, Player::BuildPlayerRepop(), BUYBACK_SLOT_END, BUYBACK_SLOT_START, CHAR_INS_DESERTER_TRACK, CHAR_UPD_ACCOUNT_ONLINE, CharacterDatabase, Player::CleanupChannels(), Player::CleanupsBeforeDelete(), Player::ClearWhisperWhiteList(), Unit::CombatStop(), CONFIG_BATTLEGROUND_TRACK_DESERTERS, DoLootRelease(), ObjectGuid::Empty, WorldObject::FindMap(), FRIEND_OFFLINE, GetAccountId(), Player::GetBattleground(), Player::GetBattlegroundQueueTypeId(), ObjectGuid::GetCounter(), Player::GetDeathTimer(), Player::GetGroup(), Object::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::IsInvitedForBattlegroundQueueType(), Player::KillPlayer(), m_playerLogout, m_playerRecentlyLogout, m_playerSave, PET_SAVE_AS_CURRENT, PLAYER_FIELD_BUYBACK_PRICE_1, PLAYER_FIELD_BUYBACK_TIMESTAMP_1, PLAYER_FIELD_VENDORBUYBACK_SLOT_1, PLAYER_MAX_BATTLEGROUND_QUEUES, Unit::RemoveAurasByType(), Player::RemoveBattlegroundQueueId(), Player::RemovePet(), BattlegroundQueue::RemovePlayer(), Player::RemoveSocial(), Player::RepopAtGraveyard(), Player::SaveToDB(), sBattlegroundMgr, SendPacket(), Object::SetGuidValue(), SetLogoutStartTime(), Player::SetPendingBind(), SetPlayer(), PreparedStatementBase::setUInt32(), Object::SetUInt32Value(), PreparedStatementBase::setUInt8(), sGuildMgr, sOutdoorPvPMgr, SPELL_AURA_MOD_SHAPESHIFT, SPELL_AURA_SPIRIT_OF_REDEMPTION, sScriptMgr, sSocialMgr, sWorld, TC_LOG_DEBUG, TC_LOG_INFO, TC_METRIC_EVENT, ObjectGuid::ToString(), and Player::UninviteFromGroup().

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

◆ LogUnexpectedOpcode()

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

Logging helper for unexpected opcodes.

Definition at line 258 of file WorldSession.cpp.

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

Referenced by Update().

◆ LogUnprocessedTail()

void WorldSession::LogUnprocessedTail ( WorldPacket *  packet)
private

◆ moveItems()

◆ operator=()

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

◆ PlayerDisconnected()

bool WorldSession::PlayerDisconnected ( ) const
inline

Definition at line 561 of file WorldSession.h.

Referenced by lfg::LFGPlayerScript::OnLogout().

◆ PlayerLoading()

bool WorldSession::PlayerLoading ( ) const
inline

◆ PlayerLogout()

bool WorldSession::PlayerLogout ( ) const
inline

◆ PlayerLogoutWithSave()

bool WorldSession::PlayerLogoutWithSave ( ) const
inline

Definition at line 559 of file WorldSession.h.

◆ PlayerRecentlyLoggedOut()

bool WorldSession::PlayerRecentlyLoggedOut ( ) const
inline

Definition at line 560 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 252 of file WorldSession.cpp.

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

Referenced by WorldSocket::ReadDataHandler().

◆ ReadAddonsInfo()

◆ ReadMovementInfo()

◆ ResetTimeOutTime()

◆ ResetTimeSync()

void WorldSession::ResetTimeSync ( )

◆ SaveInstanceTimeRestrictions()

◆ SaveTutorialsData()

◆ SendAccountDataTimes()

void WorldSession::SendAccountDataTimes ( uint32  mask)

◆ SendActivateTaxiReply()

void WorldSession::SendActivateTaxiReply ( ActivateTaxiReply  reply)

◆ SendAddonsInfo()

◆ SendAreaTriggerMessage()

void WorldSession::SendAreaTriggerMessage ( char const *  Text,
  ... 
)

◆ SendArenaTeamCommandResult()

◆ SendAuctionBidderNotification()

void WorldSession::SendAuctionBidderNotification ( uint32  location,
uint32  auctionId,
ObjectGuid  bidder,
uint32  bidSum,
uint32  diff,
uint32  item_template 
)

◆ SendAuctionCommandResult()

void WorldSession::SendAuctionCommandResult ( AuctionEntry const *  auction,
AuctionCommand  command,
AuctionResult  errorCode,
InventoryResult  bagResult = InventoryResult(0) 
)

◆ SendAuctionHello()

◆ SendAuctionOwnerNotification()

◆ SendAuctionRemovedNotification()

void WorldSession::SendAuctionRemovedNotification ( uint32  auctionId,
uint32  itemEntry,
int32  randomPropertyId 
)

◆ SendAuthResponse()

void WorldSession::SendAuthResponse ( uint8  code,
bool  shortForm,
uint32  queuePos = 0 
)

◆ SendAuthWaitQueue()

void WorldSession::SendAuthWaitQueue ( uint32  position)

Handle the authentication waiting queue (to be completed)

Definition at line 745 of file WorldSession.cpp.

References AUTH_OK, AUTH_WAIT_QUEUE, SendPacket(), and SMSG_AUTH_RESPONSE.

Referenced by InitializeSessionCallback().

◆ SendBarberShopResult()

void WorldSession::SendBarberShopResult ( BarberShopResult  result)

Definition at line 2182 of file CharacterHandler.cpp.

References SendPacket(), and SMSG_BARBER_SHOP_RESULT.

Referenced by HandleAlterAppearance().

◆ SendBfEntered()

void WorldSession::SendBfEntered ( uint32  battleId)

This is call when player accept to join war.

Parameters
battleIdThe BattleId of Bf

Definition at line 88 of file BattlefieldHandler.cpp.

References _player, Player::isAFK(), SendPacket(), and SMSG_BATTLEFIELD_MGR_ENTERED.

Referenced by Battlefield::PlayerAcceptInviteToWar().

◆ SendBfInvitePlayerToQueue()

void WorldSession::SendBfInvitePlayerToQueue ( uint32  battleId)

This send invitation to player to join the queue.

Parameters
battleIdThe BattleId of Bf

Definition at line 52 of file BattlefieldHandler.cpp.

References SendPacket(), and SMSG_BATTLEFIELD_MGR_QUEUE_INVITE.

Referenced by Battlefield::InvitePlayerToQueue().

◆ SendBfInvitePlayerToWar()

void WorldSession::SendBfInvitePlayerToWar ( uint32  battleId,
uint32  zoneId,
uint32  acceptTime 
)

This send to player windows for invite player to join the war.

Parameters
battleIdThe BattleId of Bf
zoneIdThe zone where the battle is (4197 for wg)
acceptTimeTime in second that the player have for accept

Definition at line 36 of file BattlefieldHandler.cpp.

References GameTime::GetGameTime(), SendPacket(), and SMSG_BATTLEFIELD_MGR_ENTRY_INVITE.

Referenced by Battlefield::InvitePlayerToWar().

◆ SendBfLeaveMessage()

void WorldSession::SendBfLeaveMessage ( uint32  battleId,
BFLeaveReason  reason = BF_LEAVE_REASON_EXITED 
)

This is call when player leave battlefield zone.

Parameters
battleIdThe BattleId of Bf
reasonReason why player left battlefield

Definition at line 106 of file BattlefieldHandler.cpp.

References SendPacket(), and SMSG_BATTLEFIELD_MGR_EJECTED.

Referenced by Battlefield::HandlePlayerLeaveZone().

◆ SendBfQueueInviteResponse()

void WorldSession::SendBfQueueInviteResponse ( uint32  battleId,
uint32  zoneId,
bool  canQueue = true,
bool  full = false 
)

This send packet for inform player that he join queue.

Parameters
battleIdThe BattleId of Bf
zoneIdThe zone where the battle is (4197 for wg)
canQueueif able to queue
fullon log in is full

Definition at line 70 of file BattlefieldHandler.cpp.

References SendPacket(), and SMSG_BATTLEFIELD_MGR_QUEUE_REQUEST_RESPONSE.

Referenced by Battlefield::PlayerAcceptInviteToQueue().

◆ SendBindPoint()

◆ SendCalendarRaidLockoutAdded()

◆ SendCalendarRaidLockoutRemoved()

◆ SendCalendarRaidLockoutUpdated()

◆ SendCancelTrade()

void WorldSession::SendCancelTrade ( TradeStatus  status)

◆ SendCharCreate()

void WorldSession::SendCharCreate ( ResponseCodes  result)

◆ SendCharCustomize()

◆ SendCharDelete()

void WorldSession::SendCharDelete ( ResponseCodes  result)

◆ SendCharFactionChange()

◆ SendCharRename()

◆ SendChatRestrictedNotice()

void WorldSession::SendChatRestrictedNotice ( ChatRestrictionType  restriction)

Definition at line 670 of file ChatHandler.cpp.

References SendPacket(), and SMSG_CHAT_RESTRICTED.

◆ SendClientCacheVersion()

void WorldSession::SendClientCacheVersion ( uint32  version)

◆ SendDiscoverNewTaxiNode()

void WorldSession::SendDiscoverNewTaxiNode ( uint32  nodeid)

Definition at line 151 of file TaxiHandler.cpp.

References GetPlayer(), SendPacket(), and SMSG_NEW_TAXI_PATH.

Referenced by Spell::EffectDiscoverTaxi().

◆ SendDoFlight()

void WorldSession::SendDoFlight ( uint32  mountDisplayId,
uint32  path,
uint32  pathNode = 0 
)

◆ SendEnchantmentLog()

void WorldSession::SendEnchantmentLog ( ObjectGuid  target,
ObjectGuid  caster,
uint32  itemId,
uint32  enchantId 
)

◆ SendFeatureSystemStatus()

◆ SendItemEnchantTimeUpdate()

void WorldSession::SendItemEnchantTimeUpdate ( ObjectGuid  Playerguid,
ObjectGuid  Itemguid,
uint32  slot,
uint32  Duration 
)

◆ SendLearnNewTaxiNode()

◆ SendLfgBootProposalUpdate()

◆ SendLfgDisabled()

void WorldSession::SendLfgDisabled ( )

Definition at line 619 of file LFGHandler.cpp.

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

◆ SendLfgJoinResult()

◆ SendLfgLfrList()

void WorldSession::SendLfgLfrList ( bool  update)

◆ SendLfgOfferContinue()

void WorldSession::SendLfgOfferContinue ( uint32  dungeonEntry)

Definition at line 626 of file LFGHandler.cpp.

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

◆ SendLfgPartyLockInfo()

◆ SendLfgPlayerLockInfo()

◆ SendLfgPlayerReward()

◆ SendLfgQueueStatus()

◆ SendLfgRoleCheckUpdate()

◆ SendLfgRoleChosen()

void WorldSession::SendLfgRoleChosen ( ObjectGuid  guid,
uint8  roles 
)

◆ SendLfgTeleportError()

void WorldSession::SendLfgTeleportError ( uint8  err)

◆ SendLfgUpdateParty()

◆ SendLfgUpdatePlayer()

◆ SendLfgUpdateProposal()

◆ SendListInventory()

void WorldSession::SendListInventory ( ObjectGuid  guid)

Definition at line 570 of file ItemHandler.cpp.

References _player, ALLIANCE, AsUnderlyingType(), BIND_WHEN_PICKED_UP, WorldPackets::NPC::VendorItem::Durability, Empty, ObjectGuid::Empty, VendorItem::ExtendedCost, WorldPackets::NPC::VendorItem::ExtendedCostID, ItemTemplate::GetAllowableClass(), ItemTemplate::GetBonding(), ItemTemplate::GetBuyCount(), ItemTemplate::GetBuyPrice(), Unit::GetClassMask(), ItemTemplate::GetDisplayId(), Object::GetEntry(), Object::GetGUID(), CreatureMovementData::GetInteractionPauseTimer(), VendorItemData::GetItem(), VendorItemData::GetItemCount(), Creature::GetMovementTemplate(), Player::GetNPCIfCanInteractWith(), GetPlayer(), Position::GetPosition(), Player::GetReputationPriceDiscount(), Player::GetTeam(), Creature::GetVendorItemCurrentCount(), Creature::GetVendorItems(), ItemTemplate::HasFlag(), HORDE, Player::IsGameMaster(), VendorItem::IsGoldRequired(), VendorItem::item, WorldPackets::NPC::VendorItem::Item, ITEM_FLAG2_FACTION_ALLIANCE, ITEM_FLAG2_FACTION_HORDE, WorldPackets::NPC::VendorItem::ItemDisplayInfoID, WorldPackets::NPC::VendorInventory::Items, MAX_VENDOR_ITEMS, VendorItem::maxcount, ItemTemplate::MaxDurability, WorldPackets::NPC::VendorItem::MuID, Unit::PauseMovement(), WorldPackets::NPC::VendorItem::Price, WorldPackets::NPC::VendorItem::Quantity, WorldPackets::NPC::VendorInventory::Reason, Unit::RemoveAurasByType(), sConditionMgr, SELL_ERR_CANT_FIND_VENDOR, SendPacket(), Player::SendSellError(), Creature::SetHomePosition(), sObjectMgr, SPELL_AURA_FEIGN_DEATH, WorldPackets::NPC::VendorItem::StackCount, TC_LOG_DEBUG, ObjectGuid::ToString(), UNIT_NPC_FLAG_VENDOR, UNIT_STATE_DIED, WorldPackets::NPC::VendorInventory::Vendor, and WorldPackets::NPC::VendorInventory::Write().

Referenced by HandleListInventoryOpcode(), npc_lokhtos_darkbargainer::npc_lokhtos_darkbargainerAI::OnGossipSelect(), npc_innkeeper::npc_innkeeperAI::OnGossipSelect(), Player::OnGossipSelect(), npc_prof_blacksmith::npc_prof_blacksmithAI::SendActionMenu(), npc_prof_leather::npc_prof_leatherAI::SendActionMenu(), npc_prof_tailor::npc_prof_tailorAI::SendActionMenu(), and npc_prof_alchemy::npc_prof_alchemyAI::SendActionMenu().

◆ SendNameQueryOpcode()

◆ SendNotification() [1/2]

◆ SendNotification() [2/2]

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

Definition at line 687 of file WorldSession.cpp.

References GetTrinityString(), SendPacket(), and SMSG_NOTIFICATION.

◆ SendNotInArenaTeamPacket()

void WorldSession::SendNotInArenaTeamPacket ( uint8  type)

Definition at line 426 of file ArenaTeamHandler.cpp.

References SendPacket(), and SMSG_ARENA_ERROR.

Referenced by HandleBattlemasterJoinArena().

◆ SendPacket()

void WorldSession::SendPacket ( WorldPacket const *  packet)

Send a packet to the client.

Definition at line 204 of file WorldSession.cpp.

References ASSERT, WorldPacket::GetOpcode(), GetOpcodeNameForLogging(), GetPlayerInfo(), m_Socket, NULL_OPCODE, ByteBuffer::size(), sScriptMgr, TC_LOG_DEBUG, TC_LOG_TRACE, and ByteBuffer::wpos().

Referenced by SocialMgr::BroadcastToFriendListers(), Player::BuildPlayerRepop(), Unit::DestroyForPlayer(), HandleAuctionListBidderItems(), HandleAuctionListItems(), HandleAuctionListOwnerItems(), HandleAuctionListPendingSales(), HandleBattleFieldPortOpcode(), HandleBattlegroundPlayerPositionsOpcode(), HandleBattlemasterJoinArena(), HandleBattlemasterJoinOpcode(), HandleBuyBankSlotOpcode(), HandleCalendarGetCalendar(), HandleCalendarGetNumPending(), HandleCharEnum(), HandleComplainOpcode(), HandleCreatureQueryOpcode(), debug_commandscript::HandleDebugSendChannelNotifyCommand(), debug_commandscript::HandleDebugSendChatMsgCommand(), debug_commandscript::HandleDebugSendSpellFailCommand(), HandleEquipmentSetUse(), HandleGameObjectQueryOpcode(), HandleGetMailList(), HandleGMResponseResolve(), HandleGMTicketCreateOpcode(), HandleGMTicketDeleteOpcode(), HandleGMTicketSystemStatusOpcode(), HandleGMTicketUpdateOpcode(), HandleGrantLevel(), HandleInspectOpcode(), HandleItemNameQueryOpcode(), HandleItemQuerySingleOpcode(), HandleItemTextQuery(), HandleJoinChannel(), HandleLogoutCancelOpcode(), HandleLogoutRequestOpcode(), HandleLootMoneyOpcode(), HandleMirrorImageDataRequest(), HandleNpcTextQueryOpcode(), HandlePetitionRenameGuild(), HandlePlayedTime(), HandlePlayerLogin(), HandlePVPLogDataOpcode(), Guild::HandleQuery(), HandleQueryCorpseLocation(), HandleQueryCorpseTransport(), HandleQueryNextMailTime(), HandleQueryPageText(), HandleQueryQuestsCompleted(), HandleQuestPOIQuery(), HandleReadItem(), HandleRealmSplitOpcode(), HandleRequestAccountData(), HandleRequestBattlefieldStatusOpcode(), HandleRequestHonorStats(), HandleRequestPartyMemberStatsOpcode(), Guild::HandleRoster(), HandleSignPetition(), HandleTurnInPetitionOpcode(), HandleUITimeRequest(), HandleUpdateAccountData(), HandleWhoIsOpcode(), HandleWhoOpcode(), WardenWin::InitializeModule(), ArenaTeam::Inspect(), LogoutPlayer(), ArenaTeam::MassInviteToEvent(), Guild::MassInviteToEvent(), ArenaTeam::Query(), Player::RepopAtGraveyard(), WardenMac::RequestChecks(), WardenWin::RequestChecks(), WardenMac::RequestHash(), WardenWin::RequestHash(), Warden::RequestModule(), Player::ResurrectPlayer(), ArenaTeam::Roster(), AddonChannelCommandHandler::Send(), SendAccountDataTimes(), SendActivateTaxiReply(), SendAddonsInfo(), SendAreaTriggerMessage(), SendArenaTeamCommandResult(), SendAuctionBidderNotification(), SendAuctionCommandResult(), SendAuctionHello(), SendAuctionOwnerNotification(), SendAuctionRemovedNotification(), SendAuthResponse(), SendAuthWaitQueue(), Guild::SendBankList(), Guild::SendBankLog(), SendBarberShopResult(), SendBfEntered(), SendBfInvitePlayerToQueue(), SendBfInvitePlayerToWar(), SendBfLeaveMessage(), SendBfQueueInviteResponse(), SendBindPoint(), SendCalendarRaidLockoutAdded(), SendCalendarRaidLockoutRemoved(), SendCalendarRaidLockoutUpdated(), SendCharCreate(), SendCharCustomize(), SendCharDelete(), SendCharFactionChange(), SendCharRename(), SendChatRestrictedNotice(), SendClientCacheVersion(), PlayerMenu::SendCloseGossip(), Guild::SendCommandResult(), Player::SendCorpseReclaimDelay(), Player::SendDirectMessage(), SendDiscoverNewTaxiNode(), Guild::SendEventLog(), SendFeatureSystemStatus(), World::SendGlobalGMMessage(), PlayerMenu::SendGossipMenu(), Guild::SendInfo(), SendItemEnchantTimeUpdate(), SendLearnNewTaxiNode(), SendLfgBootProposalUpdate(), SendLfgDisabled(), SendLfgJoinResult(), SendLfgLfrList(), SendLfgOfferContinue(), SendLfgPartyLockInfo(), SendLfgPlayerLockInfo(), SendLfgPlayerReward(), SendLfgQueueStatus(), SendLfgRoleCheckUpdate(), SendLfgRoleChosen(), SendLfgTeleportError(), SendLfgUpdateParty(), SendLfgUpdatePlayer(), SendLfgUpdateProposal(), SendListInventory(), Guild::SendLoginInfo(), Warden::SendModuleToClient(), Guild::SendMoneyInfo(), SendNameQueryOpcode(), SendNotification(), SendNotification(), SendNotInArenaTeamPacket(), SendPartyResult(), Guild::SendPermissions(), SendPetitionQueryOpcode(), SendPetitionShowList(), SendPetNameInvalid(), SendPetStableResult(), SendPlayerAmbiguousNotice(), SendPlayerNotFoundNotice(), PlayerMenu::SendPointOfInterest(), SendQueryTimeResponse(), PlayerMenu::SendQuestGiverOfferReward(), PlayerMenu::SendQuestGiverQuestDetails(), PlayerMenu::SendQuestGiverQuestList(), PlayerMenu::SendQuestGiverRequestItems(), PlayerMenu::SendQuestGiverStatus(), PlayerMenu::SendQuestQueryResponse(), GmTicket::SendResponse(), Guild::SendSaveEmblemResult(), SendSetPhaseShift(), SendSetPlayerDeclinedNamesResult(), SendShowBank(), SendShowMailBox(), SendStablePet(), ArenaTeam::SendStats(), ChatHandler::SendSysMessage(), SendTabardVendorActivate(), Group::SendTargetIconList(), SendTaxiMenu(), SendTaxiStatus(), Guild::BankTab::SendText(), TicketMgr::SendTicket(), SendTimeSync(), SendTradeStatus(), SendTutorialsData(), SendUpdateTrade(), and SendWrongFactionNotice().

◆ SendPartyResult()

void WorldSession::SendPartyResult ( PartyOperation  operation,
std::string const &  member,
PartyResult  res,
uint32  val = 0 
)

◆ SendPetitionQueryOpcode()

◆ SendPetitionShowList()

◆ SendPetitionSigns()

◆ SendPetNameInvalid()

void WorldSession::SendPetNameInvalid ( uint32  error,
std::string const &  name,
DeclinedName *  declinedName 
)

◆ SendPetStableResult()

void WorldSession::SendPetStableResult ( uint8  guid)

◆ SendPlayerAmbiguousNotice()

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

Definition at line 657 of file ChatHandler.cpp.

References SendPacket(), and SMSG_CHAT_PLAYER_AMBIGUOUS.

◆ SendPlayerNotFoundNotice()

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

Definition at line 650 of file ChatHandler.cpp.

References SendPacket(), and SMSG_CHAT_PLAYER_NOT_FOUND.

Referenced by HandleChatMessage().

◆ SendQueryPetNameResponse()

◆ SendQueryTimeResponse()

◆ SendSetPhaseShift()

void WorldSession::SendSetPhaseShift ( uint32  phaseShift)

◆ SendSetPlayerDeclinedNamesResult()

void WorldSession::SendSetPlayerDeclinedNamesResult ( DeclinedNameResult  result,
ObjectGuid  guid 
)

◆ SendShowBank()

◆ SendShowMailBox()

◆ SendSpiritResurrect()

◆ SendStablePet()

◆ SendTabardVendorActivate()

void WorldSession::SendTabardVendorActivate ( ObjectGuid  guid)

◆ SendTaxiMenu()

◆ SendTaxiStatus()

◆ SendTimeSync()

◆ SendTradeStatus()

◆ SendTrainerList()

◆ SendTutorialsData()

void WorldSession::SendTutorialsData ( )

◆ SendUpdateTrade()

◆ SendWrongFactionNotice()

void WorldSession::SendWrongFactionNotice ( )

Definition at line 664 of file ChatHandler.cpp.

References SendPacket(), and SMSG_CHAT_WRONG_FACTION.

Referenced by HandleChatMessage().

◆ SetAccountData()

◆ SetCalendarEventCreationCooldown()

void WorldSession::SetCalendarEventCreationCooldown ( time_t  cooldown)
inline

Definition at line 762 of file WorldSession.h.

Referenced by HandleCalendarAddEvent(), and HandleCalendarCopyEvent().

◆ SetInQueue()

void WorldSession::SetInQueue ( bool  state)
inline

Session in auth.queue currently.

Definition at line 609 of file WorldSession.h.

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

◆ SetLatency()

void WorldSession::SetLatency ( uint32  latency)
inline

Definition at line 743 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 615 of file WorldSession.h.

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

◆ SetPlayer()

void WorldSession::SetPlayer ( Player *  player)

◆ SetSecurity()

void WorldSession::SetSecurity ( AccountTypes  security)
inline

Definition at line 599 of file WorldSession.h.

◆ SetTutorialInt()

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

Definition at line 679 of file WorldSession.h.

References TUTORIALS_FLAG_CHANGED.

Referenced by HandleTutorialClear(), HandleTutorialFlag(), and HandleTutorialReset().

◆ ShouldLogOut()

bool WorldSession::ShouldLogOut ( time_t  currTime) const
inline

Is logout cooldown expired?

Definition at line 621 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 276 of file WorldSession.cpp.

References _player, _recvQueue, _timeSyncTimer, _warden, AntiDOS, ClientOpcodeHandler::Call(), CMSG_CHAR_ENUM, CONFIG_CHAT_STRICT_LINK_CHECKING_KICK, WorldSession::DosProtection::EvaluateOpcode(), expireTime, forceExit, GetAccountId(), GameTime::GetGameTime(), WorldPackets::InvalidStringValueException::GetInvalidValue(), WorldPacket::GetOpcode(), GetOpcodeNameForLogging(), GetPlayer(), GetPlayerInfo(), GetRemoteAddress(), HasPermission(), ByteBuffer::hexlike(), IsConnectionIdle(), Object::IsInWorld(), KickPlayer(), LogoutPlayer(), LogUnexpectedOpcode(), LogUnprocessedTail(), m_inQueue, m_playerLoading, m_playerLogout, m_playerRecentlyLogout, m_Socket, OpcodeHandler::Name, LockedQueue< T, StorageType >::next(), opcodeTable, ProcessQueryCallbacks(), PacketFilter::ProcessUnsafe(), rbac::RBAC_PERM_IGNORE_IDLE_CONNECTION, LockedQueue< T, StorageType >::readd(), SendTimeSync(), ShouldLogOut(), sScriptMgr, OpcodeHandler::Status, STATUS_AUTHED, 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()

◆ 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.

Cannot fly and fall at the same time

Definition at line 46 of file MovementHandler.cpp.

References Movement::MoveSpline::Finalized(), GetPlayer(), GetSecurity(), Unit::HasAuraType(), MovementInfo::HasMovementFlag(), Movement::MoveSpline::Initialized(), 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_ENABLED, MOVEMENTFLAG_STRAFE_LEFT, MOVEMENTFLAG_STRAFE_RIGHT, MOVEMENTFLAG_WATERWALKING, Unit::movespline, MovementInfo::pos, REMOVE_VIOLATING_FLAGS, SEC_PLAYER, SPELL_AURA_FEATHER_FALL, SPELL_AURA_FLY, SPELL_AURA_GHOST, SPELL_AURA_HOVER, SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED, SPELL_AURA_WATER_WALK, and VEHICLE_FLAG_FIXED_POSITION.

Referenced by HandleDismissControlledVehicle(), HandleMovementOpcode(), and ReadMovementInfo().

◆ WriteMovementInfo()

void WorldSession::WriteMovementInfo ( WorldPacket *  data,
MovementInfo *  mi 
)
static

Definition at line 951 of file WorldSession.cpp.

References MovementInfo::guid, and ObjectGuid::WriteAsPacked().

Referenced by HandleMoveKnockBackAck().

Friends And Related Symbol Documentation

◆ World

friend class World
friend

Definition at line 1285 of file WorldSession.h.

Member Data Documentation

◆ _accountData

AccountData WorldSession::_accountData[NUM_ACCOUNT_DATA_TYPES]
private

Definition at line 1362 of file WorldSession.h.

Referenced by LoadAccountData(), and SetAccountData().

◆ _accountId

uint32 WorldSession::_accountId
private

Definition at line 1345 of file WorldSession.h.

◆ _accountName

std::string WorldSession::_accountName
private

Definition at line 1346 of file WorldSession.h.

Referenced by LoadPermissions(), and LoadPermissionsAsync().

◆ _addons

struct WorldSession::Addons WorldSession::_addons
private

Referenced by ReadAddonsInfo(), and SendAddonsInfo().

◆ _calendarEventCreationCooldown

time_t WorldSession::_calendarEventCreationCooldown
private

Definition at line 1392 of file WorldSession.h.

◆ _gameClient

GameClient* WorldSession::_gameClient
private

Definition at line 1393 of file WorldSession.h.

Referenced by ~WorldSession().

◆ _instanceResetTimes

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

◆ _legitCharacters

GuidSet WorldSession::_legitCharacters
private

Definition at line 1336 of file WorldSession.h.

Referenced by HandleCharEnum().

◆ _logoutTime

time_t WorldSession::_logoutTime
private

Definition at line 1352 of file WorldSession.h.

◆ _pendingTimeSyncRequests

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

Definition at line 1387 of file WorldSession.h.

Referenced by HandleTimeSyncResponse(), ResetTimeSync(), and SendTimeSync().

◆ _player

Player* WorldSession::_player
private

Definition at line 1339 of file WorldSession.h.

Referenced by CanOpenMailBox(), DoLootRelease(), GetPlayerInfo(), GetPlayerName(), HandleAcceptGrantLevel(), HandleAcceptTradeOpcode(), HandleAddFriendOpcode(), HandleAlterAppearance(), HandleAreaSpiritHealerQueryOpcode(), HandleAreaSpiritHealerQueueOpcode(), HandleAreaTriggerOpcode(), HandleArenaTeamAcceptOpcode(), HandleArenaTeamDeclineOpcode(), HandleArenaTeamDisbandOpcode(), HandleArenaTeamLeaderOpcode(), HandleArenaTeamLeaveOpcode(), HandleArenaTeamRemoveOpcode(), HandleAttackSwingOpcode(), HandleAuctionListItems(), HandleAuctionListOwnerItems(), HandleAuctionSellItem(), HandleAutoBankItemOpcode(), HandleAutoEquipItemOpcode(), HandleAutoEquipItemSlotOpcode(), HandleAutoStoreBagItemOpcode(), HandleAutoStoreBankItemOpcode(), HandleAutostoreLootItemOpcode(), HandleBattlefieldLeaveOpcode(), HandleBattlefieldListOpcode(), HandleBattleFieldPortOpcode(), HandleBattlegroundPlayerPositionsOpcode(), HandleBattlemasterHelloOpcode(), HandleBattlemasterJoinArena(), HandleBattlemasterJoinOpcode(), HandleBeginTradeOpcode(), HandleBfEntryInviteResponse(), HandleBfQueueExitRequest(), HandleBfQueueInviteResponse(), HandleBusyTradeOpcode(), HandleBuybackItem(), HandleBuyBankSlotOpcode(), HandleBuyItemInSlotOpcode(), HandleBuyStableSlot(), HandleCalendarAddEvent(), HandleCalendarArenaTeam(), HandleCalendarComplain(), HandleCalendarCopyEvent(), HandleCalendarEventInvite(), HandleCalendarEventModeratorStatus(), HandleCalendarEventRemoveInvite(), HandleCalendarEventRsvp(), HandleCalendarEventSignup(), HandleCalendarEventStatus(), HandleCalendarGetCalendar(), HandleCalendarGetEvent(), HandleCalendarGetNumPending(), HandleCalendarGuildFilter(), HandleCalendarRemoveEvent(), HandleCalendarUpdateEvent(), HandleCancelAuraOpcode(), HandleCancelAutoRepeatSpellOpcode(), HandleCancelCastOpcode(), HandleCancelGrowthAuraOpcode(), HandleCancelMountAuraOpcode(), HandleCancelTradeOpcode(), HandleCastSpellOpcode(), HandleChatIgnoredOpcode(), HandleClearTradeItemOpcode(), HandleCompleteMovie(), HandleContactListOpcode(), HandleDeclinePetition(), HandleDestroyItemOpcode(), HandleDismissControlledVehicle(), HandleDismissCritter(), HandleEjectPassenger(), HandleEmoteOpcode(), HandleEnterPlayerVehicle(), HandleEquipmentSetDelete(), HandleEquipmentSetSave(), HandleEquipmentSetUse(), HandleFarSightOpcode(), HandleForceSpeedChangeAck(), HandleGameobjectReportUse(), HandleGetItemPurchaseData(), HandleGetMailList(), HandleGossipHelloOpcode(), HandleGossipSelectOptionOpcode(), HandleGrantLevel(), HandleGroupDisbandOpcode(), HandleGroupRaidConvertOpcode(), HandleHearthAndResurrect(), HandleIgnoreTradeOpcode(), HandleInitiateTradeOpcode(), HandleInspectOpcode(), HandleInstanceLockResponse(), HandleItemRefund(), HandleItemTextQuery(), HandleLearnPreviewTalents(), HandleLearnPreviewTalentsPet(), HandleLearnTalentOpcode(), HandleLootMasterGiveOpcode(), HandleMailCreateTextItem(), HandleMailDelete(), HandleMailMarkAsRead(), HandleMailReturnToSender(), HandleMailTakeItem(), HandleMailTakeMoney(), HandleMirrorImageDataRequest(), HandleMoveKnockBackAck(), HandleMovementOpcode(), HandleMoveNotActiveMover(), HandleOfferPetitionOpcode(), HandleOpeningCinematic(), HandlePetAbandon(), HandlePetAction(), HandlePetActionHelper(), HandlePetCancelAuraOpcode(), HandlePetCastSpellOpcode(), HandlePetitionBuyOpcode(), HandlePetitionRenameGuild(), HandlePetitionShowSignatures(), HandlePetLearnTalent(), HandlePetRename(), HandlePetSetAction(), HandlePetSpellAutocastOpcode(), HandlePetStopAttack(), HandlePlayedTime(), HandlePlayerLogin(), HandlePushQuestToParty(), HandlePVPLogDataOpcode(), HandleQueryCorpseLocation(), HandleQueryCorpseTransport(), HandleQueryInspectAchievements(), HandleQueryNextMailTime(), HandleQueryQuestsCompleted(), HandleQuestConfirmAccept(), HandleQuestgiverAcceptQuestOpcode(), HandleQuestgiverCancel(), HandleQuestgiverChooseRewardOpcode(), HandleQuestgiverCompleteQuest(), HandleQuestgiverHelloOpcode(), HandleQuestgiverQueryQuestOpcode(), HandleQuestgiverRequestRewardOpcode(), HandleQuestgiverStatusMultipleQuery(), HandleQuestgiverStatusQueryOpcode(), HandleQuestLogRemoveQuest(), HandleQuestPOIQuery(), HandleQuestPushResult(), HandleQuestQueryOpcode(), HandleRaidTargetUpdateOpcode(), HandleReadItem(), HandleReclaimCorpse(), HandleRemoveGlyph(), HandleRepairItemOpcode(), HandleReportPvPAFK(), HandleRequestAccountData(), HandleRequestBattlefieldStatusOpcode(), HandleRequestHonorStats(), HandleRequestPetInfo(), HandleRequestRaidInfoOpcode(), HandleResetInstancesOpcode(), HandleSelfResOpcode(), HandleSellItemOpcode(), HandleSendMail(), HandleSetActiveMoverOpcode(), HandleSetAmmoOpcode(), HandleSetContactNotesOpcode(), HandleSetDungeonDifficultyOpcode(), HandleSetFactionInactiveOpcode(), HandleSetRaidDifficultyOpcode(), HandleSetSelectionOpcode(), HandleSetSheathedOpcode(), HandleSetTaxiBenchmarkOpcode(), HandleSetTradeGoldOpcode(), HandleSetTradeItemOpcode(), HandleShowingCloakOpcode(), HandleShowingHelmOpcode(), HandleSignPetition(), HandleSocketOpcode(), HandleSpellClick(), HandleSplitItemOpcode(), HandleStablePet(), HandleStableSwapPet(), HandleStandStateChangeOpcode(), HandleSummonResponseOpcode(), HandleSwapInvItemOpcode(), HandleSwapItem(), HandleTalentWipeConfirmOpcode(), HandleTextEmoteOpcode(), HandleTotemDestroyed(), HandleTrainerBuySpellOpcode(), HandleTurnInPetitionOpcode(), HandleUnacceptTradeOpcode(), HandleUnstablePet(), HandleUpdateMissileTrajectory(), HandleUpdateProjectilePosition(), HandleUseItemOpcode(), HandleWhoOpcode(), HandleWorldTeleportOpcode(), HandleWrapItemOpcode(), KickPlayer(), LogoutPlayer(), moveItems(), SendBfEntered(), SendBindPoint(), SendCalendarRaidLockoutUpdated(), SendListInventory(), SendQueryPetNameResponse(), SendSpiritResurrect(), SendTrainerList(), SendUpdateTrade(), SetPlayer(), Update(), ValidateAndGetUnitBeingMoved(), and ~WorldSession().

◆ _queryHolderProcessor

AsyncCallbackProcessor<SQLQueryHolderCallback> WorldSession::_queryHolderProcessor
private

Definition at line 1283 of file WorldSession.h.

Referenced by AddQueryHolderCallback(), and ProcessQueryCallbacks().

◆ _queryProcessor

◆ _RBACData

rbac::RBACData* WorldSession::_RBACData
private

◆ _recvQueue

LockedQueue<WorldPacket*> WorldSession::_recvQueue
private

Definition at line 1377 of file WorldSession.h.

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

◆ _security

AccountTypes WorldSession::_security
private

Definition at line 1344 of file WorldSession.h.

◆ _timeSyncClockDelta

int64 WorldSession::_timeSyncClockDelta
private

Definition at line 1384 of file WorldSession.h.

Referenced by AdjustClientMovementTime(), and ComputeNewClockDelta().

◆ _timeSyncClockDeltaQueue

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

Definition at line 1383 of file WorldSession.h.

Referenced by ComputeNewClockDelta(), and HandleTimeSyncResponse().

◆ _timeSyncNextCounter

uint32 WorldSession::_timeSyncNextCounter
private

Definition at line 1388 of file WorldSession.h.

Referenced by ResetTimeSync(), and SendTimeSync().

◆ _timeSyncTimer

uint32 WorldSession::_timeSyncTimer
private

Definition at line 1389 of file WorldSession.h.

Referenced by SendTimeSync(), and Update().

◆ _timezoneOffset

Minutes WorldSession::_timezoneOffset
private

Definition at line 1360 of file WorldSession.h.

◆ _transactionCallbacks

AsyncCallbackProcessor<TransactionCallback> WorldSession::_transactionCallbacks
private

Definition at line 1282 of file WorldSession.h.

Referenced by AddTransactionCallback(), and ProcessQueryCallbacks().

◆ _tutorials

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

Definition at line 1363 of file WorldSession.h.

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

◆ _tutorialsChanged

uint8 WorldSession::_tutorialsChanged
private

Definition at line 1364 of file WorldSession.h.

Referenced by LoadTutorialsData(), and SaveTutorialsData().

◆ _warden

std::unique_ptr<Warden> WorldSession::_warden
private

Definition at line 1350 of file WorldSession.h.

Referenced by HandleChatMessage(), HandleWardenDataOpcode(), InitWarden(), and Update().

◆ AntiDOS

class WorldSession::DosProtection WorldSession::AntiDOS
protected

Referenced by Update().

◆ expireTime

uint32 WorldSession::expireTime
private

Definition at line 1379 of file WorldSession.h.

Referenced by Update().

◆ forceExit

bool WorldSession::forceExit
private

Definition at line 1380 of file WorldSession.h.

Referenced by KickPlayer(), and Update().

◆ isRecruiter

bool WorldSession::isRecruiter
private

Definition at line 1376 of file WorldSession.h.

◆ m_Address

std::string WorldSession::m_Address
private

Definition at line 1341 of file WorldSession.h.

Referenced by WorldSession().

◆ m_currentBankerGUID

ObjectGuid WorldSession::m_currentBankerGUID
private

◆ m_expansion

uint8 WorldSession::m_expansion
private

Definition at line 1347 of file WorldSession.h.

◆ m_GUIDLow

ObjectGuid::LowType WorldSession::m_GUIDLow
private

Definition at line 1338 of file WorldSession.h.

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

◆ m_inQueue

bool WorldSession::m_inQueue
private

Definition at line 1353 of file WorldSession.h.

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

◆ m_latency

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

Definition at line 1361 of file WorldSession.h.

◆ m_muteTime

◆ m_playerLoading

bool WorldSession::m_playerLoading
private

Definition at line 1354 of file WorldSession.h.

Referenced by GetPlayerInfo(), HandlePlayerLogin(), HandlePlayerLoginOpcode(), and Update().

◆ m_playerLogout

bool WorldSession::m_playerLogout
private

Definition at line 1355 of file WorldSession.h.

Referenced by LogoutPlayer(), and Update().

◆ m_playerRecentlyLogout

bool WorldSession::m_playerRecentlyLogout
private

Definition at line 1356 of file WorldSession.h.

Referenced by LogoutPlayer(), and Update().

◆ m_playerSave

bool WorldSession::m_playerSave
private

Definition at line 1357 of file WorldSession.h.

Referenced by LogoutPlayer().

◆ m_sessionDbcLocale

LocaleConstant WorldSession::m_sessionDbcLocale
private

Definition at line 1358 of file WorldSession.h.

◆ m_sessionDbLocaleIndex

LocaleConstant WorldSession::m_sessionDbLocaleIndex
private

Definition at line 1359 of file WorldSession.h.

◆ m_Socket

std::shared_ptr<WorldSocket> WorldSession::m_Socket
private

Definition at line 1340 of file WorldSession.h.

Referenced by KickPlayer(), SendPacket(), Update(), WorldSession(), and ~WorldSession().

◆ m_timeOutTime

std::atomic<time_t> WorldSession::m_timeOutTime

Definition at line 745 of file WorldSession.h.

Referenced by IsConnectionIdle(), and ResetTimeOutTime().

◆ recruiterId

uint32 WorldSession::recruiterId
private

Definition at line 1375 of file WorldSession.h.


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