Difference between revisions of "User:Histidine/Sandbox"
Jump to navigation
Jump to search
(Separate icon column version) |
|||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
{| class="wikitable" style="text-align:center;" | {| class="wikitable" style="text-align:center;" | ||
− | ! colspan=" | + | ! colspan="7" | http://manual.zero-k.info/unitpics/factorycloak.png[[Cloakbot Factory]] |
|- | |- | ||
− | ! || Name || Role || Aliases || Cost || HP | + | ! || Name || colspan="2" | Role || Aliases || Cost || HP |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakcon.png || [[Conjurer]] || Construction || || 120 || 450 | + | | http://manual.zero-k.info/unitpics/cloakcon.png || [[Conjurer]] || <img src="http://manual.zero-k.info/icons/builder.png" width="32px" /> || Construction || || 120 || 450 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakraid.png || [[Glaive]] || Raider || || 65 || 200 | + | | http://manual.zero-k.info/unitpics/cloakraid.png || [[Glaive]] || <img src="http://manual.zero-k.info/icons/kbotraider.png" width="32px" /> || Raider || || 65 || 200 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakheavyraid.png || [[Scythe]] || Raider || || 250 || 820 | + | | http://manual.zero-k.info/unitpics/cloakheavyraid.png || [[Scythe]] || <img src="http://manual.zero-k.info/icons/stealth.png" width="32px" /> || Raider || || 250 || 820 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakskirm.png || [[Ronin]] || Skirmisher || || 90 || 420 | + | | http://manual.zero-k.info/unitpics/cloakskirm.png || [[Ronin]] || <img src="http://manual.zero-k.info/icons/kbotskirm.png" width="32px" /> || Skirmisher || || 90 || 420 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakriot.png || [[Reaver]] || Riot || || 220 || 820 | + | | http://manual.zero-k.info/unitpics/cloakriot.png || [[Reaver]] || <img src="http://manual.zero-k.info/icons/kbotriot.png" width="32px" /> || Riot || || 220 || 820 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakassault.png || [[Knight]] || Assault || || 350 || 2400 | + | | http://manual.zero-k.info/unitpics/cloakassault.png || [[Knight]] || <img src="http://manual.zero-k.info/icons/kbotassault.png" width="32px" /> || Assault || || 350 || 2400 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakarty.png || [[Sling]] || Artillery || || 110 || 350 | + | | http://manual.zero-k.info/unitpics/cloakarty.png || [[Sling]] || <img src="http://manual.zero-k.info/icons/kbotarty.png" width="32px" /> || Artillery || || 110 || 350 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloaksnipe.png || [[Phantom]] || Artillery || || 750 || 560 | + | | http://manual.zero-k.info/unitpics/cloaksnipe.png || [[Phantom]] || <img src="http://manual.zero-k.info/icons/sniper.png" width="32px" /> || Artillery || || 750 || 560 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakaa.png || [[Gremlin]] || | + | | http://manual.zero-k.info/unitpics/cloakaa.png || [[Gremlin]] || <img src="http://manual.zero-k.info/icons/kbotaa.png" width="32px" /> || Anti-Air || || 150 || 550 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakbomb.png || [[Imp]] || Bomb || || 120 || 50 | + | | http://manual.zero-k.info/unitpics/cloakbomb.png || [[Imp]] || <img src="http://manual.zero-k.info/icons/spiderbomb.png" width="32px" /> || Bomb || || 120 || 50 |
|- | |- | ||
− | | http://manual.zero-k.info/unitpics/cloakjammer.png || [[Iris]] || Other || || 600 || 600 | + | | http://manual.zero-k.info/unitpics/cloakjammer.png || [[Iris]] || <img src="http://manual.zero-k.info/icons/kbotjammer.png" width="32px" /> || Other || || 600 || 600 |
|- | |- | ||
|} | |} | ||
Line 44: | Line 44: | ||
elseif desc:find("Artillery") then | elseif desc:find("Artillery") then | ||
return "Artillery" | return "Artillery" | ||
− | elseif desc:find("Anti-Air") then | + | elseif desc:find("Anti%-Air") then |
return "Anti-Air" | return "Anti-Air" | ||
elseif desc:find("Construction") then | elseif desc:find("Construction") then | ||
Line 72: | Line 72: | ||
local output = '{| class="wikitable" style="text-align:center;"\n' | local output = '{| class="wikitable" style="text-align:center;"\n' | ||
local imagePath = "http://manual.zero-k.info/unitpics/" .. factoryDefName .. ".png" | local imagePath = "http://manual.zero-k.info/unitpics/" .. factoryDefName .. ".png" | ||
− | output = output .. '! colspan=" | + | output = output .. '! colspan="7" | ' .. imagePath .. "[[" .. factoryDef.humanName .. "]]\n" |
output = output .. "|-\n" | output = output .. "|-\n" | ||
− | output = output .. | + | output = output .. '! || Name || colspan="2" | Role || Aliases || Cost || HP\n' |
output = output .. "|-\n" | output = output .. "|-\n" | ||
Line 81: | Line 81: | ||
local unitName = unitDef.name | local unitName = unitDef.name | ||
imagePath = "http://manual.zero-k.info/unitpics/" .. unitName .. ".png" | imagePath = "http://manual.zero-k.info/unitpics/" .. unitName .. ".png" | ||
+ | local icon = '<img src="http://manual.zero-k.info/icons/' .. unitDef.iconType .. '.png" width="32px" />' | ||
output = output .. "| " .. imagePath .. " || [[" .. unitDef.humanName .. "]] || " | output = output .. "| " .. imagePath .. " || [[" .. unitDef.humanName .. "]] || " | ||
− | .. getDescString(unitDef) .. " || || " .. unitDef.metalCost .. " || " | + | .. icon .. " || " .. getDescString(unitDef) .. " || || " .. unitDef.metalCost .. " || " |
.. unitDef.health .. "\n" | .. unitDef.health .. "\n" | ||
output = output .. "|-\n" | output = output .. "|-\n" |
Latest revision as of 03:22, 9 April 2019
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 | Anti-Air | 150 | 550 | |||
Imp | Bomb | 120 | 50 | |||
Iris | Other | 600 | 600 |
Lua widget 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="7" | ' .. imagePath .. "[[" .. factoryDef.humanName .. "]]\n"
output = output .. "|-\n"
output = output .. '! || Name || colspan="2" | 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"
local icon = '<img src="http://manual.zero-k.info/icons/' .. unitDef.iconType .. '.png" width="32px" />'
output = output .. "| " .. imagePath .. " || [[" .. unitDef.humanName .. "]] || "
.. icon .. " || " .. 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()
printTable("factorycloak", fileOutputDir)
end