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

мНет описания правки
мНет описания правки
Строка 16: Строка 16:
templateArgs.name = chemPrototype.name
templateArgs.name = chemPrototype.name
templateArgs.description = chemPrototype.desc .. " На вид " .. chemPrototype.physicalDesc .. "."
templateArgs.description = chemPrototype.desc .. " На вид " .. chemPrototype.physicalDesc .. "."
templateArgs.color = chemPrototype.color
templateArgs.color = getColor(chemPrototype.id)
templateArgs.textColor = getTextColor(chemPrototype.id)
templateArgs.recipes_count = tablelength(chemPrototype.recipes)
templateArgs.recipes_count = tablelength(chemPrototype.recipes)
Строка 288: Строка 289:
end
end
return ""
return ""
end
function getColor(chemPrototypeId)
return mw.text.nowiki(p.chem[chemPrototypeId].color:sub(1, 7))
end
function getTextColor(chemPrototypeId)
local basecol = p.chem[chemPrototypeId].color
local red = tonumber(basecol:sub(2, 3), 16)
local grn = tonumber(basecol:sub(4, 5), 16)
local blu = tonumber(basecol:sub(6, 7), 16)
local luminance = math.sqrt(0.241*red*red + 0.691*grn*grn + 0.068*blu*blu)
if luminance > 100 then
return mw.text.nowiki("#000")
else
return mw.text.nowiki("#FFF")
end
end
end
-- НЕ МОЕ
-- НЕ МОЕ


return p
return p