Module:Attribute ID: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
local | local cap = require( 'Module:Capitalize' ).main | ||
local getArgs = require( 'Module:Arguments' ).main | local getArgs = require( 'Module:Arguments' ).main | ||
local p = {} | local p = {} | ||
local attributedict = { | |||
["Fire"] = "Fire", | |||
["Electric"] = "Electric", | |||
["Wind"] = "Wind", | |||
["Stun"] = "Stun", | |||
["Explosion"] = "Explosion", | |||
["Ice"] = "Ice", | |||
["Blind"] = "Blind", | |||
["Null"] = "None", | |||
["None"] = "None", | |||
} | |||
function p.main() | function p.main() | ||
Line 9: | Line 20: | ||
function p._main(args) | function p._main(args) | ||
local formattedImage = string.format('[[File:Attrib-%s.png|%s|link=%s|%s]]', | local arg1 = cap(args[1]) | ||
for key, value in pairs(attributedict) do | |||
if string.match(arg1, key) then | |||
local formattedImage | |||
if args[3] then | |||
formattedImage = string.format('[[File:Attrib-%s.png|%s|link=%s|%s]]', arg1, args[2] or '20px', arg1, args['text'] or arg1) | |||
local formattedLink = string.format('[[%s|%s]]', args['link'] or cap(args[3]), args['text'] or cap(args[3])) | |||
return string.format('<span style="white-space: nowrap;">%s %s</span>', formattedImage, formattedLink) | |||
else | |||
formattedImage = string.format('[[File:Attrib-%s.png|%s|link=%s|%s]]', arg1, args[2] or '36px', arg1, args['text'] or arg1) | |||
return formattedImage | |||
end | |||
else | |||
return error("Attribute does not exist", 0) | |||
end | |||
end | |||
end | end | ||
return p | return p |
Revision as of 16:49, 16 April 2018
Documentation for this module may be created at Module:Attribute ID/doc
local cap = require( 'Module:Capitalize' ).main local getArgs = require( 'Module:Arguments' ).main local p = {} local attributedict = { ["Fire"] = "Fire", ["Electric"] = "Electric", ["Wind"] = "Wind", ["Stun"] = "Stun", ["Explosion"] = "Explosion", ["Ice"] = "Ice", ["Blind"] = "Blind", ["Null"] = "None", ["None"] = "None", } function p.main() local args = getArgs() return p._main(args) end function p._main(args) local arg1 = cap(args[1]) for key, value in pairs(attributedict) do if string.match(arg1, key) then local formattedImage if args[3] then formattedImage = string.format('[[File:Attrib-%s.png|%s|link=%s|%s]]', arg1, args[2] or '20px', arg1, args['text'] or arg1) local formattedLink = string.format('[[%s|%s]]', args['link'] or cap(args[3]), args['text'] or cap(args[3])) return string.format('<span style="white-space: nowrap;">%s %s</span>', formattedImage, formattedLink) else formattedImage = string.format('[[File:Attrib-%s.png|%s|link=%s|%s]]', arg1, args[2] or '36px', arg1, args['text'] or arg1) return formattedImage end else return error("Attribute does not exist", 0) end end end return p