Module:SPECIAL
La documentation pour ce module peut être créée à Module:SPECIAL/doc
local p = {}
local special = require('Module:SPECIAL/Données')
local outils = require('Module:Outils')
-- Liste verticale des attributs fondamentaux SPECIAL
function p.mainAttributs(frame)
local params = outils.extractArgs(frame)
local main = special.main
local res = mw.html.create('ul'):addClass('avt-special-list')
for index, attribut in ipairs(main) do
res
:tag('li')
:tag('span'):wikitext('[['..attribut..']]'):done()
:tag('span'):wikitext(outils.trim(params[index]) or '?'):done()
:done()
end
res:allDone()
return res
end
-- Liste de statistiques dérivées
function p.derivedStats(frame)
local params = outils.extractArgs(frame)
local derived = special.derived
local value = nil
local res = mw.html.create('ul'):addClass('avt-special-list')
for index, label in ipairs(derived) do
value = outils.trim(params[label])
if value then
res
:tag('li')
:tag('span'):wikitext('[['..label:gsub("^%l", string.upper)..']]'):done()
:tag('span'):wikitext(value):done()
:done()
end
end
-- Types de résistance
local sdrd = derived.sdrd
for index, resist in ipairs(sdrd) do
if params[resist[2]] or params[resist[3]] then
for index, resist in ipairs(sdrd) do
res
:tag('li')
:tag('span'):wikitext(resist[1]):done()
:tag('span'):wikitext((params[resist[2]] or '?')..'/'..(params[resist[3]] or '?')..' %'):done()
:done()
end
break
end
end
res:allDone()
return res
end
-- Liste de compétences
function p.skills(frame)
local params = outils.extractArgs(frame)
local skills = special.skill
local value = nil
local res = mw.html.create('ul'):addClass('avt-special-list')
for index, label in ipairs(skills) do
value = outils.trim(params[label])
if value then
res
:tag('li')
:tag('span'):wikitext('[['..label:gsub("^%l", string.upper)..']]'):done()
:tag('span'):wikitext(value):done()
:done()
end
end
res:allDone()
return res
end
return p