Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Module:ESColor: Difference between revisions

From Teriock
Content deleted Content added
// via Wikitext Extension for VSCode
// via Wikitext Extension for VSCode
 
(4 intermediate revisions by the same user not shown)
Line 2: Line 2:


function p.c ( frame )
function p.c ( frame )
local life = tonumber(frame.args['life']) == 1 and 1 or 0
local life = tonumber(frame.args['life'])
local storm = tonumber(frame.args['storm']) == 1 and 1 or 0
local storm = tonumber(frame.args['storm'])
local necro = tonumber(frame.args['necro']) == 1 and 1 or 0
local necro = tonumber(frame.args['necro'])
local flame = tonumber(frame.args['flame']) == 1 and 1 or 0
local flame = tonumber(frame.args['flame'])
local nature = tonumber(frame.args['nature']) == 1 and 1 or 0
local nature = tonumber(frame.args['nature'])
life_color = '#f6d32d'
life_color = 'es-life'
storm_color = '#3584e4'
storm_color = 'es-storm'
necro_color = '#77767b'
necro_color = 'es-necro'
flame_color = '#f8a300'
flame_color = 'es-flame'
nature_color = '#33d17a'
nature_color = 'es-nature'
multi_color = '#9141ac'
multi_color = 'es-multi'
local color_counter = life + storm + necro + flame + nature
local color_counter = life + storm + necro + flame + nature
if color_counter ~= 1 then
if color_counter ~= 1 then
Line 29: Line 29:
end
end
return multi_color
return multi_color
end

function p.t ( frame )
local life = tonumber(frame.args['life'])
local storm = tonumber(frame.args['storm'])
local necro = tonumber(frame.args['necro'])
local flame = tonumber(frame.args['flame'])
local nature = tonumber(frame.args['nature'])
local elementsList = {}
local elementsString = ''
if life == 1 then
table.insert(elementsList, '{{L|Ability|Life Elder Sorcery|Life}}')
end
if storm == 1 then
table.insert(elementsList, '{{L|Ability|Storm Elder Sorcery|Storm}}')
end
if necro == 1 then
table.insert(elementsList, '{{L|Ability|Necromancy Elder Sorcery|Necromancy}}')
end
if flame == 1 then
table.insert(elementsList, '{{L|Ability|Flame Elder Sorcery|Flame}}')
end
if nature == 1 then
table.insert(elementsList, '{{L|Ability|Nature Elder Sorcery|Nature}}')
end
if #elementsList == 0 then
table.insert(elementsList, '{{L|Ability|Celestial Elder Sorcery Words|Celestial}}')
end
if #elementsList > 1 then
elementsList[#elementsList] = 'and ' .. elementsList[#elementsList]
end
if #elementsList > 2 then
elementsString = table.concat(elementsList, ', ')
else
elementsString = table.concat(elementsList, ' ')
end
return frame:preprocess(elementsString)
end
end



Latest revision as of 17:32, 23 April 2025

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

local p = {}

function p.c ( frame )
    local life = tonumber(frame.args['life'])
    local storm = tonumber(frame.args['storm'])
    local necro = tonumber(frame.args['necro'])
    local flame = tonumber(frame.args['flame'])
    local nature = tonumber(frame.args['nature'])
    life_color = 'es-life'
    storm_color = 'es-storm'
    necro_color = 'es-necro'
    flame_color = 'es-flame'
    nature_color = 'es-nature'
    multi_color = 'es-multi'
    local color_counter = life + storm + necro + flame + nature
    if color_counter ~= 1 then
        return multi_color
    end
    if life == 1 then
        return life_color
    elseif storm == 1 then
        return storm_color
    elseif necro == 1 then
        return necro_color
    elseif flame == 1 then
        return flame_color
    elseif nature == 1 then
        return nature_color
    end
    return multi_color
end

function p.t ( frame )
    local life = tonumber(frame.args['life'])
    local storm = tonumber(frame.args['storm'])
    local necro = tonumber(frame.args['necro'])
    local flame = tonumber(frame.args['flame'])
    local nature = tonumber(frame.args['nature'])
    local elementsList = {}
    local elementsString = ''
    if life == 1 then
        table.insert(elementsList, '{{L|Ability|Life Elder Sorcery|Life}}')
    end
    if storm == 1 then
        table.insert(elementsList, '{{L|Ability|Storm Elder Sorcery|Storm}}')
    end
    if necro == 1 then
        table.insert(elementsList, '{{L|Ability|Necromancy Elder Sorcery|Necromancy}}')
    end
    if flame == 1 then
        table.insert(elementsList, '{{L|Ability|Flame Elder Sorcery|Flame}}')
    end
    if nature == 1 then
        table.insert(elementsList, '{{L|Ability|Nature Elder Sorcery|Nature}}')
    end
    if #elementsList == 0 then
        table.insert(elementsList, '{{L|Ability|Celestial Elder Sorcery Words|Celestial}}')
    end
    if #elementsList > 1 then
        elementsList[#elementsList] = 'and ' .. elementsList[#elementsList]
    end
    if #elementsList > 2 then
        elementsString = table.concat(elementsList, ', ')
    else
        elementsString = table.concat(elementsList, ' ')
    end
    return frame:preprocess(elementsString)
end

return p