AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
lfg Namespace Reference

Classes

class  Lfg5Guids
 
struct  LFGDungeonData
 
class  LfgGroupData
 
class  LFGGroupScript
 
struct  LfgJoinResultData
 
class  LFGMgr
 
struct  LfgPlayerBoot
 
class  LfgPlayerData
 
struct  LfgPlayerRewardData
 
class  LFGPlayerScript
 
struct  LfgProposal
 
struct  LfgProposalPlayer
 
class  LFGQueue
 
struct  LfgQueueData
 
struct  LfgQueueStatusData
 
struct  LfgReward
 
struct  LfgRoleCheck
 
struct  LfgUpdateData
 
struct  LfgWaitTime
 
struct  RBEntryInfo
 
struct  RBInternalInfo
 

Typedefs

typedef std::list< Lfg5GuidsLfg5GuidsList
 
typedef std::set< uint32LfgDungeonSet
 
typedef std::map< uint32, uint32LfgLockMap
 
typedef std::map< ObjectGuid, LfgLockMapLfgLockPartyMap
 
typedef GuidSet LfgGuidSet
 
typedef GuidList LfgGuidList
 
typedef std::map< ObjectGuid, uint8LfgRolesMap
 
typedef std::map< ObjectGuid, ObjectGuidLfgGroupsMap
 
typedef std::map< uint8, LFGQueueLfgQueueContainer
 
typedef std::multimap< uint32, LfgReward const * > LfgRewardContainer
 
typedef std::pair< LfgRewardContainer::const_iterator, LfgRewardContainer::const_iterator > LfgRewardContainerBounds
 
typedef std::map< uint8, LfgDungeonSetLfgCachedDungeonContainer
 
typedef std::map< ObjectGuid, LfgAnswerLfgAnswerContainer
 
typedef std::map< ObjectGuid, LfgRoleCheckLfgRoleCheckContainer
 
typedef std::map< uint32, LfgProposalLfgProposalContainer
 
typedef std::map< ObjectGuid, LfgProposalPlayerLfgProposalPlayerContainer
 
typedef std::map< ObjectGuid, LfgPlayerBootLfgPlayerBootContainer
 
typedef std::map< ObjectGuid, LfgGroupDataLfgGroupDataContainer
 
typedef std::map< ObjectGuid, LfgPlayerDataLfgPlayerDataContainer
 
typedef std::unordered_map< uint32, LFGDungeonDataLFGDungeonContainer
 
typedef std::map< uint32, LfgWaitTimeLfgWaitTimesContainer
 
typedef std::map< ObjectGuid, LfgQueueDataLfgQueueDataContainer
 
typedef std::list< Lfg5GuidsLfgCompatibleContainer
 

Enumerations

enum  LFGEnum {
  LFG_TANKS_NEEDED = 1 ,
  LFG_HEALERS_NEEDED = 1 ,
  LFG_DPS_NEEDED = 3
}
 
enum  LfgRoles {
  PLAYER_ROLE_NONE = 0x00 ,
  PLAYER_ROLE_LEADER = 0x01 ,
  PLAYER_ROLE_TANK = 0x02 ,
  PLAYER_ROLE_HEALER = 0x04 ,
  PLAYER_ROLE_DAMAGE = 0x08
}
 
enum  LfgUpdateType {
  LFG_UPDATETYPE_DEFAULT = 0 ,
  LFG_UPDATETYPE_LEADER_UNK1 = 1 ,
  LFG_UPDATETYPE_LEAVE_RAIDBROWSER = 2 ,
  LFG_UPDATETYPE_JOIN_RAIDBROWSER = 3 ,
  LFG_UPDATETYPE_ROLECHECK_ABORTED = 4 ,
  LFG_UPDATETYPE_JOIN_QUEUE = 5 ,
  LFG_UPDATETYPE_ROLECHECK_FAILED = 6 ,
  LFG_UPDATETYPE_REMOVED_FROM_QUEUE = 7 ,
  LFG_UPDATETYPE_PROPOSAL_FAILED = 8 ,
  LFG_UPDATETYPE_PROPOSAL_DECLINED = 9 ,
  LFG_UPDATETYPE_GROUP_FOUND = 10 ,
  LFG_UPDATETYPE_ADDED_TO_QUEUE = 12 ,
  LFG_UPDATETYPE_PROPOSAL_BEGIN = 13 ,
  LFG_UPDATETYPE_UPDATE_STATUS = 14 ,
  LFG_UPDATETYPE_GROUP_MEMBER_OFFLINE = 15 ,
  LFG_UPDATETYPE_GROUP_DISBAND_UNK16 = 16
}
 
enum  LfgState {
  LFG_STATE_NONE ,
  LFG_STATE_ROLECHECK ,
  LFG_STATE_QUEUED ,
  LFG_STATE_PROPOSAL ,
  LFG_STATE_BOOT ,
  LFG_STATE_DUNGEON ,
  LFG_STATE_FINISHED_DUNGEON ,
  LFG_STATE_RAIDBROWSER
}
 
