it's okay to use an oversized palette

also formula for 89->256 table was wrong
This commit is contained in:
Vanessa Ezekowitz 2017-02-24 19:57:48 -05:00
parent e0c87656ed
commit fbe762cf19
2 changed files with 18 additions and 31 deletions

View File

@ -141,22 +141,9 @@ local default_dyes = {
-- to convert it from human readable to something the engine can use as a palette. -- to convert it from human readable to something the engine can use as a palette.
-- --
-- in machine-readable form, the selected color is: -- in machine-readable form, the selected color is:
-- 16 + [hue] - [shade]*24 for the light colors, or -- [hue] - [shade]*24 for the light colors, or
-- 16 + [hue] + [saturation]*24 + [shade]*48 for the dark colors, or -- [hue] + [saturation]*24 + [shade]*48 for the dark colors, or
-- [shade] (no math) for the greys, 0 = white. -- 240 + [shade] for the greys, 0 = white.
unifieddyes.extended_palette = "[combine:256x1"
..":0,0=unifieddyes_palette_extended.png"
..":16,-1=unifieddyes_palette_extended.png"
..":40,-2=unifieddyes_palette_extended.png"
..":64,-3=unifieddyes_palette_extended.png"
..":88,-4=unifieddyes_palette_extended.png"
..":112,-5=unifieddyes_palette_extended.png"
..":136,-6=unifieddyes_palette_extended.png"
..":160,-7=unifieddyes_palette_extended.png"
..":184,-8=unifieddyes_palette_extended.png"
..":208,-9=unifieddyes_palette_extended.png"
..":232,-10=unifieddyes_palette_extended.png"
-- code borrowed from homedecor -- code borrowed from homedecor
@ -379,16 +366,16 @@ function unifieddyes.getpaletteidx(color, palette_type)
} }
local shades_extended = { local shades_extended = {
["faint"] = 1, ["faint"] = 0,
["pastel"] = 2, ["pastel"] = 1,
["light"] = 3, ["light"] = 2,
["bright"] = 4, ["bright"] = 3,
[""] = 5, [""] = 4,
["s50"] = 6, ["s50"] = 5,
["medium"] = 7, ["medium"] = 6,
["mediums50"] = 8, ["mediums50"] = 7,
["dark"] = 9, ["dark"] = 8,
["darks50"] = 10, ["darks50"] = 9
} }
local shades_wallmounted = { local shades_wallmounted = {
@ -415,7 +402,7 @@ function unifieddyes.getpaletteidx(color, palette_type)
end end
elseif palette_type == "extended" then elseif palette_type == "extended" then
if grayscale_extended[color] then if grayscale_extended[color] then
return grayscale_extended[color], 0 return grayscale_extended[color]+240, 0
end end
else else
if grayscale[color] then if grayscale[color] then
@ -681,19 +668,19 @@ unifieddyes.convert_classic_palette = {}
for hue = 0, 11 do for hue = 0, 11 do
-- light -- light
local paletteidx = unifieddyes.getpaletteidx("dye:light_"..HUES[hue+1], false) local paletteidx = unifieddyes.getpaletteidx("dye:light_"..HUES[hue+1], false)
unifieddyes.convert_classic_palette[paletteidx] = 16 + hue*2 + 48 unifieddyes.convert_classic_palette[paletteidx] = hue*2 + 48
for sat = 0, 1 do for sat = 0, 1 do
for val = 0, 2 do for val = 0, 2 do
-- full -- all other shades
local paletteidx = unifieddyes.getpaletteidx("dye:"..VALS[val+1]..HUES[hue+1]..SATS[sat+1], false) local paletteidx = unifieddyes.getpaletteidx("dye:"..VALS[val+1]..HUES[hue+1]..SATS[sat+1], false)
unifieddyes.convert_classic_palette[paletteidx] = 16 + hue*2 + sat*24 + (val+4)*48 unifieddyes.convert_classic_palette[paletteidx] = hue*2 + sat*24 + (val*48+96)
end end
end end
end end
for grey = 0, 4 do for grey = 0, 4 do
local paletteidx = unifieddyes.getpaletteidx("dye:"..GREYS[grey+1], false) local paletteidx = unifieddyes.getpaletteidx("dye:"..GREYS[grey+1], false)
unifieddyes.convert_classic_palette[paletteidx] = grey unifieddyes.convert_classic_palette[paletteidx] = 240 + grey
end end
-- Generate all dyes that are not part of the default minetest_game dyes mod -- Generate all dyes that are not part of the default minetest_game dyes mod

Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 B

After

Width:  |  Height:  |  Size: 299 B