2016-04-01 20:02:19 -04:00
|
|
|
--[[
|
|
|
|
|
|
|
|
Unified Dyes
|
|
|
|
|
|
|
|
This mod provides an extension to the Minetest 0.4.x dye system
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
Copyright (C) 2012-2013, Vanessa Ezekowitz
|
|
|
|
Email: vanessaezekowitz@gmail.com
|
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License along
|
|
|
|
with this program; if not, write to the Free Software Foundation, Inc.,
|
|
|
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
--]]
|
|
|
|
|
|
|
|
--=====================================================================
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
unifieddyes = {}
|
|
|
|
|
Updated several mods for Minetest 0.4.16
castles modpack, areas, biome_lib, blox, boost_cart, plantlife modpack
caverealms, coloredwood, concrete, currency, farming redo, home decor,
ilights, mesecons, moreores, pipeworks, signs_lib, technic, unified inventory
unified bricks, unified dyes, worldedit, and xban2
2017-06-16 18:12:21 -04:00
|
|
|
local creative_mode = minetest.settings:get_bool("creative_mode")
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
|
2016-04-01 20:02:19 -04:00
|
|
|
-- Boilerplate to support localized strings if intllib mod is installed.
|
|
|
|
local S
|
|
|
|
if minetest.get_modpath("intllib") then
|
|
|
|
S = intllib.Getter()
|
|
|
|
else
|
|
|
|
S = function(s) return s end
|
|
|
|
end
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
-- helper functions for other mods that use this one
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
unifieddyes.HUES = {
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
"red",
|
|
|
|
"orange",
|
|
|
|
"yellow",
|
|
|
|
"lime",
|
|
|
|
"green",
|
|
|
|
"aqua",
|
|
|
|
"cyan",
|
|
|
|
"skyblue",
|
|
|
|
"blue",
|
|
|
|
"violet",
|
|
|
|
"magenta",
|
|
|
|
"redviolet"
|
|
|
|
}
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- the names of the various colors here came from http://www.procato.com/rgb+index/
|
|
|
|
|
|
|
|
unifieddyes.HUES_EXTENDED = {
|
|
|
|
{ "red", 0xff, 0x00, 0x00 },
|
|
|
|
{ "vermilion", 0xff, 0x40, 0x00 },
|
|
|
|
{ "orange", 0xff, 0x80, 0x00 },
|
|
|
|
{ "amber", 0xff, 0xbf, 0x00 },
|
|
|
|
{ "yellow", 0xff, 0xff, 0x00 },
|
|
|
|
{ "lime", 0xbf, 0xff, 0x00 },
|
|
|
|
{ "chartreuse", 0x80, 0xff, 0x00 },
|
|
|
|
{ "harlequin", 0x40, 0xff, 0x00 },
|
|
|
|
{ "green", 0x00, 0xff, 0x00 },
|
|
|
|
{ "malachite", 0x00, 0xff, 0x40 },
|
|
|
|
{ "spring", 0x00, 0xff, 0x80 },
|
|
|
|
{ "turquoise", 0x00, 0xff, 0xbf },
|
|
|
|
{ "cyan", 0x00, 0xff, 0xff },
|
|
|
|
{ "cerulean", 0x00, 0xbf, 0xff },
|
|
|
|
{ "azure", 0x00, 0x80, 0xff },
|
|
|
|
{ "sapphire", 0x00, 0x40, 0xff },
|
|
|
|
{ "blue", 0x00, 0x00, 0xff },
|
|
|
|
{ "indigo", 0x40, 0x00, 0xff },
|
|
|
|
{ "violet", 0x80, 0x00, 0xff },
|
|
|
|
{ "mulberry", 0xbf, 0x00, 0xff },
|
|
|
|
{ "magenta", 0xff, 0x00, 0xff },
|
|
|
|
{ "fuchsia", 0xff, 0x00, 0xbf },
|
|
|
|
{ "rose", 0xff, 0x00, 0x80 },
|
|
|
|
{ "crimson", 0xff, 0x00, 0x40 }
|
|
|
|
}
|
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
unifieddyes.HUES_WALLMOUNTED = {
|
|
|
|
"red",
|
|
|
|
"orange",
|
|
|
|
"yellow",
|
|
|
|
"green",
|
|
|
|
"cyan",
|
|
|
|
"blue",
|
|
|
|
"violet",
|
|
|
|
"magenta"
|
|
|
|
}
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
unifieddyes.SATS = {
|
|
|
|
"",
|
|
|
|
"_s50"
|
|
|
|
}
|
|
|
|
|
|
|
|
unifieddyes.VALS = {
|
|
|
|
"",
|
|
|
|
"medium_",
|
|
|
|
"dark_"
|
|
|
|
}
|
|
|
|
|
|
|
|
unifieddyes.VALS_EXTENDED = {
|
|
|
|
"faint_",
|
|
|
|
"pastel_",
|
|
|
|
"light_",
|
|
|
|
"bright_",
|
|
|
|
"",
|
|
|
|
"medium_",
|
|
|
|
"dark_"
|
|
|
|
}
|
|
|
|
|
|
|
|
unifieddyes.GREYS = {
|
|
|
|
"white",
|
|
|
|
"light_grey",
|
|
|
|
"grey",
|
|
|
|
"dark_grey",
|
|
|
|
"black"
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
}
|
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
unifieddyes.GREYS_EXTENDED = table.copy(unifieddyes.GREYS)
|
|
|
|
|
|
|
|
for i = 1, 14 do
|
|
|
|
if i ~= 0 and i ~= 3 and i ~= 7 and i ~= 11 and i ~= 15 then
|
|
|
|
table.insert(unifieddyes.GREYS_EXTENDED, "grey_"..i)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2017-02-04 20:11:09 -05:00
|
|
|
local default_dyes = {
|
|
|
|
"black",
|
|
|
|
"blue",
|
|
|
|
"brown",
|
|
|
|
"cyan",
|
|
|
|
"dark_green",
|
|
|
|
"dark_grey",
|
|
|
|
"green",
|
|
|
|
"grey",
|
|
|
|
"magenta",
|
|
|
|
"orange",
|
|
|
|
"pink",
|
|
|
|
"red",
|
|
|
|
"violet",
|
|
|
|
"white",
|
|
|
|
"yellow"
|
|
|
|
}
|
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
-- just stubs to keep old mods from crashing when expecting auto-coloring
|
|
|
|
-- or getting back the dye on dig.
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
function unifieddyes.recolor_on_place(foo)
|
|
|
|
end
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
function unifieddyes.after_dig_node(foo)
|
|
|
|
end
|
|
|
|
|
|
|
|
-- This helper function creates a colored itemstack
|
|
|
|
|
|
|
|
function unifieddyes.make_colored_itemstack(item, palette, color)
|
|
|
|
local paletteidx = unifieddyes.getpaletteidx(color, palette)
|
|
|
|
local stack = ItemStack(item)
|
|
|
|
stack:get_meta():set_int("palette_index", paletteidx)
|
|
|
|
return stack:to_string()
|
|
|
|
end
|
|
|
|
|
|
|
|
-- if your node was once 89-color and uses an LBM to convert to the 256-color palette,
|
|
|
|
-- call this in that node def's on_construct:
|
|
|
|
|
|
|
|
function unifieddyes.on_construct(pos)
|
|
|
|
local meta = minetest.get_meta(pos)
|
|
|
|
meta:set_string("palette", "ext")
|
|
|
|
end
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
-- 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 color = ""
|
|
|
|
if val then
|
|
|
|
if craft.palette ~= "extended" then
|
|
|
|
color = val..hue..sat
|
|
|
|
else
|
|
|
|
color = val..hue[1]..sat
|
2017-03-18 06:53:09 -04:00
|
|
|
end
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
else
|
|
|
|
color = hue -- if val is nil, then it's grey.
|
2017-03-18 06:53:09 -04:00
|
|
|
end
|
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
local dye = "dye:"..color
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
local recipe = minetest.serialize(craft.recipe)
|
|
|
|
recipe = string.gsub(recipe, "MAIN_DYE", dye)
|
|
|
|
recipe = string.gsub(recipe, "NEUTRAL_NODE", craft.neutral_node)
|
|
|
|
local newrecipe = minetest.deserialize(recipe)
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
local output = craft.output
|
|
|
|
if craft.output_prefix then
|
|
|
|
if craft.palette ~= true then
|
|
|
|
output = craft.output_prefix..color..craft.output_suffix
|
|
|
|
else
|
|
|
|
if hue == "white" or hue == "black" or string.find(hue, "grey") then
|
|
|
|
output = craft.output_prefix.."grey"..craft.output_suffix
|
|
|
|
elseif hue == "pink" then
|
|
|
|
dye = "dye:light_red"
|
|
|
|
output = craft.output_prefix.."red"..craft.output_suffix
|
|
|
|
else
|
|
|
|
output = craft.output_prefix..hue..craft.output_suffix
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
local colored_itemstack =
|
|
|
|
unifieddyes.make_colored_itemstack(output, craft.palette, dye)
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
minetest.register_craft({
|
|
|
|
output = colored_itemstack,
|
|
|
|
type = craft.type,
|
|
|
|
recipe = newrecipe
|
|
|
|
})
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
end
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
function unifieddyes.register_color_craft(craft)
|
|
|
|
local hues_table = unifieddyes.HUES
|
|
|
|
local sats_table = unifieddyes.SATS
|
|
|
|
local vals_table = unifieddyes.VALS
|
|
|
|
local greys_table = unifieddyes.GREYS
|
|
|
|
|
|
|
|
if craft.palette == "wallmounted" then
|
|
|
|
hues_table = unifieddyes.HUES_WALLMOUNTED
|
|
|
|
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
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
for _, hue in ipairs(hues_table) do
|
|
|
|
for _, val in ipairs(vals_table) do
|
|
|
|
for _, sat in ipairs(sats_table) do
|
2017-03-18 06:53:09 -04:00
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
if sat == "_s50" and val ~= "" and val ~= "medium_" and val ~= "dark_" then break end
|
|
|
|
register_c(craft, hue, sat, val)
|
2017-03-18 06:53:09 -04:00
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
for _, grey in ipairs(greys_table) do
|
|
|
|
register_c(craft, grey)
|
|
|
|
end
|
|
|
|
|
|
|
|
register_c(craft, "pink")
|
|
|
|
|
|
|
|
end
|
2017-03-18 06:53:09 -04:00
|
|
|
|
|
|
|
-- code borrowed from homedecor
|
2017-02-17 23:14:21 -05:00
|
|
|
-- call this function to reset the rotation of a "wallmounted" object on place
|
|
|
|
|
|
|
|
function unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
|
|
|
|
local node = minetest.get_node(pos)
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
local colorbits = node.param2 - (node.param2 % 8)
|
|
|
|
|
Updated several mods for Minetest 0.4.16
castles modpack, areas, biome_lib, blox, boost_cart, plantlife modpack
caverealms, coloredwood, concrete, currency, farming redo, home decor,
ilights, mesecons, moreores, pipeworks, signs_lib, technic, unified inventory
unified bricks, unified dyes, worldedit, and xban2
2017-06-16 18:12:21 -04:00
|
|
|
local yaw = placer:get_look_horizontal()
|
|
|
|
local dir = minetest.yaw_to_dir(yaw) -- -1.5)
|
2017-02-17 23:14:21 -05:00
|
|
|
local pitch = placer:get_look_vertical()
|
|
|
|
|
|
|
|
local fdir = minetest.dir_to_wallmounted(dir)
|
|
|
|
|
|
|
|
if pitch < -(math.pi/8) then
|
|
|
|
fdir = 0
|
|
|
|
elseif pitch > math.pi/8 then
|
|
|
|
fdir = 1
|
|
|
|
end
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
minetest.swap_node(pos, { name = node.name, param2 = fdir+colorbits })
|
2017-02-17 23:14:21 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
-- use this when you have a "wallmounted" node that should never be oriented
|
2017-02-18 13:21:38 -05:00
|
|
|
-- to floor or ceiling...
|
2017-02-17 23:14:21 -05:00
|
|
|
|
|
|
|
function unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
|
|
|
|
local node = minetest.get_node(pos)
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
local colorbits = node.param2 - (node.param2 % 8)
|
Updated several mods for Minetest 0.4.16
castles modpack, areas, biome_lib, blox, boost_cart, plantlife modpack
caverealms, coloredwood, concrete, currency, farming redo, home decor,
ilights, mesecons, moreores, pipeworks, signs_lib, technic, unified inventory
unified bricks, unified dyes, worldedit, and xban2
2017-06-16 18:12:21 -04:00
|
|
|
local yaw = placer:get_look_horizontal()
|
|
|
|
local dir = minetest.yaw_to_dir(yaw+1.5)
|
2017-02-17 23:14:21 -05:00
|
|
|
local fdir = minetest.dir_to_wallmounted(dir)
|
update castles modpack, blox, bobblocks, coloredwood, technic,
gloopblocks, homedecor, ilights, led marquee, plasticbox, solidcolor,
stained_glass, unified bricks, and unified dyes
In most of these, the update is to shift over to the new "old" coloring
paradigm in Unified Dyes. See its forum thread for details.
2018-08-22 22:28:28 -04:00
|
|
|
|
|
|
|
minetest.swap_node(pos, { name = node.name, param2 = fdir+colorbits })
|
2017-02-17 23:14:21 -05:00
|
|
|
end
|
|
|
|
|
2017-02-18 13:21:38 -05:00
|
|
|
-- ... and use this one to force that kind of node off of floor/ceiling
|
|
|
|
-- orientation after the screwdriver rotates it.
|
|
|
|
|
|
|
|
function unifieddyes.fix_after_screwdriver_nsew(pos, node, user, mode, new_param2)
|
|
|
|
local new_fdir = new_param2 % 8
|
|
|
|
local color = new_param2 - new_fdir
|
|
|
|
if new_fdir < 2 then
|
|
|
|
new_fdir = 2
|
|
|
|
minetest.swap_node(pos, { name = node.name, param2 = new_fdir + color })
|
|
|
|
return true
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
function unifieddyes.select_node(pointed_thing)
|
|
|
|
local pos = pointed_thing.under
|
|
|
|
local node = minetest.get_node_or_nil(pos)
|
|
|
|
local def = node and minetest.registered_nodes[node.name]
|
|
|
|
|
|
|
|
if not def or not def.buildable_to then
|
|
|
|
pos = pointed_thing.above
|
|
|
|
node = minetest.get_node_or_nil(pos)
|
|
|
|
def = node and minetest.registered_nodes[node.name]
|
|
|
|
end
|
|
|
|
return def and pos, def
|
|
|
|
end
|
|
|
|
|
|
|
|
function unifieddyes.is_buildable_to(placer_name, ...)
|
|
|
|
for _, pos in ipairs({...}) do
|
|
|
|
local node = minetest.get_node_or_nil(pos)
|
|
|
|
local def = node and minetest.registered_nodes[node.name]
|
|
|
|
if not (def and def.buildable_to) or minetest.is_protected(pos, placer_name) then
|
|
|
|
return false
|
|
|
|
end
|
|
|
|
end
|
|
|
|
return true
|
|
|
|
end
|
|
|
|
|
|
|
|
function unifieddyes.get_hsv(name) -- expects a node/item name
|
|
|
|
local hue = ""
|
|
|
|
local a,b
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
for _, i in ipairs(unifieddyes.HUES) do
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
a,b = string.find(name, "_"..i)
|
|
|
|
if a and not ( string.find(name, "_redviolet") and i == "red" ) then
|
|
|
|
hue = i
|
|
|
|
break
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
if string.find(name, "_light_grey") then hue = "light_grey"
|
|
|
|
elseif string.find(name, "_lightgrey") then hue = "light_grey"
|
|
|
|
elseif string.find(name, "_dark_grey") then hue = "dark_grey"
|
|
|
|
elseif string.find(name, "_darkgrey") then hue = "dark_grey"
|
|
|
|
elseif string.find(name, "_grey") then hue = "grey"
|
|
|
|
elseif string.find(name, "_white") then hue = "white"
|
|
|
|
elseif string.find(name, "_black") then hue = "black"
|
|
|
|
end
|
|
|
|
|
|
|
|
local sat = ""
|
|
|
|
if string.find(name, "_s50") then sat = "_s50" end
|
|
|
|
|
|
|
|
local val = ""
|
|
|
|
if string.find(name, "dark_") then val = "dark_" end
|
|
|
|
if string.find(name, "medium_") then val = "medium_" end
|
|
|
|
if string.find(name, "light_") then val = "light_" end
|
|
|
|
|
|
|
|
return hue, sat, val
|
|
|
|
end
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- code partially borrowed from cheapie's plasticbox mod
|
|
|
|
|
|
|
|
-- in the function below, color is just a color string, while
|
|
|
|
-- palette_type can be:
|
|
|
|
--
|
|
|
|
-- false/nil = standard 89 color palette
|
|
|
|
-- true = 89 color palette split into pieces for colorfacedir
|
|
|
|
-- "wallmounted" = 32-color abridged palette
|
|
|
|
-- "extended" = 256 color palette
|
|
|
|
|
|
|
|
function unifieddyes.getpaletteidx(color, palette_type)
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
|
|
|
|
local origcolor = color
|
|
|
|
local aliases = {
|
|
|
|
["pink"] = "light_red",
|
2017-06-23 14:44:07 -04:00
|
|
|
["brown"] = "medium_orange",
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
local grayscale = {
|
|
|
|
["white"] = 1,
|
|
|
|
["light_grey"] = 2,
|
|
|
|
["grey"] = 3,
|
|
|
|
["dark_grey"] = 4,
|
|
|
|
["black"] = 5,
|
|
|
|
}
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local grayscale_extended = {
|
|
|
|
["white"] = 0,
|
|
|
|
["grey_14"] = 1,
|
|
|
|
["grey_13"] = 2,
|
|
|
|
["grey_12"] = 3,
|
|
|
|
["light_grey"] = 3,
|
|
|
|
["grey_11"] = 4,
|
|
|
|
["grey_10"] = 5,
|
|
|
|
["grey_9"] = 6,
|
|
|
|
["grey_8"] = 7,
|
|
|
|
["grey"] = 7,
|
|
|
|
["grey_7"] = 8,
|
|
|
|
["grey_6"] = 9,
|
|
|
|
["grey_5"] = 10,
|
|
|
|
["grey_4"] = 11,
|
|
|
|
["dark_grey"] = 11,
|
|
|
|
["grey_3"] = 12,
|
|
|
|
["grey_2"] = 13,
|
|
|
|
["grey_1"] = 14,
|
|
|
|
["black"] = 15,
|
|
|
|
}
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
local grayscale_wallmounted = {
|
|
|
|
["white"] = 0,
|
|
|
|
["light_grey"] = 1,
|
|
|
|
["grey"] = 2,
|
|
|
|
["dark_grey"] = 3,
|
|
|
|
["black"] = 4,
|
|
|
|
}
|
|
|
|
|
|
|
|
local hues = {
|
|
|
|
["red"] = 1,
|
|
|
|
["orange"] = 2,
|
|
|
|
["yellow"] = 3,
|
|
|
|
["lime"] = 4,
|
|
|
|
["green"] = 5,
|
|
|
|
["aqua"] = 6,
|
|
|
|
["cyan"] = 7,
|
|
|
|
["skyblue"] = 8,
|
|
|
|
["blue"] = 9,
|
|
|
|
["violet"] = 10,
|
|
|
|
["magenta"] = 11,
|
|
|
|
["redviolet"] = 12,
|
|
|
|
}
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local hues_extended = {
|
|
|
|
["red"] = 0,
|
|
|
|
["vermilion"] = 1,
|
|
|
|
["orange"] = 2,
|
|
|
|
["amber"] = 3,
|
|
|
|
["yellow"] = 4,
|
|
|
|
["lime"] = 5,
|
|
|
|
["chartreuse"] = 6,
|
|
|
|
["harlequin"] = 7,
|
|
|
|
["green"] = 8,
|
|
|
|
["malachite"] = 9,
|
|
|
|
["spring"] = 10,
|
|
|
|
["turquoise"] = 11,
|
|
|
|
["cyan"] = 12,
|
|
|
|
["cerulean"] = 13,
|
|
|
|
["azure"] = 14,
|
|
|
|
["sapphire"] = 15,
|
|
|
|
["blue"] = 16,
|
|
|
|
["indigo"] = 17,
|
|
|
|
["violet"] = 18,
|
|
|
|
["mulberry"] = 19,
|
|
|
|
["magenta"] = 20,
|
|
|
|
["fuchsia"] = 21,
|
|
|
|
["rose"] = 22,
|
|
|
|
["crimson"] = 23,
|
|
|
|
}
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
local hues_wallmounted = {
|
|
|
|
["red"] = 0,
|
|
|
|
["orange"] = 1,
|
|
|
|
["yellow"] = 2,
|
|
|
|
["green"] = 3,
|
|
|
|
["cyan"] = 4,
|
|
|
|
["blue"] = 5,
|
|
|
|
["violet"] = 6,
|
|
|
|
["magenta"] = 7
|
|
|
|
}
|
|
|
|
|
|
|
|
local shades = {
|
|
|
|
[""] = 1,
|
|
|
|
["s50"] = 2,
|
|
|
|
["light"] = 3,
|
|
|
|
["medium"] = 4,
|
|
|
|
["mediums50"] = 5,
|
|
|
|
["dark"] = 6,
|
|
|
|
["darks50"] = 7,
|
|
|
|
}
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local shades_extended = {
|
|
|
|
["faint"] = 0,
|
|
|
|
["pastel"] = 1,
|
|
|
|
["light"] = 2,
|
|
|
|
["bright"] = 3,
|
|
|
|
[""] = 4,
|
|
|
|
["s50"] = 5,
|
|
|
|
["medium"] = 6,
|
|
|
|
["mediums50"] = 7,
|
|
|
|
["dark"] = 8,
|
|
|
|
["darks50"] = 9
|
|
|
|
}
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
local shades_wallmounted = {
|
|
|
|
[""] = 1,
|
|
|
|
["medium"] = 2,
|
|
|
|
["dark"] = 3
|
|
|
|
}
|
|
|
|
|
|
|
|
if string.sub(color,1,4) == "dye:" then
|
|
|
|
color = string.sub(color,5,-1)
|
|
|
|
elseif string.sub(color,1,12) == "unifieddyes:" then
|
|
|
|
color = string.sub(color,13,-1)
|
|
|
|
else
|
|
|
|
return
|
|
|
|
end
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
if palette_type == "wallmounted" then
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
if grayscale_wallmounted[color] then
|
|
|
|
return (grayscale_wallmounted[color] * 8), 0
|
|
|
|
end
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
elseif palette_type == true then
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
if grayscale[color] then
|
|
|
|
return (grayscale[color] * 32), 0
|
|
|
|
end
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
elseif palette_type == "extended" then
|
|
|
|
if grayscale_extended[color] then
|
|
|
|
return grayscale_extended[color]+240, 0
|
|
|
|
end
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
else
|
|
|
|
if grayscale[color] then
|
|
|
|
return grayscale[color], 0
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local shade = "" -- assume full
|
|
|
|
if string.sub(color,1,6) == "faint_" then
|
|
|
|
shade = "faint"
|
|
|
|
color = string.sub(color,7,-1)
|
|
|
|
elseif string.sub(color,1,7) == "pastel_" then
|
|
|
|
shade = "pastel"
|
|
|
|
color = string.sub(color,8,-1)
|
|
|
|
elseif string.sub(color,1,6) == "light_" then
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
shade = "light"
|
|
|
|
color = string.sub(color,7,-1)
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
elseif string.sub(color,1,7) == "bright_" then
|
|
|
|
shade = "bright"
|
|
|
|
color = string.sub(color,8,-1)
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
elseif string.sub(color,1,7) == "medium_" then
|
|
|
|
shade = "medium"
|
|
|
|
color = string.sub(color,8,-1)
|
|
|
|
elseif string.sub(color,1,5) == "dark_" then
|
|
|
|
shade = "dark"
|
|
|
|
color = string.sub(color,6,-1)
|
|
|
|
end
|
|
|
|
if string.sub(color,-4,-1) == "_s50" then
|
|
|
|
shade = shade.."s50"
|
|
|
|
color = string.sub(color,1,-5)
|
|
|
|
end
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
if palette_type == "wallmounted" then
|
2017-02-06 10:55:58 -05:00
|
|
|
if color == "brown" then return 48,1
|
|
|
|
elseif color == "pink" then return 56,7
|
|
|
|
elseif color == "blue" and shade == "light" then return 40,5
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
elseif hues_wallmounted[color] and shades_wallmounted[shade] then
|
|
|
|
return (shades_wallmounted[shade] * 64 + hues_wallmounted[color] * 8), hues_wallmounted[color]
|
|
|
|
end
|
2017-02-06 10:55:58 -05:00
|
|
|
else
|
|
|
|
if color == "brown" then
|
|
|
|
color = "orange"
|
2017-06-23 14:44:07 -04:00
|
|
|
shade = "medium"
|
2017-02-06 10:55:58 -05:00
|
|
|
elseif color == "pink" then
|
|
|
|
color = "red"
|
|
|
|
shade = "light"
|
|
|
|
end
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
if palette_type == true then -- it's colorfacedir
|
|
|
|
if hues[color] and shades[shade] then
|
2017-02-06 10:55:58 -05:00
|
|
|
return (shades[shade] * 32), hues[color]
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
end
|
|
|
|
elseif palette_type == "extended" then
|
|
|
|
if hues_extended[color] and shades_extended[shade] then
|
|
|
|
return (hues_extended[color] + shades_extended[shade]*24), hues_extended[color]
|
|
|
|
end
|
|
|
|
else -- it's the 89-color palette
|
|
|
|
|
|
|
|
-- If using this palette, translate new color names back to old.
|
|
|
|
|
|
|
|
if shade == "" then
|
|
|
|
if color == "spring" then
|
|
|
|
color = "aqua"
|
|
|
|
elseif color == "azure" then
|
|
|
|
color = "skyblue"
|
|
|
|
elseif color == "rose" then
|
|
|
|
color = "redviolet"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
if hues[color] and shades[shade] then
|
2017-02-06 10:55:58 -05:00
|
|
|
return (hues[color] * 8 + shades[shade]), hues[color]
|
|
|
|
end
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- build a table to convert from classic/89-color palette to extended palette
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- the first five entries are for the old greyscale - white, light, grey, dark, black
|
|
|
|
unifieddyes.convert_classic_palette = {
|
|
|
|
240,
|
|
|
|
244,
|
|
|
|
247,
|
|
|
|
251,
|
|
|
|
253
|
|
|
|
}
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
for hue = 0, 11 do
|
|
|
|
-- light
|
|
|
|
local paletteidx = unifieddyes.getpaletteidx("dye:light_"..unifieddyes.HUES[hue+1], false)
|
|
|
|
unifieddyes.convert_classic_palette[paletteidx] = hue*2 + 48
|
|
|
|
for sat = 0, 1 do
|
|
|
|
for val = 0, 2 do
|
|
|
|
-- all other shades
|
|
|
|
local paletteidx = unifieddyes.getpaletteidx("dye:"..unifieddyes.VALS[val+1]..unifieddyes.HUES[hue+1]..unifieddyes.SATS[sat+1], false)
|
|
|
|
unifieddyes.convert_classic_palette[paletteidx] = hue*2 + sat*24 + (val*48+96)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- Generate all dyes that are not part of the default minetest_game dyes mod
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
for _, h in ipairs(unifieddyes.HUES_EXTENDED) do
|
|
|
|
local hue = h[1]
|
|
|
|
local r = h[2]
|
|
|
|
local g = h[3]
|
|
|
|
local b = h[4]
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
for v = 0, 6 do
|
|
|
|
local val = unifieddyes.VALS_EXTENDED[v+1]
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local factor = 40
|
|
|
|
if v > 3 then factor = 75 end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local r2 = math.max(math.min(r + (4-v)*factor, 255), 0)
|
|
|
|
local g2 = math.max(math.min(g + (4-v)*factor, 255), 0)
|
|
|
|
local b2 = math.max(math.min(b + (4-v)*factor, 255), 0)
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- full-sat color
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local desc = hue:gsub("%a", string.upper, 1).." Dye"
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
if val ~= "" then
|
|
|
|
desc = val:sub(1, -2):gsub("%a", string.upper, 1) .." "..desc
|
|
|
|
end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local color = string.format("%02x", r2)..string.format("%02x", g2)..string.format("%02x", b2)
|
|
|
|
if minetest.registered_items["dye:"..val..hue] then
|
|
|
|
minetest.override_item("dye:"..val..hue, {
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#"..color..":200",
|
|
|
|
})
|
|
|
|
else
|
2017-06-23 14:44:07 -04:00
|
|
|
if (val..hue) ~= "medium_orange"
|
|
|
|
and (val..hue) ~= "light_red" then
|
|
|
|
minetest.register_craftitem(":dye:"..val..hue, {
|
|
|
|
description = S(desc),
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#"..color..":200",
|
|
|
|
groups = { dye=1, not_in_creative_inventory=1 },
|
|
|
|
})
|
|
|
|
end
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
end
|
|
|
|
minetest.register_alias("unifieddyes:"..val..hue, "dye:"..val..hue)
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
if v > 3 then -- also register the low-sat version
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local pr = 0.299
|
|
|
|
local pg = 0.587
|
|
|
|
local pb = 0.114
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local p = math.sqrt(r2*r2*pr + g2*g2*pg + b2*b2*pb)
|
|
|
|
local r3 = math.floor(p+(r2-p)*0.5)
|
|
|
|
local g3 = math.floor(p+(g2-p)*0.5)
|
|
|
|
local b3 = math.floor(p+(b2-p)*0.5)
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local color = string.format("%02x", r3)..string.format("%02x", g3)..string.format("%02x", b3)
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.register_craftitem(":dye:"..val..hue.."_s50", {
|
|
|
|
description = S(desc.." (low saturation)"),
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#"..color..":200",
|
|
|
|
groups = { dye=1, not_in_creative_inventory=1 },
|
|
|
|
})
|
|
|
|
minetest.register_alias("unifieddyes:"..val..hue.."_s50", "dye:"..val..hue.."_s50")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- register the greyscales too :P
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
for y = 1, 14 do -- colors 0 and 15 are black and white, default dyes
|
2016-04-01 20:02:19 -04:00
|
|
|
|
2017-02-26 19:03:38 -05:00
|
|
|
if y ~= 4 and y ~= 8 and y~= 11 then -- don't register the three greys, they're done separately.
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local rgb = string.format("%02x", y*17)..string.format("%02x", y*17)..string.format("%02x", y*17)
|
|
|
|
local name = "grey_"..y
|
|
|
|
local desc = "Grey Dye #"..y
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.register_craftitem(":dye:"..name, {
|
|
|
|
description = S(desc),
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#"..rgb..":200",
|
|
|
|
groups = { dye=1, not_in_creative_inventory=1 },
|
|
|
|
})
|
|
|
|
minetest.register_alias("unifieddyes:"..name, "dye:"..name)
|
|
|
|
end
|
|
|
|
end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.override_item("dye:grey", {
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#888888:200",
|
2016-04-01 20:02:19 -04:00
|
|
|
})
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.override_item("dye:dark_grey", {
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#444444:200",
|
2016-04-01 20:02:19 -04:00
|
|
|
})
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.register_craftitem(":dye:light_grey", {
|
|
|
|
description = S("Light grey Dye"),
|
|
|
|
inventory_image = "unifieddyes_dye.png^[colorize:#cccccc:200",
|
|
|
|
groups = { dye=1, not_in_creative_inventory=1 },
|
|
|
|
})
|
2016-04-01 20:02:19 -04:00
|
|
|
|
2017-02-26 22:35:37 -05:00
|
|
|
unifieddyes.base_color_crafts = {
|
2017-02-26 19:03:38 -05:00
|
|
|
{ "red", "flowers:rose", nil, nil, nil, nil, 4 },
|
|
|
|
{ "vermilion", "dye:red", "dye:orange", nil, nil, nil, 3 },
|
|
|
|
{ "orange", "flowers:tulip", nil, nil, nil, nil, 4 },
|
|
|
|
{ "orange", "dye:red", "dye:yellow", nil, nil, nil, 2 },
|
|
|
|
{ "amber", "dye:orange", "dye:yellow", nil, nil, nil, 2 },
|
|
|
|
{ "yellow", "flowers:dandelion_yellow", nil, nil, nil, nil, 4 },
|
|
|
|
{ "lime", "dye:yellow", "dye:chartreuse", nil, nil, nil, 2 },
|
|
|
|
{ "lime", "dye:yellow", "dye:yellow", "dye:green", nil, nil, 3 },
|
|
|
|
{ "chartreuse", "dye:yellow", "dye:green", nil, nil, nil, 2 },
|
|
|
|
{ "harlequin", "dye:chartreuse", "dye:green", nil, nil, nil, 2 },
|
|
|
|
{ "harlequin", "dye:yellow", "dye:green", "dye:green", nil, nil, 3 },
|
|
|
|
{ "green", "default:cactus", nil, nil, nil, nil, 4 },
|
|
|
|
{ "green", "dye:yellow", "dye:blue", nil, nil, nil, 2 },
|
|
|
|
{ "malachite", "dye:green", "dye:spring", nil, nil, nil, 2 },
|
|
|
|
{ "malachite", "dye:green", "dye:green", "dye:cyan", nil, nil, 3 },
|
|
|
|
{ "malachite", "dye:green", "dye:green", "dye:green", "dye:blue", nil, 4 },
|
|
|
|
{ "spring", "dye:green", "dye:cyan", nil, nil, nil, 2 },
|
|
|
|
{ "spring", "dye:green", "dye:green", "dye:blue", nil, nil, 3 },
|
|
|
|
{ "turquoise", "dye:spring", "dye:cyan", nil, nil, nil, 2 },
|
|
|
|
{ "turquoise", "dye:green", "dye:cyan", "dye:cyan", nil, nil, 3 },
|
|
|
|
{ "turquoise", "dye:green", "dye:green", "dye:green", "dye:blue", "dye:blue", 5 },
|
|
|
|
{ "cyan", "dye:green", "dye:blue", nil, nil, nil, 2 },
|
|
|
|
{ "cerulean", "dye:cyan", "dye:azure", nil, nil, nil, 2 },
|
|
|
|
{ "cerulean", "dye:cyan", "dye:cyan", "dye:blue", nil, nil, 3 },
|
|
|
|
{ "cerulean", "dye:green", "dye:green", "dye:blue", "dye:blue", "dye:blue", 5 },
|
|
|
|
{ "azure", "dye:cyan", "dye:blue", nil, nil, nil, 2 },
|
|
|
|
{ "azure", "dye:green", "dye:blue", "dye:blue", nil, nil, 3 },
|
|
|
|
{ "sapphire", "dye:azure", "dye:blue", nil, nil, nil, 2 },
|
|
|
|
{ "sapphire", "dye:cyan", "dye:blue", "dye:blue", nil, nil, 3 },
|
|
|
|
{ "sapphire", "dye:green", "dye:blue", "dye:blue", "dye:blue", nil, 4 },
|
|
|
|
{ "blue", "flowers:geranium", nil, nil, nil, nil, 4 },
|
|
|
|
{ "indigo", "dye:blue", "dye:violet", nil, nil, nil, 2 },
|
|
|
|
{ "violet", "flowers:viola", nil, nil, nil, nil, 4 },
|
|
|
|
{ "violet", "dye:blue", "dye:magenta", nil, nil, nil, 2 },
|
|
|
|
{ "mulberry", "dye:violet", "dye:magenta", nil, nil, nil, 2 },
|
|
|
|
{ "mulberry", "dye:violet", "dye:blue", "dye:red", nil, nil, 3 },
|
|
|
|
{ "magenta", "dye:blue", "dye:red", nil, nil, nil, 2 },
|
|
|
|
{ "fuchsia", "dye:magenta", "dye:rose", nil, nil, nil, 2 },
|
|
|
|
{ "fuchsia", "dye:blue", "dye:red", "dye:rose", nil, nil, 3 },
|
|
|
|
{ "fuchsia", "dye:red", "dye:violet", nil, nil, nil, 2 },
|
|
|
|
{ "rose", "dye:magenta", "dye:red", nil, nil, nil, 2 },
|
|
|
|
{ "rose", "dye:red", "dye:red", "dye:blue", nil, nil, 3 },
|
|
|
|
{ "crimson", "dye:rose", "dye:red", nil, nil, nil, 2 },
|
|
|
|
{ "crimson", "dye:magenta", "dye:red", "dye:red", nil, nil, 3 },
|
|
|
|
{ "crimson", "dye:red", "dye:red", "dye:red", "dye:blue", nil, 4 },
|
|
|
|
|
|
|
|
{ "black", "default:coal_lump", nil, nil, nil, nil, 4 },
|
|
|
|
{ "white", "flowers:dandelion_white", nil, nil, nil, nil, 4 },
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
}
|
2016-04-01 20:02:19 -04:00
|
|
|
|
2017-02-26 22:35:37 -05:00
|
|
|
unifieddyes.shade_crafts = {
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
{ "faint_", "", "dye:white", "dye:white", "dye:white", 4 },
|
|
|
|
{ "pastel_", "", "dye:white", "dye:white", nil, 3 },
|
|
|
|
{ "light_", "", "dye:white", nil, nil, 2 },
|
|
|
|
{ "bright_", "", "color", "dye:white", nil, 3 },
|
|
|
|
{ "", "_s50", "dye:light_grey", nil, nil, 2 },
|
|
|
|
{ "", "_s50", "dye:black", "dye:white", "dye:white", 3 },
|
|
|
|
{ "medium_", "", "dye:black", nil, nil, 2 },
|
|
|
|
{ "medium_", "_s50", "dye:grey", nil, nil, 2 },
|
|
|
|
{ "medium_", "_s50", "dye:black", "dye:white", nil, 3 },
|
|
|
|
{ "dark_", "", "dye:black", "dye:black", nil, 3 },
|
|
|
|
{ "dark_", "_s50", "dye:dark_grey", nil, nil, 2 },
|
|
|
|
{ "dark_", "_s50", "dye:black", "dye:black", "dye:white", 4 },
|
|
|
|
}
|
2016-04-01 20:02:19 -04:00
|
|
|
|
2017-02-26 22:35:37 -05:00
|
|
|
for _,i in ipairs(unifieddyes.base_color_crafts) do
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local color = i[1]
|
2017-02-26 19:03:38 -05:00
|
|
|
local yield = i[7]
|
2016-04-01 20:02:19 -04:00
|
|
|
|
|
|
|
minetest.register_craft( {
|
|
|
|
type = "shapeless",
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
output = "dye:"..color.." "..yield,
|
2016-04-01 20:02:19 -04:00
|
|
|
recipe = {
|
2017-02-26 19:03:38 -05:00
|
|
|
i[2],
|
|
|
|
i[3],
|
|
|
|
i[4],
|
|
|
|
i[5],
|
|
|
|
i[6],
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
},
|
2016-04-01 20:02:19 -04:00
|
|
|
})
|
|
|
|
|
2017-02-26 22:35:37 -05:00
|
|
|
for _,j in ipairs(unifieddyes.shade_crafts) do
|
2017-02-26 19:03:38 -05:00
|
|
|
local firstdye = j[3]
|
|
|
|
if firstdye == "color" then firstdye = "dye:"..color end
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
|
2017-06-23 14:44:07 -04:00
|
|
|
-- ignore black, white, anything containing the word "grey"
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
if color ~= "black" and color ~= "white" and not string.find(color, "grey") then
|
|
|
|
|
|
|
|
minetest.register_craft( {
|
|
|
|
type = "shapeless",
|
2017-02-26 19:03:38 -05:00
|
|
|
output = "dye:"..j[1]..color..j[2].." "..yield,
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
recipe = {
|
|
|
|
"dye:"..color,
|
2017-02-26 19:03:38 -05:00
|
|
|
firstdye,
|
|
|
|
j[4],
|
|
|
|
j[5]
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
},
|
|
|
|
})
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
2017-06-23 14:44:07 -04:00
|
|
|
-- greys
|
|
|
|
|
2017-02-26 22:35:37 -05:00
|
|
|
unifieddyes.greymixes = {
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
{ 1, "dye:black", "dye:black", "dye:black", "dye:dark_grey", 4 },
|
|
|
|
{ 2, "dye:black", "dye:black", "dye:dark_grey", nil, 3 },
|
|
|
|
{ 3, "dye:black", "dye:dark_grey", nil, nil, 2 },
|
|
|
|
{ 4, "dye:white", "dye:black", "dye:black", nil, 3 },
|
|
|
|
{ 5, "dye:dark_grey", "dye:dark_grey", "dye:grey", nil, 3 },
|
|
|
|
{ 6, "dye:dark_grey", "dye:grey", nil, nil, 2 },
|
|
|
|
{ 7, "dye:dark_grey", "dye:grey", "dye:grey", nil, 3 },
|
|
|
|
{ 8, "dye:white", "dye:black", nil, nil, 2 },
|
|
|
|
{ 9, "dye:grey", "dye:grey", "dye:light_grey", nil, 3 },
|
|
|
|
{ 10, "dye:grey", "dye:light_grey", "dye:light_grey", nil, 3 },
|
|
|
|
{ 11, "dye:white", "dye:white", "dye:black", nil, 3 },
|
|
|
|
{ 12, "dye:light_grey", "dye:light_grey", "dye:white", nil, 3 },
|
|
|
|
{ 13, "dye:light_grey", "dye:white", nil, nil, 2 },
|
|
|
|
{ 14, "dye:white", "dye:white", "dye:light_grey", nil, 3 },
|
|
|
|
}
|
2016-04-01 20:02:19 -04:00
|
|
|
|
2017-02-26 22:35:37 -05:00
|
|
|
for _, i in ipairs(unifieddyes.greymixes) do
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
local shade = i[1]
|
|
|
|
local dye1 = i[2]
|
|
|
|
local dye2 = i[3]
|
|
|
|
local dye3 = i[4]
|
|
|
|
local dye4 = i[5]
|
|
|
|
local yield = i[6]
|
|
|
|
local color = "grey_"..shade
|
|
|
|
if shade == 4 then
|
|
|
|
color = "dark_grey"
|
|
|
|
elseif shade == 8 then
|
|
|
|
color = "grey"
|
|
|
|
elseif shade == 11 then
|
|
|
|
color = "light_grey"
|
|
|
|
end
|
2016-04-01 20:02:19 -04:00
|
|
|
|
|
|
|
minetest.register_craft( {
|
|
|
|
type = "shapeless",
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
output = "dye:"..color.." "..yield,
|
2016-04-01 20:02:19 -04:00
|
|
|
recipe = {
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
dye1,
|
|
|
|
dye2,
|
|
|
|
dye3,
|
|
|
|
dye4,
|
|
|
|
},
|
2016-04-01 20:02:19 -04:00
|
|
|
})
|
|
|
|
end
|
|
|
|
|
2017-06-23 14:44:07 -04:00
|
|
|
-- we can't make dark orange anymore because brown/medium orange conflicts
|
|
|
|
|
|
|
|
minetest.register_craft( {
|
|
|
|
type = "shapeless",
|
|
|
|
output = "dye:dark_orange",
|
|
|
|
recipe = {
|
|
|
|
"dye:brown",
|
|
|
|
"dye:brown"
|
|
|
|
},
|
|
|
|
})
|
|
|
|
|
|
|
|
minetest.register_alias("dye:light_red", "dye:pink")
|
|
|
|
minetest.register_alias("dye:medium_orange", "dye:brown")
|
|
|
|
|
Huge update - lots of mods:
areas, biome_lib, blox, bobblocks, boost_cart, homedecor, mobs,
coloredwood, ilights, inbox, item_tweaks, moreblocks, moreores,
pipeworks, plasticbox, signs_lib, stainedglass, roads, unifieddyes,
vines, worldedit, xban2, maybe some others I didn't think about ;-)
2017-01-31 19:39:31 -05:00
|
|
|
minetest.register_alias("unifieddyes:black", "dye:black")
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.register_alias("unifieddyes:dark_grey", "dye:dark_grey")
|
Add readme.md mostly taken from the forum thread (and markdown-ified)
Updated several mods: castles, homedecor, digilines, farming redo,
jumping, maptools, mesecons, moreblocks, moretrees, pipeworks,
signs_lib, technic, unified_dyes
Deleted the peaceful_npc mod, as it is broken and unmaintained.
2018-05-11 10:22:53 -04:00
|
|
|
minetest.register_alias("unifieddyes:grey", "dye:grey")
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.register_alias("unifieddyes:light_grey", "dye:light_grey")
|
updated several mods
biome_lib, boost cart, homedecor modpack, plantlife modpack, cottages,
currency, farming redo, gloopblocks, ilights, moreores, moretrees,
pipeworks, plasticbox, replacer, signs_lib, streets, travelnet, unified
dyes, and vines, and maybe one or two others that I didn't see in the
list. :-)
I fixed the misc_overrides component (it broke when I switched over to
farming redo a while back), and also I've added the classic peaceful_npc
mod back into the modpack, since it seems to work now.
Be sure when you run a world for the first time after this update, that
you "Configure" the world, *disable* all of Dreambuilder Modpack, then
re-enable the whole thing. If you don't, a few mods will fail to load
due to recent changes in their dependencies.
2017-08-12 20:37:50 -04:00
|
|
|
minetest.register_alias("unifieddyes:white", "dye:white")
|
2016-04-01 20:02:19 -04:00
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
minetest.register_alias("unifieddyes:grey_0", "dye:black")
|
|
|
|
minetest.register_alias("unifieddyes:grey_4", "dye:dark_grey")
|
|
|
|
minetest.register_alias("unifieddyes:grey_8", "dye:grey")
|
|
|
|
minetest.register_alias("unifieddyes:grey_11", "dye:light_grey")
|
|
|
|
minetest.register_alias("unifieddyes:grey_15", "dye:white")
|
|
|
|
|
2016-04-01 20:02:19 -04:00
|
|
|
minetest.register_alias("unifieddyes:white_paint", "dye:white")
|
|
|
|
minetest.register_alias("unifieddyes:titanium_dioxide", "dye:white")
|
|
|
|
minetest.register_alias("unifieddyes:lightgrey_paint", "dye:light_grey")
|
|
|
|
minetest.register_alias("unifieddyes:grey_paint", "dye:grey")
|
|
|
|
minetest.register_alias("unifieddyes:darkgrey_paint", "dye:dark_grey")
|
|
|
|
minetest.register_alias("unifieddyes:carbon_black", "dye:black")
|
|
|
|
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
-- aqua -> spring, skyblue -> azure, and redviolet -> rose aliases
|
|
|
|
-- note that technically, lime should be aliased, but can't be (there IS
|
|
|
|
-- lime in the new color table, it's just shifted up a bit)
|
|
|
|
|
|
|
|
minetest.register_alias("unifieddyes:aqua", "unifieddyes:spring")
|
|
|
|
minetest.register_alias("unifieddyes:skyblue", "unifieddyes:azure")
|
|
|
|
minetest.register_alias("unifieddyes:redviolet", "unifieddyes:rose")
|
Add readme.md mostly taken from the forum thread (and markdown-ified)
Updated several mods: castles, homedecor, digilines, farming redo,
jumping, maptools, mesecons, moreblocks, moretrees, pipeworks,
signs_lib, technic, unified_dyes
Deleted the peaceful_npc mod, as it is broken and unmaintained.
2018-05-11 10:22:53 -04:00
|
|
|
minetest.register_alias("unifieddyes:brown", "dye:brown")
|
updated lots of mods:
blox, bobblocks, homedecor, coloredwood, gloopblocks, moreblocks,
plasticbox, replacer, solidcolor, stained_glass, technic, unifiedbricks,
and unifieddyes (in most of these, it's to upgrade to the Unified Dyes
"extended" palette)
2017-02-26 11:11:19 -05:00
|
|
|
|
2016-04-01 20:02:19 -04:00
|
|
|
print(S("[UnifiedDyes] Loaded!"))
|
|
|
|
|