enum  LfgLockStatusType {
  LFG_LOCKSTATUS_INSUFFICIENT_EXPANSION = 1 ,
  LFG_LOCKSTATUS_TOO_LOW_LEVEL = 2 ,
  LFG_LOCKSTATUS_TOO_HIGH_LEVEL = 3 ,
  LFG_LOCKSTATUS_TOO_LOW_GEAR_SCORE = 4 ,
  LFG_LOCKSTATUS_TOO_HIGH_GEAR_SCORE = 5 ,
  LFG_LOCKSTATUS_RAID_LOCKED = 6 ,
  LFG_LOCKSTATUS_ATTUNEMENT_TOO_LOW_LEVEL = 1001 ,
  LFG_LOCKSTATUS_ATTUNEMENT_TOO_HIGH_LEVEL = 1002 ,
  LFG_LOCKSTATUS_QUEST_NOT_COMPLETED = 1022 ,
  LFG_LOCKSTATUS_MISSING_ITEM = 1025 ,
  LFG_LOCKSTATUS_NOT_IN_SEASON = 1031 ,
  LFG_LOCKSTATUS_MISSING_ACHIEVEMENT = 1034
}
 Instance lock types. More...
 
enum  LfgAnswer {
  LFG_ANSWER_PENDING = -1 ,
  LFG_ANSWER_DENY = 0 ,
  LFG_ANSWER_AGREE = 1
}
 Answer state (Also used to check compatibilites) More...
 
enum  LfgOptions {
  LFG_OPTION_ENABLE_DUNGEON_FINDER = 0x01 ,
  LFG_OPTION_ENABLE_RAID_BROWSER = 0x02 ,
  LFG_OPTION_ENABLE_SEASONAL_BOSSES = 0x04
}
 
enum  LFGMgrEnum {
  LFG_TIME_ROLECHECK = 45 * IN_MILLISECONDS ,
  LFG_TIME_BOOT = 120 ,
  LFG_TIME_PROPOSAL = 40 ,
  LFG_QUEUEUPDATE_INTERVAL = 8 * IN_MILLISECONDS ,
  LFG_SPELL_DUNGEON_COOLDOWN = 71328 ,
  LFG_SPELL_DUNGEON_DESERTER = 71041 ,
  LFG_SPELL_LUCK_OF_THE_DRAW = 72221 ,
  LFG_GROUP_KICK_VOTES_NEEDED = 3
}
 
enum  LfgFlags {
  LFG_FLAG_UNK1 = 0x1 ,
  LFG_FLAG_UNK2 = 0x2 ,
  LFG_FLAG_SEASONAL = 0x4 ,
  LFG_FLAG_UNK3 = 0x8
}
 
enum  LfgType {
  LFG_TYPE_NONE = 0 ,
  LFG_TYPE_DUNGEON = 1 ,
  LFG_TYPE_RAID = 2 ,
  LFG_TYPE_ZONE = 4 ,
  LFG_TYPE_HEROIC = 5 ,
  LFG_TYPE_RANDOM = 6
}
 Determines the type of instance. More...
 
enum  LfgProposalState {
  LFG_PROPOSAL_INITIATING = 0 ,
  LFG_PROPOSAL_FAILED = 1 ,
  LFG_PROPOSAL_SUCCESS = 2
}
 Proposal states. More...
 
enum  LfgTeleportError {
  LFG_TELEPORTERROR_OK = 0 ,
  LFG_TELEPORTERROR_PLAYER_DEAD = 1 ,
  LFG_TELEPORTERROR_FALLING = 2 ,
  LFG_TELEPORTERROR_IN_VEHICLE = 3 ,
  LFG_TELEPORTERROR_FATIGUE = 4 ,
  LFG_TELEPORTERROR_INVALID_LOCATION = 6 ,
  LFG_TELEPORTERROR_COMBAT = 8
}
 Teleport errors. More...
 
enum  LfgJoinResult {
  LFG_JOIN_OK = 0 ,
  LFG_JOIN_FAILED = 1 ,
  LFG_JOIN_GROUPFULL = 2 ,
  LFG_JOIN_INTERNAL_ERROR = 4 ,
  LFG_JOIN_NOT_MEET_REQS = 5 ,
  LFG_JOIN_PARTY_NOT_MEET_REQS = 6 ,
  LFG_JOIN_MIXED_RAID_DUNGEON = 7 ,
  LFG_JOIN_MULTI_REALM = 8 ,
  LFG_JOIN_DISCONNECTED = 9 ,
  LFG_JOIN_PARTY_INFO_FAILED = 10 ,
  LFG_JOIN_DUNGEON_INVALID = 11 ,
  LFG_JOIN_DESERTER = 12 ,
  LFG_JOIN_PARTY_DESERTER = 13 ,
  LFG_JOIN_RANDOM_COOLDOWN = 14 ,
  LFG_JOIN_PARTY_RANDOM_COOLDOWN = 15 ,
  LFG_JOIN_TOO_MUCH_MEMBERS = 16 ,
  LFG_JOIN_USING_BG_SYSTEM = 17
}
 Queue join results. More...
 
enum  LfgRoleCheckState {
  LFG_ROLECHECK_DEFAULT = 0 ,
  LFG_ROLECHECK_FINISHED = 1 ,
  LFG_ROLECHECK_INITIALITING = 2 ,
  LFG_ROLECHECK_MISSING_ROLE = 3 ,
  LFG_ROLECHECK_WRONG_ROLES = 4 ,
  LFG_ROLECHECK_ABORTED = 5 ,
  LFG_ROLECHECK_NO_ROLE = 6
}
 Role check states. More...
 
enum  LfgUpdateFlag {
  LFG_UPDATE_FLAG_NONE = 0x00 ,
  LFG_UPDATE_FLAG_CHARACTERINFO = 0x01 ,
  LFG_UPDATE_FLAG_COMMENT = 0x02 ,
  LFG_UPDATE_FLAG_GROUPLEADER = 0x04 ,
  LFG_UPDATE_FLAG_GROUPGUID = 0x08 ,
  LFG_UPDATE_FLAG_ROLES = 0x10 ,
  LFG_UPDATE_FLAG_AREA = 0x20 ,
  LFG_UPDATE_FLAG_STATUS = 0x40 ,
  LFG_UPDATE_FLAG_BINDED = 0x80
}
 
