缺氧 wiki 编辑团队提示:注册账号并登录后体验更佳,且可通过参数设置定制优化您的浏览体验!
该站点为镜像站点,如果你想帮助这个由玩家志愿编辑的 wiki 站点,请前往原站点参与编辑,
同时欢迎加入编辑讨论群 851803695 与其他编辑者一起参与建设!
全站通知:
模块:表格/坐标前缀
刷
历
编
< 模块:表格
跳到导航
跳到搜索
此模块的文档可以在模块:表格/坐标前缀/doc创建
local p = {}
local getArgs = require('Module:Dev/Arguments').getArgs
local dlcIcons = require('Module:Utils').DLC_ICONS
local po = require('Module:Po').po
local clusterPacks = {
mw.loadData("Module:Data/Worldgen/Clusters"),
mw.loadData("Module:Data/Worldgen/Clusters/Expansion1"),
mw.loadData("Module:Data/Worldgen/Clusters/Dlc2"),
mw.loadData("Module:Data/Worldgen/Clusters/Dlc4")
}
local clusterCategories = {
Vanilla = "STRINGS.UI.FRONTEND.CLUSTERCATEGORYSELECTSCREEN.VANILLA_TITLE",
SpacedOutVanillaStyle = "STRINGS.UI.FRONTEND.CLUSTERCATEGORYSELECTSCREEN.CLASSIC_TITLE",
SpacedOutStyle = "STRINGS.UI.FRONTEND.CLUSTERCATEGORYSELECTSCREEN.SPACEDOUT_TITLE",
Special = "STRINGS.UI.FRONTEND.CLUSTERCATEGORYSELECTSCREEN.EVENT_TITLE",
[3] = "STRINGS.UI.FRONTEND.CLUSTERCATEGORYSELECTSCREEN.EVENT_TITLE"
}
local catOrders = {
Vanilla = 1,
SpacedOutVanillaStyle = 1,
SpacedOutStyle = 2,
Special = 3,
[3] = 3
}
function p._main(args)
local out = {}
local clustersBase = {}
local clustersSO = {}
for _, clusters in pairs(clusterPacks) do
for _, cluster in pairs(clusters) do
if cluster.skip == nil then
local row = {
name = ("{{物品|%s}}%s")
:format(po(cluster.name):gsub("<.->", ""),
dlcIcons[cluster.dlcIdFrom or "?"] or ""),
clusterCategory = po(clusterCategories[cluster.clusterCategory]),
coordinatePrefix = cluster.coordinatePrefix,
menuOrder = cluster.menuOrder,
catOrder = catOrders[cluster.clusterCategory]
}
if cluster.forbiddenDlcIds ~= nil or cluster.clusterCategory == "Vanilla" then
table.insert(clustersBase, row)
else
table.insert(clustersSO, row)
end
end
end
end
local function sortClusters(a, b)
if a.catOrder ~= b.catOrder then
return a.catOrder < b.catOrder
elseif a.menuOrder ~= b.menuOrder then
return a.menuOrder < b.menuOrder
else
return a.coordinatePrefix < b.coordinatePrefix
end
end
for i, clusters in ipairs({clustersBase, clustersSO}) do
table.insert(out, {i == 1 and "{{游戏本体图标}}" or "{{眼冒金星图标}}"})
table.sort(clusters, sortClusters)
for _, v in ipairs(clusters) do
table.insert(out, {v.name, v.clusterCategory, v.coordinatePrefix})
end
end
return require([[Module:表格]]).table(out, args)
end
-- test by: p.main()
function p.main(frame)
return p._main(getArgs(frame))
end
return p

沪公网安备 31011002002714 号