User:Histidine/Sandbox
Revision as of 04:53, 6 April 2019 by Histidine (talk | contribs) (Created page with "{| class="wikitable" style="text-align:center;" ! colspan="6" | http://manual.zero-k.info/unitpics/factorycloak.pngCloakbot Factory |- ! || Name || Role || Aliases || Cost...")
Cloakbot Factory | |||||
---|---|---|---|---|---|
Name | Role | Aliases | Cost | HP | |
Conjurer | Construction | 120 | 450 | ||
Glaive | Raider | 65 | 200 | ||
Scythe | Raider | 250 | 820 | ||
Ronin | Skirmisher | 90 | 420 | ||
Reaver | Riot | 220 | 820 | ||
Knight | Assault | 350 | 2400 | ||
Sling | Artillery | 110 | 350 | ||
Phantom | Artillery | 750 | 560 | ||
Gremlin | Other | 150 | 550 | ||
Imp | Bomb | 120 | 50 | ||
Iris | Other | 600 | 600 |
Lua code to generate:
local fileOutputDir = "temp/" local function getDescString(unitDef) local desc = Spring.Utilities.GetDescription(unitDef) if desc:find("Raider") then return "Raider" elseif desc:find("Riot") then return "Riot" elseif desc:find("Skirmisher") then return "Skirmisher" elseif desc:find("Assault") then return "Assault" elseif desc:find("Artillery") then return "Artillery" elseif desc:find("Anti-Air") then return "Anti-Air" elseif desc:find("Construction") then return "Construction" elseif desc:find("Scout") then return "Scout" elseif desc:find("Support") then return "Support" elseif desc:find("Anti-Heavy") then return "Anti-Heavy" elseif desc:find("Fighter") then return "Fighter" elseif desc:find("Bomber") then return "Bomber" elseif desc:find("Transport") then return "Transport" elseif desc:find("Bomb") then return "Bomb" else return "Other" end end local function generateTable(factoryDefName) local factoryDef = UnitDefNames[factoryDefName] local output = '{| class="wikitable" style="text-align:center;"\n' local imagePath = "http://manual.zero-k.info/unitpics/" .. factoryDefName .. ".png" output = output .. '! colspan="6" | ' .. imagePath .. "[[" .. factoryDef.humanName .. "]]\n" output = output .. "|-\n" output = output .. "! || Name || Role || Aliases || Cost || HP\n" output = output .. "|-\n" for index, unitDefID in ipairs(factoryDef.buildOptions) do local unitDef = UnitDefs[unitDefID] local unitName = unitDef.name imagePath = "http://manual.zero-k.info/unitpics/" .. unitName .. ".png" output = output .. "| " .. imagePath .. " || [[" .. unitDef.humanName .. "]] || " .. getDescString(unitDef) .. " || || " .. unitDef.metalCost .. " || " .. unitDef.health .. "\n" output = output .. "|-\n" end output = output .. "|}" return output end local function printTable(factoryDefName, outputDir) local str = generateTable(factoryDefName) local file = io.open (outputDir .. "/" .. factoryDefName .. ".txt", "w") if (file== nil) then Spring.Echo ("could not open file for writing!") return end file:write(str) file:flush() file:close() end function widget:Initialize() --local tbl = WG.crude.allOptions --WG.SaveTable(tbl, "", "crudeOptions.lua", "options", nil) printTable("factorycloak", fileOutputDir) end