enum  LfgSeasonalDungeons {
  LFG_DUNGEON_HEADLESS_HORSEMAN = 285 ,
  LFG_DUNGEON_FROST_LORD_AHUNE = 286 ,
  LFG_DUNGEON_COREN_DIREBREW = 287 ,
  LFG_DUNGEON_CROWN_CHEMICAL_CO = 288
}
 
enum  LfgCompatibility {
  LFG_COMPATIBILITY_PENDING ,
  LFG_INCOMPATIBLES_WRONG_GROUP_SIZE ,
  LFG_INCOMPATIBLES_TOO_MUCH_PLAYERS ,
  LFG_INCOMPATIBLES_MULTIPLE_LFG_GROUPS ,
  LFG_INCOMPATIBLES_HAS_IGNORES ,
  LFG_INCOMPATIBLES_NO_ROLES ,
  LFG_INCOMPATIBLES_NO_DUNGEONS ,
  LFG_COMPATIBLES_WITH_LESS_PLAYERS ,
  LFG_COMPATIBLES_MATCH
}
 

Functions

std::string ConcatenateDungeons (LfgDungeonSet const &dungeons)
 
std::string GetRolesString (uint8 roles)
 
std::string GetStateString (LfgState state)
 
template<typename T , FMT_ENABLE_IF(std::is_enum_v< T >) >
auto format_as (T f)
 
void AddSC_LFGScripts ()
 

Typedef Documentation

◆ Lfg5GuidsList

typedef std::list<Lfg5Guids> lfg::Lfg5GuidsList

◆ LfgAnswerContainer

◆ LfgCachedDungeonContainer

◆ LfgCompatibleContainer

◆ LFGDungeonContainer

typedef std::unordered_map<uint32, LFGDungeonData> lfg::LFGDungeonContainer

◆ LfgDungeonSet

typedef std::set<uint32> lfg::LfgDungeonSet

◆ LfgGroupDataContainer

◆ LfgGroupsMap

◆ LfgGuidList

◆ LfgGuidSet

◆ LfgLockMap

typedef std::map<uint32, uint32> lfg::LfgLockMap

◆ LfgLockPartyMap

◆ LfgPlayerBootContainer

◆ LfgPlayerDataContainer

◆ LfgProposalContainer

◆ LfgProposalPlayerContainer

◆ LfgQueueContainer

◆ LfgQueueDataContainer

◆ LfgRewardContainer

typedef std::multimap<uint32, LfgReward const*> lfg::LfgRewardContainer

◆ LfgRewardContainerBounds

typedef std::pair<LfgRewardContainer::const_iterator, LfgRewardContainer::const_iterator> lfg::LfgRewardContainerBounds

◆ LfgRoleCheckContainer

◆ LfgRolesMap

typedef std::map<ObjectGuid, uint8> lfg::LfgRolesMap

◆ LfgWaitTimesContainer

Enumeration Type Documentation

◆ LfgAnswer

Answer state (Also used to check compatibilites)

Enumerator
LFG_ANSWER_PENDING 
LFG_ANSWER_DENY 
LFG_ANSWER_AGREE 
97 {
101 };
@ LFG_ANSWER_AGREE
Definition LFG.h:100
@ LFG_ANSWER_PENDING
Definition LFG.h:98
@ LFG_ANSWER_DENY
Definition LFG.h:99

◆ LfgCompatibility

Enumerator
LFG_COMPATIBILITY_PENDING 
LFG_INCOMPATIBLES_WRONG_GROUP_SIZE 
LFG_INCOMPATIBLES_TOO_MUCH_PLAYERS 
LFG_INCOMPATIBLES_MULTIPLE_LFG_GROUPS 
LFG_INCOMPATIBLES_HAS_IGNORES 
LFG_INCOMPATIBLES_NO_ROLES 
LFG_INCOMPATIBLES_NO_DUNGEONS 
LFG_COMPATIBLES_WITH_LESS_PLAYERS 
LFG_COMPATIBLES_MATCH 
26 {
34 LFG_COMPATIBLES_WITH_LESS_PLAYERS, // Values under this = not compatible (do not modify order)
35 LFG_COMPATIBLES_MATCH // Must be the last one
36 };
@ LFG_COMPATIBLES_WITH_LESS_PLAYERS
Definition LFGQueue.h:34
@ LFG_INCOMPATIBLES_HAS_IGNORES
Definition LFGQueue.h:31
@ LFG_INCOMPATIBLES_MULTIPLE_LFG_GROUPS
Definition LFGQueue.h:30
@ LFG_INCOMPATIBLES_NO_DUNGEONS
Definition LFGQueue.h:33
@ LFG_COMPATIBILITY_PENDING
Definition LFGQueue.h:27
@ LFG_COMPATIBLES_MATCH
Definition LFGQueue.h:35
@ LFG_INCOMPATIBLES_TOO_MUCH_PLAYERS
Definition LFGQueue.h:29
@ LFG_INCOMPATIBLES_WRONG_GROUP_SIZE
Definition LFGQueue.h:28
@ LFG_INCOMPATIBLES_NO_ROLES
Definition LFGQueue.h:32

◆ LFGEnum

