From abb06d5bb99261bb06514804af3fd3b721688a09 Mon Sep 17 00:00:00 2001 From: NewHappyRabbit Date: Mon, 24 Feb 2025 16:56:04 +0200 Subject: [PATCH] Added frequency settings for the map playlist --- src/server/GameManager.ts | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/src/server/GameManager.ts b/src/server/GameManager.ts index 1e37214d7..dfe60e0d6 100644 --- a/src/server/GameManager.ts +++ b/src/server/GameManager.ts @@ -86,15 +86,29 @@ export class GameManager { if (this.mapsPlaylist.length > 0) { return this.mapsPlaylist.shift(); } + + const frequency = { + World: 4, + Europe: 4, + Mena: 2, + NorthAmerica: 2, + Oceania: 1, + BlackSea: 2, + Africa: 2, + Asia: 2, + Mars: 0, + }; + + Object.keys(GameMapType).map((key) => { + let count = parseInt(frequency[key]); + + while (count > 0) { + this.mapsPlaylist.push(GameMapType[key]); + count--; + } + }); + while (true) { - const ignoreMaps = ["Mars"]; - this.mapsPlaylist = Object.values(GameMapType).filter( - (map) => !ignoreMaps.includes(map), - ); - this.mapsPlaylist.push(GameMapType.World); - this.mapsPlaylist.push(GameMapType.World); - this.mapsPlaylist.push(GameMapType.Europe); - this.mapsPlaylist.push(GameMapType.Europe); this.random.shuffleArray(this.mapsPlaylist); if (this.allNonConsecutive(this.mapsPlaylist)) { return this.mapsPlaylist.shift();