2015-06-29 20:55:56 +03:00
|
|
|
-- minetest/wool/init.lua
|
|
|
|
|
|
|
|
-- Backwards compatibility with jordach's 16-color wool mod
|
2017-01-30 16:25:24 +02:00
|
|
|
minetest.register_alias("mcl_wool:dark_blue", "wool:blue")
|
|
|
|
minetest.register_alias("mcl_wool:gold", "wool:yellow")
|
2015-06-29 20:55:56 +03:00
|
|
|
|
|
|
|
local wool = {}
|
|
|
|
-- 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.
|
|
|
|
wool.dyes = {
|
2019-02-04 13:21:58 +02:00
|
|
|
-- name, texture, wool desc., carpet desc., dye, color_group
|
|
|
|
{"white", "wool_white", "White Wool", "White Carpet", nil, "basecolor_white"},
|
|
|
|
{"grey", "wool_dark_grey", "Grey Wool", "Grey Carpet", "dark_grey", "unicolor_darkgrey"},
|
|
|
|
{"silver", "wool_grey", "Light Grey Wool", "Light Grey Carpet", "grey", "basecolor_grey"},
|
|
|
|
{"black", "wool_black", "Black Wool", "Black Carpet", "black", "basecolor_black"},
|
|
|
|
{"red", "wool_red", "Red Wool", "Red Carpet", "red", "basecolor_red"},
|
|
|
|
{"yellow", "wool_yellow", "Yellow Wool", "Yellow Carpet", "yellow", "basecolor_yellow"},
|
|
|
|
{"green", "wool_dark_green", "Green Wool", "Green Carpet", "dark_green", "unicolor_dark_green"},
|
|
|
|
{"cyan", "wool_cyan", "Cyan Wool", "Cyan Carpet", "cyan", "basecolor_cyan"},
|
|
|
|
{"blue", "wool_blue", "Blue Wool", "Blue Carpet", "blue", "basecolor_blue"},
|
|
|
|
{"magenta", "wool_magenta", "Magenta Wool", "Magenta Carpet", "magenta", "basecolor_magenta"},
|
|
|
|
{"orange", "wool_orange", "Orange Wool", "Orange Carpet", "orange", "excolor_orange"},
|
|
|
|
{"purple", "wool_violet", "Purple Wool", "Purple Carpet", "violet", "excolor_violet"},
|
|
|
|
{"brown", "wool_brown", "Brown Wool", "Brown Carpet", "brown", "unicolor_dark_orange"},
|
|
|
|
{"pink", "wool_pink", "Pink Wool", "Pink Carpet", "pink", "unicolor_light_red"},
|
|
|
|
{"lime", "mcl_wool_lime", "Lime Wool", "Lime Carpet", "green", "basecolor_green"},
|
|
|
|
{"light_blue", "mcl_wool_light_blue", "Light Blue Wool", "Light Blue Carpet", "lightblue", "unicolor_light_blue"},
|
2015-06-29 20:55:56 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
for _, row in ipairs(wool.dyes) do
|
|
|
|
local name = row[1]
|
2017-01-05 01:54:50 +02:00
|
|
|
local texture = row[2]
|
2019-02-04 13:21:58 +02:00
|
|
|
local desc_wool = row[3]
|
|
|
|
local desc_carpet = row[4]
|
|
|
|
local dye = row[5]
|
|
|
|
local color_group = row[6]
|
2015-06-29 20:55:56 +03:00
|
|
|
-- Node Definition
|
2017-01-30 16:25:24 +02:00
|
|
|
minetest.register_node("mcl_wool:"..name, {
|
2019-02-04 13:21:58 +02:00
|
|
|
description = desc_wool,
|
2017-03-11 02:51:06 +02:00
|
|
|
_doc_items_longdesc = "Wool is a decorational block which comes in many different colors.",
|
2015-06-29 20:55:56 +03:00
|
|
|
stack_max = 64,
|
2017-01-04 23:36:51 +02:00
|
|
|
is_ground_content = false,
|
2019-02-04 13:21:58 +02:00
|
|
|
tiles = {texture..".png"},
|
2017-02-27 20:38:48 +02:00
|
|
|
groups = {handy=1,shearsy_wool=1, flammable=1,wool=1,building_block=1},
|
2017-02-11 19:46:23 +02:00
|
|
|
sounds = mcl_sounds.node_sound_defaults(),
|
2017-02-27 02:05:49 +02:00
|
|
|
_mcl_hardness = 0.8,
|
2017-02-22 17:03:59 +02:00
|
|
|
_mcl_blast_resistance = 4,
|
2015-06-29 20:55:56 +03:00
|
|
|
})
|
2017-01-30 16:25:24 +02:00
|
|
|
minetest.register_node("mcl_wool:"..name.."_carpet", {
|
2019-02-04 13:21:58 +02:00
|
|
|
description = desc_carpet,
|
2017-03-11 02:51:06 +02:00
|
|
|
_doc_items_longdesc = "Carpets are thin floor covers which come in many different colors.",
|
2018-01-09 16:05:15 +02:00
|
|
|
walkable = false, -- See <https://minecraft.gamepedia.com/Materials>
|
2017-01-04 23:36:51 +02:00
|
|
|
is_ground_content = false,
|
2019-02-04 13:21:58 +02:00
|
|
|
tiles = {texture..".png"},
|
|
|
|
wield_image = texture..".png",
|
2017-03-02 18:03:14 +02:00
|
|
|
wield_scale = { x=1, y=1, z=0.5 },
|
2017-09-19 20:50:07 +03:00
|
|
|
groups = {handy=1, carpet=1,attached_node=1,dig_by_water=1,deco_block=1},
|
2017-02-11 19:46:23 +02:00
|
|
|
sounds = mcl_sounds.node_sound_defaults(),
|
2015-06-29 20:55:56 +03:00
|
|
|
paramtype = "light",
|
2017-03-20 20:03:37 +02:00
|
|
|
sunlight_propagates = true,
|
2015-06-29 20:55:56 +03:00
|
|
|
stack_max = 64,
|
|
|
|
drawtype = "nodebox",
|
|
|
|
node_box = {
|
|
|
|
type = "fixed",
|
|
|
|
fixed = {
|
|
|
|
{-8/16, -8/16, -8/16, 8/16, -7/16, 8/16},
|
|
|
|
},
|
|
|
|
},
|
2017-02-27 02:05:49 +02:00
|
|
|
_mcl_hardness = 0.1,
|
2017-02-22 17:03:59 +02:00
|
|
|
_mcl_blast_resistance = 0.5,
|
2015-06-29 20:55:56 +03:00
|
|
|
})
|
2017-05-15 21:31:31 +03:00
|
|
|
if dye then
|
2015-06-29 20:55:56 +03:00
|
|
|
-- Crafting from dye and white wool
|
|
|
|
minetest.register_craft({
|
|
|
|
type = "shapeless",
|
2017-01-30 16:25:24 +02:00
|
|
|
output = 'mcl_wool:'..name,
|
2017-05-15 21:31:31 +03:00
|
|
|
recipe = {"mcl_dye:"..dye, 'mcl_wool:white'},
|
2015-06-29 20:55:56 +03:00
|
|
|
})
|
|
|
|
end
|
2017-05-15 21:32:50 +03:00
|
|
|
minetest.register_craft({
|
|
|
|
output = 'mcl_wool:'..name..'_carpet 3',
|
|
|
|
recipe = {{'mcl_wool:'..name, 'mcl_wool:'..name}},
|
|
|
|
})
|
2015-06-29 20:55:56 +03:00
|
|
|
end
|
|
|
|
|
2017-02-01 19:36:03 +02:00
|
|
|
minetest.register_craft({
|
|
|
|
output = "mcl_wool:white",
|
|
|
|
recipe = {
|
|
|
|
{ "mcl_mobitems:string", "mcl_mobitems:string" },
|
|
|
|
{ "mcl_mobitems:string", "mcl_mobitems:string" },
|
|
|
|
},
|
|
|
|
})
|
|
|
|
|
2017-01-10 07:43:07 +02:00
|
|
|
minetest.register_craft({
|
|
|
|
type = "fuel",
|
|
|
|
recipe = "group:wool",
|
|
|
|
burntime = 5,
|
|
|
|
})
|
|
|
|
minetest.register_craft({
|
|
|
|
type = "fuel",
|
|
|
|
recipe = "group:carpet",
|
|
|
|
-- Original value: 3.35
|
|
|
|
burntime = 3,
|
|
|
|
})
|