local getArgs = require('Module:Arguments').getArgs
local p = {}
-- 版本名
local versionMap = {
JE = "Java版", JAVA = "Java版", ["JAVA版"] = "Java版",
BE = "基岩版", BEDROCK = "基岩版", ["基岩版"] = "基岩版",
PE = "携带版", POCKET = "携带版", ["口袋版"] = "携带版", ["携带版"] = "携带版",
PEALPHA = "携带版Alpha", POCKETALPHA = "携带版Alpha", ["携带版Alpha"] = "携带版Alpha",
EE = "教育版", EDU = "教育版", EDUCATION = "教育版", ["教育版"] = "教育版",
EARTH = "Minecraft Earth", ["MINECRAFT EARTH"] = "Minecraft Earth",
CONSOLE = "原主机版", LCE = "原主机版", ["原主机版"] = "原主机版",
PS = "PlayStation版", ["PLAYSTATION版"] = "PlayStation版",
PS3 = "PlayStation 3版", ["PLAYSTATION 3版"] = "PlayStation 3版",
PS4 = "PlayStation 4版", ["PLAYSTATION 4版"] = "PlayStation 4版",
PSV = "PlayStation Vita版", ["PSVITA"] = "PlayStation Vita版", ["PLAYSTATION VITA版"] = "PlayStation Vita版",
XBOXONE = "Xbox One版", XBONE = "Xbox One版", ["XBOX ONE版"] = "Xbox One版",
XBOX360 = "Xbox 360版", XB360 = "Xbox 360版", ["XBOX 360版"] = "Xbox 360版",
WIIU = "Wii U版", ["WII U版"] = "Wii U版",
SWITCH = "Nintendo Switch版", NS = "Nintendo Switch版", ["任天堂 SWITCH版"] = "Nintendo Switch版",
["NINTENDO SWITCH版"] = "Nintendo Switch版",
}
-- 短名
local shortMap = {
["Java版"] = "JE", ["基岩版"] = "BE", ["携带版"] = "PE", ["携带版Alpha"] = "PEα",
["教育版"] = "EE", ["原主机版"] = "LCE", ["PlayStation版"] = "PS", ["PlayStation 3版"] = "PS3",
["PlayStation 4版"] = "PS4", ["PlayStation Vita版"] = "PSV", ["Xbox One版"] = "XBONE",
["Xbox 360版"] = "XB360", ["Wii U版"] = "WIIU", ["Nintendo Switch版"] = "NS版",
["Minecraft Earth"] = "EARTH",
}
function p.main(frame)
local args = getArgs(frame)
local mcVersionArgs = {}
local mcVersionShow = {}
local short = args['short'] or ''
for _, val in ipairs(args) do
local version = versionMap[mw.ustring.upper(val)] or val
table.insert(mcVersionArgs, version)
if short ~= '' then
table.insert(mcVersionShow, shortMap[version] or version)
else
table.insert(mcVersionShow, version)
end
end
local out = ''
local count = #mcVersionArgs
if count >= 1 then
out = out .. '<sup>[仅[[mcwiki:zh:' .. mcVersionArgs[1] .. '|' .. mcVersionShow[1] .. ']]'
if count >= 2 then
for i = 2, count do
out = out .. '、[[mcwiki:zh:' .. mcVersionArgs[i] .. '|' .. mcVersionShow[i] .. ']]'
end
end
out = out .. ']</sup>'
end
return out
end
return p