Módulo:DeityInfobox: mudanças entre as edições

De Cronicas Eternas Wiki
Criou página com 'local p = {} function p.infobox(frame) local args = frame:getParent().args local sections = { ["INFORMAÇÃO BÁSICA"] = { {"Título", args["title"]}, {"Nível de Poder", args["power_level"]}, {"Alinhamento", args["alignment"]}, {"Plano", args["plane"]}, {"Adjetivo", args["adjective"]}, {"Símbolo", args["symbol"]}, {"Aspectos", args["aspects"]}, {"Panteão",...'
(Sem diferença)

Edição das 23h40min de 22 de novembro de 2024

A documentação para este módulo pode ser criada em Módulo:DeityInfobox/doc

local p = {}

function p.infobox(frame)
    local args = frame:getParent().args

    local sections = {
        ["INFORMAÇÃO BÁSICA"] = {
            {"Título", args["title"]},
            {"Nível de Poder", args["power_level"]},
            {"Alinhamento", args["alignment"]},
            {"Plano", args["plane"]},
            {"Adjetivo", args["adjective"]},
            {"Símbolo", args["symbol"]},
            {"Aspectos", args["aspects"]},
            {"Panteão", args["pantheon"]},
            {"Súdito de", args["subject_of"]},
            {"Servos", args["servants"]},
            {"Gênero", args["gender"]},
            {"Morte", args["death"]},
        },
        ["INFLUÊNCIA"] = {
            {"Portfólio", args["portfolio"]},
            {"Domínios", args["domains"]},
        },
        ["ADORAÇÃO"] = {
            {"Adoradores", args["worshipers"]},
        },
        ["PRÉ-APOTEOSE"] = {
            {"Espécie Mortal", args["mortal_species"]},
            {"Sexo Mortal", args["mortal_gender"]},
            {"Lar Mortal", args["mortal_home"]},
            {"Apoteose", args["apotheosis"]},
        },
    }

    -- Início da infobox com imagem e nome
    local infobox = '<div style="width:22em; background:#f9f9f9; border:1px solid #aaa; float:right; padding:5px; font-size:90%;">'

    -- Adiciona a imagem da divindade, se fornecida
    if args["image"] and args["image"] ~= "" then
        infobox = infobox .. string.format(
            '<div style="text-align:center; margin-bottom:10px;">%s</div>',
            frame:preprocess(string.format('[[File:%s|center|frameless|200px]]', args["image"]))
        )
    end

    -- Adiciona o nome da divindade
    infobox = infobox .. string.format(
        '<div style="text-align:center; background:#ccc; font-size:120%%; padding:4px;">%s</div>',
        args["name"] or "NOME DA DIVINDADE"
    )

    -- Adiciona as seções e campos
    for section, fields in pairs(sections) do
        infobox = infobox .. string.format('<div style="text-align:center; background:#ddd; font-size:110%%; padding:4px; margin-top:5px;">%s</div>', section)
        for _, field in ipairs(fields) do
            local label, value = field[1], field[2]
            if value and value ~= "" then
                infobox = infobox .. string.format('<div style="padding:2px 5px;"><strong>%s:</strong> %s</div>', label, value)
            end
        end
    end

    infobox = infobox .. '</div>'

    return infobox
end

return p