Module:Item
このモジュールはTemplate:Item、Template:アイテムに使用されています。
local p = {}
function p.itemparameters(f)
local args = f:getParent().args
local lang = f.args[2]
local name = args[1] or f.args[1]
local namelen = string.len(name)
local ext = args['ext'] or 'png'
local size = args['size'] or '32x32px'
local num = args['x'] or args[2]
local image = args['img']
local link = args['link']
local variety = args['v']
local id = args['id']
local data = mw.loadData('Module:Item/IDAliases')
local result
local data2
local data3
if lang == nil then
mw.log("error: Language code not specified")
return "error: Language code not specified"
end
if image == nil then
if id == nil then
if lang == 'EN' then
if variety == nil or not variety or variety == '' then
image = 'Elin Item Sprite ' ..name..'.'..ext
else
image = 'Elin Item Sprite ' ..name..' '..variety..'.'..ext
end
else
if lang == 'JA' then
data2 = mw.loadData('Module:Item/JaAliases') or {}
data3 = mw.loadData('Module:Item/JaAliases2') or {}
end
if variety == nil or not variety or variety == '' then
result = data[data2[name]] or data3[name]
else
result = data[data2[name..variety]] or data3[name..variety]
end
if result == nil or not result or result == '' then
image = 'clear.png'
else
image = 'Elin Item Sprite ' ..result..'.'..ext
end
end
else
if data[id] then
image = 'Elin Item Sprite ' ..data[id]..'.'..ext
else
image = 'clear.png'
end
end
else
local v = string.find(image,'%.')
if v then
else
image = image..'.'..ext
end
end
local wt = mw.html.create('span'):addClass('item')
--wt:addClass('item'):cssText('image-rendering: pixelated;')
if args['grid'] == 'true' or args['grid'] == 'on' or args['grid'] == '1' or args['grid'] == 'Y' then
wt:cssText('display: inline-grid; text-align: center;')
else
if namelen >=36 then
wt:cssText('font-size: smaller; white-space: pre-wrap;')
else
wt:cssText('white-space: nowrap;')
end
end
if link == 'false' or link == 'no' or link == '0' or link == 'N' then
wt:wikitext(string.format('[[File:%s|%s|link=|alt=%s|class=itemimg]]',image,size,name))
wt:wikitext(string.format('%s',name))
else
if not link or link == '' then
link = 'Elin:'..name..'|'..name
else
link = link..'|'..name
end
wt:wikitext(string.format('[[File:%s|%s|link=%s|alt=%s|class=itemimg]]',image,size,link,name))
wt:wikitext(string.format('[[%s]]',link))
end
if not num or num == '' then
else
wt:wikitext(string.format('(%s)',num))
end
return tostring(wt)
end
return p