Enumerator
LFG_TANKS_NEEDED 
LFG_HEALERS_NEEDED 
LFG_DPS_NEEDED 
31 {
35 };
@ LFG_HEALERS_NEEDED
Definition LFG.h:33
@ LFG_TANKS_NEEDED
Definition LFG.h:32
@ LFG_DPS_NEEDED
Definition LFG.h:34

◆ LfgFlags

Enumerator
LFG_FLAG_UNK1 
LFG_FLAG_UNK2 
LFG_FLAG_SEASONAL 
LFG_FLAG_UNK3 
59 {
60 LFG_FLAG_UNK1 = 0x1,
61 LFG_FLAG_UNK2 = 0x2,
63 LFG_FLAG_UNK3 = 0x8
64 };
@ LFG_FLAG_SEASONAL
Definition LFGMgr.h:62
@ LFG_FLAG_UNK3
Definition LFGMgr.h:63
@ LFG_FLAG_UNK2
Definition LFGMgr.h:61
@ LFG_FLAG_UNK1
Definition LFGMgr.h:60

◆ LfgJoinResult

Queue join results.

Enumerator
LFG_JOIN_OK 
LFG_JOIN_FAILED 
LFG_JOIN_GROUPFULL 
LFG_JOIN_INTERNAL_ERROR 
LFG_JOIN_NOT_MEET_REQS 
LFG_JOIN_PARTY_NOT_MEET_REQS 
LFG_JOIN_MIXED_RAID_DUNGEON 
LFG_JOIN_MULTI_REALM 
LFG_JOIN_DISCONNECTED 
LFG_JOIN_PARTY_INFO_FAILED 
LFG_JOIN_DUNGEON_INVALID 
LFG_JOIN_DESERTER 
LFG_JOIN_PARTY_DESERTER 
LFG_JOIN_RANDOM_COOLDOWN 
LFG_JOIN_PARTY_RANDOM_COOLDOWN 
LFG_JOIN_TOO_MUCH_MEMBERS 
LFG_JOIN_USING_BG_SYSTEM 
100 {
101 // 3 = No client reaction | 18 = "Rolecheck failed"
102 LFG_JOIN_OK = 0, // Joined (no client msg)
103 LFG_JOIN_FAILED = 1, // RoleCheck Failed
104 LFG_JOIN_GROUPFULL = 2, // Your group is full
105 LFG_JOIN_INTERNAL_ERROR = 4, // Internal LFG Error
106 LFG_JOIN_NOT_MEET_REQS = 5, // You do not meet the requirements for the chosen dungeons
107 LFG_JOIN_PARTY_NOT_MEET_REQS = 6, // One or more party members do not meet the requirements for the chosen dungeons
108 LFG_JOIN_MIXED_RAID_DUNGEON = 7, // You cannot mix dungeons, raids, and random when picking dungeons
109 LFG_JOIN_MULTI_REALM = 8, // The dungeon you chose does not support players from multiple realms
110 LFG_JOIN_DISCONNECTED = 9, // One or more party members are pending invites or disconnected
111 LFG_JOIN_PARTY_INFO_FAILED = 10, // Could not retrieve information about some party members
112 LFG_JOIN_DUNGEON_INVALID = 11, // One or more dungeons was not valid
113 LFG_JOIN_DESERTER = 12, // You can not queue for dungeons until your deserter debuff wears off
114 LFG_JOIN_PARTY_DESERTER = 13, // One or more party members has a deserter debuff
115 LFG_JOIN_RANDOM_COOLDOWN = 14, // You can not queue for random dungeons while on random dungeon cooldown
116 LFG_JOIN_PARTY_RANDOM_COOLDOWN = 15, // One or more party members are on random dungeon cooldown
117 LFG_JOIN_TOO_MUCH_MEMBERS = 16, // You can not enter dungeons with more that 5 party members
118 LFG_JOIN_USING_BG_SYSTEM = 17 // You can not use the dungeon system while in BG or arenas
119 };
@ LFG_JOIN_TOO_MUCH_MEMBERS
Definition LFGMgr.h:117
@ LFG_JOIN_MULTI_REALM
Definition LFGMgr.h:109
@ LFG_JOIN_DISCONNECTED
Definition LFGMgr.h:110
@ LFG_JOIN_DUNGEON_INVALID
Definition LFGMgr.h:112
@ LFG_JOIN_USING_BG_SYSTEM
Definition LFGMgr.h:118
@ LFG_JOIN_INTERNAL_ERROR
Definition LFGMgr.h:105
@ LFG_JOIN_MIXED_RAID_DUNGEON
Definition LFGMgr.h:108
@ LFG_JOIN_PARTY_NOT_MEET_REQS
Definition LFGMgr.h:107
@ LFG_JOIN_DESERTER
Definition LFGMgr.h:113
@ LFG_JOIN_RANDOM_COOLDOWN
Definition LFGMgr.h:115
@ LFG_JOIN_GROUPFULL
Definition LFGMgr.h:104
@ LFG_JOIN_PARTY_INFO_FAILED
Definition LFGMgr.h:111
@ LFG_JOIN_PARTY_RANDOM_COOLDOWN
Definition LFGMgr.h:116
@ LFG_JOIN_OK
Definition LFGMgr.h:102
@ LFG_JOIN_PARTY_DESERTER
Definition LFGMgr.h:114
@ LFG_JOIN_FAILED
Definition LFGMgr.h:103
@ LFG_JOIN_NOT_MEET_REQS
Definition LFGMgr.h:106

◆ LfgLockStatusType

