Editing Module:Infobox Monster

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 3: Line 3:
local Infobox = require('Module:Infobox')
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
local parse = require('Module:Param Parse')

local attack_styles = {
['none'] = 'None',
['impact'] = 'Impact',
['cryonae'] = 'Cryonae',
['arborae'] = 'Arborae',
['tempestae'] = 'Tempestae',
['infernae'] = 'Infernae',
['necromae'] = 'Necromae',
}

function attack_style_func(style)
local attack_style = attack_styles[string.lower(style or '')]
if attack_style then
if attack_style == 'None' then
return 'None'
else
return '[[File:'..attack_style..'.png|18px|link='..attack_style..']] [['..attack_style..']]'
end
end
return nil
end


function p.main(frame)
function p.main(frame)
Line 40: Line 18:
parse.premium,
parse.premium,
parse.episode,
parse.episode,
{name = 'level', func = parse.number}, -- TODO - same as below
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
{name = 'xp', func = parse.number}, -- TODO - same as above
{name = 'xp', func = parse.number}, -- TODO - same as above
{name = 'att_style', func = attack_style_func},
{name = 'immune_to', func = attack_style_func},
{name = 'vulnerable_to', func = attack_style_func},
parse.variant,
parse.variant,
parse.passive,
parse.passive,
parse.examine,
parse.examine,
parse.profession_bubble_a,
parse.profession_bubble_b,
}
}
Line 71: Line 45:
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Level]]', colspan="6"},
{tag='td', content=Infobox.param('level'), colspan="14"}
}
}
:add_row{
:add_row{
Line 80: Line 58:
{tag='td', content=Infobox.param('xp'), colspan="14"},
{tag='td', content=Infobox.param('xp'), colspan="14"},
}
}
:add_row{
if infobox:is_param_defined(Infobox.param('att_style')) > 0 then
infobox:add_row{
{tag='th', content='[[Attack Style]]', colspan="6"},
{tag='td', content=Infobox.param('att_style'), colspan="14"},
}
end
if infobox:is_param_defined(Infobox.param('immune_to')) > 0 then
infobox:add_row{
{tag='th', content='Immune To', colspan="6"},
{tag='td', content=Infobox.param('immune_to'), colspan="14"},
}
end
if infobox:is_param_defined(Infobox.param('vulnerable_to')) > 0 then
infobox:add_row{
{tag='th', content='Vulnerable to', colspan="6"},
{tag='td', content=Infobox.param('vulnerable_to'), colspan="14"},
}
end
if infobox:is_param_defined(Infobox.param('variant')) > 0 then
infobox:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
}
:add_row{
end
infobox:add_row{
{tag='th', content='[[File:Passive activity icon.png|14px|link=Passive activity]] [[Passive activity|Passive]]', colspan="6"},
{tag='th', content='[[File:Passive activity icon.png|14px|link=Passive activity]] [[Passive activity|Passive]]', colspan="6"},
{tag='td', content=Infobox.param('passive'), colspan="14"},
{tag='td', content=Infobox.param('passive'), colspan="14"},
Line 112: Line 70:
{tag='td', content=Infobox.param('examine'), colspan="14"}
{tag='td', content=Infobox.param('examine'), colspan="14"}
}
}
:pad(20)
local bubble_a = infobox:is_param_defined(Infobox.param('profession_bubble_a')) > 0
local bubble_b = infobox:is_param_defined(Infobox.param('profession_bubble_b')) > 0
if bubble_a and bubble_b then
infobox:add_row{
{tag='td', content=Infobox.param('profession_bubble_a'), class='infobox-bubble-item', colspan="10"},
{tag='td', content=Infobox.param('profession_bubble_b'), class='infobox-bubble-item', colspan="10"},
addClass = 'infobox-bubble-row'
}
elseif bubble_a then
infobox:add_row{
{tag='td', content=Infobox.param('profession_bubble_a'), class='infobox-bubble-item', colspan="20"},
addClass = 'infobox-bubble-row'
}
elseif bubble_b then
infobox:add_row{
{tag='td', content=Infobox.param('profession_bubble_b'), class='infobox-bubble-item', colspan="20"},
addClass = 'infobox-bubble-row'
}
else
infobox:pad('20')
end
return infobox
return infobox
Please note that all contributions to Brighter Shores Wiki are considered to be released under the CC BY-NC-SA 3.0 (see Brighter Shores:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)
Preview page with this template

This page is a member of a hidden category: