Index: binaries/data/mods/public/gui/common/gamedescription.js =================================================================== --- binaries/data/mods/public/gui/common/gamedescription.js +++ binaries/data/mods/public/gui/common/gamedescription.js @@ -32,7 +32,7 @@ /** * Denotes which players are a lobby buddy of the current user. */ -var g_BuddySymbol = '•'; +var g_BuddySymbol = '★'; /** * Returns a formatted string describing the player assignments. Index: binaries/data/mods/public/gui/lobby/LobbyPage/GameList.js =================================================================== --- binaries/data/mods/public/gui/lobby/LobbyPage/GameList.js +++ binaries/data/mods/public/gui/lobby/LobbyPage/GameList.js @@ -26,19 +26,14 @@ this.gamesBox = Engine.GetGUIObjectByName("gamesBox"); this.gamesBox.onSelectionChange = this.onSelectionChange.bind(this); this.gamesBox.onSelectionColumnChange = this.onFilterChange.bind(this); - let ratingColumn = Engine.ConfigDB_GetValue("user", "lobby.columns.gamerating") == "true"; - this.gamesBox.hidden_mapType = ratingColumn; - this.gamesBox.hidden_gameRating = !ratingColumn; // Avoid repeated array construction - this.list_buddy = []; this.list_private = []; this.list_gameName = []; this.list_mapName = []; this.list_mapSize = []; this.list_mapType = []; this.list_maxnbp = []; - this.list_gameRating = []; this.list = []; this.filters = []; @@ -136,29 +131,28 @@ let selectedGameIndex = -1; { + const ratingSetting = Engine.ConfigDB_GetValue("user", "lobby.columns.gamerating") == "true"; + this.gamesBox.heading_maxnbp = ratingSetting ? "Players (rating)" : "Players"; + Engine.ProfileStart("setupGameList"); let length = this.gameList.length; - this.list_buddy.length = length; this.list_private.length = length; this.list_gameName.length = length; this.list_mapName.length = length; this.list_mapSize.length = length; this.list_mapType.length = length; this.list_maxnbp.length = length; - this.list_gameRating.length = length; this.list.length = length; this.gameList.forEach((game, i) => { let displayData = game.displayData; - this.list_buddy[i] = displayData.buddy || ""; this.list_private[i] = displayData.private || ""; this.list_gameName[i] = displayData.gameName || ""; this.list_mapName[i] = displayData.mapName || ""; this.list_mapSize[i] = displayData.mapSize || ""; this.list_mapType[i] = displayData.mapType || ""; - this.list_maxnbp[i] = displayData.playerCount || ""; - this.list_gameRating[i] = game.gameRating || ""; + this.list_maxnbp[i] = ratingSetting ? `${displayData.playerCount} ${displayData.buddy} (${game.gameRating})` || "" : `${displayData.playerCount} ${displayData.buddy}`|| ""; this.list[i] = ""; if (selectedGame && game.stanza.hostJID == selectedGame.stanza.hostJID && game.stanza.name == selectedGame.stanza.name) selectedGameIndex = i; @@ -170,13 +164,11 @@ Engine.ProfileStart("copyToGUI"); let gamesBox = this.gamesBox; gamesBox.list_private = this.list_private; - gamesBox.list_buddy = this.list_buddy; gamesBox.list_gameName = this.list_gameName; gamesBox.list_mapName = this.list_mapName; gamesBox.list_mapSize = this.list_mapSize; gamesBox.list_mapType = this.list_mapType; gamesBox.list_maxnbp = this.list_maxnbp; - gamesBox.list_gameRating = this.list_gameRating; // Change these last, otherwise crash gamesBox.list = this.list; Index: binaries/data/mods/public/gui/lobby/LobbyPage/GameList.xml =================================================================== --- binaries/data/mods/public/gui/lobby/LobbyPage/GameList.xml +++ binaries/data/mods/public/gui/lobby/LobbyPage/GameList.xml @@ -6,13 +6,13 @@ type="olist" sortable="true" font="sans-stroke-13" + size="0 0 100% 100%" > - - - + + Name - + Map Name @@ -21,10 +21,7 @@ Type - - Players + + Players (Rating) - - Rating - Index: binaries/data/mods/public/gui/lobby/LobbyPage/GameListFilters.xml =================================================================== --- binaries/data/mods/public/gui/lobby/LobbyPage/GameListFilters.xml +++ binaries/data/mods/public/gui/lobby/LobbyPage/GameListFilters.xml @@ -3,11 +3,16 @@