Instance lock types.

Enumerator
LFG_LOCKSTATUS_INSUFFICIENT_EXPANSION 
LFG_LOCKSTATUS_TOO_LOW_LEVEL 
LFG_LOCKSTATUS_TOO_HIGH_LEVEL 
LFG_LOCKSTATUS_TOO_LOW_GEAR_SCORE 
LFG_LOCKSTATUS_TOO_HIGH_GEAR_SCORE 
LFG_LOCKSTATUS_RAID_LOCKED 
LFG_LOCKSTATUS_ATTUNEMENT_TOO_LOW_LEVEL 
LFG_LOCKSTATUS_ATTUNEMENT_TOO_HIGH_LEVEL 
LFG_LOCKSTATUS_QUEST_NOT_COMPLETED 
LFG_LOCKSTATUS_MISSING_ITEM 
LFG_LOCKSTATUS_NOT_IN_SEASON 
LFG_LOCKSTATUS_MISSING_ACHIEVEMENT 
80 {
93 };
@ LFG_LOCKSTATUS_INSUFFICIENT_EXPANSION
Definition LFG.h:81
@ LFG_LOCKSTATUS_TOO_LOW_LEVEL
Definition LFG.h:82
@ LFG_LOCKSTATUS_RAID_LOCKED
Definition LFG.h:86
@ LFG_LOCKSTATUS_TOO_LOW_GEAR_SCORE
Definition LFG.h:84
@ LFG_LOCKSTATUS_MISSING_ITEM
Definition LFG.h:90
@ LFG_LOCKSTATUS_TOO_HIGH_LEVEL
Definition LFG.h:83
@ LFG_LOCKSTATUS_TOO_HIGH_GEAR_SCORE
Definition LFG.h:85
@ LFG_LOCKSTATUS_ATTUNEMENT_TOO_HIGH_LEVEL
Definition LFG.h:88
@ LFG_LOCKSTATUS_ATTUNEMENT_TOO_LOW_LEVEL
Definition LFG.h:87
@ LFG_LOCKSTATUS_MISSING_ACHIEVEMENT
Definition LFG.h:92
@ LFG_LOCKSTATUS_NOT_IN_SEASON
Definition LFG.h:91
@ LFG_LOCKSTATUS_QUEST_NOT_COMPLETED
Definition LFG.h:89

◆ LFGMgrEnum

Enumerator
LFG_TIME_ROLECHECK 
LFG_TIME_BOOT 
LFG_TIME_PROPOSAL 
LFG_QUEUEUPDATE_INTERVAL 
LFG_SPELL_DUNGEON_COOLDOWN 
LFG_SPELL_DUNGEON_DESERTER 
LFG_SPELL_LUCK_OF_THE_DRAW 
LFG_GROUP_KICK_VOTES_NEEDED 
47 {
49 LFG_TIME_BOOT = 120,
56 };
constexpr auto IN_MILLISECONDS
Definition Common.h:53
@ LFG_SPELL_DUNGEON_DESERTER
Definition cs_deserter.cpp:35
@ LFG_SPELL_DUNGEON_COOLDOWN
Definition LFGMgr.h:52
@ LFG_TIME_BOOT
Definition LFGMgr.h:49
@ LFG_TIME_PROPOSAL
Definition LFGMgr.h:50
@ LFG_GROUP_KICK_VOTES_NEEDED
Definition LFGMgr.h:55
@ LFG_TIME_ROLECHECK
Definition LFGMgr.h:48
@ LFG_SPELL_LUCK_OF_THE_DRAW
Definition LFGMgr.h:54
@ LFG_QUEUEUPDATE_INTERVAL
Definition LFGMgr.h:51

◆ LfgOptions

Enumerator
LFG_OPTION_ENABLE_DUNGEON_FINDER 
LFG_OPTION_ENABLE_RAID_BROWSER 
LFG_OPTION_ENABLE_SEASONAL_BOSSES 
40 {
44 };
@ LFG_OPTION_ENABLE_SEASONAL_BOSSES
Definition LFGMgr.h:43
@ LFG_OPTION_ENABLE_DUNGEON_FINDER
Definition LFGMgr.h:41
@ LFG_OPTION_ENABLE_RAID_BROWSER
Definition LFGMgr.h:42

◆ LfgProposalState

Proposal states.

Enumerator
LFG_PROPOSAL_INITIATING 
LFG_PROPOSAL_FAILED 
LFG_PROPOSAL_SUCCESS 
79 {
83 };
@ LFG_PROPOSAL_SUCCESS
Definition LFGMgr.h:82
@ LFG_PROPOSAL_FAILED
Definition LFGMgr.h:81
@ LFG_PROPOSAL_INITIATING
Definition LFGMgr.h:80

◆ LfgRoleCheckState

Role check states.

