(Новая страница: «local prototypes = mw.loadData("Module:Supply Lookup/data") local p = {} p.store = prototypes.store function p.readscalar(frame) return mw.text.nowiki(p.store[frame.args[1]][frame.args[2]]) end function p.buildlists(frame) local out = "" local group = frame.args[1] local keys = {} for k in pairs(p.store) do if p.store[k].group == group or group == nil then table.insert(keys, k) end end local function compareByCost(a, b) return...») |
Нет описания правки |
||
| Строка 6: | Строка 6: | ||
function p.readscalar(frame) | function p.readscalar(frame) | ||
return mw.text.nowiki(p.store[frame.args[1]][frame.args[2]]) | return mw.text.nowiki(p.store[frame.args[1]][frame.args[2]]) | ||
end | |||
function p.buildcontent(frame) | |||
local out = "" | |||
local entity = frame.args[1] | |||
for k = 1, entity.product do | |||
out = out .. frame:expandTemplate{ title = "SupplyContent", args = {prototype = k}} | |||
end | |||
return out | |||
end | end | ||
Версия от 06:21, 27 января 2024
Для документации этого модуля может быть создана страница Модуль:Supply Lookup/doc
local prototypes = mw.loadData("Module:Supply Lookup/data")
local p = {}
p.store = prototypes.store
function p.readscalar(frame)
return mw.text.nowiki(p.store[frame.args[1]][frame.args[2]])
end
function p.buildcontent(frame)
local out = ""
local entity = frame.args[1]
for k = 1, entity.product do
out = out .. frame:expandTemplate{ title = "SupplyContent", args = {prototype = k}}
end
return out
end
function p.buildlists(frame)
local out = ""
local group = frame.args[1]
local keys = {}
for k in pairs(p.store) do
if p.store[k].group == group or group == nil then
table.insert(keys, k)
end
end
local function compareByCost(a, b)
return tonumber(p.store[a].cost) < tonumber(p.store[b].cost)
end
table.sort(keys, compareByCost)
for _, k in ipairs(keys) do
out = out .. frame:expandTemplate{ title = "Supply", args = { prototype = k}}
end
return out
end
return p