Module:Color: Difference between revisions

Sur (talk | contribs)
ported get_slot_color from Utilities, now more generic and supports other key types
 
Sur (talk | contribs)
m write_previews initial
Line 3: Line 3:
-- Hash for color values
-- Hash for color values
local colors_data = {
local colors_data = {
["Weapon"] = {
["CitadelCategoryWeapon"] = { -- weapon
hex = "c97a03",
hex = "c97a03",
rgb = "201,122,3",
rgb = "201,122,3",
Line 9: Line 9:
cmyk = "0%,39%,98%,21%"
cmyk = "0%,39%,98%,21%"
},
},
["Armor"] = {
["CitadelCategoryArmor"] = { --vitality
hex = "659818",
hex = "659818",
rgb = "101,152,24",
rgb = "101,152,24",
Line 15: Line 15:
cmyk = "34%,0%,84%,40%"
cmyk = "34%,0%,84%,40%"
},
},
["Tech"] = {
["CitadelCategoryTech"] = { --spirit
hex = "c288f0", -- purple
hex = "c288f0", -- purple
rgb = "194,136,240",
rgb = "194,136,240",
Line 33: Line 33:
         cmyk = "100%,0%,40%,0%"
         cmyk = "100%,0%,40%,0%"
     },
     },
     ["Abrams"] = {
     ["hero_atlas"] = { --abrams
         hex = "2193AE",
         hex = "2193AE",
         rgb = "33,147,174",
         rgb = "33,147,174",
Line 39: Line 39:
         cmyk = "81%,15%,0%,32%"
         cmyk = "81%,15%,0%,32%"
     },
     },
     ["Wraith"] = {
     ["hero_wraith"] = {  
         hex = "954E7A",
         hex = "954E7A",
         rgb = "149,78,122",
         rgb = "149,78,122",
Line 45: Line 45:
         cmyk = "0%,48%,18%,42%"
         cmyk = "0%,48%,18%,42%"
     },
     },
     ["Viscous"] = {
     ["hero_viscous"] = {
         hex = "8AC365",
         hex = "8AC365",
         rgb = "138,195,101",
         rgb = "138,195,101",
Line 51: Line 51:
         cmyk = "29%,0%,48%,24%"
         cmyk = "29%,0%,48%,24%"
     },
     },
     ["Grey Talon"] = {
     ["hero_orion"] = { --grey talon
         hex = "61B083",
         hex = "61B083",
         rgb = "97,176,131",
         rgb = "97,176,131",
Line 57: Line 57:
         cmyk = "45%,0%,26%,31%"
         cmyk = "45%,0%,26%,31%"
     },
     },
     ["Vindicta"] = {
     ["hero_hornet"] = { --vindicta
         hex = "87A8B8",
         hex = "87A8B8",
         rgb = "135,168,184",
         rgb = "135,168,184",
Line 63: Line 63:
         cmyk = "27%,9%,0%,28%"
         cmyk = "27%,9%,0%,28%"
     },
     },
     ["Infernus"] = {
     ["hero_inferno"] = { --infernus
         hex = "FF472E",
         hex = "FF472E",
         rgb = "253,71,46",
         rgb = "253,71,46",
Line 69: Line 69:
         cmyk = "0%,72%,82%,1%"
         cmyk = "0%,72%,82%,1%"
     },
     },
     ["McGinnis"] = {
     ["hero_forge"] = { --mcginnis
         hex = "466A9C",
         hex = "466A9C",
         rgb = "70,106,156",
         rgb = "70,106,156",
Line 75: Line 75:
         cmyk = "55%,32%,0%,39%"
         cmyk = "55%,32%,0%,39%"
     },
     },
     ["Haze"] = {
     ["hero_haze"] = {
         hex = "AE6231",
         hex = "AE6231",
         rgb = "174,98,49",
         rgb = "174,98,49",
Line 81: Line 81:
         cmyk = "0%,44%,72%,32%"
         cmyk = "0%,44%,72%,32%"
     },
     },
     ["Lady Geist"] = {
     ["hero_ghost"] = { --lady geist
         hex = "088A5C",
         hex = "088A5C",
         rgb = "8,138,92",
         rgb = "8,138,92",
Line 87: Line 87:
         cmyk = "94%,0%,33%,46%"
         cmyk = "94%,0%,33%,46%"
     },
     },
     ["Mirage"] = {
     ["hero_mirage"] = {
         hex = "87683C",
         hex = "87683C",
         rgb = "135,104,60",
         rgb = "135,104,60",
Line 93: Line 93:
         cmyk = "0%,23%,56%,47%"
         cmyk = "0%,23%,56%,47%"
     },
     },
     ["Lash"] = {
     ["hero_lash"] = {
         hex = "444C57",
         hex = "444C57",
         rgb = "68,76,87",
         rgb = "68,76,87",
Line 99: Line 99:
         cmyk = "22%,13%,0%,66%"
         cmyk = "22%,13%,0%,66%"
     },
     },
     ["Seven"] = {
     ["hero_gigawatt"] = { --seven
         hex = "EC963F",
         hex = "EC963F",
         rgb = "236,150,63",
         rgb = "236,150,63",
Line 105: Line 105:
         cmyk = "0%,36%,73%,8%"
         cmyk = "0%,36%,73%,8%"
     },
     },
     ["Yamato"] = {
     ["hero_yamato"] = {
         hex = "6F9181",
         hex = "6F9181",
         rgb = "111,145,129",
         rgb = "111,145,129",
Line 111: Line 111:
         cmyk = "23%,0%,11%,43%"
         cmyk = "23%,0%,11%,43%"
     },
     },
     ["Warden"] = {
     ["hero_warden"] = {
         hex = "566279",
         hex = "566279",
         rgb = "86,98,121",
         rgb = "86,98,121",
Line 117: Line 117:
         cmyk = "29%,19%,0%,53%"
         cmyk = "29%,19%,0%,53%"
     },
     },
     ["Bebop"] = {
     ["hero_bebop"] = {
         hex = "A04835",
         hex = "A04835",
         rgb = "160,72,53",
         rgb = "160,72,53",
Line 123: Line 123:
         cmyk = "0%,55%,67%,37%"
         cmyk = "0%,55%,67%,37%"
     },
     },
     ["Paradox"] = {
     ["hero_chrono"] = { --paradox
         hex = "993A53",
         hex = "993A53",
         rgb = "153,58,83",
         rgb = "153,58,83",
Line 129: Line 129:
         cmyk = "0%,62%,46%,40%"
         cmyk = "0%,62%,46%,40%"
     },
     },
     ["Dynamo"] = {
     ["hero_dynamo"] = {
         hex = "D0BA46",
         hex = "D0BA46",
         rgb = "208,186,70",
         rgb = "208,186,70",
Line 135: Line 135:
         cmyk = "0%,11%,66%,18%"
         cmyk = "0%,11%,66%,18%"
     },
     },
     ["Shiv"] = {
     ["hero_shiv"] = {
         hex = "A53D88",
         hex = "A53D88",
         rgb = "165,61,136",
         rgb = "165,61,136",
Line 177: Line 177:
if no_wrap == nil or no_wrap == 'false' or no_wrap == "" then no_wrap = false else no_wrap = true end
if no_wrap == nil or no_wrap == 'false' or no_wrap == "" then no_wrap = false else no_wrap = true end
if debug_mode == nil or debug_mode == 'false' or debug_mode == "" then debug_mode = false end
if debug_mode == nil or debug_mode == 'false' or debug_mode == "" then debug_mode = false end
if (key == "Weapon" or
key == "Armor" or
key == "Tech") then
key = "CitadelCategory" .. key
end
local color_data = colors_data[slot]
local color_data = colors_data[slot]
Line 203: Line 210:
end
end


function p.list_keys(frame)
local ret = ''
for key, value in pairs(colors_data) do
ret = ret .. key .. ", "
end
return frame:preprocess(ret)
end
function p.write_previews(frame)
local ret = ''
-- Add headers
local headers = {"Key", "Hex Code", "Colored div", "Colored Text", "Colored Underline"}
local header_row = ""
for _, header in ipairs(headers) do
header_row = header_row .. "<th>" .. header .. "</th>"
end
header_row = "<tr>" .. header_row .. "</tr>"
-- Add values
local rows = ""
local row
for key, value in pairs(colors_data) do
local hex = value['hex']
row = ''
row = row .. "<td>" .. key .. "</td>"
row = row .. "<td>" .. "#" .. hex .. "</td>"
row = row .. "<td>" .. "<div style=background-color:#" .. hex .. ";>" .. key .. "</div>" .. "</td>"
row = row .. "<td>" .. "<span style=color:#" .. hex .. ";>" .. key .. "</span>" .. "</td>"
row = row .. "<td>" .. '<span style="text-decoration: underline; text-decoration-color: #'..hex..';">' .. key .. "</span>" .. "</td>"
rows = rows .. "<tr>" .. row .. "</tr>"
end
return "<table>" .. header_row .. rows .. "</table>"
end
return p
return p