diff options
-rw-r--r-- | unifieddyes/init.lua | 37 | ||||
-rw-r--r-- | unifiedmesecons/init.lua | 8 |
2 files changed, 33 insertions, 12 deletions
diff --git a/unifieddyes/init.lua b/unifieddyes/init.lua index 36007dd..8f6de0f 100644 --- a/unifieddyes/init.lua +++ b/unifieddyes/init.lua @@ -806,8 +806,9 @@ local hps = 0.6 -- horizontal position scale local vps = 1.3 -- vertical position scale local vs = 0.3 -- vertical shift/offset local color_button_size = ";0.75,0.75;" +local color_square_size = ";0.69,0.69;" -function unifieddyes.make_colored_square(hexcolor, colorname, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv) +function unifieddyes.make_colored_square(hexcolor, colorname, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv, explist) local dye = "dye:"..colorname @@ -819,7 +820,8 @@ function unifieddyes.make_colored_square(hexcolor, colorname, showall, creative, end local unavail_overlay = "" - if not showall and not unifieddyes.palette_has_color[nodepalette.."_"..colorname] then + if not showall and not unifieddyes.palette_has_color[nodepalette.."_"..colorname] + or (explist and not explist[colorname]) then if overlay == "" then unavail_overlay = "^unifieddyes_unavailable_overlay.png" else @@ -832,13 +834,22 @@ function unifieddyes.make_colored_square(hexcolor, colorname, showall, creative, selindic = "unifieddyes_white_square.png"..colorize..overlay..unavail_overlay.."]".. "tooltip["..colorname..";"..colorname.."]" end - - local form = "image_button[".. - (hp*hps)..","..(v2*vps+vs).. - color_button_size.. - "unifieddyes_white_square.png"..colorize..overlay..unavail_overlay..";".. - colorname..";]".. - "tooltip["..colorname..";"..colorname.."]" + local form + + if unavail_overlay == "" then + form = "image_button[".. + (hp*hps)..","..(v2*vps+vs).. + color_button_size.. + "unifieddyes_white_square.png"..colorize..overlay..unavail_overlay..";".. + colorname..";]".. + "tooltip["..colorname..";"..colorname.."]" + else + form = "image[".. + (hp*hps)..","..(v2*vps+vs).. + color_square_size.. + "unifieddyes_white_square.png"..colorize..overlay..unavail_overlay.."]".. + "tooltip["..colorname.." (unavailable);"..colorname.."]" + end return form, selindic end @@ -876,6 +887,8 @@ function unifieddyes.show_airbrush_form(player) t[#t+1] = "label[0.5,8.25;(Right-clicked a node not supported by the Airbrush, showing all colors)]" end + local explist = last_right_click.def.explist + for v = 0, 6 do local val = unifieddyes.VALS_EXTENDED[v+1] @@ -902,7 +915,7 @@ function unifieddyes.show_airbrush_form(player) local hexcolor = string.format("%02x", r2)..string.format("%02x", g2)..string.format("%02x", b2) local f - f, selindic = unifieddyes.make_colored_square(hexcolor, val..hue..sat, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv) + f, selindic = unifieddyes.make_colored_square(hexcolor, val..hue..sat, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv, explist) t[#t+1] = f end @@ -935,7 +948,7 @@ function unifieddyes.show_airbrush_form(player) local hexcolor = string.format("%02x", r3)..string.format("%02x", g3)..string.format("%02x", b3) local f - f, selindic = unifieddyes.make_colored_square(hexcolor, val..hue..sat, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv) + f, selindic = unifieddyes.make_colored_square(hexcolor, val..hue..sat, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv, explist) t[#t+1] = f end end @@ -957,7 +970,7 @@ function unifieddyes.show_airbrush_form(player) end local f - f, selindic = unifieddyes.make_colored_square(hexgrey, grey, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv) + f, selindic = unifieddyes.make_colored_square(hexgrey, grey, showall, creative, painting_with, nodepalette, hp, v2, selindic, inv, explist) t[#t+1] = f end diff --git a/unifiedmesecons/init.lua b/unifiedmesecons/init.lua index 7b621a0..de346c3 100644 --- a/unifiedmesecons/init.lua +++ b/unifiedmesecons/init.lua @@ -3,6 +3,11 @@ for _,i in ipairs({"pink","dark_green","brown","black","dark_grey","white"}) do table.insert(hues, i) end +local explist = {} +for _,i in ipairs(hues) do + explist[i] = true +end + local function insulated_wire_get_rules(node) local rules = {{x = 1, y = 0, z = 0}, {x =-1, y = 0, z = 0}} @@ -74,6 +79,7 @@ for _,color in pairs(hues) do palette = "unifieddyes_palette_"..palettecolor.."s.png", ud_color_start = cstart, ud_color_end = cend, + explist = explist, selection_box = { type = "fixed", fixed = { -16/32-0.001, -18/32, -7/32, 16/32+0.001, -12/32, 7/32 } @@ -131,6 +137,7 @@ for _,color in pairs(hues) do palette = "unifieddyes_palette_"..palettecolor.."s.png", ud_color_start = cstart, ud_color_end = cend, + explist = explist, selection_box = { type = "fixed", fixed = { -16/32-0.001, -18/32, -16/32, 5/32, -12/32, 5/32 }, @@ -189,6 +196,7 @@ for _,color in pairs(hues) do palette = "unifieddyes_palette_"..palettecolor.."s.png", ud_color_start = cstart, ud_color_end = cend, + explist = explist, node_box = { type = "fixed", fixed = {{ -16/32-0.001, -17/32, -3/32, 16/32+0.001, -13/32, 3/32 }, |