Ticket #3841: 3841_ingame_summary_v1.1.patch
File 3841_ingame_summary_v1.1.patch, 8.0 KB (added by , 8 years ago) |
---|
-
binaries/data/mods/public/gui/session/menu.js
617 617 pauseGame(); 618 618 619 619 let extendedSimState = Engine.GuiInterfaceCall("GetExtendedSimulationState"); 620 let playersToShow = []; 621 622 playersToShow = extendedSimState.players.filter((state,player) => 623 g_IsObserver || player == 0 || player == g_ViewedPlayer || 624 extendedSimState.players[g_ViewedPlayer].hasSharedLos && g_Players[player].isMutualAlly[g_ViewedPlayer]); 625 620 626 Engine.PushGuiPage("page_summary.xml", { 621 627 "sim": { 622 628 "mapSettings": g_GameAttributes.settings, 623 "playerStates": extendedSimState.players,629 "playerStates": playersToShow, 624 630 "timeElapsed" : extendedSimState.timeElapsed 625 631 }, 626 632 "gui": { -
binaries/data/mods/public/gui/session/menu.xml
48 48 style="StoneButtonFancy" 49 49 size="0 96 100% 124" 50 50 tooltip_style="sessionToolTip" 51 enabled="false"52 51 > 53 52 <translatableAttribute id="caption">Summary</translatableAttribute> 54 53 <action on="Press">openGameSummary();</action> -
binaries/data/mods/public/gui/session/session.js
480 480 // Disable stuff observers shouldn't use 481 481 Engine.GetGUIObjectByName("pauseButton").enabled = !g_IsObserver || !g_IsNetworked; 482 482 Engine.GetGUIObjectByName("menuResignButton").enabled = !g_IsObserver; 483 Engine.GetGUIObjectByName("summaryButton").enabled = g_IsObserver;484 483 } 485 484 486 485 function reportPerformance(time) … … 933 932 debug.caption = text.replace(/\[/g, "\\["); 934 933 } 935 934 935 function getAllyStatTooltip(resource) 936 { 937 let playersState = GetSimState().players; 938 939 return playersState.map((state, player) => sprintf(translate("\n%(playername)s: %(statValue)s"),{ 940 "playername": colorizePlayernameByID(player), 941 "statValue": resource == "pop" ? state.popCount + "/" + state.popLimit : state.resourceCounts[resource] 942 })).filter((state, player) => 943 player != 0 && player != g_ViewedPlayer && 944 (g_IsObserver || playersState[g_ViewedPlayer].hasSharedLos && g_Players[player].isMutualAlly[g_ViewedPlayer])).join(""); 945 } 946 936 947 function updatePlayerDisplay() 937 948 { 938 949 let playerState = GetSimState().players[g_ViewedPlayer]; … … 939 950 if (!playerState) 940 951 return; 941 952 942 Engine.GetGUIObjectByName("resourceFood").caption = Math.floor(playerState.resourceCounts.food); 943 Engine.GetGUIObjectByName("resourceWood").caption = Math.floor(playerState.resourceCounts.wood); 944 Engine.GetGUIObjectByName("resourceStone").caption = Math.floor(playerState.resourceCounts.stone); 945 Engine.GetGUIObjectByName("resourceMetal").caption = Math.floor(playerState.resourceCounts.metal); 953 let translatedResources = { 954 "food": translate("Food"), 955 "wood": translate("Wood"), 956 "stone": translate("Stone"), 957 "metal": translate("Metal") 958 } 959 for (let res of RESOURCES) 960 { 961 Engine.GetGUIObjectByName("resource_" + res).caption = Math.floor(playerState.resourceCounts[res]); 962 Engine.GetGUIObjectByName(res).tooltip = translatedResources[res] + getAllyStatTooltip(res); 963 } 946 964 Engine.GetGUIObjectByName("resourcePop").caption = playerState.popCount + "/" + playerState.popLimit; 947 965 Engine.GetGUIObjectByName("population").tooltip = translate("Population (current / limit)") + "\n" + 948 sprintf(translate("Maximum population: %(popCap)s"), { "popCap": playerState.popMax }); 966 sprintf(translate("Maximum population: %(popCap)s"), { "popCap": playerState.popMax }) + 967 getAllyStatTooltip("pop"); 949 968 950 969 g_IsTrainingBlocked = playerState.trainingBlocked; 951 970 } -
binaries/data/mods/public/gui/session/top_panel/resource_food.xml
1 1 <?xml version="1.0" encoding="utf-8"?> 2 2 <object name="food" size="10 0 100 100%" type="image" style="resourceCounter" tooltip_style="sessionToolTipBold"> 3 <translatableAttribute id="tooltip">Food</translatableAttribute>4 3 <object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/food.png" ghost="true"/> 5 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource Food"/>4 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource_food"/> 6 5 </object> -
binaries/data/mods/public/gui/session/top_panel/resource_metal.xml
1 1 <?xml version="1.0" encoding="utf-8"?> 2 2 <object name="metal" size="280 0 370 100%" type="image" style="resourceCounter" tooltip_style="sessionToolTipBold"> 3 <translatableAttribute id="tooltip">Metal</translatableAttribute>4 3 <object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/metal.png" ghost="true"/> 5 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource Metal"/>4 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource_metal"/> 6 5 </object> -
binaries/data/mods/public/gui/session/top_panel/resource_stone.xml
1 1 <?xml version="1.0" encoding="utf-8"?> 2 2 <object name="stone" size="190 0 280 100%" type="image" style="resourceCounter" tooltip_style="sessionToolTipBold"> 3 <translatableAttribute id="tooltip">Stone</translatableAttribute>4 3 <object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/stone.png" ghost="true"/> 5 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource Stone"/>4 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource_stone"/> 6 5 </object> -
binaries/data/mods/public/gui/session/top_panel/resource_wood.xml
1 1 <?xml version="1.0" encoding="utf-8"?> 2 2 <object name="wood" size="100 0 190 100%" type="image" style="resourceCounter" tooltip_style="sessionToolTipBold"> 3 <translatableAttribute id="tooltip">Wood</translatableAttribute>4 3 <object size="0 -4 40 36" type="image" sprite="stretched:session/icons/resources/wood.png" ghost="true"/> 5 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource Wood"/>4 <object size="32 0 100% 100%-2" type="text" style="resourceText" name="resource_wood"/> 6 5 </object> -
binaries/data/mods/public/simulation/components/GuiInterface.js
106 106 "teamsLocked": cmpPlayer.GetLockTeams(), 107 107 "cheatsEnabled": cmpPlayer.GetCheatsEnabled(), 108 108 "disabledTemplates": cmpPlayer.GetDisabledTemplates(), 109 "hasSharedLos": cmpTechnologyManager ? cmpTechnologyManager.IsTechnologyResearched("unlock_shared_los") : null, 109 110 "hasSharedDropsites": cmpPlayer.HasSharedDropsites(), 110 111 "phase": phase, 111 112 "isAlly": allies,