Editing Module:Infobox Monster
Jump to navigation
Jump to search
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 == 'None' then |
|||
return 'None' |
|||
else |
|||
return '[[File:'..attack_style..' damage icon.png|18px|link='..attack_style..']] [['..attack_style..']]' |
|||
end |
|||
⚫ | |||
return nil |
|||
end |
|||
function p.main(frame) |
function p.main(frame) |
||
Line 18: | Line 40: | ||
parse.premium, |
parse.premium, |
||
parse.episode, |
parse.episode, |
||
{name = 'requirements', func = parse.has_content}, |
|||
parse.unlock_level, |
|||
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property |
|||
parse.health, |
|||
{name = 'xp', func = parse.number}, -- TODO - same as above |
|||
parse.experience, |
|||
{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.knowledge, |
|||
parse.aggressive, |
parse.aggressive, |
||
parse. |
parse.examine, |
||
parse.profession_bubble_a, |
parse.profession_bubble_a, |
||
parse.profession_bubble_b, |
parse.profession_bubble_b, |
||
Line 35: | Line 56: | ||
parse.profession_a_level_smw, |
parse.profession_a_level_smw, |
||
parse.profession_b_smw, |
parse.profession_b_smw, |
||
parse.profession_b_level_smw |
parse.profession_b_level_smw, |
||
} |
} |
||
Line 47: | Line 68: | ||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content='Release', colspan=" |
{tag='th', content='Release', colspan="6"}, |
||
{tag='td', content=Infobox.param('release'), colspan=" |
{tag='td', content=Infobox.param('release'), colspan="14"}, |
||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content='[[Episode]]', colspan=" |
{tag='th', content='[[Episode]]', colspan="6"}, |
||
{tag='td', content=Infobox.param('episode'), colspan=" |
{tag='td', content=Infobox.param('episode'), colspan="14"}, |
||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content='[[Premium Pass|Premium]]', colspan=" |
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"}, |
||
{tag='td', content=Infobox.param('premium'), colspan=" |
{tag='td', content=Infobox.param('premium'), colspan="14"}, |
||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content=' |
{tag='th', content='Requirements', colspan="6"}, |
||
{tag='td', content=Infobox.param(' |
{tag='td', content=Infobox.param('requirements'), colspan="14"}, |
||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content='[[Health]]', colspan=" |
{tag='th', content='[[Health]]', colspan="6"}, |
||
{tag='td', content=Infobox.param(' |
{tag='td', content=Infobox.param('hp'), colspan="14"}, |
||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content='Experience', colspan=" |
{tag='th', content='Experience', colspan="6"}, |
||
{tag='td', content=Infobox.param(' |
{tag='td', content=Infobox.param('xp'), colspan="14"}, |
||
} |
} |
||
if infobox:is_param_defined(Infobox.param(' |
if infobox:is_param_defined(Infobox.param('att_style')) > 0 then |
||
infobox:add_row{ |
infobox:add_row{ |
||
{tag='th', content='[[Attack Style]]', colspan=" |
{tag='th', content='[[Attack Style]]', colspan="6"}, |
||
{tag='td', content=Infobox.param(' |
{tag='td', content=Infobox.param('att_style'), colspan="14"}, |
||
} |
} |
||
end |
end |
||
if infobox:is_param_defined(Infobox.param('immune_to')) > 0 then |
if infobox:is_param_defined(Infobox.param('immune_to')) > 0 then |
||
infobox:add_row{ |
infobox:add_row{ |
||
{tag='th', content='Immune |
{tag='th', content='Immune To', colspan="6"}, |
||
{tag='td', content=Infobox.param('immune_to'), colspan=" |
{tag='td', content=Infobox.param('immune_to'), colspan="14"}, |
||
} |
} |
||
end |
end |
||
if infobox:is_param_defined(Infobox.param('vulnerable_to')) > 0 then |
if infobox:is_param_defined(Infobox.param('vulnerable_to')) > 0 then |
||
infobox:add_row{ |
infobox:add_row{ |
||
{tag='th', content='Vulnerable to', colspan=" |
{tag='th', content='Vulnerable to', colspan="6"}, |
||
{tag='td', content=Infobox.param('vulnerable_to'), colspan=" |
{tag='td', content=Infobox.param('vulnerable_to'), colspan="14"}, |
||
} |
} |
||
end |
end |
||
if infobox:is_param_defined(Infobox.param('variant')) > 0 and infobox:get_param(Infobox.param('variant'), 0) ~= 'N/A' then |
if infobox:is_param_defined(Infobox.param('variant')) > 0 and infobox:get_param(Infobox.param('variant'), 0) ~= 'N/A' then |
||
infobox:add_row{ |
infobox:add_row{ |
||
{tag='th', content='[[Variant]] of', colspan=" |
{tag='th', content='[[Variant]] of', colspan="6"}, |
||
{tag='td', content=Infobox.param('variant'), colspan=" |
{tag='td', content=Infobox.param('variant'), colspan="14"}, |
||
} |
} |
||
end |
end |
||
infobox:add_row{ |
infobox:add_row{ |
||
{tag='th', content='[[File:Passive activity icon.png|14px|link=Passive activity]] [[Passive activity|Passive]]', colspan=" |
{tag='th', content='[[File:Passive activity icon.png|14px|link=Passive activity]] [[Passive activity|Passive]]', colspan="6"}, |
||
{tag='td', content=Infobox.param('passive'), colspan=" |
{tag='td', content=Infobox.param('passive'), colspan="14"}, |
||
⚫ | |||
if infobox:get_param(Infobox.param('passive'), 0) == 'Yes' then |
|||
⚫ | |||
⚫ | |||
{tag='td', content=Infobox.param('knowledge'), colspan="13"}, |
|||
} |
} |
||
⚫ | |||
⚫ | |||
⚫ | |||
infobox:add_row{ |
|||
{tag=' |
{tag='td', content=Infobox.param('aggressive'), colspan="14"}, |
||
{tag='td', content=Infobox.param('aggressive'), colspan="13"}, |
|||
} |
} |
||
:add_row{ |
:add_row{ |
||
{tag='th', content=' |
{tag='th', content='Examine', colspan="6"}, |
||
{tag='td', content=Infobox.param(' |
{tag='td', content=Infobox.param('examine'), colspan="14"} |
||
} |
} |
||
local bubble_a = infobox:is_param_defined(Infobox.param('profession_bubble_a')) > 0 |
local bubble_a = infobox:is_param_defined(Infobox.param('profession_bubble_a')) > 0 |