Pink/brown color translation tweaks

Only perform pink -> light_red and brown -> dark_orange translations if
not using the "colorwallmounted" palette.
This commit is contained in:
Vanessa Ezekowitz 2017-02-06 09:22:10 -05:00
parent e3b7e9d534
commit 4d11406f8d

@ -223,9 +223,6 @@ function unifieddyes.getpaletteidx(color, is_color_fdir)
return return
end end
color = aliases[color] or color
local idx
if is_color_fdir == "wallmounted" then if is_color_fdir == "wallmounted" then
if grayscale_wallmounted[color] then if grayscale_wallmounted[color] then
return (grayscale_wallmounted[color] * 8), 0 return (grayscale_wallmounted[color] * 8), 0
@ -257,16 +254,25 @@ function unifieddyes.getpaletteidx(color, is_color_fdir)
end end
if is_color_fdir == "wallmounted" then if is_color_fdir == "wallmounted" then
if shade == "dark" and color == "orange" then return 48,1 -- brown if color == "brown" then return 48,1
elseif shade == "light" and color == "red" then return 56,7 -- pink elseif color == "pink" then return 56,7
elseif hues_wallmounted[color] and shades_wallmounted[shade] then elseif hues_wallmounted[color] and shades_wallmounted[shade] then
return (shades_wallmounted[shade] * 64 + hues_wallmounted[color] * 8), hues_wallmounted[color] return (shades_wallmounted[shade] * 64 + hues_wallmounted[color] * 8), hues_wallmounted[color]
end end
elseif hues[color] and shades[shade] then else
if is_color_fdir then if color == "brown" then
return (shades[shade] * 32), hues[color] color = "orange"
else shade = "dark"
return (hues[color] * 8 + shades[shade]), hues[color] elseif color == "pink" then
color = "red"
shade = "light"
end
if hues[color] and shades[shade] then
if is_color_fdir then
return (shades[shade] * 32), hues[color]
else
return (hues[color] * 8 + shades[shade]), hues[color]
end
end end
end end
end end
@ -298,10 +304,12 @@ function unifieddyes.on_use(itemstack, player, pointed_thing)
local nodedef = minetest.registered_nodes[node.name] local nodedef = minetest.registered_nodes[node.name]
local playername = player:get_player_name() local playername = player:get_player_name()
-- if the node has an on_punch defined, bail out and call that instead. -- if the node has an on_punch defined, bail out and call that instead, unless "sneak" is pressed.
local onpunch = nodedef.on_punch(pos, node, player, pointed_thing) if not player:get_player_control().sneak then
if onpunch then local onpunch = nodedef.on_punch(pos, node, player, pointed_thing)
return onpunch if onpunch then
return onpunch
end
end end
-- if the target is unknown, has no groups defined, or isn't UD-colorable, just bail out -- if the target is unknown, has no groups defined, or isn't UD-colorable, just bail out