Módulo:Lari1

De Wiki Gla
Revisão de 13h22min de 17 de março de 2026 por Larifk (discussão | contribs)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

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

local p = {}

function p.main(frame)
    local args = frame:getParent().args
    local titulo = mw.text.trim(args['titulo'] or '')

    local bosses = {}
    local i = 1
    while true do
        local nome = mw.text.trim(args['boss' .. i .. 'nome'] or '')
        if nome == '' then break end

        local boss = {
            nome = nome,
            elite = {},
            hard = {}
        }

        -- Skills Elite
        local j = 1
        while j <= 8 do
            local sNome = mw.text.trim(args['boss' .. i .. 'skill' .. j .. 'nome'] or '')
            if sNome == '' then break end
            table.insert(boss.elite, {
                nome  = sNome,
                video = mw.text.trim(args['boss' .. i .. 'skill' .. j .. 'video'] or ''),
                desc  = mw.text.trim(args['boss' .. i .. 'skill' .. j .. 'desc'] or '')
            })
            j = j + 1
        end

        -- Skills Hard
        j = 1
        while j <= 8 do
            local sNome = mw.text.trim(args['boss' .. i .. 'hskill' .. j .. 'nome'] or '')
            if sNome == '' then break end
            table.insert(boss.hard, {
                nome  = sNome,
                video = mw.text.trim(args['boss' .. i .. 'hskill' .. j .. 'video'] or ''),
                desc  = mw.text.trim(args['boss' .. i .. 'hskill' .. j .. 'desc'] or '')
            })
            j = j + 1
        end

        table.insert(bosses, boss)
        i = i + 1
    end

    local json = mw.text.jsonEncode(bosses)

    local container = mw.html.create('div')
        :addClass('ba-wrap')
        :addClass('dark')
        :attr('id', 'ba-wrap')
        :attr('data-bosses', json)
        :attr('data-titulo', titulo)

    return tostring(container)
end

return p