Index: binaries/data/mods/public/gui/savedgames/load.js
===================================================================
--- binaries/data/mods/public/gui/savedgames/load.js (révision 18384)
+++ binaries/data/mods/public/gui/savedgames/load.js (copie de travail)
@@ -8,7 +8,8 @@
if (!savedGames.length)
{
gameSelection.list = [translate("No saved games found")];
- gameSelection.selected = 0;
+ gameSelection.selected = -1;
+ selectionChanged();
Engine.GetGUIObjectByName("loadGameButton").enabled = false;
Engine.GetGUIObjectByName("deleteGameButton").enabled = false;
return;
@@ -26,8 +27,34 @@
gameSelection.selected = 0;
else if (gameSelection.selected >= savedGames.length) // happens when deleting the last saved game
gameSelection.selected = savedGames.length - 1;
+ selectionChanged();
}
+function selectionChanged()
+{
+ let gameSelection = Engine.GetGUIObjectByName("gameSelection");
+ let selectionEmpty = gameSelection.selected == -1;
+ Engine.GetGUIObjectByName("gameInfoLogo").hidden = !selectionEmpty;
+ Engine.GetGUIObjectByName("gameInfoText").hidden = selectionEmpty;
+ Engine.GetGUIObjectByName("gameInfoPreview").hidden = selectionEmpty;
+
+ if (selectionEmpty)
+ return;
+
+ let metadata = g_SavedGamesMetadata[gameSelection.selected];
+ let gameInfoText = Engine.GetGUIObjectByName("gameInfoText");
+ gameInfoText.caption = sprintf(translate(" %(players)s \n %(playedTime)s \n %(mapType)s \n %(victory)s \n %(mods)s"), {
+ "players": translate("Players: ") + (metadata.initAttributes.settings.PlayerData.length - 1),
+ "playedTime": translate("Played time: ") + timeToString(metadata.gui.timeElapsed ? metadata.gui.timeElapsed : 0),
+ "mapType": translate("Map type: ") + translateMapType(metadata.initAttributes.mapType),
+ "victory": translate("Victory: ") + translateVictoryCondition(metadata.initAttributes.settings.GameType),
+ "mods": sprintf(translate("Mods: %(mods)s"), { "mods": metadata.mods.join(translate(", ")) })
+ });
+
+ let mapData = getMapDescriptionAndPreview(metadata.initAttributes.mapType, metadata.initAttributes.map);
+ setMapPreviewImage("gameInfoPreview", mapData.preview);
+}
+
function loadGame()
{
var gameSelection = Engine.GetGUIObjectByName("gameSelection");
Index: binaries/data/mods/public/gui/savedgames/load.xml
===================================================================
--- binaries/data/mods/public/gui/savedgames/load.xml (révision 18384)
+++ binaries/data/mods/public/gui/savedgames/load.xml (copie de travail)
@@ -4,6 +4,7 @@
+
@@ -10,40 +11,49 @@
-