Jump to content

📢 Please make sure to read our Style Guide before editing. For questions, suggestions, or technical issues, please contact Noah.

Module:Infobox Player: Difference between revisions

From CrabCraft Wiki
Use UUID for avatar if provided
Not sure how exactly this works, but added 'Date Joined' and 'Left Office'
 
(2 intermediate revisions by one other user not shown)
Line 10: Line 10:
     local player_args = {
     local player_args = {
         {'t',      args.username},
         {'t',      args.username},
         {'i',      'https://mc-heads.net/player/' .. head_id .. '/100.png'},
         {'i',      'https://mc-heads.net/player/' .. head_id .. '/110.png'},
         {'s',      'Biography'},
         {'s',      'Biography'},
         {'f',      'Username',      args.username},
         {'f',      'Username',      args.username},
         {'f',      'Alias',          args.alias},
         {'f',      'Alias',          args.alias},
         {'f',      'Season Joined',  args.seasonjoined},
         {'f',      'Season Joined',  args.seasonjoined},
        {'f',      'Date Joined',  args.datejoined},
         {'f',      'Nationality',    args.nationality},
         {'f',      'Nationality',    args.nationality},
         {'f',      'Discord',        args.discord},
         {'f',      'Discord',        args.discord},
Line 24: Line 25:
         {'f',      'Minister Role',  args.ministerrole},
         {'f',      'Minister Role',  args.ministerrole},
         {'f',      'Assumed Office',  args.assumedoffice},
         {'f',      'Assumed Office',  args.assumedoffice},
        {'f',      'Left Office',    args.leftoffice},
         {'f',      'Preceded By',    args.precededby},
         {'f',      'Preceded By',    args.precededby},
        {'s',      'Links'},
        {'f', 'Player Stats', args.uuid and args.uuid ~= '' and ('[https://www.crabcraft.net/stats/' .. args.uuid .. ' Link]') or nil},
     }
     }



Latest revision as of 08:23, 27 July 2026

Documentation for this module may be created at Module:Infobox Player/doc

local p = {}

local infobox = require("Module:Infobox")

function p.infobox(frame)
    local args = frame:getParent().args
    -- Determine which identifier to use for the head image: prefer UUID if provided
    local head_id = args.uuid and args.uuid ~= '' and args.uuid or args.username

    local player_args = {
        {'t',       args.username},
        {'i',       'https://mc-heads.net/player/' .. head_id .. '/110.png'},
        {'s',       'Biography'},
        {'f',       'Username',       args.username},
        {'f',       'Alias',          args.alias},
        {'f',       'Season Joined',  args.seasonjoined},
        {'f',       'Date Joined',  args.datejoined},
        {'f',       'Nationality',     args.nationality},
        {'f',       'Discord',        args.discord},
        {'s',       'Personality'},
        {'f',       'Quote',           args.quote},
        {'f',       'Favourite Item',  args.favouriteitem},
        {'f',       'Favourite Block', args.favouriteblock},
        {'s',       'Government'},
        {'f',       'Minister Role',   args.ministerrole},
        {'f',       'Assumed Office',  args.assumedoffice},
        {'f',       'Left Office',     args.leftoffice},
        {'f',       'Preceded By',     args.precededby},
        {'s',       'Links'},
        {'f', 'Player Stats', args.uuid and args.uuid ~= '' and ('[https://www.crabcraft.net/stats/' .. args.uuid .. ' Link]') or nil},
    }

    return infobox.infobox {
        getParent = function() return { args = player_args } end
    }
end

return p