From 3eb3a9a3304f07fc1b36f0e2ece945a0b660aa7e Mon Sep 17 00:00:00 2001 From: Vanessa Dannenberg Date: Wed, 12 Sep 2018 22:29:57 -0400 Subject: [PATCH] expand old split-89 palette to 176 colors (by adding more hues, now has all 24 in 7 shades each plus 5 greys) --- init.lua | 110 +++++-------------- textures/unifieddyes_palette_ambers.png | Bin 0 -> 93 bytes textures/unifieddyes_palette_azures.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_blues.png | Bin 99 -> 91 bytes textures/unifieddyes_palette_ceruleans.png | Bin 0 -> 93 bytes textures/unifieddyes_palette_chartreuses.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_crimsons.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_cyans.png | Bin 101 -> 91 bytes textures/unifieddyes_palette_fuchsias.png | Bin 0 -> 93 bytes textures/unifieddyes_palette_greens.png | Bin 91 -> 91 bytes textures/unifieddyes_palette_harlequins.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_indigos.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_limes.png | Bin 99 -> 93 bytes textures/unifieddyes_palette_magentas.png | Bin 101 -> 91 bytes textures/unifieddyes_palette_malachites.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_mulberrys.png | Bin 0 -> 93 bytes textures/unifieddyes_palette_oranges.png | Bin 99 -> 91 bytes textures/unifieddyes_palette_reds.png | Bin 99 -> 91 bytes textures/unifieddyes_palette_redviolets.png | Bin 99 -> 0 bytes textures/unifieddyes_palette_roses.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_sapphires.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_skyblues.png | Bin 99 -> 0 bytes textures/unifieddyes_palette_springs.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_turquoises.png | Bin 0 -> 93 bytes textures/unifieddyes_palette_vermilions.png | Bin 0 -> 91 bytes textures/unifieddyes_palette_violets.png | Bin 99 -> 91 bytes textures/unifieddyes_palette_yellows.png | Bin 101 -> 91 bytes 27 files changed, 25 insertions(+), 85 deletions(-) create mode 100644 textures/unifieddyes_palette_ambers.png create mode 100644 textures/unifieddyes_palette_azures.png create mode 100644 textures/unifieddyes_palette_ceruleans.png create mode 100644 textures/unifieddyes_palette_chartreuses.png create mode 100644 textures/unifieddyes_palette_crimsons.png create mode 100644 textures/unifieddyes_palette_fuchsias.png create mode 100644 textures/unifieddyes_palette_harlequins.png create mode 100644 textures/unifieddyes_palette_indigos.png create mode 100644 textures/unifieddyes_palette_malachites.png create mode 100644 textures/unifieddyes_palette_mulberrys.png delete mode 100644 textures/unifieddyes_palette_redviolets.png create mode 100644 textures/unifieddyes_palette_roses.png create mode 100644 textures/unifieddyes_palette_sapphires.png delete mode 100644 textures/unifieddyes_palette_skyblues.png create mode 100644 textures/unifieddyes_palette_springs.png create mode 100644 textures/unifieddyes_palette_turquoises.png create mode 100644 textures/unifieddyes_palette_vermilions.png diff --git a/init.lua b/init.lua index 09b156f..2466a85 100644 --- a/init.lua +++ b/init.lua @@ -41,26 +41,6 @@ else S = function(s) return s end end --- helper functions for other mods that use this one - -unifieddyes.HUES = { - "red", - "orange", - "yellow", - "lime", - "green", - "aqua", - "cyan", - "skyblue", - "blue", - "violet", - "magenta", - "redviolet" -} - -unifieddyes.HUES_WITH_GREY = table.copy(unifieddyes.HUES) -table.insert(unifieddyes.HUES_WITH_GREY, "grey") - -- the names of the various colors here came from http://www.procato.com/rgb+index/ unifieddyes.HUES_EXTENDED = { @@ -90,6 +70,13 @@ unifieddyes.HUES_EXTENDED = { { "crimson", 0xff, 0x00, 0x40 } } +unifieddyes.HUES_WITH_GREY = {} + +for _,i in ipairs(unifieddyes.HUES_EXTENDED) do + table.insert(unifieddyes.HUES_WITH_GREY, i[1]) +end +table.insert(unifieddyes.HUES_WITH_GREY, "grey") + unifieddyes.HUES_WALLMOUNTED = { "red", "orange", @@ -162,8 +149,6 @@ unifieddyes.player_last_right_clicked = {} unifieddyes.palette_has_color = {} unifieddyes.player_showall = {} --- unifieddyes.player_last_right_clicked[placer:get_player_name()] = {pos = pos, node = node, def = def} - -- if a node with a palette is placed in the world, -- but the itemstack used to place it has no palette_index (color byte), -- create something appropriate to make it officially white. @@ -238,6 +223,7 @@ end -- This helper function creates a colored itemstack function unifieddyes.make_colored_itemstack(item, palette, color) + print(item, palette, color) local paletteidx = unifieddyes.getpaletteidx(color, palette) local stack = ItemStack(item) stack:get_meta():set_int("palette_index", paletteidx) @@ -247,13 +233,15 @@ end -- these helper functions register all of the recipes needed to create colored -- nodes with any of the dyes supported by that node's palette. -local function register_c(craft, hue, sat, val) +local function register_c(craft, h, sat, val) + local hue = (type(h) == "table") and h[1] or h + print(craft.output, craft.output_prefix, craft.output_suffix, h, hue, sat, val) local color = "" if val then - if craft.palette ~= "extended" then + if craft.palette == "wallmounted" then color = val..hue..sat else - color = val..hue[1]..sat + color = val..hue..sat end else color = hue -- if val is nil, then it's grey. @@ -294,7 +282,7 @@ local function register_c(craft, hue, sat, val) end function unifieddyes.register_color_craft(craft) - local hues_table = unifieddyes.HUES + local hues_table = unifieddyes.HUES_EXTENDED local sats_table = unifieddyes.SATS local vals_table = unifieddyes.VALS local greys_table = unifieddyes.GREYS @@ -306,7 +294,6 @@ function unifieddyes.register_color_craft(craft) sats_table = {""} vals_table = unifieddyes.VALS elseif craft.palette == "extended" then - hues_table = unifieddyes.HUES_EXTENDED vals_table = unifieddyes.VALS_EXTENDED greys_table = unifieddyes.GREYS_EXTENDED end @@ -391,10 +378,10 @@ end function unifieddyes.get_hsv(name) -- expects a node/item name local hue = "" local a,b - for _, i in ipairs(unifieddyes.HUES) do - a,b = string.find(name, "_"..i) - if a and not ( string.find(name, "_redviolet") and i == "red" ) then - hue = i + for _, i in ipairs(unifieddyes.HUES_EXTENDED) do + a,b = string.find(name, "_"..i[1]) + if a then + hue = i[1] break end end @@ -424,9 +411,10 @@ end -- in the function below, color is just a color string, while -- palette_type can be: -- --- "split" = 89 color palette split into pieces for colorfacedir --- "wallmounted" = 32-color abridged palette -- "extended" = 256 color palette +-- "split" = 200 color palette split into pieces for colorfacedir +-- "wallmounted" = 32-color abridged palette + function unifieddyes.getpaletteidx(color, palette_type) @@ -475,24 +463,6 @@ function unifieddyes.getpaletteidx(color, palette_type) ["black"] = 4, } - local hues = { - ["red"] = 1, - ["orange"] = 2, - ["yellow"] = 3, - ["lime"] = 4, - ["green"] = 5, - ["aqua"] = 6, - ["spring"] = 6, - ["cyan"] = 7, - ["skyblue"] = 8, - ["azure"] = 8, - ["blue"] = 9, - ["violet"] = 10, - ["magenta"] = 11, - ["redviolet"] = 12, - ["rose"] = 12, - } - local hues_extended = { ["red"] = 0, ["vermilion"] = 1, @@ -627,19 +597,8 @@ function unifieddyes.getpaletteidx(color, palette_type) shade = "light" end if palette_type == "split" then -- it's colorfacedir - - -- If using this palette, translate new color names back to old. - - if color == "spring" then - color = "aqua" - elseif color == "azure" then - color = "skyblue" - elseif color == "rose" then - color = "redviolet" - end - - if hues[color] and shades[shade] then - return (shades[shade] * 32), hues[color] + if hues_extended[color] and shades[shade] then + return (shades[shade] * 32), hues_extended[color]+1 end elseif palette_type == "extended" then if hues_extended[color] and shades_extended[shade] then @@ -730,7 +689,7 @@ function unifieddyes.on_airbrush(itemstack, player, pointed_thing) newcolor = string.sub(painting_with, 5) else if hue ~= 0 then - newcolor = unifieddyes.HUES[hue] + newcolor = unifieddyes.HUES_EXTENDED[hue][1] else newcolor = "grey" end @@ -743,10 +702,6 @@ function unifieddyes.on_airbrush(itemstack, player, pointed_thing) end end - if newcolor == "spring" then newcolor = "aqua" - elseif newcolor == "azure" then newcolor = "skyblue" - elseif newcolor == "rose" then newcolor = "redviolet" - end name = modname..":"..string.gsub(nodename2, oldcolor, newcolor) if not minetest.registered_items[name] then @@ -813,7 +768,7 @@ function unifieddyes.color_to_name(param2, def) local h = color - v * 8 return unifieddyes.VALS[v]..unifieddyes.HUES_WALLMOUNTED[h+1] - elseif string.find(def.palette, "unifieddyes_palette") then -- it's the "split" 89-color palette + elseif string.find(def.palette, "unifieddyes_palette") then -- it's the split palette -- palette names in this mode are always "unifieddyes_palette_COLORs.png" local s = string.sub(def.palette, 21) @@ -1206,14 +1161,6 @@ for _, h in ipairs(unifieddyes.HUES_EXTENDED) do end end minetest.register_alias("unifieddyes:"..val..hue, "dye:"..val..hue) - if h[1] == "spring" then - minetest.register_alias("unifieddyes:"..val.."aqua", "dye:"..val.."spring") - elseif h[1] == "azure" then - minetest.register_alias("unifieddyes:"..val.."skyblue", "dye:"..val.."azure") - elseif h[1] == "rose" then - minetest.register_alias("unifieddyes:"..val.."redviolet", "dye:"..val.."rose") - end - if v > 3 then -- also register the low-sat version @@ -1234,13 +1181,6 @@ for _, h in ipairs(unifieddyes.HUES_EXTENDED) do groups = { dye=1, not_in_creative_inventory=1 }, }) minetest.register_alias("unifieddyes:"..val..hue.."_s50", "dye:"..val..hue.."_s50") - if h[1] == "spring" then - minetest.register_alias("unifieddyes:"..val.."aqua_s50", "dye:"..val.."spring_s50") - elseif h[1] == "azure" then - minetest.register_alias("unifieddyes:"..val.."skyblue_s50", "dye:"..val.."azure_s50") - elseif h[1] == "rose" then - minetest.register_alias("unifieddyes:"..val.."redviolet_s50", "dye:"..val.."rose_s50") - end end end end diff --git a/textures/unifieddyes_palette_ambers.png b/textures/unifieddyes_palette_ambers.png new file mode 100644 index 0000000000000000000000000000000000000000..e4b6cf09f28a0c4a998d9033dd38bc21d9321b5e GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il!~W|V+hA}MoETe{~7xv_WZD;54hF)0p hzUPqfXRhNNWsELQ1oN)xsDU&yc)I$ztaD0e0sz3^8QTB= diff --git a/textures/unifieddyes_palette_ceruleans.png b/textures/unifieddyes_palette_ceruleans.png new file mode 100644 index 0000000000000000000000000000000000000000..0e471492304efdba2d8ffb9d99adf133244840a0 GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il!~W|V+hA}MoETe{~7nc|L=H# s!QtUSM+f`*c`LPEU%Phwy6D%}>kjbsyhvW34ph(J>FVdQ&MBb@07vE?RR910 literal 0 HcmV?d00001 diff --git a/textures/unifieddyes_palette_chartreuses.png b/textures/unifieddyes_palette_chartreuses.png new file mode 100644 index 0000000000000000000000000000000000000000..613935e7c3c07b662b78eead12e8ebd9d7ddb908 GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il#-{5V+hCfcZJ literal 0 HcmV?d00001 diff --git a/textures/unifieddyes_palette_crimsons.png b/textures/unifieddyes_palette_crimsons.png new file mode 100644 index 0000000000000000000000000000000000000000..4f2dd47f6408c4a22e37930d110606016ad03a31 GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il#-{5V+hCfo*e7| diff --git a/textures/unifieddyes_palette_fuchsias.png b/textures/unifieddyes_palette_fuchsias.png new file mode 100644 index 0000000000000000000000000000000000000000..1fbde3e979a1fda301e07ad874a192e7ff3d8008 GIT binary patch literal 93 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il!~W|V+hA}MoETe{~7=9f6w4} s;h@7qdq;%Z~!C~C1h1gdB7boFyt=akR{06Ie*TL1t6 literal 0 HcmV?d00001 diff --git a/textures/unifieddyes_palette_greens.png b/textures/unifieddyes_palette_greens.png index b381841ef84ac824e03a9c44af8ec81e4c510f78..cdf2c23d4b043f2a818da02255923cb25e79064e 100644 GIT binary patch delta 52 zcma!!o}il(C@0SG)@{an^L HB{Ts5903xT diff --git a/textures/unifieddyes_palette_harlequins.png b/textures/unifieddyes_palette_harlequins.png new file mode 100644 index 0000000000000000000000000000000000000000..0a440ab96d843ea717b9ca3c37082905fdfdd7e2 GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il#-{5V+hCfWQ+gx`w!Q*9bxAC p{NFrlZ9>6{%R;=V0VM*g40G8zpRW@6=>=5H;OXk;vd$@?2>`_D8BzcM literal 0 HcmV?d00001 diff --git a/textures/unifieddyes_palette_indigos.png b/textures/unifieddyes_palette_indigos.png new file mode 100644 index 0000000000000000000000000000000000000000..0c6e1baddc8cc2482b475a0a59f6e8a818fb5aeb GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il#-{5V+hCfWQ+a(_cI^<@6yiv pS^9sr;hKUAtAtZILPbg$7-sr$K5y)^C<3Zx@O1TaS?83{1OURm88`p{ literal 0 HcmV?d00001 diff --git a/textures/unifieddyes_palette_limes.png b/textures/unifieddyes_palette_limes.png index b104c6e2e9f0165c338583aeceb2fbb14a63bb7c..351931e91db5a2aacad12b03c55a63cc586c1f93 100644 GIT binary patch delta 73 zcmYd}ognGL#K6FilT;xBq*Odz978y+GfFZ%`_K6P|NaXMjt>tyIM_SRTUr15n%4E} c*S@|M-NMb+Bd^*g3RKVF>FVdQ&MBb@0Hu{0>i_@% delta 79 zcmaz|o*?PP#=yYvnBl!MkkayWaSY+Op8V%O5V*0qwf$$8m5_NOE3s@{PC~+tWk(C% g{xW4dX1<7r;a?qZla=JT*Faqip00i_>zopr0I@F~&Hw-a diff --git a/textures/unifieddyes_palette_magentas.png b/textures/unifieddyes_palette_magentas.png index 16abf001d70352d1979837f6c6454b35124b9eb4..e1cabe77a5138fc8bec3eb866628bd650d9c54ab 100644 GIT binary patch delta 71 zcmYd|o*?PO#K6FilT;xBq?9~e978y+C;!?1-@aM-uw(n*Z+(2)uft<6@2dKHtM~e% a^$hdp@=p8Y-1`lvn!(f6&t;ucLK6VPsU0l< delta 81 zcmaz}ognGM#=yYvnBl!MkkavVaSY+O&Zx+6??2;zAYfo*U^wWopTXY2kzr-SN``A% jR~fEfyTR~A^fkkG2fpcFzS}nf^)Yz5`njxgN@xNAfbt#; diff --git a/textures/unifieddyes_palette_malachites.png b/textures/unifieddyes_palette_malachites.png new file mode 100644 index 0000000000000000000000000000000000000000..ecb944f37f6e3e7c92dce8ef8943a64f1414fcec GIT binary patch literal 91 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!2~38k}5=il#-{5V+hCf; delta 79 zcmaz}o*?PP#=yYvnBl!MkkayWaSY+O&U%nhkU@ciVWYkyXOIKO>xv_WZD;54h8~Px iYHar*t?EEu0i*XV!Mur2o#y~`F?hQAxvX?3)kQw;y5d p{rulJW9@~a70Cj;qM;=W3^U?5pX*lXB>`14c)I$ztaD0e0s!1!8I}M5 literal 0 HcmV?d00001 diff --git a/textures/unifieddyes_palette_skyblues.png b/textures/unifieddyes_palette_skyblues.png deleted file mode 100644 index 59396b19fa29514187a4fc704e97d84e0cc2b5db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99 zcmeAS@N?(olHy`uVBq!ia0vp^96-#-!3HEBGrV^OQd*uajv*Y^lmGnx|G)m28yj2u ye|AY3nKzPB%hsh_NZN6%;O(taw!mZNJPf~Wc$-R=?LGF_RBb)YT=Pgg&ebxsLQ0Hi%0H2?qr diff --git a/textures/unifieddyes_palette_yellows.png b/textures/unifieddyes_palette_yellows.png index 0a458a7e14d366722a50a0ee6c4ba46e24bd4113..044ba997abd272fc436ee308b36be504eba5fd95 100644 GIT binary patch delta 71 zcmYd|o*?PO#K6FilT;xBq?9~e978y+C;$0hZ_nKP_+K+0-?zTiVb|jKE-QWfYisy= aSH^|Mc&91aPdx)v&EV0w&zsB(TjVQy