Enumerator
LFG_ROLECHECK_DEFAULT 
LFG_ROLECHECK_FINISHED 
LFG_ROLECHECK_INITIALITING 
LFG_ROLECHECK_MISSING_ROLE 
LFG_ROLECHECK_WRONG_ROLES 
LFG_ROLECHECK_ABORTED 
LFG_ROLECHECK_NO_ROLE 
123 {
124 LFG_ROLECHECK_DEFAULT = 0, // Internal use = Not initialized.
125 LFG_ROLECHECK_FINISHED = 1, // Role check finished
126 LFG_ROLECHECK_INITIALITING = 2, // Role check begins
127 LFG_ROLECHECK_MISSING_ROLE = 3, // Someone didn't selected a role after 2 mins
128 LFG_ROLECHECK_WRONG_ROLES = 4, // Can't form a group with that role selection
129 LFG_ROLECHECK_ABORTED = 5, // Someone leave the group
130 LFG_ROLECHECK_NO_ROLE = 6 // Someone selected no role
131 };
@ LFG_ROLECHECK_WRONG_ROLES
Definition LFGMgr.h:128
@ LFG_ROLECHECK_MISSING_ROLE
Definition LFGMgr.h:127
@ LFG_ROLECHECK_ABORTED
Definition LFGMgr.h:129
@ LFG_ROLECHECK_DEFAULT
Definition LFGMgr.h:124
@ LFG_ROLECHECK_FINISHED
Definition LFGMgr.h:125
@ LFG_ROLECHECK_NO_ROLE
Definition LFGMgr.h:130
@ LFG_ROLECHECK_INITIALITING
Definition LFGMgr.h:126

◆ LfgRoles

Enumerator
PLAYER_ROLE_NONE 
PLAYER_ROLE_LEADER 
PLAYER_ROLE_TANK 
PLAYER_ROLE_HEALER 
PLAYER_ROLE_DAMAGE 
38 {
39 PLAYER_ROLE_NONE = 0x00,
40 PLAYER_ROLE_LEADER = 0x01,
41 PLAYER_ROLE_TANK = 0x02,
42 PLAYER_ROLE_HEALER = 0x04,
44 };
@ PLAYER_ROLE_DAMAGE
Definition LFG.h:43
@ PLAYER_ROLE_TANK
Definition LFG.h:41
@ PLAYER_ROLE_NONE
Definition LFG.h:39
@ PLAYER_ROLE_LEADER
Definition LFG.h:40
@ PLAYER_ROLE_HEALER
Definition LFG.h:42

◆ LfgSeasonalDungeons

Enumerator
LFG_DUNGEON_HEADLESS_HORSEMAN 
LFG_DUNGEON_FROST_LORD_AHUNE 
LFG_DUNGEON_COREN_DIREBREW 
LFG_DUNGEON_CROWN_CHEMICAL_CO 
147 {
152 };
@ LFG_DUNGEON_FROST_LORD_AHUNE
Definition LFGMgr.h:149
@ LFG_DUNGEON_HEADLESS_HORSEMAN
Definition LFGMgr.h:148
@ LFG_DUNGEON_CROWN_CHEMICAL_CO
Definition LFGMgr.h:151
@ LFG_DUNGEON_COREN_DIREBREW
Definition LFGMgr.h:150

◆ LfgState

Enumerator
LFG_STATE_NONE 
LFG_STATE_ROLECHECK 
LFG_STATE_QUEUED 
LFG_STATE_PROPOSAL 
LFG_STATE_BOOT 
LFG_STATE_DUNGEON 
LFG_STATE_FINISHED_DUNGEON 
LFG_STATE_RAIDBROWSER 
67 {
68 LFG_STATE_NONE, // Not using LFG / LFR
69 LFG_STATE_ROLECHECK, // Rolecheck active
70 LFG_STATE_QUEUED, // Queued
71 LFG_STATE_PROPOSAL, // Proposal active
72 LFG_STATE_BOOT, // Vote kick active
73 LFG_STATE_DUNGEON, // In LFG Group, in a Dungeon
74 LFG_STATE_FINISHED_DUNGEON, // In LFG Group, in a finished Dungeon
75 LFG_STATE_RAIDBROWSER // Using Raid finder
76 };
@ LFG_STATE_RAIDBROWSER
Definition LFG.h:75
@ LFG_STATE_ROLECHECK
Definition LFG.h:69
@ LFG_STATE_FINISHED_DUNGEON
Definition LFG.h:74
@ LFG_STATE_DUNGEON
Definition LFG.h:73
@ LFG_STATE_PROPOSAL
Definition LFG.h:71
@ LFG_STATE_BOOT
Definition LFG.h:72
@ LFG_STATE_NONE
Definition LFG.h:68
@ LFG_STATE_QUEUED
Definition LFG.h:70

◆ LfgTeleportError

Teleport errors.

Enumerator
LFG_TELEPORTERROR_OK 
LFG_TELEPORTERROR_PLAYER_DEAD 
LFG_TELEPORTERROR_FALLING 
LFG_TELEPORTERROR_IN_VEHICLE 
LFG_TELEPORTERROR_FATIGUE 
LFG_TELEPORTERROR_INVALID_LOCATION 
LFG_TELEPORTERROR_COMBAT 
87 {
88 // 7 = "You can't do that right now" | 5 = No client reaction
89 LFG_TELEPORTERROR_OK = 0, // Internal use
95 LFG_TELEPORTERROR_COMBAT = 8 // FIXME - It can be 7 or 8 (Need proper data)
96 };
@ LFG_TELEPORTERROR_INVALID_LOCATION
Definition LFGMgr.h:94
@ LFG_TELEPORTERROR_OK
Definition LFGMgr.h:89
@ LFG_TELEPORTERROR_FATIGUE
Definition LFGMgr.h:93
@ LFG_TELEPORTERROR_COMBAT
Definition LFGMgr.h:95
@ LFG_TELEPORTERROR_PLAYER_DEAD
Definition LFGMgr.h:90
@ LFG_TELEPORTERROR_FALLING
Definition LFGMgr.h:91
@ LFG_TELEPORTERROR_IN_VEHICLE
Definition LFGMgr.h:92

◆ LfgType

Determines the type of instance.

