Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« Module:Joueur » : différence entre les versions

De Nefald
Hiob (discussion | contributions)
Page créée avec « local p = {} function p.carte(frame) local args = frame:getParent().args local pseudo = args[1] or args.pseudo or "steve" local affich = args.affichage or pseudo local grade = args.grade or "" local texte = args.texte or "" local hauteur = tonumber(args.hauteur) or 60 local uuid = args.uuid or "" -- URL de l'avatar local img_url if uuid ~= "" then img_url = "https://crafatar.com/avatars/" .. uuid... »
 
Hiob (discussion | contributions)
mAucun résumé des modifications
Ligne 1 : Ligne 1 :
local p = {}
local p = {}


function p.carte(frame)
function p.main(frame)
     local args = frame:getParent().args
     local pseudo = frame.args[1] or ''
    local grade = frame.args[2] or ''
      
      
     local pseudo = args[1] or args.pseudo or "steve"
     if pseudo == '' then
    local affich  = args.affichage or pseudo
         return '<span class="joueur-texte">' .. (frame.args.texte or 'Joueur inconnu') .. '</span>'
    local grade  = args.grade or ""
    local texte  = args.texte or ""
    local hauteur = tonumber(args.hauteur) or 60
    local uuid    = args.uuid or ""
   
    -- URL de l'avatar
    local img_url
    if uuid ~= "" then
         img_url = "https://crafatar.com/avatars/" .. uuid .. "?size=120&default=MHF_Steve&overlay"
    else
        img_url = "https://minotar.net/avatar/" .. pseudo .. "/120"
    end
   
    local imgsize = hauteur - 8
    local font_nom  = math.floor((hauteur - 8) / 2.6)
    local font_grade = math.floor((hauteur - 8) / 3.8)
   
    -- Construction HTML
    local html = mw.html.create("div")
    html:addClass("joueur-banniere")
        :css("height", hauteur .. "px")
   
    -- Avatar
    html:tag("img")
        :addClass("joueur-avatar")
        :attr("src", img_url)
        :attr("width", imgsize)
        :attr("height", imgsize)
        :attr("alt", pseudo)
        :done()
   
    -- Bloc infos
    local infos = html:tag("span")
        :addClass("joueur-infos")
   
    -- Nom avec lien
    local lien_nom = "[[Utilisateur:" .. pseudo .. "|" .. affich .. "]]"
    infos:tag("span")
        :addClass("joueur-nom")
        :css("font-size", font_nom .. "px")
        :wikitext(lien_nom)
        :done()
   
    -- Grade (optionnel)
    if grade ~= "" then
        infos:tag("span")
            :addClass("joueur-grade")
            :css("font-size", font_grade .. "px")
            :wikitext("[[" .. grade .. "]]")
            :done()
    end
   
    -- Texte (optionnel)
    if texte ~= "" then
        infos:tag("span")
            :addClass("joueur-texte")
            :css("font-size", font_grade .. "px")
            :wikitext(texte)
            :done()
     end
     end
      
      
     -- TemplateStyles
     local url_avatar = 'https://minotar.net/avatar/' .. pseudo .. '/60?.png'
     local styles = frame:extensionTag("templatestyles", "", {src = "Modèle:Joueur/styles.css"})
     local url_page = '[[Utilisateur:' .. pseudo .. '|' .. pseudo .. ']]'
      
      
     return styles .. tostring(html)
     return '<span class="plainlinks">[' .. url_page .. ' ' .. url_avatar .. ']</span>'
end
end


return p
return p

Version du 19 février 2026 à 14:05

La documentation pour ce module peut être créée à Module:Joueur/doc

local p = {}

function p.main(frame)
    local pseudo = frame.args[1] or ''
    local grade = frame.args[2] or ''
    
    if pseudo == '' then
        return '<span class="joueur-texte">' .. (frame.args.texte or 'Joueur inconnu') .. '</span>'
    end
    
    local url_avatar = 'https://minotar.net/avatar/' .. pseudo .. '/60?.png'
    local url_page = '[[Utilisateur:' .. pseudo .. '|' .. pseudo .. ']]'
    
    return '<span class="plainlinks">[' .. url_page .. ' ' .. url_avatar .. ']</span>'
end

return p
Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.