Elite Dangerous Wiki

このモジュールについての説明文ページを モジュール:CharacterInfobox/doc に作成できます

local Infobox = {}
local HF = require('Module:HF')

function Infobox.Link( field, vars )
    output = ''
    if not HF.isempty(field.Value) then
        output = '[[' .. field.Value .. ']]'
        return output
    end
end

function Infobox.Allegiance( field, vars )
    output = ''
    if not HF.isempty(field.Value) then
        if field.Value == "Alliance" then
            output = '[[File:Alliance_vector.svg|27px|link=]] ' .. '[[' .. field.Value .. ']]'
        elseif field.Value == "Empire" then
            output = '[[File:Empire_vector.svg|27px|link=]] ' .. '[[' .. field.Value .. ']]'
        elseif field.Value == "Federation" then
            output = '[[File:Federation_vector.svg|27px|link=]] ' .. '[[' .. field.Value .. ']]'
        elseif field.Value == "Independent" then
            output = field.Value
        else
            output = '[[' .. field.Value .. ']]'
        end
        return output
    end
end

function Infobox.Ethos( field, vars )
    output = ''
    if not HF.isempty(field.Value) then
        if field.Value == "Combat" then
            output = '[[File:Ethos Combat.svg|27px|link=]] ' .. field.Value
        elseif field.Value == "Covert" then
            output = '[[File:Ethos Covert.svg|27px|link=]] ' .. field.Value
        elseif field.Value == "Finance" then
            output = '[[File:Ethos Finance.svg|27px|link=]] ' .. field.Value
        elseif field.Value == "Social" then
            output = '[[File:Ethos Social.svg|27px|link=]] ' .. field.Value
        else
            output = '[[' .. field.Value .. ']]'
        end
        return output
    end
end

function Infobox.Quantify( field, vars )
    local unit = field.Unit or ''
    local value = field.Value or field.Default or '?'
    if HF.isempty(value) then 
        return '---'
    else
        return value .. ' ' .. unit
    end
end

function Infobox.Newline( field, vars )
    local output = ''
    if not HF.isempty(field.Value) then
        local ships = HF.explode(';', field.Value)
        table.sort(ships)
        for i, ship in ipairs(ships) do
            output = output .. HF.trim(ship) .. '<br />'
        end
 
        if string.sub(output, -6) == '<br />' then
            output = string.sub( output, 1, -7 )
        end
 
        return output
    end
end

function Infobox.PowerIcon( field, vars )
    output = field.Value
    if not HF.isempty(field.PowerIcon) then
        output = '[[File:' .. field.PowerIcon .. '|35px|link=]] ' .. output
    end
    return output
end

function Infobox.MainImage( field, vars )
    output = ''
    if not HF.isempty(field.Value) then
        output = '[[File:' .. field.Value .. '|306px]]'
    end
    return output
end

return Infobox