Module:Icons: Difference between revisions
From Melvor Idle
Falterfire (talk | contribs) (Created this for use in other modules.) |
Falterfire (talk | contribs) (Fixed a minor formatting thing, set up override for Melee) |
||
Line 16: | Line 16: | ||
local img = link | local img = link | ||
--MANUAL OVERRIDES | |||
if text == 'Melee' then | |||
img = 'Combat' | |||
end | |||
local result = '[[File:'..img | local result = '[[File:'..img | ||
if type ~= nil and type ~= '' then result = result..'_('..type..')' end | if type ~= nil and type ~= '' then result = result..'_('..type..')' end | ||
Line 22: | Line 26: | ||
if qty ~= nil and qty ~= '' then result = result..' '..qty end | if qty ~= nil and qty ~= '' then result = result..' '..qty end | ||
if not notext then | if not notext then | ||
result = result..'[['..link | result = result..' [['..link | ||
if text ~= nil and text ~= '' then | if text ~= nil and text ~= '' then | ||
result = result..'|'..text | result = result..'|'..text |
Revision as of 02:52, 18 September 2020
Documentation for this module may be created at Module:Icons/doc
--You can't generate Templates from within Lua due to the loading order, so instead copying the Icon functionality into a module so it can be pulled elsewhere.
--Should function very similarly to how Template:Icon works
local p = {}
function p.Icon(frame)
local args = frame.args ~= nil and frame.args or frame
local link = args[1]
local text = args[2]
local type = args.type
local ext = args.ext ~= nil and args.ext or 'svg'
local notext = args.notext ~= nil and args.notext ~= ''
local menu = args.menu ~= nil and args.menu ~= ''
local imgSize = args.size ~= nil and args.size or 25
local qty = args.qty
local img = link
--MANUAL OVERRIDES
if text == 'Melee' then
img = 'Combat'
end
local result = '[[File:'..img
if type ~= nil and type ~= '' then result = result..'_('..type..')' end
result = result..'.'..ext..'|'..tostring(imgSize)..'px|link='..link..']]'
if qty ~= nil and qty ~= '' then result = result..' '..qty end
if not notext then
result = result..' [['..link
if text ~= nil and text ~= '' then
result = result..'|'..text
end
result = result..']]'
end
if menu then
result = '{| class="articletable" style="display:inline-block;vertical-align:bottom;"\r\n|-\r\n|'..result
result = result..'\r\n|}'
end
return result
end
return p