forked from VoxeLibre/VoxeLibre
Separate white dye from bone meal.
* Add craftitem for ":mcl_bone_meal:bone_meal" to mcl_dye (temporarily.) * Add crafting recipe for bone meal. * Add texture for white dye item. * Merge craftitem registration for "mcl_dye:white" with generic dyes. * Add crafting recipe for white dye. * Add legacy conversion recipe. * Update dyes table. * Update translations. * Update mcl_crimson and sweet berry on_rightclick handlers. * Update composter output, both as freestanding and to hoppers. * Update bone block crafting recipes. * Update tropical fish, cod and salmon mob drops.
This commit is contained in:
parent
7d8fdc6ec3
commit
92ee402971
|
@ -64,7 +64,7 @@ local cod = {
|
|||
chance = 1,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
{name = "mcl_dye:white",
|
||||
{name = "mcl_bone_meal:bone_meal",
|
||||
chance = 20,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
|
|
|
@ -42,7 +42,7 @@ local salmon = {
|
|||
chance = 1,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
{name = "mcl_dye:white",
|
||||
{name = "mcl_bone_meal:bone_meal",
|
||||
chance = 20,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
|
|
|
@ -87,7 +87,7 @@ local tropical_fish = {
|
|||
chance = 1,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
{name = "mcl_dye:white",
|
||||
{name = "mcl_bone_meal:bone_meal",
|
||||
chance = 20,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
|
|
|
@ -138,8 +138,8 @@ local function composter_harvest(pos, node, player, itemstack, pointed_thing)
|
|||
end
|
||||
-- reset ready type composter to empty type
|
||||
swap_node(pos, {name="mcl_composters:composter"})
|
||||
-- spawn bone meal item (wtf dye?! is this how they make white cocoa)
|
||||
add_item(pos, "mcl_dye:white")
|
||||
-- spawn bone meal item
|
||||
add_item(pos, "mcl_bone_meal:bone_meal")
|
||||
-- TODO play some sounds
|
||||
return itemstack
|
||||
end
|
||||
|
|
|
@ -126,14 +126,14 @@ minetest.register_craft({
|
|||
minetest.register_craft({
|
||||
output = "mcl_core:bone_block",
|
||||
recipe = {
|
||||
{ "mcl_dye:white", "mcl_dye:white", "mcl_dye:white" },
|
||||
{ "mcl_dye:white", "mcl_dye:white", "mcl_dye:white" },
|
||||
{ "mcl_dye:white", "mcl_dye:white", "mcl_dye:white" },
|
||||
{ "mcl_bone_meal:bone_meal", "mcl_bone_meal:bone_meal", "mcl_bone_meal:bone_meal" },
|
||||
{ "mcl_bone_meal:bone_meal", "mcl_bone_meal:bone_meal", "mcl_bone_meal:bone_meal" },
|
||||
{ "mcl_bone_meal:bone_meal", "mcl_bone_meal:bone_meal", "mcl_bone_meal:bone_meal" },
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mcl_dye:white 9",
|
||||
output = "mcl_bone_meal:bone_meal 9",
|
||||
recipe = {
|
||||
{ "mcl_core:bone_block" },
|
||||
},
|
||||
|
|
|
@ -82,7 +82,7 @@ minetest.register_node("mcl_crimson:warped_fungus", {
|
|||
},
|
||||
node_placement_prediction = "",
|
||||
on_rightclick = function(pos, node, pointed_thing, player, itemstack)
|
||||
if pointed_thing:get_wielded_item():get_name() == "mcl_dye:white" then
|
||||
if pointed_thing:get_wielded_item():get_name() == "mcl_bone_meal:bone_meal" then
|
||||
local nodepos = minetest.get_node({x = pos.x, y = pos.y - 1, z = pos.z})
|
||||
if nodepos.name == "mcl_crimson:warped_nylium" or nodepos.name == "mcl_nether:netherrack" then
|
||||
local random = math.random(1, 5)
|
||||
|
@ -129,7 +129,7 @@ minetest.register_node("mcl_crimson:twisting_vines", {
|
|||
itemstack:take_item()
|
||||
end
|
||||
grow_vines(pos, 1, "mcl_crimson:twisting_vines")
|
||||
elseif clicker:get_wielded_item():get_name() == "mcl_dye:white" then
|
||||
elseif clicker:get_wielded_item():get_name() == "mcl_bone_meal:bone_meal" then
|
||||
if not minetest.is_creative_enabled(clicker:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
|
@ -185,7 +185,7 @@ minetest.register_node("mcl_crimson:weeping_vines", {
|
|||
itemstack:take_item()
|
||||
end
|
||||
grow_vines(pos, 1, "mcl_crimson:weeping_vines", -1)
|
||||
elseif clicker:get_wielded_item():get_name() == "mcl_dye:white" then
|
||||
elseif clicker:get_wielded_item():get_name() == "mcl_bone_meal:bone_meal" then
|
||||
if not minetest.is_creative_enabled(clicker:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
|
@ -421,7 +421,7 @@ minetest.register_node("mcl_crimson:crimson_fungus", {
|
|||
},
|
||||
node_placement_prediction = "",
|
||||
on_rightclick = function(pos, node, pointed_thing, player)
|
||||
if pointed_thing:get_wielded_item():get_name() == "mcl_dye:white" then
|
||||
if pointed_thing:get_wielded_item():get_name() == "mcl_bone_meal:bone_meal" then
|
||||
local nodepos = minetest.get_node(vector.offset(pos, 0, -1, 0))
|
||||
if nodepos.name == "mcl_crimson:crimson_nylium" or nodepos.name == "mcl_nether:netherrack" then
|
||||
local random = math.random(1, 5)
|
||||
|
|
|
@ -67,7 +67,7 @@ local dyelocal = {}
|
|||
|
||||
-- This collection of colors is partly a historic thing, partly something else.
|
||||
dyelocal.dyes = {
|
||||
{"white", "mcl_dye_white", S("Bone Meal"), {dye=1, craftitem=1, basecolor_white=1, excolor_white=1, unicolor_white=1}},
|
||||
{"white", "mcl_dye_white", S("White Dye"), {dye=1, craftitem=1, basecolor_white=1, excolor_white=1, unicolor_white=1}},
|
||||
{"grey", "dye_grey", S("Light Grey Dye"), {dye=1, craftitem=1, basecolor_grey=1, excolor_grey=1, unicolor_grey=1}},
|
||||
{"dark_grey", "dye_dark_grey", S("Grey Dye"), {dye=1, craftitem=1, basecolor_grey=1, excolor_darkgrey=1, unicolor_darkgrey=1}},
|
||||
{"black", "mcl_dye_black", S("Black Dye"), {dye=1, craftitem=1, basecolor_black=1, excolor_black=1, unicolor_black=1}},
|
||||
|
@ -109,22 +109,19 @@ end
|
|||
-- Define items
|
||||
for _, row in ipairs(dyelocal.dyes) do
|
||||
local name = row[1]
|
||||
-- White dye is defined explicitly below
|
||||
if name ~= "white" then
|
||||
local img = row[2]
|
||||
local description = row[3]
|
||||
local groups = row[4]
|
||||
local item_name = "mcl_dye:"..name
|
||||
local item_image = img..".png"
|
||||
minetest.register_craftitem(item_name, {
|
||||
inventory_image = item_image,
|
||||
description = description,
|
||||
_doc_items_longdesc = S("This item is a dye which is used for dyeing and crafting."),
|
||||
_doc_items_usagehelp = S("Rightclick on a sheep to dye its wool. Other things are dyed by crafting."),
|
||||
groups = groups,
|
||||
stack_max = 64,
|
||||
})
|
||||
end
|
||||
local img = row[2]
|
||||
local description = row[3]
|
||||
local groups = row[4]
|
||||
local item_name = "mcl_dye:"..name
|
||||
local item_image = img..".png"
|
||||
minetest.register_craftitem(item_name, {
|
||||
inventory_image = item_image,
|
||||
description = description,
|
||||
_doc_items_longdesc = S("This item is a dye which is used for dyeing and crafting."),
|
||||
_doc_items_usagehelp = S("Rightclick on a sheep to dye its wool. Other things are dyed by crafting."),
|
||||
groups = groups,
|
||||
stack_max = 64,
|
||||
})
|
||||
end
|
||||
|
||||
-- Bone Meal
|
||||
|
@ -381,14 +378,13 @@ end
|
|||
|
||||
mcl_dye.apply_bone_meal = apply_bone_meal
|
||||
|
||||
minetest.register_craftitem("mcl_dye:white", {
|
||||
inventory_image = "mcl_dye_white.png",
|
||||
minetest.register_craftitem(":mcl_bone_meal:bone_meal", {
|
||||
inventory_image = "mcl_bone_meal_bone_meal.png",
|
||||
description = S("Bone Meal"),
|
||||
_tt_help = S("Speeds up plant growth"),
|
||||
_doc_items_longdesc = S("Bone meal is a white dye and also useful as a fertilizer to speed up the growth of many plants."),
|
||||
_doc_items_usagehelp = S("Rightclick a sheep to turn its wool white. Rightclick a plant to speed up its growth. Note that not all plants can be fertilized like this. When you rightclick a grass block, tall grass and flowers will grow all over the place."),
|
||||
stack_max = 64,
|
||||
groups = dyelocal.dyes[1][4],
|
||||
on_place = function(itemstack, user, pointed_thing)
|
||||
-- Use pointed node's on_rightclick function first, if present
|
||||
local node = minetest.get_node(pointed_thing.under)
|
||||
|
@ -421,6 +417,11 @@ minetest.register_craftitem("mcl_dye:white", {
|
|||
_dispense_into_walkable = true
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mcl_bone_meal:bone_meal 3",
|
||||
recipe = {{"mcl_mobitems:bone"}},
|
||||
})
|
||||
|
||||
-- Dye mixing
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
|
@ -487,6 +488,10 @@ minetest.register_craft({
|
|||
})
|
||||
|
||||
-- Dye creation
|
||||
minetest.register_craft({
|
||||
output = "mcl_dye:white",
|
||||
recipe = {{"mcl_bone_meal:bone_meal"}},
|
||||
})
|
||||
minetest.register_craft({
|
||||
output = "mcl_dye:black",
|
||||
recipe = {{"mcl_mobitems:ink_sac"}},
|
||||
|
@ -565,13 +570,13 @@ minetest.register_craft({
|
|||
recipe = "mcl_core:cactus",
|
||||
cooktime = 10,
|
||||
})
|
||||
minetest.register_craft({
|
||||
output = "mcl_dye:white 3",
|
||||
recipe = {{"mcl_mobitems:bone"}},
|
||||
})
|
||||
|
||||
-- legacy item grace conversion recipes
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mcl_bone_meal:bone_meal",
|
||||
recipe = {{"mcl_dye:white"}},
|
||||
})
|
||||
minetest.register_craft({
|
||||
output = "mcl_mobitems:ink_sac",
|
||||
recipe = {{"mcl_dye:black"}},
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=Knochenmehl
|
||||
White Dye=Weißer Farbstoff
|
||||
Light Grey Dye=Hellgrauer Farbstoff
|
||||
Grey Dye=Grauer Farbstoff
|
||||
Black Dye=Schwarzer Farbstoff
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=Harina de hueso
|
||||
White Dye=Tinte blanca
|
||||
Light Grey Dye=Tinte gris claro
|
||||
Grey Dye=Tinte gris
|
||||
Black Dye=Tinte negro
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=Poudre d'Os
|
||||
White Dye=Teinture Blanche
|
||||
Light Grey Dye=Teinture Gris Clair
|
||||
Grey Dye=Teinture Gris
|
||||
Black Dye=Teinture Noire
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=Mączka kostna
|
||||
White Dye=Biały farba
|
||||
Light Grey Dye=Jasnoszara farba
|
||||
Grey Dye=Szara farba
|
||||
Black Dye=Czarny farba
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=Костная мука
|
||||
White Dye=Белый краситель
|
||||
Light Grey Dye=Светло-серый краситель
|
||||
Grey Dye=Серый краситель
|
||||
Black Dye=Чёрный краситель
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=骨粉
|
||||
White Dye=白色染料
|
||||
Light Grey Dye=淺灰色染料
|
||||
Grey Dye=灰色染料
|
||||
Black Dye=黑色染料
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# textdomain: mcl_dye
|
||||
Bone Meal=
|
||||
White Dye=
|
||||
Light Grey Dye=
|
||||
Grey Dye=
|
||||
Black Dye=
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 165 B |
Binary file not shown.
Before Width: | Height: | Size: 165 B After Width: | Height: | Size: 201 B |
|
@ -41,7 +41,7 @@ for i=0, 3 do
|
|||
minetest.record_protection_violation(pos, pn)
|
||||
return itemstack
|
||||
end
|
||||
if mcl_dye and clicker:get_wielded_item():get_name() == "mcl_dye:white" then
|
||||
if mcl_dye and clicker:get_wielded_item():get_name() == "mcl_bone_meal:bone_meal" then
|
||||
mcl_dye.apply_bone_meal({under=pos},clicker)
|
||||
itemstack:take_item()
|
||||
return
|
||||
|
|
|
@ -612,7 +612,7 @@ if minetest.get_modpath("mcl_composters") then
|
|||
|
||||
minetest.swap_node(uppos, {name = "mcl_composters:composter"})
|
||||
|
||||
inv:add_item("main", "mcl_dye:white")
|
||||
inv:add_item("main", "mcl_bone_meal:bone_meal")
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
|
Reference in New Issue