Module:Necropolis packs: Difference between revisions
Jump to navigation
Jump to search
m (IV IS moved page Module:Necropolis packs/sandbox to Module:Necropolis packs without leaving a redirect) |
No edit summary |
||
Line 31: | Line 31: | ||
return mw.getCurrentFrame():preprocess(_expand_template(data)) | return mw.getCurrentFrame():preprocess(_expand_template(data)) | ||
else | else | ||
local all = "" | local all = "==All known packs==\n" | ||
for _, data in pairs(m_data) do | for _, data in pairs(m_data) do | ||
if data.name and data.name ~= '' then | if data.name and data.name ~= '' then | ||
all = all .. "\n==" .. data.name .. "==\n" .. _expand_template(data) | all = all .. "\n===" .. data.name .. "===\n" .. _expand_template(data) | ||
end | end | ||
end | end |
Revision as of 11:34, 7 April 2024
The above documentation is transcluded from Module:Necropolis packs/doc.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
Editors can experiment in this module's sandbox and testcases pages.
Subpages of this module.
require('Module:No globals')
local m_util = require('Module:Util')
local use_sandbox = m_util.misc.maybe_sandbox('Necropolis_packs')
local m_data = use_sandbox and mw.loadData('Module:Necropolis_packs/data/sandbox') or mw.loadData('Module:Necropolis_packs/data')
local m_lookup = use_sandbox and mw.loadData('Module:Necropolis_pack_lookup/data/sandbox') or mw.loadData('Module:Necropolis_pack_lookup/data')
local function _expand_template(data)
return mw.getCurrentFrame():expandTemplate{
title = use_sandbox and 'Template:Necropolis packs/display/sandbox' or 'Template:Necropolis packs/display',
args = {
name = data.name,
description = data.description,
leader = data.leader
}
}
end
local function _render_pack(tpl_args)
local ember = tpl_args and tpl_args.ember_name
local pack_id = tpl_args and tpl_args.pack_id
if ember and not pack_id then
local found = m_lookup[ember]
if not found then
return
end
pack_id = found.pack_id
end
if pack_id then
local data = m_data[pack_id]
return mw.getCurrentFrame():preprocess(_expand_template(data))
else
local all = "==All known packs==\n"
for _, data in pairs(m_data) do
if data.name and data.name ~= '' then
all = all .. "\n===" .. data.name .. "===\n" .. _expand_template(data)
end
end
return mw.getCurrentFrame():preprocess(all)
end
end
local p = {}
p.render_pack = m_util.misc.invoker_factory(_render_pack)
return p