Модуль:ArmorStats: различия между версиями

Нет описания правки
Нет описания правки
Строка 1: Строка 1:
local p = {}
local p = {}
-- Функция для изменения яркости цвета (уменьшение на 20%)
local function darkenColor(color)
    -- Уменьшаем каждую компоненту RGB на 20%
    local r = math.floor(tonumber(color:sub(2, 3), 16) * 0.8)
    local g = math.floor(tonumber(color:sub(4, 5), 16) * 0.8)
    local b = math.floor(tonumber(color:sub(6, 7), 16) * 0.8)
    -- Собираем новый цвет
    return string.format("#%02x%02x%02x", r, g, b)
end


function p.templateCells(frame)
function p.templateCells(frame)
Строка 27: Строка 37:
     -- Обработка шаблона Anchor с помощью frame:preprocess
     -- Обработка шаблона Anchor с помощью frame:preprocess
     local anchor = frame:preprocess('{{Anchor|' .. anchorName .. '}}')
     local anchor = frame:preprocess('{{Anchor|' .. anchorName .. '}}')
    -- Вычисляем цвет рамки (чуть темнее заданного цвета)
    local borderColor = darkenColor(color)


     -- Формирование строк для ячеек таблицы
     -- Формирование строк для ячеек таблицы
     local out = ""
     local out = ""
     out = out .. '!style="background-color: ' .. color .. ';"|' .. anchor
     out = out .. '!style="background-color: ' .. color .. '; border: 2px solid ' .. borderColor .. ';"|' .. anchor
     out = out .. imageTooltip
     out = out .. imageTooltip
     out = out .. '<br>' .. itemName .. '\n'
     out = out .. '<br>' .. itemName .. '\n'