feat(Core/LFG): Implement dungeon selection cooldown to prevent repeat assignme… (#24916)

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
This commit is contained in:
Andrew
2026-02-27 23:55:45 -03:00
committed by GitHub
parent 22078a9de5
commit b14cdea7d2
11 changed files with 215 additions and 6 deletions

View File

@@ -415,7 +415,10 @@ namespace lfg
proposal.cancelTime = GameTime::GetGameTime().count() + LFG_TIME_PROPOSAL;
proposal.state = LFG_PROPOSAL_INITIATING;
proposal.leader.Clear();
proposal.dungeonId = Acore::Containers::SelectRandomContainerElement(proposalDungeons);
// Filter out recently completed dungeons to prevent same dungeon in a row
LfgDungeonSet filteredDungeons = sLFGMgr->FilterCooldownDungeons(proposalDungeons, proposalRoles);
proposal.dungeonId = Acore::Containers::SelectRandomContainerElement(filteredDungeons);
uint32 completedEncounters = 0;
bool leader = false;