模組:Vgr/sandbox
外观
![]() | 这是Module:Vgr(差异)的沙盒。 |
local p = {}
local arealist = {
{'KR', '[[韩国|-{zh-cn:韩国; zh-tw:南韓;}-]]'},
{'JP', '[[日本]]'},
{'INT', '[[国际化与本地化|国际]]'},
{'WW', '[[国际]]'},
{'NA', '[[北美]]'},
{'PAL', '[[PAL区]]'},
{'EU', '[[欧洲]]'},
{'AU', '[[澳洲|澳-{}-洲]]'}, -- 兼容原{{Vgrelease new}}的使用代码
{'AUS', '[[澳洲|澳-{}-洲]]'}, -- 兼容原{{Vgrelease}}的使用代码
{'CN', '[[中国大陆|大陆]]'},
{'TWHK', '[[台湾|台]][[香港|港]]'},
{'TW', '[[台湾]]'},
{'HK', '[[香港]]'},
{'SEA', '[[东南亚]]'},
{'SG', '[[新加坡]]'},
{'MY', '[[马来西亚]]'},
}
local function vgn(area, context)
local ret
for i, v in ipairs(arealist) do
if v[1] == area then ret = v[2] .. ':' .. context .. '<br />' break end
end
if ret == nil then
ret = area .. ':' .. context .. '<br />'
end
return ret
end
function p.vgrelease(frame)
local pframe = frame:getParent()
local args = pframe.args
local ret = ''
for i, v in pairs(arealist) do
if args[v[1]] ~= nil then
ret = ret .. v[2] .. ':' .. args[v[1]] .. '<br />'
end
end
if args[4] ~= nil and args[4] ~= '' then
for i = 1, math.huge, 2 do
if args[i+1] ~= nil and args[i+1] ~= '' then
ret = ret .. vgn(args[i], args[i+1])
else
break
end
end
elseif args[3] ~= nil and args[3] ~= '' then
ret = ret .. '[[' .. args[1] .. '|' .. args[2] .. ']]:' .. args[3]
elseif args[2] ~= nil and args[2] ~= '' then
ret = ret .. args[1] .. ':' .. args[2]
end
return ret
end
return p