Enumerator
LFG_TYPE_NONE 
LFG_TYPE_DUNGEON 
LFG_TYPE_RAID 
LFG_TYPE_ZONE 
LFG_TYPE_HEROIC 
LFG_TYPE_RANDOM 
68 {
69 LFG_TYPE_NONE = 0,
71 LFG_TYPE_RAID = 2,
72 LFG_TYPE_ZONE = 4,
75 };
@ LFG_TYPE_NONE
Definition LFGMgr.h:69
@ LFG_TYPE_ZONE
Definition LFGMgr.h:72
@ LFG_TYPE_RANDOM
Definition LFGMgr.h:74
@ LFG_TYPE_RAID
Definition LFGMgr.h:71
@ LFG_TYPE_DUNGEON
Definition LFGMgr.h:70
@ LFG_TYPE_HEROIC
Definition LFGMgr.h:73

◆ LfgUpdateFlag

Enumerator
LFG_UPDATE_FLAG_NONE 
LFG_UPDATE_FLAG_CHARACTERINFO 
LFG_UPDATE_FLAG_COMMENT 
LFG_UPDATE_FLAG_GROUPLEADER 
LFG_UPDATE_FLAG_GROUPGUID 
LFG_UPDATE_FLAG_ROLES 
LFG_UPDATE_FLAG_AREA 
LFG_UPDATE_FLAG_STATUS 
LFG_UPDATE_FLAG_BINDED 
134 {
144 };
@ LFG_UPDATE_FLAG_AREA
Definition LFGMgr.h:141
@ LFG_UPDATE_FLAG_BINDED
Definition LFGMgr.h:143
@ LFG_UPDATE_FLAG_GROUPLEADER
Definition LFGMgr.h:138
@ LFG_UPDATE_FLAG_STATUS
Definition LFGMgr.h:142
@ LFG_UPDATE_FLAG_NONE
Definition LFGMgr.h:135
@ LFG_UPDATE_FLAG_COMMENT
Definition LFGMgr.h:137
@ LFG_UPDATE_FLAG_CHARACTERINFO
Definition LFGMgr.h:136
@ LFG_UPDATE_FLAG_ROLES
Definition LFGMgr.h:140
@ LFG_UPDATE_FLAG_GROUPGUID
Definition LFGMgr.h:139

◆ LfgUpdateType

Enumerator
LFG_UPDATETYPE_DEFAULT 
LFG_UPDATETYPE_LEADER_UNK1 
LFG_UPDATETYPE_LEAVE_RAIDBROWSER 
LFG_UPDATETYPE_JOIN_RAIDBROWSER 
LFG_UPDATETYPE_ROLECHECK_ABORTED 
LFG_UPDATETYPE_JOIN_QUEUE 
LFG_UPDATETYPE_ROLECHECK_FAILED 
LFG_UPDATETYPE_REMOVED_FROM_QUEUE 
LFG_UPDATETYPE_PROPOSAL_FAILED 
LFG_UPDATETYPE_PROPOSAL_DECLINED 
LFG_UPDATETYPE_GROUP_FOUND 
LFG_UPDATETYPE_ADDED_TO_QUEUE 
LFG_UPDATETYPE_PROPOSAL_BEGIN 
LFG_UPDATETYPE_UPDATE_STATUS 
LFG_UPDATETYPE_GROUP_MEMBER_OFFLINE 
LFG_UPDATETYPE_GROUP_DISBAND_UNK16 
47 {
48 LFG_UPDATETYPE_DEFAULT = 0, // Internal Use
49 LFG_UPDATETYPE_LEADER_UNK1 = 1, // FIXME: At group leave
63 LFG_UPDATETYPE_GROUP_DISBAND_UNK16 = 16, // FIXME: Sometimes at group disband
64 };
@ LFG_UPDATETYPE_JOIN_RAIDBROWSER
Definition LFG.h:51
@ LFG_UPDATETYPE_ROLECHECK_FAILED
Definition LFG.h:54
@ LFG_UPDATETYPE_GROUP_FOUND
Definition LFG.h:58
@ LFG_UPDATETYPE_DEFAULT
Definition LFG.h:48
@ LFG_UPDATETYPE_ADDED_TO_QUEUE
Definition LFG.h:59
@ LFG_UPDATETYPE_GROUP_MEMBER_OFFLINE
Definition LFG.h:62
@ LFG_UPDATETYPE_UPDATE_STATUS
Definition LFG.h:61
@ LFG_UPDATETYPE_PROPOSAL_FAILED
Definition LFG.h:56
@ LFG_UPDATETYPE_GROUP_DISBAND_UNK16
Definition LFG.h:63
@ LFG_UPDATETYPE_PROPOSAL_DECLINED
Definition LFG.h:57
@ LFG_UPDATETYPE_ROLECHECK_ABORTED
Definition LFG.h:52
@ LFG_UPDATETYPE_REMOVED_FROM_QUEUE
Definition LFG.h:55
@ LFG_UPDATETYPE_LEADER_UNK1
Definition LFG.h:49
@ LFG_UPDATETYPE_PROPOSAL_BEGIN
Definition LFG.h:60
@ LFG_UPDATETYPE_JOIN_QUEUE
Definition LFG.h:53
@ LFG_UPDATETYPE_LEAVE_RAIDBROWSER
Definition LFG.h:50

Function Documentation

◆ AddSC_LFGScripts()

void lfg::AddSC_LFGScripts ( )
320 {
321 new LFGPlayerScript();
322 new LFGGroupScript();
323 }
Definition LFGScripts.h:45
Definition LFGScripts.h:32

