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
Adds player stats to infobox
Not sure how exactly this works, but added 'Date Joined' and 'Left Office'
 
Line 15: Line 15:
         {'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'},
         {'s',      'Links'},

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