aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/DungeonFinding/LFG.h
diff options
context:
space:
mode:
authorSpp <spp@jorge.gr>2012-10-17 14:19:59 +0200
committerSpp <spp@jorge.gr>2012-10-18 09:15:10 +0200
commitd0334bf94839301cda93f95913db8ea3f27c19cb (patch)
tree97116c966cffcb9cd95e9aeeb555edf496c9628d /src/server/game/DungeonFinding/LFG.h
parentca276292dcce939d65649d434a08796269789901 (diff)
Core/Dungeon Finder: Some optimizations.
- Store teleport coordinates to avoid recalculations each time someone has to be teleported - Correct teleport error msg when player is charming or using vehicle - Internal changes in storage types - Proper code for missing achievement lock type - Better debug msgs - Trying to get rid of "Player*" and "Group*" inside LFGMgr as much as possible (Step 1)
Diffstat (limited to 'src/server/game/DungeonFinding/LFG.h')
-rwxr-xr-xsrc/server/game/DungeonFinding/LFG.h33
1 files changed, 26 insertions, 7 deletions
diff --git a/src/server/game/DungeonFinding/LFG.h b/src/server/game/DungeonFinding/LFG.h
index 28498749af8..c00cc830ce8 100755
--- a/src/server/game/DungeonFinding/LFG.h
+++ b/src/server/game/DungeonFinding/LFG.h
@@ -20,13 +20,20 @@
#include "Common.h"
+enum LFGEnum
+{
+ LFG_TANKS_NEEDED = 1,
+ LFG_HEALERS_NEEDED = 1,
+ LFG_DPS_NEEDED = 3
+};
+
enum LfgRoles
{
- ROLE_NONE = 0x00,
- ROLE_LEADER = 0x01,
- ROLE_TANK = 0x02,
- ROLE_HEALER = 0x04,
- ROLE_DAMAGE = 0x08
+ PLAYER_ROLE_NONE = 0x00,
+ PLAYER_ROLE_LEADER = 0x01,
+ PLAYER_ROLE_TANK = 0x02,
+ PLAYER_ROLE_HEALER = 0x04,
+ PLAYER_ROLE_DAMAGE = 0x08
};
enum LfgUpdateType
@@ -73,7 +80,16 @@ enum LfgLockStatusType
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_NOT_IN_SEASON = 1031,
+ LFG_LOCKSTATUS_MISSING_ACHIEVEMENT = 1034
+};
+
+/// Answer state (Also used to check compatibilites)
+enum LfgAnswer
+{
+ LFG_ANSWER_PENDING = -1,
+ LFG_ANSWER_DENY = 0,
+ LFG_ANSWER_AGREE = 1
};
/// Dungeon and reason why player can't join
@@ -84,7 +100,10 @@ struct LfgLockStatus
};
typedef std::set<uint32> LfgDungeonSet;
-typedef std::map<uint32, LfgLockStatusType> LfgLockMap;
+typedef std::map<uint32, uint32> LfgLockMap;
typedef std::map<uint64, LfgLockMap> LfgLockPartyMap;
+typedef std::set<uint64> LfgGuidSet;
+typedef std::list<uint64> LfgGuidList;
+typedef std::map<uint64, uint8> LfgRolesMap;
#endif