Module:Joueur
De Nefald
Autres actions
La documentation pour ce module peut être créée à Module:Joueur/doc
local p = {}
function p.main(frame)
local args = frame:getParent().args
local pseudo = mw.text.trim(args[1] or '')
local affichage = mw.text.trim(args['affichage'] or pseudo)
local grade = mw.text.trim(args['grade'] or '')
local texte = mw.text.trim(args['texte'] or '')
local taille = mw.text.trim(args['taille'] or '60')
local position = mw.text.trim(args['position'] or '')
local mode = mw.text.trim(args['mode'] or '')
if pseudo == '' then
return '<span class="joueur-erreur">Pseudo requis</span>'
end
local posClass = ''
if position == 'droite' then
posClass = ' joueur-droite'
elseif position == 'gauche' then
posClass = ' joueur-gauche'
end
local url_avatar = 'https://minotar.net/avatar/' .. mw.uri.encode(pseudo, 'PATH') .. '/' .. taille .. '?.png'
local avatar = '[' .. url_avatar .. ' ' .. url_avatar .. ']'
if mode == 'avatar' then
local result = {}
table.insert(result, '<div class="joueur-avatar-seul plainlinks' .. posClass .. '" style="--joueur-h:' .. taille .. 'px">')
table.insert(result, avatar)
table.insert(result, '</div>')
return frame:preprocess(table.concat(result))
end
local result = {}
table.insert(result, '<div class="joueur-banniere plainlinks' .. posClass .. '" style="--joueur-h:' .. taille .. 'px">')
table.insert(result, '<div class="joueur-avatar">')
table.insert(result, avatar)
table.insert(result, '</div>')
table.insert(result, '<div class="joueur-contenu">')
table.insert(result, '<div class="joueur-nom">' .. affichage .. '</div>')
if grade ~= '' then
table.insert(result, '<div class="joueur-grade">[[' .. grade .. ']]</div>')
end
if texte ~= '' then
table.insert(result, '<div class="joueur-texte">' .. texte .. '</div>')
end
table.insert(result, '</div>')
table.insert(result, '</div>')
return frame:preprocess(table.concat(result))
end
return p