Referenced by ScriptMgr::Initialize().

◆ ConcatenateDungeons()

std::string lfg::ConcatenateDungeons ( LfgDungeonSet const &  dungeons)
25 {
26 std::string dungeonstr = "";
27 if (!dungeons.empty())
28 {
29 std::ostringstream o;
30 LfgDungeonSet::const_iterator it = dungeons.begin();
31 o << (*it);
32 for (++it; it != dungeons.end(); ++it)
33 o << ", " << uint32(*it);
34 dungeonstr = o.str();
35 }
36 return dungeonstr;
37 }
std::uint32_t uint32
Definition Define.h:107

Referenced by GetPlayerInfo().

◆ format_as()

template<typename T , FMT_ENABLE_IF(std::is_enum_v< T >) >
auto lfg::format_as ( f)
637{ return fmt::underlying(f); }

◆ GetRolesString()

std::string lfg::GetRolesString ( uint8  roles)
40 {
41 std::string rolesstr = "";
42
43 if (roles & PLAYER_ROLE_TANK)
44 rolesstr.append(sObjectMgr->GetAcoreStringForDBCLocale(LANG_LFG_ROLE_TANK));
45
46 if (roles & PLAYER_ROLE_HEALER)
47 {
48 if (!rolesstr.empty())
49 rolesstr.append(", ");
50 rolesstr.append(sObjectMgr->GetAcoreStringForDBCLocale(LANG_LFG_ROLE_HEALER));
51 }
52
53 if (roles & PLAYER_ROLE_DAMAGE)
54 {
55 if (!rolesstr.empty())
56 rolesstr.append(", ");
57 rolesstr.append(sObjectMgr->GetAcoreStringForDBCLocale(LANG_LFG_ROLE_DAMAGE));
58 }
59
60 if (roles & PLAYER_ROLE_LEADER)
61 {
62 if (!rolesstr.empty())
63 rolesstr.append(", ");
64 rolesstr.append(sObjectMgr->GetAcoreStringForDBCLocale(LANG_LFG_ROLE_LEADER));
65 }
66
67 if (rolesstr.empty())
68 rolesstr.append(sObjectMgr->GetAcoreStringForDBCLocale(LANG_LFG_ROLE_NONE));
69
70 return rolesstr;
71 }
@ LANG_LFG_ROLE_TANK
Definition Language.h:1191
@ LANG_LFG_ROLE_LEADER
Definition Language.h:1194
@ LANG_LFG_ROLE_HEALER
Definition Language.h:1192
@ LANG_LFG_ROLE_NONE
Definition Language.h:1195
@ LANG_LFG_ROLE_DAMAGE
Definition Language.h:1193
#define sObjectMgr
Definition ObjectMgr.h:1636

References LANG_LFG_ROLE_DAMAGE, LANG_LFG_ROLE_HEALER, LANG_LFG_ROLE_LEADER, LANG_LFG_ROLE_NONE, LANG_LFG_ROLE_TANK, PLAYER_ROLE_DAMAGE, PLAYER_ROLE_HEALER, PLAYER_ROLE_LEADER, PLAYER_ROLE_TANK, and sObjectMgr.

Referenced by GetPlayerInfo().

◆ GetStateString()

std::string lfg::GetStateString ( LfgState  state)
74 {
75 int32 entry = LANG_LFG_ERROR;
76 switch (state)
77 {
78 case LFG_STATE_NONE:
79 entry = LANG_LFG_STATE_NONE;
80 break;
83 break;
86 break;
89 break;
92 break;
93 case LFG_STATE_BOOT:
94 entry = LANG_LFG_STATE_BOOT;
95 break;
98 break;
101 break;
102 }
103
104 return std::string(sObjectMgr->GetAcoreStringForDBCLocale(entry));
105 }
std::int32_t int32
Definition Define.h:103
@ LANG_LFG_STATE_BOOT
Definition Language.h:1187
@ LANG_LFG_STATE_PROPOSAL
Definition Language.h:1186
@ LANG_LFG_ERROR
Definition Language.h:1196
@ LANG_LFG_STATE_ROLECHECK
Definition Language.h:1184
@ LANG_LFG_STATE_RAIDBROWSER
Definition Language.h:1190
@ LANG_LFG_STATE_DUNGEON
Definition Language.h:1188
@ LANG_LFG_STATE_NONE
Definition Language.h:1183
@ LANG_LFG_STATE_FINISHED_DUNGEON
Definition Language.h:1189
@ LANG_LFG_STATE_QUEUED
Definition Language.h:1185

References LANG_LFG_ERROR, LANG_LFG_STATE_BOOT, LANG_LFG_STATE_DUNGEON, LANG_LFG_STATE_FINISHED_DUNGEON, LANG_LFG_STATE_NONE, LANG_LFG_STATE_PROPOSAL, LANG_LFG_STATE_QUEUED, LANG_LFG_STATE_RAIDBROWSER, LANG_LFG_STATE_ROLECHECK, LFG_STATE_BOOT, LFG_STATE_DUNGEON, LFG_STATE_FINISHED_DUNGEON, LFG_STATE_NONE, LFG_STATE_PROPOSAL, LFG_STATE_QUEUED, LFG_STATE_RAIDBROWSER, LFG_STATE_ROLECHECK, and sObjectMgr.

Referenced by GetPlayerInfo(), lfg_commandscript::HandleLfgGroupInfoCommand(), and lfg::LFGMgr::SetState().