diff --git a/binaries/data/mods/public/globalscripts/Templates.js b/binaries/data/mods/public/globalscripts/Templates.js index 47b045a951..b2a84e6715 100644 --- a/binaries/data/mods/public/globalscripts/Templates.js +++ b/binaries/data/mods/public/globalscripts/Templates.js @@ -120,9 +120,15 @@ function GetTemplateDataHelper(template, player) if (template.Auras) { ret.auras = {}; - for each (var aura in template.Auras) + for (let auraID in template.Auras) + { + let aura = template.Auras[auraID]; if (aura.AuraName) - ret.auras[aura.AuraName] = aura.AuraDescription || null; + ret.auras[auraID] = { + "name": aura.AuraName, + "description": aura.AuraDescription || null + }; + } } if (template.BuildRestrictions) diff --git a/binaries/data/mods/public/gui/common/tooltips.js b/binaries/data/mods/public/gui/common/tooltips.js index 126d62d3b8..1086709506 100644 --- a/binaries/data/mods/public/gui/common/tooltips.js +++ b/binaries/data/mods/public/gui/common/tooltips.js @@ -478,9 +478,9 @@ function getAurasTooltip(template) for (let aura in template.auras) txt += '\n' + sprintf(translate("%(auralabel)s %(aurainfo)s"), { "auralabel": g_TooltipTextFormats.header[0] + sprintf(translate("%(auraname)s:"), { - "auraname": translate(aura) + "auraname": translate(template.auras[aura].name) }) + g_TooltipTextFormats.header[1], - "aurainfo": g_TooltipTextFormats.body[0] + translate(template.auras[aura]) + g_TooltipTextFormats.body[1] + "aurainfo": g_TooltipTextFormats.body[0] + translate(template.auras[aura].description) + g_TooltipTextFormats.body[1] }); return txt; } diff --git a/binaries/data/mods/public/gui/session/selection_panels.js b/binaries/data/mods/public/gui/session/selection_panels.js index 9268f10b92..39354ed03b 100644 --- a/binaries/data/mods/public/gui/session/selection_panels.js +++ b/binaries/data/mods/public/gui/session/selection_panels.js @@ -336,6 +336,7 @@ g_SelectionPanels.Construction = { { var tooltip = getEntityNamesFormatted(data.template); tooltip += getVisibleEntityClassesFormatted(data.template); + tooltip += getAurasTooltip(data.template); if (data.template.tooltip) tooltip += "\n[font=\"sans-13\"]" + data.template.tooltip + "[/font]"; @@ -1098,16 +1099,7 @@ g_SelectionPanels.Training = { tooltip += getEntityNamesFormatted(data.template); tooltip += getVisibleEntityClassesFormatted(data.template); - - if (data.template.auras) - { - for (var auraName in data.template.auras) - { - tooltip += "\n[font=\"sans-bold-13\"]" + translate(auraName) + "[/font]"; - if (data.template.auras[auraName]) - tooltip += ": " + translate(data.template.auras[auraName]); - } - } + tooltip += getAurasTooltip(data.template); if (data.template.tooltip) tooltip += "\n[font=\"sans-13\"]" + data.template.tooltip + "[/font]"; diff --git a/binaries/data/mods/public/simulation/templates/template_unit_hero.xml b/binaries/data/mods/public/simulation/templates/template_unit_hero.xml index 850b47c377..563f1ef183 100644 --- a/binaries/data/mods/public/simulation/templates/template_unit_hero.xml +++ b/binaries/data/mods/public/simulation/templates/template_unit_hero.xml @@ -7,7 +7,7 @@ 2 - Hero Aura + Garrisoned Capture Aura When garrisoned in a structure, the hero gives it a bonus of +2 capture points recovery rate.