65 TC_LOG_ERROR(
"lfg",
"{} on group {} but LFG has group {} saved... Fixing.",
67 sLFGMgr->SetupGroupMember(guid, group->GetGUID());
91 TC_LOG_ERROR(
"lfg",
"LFGPlayerScript::OnMapChanged, Player {} {} is in LFG dungeon map but does not have a valid group! "
112 TC_LOG_DEBUG(
"lfg",
"LFGPlayerScript::OnMapChanged, Player {}({}) is last in the lfggroup so we disband the group.",
132 sLFGMgr->SetLeader(gguid, guid);
147 sLFGMgr->SetGroup(guid, gguid);
148 sLFGMgr->AddPlayerToGroup(gguid, guid);
157 TC_LOG_DEBUG(
"lfg",
"LFGScripts::OnRemoveMember [{}]: remove [{}] Method: {} Kicker: [{}] Reason: {}",
165 std::string str_reason =
"";
167 str_reason = std::string(reason);
168 sLFGMgr->InitBoot(gguid, kicker, guid, str_reason);
179 sLFGMgr->RemovePlayerFromGroup(gguid, guid);
185 uint8 players =
sLFGMgr->RemovePlayerFromGroup(gguid, guid);
198 if (isLFG && player->GetMap()->IsDungeon())
199 sLFGMgr->TeleportPlayer(player,
true);
204 leader->GetSession()->SendLfgOfferContinue(
sLFGMgr->GetDungeon(gguid,
false));
215 sLFGMgr->RemoveGroupData(gguid);
225 TC_LOG_DEBUG(
"lfg",
"LFGScripts::OnChangeLeader [{}]: old [{}] new [{}]",
228 sLFGMgr->SetLeader(gguid, newLeaderGuid);
238 TC_LOG_DEBUG(
"lfg",
"LFGScripts::OnInviteMember [{}]: invite [{}] leader [{}]",
#define TC_LOG_DEBUG(filterType__,...)
#define TC_LOG_ERROR(filterType__,...)
@ GROUP_REMOVEMETHOD_KICK_LFG
@ GROUP_REMOVEMETHOD_DEFAULT
@ GROUP_REMOVEMETHOD_KICK
@ GROUP_REMOVEMETHOD_LEAVE
MemberSlotList const & GetMemberSlots() const
void Disband(bool hideDestroy=false)
ObjectGuid GetGUID() const
uint32 GetMembersCount() const
ObjectGuid GetLeaderGUID() const
Difficulty GetDifficultyID() const
static ObjectGuid const Empty
std::string ToString() const
static ObjectGuid GetGUID(Object const *o)
void SendDirectMessage(WorldPacket const *data) const
bool TeleportTo(uint32 mapid, float x, float y, float z, float orientation, TeleportToOptions options=TELE_TO_NONE, Optional< uint32 > instanceId={})
WorldSession * GetSession() const
Group * GetGroup(Optional< uint8 > partyIndex)
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
std::string const & GetName() const
std::vector< NameCacheLookupResult > Players
WorldPacket const * Write() override
bool PlayerDisconnected() const
std::string GetPlayerInfo() const
void BuildNameQueryData(ObjectGuid guid, WorldPackets::Query::NameCacheLookupResult &lookupData)
void OnRemoveMember(Group *group, ObjectGuid guid, RemoveMethod method, ObjectGuid kicker, char const *reason) override
void OnInviteMember(Group *group, ObjectGuid guid) override
void OnChangeLeader(Group *group, ObjectGuid newLeaderGuid, ObjectGuid oldLeaderGuid) override
void OnAddMember(Group *group, ObjectGuid guid) override
void OnDisband(Group *group) override
void OnLogout(Player *player) override
void OnMapChanged(Player *player) override
void OnLogin(Player *player, bool loginFirst) override
TC_GAME_API Player * FindPlayer(ObjectGuid const &)
TC_GAME_API Player * FindConnectedPlayer(ObjectGuid const &)
@ LFG_OPTION_ENABLE_DUNGEON_FINDER
@ LFG_OPTION_ENABLE_RAID_BROWSER
@ LFG_UPDATETYPE_LEADER_UNK1
@ LFG_SPELL_DUNGEON_COOLDOWN
@ LFG_GROUP_KICK_VOTES_NEEDED
@ LFG_SPELL_LUCK_OF_THE_DRAW
@ LFG_SPELL_DUNGEON_DESERTER
@ LFG_STATE_FINISHED_DUNGEON