mirror of
				https://github.com/luanti-org/minetest_game.git
				synced 2025-11-04 01:05:49 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
-- This uses a trick: you can first define the recipes using all of the base
 | 
						|
-- colors, and then some recipes using more specific colors for a few non-base
 | 
						|
-- colors available. When crafting, the last recipes will be checked first.
 | 
						|
 | 
						|
local dyes = {
 | 
						|
	{"white",      "White",      "basecolor_white"},
 | 
						|
	{"grey",       "Grey",       "basecolor_grey"},
 | 
						|
	{"black",      "Black",      "basecolor_black"},
 | 
						|
	{"red",        "Red",        "basecolor_red"},
 | 
						|
	{"yellow",     "Yellow",     "basecolor_yellow"},
 | 
						|
	{"green",      "Green",      "basecolor_green"},
 | 
						|
	{"cyan",       "Cyan",       "basecolor_cyan"},
 | 
						|
	{"blue",       "Blue",       "basecolor_blue"},
 | 
						|
	{"magenta",    "Magenta",    "basecolor_magenta"},
 | 
						|
	{"orange",     "Orange",     "excolor_orange"},
 | 
						|
	{"violet",     "Violet",     "excolor_violet"},
 | 
						|
	{"brown",      "Brown",      "unicolor_dark_orange"},
 | 
						|
	{"pink",       "Pink",       "unicolor_light_red"},
 | 
						|
	{"dark_grey",  "Dark Grey",  "unicolor_darkgrey"},
 | 
						|
	{"dark_green", "Dark Green", "unicolor_dark_green"},
 | 
						|
}
 | 
						|
 | 
						|
for i = 1, #dyes do
 | 
						|
	local name, desc, craft_color_group = unpack(dyes[i])
 | 
						|
 | 
						|
	minetest.register_node("wool:" .. name, {
 | 
						|
		description = desc .. " Wool",
 | 
						|
		tiles = {"wool_" .. name .. ".png"},
 | 
						|
		is_ground_content = false,
 | 
						|
		groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 3,
 | 
						|
				flammable = 3, wool = 1},
 | 
						|
		sounds = default.node_sound_defaults(),
 | 
						|
	})
 | 
						|
 | 
						|
	minetest.register_craft{
 | 
						|
		type = "shapeless",
 | 
						|
		output = "wool:" .. name,
 | 
						|
		recipe = {"group:dye," .. craft_color_group, "group:wool"},
 | 
						|
	}
 | 
						|
end
 | 
						|
 | 
						|
 | 
						|
-- legacy
 | 
						|
 | 
						|
-- Backwards compatibility with jordach's 16-color wool mod
 | 
						|
minetest.register_alias("wool:dark_blue", "wool:blue")
 | 
						|
minetest.register_alias("wool:gold", "wool:yellow")
 |