aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/DungeonFinding/LFGQueue.cpp
diff options
context:
space:
mode:
authorSpp <spp@jorge.gr>2013-01-09 15:15:42 +0100
committerSpp <spp@jorge.gr>2013-01-09 15:15:42 +0100
commit677ed180802541d4bf487eeaa554c01aa3dc5ceb (patch)
tree6e5d87548c65c6d5cb3e574f0571c7fb363280e7 /src/server/game/DungeonFinding/LFGQueue.cpp
parentecfb7623469c4da0e70a53294a53e8f1e3f70537 (diff)
Core/Dungeon Finder: Fix group (5) unable to do new dungeon after finished last dungeon
- Some optimizations here and there - Drop unused columns related to dungeon rewards - Simplify Group reward. All people inside the dungeon should get the reward, no matter how far it's from the boss
Diffstat (limited to 'src/server/game/DungeonFinding/LFGQueue.cpp')
-rw-r--r--src/server/game/DungeonFinding/LFGQueue.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/DungeonFinding/LFGQueue.cpp b/src/server/game/DungeonFinding/LFGQueue.cpp
index dae789b2eb4..e75a1bdc4b3 100644
--- a/src/server/game/DungeonFinding/LFGQueue.cpp
+++ b/src/server/game/DungeonFinding/LFGQueue.cpp
@@ -139,7 +139,7 @@ void LFGQueue::RemoveFromCurrentQueue(uint64 guid)
currentQueueStore.remove(guid);
}
-void LFGQueue::AddQueueData(uint64 guid, time_t joinTime, const LfgDungeonSet &dungeons, const LfgRolesMap &rolesMap)
+void LFGQueue::AddQueueData(uint64 guid, time_t joinTime, LfgDungeonSet const& dungeons, LfgRolesMap const& rolesMap)
{
QueueDataStore[guid] = LfgQueueData(joinTime, dungeons, rolesMap);
AddToQueue(guid);
@@ -217,7 +217,6 @@ void LFGQueue::SetCompatibilityData(std::string const& key, LfgCompatibilityData
CompatibleMapStore[key] = data;
}
-
/**
Get the compatibility of a group of guids
@@ -482,8 +481,9 @@ LfgCompatibility LFGQueue::CheckCompatibility(LfgGuidList check)
return LFG_COMPATIBLES_WITH_LESS_PLAYERS;
}
+ uint64 gguid = *check.begin();
proposal.queues = check;
- proposal.isNew = numLfgGroups != 1;
+ proposal.isNew = numLfgGroups != 1 || !sLFGMgr->GetDungeon(gguid);
if (!sLFGMgr->AllQueued(check))
{