Ticket #3887: putAurasBack_v3.patch
File putAurasBack_v3.patch, 3.3 KB (added by , 8 years ago) |
---|
-
binaries/data/mods/public/globalscripts/Templates.js
70 70 * @param template A valid template as returned by the template loader. 71 71 * @param player An optional player id to get the technology modifications 72 72 * of properties. 73 * @param aura sTemplateAn object in the form of {key: {auraName: "", auraDescription: ""}}73 * @param auraTemplates An object in the form of {key: {auraName: "", auraDescription: ""}} 74 74 */ 75 function GetTemplateDataHelper(template, player, aura sTemplate)75 function GetTemplateDataHelper(template, player, auraTemplates) 76 76 { 77 77 var ret = {}; 78 78 … … 121 121 if (template.Auras) 122 122 { 123 123 ret.auras = {}; 124 for (let auraID in aurasTemplate)124 for (let auraID of template.Auras._string.split(/\s+/)) 125 125 { 126 let aura = aura sTemplate[auraID];126 let aura = auraTemplates[auraID]; 127 127 if (aura.auraName) 128 128 ret.auras[auraID] = { 129 129 "name": aura.auraName || null, -
binaries/data/mods/public/gui/structree/helper.js
1 1 var g_TemplateData = {}; 2 2 var g_TechnologyData = {}; 3 var g_AuraData = {}; 3 4 4 5 function loadTemplate(templateName) 5 6 { … … 8 9 // We need to clone the template because we want to perform some translations. 9 10 var data = clone(Engine.GetTemplate(templateName)); 10 11 translateObjectKeys(data, ["GenericName", "SpecificName", "Tooltip"]); 11 12 13 if (data.Auras) 14 for (let auraID of data.Auras._string.split(/\s+/)) 15 loadAuraData(auraID); 16 12 17 g_TemplateData[templateName] = data; 13 18 } 14 19 … … 29 34 return g_TechnologyData[templateName]; 30 35 } 31 36 37 function loadAuraData(templateName) 38 { 39 if (!(templateName in g_AuraData)) 40 { 41 let filename = "simulation/data/auras/" + templateName + ".json"; 42 let data = Engine.ReadJSONFile(filename); 43 translateObjectKeys(data, ["auraName", "auraDescription"]); 44 45 g_AuraData[templateName] = data; 46 } 47 48 return g_AuraData[templateName]; 49 } 50 32 51 /** 33 52 * Fetch a value from an entity's template 34 53 * … … 85 104 function GetTemplateData(templateName) 86 105 { 87 106 var template = loadTemplate(templateName); 88 return GetTemplateDataHelper(template );107 return GetTemplateDataHelper(template, null, g_AuraData); 89 108 } -
binaries/data/mods/public/gui/structree/load.js
41 41 return null; 42 42 var template = loadTemplate(templateName); 43 43 44 var unit = GetTemplateDataHelper(template );44 var unit = GetTemplateDataHelper(template, null, g_AuraData); 45 45 unit.phase = false; 46 46 47 47 if (unit.requiredTechnology) … … 87 87 function loadStructure(templateName) 88 88 { 89 89 var template = loadTemplate(templateName); 90 var structure = GetTemplateDataHelper(template );90 var structure = GetTemplateDataHelper(template, null, g_AuraData); 91 91 structure.phase = false; 92 92 93 93 if (structure.requiredTechnology)