diff --git a/CREDITS.md b/CREDITS.md
index dcbcee9549..d6b4f1957d 100644
--- a/CREDITS.md
+++ b/CREDITS.md
@@ -95,6 +95,7 @@
* anarquimico
* TheOnlyJoeEnderman
* Ranko Saotome
+* Gregor Parzefall
## MineClone5
* kay27
diff --git a/mods/CORE/mcl_sounds/README.txt b/mods/CORE/mcl_sounds/README.txt
index 9fc2ba28f0..2ede2c1f9e 100644
--- a/mods/CORE/mcl_sounds/README.txt
+++ b/mods/CORE/mcl_sounds/README.txt
@@ -11,42 +11,22 @@ Creative Commons Attribution 3.0 Unported (CC BY-SA 3.0)
http://creativecommons.org/licenses/by/3.0/
Glass breaking sounds (CC BY 3.0):
- 1: http://www.freesound.org/people/cmusounddesign/sounds/71947/
- 2: http://www.freesound.org/people/Tomlija/sounds/97669/
- 3: http://www.freesound.org/people/lsprice/sounds/88808/
+ 1: http://www.freesound.org/people/cmusounddesign/sounds/71947/
+ 2: http://www.freesound.org/people/Tomlija/sounds/97669/
+ 3: http://www.freesound.org/people/lsprice/sounds/88808/
default_tool_breaks.ogg by EdgardEdition (CC BY 3.0), http://www.freesound.org/people/EdgardEdition
Mito551 (sounds) (CC BY-SA 3.0):
- default_dig_choppy.ogg
- default_dig_cracky.ogg
- default_dig_crumbly.1.ogg
- default_dig_crumbly.2.ogg
+ default_dig_crumbly.ogg
default_dig_oddly_breakable_by_hand.ogg
- default_dug_node.1.ogg
- default_dug_node.2.ogg
- default_grass_footstep.1.ogg
- default_grass_footstep.2.ogg
- default_grass_footstep.3.ogg
- default_gravel_footstep.1.ogg
- default_gravel_footstep.2.ogg
- default_gravel_footstep.3.ogg
- default_gravel_footstep.4.ogg
- default_grass_footstep.1.ogg
- default_place_node.1.ogg
- default_place_node.2.ogg
- default_place_node.3.ogg
- default_place_node_hard.1.ogg
- default_place_node_hard.2.ogg
- default_hard_footstep.1.ogg
- default_hard_footstep.2.ogg
- default_hard_footstep.3.ogg
- default_sand_footstep.1.ogg
- default_sand_footstep.2.ogg
- default_wood_footstep.1.ogg
- default_wood_footstep.2.ogg
- default_dirt_footstep.1.ogg
- default_dirt_footstep.2.ogg
+ default_dug_node.*.ogg
+ default_grass_footstep.*.ogg
+ default_gravel_footstep.*.ogg
+ default_place_node.*.ogg
+ default_place_node_hard.*.ogg
+ default_wood_footstep.*.ogg
+ default_dirt_footstep.*.ogg
default_glass_footstep.ogg
Metal sounds:
@@ -54,35 +34,64 @@ Metal sounds:
- https://www.freesound.org/people/yadronoff/sounds/320397/
default_dug_metal.*.ogg - Iwan Gabovitch - qubodup - CC0
- http://opengameart.org/users/qubodup
- default_metal_footstep.*.ogg - Ottomaani138 - CC0
- - https://www.freesound.org/people/Ottomaani138/sounds/232692/
+ default_metal_footstep.*.ogg - (CC0 1.0) - CC0 1.0
+ - https://freesound.org/people/mypantsfelldown/sounds/398937/
default_place_node_metal.*.ogg - Ogrebane - CC0
- http://opengameart.org/content/wood-and-metal-sound-effects-volume-2
-AGFX (CC BY 3.0)
+AGFX (CC BY 3.0):
https://www.freesound.org/people/AGFX/packs/1253/
- default_water_footstep.1.ogg
- default_water_footstep.2.ogg
- default_water_footstep.3.ogg
-(default_water_footstep.4.ogg is silent)
+ default_water_footstep.*.ogg
-blukotek (CC0 1.0)
+blukotek (CC0 1.0):
https://www.freesound.org/people/blukotek/sounds/251660/
default_dig_snappy.ogg
-sonictechtonic (CC BY 3.0)
+sonictechtonic (CC BY 3.0):
https://www.freesound.org/people/sonictechtonic/sounds/241872/
player_damage.ogg
-Voxelands project (CC BY-SA 3.0)
+Sheyvan (CC0 1.0):
+https://freesound.org/people/Sheyvan/sounds/476113/
+ default_dig_choppy.*.ogg
+
+lolamadeus (CC0 1.0):
+https://freesound.org/people/lolamadeus/sounds/179341/
+ default_gravel_dig.*.ogg
+ default_gravel_dug.*.ogg
+
+Benboncan (CC BY 3.0):
+https://freesound.org/people/Benboncan/sounds/71823/
+ default_dig_cracky.*.ogg
+
+Erdie (CC BY 3.0):
+https://freesound.org/people/Erdie/sounds/41579/
+ default_hard_footstep.*.ogg
+
+worthahep88 (CC0 1.0):
+https://freesound.org/people/worthahep88/sounds/319224/
+ default_sand_footstep.*.ogg
+
+dheming (CC BY 3.0):
+https://freesound.org/people/dheming/sounds/268023/
+ default_ice_dig.*.ogg
+
+InspectorJ (CC BY 3.0):
+https://freesound.org/people/InspectorJ/sounds/416967/
+ default_ice_footstep.*.ogg
+
+Angel_Perez_Grandi (CC BY 3.0):
+https://freesound.org/people/Angel_Perez_Grandi/sounds/49190/
+ default_ice_dug.ogg
+
+Voxelands project (CC BY-SA 3.0):
mcl_sounds_place_node_water.ogg
mcl_sounds_dug_water.ogg
(Note: Artists from the Voxelands project include: sdzen, darkrose, sapier,
Tom Peter, Telaron, juskiddink)
-Michel Baradari (CC BY 3.0)
-
+Michel Baradari (CC BY 3.0):
default_place_node_lava.ogg
Adam_N (CC0 1.0):
@@ -90,7 +99,7 @@ Adam_N (CC0 1.0):
Source:
Alecia Shepherd (CC BY-SA 4.0):
- mcl_sounds_cloth.ogg
+ mcl_sounds_cloth.*.ogg
Source: SnowSong sound and music pack
Unknown authors (WTFPL):
diff --git a/mods/CORE/mcl_sounds/init.lua b/mods/CORE/mcl_sounds/init.lua
index 13ca7bf720..30157060c0 100644
--- a/mods/CORE/mcl_sounds/init.lua
+++ b/mods/CORE/mcl_sounds/init.lua
@@ -11,7 +11,7 @@ function mcl_sounds.node_sound_defaults(table)
table.dug = table.dug or
{name="default_dug_node", gain=0.25}
table.dig = table.dig or
- {name="default_dig_oddly_breakable_by_hand", gain=1.0}
+ {name="default_dig_oddly_breakable_by_hand", gain=0.5}
table.place = table.place or
{name="default_place_node_hard", gain=1.0}
return table
@@ -20,11 +20,11 @@ end
function mcl_sounds.node_sound_stone_defaults(table)
table = table or {}
table.footstep = table.footstep or
- {name="default_hard_footstep", gain=0.5}
+ {name="default_hard_footstep", gain=0.2}
table.dug = table.dug or
{name="default_hard_footstep", gain=1.0}
table.dig = table.dig or
- {name="default_dig_cracky", gain=1.0}
+ {name="default_dig_cracky", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end
@@ -32,13 +32,13 @@ end
function mcl_sounds.node_sound_metal_defaults(table)
table = table or {}
table.footstep = table.footstep or
- {name="default_metal_footstep", gain=0.5}
+ {name="default_metal_footstep", gain=0.2}
table.dug = table.dug or
- {name="default_dug_metal", gain=1.0}
+ {name="default_dug_metal", gain=0.5}
table.dig = table.dig or
- {name="default_dig_metal", gain=1.0}
+ {name="default_dig_metal", gain=0.5}
table.place = table.place or
- {name="default_place_node_metal", gain=1.0}
+ {name="default_place_node_metal", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end
@@ -46,11 +46,11 @@ end
function mcl_sounds.node_sound_dirt_defaults(table)
table = table or {}
table.footstep = table.footstep or
- {name="default_dirt_footstep", gain=1.0}
+ {name="default_dirt_footstep", gain=0.25}
table.dug = table.dug or
- {name="default_dirt_footstep", gain=1.5}
+ {name="default_dirt_footstep", gain=1.0}
table.dig = table.dig or
- {name="default_dig_crumbly", gain=1.0}
+ {name="default_dig_crumbly", gain=0.4}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
@@ -60,11 +60,25 @@ end
function mcl_sounds.node_sound_sand_defaults(table)
table = table or {}
table.footstep = table.footstep or
- {name="default_sand_footstep", gain=0.5}
+ {name="default_sand_footstep", gain=0.05}
table.dug = table.dug or
- {name="default_sand_footstep", gain=1.0}
+ {name="default_sand_footstep", gain=0.15}
table.dig = table.dig or
- {name="default_dig_crumbly", gain=1.0}
+ {name="default_dig_crumbly", gain=0.4}
+ table.place = table.place or
+ {name="default_place_node", gain=1.0}
+ mcl_sounds.node_sound_defaults(table)
+ return table
+end
+
+function mcl_sounds.node_sound_gravel_defaults(table)
+ table = table or {}
+ table.footstep = table.footstep or
+ {name="default_gravel_footstep", gain=0.25}
+ table.dug = table.dug or
+ {name="default_gravel_dug", gain=1.0}
+ table.dig = table.dig or
+ {name="default_gravel_dig", gain=0.35}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
@@ -78,21 +92,33 @@ function mcl_sounds.node_sound_snow_defaults(table)
table.dug = table.dug or
{name="pedology_snow_soft_footstep", gain=1.0}
table.dig = table.dig or
- {name="default_dig_crumbly", gain=1.0}
+ {name="pedology_snow_soft_footstep", gain=1.0}
table.place = table.place or
{name="default_place_node", gain=1.0}
mcl_sounds.node_sound_defaults(table)
return table
end
+function mcl_sounds.node_sound_ice_defaults(table)
+ table = table or {}
+ table.footstep = table.footstep or
+ {name="default_ice_footstep", gain=0.15}
+ table.dug = table.dug or
+ {name="default_ice_dug", gain=0.5}
+ table.dig = table.dig or
+ {name="default_ice_dig", gain=0.5}
+ mcl_sounds.node_sound_defaults(table)
+ return table
+end
+
function mcl_sounds.node_sound_wood_defaults(table)
table = table or {}
table.footstep = table.footstep or
- {name="default_wood_footstep", gain=0.5}
+ {name="default_wood_footstep", gain=0.15}
table.dug = table.dug or
{name="default_wood_footstep", gain=1.0}
table.dig = table.dig or
- {name="default_dig_choppy", gain=1.0}
+ {name="default_dig_choppy", gain=0.4}
mcl_sounds.node_sound_defaults(table)
return table
end
@@ -128,11 +154,11 @@ end
function mcl_sounds.node_sound_glass_defaults(table)
table = table or {}
table.footstep = table.footstep or
- {name="default_glass_footstep", gain=0.5}
+ {name="default_glass_footstep", gain=0.3}
table.dug = table.dug or
{name="default_break_glass", gain=1.0}
table.dig = table.dig or
- {name="default_dig_cracky", gain=1.0}
+ {name="default_dig_cracky", gain=0.5}
mcl_sounds.node_sound_defaults(table)
return table
end
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_choppy.1.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.1.ogg
new file mode 100644
index 0000000000..95fa6d4e72
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_choppy.2.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.2.ogg
new file mode 100644
index 0000000000..5d3a04443d
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_choppy.3.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.3.ogg
new file mode 100644
index 0000000000..2bb0aceb54
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_choppy.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_choppy.ogg
deleted file mode 100644
index e2ecd8416a..0000000000
Binary files a/mods/CORE/mcl_sounds/sounds/default_dig_choppy.ogg and /dev/null differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_cracky.1.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.1.ogg
new file mode 100644
index 0000000000..ffced27a6f
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_cracky.2.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.2.ogg
new file mode 100644
index 0000000000..d9e8010393
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_cracky.3.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.3.ogg
new file mode 100644
index 0000000000..7d19d40824
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dig_cracky.ogg b/mods/CORE/mcl_sounds/sounds/default_dig_cracky.ogg
deleted file mode 100644
index da11679161..0000000000
Binary files a/mods/CORE/mcl_sounds/sounds/default_dig_cracky.ogg and /dev/null differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.1.ogg b/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.1.ogg
index 84a197d2b0..201aa3b2da 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.1.ogg and b/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.2.ogg b/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.2.ogg
index 2e23b8a2bd..2667dbc210 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.2.ogg and b/mods/CORE/mcl_sounds/sounds/default_dirt_footstep.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_grass_footstep.1.ogg b/mods/CORE/mcl_sounds/sounds/default_grass_footstep.1.ogg
index 22d1ad6b82..a04cdb47c0 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_grass_footstep.1.ogg and b/mods/CORE/mcl_sounds/sounds/default_grass_footstep.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_grass_footstep.2.ogg b/mods/CORE/mcl_sounds/sounds/default_grass_footstep.2.ogg
index 4ccd8a0f3a..d193068d21 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_grass_footstep.2.ogg and b/mods/CORE/mcl_sounds/sounds/default_grass_footstep.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_grass_footstep.3.ogg b/mods/CORE/mcl_sounds/sounds/default_grass_footstep.3.ogg
index 20db84eda3..e1897ea383 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_grass_footstep.3.ogg and b/mods/CORE/mcl_sounds/sounds/default_grass_footstep.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_gravel_dig.1.ogg b/mods/CORE/mcl_sounds/sounds/default_gravel_dig.1.ogg
new file mode 100644
index 0000000000..baf8fca717
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_gravel_dig.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_gravel_dig.2.ogg b/mods/CORE/mcl_sounds/sounds/default_gravel_dig.2.ogg
new file mode 100644
index 0000000000..e0c0c50f95
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_gravel_dig.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_gravel_dug.1.ogg b/mods/CORE/mcl_sounds/sounds/default_gravel_dug.1.ogg
new file mode 100644
index 0000000000..1303433559
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_gravel_dug.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_gravel_dug.2.ogg b/mods/CORE/mcl_sounds/sounds/default_gravel_dug.2.ogg
new file mode 100644
index 0000000000..ee5ed3309d
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_gravel_dug.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_gravel_dug.3.ogg b/mods/CORE/mcl_sounds/sounds/default_gravel_dug.3.ogg
new file mode 100644
index 0000000000..add4c54bf2
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_gravel_dug.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_hard_footstep.1.ogg b/mods/CORE/mcl_sounds/sounds/default_hard_footstep.1.ogg
index 1748bc56a3..0a08efa8d2 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_hard_footstep.1.ogg and b/mods/CORE/mcl_sounds/sounds/default_hard_footstep.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_hard_footstep.2.ogg b/mods/CORE/mcl_sounds/sounds/default_hard_footstep.2.ogg
index fe39fd784b..be52a87011 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_hard_footstep.2.ogg and b/mods/CORE/mcl_sounds/sounds/default_hard_footstep.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_hard_footstep.3.ogg b/mods/CORE/mcl_sounds/sounds/default_hard_footstep.3.ogg
index 5030e0607a..a342787dd0 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_hard_footstep.3.ogg and b/mods/CORE/mcl_sounds/sounds/default_hard_footstep.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_dig.1.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_dig.1.ogg
new file mode 100644
index 0000000000..97399c8310
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_dig.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_dig.2.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_dig.2.ogg
new file mode 100644
index 0000000000..8a5da119b3
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_dig.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_dig.3.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_dig.3.ogg
new file mode 100644
index 0000000000..765fb9be1b
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_dig.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_dug.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_dug.ogg
new file mode 100644
index 0000000000..ae37673e09
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_dug.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_footstep.1.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_footstep.1.ogg
new file mode 100644
index 0000000000..c235f1eff7
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_footstep.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_footstep.2.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_footstep.2.ogg
new file mode 100644
index 0000000000..61d2c990fe
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_footstep.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_ice_footstep.3.ogg b/mods/CORE/mcl_sounds/sounds/default_ice_footstep.3.ogg
new file mode 100644
index 0000000000..2ecbb431c0
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_ice_footstep.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_metal_footstep.1.ogg b/mods/CORE/mcl_sounds/sounds/default_metal_footstep.1.ogg
index 841286bdc3..49fe89ba84 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_metal_footstep.1.ogg and b/mods/CORE/mcl_sounds/sounds/default_metal_footstep.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_metal_footstep.2.ogg b/mods/CORE/mcl_sounds/sounds/default_metal_footstep.2.ogg
index aa61ed3386..878711d5bc 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_metal_footstep.2.ogg and b/mods/CORE/mcl_sounds/sounds/default_metal_footstep.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_metal_footstep.3.ogg b/mods/CORE/mcl_sounds/sounds/default_metal_footstep.3.ogg
index 4cc1ca47a3..2a566a83ae 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_metal_footstep.3.ogg and b/mods/CORE/mcl_sounds/sounds/default_metal_footstep.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_sand_footstep.1.ogg b/mods/CORE/mcl_sounds/sounds/default_sand_footstep.1.ogg
index 65b68c7e6e..b92feabbb2 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_sand_footstep.1.ogg and b/mods/CORE/mcl_sounds/sounds/default_sand_footstep.1.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_sand_footstep.2.ogg b/mods/CORE/mcl_sounds/sounds/default_sand_footstep.2.ogg
index 57f35f30a2..6bc5da3e86 100644
Binary files a/mods/CORE/mcl_sounds/sounds/default_sand_footstep.2.ogg and b/mods/CORE/mcl_sounds/sounds/default_sand_footstep.2.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_sand_footstep.3.ogg b/mods/CORE/mcl_sounds/sounds/default_sand_footstep.3.ogg
new file mode 100644
index 0000000000..880306fd39
Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/default_sand_footstep.3.ogg differ
diff --git a/mods/CORE/mcl_sounds/sounds/default_water_footstep.4.ogg b/mods/CORE/mcl_sounds/sounds/default_water_footstep.4.ogg
deleted file mode 100644
index 6f1eab8245..0000000000
Binary files a/mods/CORE/mcl_sounds/sounds/default_water_footstep.4.ogg and /dev/null differ
diff --git a/mods/ENTITIES/mcl_mobs/spawning.lua b/mods/ENTITIES/mcl_mobs/spawning.lua
index a8250c19e0..01ef2a823d 100644
--- a/mods/ENTITIES/mcl_mobs/spawning.lua
+++ b/mods/ENTITIES/mcl_mobs/spawning.lua
@@ -402,11 +402,9 @@ local two_pi = 2 * math.pi
local function get_next_mob_spawn_pos(pos)
local distance = math_random(25, 32)
local angle = math_random() * two_pi
- return {
- x = math_round(pos.x + distance * math_cos(angle)),
- y = pos.y,
- z = math_round(pos.z + distance * math_sin(angle))
- }
+ local xoff = math_round(distance * math_cos(angle))
+ local yoff = math_round(distance * math_sin(angle))
+ return vector.offset(pos, xoff, 0, yoff)
end
local function decypher_limits(posy)
@@ -559,7 +557,7 @@ local S = minetest.get_translator("mcl_mobs")
minetest.register_chatcommand("spawn_mob",{
privs = { debug = true },
- description=S("spawn_mob is a chatcommand that allows you to type in the name of a mob without 'typing mobs_mc:' all the time like so; 'spawn_mob spider'. however, there is more you can do with this special command, currently you can edit any number, boolian, and string variable you choose with this format: spawn_mob 'any_mob:var:'. any_mob being your mob of choice, mobs_variable being the variable, and variable value being the value of the chosen variable. and example of this format: \n spawn_mob skeleton:var:\n this would spawn a skeleton that wouldn't attack you. REMEMBER-THIS> when changing a number value always prefix it with 'NUM', example: \n spawn_mob skeleton:var:\n this setting the skelly's jump height to 10. if you want to make multiple changes to a mob, you can, example: \n spawn_mob skeleton:var::var::var::var:\n etc."),
+ description=S("spawn_mob is a chatcommand that allows you to type in the name of a mob without 'typing mobs_mc:' all the time like so; 'spawn_mob spider'. however, there is more you can do with this special command, currently you can edit any number, boolean, and string variable you choose with this format: spawn_mob 'any_mob:var:'. any_mob being your mob of choice, mobs_variable being the variable, and variable value being the value of the chosen variable. and example of this format: \n spawn_mob skeleton:var:\n this would spawn a skeleton that wouldn't attack you. REMEMBER-THIS> when changing a number value always prefix it with 'NUM', example: \n spawn_mob skeleton:var:\n this setting the skelly's jump height to 10. if you want to make multiple changes to a mob, you can, example: \n spawn_mob skeleton:var::var::var::var:\n etc."),
func = function(n,param)
local pos = minetest.get_player_by_name(n):get_pos()
@@ -579,15 +577,14 @@ minetest.register_chatcommand("spawn_mob",{
local mob = mcl_mobs.spawn(pos,mobname)
- for c=1, #modifiers do
- modifs = modifiers[c]
+ if mob then
+ for c=1, #modifiers do
+ modifs = modifiers[c]
- local mod1 = string.find(modifs, ":")
- local mod_start = string.find(modifs, "<")
- local mod_vals = string.find(modifs, "=")
- local mod_end = string.find(modifs, ">")
- local mod_end = string.find(modifs, ">")
- if mob then
+ local mod1 = string.find(modifs, ":")
+ local mod_start = string.find(modifs, "<")
+ local mod_vals = string.find(modifs, "=")
+ local mod_end = string.find(modifs, ">")
local mob_entity = mob:get_luaentity()
if string.sub(modifs, mod1+1, mod1+3) == "var" then
if mod1 and mod_start and mod_vals and mod_end then
@@ -618,14 +615,12 @@ minetest.register_chatcommand("spawn_mob",{
minetest.log("warning", n.." couldn't modify "..mobname.." at "..minetest.pos_to_string(pos).. ", missing modification type")
end
end
- end
-
- if mob then
- return true, mobname.." spawned at "..minetest.pos_to_string(pos),
minetest.log("action", n.." spawned "..mobname.." at "..minetest.pos_to_string(pos))
+ return true, mobname.." spawned at "..minetest.pos_to_string(pos)
+ else
+ return false, "Couldn't spawn "..mobname
end
- return false, "Couldn't spawn "..mobname
end
})
diff --git a/mods/ENTITIES/mobs_mc/cod.lua b/mods/ENTITIES/mobs_mc/cod.lua
index 24f3131b3a..bc65faebed 100644
--- a/mods/ENTITIES/mobs_mc/cod.lua
+++ b/mods/ENTITIES/mobs_mc/cod.lua
@@ -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,},
diff --git a/mods/ENTITIES/mobs_mc/cow+mooshroom.lua b/mods/ENTITIES/mobs_mc/cow+mooshroom.lua
index 5ac5912a40..9de5d1ccef 100644
--- a/mods/ENTITIES/mobs_mc/cow+mooshroom.lua
+++ b/mods/ENTITIES/mobs_mc/cow+mooshroom.lua
@@ -12,7 +12,7 @@ local cow_def = {
xp_min = 1,
xp_max = 3,
collisionbox = {-0.45, -0.01, -0.45, 0.45, 1.39, 0.45},
- spawn_in_group = 8,
+ spawn_in_group = 4,
spawn_in_group_min = 3,
visual = "mesh",
mesh = "mobs_mc_cow.b3d",
diff --git a/mods/ENTITIES/mobs_mc/mod.conf b/mods/ENTITIES/mobs_mc/mod.conf
index 89964c8359..5b94879b27 100644
--- a/mods/ENTITIES/mobs_mc/mod.conf
+++ b/mods/ENTITIES/mobs_mc/mod.conf
@@ -2,4 +2,4 @@ name = mobs_mc
author = maikerumine
description = Adds Minecraft-like monsters and animals.
depends = mcl_init, mcl_particles, mcl_mobs, mcl_wip, mcl_core, mcl_util
-optional_depends = default, mcl_tnt, mcl_bows, mcl_throwing, mcl_fishing, bones, mesecons_materials, mobs_mc_gameconfig, doc_items
+optional_depends = default, mcl_tnt, mcl_bows, mcl_throwing, mcl_fishing, bones, mesecons_materials, doc_items
diff --git a/mods/ENTITIES/mobs_mc/salmon.lua b/mods/ENTITIES/mobs_mc/salmon.lua
index f536482443..873d4bb74f 100644
--- a/mods/ENTITIES/mobs_mc/salmon.lua
+++ b/mods/ENTITIES/mobs_mc/salmon.lua
@@ -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,},
diff --git a/mods/ENTITIES/mobs_mc/slime+magma_cube.lua b/mods/ENTITIES/mobs_mc/slime+magma_cube.lua
index c6de471e3e..31ecad1879 100644
--- a/mods/ENTITIES/mobs_mc/slime+magma_cube.lua
+++ b/mods/ENTITIES/mobs_mc/slime+magma_cube.lua
@@ -1,5 +1,8 @@
--License for code WTFPL and otherwise stated in readmes
+-- FIXME: Slimes should spawn only in "slime chunks" which make up only
+-- 10% of the map.
+--
local S = minetest.get_translator("mobs_mc")
-- Returns a function that spawns children in a circle around pos.
@@ -7,46 +10,47 @@ local S = minetest.get_translator("mobs_mc")
-- self: mob reference
-- pos: position of "mother" mob
-- child_mod: Mob to spawn
--- children_count: Number of children to spawn
-- spawn_distance: Spawn distance from "mother" mob
-- eject_speed: Initial speed of child mob away from "mother" mob
-local spawn_children_on_die = function(child_mob, children_count, spawn_distance, eject_speed)
+local spawn_children_on_die = function(child_mob, spawn_distance, eject_speed)
return function(self, pos)
- local angle, posadd, newpos, dir
+ local posadd, newpos, dir
if not eject_speed then
eject_speed = 1
end
local mndef = minetest.registered_nodes[minetest.get_node(pos).name]
local mother_stuck = mndef and mndef.walkable
- angle = math.random(0, math.pi*2)
+ local angle = math.random(0, math.pi*2)
local children = {}
- for i=1,children_count do
- dir = {x=math.cos(angle),y=0,z=math.sin(angle)}
- posadd = vector.multiply(vector.normalize(dir), spawn_distance)
- newpos = vector.add(pos, posadd)
+ local spawn_count = math.random(2, 4)
+ for i = 1, spawn_count do
+ dir = vector.new(math.cos(angle), 0, math.sin(angle))
+ posadd = vector.normalize(dir) * spawn_distance
+ newpos = pos + posadd
-- If child would end up in a wall, use position of the "mother", unless
-- the "mother" was stuck as well
- local speed_penalty = 1
- local cndef = minetest.registered_nodes[minetest.get_node(newpos).name]
- if (not mother_stuck) and cndef and cndef.walkable then
- newpos = pos
- speed_penalty = 0.5
+ if not mother_stuck then
+ local cndef = minetest.registered_nodes[minetest.get_node(newpos).name]
+ if cndef and cndef.walkable then
+ newpos = pos
+ eject_speed = eject_speed * 0.5
+ end
end
local mob = minetest.add_entity(newpos, child_mob)
- if (not mother_stuck) then
- mob:set_velocity(vector.multiply(dir, eject_speed * speed_penalty))
+ if not mother_stuck then
+ mob:set_velocity(dir * eject_speed)
end
mob:set_yaw(angle - math.pi/2)
table.insert(children, mob)
- angle = angle + (math.pi*2)/children_count
+ angle = angle + (math.pi*2) / spawn_count
end
-- If mother was murdered, children attack the killer after 1 second
if self.state == "attack" then
minetest.after(1.0, function(children, enemy)
- for c=1, #children do
- local child = children[c]
- local le = child:get_luaentity()
- if le ~= nil then
+ local le
+ for c = 1, #children do
+ le = children[c]:get_luaentity()
+ if le then
le.state = "attack"
le.attack = enemy
end
@@ -106,7 +110,7 @@ local slime_big = {
jump_height = 5.2,
fear_height = 0,
spawn_small_alternative = "mobs_mc:slime_small",
- on_die = spawn_children_on_die("mobs_mc:slime_small", 4, 1.0, 1.5),
+ on_die = spawn_children_on_die("mobs_mc:slime_small", 1.0, 1.5),
use_texture_alpha = true,
}
mcl_mobs.register_mob("mobs_mc:slime_big", slime_big)
@@ -125,7 +129,7 @@ slime_small.walk_velocity = 1.3
slime_small.run_velocity = 1.3
slime_small.jump_height = 4.3
slime_small.spawn_small_alternative = "mobs_mc:slime_tiny"
-slime_small.on_die = spawn_children_on_die("mobs_mc:slime_tiny", 4, 0.6, 1.0)
+slime_small.on_die = spawn_children_on_die("mobs_mc:slime_tiny", 0.6, 1.0)
mcl_mobs.register_mob("mobs_mc:slime_small", slime_small)
local slime_tiny = table.copy(slime_big)
@@ -153,140 +157,127 @@ slime_tiny.on_die = nil
mcl_mobs.register_mob("mobs_mc:slime_tiny", slime_tiny)
-local smin = mcl_vars.mg_overworld_min
-local smax = mobs_mc.water_level - 23
+local water_level = mobs_mc.water_level
+
+local cave_biomes = {
+ "FlowerForest_underground",
+ "JungleEdge_underground",
+ "StoneBeach_underground",
+ "MesaBryce_underground",
+ "Mesa_underground",
+ "RoofedForest_underground",
+ "Jungle_underground",
+ "Swampland_underground",
+ "MushroomIsland_underground",
+ "BirchForest_underground",
+ "Plains_underground",
+ "MesaPlateauF_underground",
+ "ExtremeHills_underground",
+ "MegaSpruceTaiga_underground",
+ "BirchForestM_underground",
+ "SavannaM_underground",
+ "MesaPlateauFM_underground",
+ "Desert_underground",
+ "Savanna_underground",
+ "Forest_underground",
+ "SunflowerPlains_underground",
+ "ColdTaiga_underground",
+ "IcePlains_underground",
+ "IcePlainsSpikes_underground",
+ "MegaTaiga_underground",
+ "Taiga_underground",
+ "ExtremeHills+_underground",
+ "JungleM_underground",
+ "ExtremeHillsM_underground",
+ "JungleEdgeM_underground",
+ "MangroveSwamp_underground"
+}
+
+local cave_min = mcl_vars.mg_overworld_min
+local cave_max = water_level - 23
+
+local swampy_biomes = {"Swampland", "MangroveSwamp"}
+local swamp_light_max = 7
+local swamp_min = water_level
+local swamp_max = water_level + 27
mcl_mobs:spawn_specific(
"mobs_mc:slime_tiny",
"overworld",
"ground",
-{
-"FlowerForest_underground",
-"JungleEdge_underground",
-"StoneBeach_underground",
-"MesaBryce_underground",
-"Mesa_underground",
-"RoofedForest_underground",
-"Jungle_underground",
-"Swampland_underground",
-"MushroomIsland_underground",
-"BirchForest_underground",
-"Plains_underground",
-"MesaPlateauF_underground",
-"ExtremeHills_underground",
-"MegaSpruceTaiga_underground",
-"BirchForestM_underground",
-"SavannaM_underground",
-"MesaPlateauFM_underground",
-"Desert_underground",
-"Savanna_underground",
-"Forest_underground",
-"SunflowerPlains_underground",
-"ColdTaiga_underground",
-"IcePlains_underground",
-"IcePlainsSpikes_underground",
-"MegaTaiga_underground",
-"Taiga_underground",
-"ExtremeHills+_underground",
-"JungleM_underground",
-"ExtremeHillsM_underground",
-"JungleEdgeM_underground",
-},
+cave_biomes,
0,
minetest.LIGHT_MAX+1,
30,
12000,
4,
-smin,
-smax)
+cave_min,
+cave_max)
+
+mcl_mobs:spawn_specific(
+"mobs_mc:slime_tiny",
+"overworld",
+"ground",
+swampy_biomes,
+0,
+swamp_light_max,
+30,
+12000,
+4,
+swamp_min,
+swamp_max)
mcl_mobs:spawn_specific(
"mobs_mc:slime_small",
"overworld",
"ground",
-{
-"FlowerForest_underground",
-"JungleEdge_underground",
-"StoneBeach_underground",
-"MesaBryce_underground",
-"Mesa_underground",
-"RoofedForest_underground",
-"Jungle_underground",
-"Swampland_underground",
-"MushroomIsland_underground",
-"BirchForest_underground",
-"Plains_underground",
-"MesaPlateauF_underground",
-"ExtremeHills_underground",
-"MegaSpruceTaiga_underground",
-"BirchForestM_underground",
-"SavannaM_underground",
-"MesaPlateauFM_underground",
-"Desert_underground",
-"Savanna_underground",
-"Forest_underground",
-"SunflowerPlains_underground",
-"ColdTaiga_underground",
-"IcePlains_underground",
-"IcePlainsSpikes_underground",
-"MegaTaiga_underground",
-"Taiga_underground",
-"ExtremeHills+_underground",
-"JungleM_underground",
-"ExtremeHillsM_underground",
-"JungleEdgeM_underground",
-},
+cave_biomes,
0,
minetest.LIGHT_MAX+1,
30,
8500,
4,
-smin,
-smax)
+cave_min,
+cave_max)
+
+mcl_mobs:spawn_specific(
+"mobs_mc:slime_small",
+"overworld",
+"ground",
+swampy_biomes,
+0,
+swamp_light_max,
+30,
+8500,
+4,
+swamp_min,
+swamp_max)
mcl_mobs:spawn_specific(
"mobs_mc:slime_big",
"overworld",
"ground",
-{
-"FlowerForest_underground",
-"JungleEdge_underground",
-"StoneBeach_underground",
-"MesaBryce_underground",
-"Mesa_underground",
-"RoofedForest_underground",
-"Jungle_underground",
-"Swampland_underground",
-"MushroomIsland_underground",
-"BirchForest_underground",
-"Plains_underground",
-"MesaPlateauF_underground",
-"ExtremeHills_underground",
-"MegaSpruceTaiga_underground",
-"BirchForestM_underground",
-"SavannaM_underground",
-"MesaPlateauFM_underground",
-"Desert_underground",
-"Savanna_underground",
-"Forest_underground",
-"SunflowerPlains_underground",
-"ColdTaiga_underground",
-"IcePlains_underground",
-"IcePlainsSpikes_underground",
-"MegaTaiga_underground",
-"Taiga_underground",
-"ExtremeHills+_underground",
-"JungleM_underground",
-"ExtremeHillsM_underground",
-"JungleEdgeM_underground",
-},
+cave_biomes,
0,
minetest.LIGHT_MAX+1,
30,
10000,
4,
-smin,
-smax)
+cave_min,
+cave_max)
+
+mcl_mobs:spawn_specific(
+"mobs_mc:slime_big",
+"overworld",
+"ground",
+swampy_biomes,
+0,
+swamp_light_max,
+30,
+10000,
+4,
+swamp_min,
+swamp_max)
-- Magma cube
local magma_cube_big = {
@@ -345,7 +336,7 @@ local magma_cube_big = {
walk_chance = 0,
fear_height = 0,
spawn_small_alternative = "mobs_mc:magma_cube_small",
- on_die = spawn_children_on_die("mobs_mc:magma_cube_small", 3, 0.8, 1.5),
+ on_die = spawn_children_on_die("mobs_mc:magma_cube_small", 0.8, 1.5),
fire_resistant = true,
}
mcl_mobs.register_mob("mobs_mc:magma_cube_big", magma_cube_big)
@@ -368,7 +359,7 @@ magma_cube_small.damage = 4
magma_cube_small.reach = 2.75
magma_cube_small.armor = 66
magma_cube_small.spawn_small_alternative = "mobs_mc:magma_cube_tiny"
-magma_cube_small.on_die = spawn_children_on_die("mobs_mc:magma_cube_tiny", 4, 0.6, 1.0)
+magma_cube_small.on_die = spawn_children_on_die("mobs_mc:magma_cube_tiny", 0.6, 1.0)
mcl_mobs.register_mob("mobs_mc:magma_cube_small", magma_cube_small)
local magma_cube_tiny = table.copy(magma_cube_big)
@@ -394,59 +385,52 @@ magma_cube_tiny.on_die = nil
mcl_mobs.register_mob("mobs_mc:magma_cube_tiny", magma_cube_tiny)
-local mmin = mcl_vars.mg_nether_min
-local mmax = mcl_vars.mg_nether_max
+local magma_cube_biomes = {"Nether", "BasaltDelta"}
+local nether_min = mcl_vars.mg_nether_min
+local nether_max = mcl_vars.mg_nether_max
mcl_mobs:spawn_specific(
"mobs_mc:magma_cube_tiny",
"nether",
"ground",
-{
-"Nether",
-"BasaltDelta",
-},
+magma_cube_biomes,
0,
minetest.LIGHT_MAX+1,
30,
15000,
4,
-mmin,
-mmax)
-
+nether_min,
+nether_max)
mcl_mobs:spawn_specific(
"mobs_mc:magma_cube_small",
"nether",
"ground",
-{
-"Nether",
-"BasaltDelta",
-},
+magma_cube_biomes,
0,
minetest.LIGHT_MAX+1,
30,
15500,
4,
-mmin,
-mmax)
+nether_min,
+nether_max)
mcl_mobs:spawn_specific(
"mobs_mc:magma_cube_big",
"nether",
"ground",
-{
-"Nether",
-"BasaltDelta",
-},
+magma_cube_biomes,
0,
minetest.LIGHT_MAX+1,
30,
16000,
4,
-mmin,
-mmax)
+nether_min,
+nether_max)
-- spawn eggs
mcl_mobs.register_egg("mobs_mc:magma_cube_big", S("Magma Cube"), "#350000", "#fcfc00")
mcl_mobs.register_egg("mobs_mc:slime_big", S("Slime"), "#52a03e", "#7ebf6d")
+
+-- FIXME: add spawn eggs for small and tiny slimes and magma cubes
diff --git a/mods/ENTITIES/mobs_mc/squid.lua b/mods/ENTITIES/mobs_mc/squid.lua
index 72f6702a52..a692fd8d47 100644
--- a/mods/ENTITIES/mobs_mc/squid.lua
+++ b/mods/ENTITIES/mobs_mc/squid.lua
@@ -40,7 +40,7 @@ mcl_mobs.register_mob("mobs_mc:squid", {
run_end = 60,
},
drops = {
- {name = "mcl_dye:black",
+ {name = "mcl_mobitems:ink_sac",
chance = 1,
min = 1,
max = 3,
diff --git a/mods/ENTITIES/mobs_mc/tropical_fish.lua b/mods/ENTITIES/mobs_mc/tropical_fish.lua
index 47f59a92eb..bb9b63f64d 100644
--- a/mods/ENTITIES/mobs_mc/tropical_fish.lua
+++ b/mods/ENTITIES/mobs_mc/tropical_fish.lua
@@ -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,},
diff --git a/mods/ENTITIES/mobs_mc/villager.lua b/mods/ENTITIES/mobs_mc/villager.lua
index bf2a07d51e..9215416b8b 100644
--- a/mods/ENTITIES/mobs_mc/villager.lua
+++ b/mods/ENTITIES/mobs_mc/villager.lua
@@ -479,7 +479,7 @@ local professions = {
},
{
{ { "mcl_core:gold_ingot", 3, 3 }, E1 },
- { E1, { "mcl_dye:blue", 1, 1 } },
+ { E1, { "mcl_core:lapis", 1, 1 } },
},
{
{ { "mcl_mobitems:rabbit_foot", 2, 2 }, E1 },
diff --git a/mods/ITEMS/mcl_beds/api.lua b/mods/ITEMS/mcl_beds/api.lua
index 36c4a907a3..05a95f79d5 100644
--- a/mods/ITEMS/mcl_beds/api.lua
+++ b/mods/ITEMS/mcl_beds/api.lua
@@ -124,7 +124,7 @@ end
local default_sounds
if minetest.get_modpath("mcl_sounds") then
default_sounds = mcl_sounds.node_sound_wood_defaults({
- footstep = { gain = 0.5, name = "mcl_sounds_cloth" },
+ footstep = mcl_sounds.node_sound_wool_defaults().footstep,
})
end
diff --git a/mods/ITEMS/mcl_cocoas/init.lua b/mods/ITEMS/mcl_cocoas/init.lua
index cc3b887053..7c22927f84 100644
--- a/mods/ITEMS/mcl_cocoas/init.lua
+++ b/mods/ITEMS/mcl_cocoas/init.lua
@@ -62,8 +62,6 @@ function mcl_cocoas.grow(pos)
return false
end
--- Note: cocoa beans are implemented as mcl_dye:brown
-
-- Cocoa definition
-- 1st stage
local crop_def = {
@@ -78,7 +76,7 @@ local crop_def = {
sunlight_propagates = true,
paramtype2 = "facedir",
walkable = true,
- drop = "mcl_dye:brown",
+ drop = "mcl_cocoas:cocoa_beans",
collision_box = {
type = "fixed",
fixed = {
@@ -142,9 +140,20 @@ crop_def.selection_box = {
{-0.25, -0.3125, -0.0625, 0.25, 0.5, 0.5},
},
}
-crop_def.drop = "mcl_dye:brown 3"
+crop_def.drop = "mcl_cocoas:cocoa_beans 3"
minetest.register_node("mcl_cocoas:cocoa_3", table.copy(crop_def))
+minetest.register_craftitem("mcl_cocoas:cocoa_beans", {
+ description = S("Cocoa Beans"),
+ _tt_help = S("Grows at the side of jungle trees"),
+ _doc_items_longdesc = S("Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye."),
+ _doc_items_usagehelp = S("Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa."),
+ inventory_image = "mcl_cocoas_cocoa_beans.png",
+ groups = {craftitem = 1, compostability = 65},
+ on_place = function(itemstack, placer, pointed_thing)
+ return cocoa_place(itemstack, placer, pointed_thing, "mcl_cocoas:cocoa_1")
+ end,
+})
minetest.register_abm({
label = "Cocoa pod growth",
diff --git a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.de.tr b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.de.tr
index 479e3845e4..3740c41cfa 100644
--- a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.de.tr
+++ b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.de.tr
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=Kakaobohnen
+Grows at the side of jungle trees=Wächst an der Seite von Dschungelbäumen
+Cocoa beans can be used to plant cocoa pods, bake chocolate cookies or craft brown dye.=Kakaobohnen können benutzt werden, um Kakao anzupflanzen, Kekse zu backen oder braune Farbstoffe herzustellen.
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=Rechtsklicken Sie an die Seite eines Dschungelbaumstamms (Dschungelholz), um eine junge Kakaoschote zu pflanzen.
Premature Cocoa Pod=Junge Kakaoschote
Cocoa pods grow on the side of jungle trees in 3 stages.=Kakaoschoten wachsen an der Seite von Dschungelbäumen in 3 Stufen.
Medium Cocoa Pod=Mittelgroße Kakaoschote
diff --git a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.es.tr b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.es.tr
index e1477c79cb..c76fc512f1 100644
--- a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.es.tr
+++ b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.es.tr
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=Granos de cacao
+Grows at the side of jungle trees=Crece al lado de los árboles de la jungla
+Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=Los granos de cacao se pueden usar para plantar cacao, hornear galletas o hacer tintes marrones.
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=Haga clic derecho en el costado del tronco de un árbol de la jungla para plantar un cacao joven.
Premature Cocoa Pod=Vaina de cacao prematura
Cocoa pods grow on the side of jungle trees in 3 stages.=Las vainas de cacao crecen al lado de los árboles de jungla en 3 etapas.
Medium Cocoa Pod=Vaina de cacao mediana
diff --git a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.fr.tr b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.fr.tr
index bf54689534..5d64eb5be7 100644
--- a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.fr.tr
+++ b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.fr.tr
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=Fèves de Cacao
+Grows at the side of jungle trees=Pousse à côté des arbres de la jungle
+Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=Les fèves de cacao peuvent être utilisées pour planter du cacao, faire des biscuits ou fabriquer de la teinture brune.
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=Clic droit sur le côté d'un tronc d'arbre de la jungle (Bois Acajou) pour planter un jeune cacaoyer.
Premature Cocoa Pod=Gousse de cacao prématurée
Cocoa pods grow on the side of jungle trees in 3 stages.=Les cabosses de cacao poussent sur le côté des arbres d'Acajou en 3 étapes.
Medium Cocoa Pod=Gousse de cacao moyenne
diff --git a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.pl.tr b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.pl.tr
index bfd0d707ed..83df9be7a0 100644
--- a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.pl.tr
+++ b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.pl.tr
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=Ziarna kakaowe
+Grows at the side of jungle trees=Rośnie na boku tropikalnych drzew
+Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=Ziarna kakaowe mogą być używane do sadzenia kakao, pieczenia ciasteczek lub robienia brązowego barwnika.
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=Naciśnij prawym na boku tropikalnego pnia (Tropikalne drewno) aby zasadzić młode kakao.
Premature Cocoa Pod=Niedojrzała roślina kakao
Cocoa pods grow on the side of jungle trees in 3 stages.=Roślina kakao rośnie na bokach tropikalnych drzew w 3 etapach
Medium Cocoa Pod=Średnio-dojrzała roślina kakao
diff --git a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.ru.tr b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.ru.tr
index 524c28bcc4..064c01fd38 100644
--- a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.ru.tr
+++ b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.ru.tr
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=Какао-бобы
+Grows at the side of jungle trees=Растут на стволах деревьев джунглей
+Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=Какао-бобы можно использовать для посадки какао, выпечки печенья или изготовления коричневого красителя.
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=Кликните правой по боковой части ствола дерева джунглей, чтобы посадить молодое какао.
Premature Cocoa Pod=Молодой стручок какао
Cocoa pods grow on the side of jungle trees in 3 stages.=Стручки какао растут на деревьях джунглей в 3 этапа.
Medium Cocoa Pod=Средний стручок какао
diff --git a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.zh_TW.tr b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.zh_TW.tr
index d71e2b11b1..0387461554 100644
--- a/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.zh_TW.tr
+++ b/mods/ITEMS/mcl_cocoas/locale/mcl_cocoas.zh_TW.tr
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=可可豆
+Grows at the side of jungle trees=在叢林木側生長
+Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=可可豆可用於種植可可、烘烤餅乾或製作棕色染料。
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=右鍵點擊叢林木的一側,可以種植一個可可。
Premature Cocoa Pod=成長中的可可豆莢(第1階段)
Cocoa pods grow on the side of jungle trees in 3 stages.=可可莢果分3個階段生長在叢林樹的側面。
Medium Cocoa Pod=成長中的可可豆莢(第2階段)
diff --git a/mods/ITEMS/mcl_cocoas/locale/template.txt b/mods/ITEMS/mcl_cocoas/locale/template.txt
index f68318cae8..cb8c5bbfdb 100644
--- a/mods/ITEMS/mcl_cocoas/locale/template.txt
+++ b/mods/ITEMS/mcl_cocoas/locale/template.txt
@@ -1,4 +1,8 @@
# textdomain: mcl_cocoas
+Cocoa Beans=
+Grows at the side of jungle trees=
+Cocoa beans can be used to plant cocoa, bake cookies or craft brown dye.=
+Right click on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa.=
Premature Cocoa Pod=
Cocoa pods grow on the side of jungle trees in 3 stages.=
Medium Cocoa Pod=
diff --git a/mods/ITEMS/mcl_cocoas/textures/mcl_cocoas_cocoa_beans.png b/mods/ITEMS/mcl_cocoas/textures/mcl_cocoas_cocoa_beans.png
new file mode 100644
index 0000000000..877ee69dc2
Binary files /dev/null and b/mods/ITEMS/mcl_cocoas/textures/mcl_cocoas_cocoa_beans.png differ
diff --git a/mods/ITEMS/mcl_composters/init.lua b/mods/ITEMS/mcl_composters/init.lua
index 56422d8b5e..e1e39aefc1 100644
--- a/mods/ITEMS/mcl_composters/init.lua
+++ b/mods/ITEMS/mcl_composters/init.lua
@@ -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
diff --git a/mods/ITEMS/mcl_core/crafting.lua b/mods/ITEMS/mcl_core/crafting.lua
index df456cbdcc..ffba04a7ba 100644
--- a/mods/ITEMS/mcl_core/crafting.lua
+++ b/mods/ITEMS/mcl_core/crafting.lua
@@ -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" },
},
@@ -298,14 +298,14 @@ minetest.register_craft({
minetest.register_craft({
output = "mcl_core:lapisblock",
recipe = {
- {"mcl_dye:blue", "mcl_dye:blue", "mcl_dye:blue"},
- {"mcl_dye:blue", "mcl_dye:blue", "mcl_dye:blue"},
- {"mcl_dye:blue", "mcl_dye:blue", "mcl_dye:blue"},
+ {"mcl_core:lapis", "mcl_core:lapis", "mcl_core:lapis"},
+ {"mcl_core:lapis", "mcl_core:lapis", "mcl_core:lapis"},
+ {"mcl_core:lapis", "mcl_core:lapis", "mcl_core:lapis"},
}
})
minetest.register_craft({
- output = "mcl_dye:blue 9",
+ output = "mcl_core:lapis 9",
recipe = {
{"mcl_core:lapisblock"},
}
@@ -482,7 +482,7 @@ minetest.register_craft({
minetest.register_craft({
type = "cooking",
- output = "mcl_dye:blue",
+ output = "mcl_core:lapis",
recipe = "mcl_core:stone_with_lapis",
cooktime = 10,
})
diff --git a/mods/ITEMS/mcl_core/craftitems.lua b/mods/ITEMS/mcl_core/craftitems.lua
index 94575baca5..32a5f7cbc8 100644
--- a/mods/ITEMS/mcl_core/craftitems.lua
+++ b/mods/ITEMS/mcl_core/craftitems.lua
@@ -101,6 +101,14 @@ minetest.register_craftitem("mcl_core:emerald", {
groups = { craftitem=1 },
})
+minetest.register_craftitem("mcl_core:lapis", {
+ description = S("Lapis Lazuli"),
+ _doc_items_longdesc = S("Lapis Lazuli are required for enchanting items on an enchanting table."),
+ inventory_image = "mcl_core_lapis.png",
+ stack_max = 64,
+ groups = { craftitem=1 },
+})
+
minetest.register_craftitem("mcl_core:brick", {
description = S("Brick"),
_doc_items_longdesc = S("Bricks are used to craft brick blocks."),
diff --git a/mods/ITEMS/mcl_core/functions.lua b/mods/ITEMS/mcl_core/functions.lua
index c26f31a541..6ef9a86f9c 100644
--- a/mods/ITEMS/mcl_core/functions.lua
+++ b/mods/ITEMS/mcl_core/functions.lua
@@ -1559,7 +1559,7 @@ function mcl_core.register_snowed_node(itemstring_snowed, itemstring_clear, tile
end
if not sounds then
def.sounds = mcl_sounds.node_sound_dirt_defaults({
- footstep = { name = "pedology_snow_soft_footstep", gain = 0.5 }
+ footstep = mcl_sounds.node_sound_snow_defaults().footstep,
})
else
def.sounds = sounds
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.de.tr b/mods/ITEMS/mcl_core/locale/mcl_core.de.tr
index b064cebbef..f8a441fdc5 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.de.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.de.tr
@@ -130,6 +130,8 @@ Jungle Wood=Dschungelholz
Jungle Wood Planks=Dschungelholzplanken
Jungle leaves are grown from jungle trees.=Dschungelblätter wachsen an Dschungelbäumen.
Ladder=Leiter
+Lapis Lazuli=Lapislazuli
+Lapis Lazuli are required for enchanting items on an enchanting table.=Lapislazuli werden zum Verzaubern von Gegenständen auf einem Zaubertisch benötigt.
Lapis Lazuli Block=Lapislazuliblock
Lapis Lazuli Ore=Lapislazulierz
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=Lapislazulierz ist das Erz von Lapislazuli. Es kann relativ selten in Ansammlungen in der Nähe des Weltbodens gefunden werden.
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.es.tr b/mods/ITEMS/mcl_core/locale/mcl_core.es.tr
index 1937babd3f..0f86565207 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.es.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.es.tr
@@ -130,6 +130,8 @@ Jungle Wood=Tronco de jungla
Jungle Wood Planks=Madera de jungla
Jungle leaves are grown from jungle trees.=Las hojas de jungla se cultivan de los árboles de jungla.
Ladder=Escalera
+Lapis Lazuli=Lapislázuli
+Lapis Lazuli are required for enchanting items on an enchanting table.=Los lapislázuli son necesarios para encantar objetos en una mesa de encantamiento.
Lapis Lazuli Block=Bloque de lapislázuli
Lapis Lazuli Ore=Mena de lapislázuli
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=El mineral de lapislázuli es el mineral de lapislázuli. Rara vez se puede encontrar en grupos, se encuentra cerca del fondo del mundo.
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr b/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr
index b48f9310fe..ad6c09b08c 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr
@@ -130,6 +130,8 @@ Jungle Wood=Bûche d'Acajou
Jungle Wood Planks=Planches d'Acajou
Jungle leaves are grown from jungle trees.=Les feuilles d'Acajou sont cultivées à partir d'arbres d'Acajou.
Ladder=Échelle
+Lapis Lazuli=Lapis Lazuli
+Lapis Lazuli are required for enchanting items on an enchanting table.=Les lapis-lazuli sont nécessaires pour enchanter des objets sur une table d'enchantement.
Lapis Lazuli Block=Bloc de Lapis-Lazuli
Lapis Lazuli Ore=Minerai de Lapis-Lazuli
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=Le minerai de lapis-lazuli produit du lapis-lazuli. Il peut être rarement trouvé dans des filons près du fond du monde.
@@ -283,4 +285,4 @@ Grows on sand or dirt next to water=Pousse sur le sable ou la terre près de l'e
Stackable=Empilable
Crying Obsidian=Obsidienne pleureuse
Crying obsidian is a luminous obsidian that can generate as part of ruined portals.=L'obsidienne pleureuse est une obsidienne luminause qui peut être générée dans les portails en ruine.
-Enchanted Golden Apple=Pomme dorée enchantée
\ No newline at end of file
+Enchanted Golden Apple=Pomme dorée enchantée
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.pl.tr b/mods/ITEMS/mcl_core/locale/mcl_core.pl.tr
index 68dfbd3d0f..8e9d7cf8f0 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.pl.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.pl.tr
@@ -130,6 +130,8 @@ Jungle Wood=Tropikalne drewno
Jungle Wood Planks=Tropikalne deski
Jungle leaves are grown from jungle trees.=Tropikalne liście rosną na tropikalnych drzewach.
Ladder=Drabina
+Lapis Lazuli=Lazuryt
+Lapis Lazuli are required for enchanting items on an enchanting table.=Lapis Lazuli są wymagane do zaklinania przedmiotów na zaklinającym stole.
Lapis Lazuli Block=Blok lazurytu
Lapis Lazuli Ore=Ruda lazurytu
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=Ruda lazurytu jest rzadko występującym blokiem, który można znaleźć w grupach przy dnie świata.
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.ru.tr b/mods/ITEMS/mcl_core/locale/mcl_core.ru.tr
index 2d5b5462c3..831795792c 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.ru.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.ru.tr
@@ -130,6 +130,8 @@ Jungle Wood=Дерево джунглей
Jungle Wood Planks=Доски из дерева джунглей
Jungle leaves are grown from jungle trees.=Листва дерева джунглей произрастает на деревьях джунглей.
Ladder=Лестница
+Lapis Lazuli=Ляпис-лазурь
+Lapis Lazuli are required for enchanting items on an enchanting table.=Лазурит требуется для зачарования предметов на столе зачаровывания.
Lapis Lazuli Block=Ляпис-лазурный блок
Lapis Lazuli Ore=Ляпис-лазурная руда
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=Ляпис-лазурная руда это руда ляпис-лазури. Она изредка встречается в виде скоплений вблизи дна мира.
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.zh_TW.tr b/mods/ITEMS/mcl_core/locale/mcl_core.zh_TW.tr
index 1773418462..0e8280c6e4 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.zh_TW.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.zh_TW.tr
@@ -129,6 +129,8 @@ Jungle Wood=叢林原木
Jungle Wood Planks=叢林木材
Jungle leaves are grown from jungle trees.=叢林樹葉是由叢林樹生長出來的。
Ladder=梯子
+Lapis Lazuli=青金石
+Lapis Lazuli are required for enchanting items on an enchanting table.=为附魔台上的物品附魔需要青金石。
Lapis Lazuli Block=青金石磚
Lapis Lazuli Ore=青金石礦
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=青金石礦是青金石的礦石。在世界底部附近能發現成群的和稀有的青金石礦。
diff --git a/mods/ITEMS/mcl_core/locale/template.txt b/mods/ITEMS/mcl_core/locale/template.txt
index cd4b9b463c..a7798b9cdd 100644
--- a/mods/ITEMS/mcl_core/locale/template.txt
+++ b/mods/ITEMS/mcl_core/locale/template.txt
@@ -130,6 +130,8 @@ Jungle Wood=
Jungle Wood Planks=
Jungle leaves are grown from jungle trees.=
Ladder=
+Lapis Lazuli=
+Lapis Lazuli are required for enchanting items on an enchanting table.=
Lapis Lazuli Block=
Lapis Lazuli Ore=
Lapis lazuli ore is the ore of lapis lazuli. It can be rarely found in clusters near the bottom of the world.=
@@ -283,4 +285,4 @@ Grows on sand or dirt next to water=
Stackable=
Crying Obsidian=
Crying obsidian is a luminous obsidian that can generate as part of ruined portals.=
-Enchanted Golden Apple=
\ No newline at end of file
+Enchanted Golden Apple=
diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua
index 2a6192b72b..476bdf9ce4 100644
--- a/mods/ITEMS/mcl_core/nodes_base.lua
+++ b/mods/ITEMS/mcl_core/nodes_base.lua
@@ -187,11 +187,11 @@ minetest.register_node("mcl_core:stone_with_lapis", {
drop = {
max_items = 1,
items = {
- {items = {"mcl_dye:blue 8"},rarity = 5},
- {items = {"mcl_dye:blue 7"},rarity = 5},
- {items = {"mcl_dye:blue 6"},rarity = 5},
- {items = {"mcl_dye:blue 5"},rarity = 5},
- {items = {"mcl_dye:blue 4"}},
+ {items = {"mcl_core:lapis 8"},rarity = 5},
+ {items = {"mcl_core:lapis 7"},rarity = 5},
+ {items = {"mcl_core:lapis 6"},rarity = 5},
+ {items = {"mcl_core:lapis 5"},rarity = 5},
+ {items = {"mcl_core:lapis 4"}},
}
},
sounds = mcl_sounds.node_sound_stone_defaults(),
@@ -542,9 +542,7 @@ minetest.register_node("mcl_core:gravel", {
{items = {"mcl_core:gravel"}}
}
},
- sounds = mcl_sounds.node_sound_dirt_defaults({
- footstep = {name="default_gravel_footstep", gain=0.45},
- }),
+ sounds = mcl_sounds.node_sound_gravel_defaults(),
_mcl_blast_resistance = 0.6,
_mcl_hardness = 0.6,
_mcl_silk_touch_drop = true,
@@ -901,7 +899,7 @@ minetest.register_node("mcl_core:ice", {
stack_max = 64,
groups = {handy=1,pickaxey=1, slippery=3, building_block=1, ice=1},
drop = "",
- sounds = mcl_sounds.node_sound_glass_defaults(),
+ sounds = mcl_sounds.node_sound_ice_defaults(),
node_dig_prediction = "mcl_core:water_source",
after_dig_node = function(pos, oldnode)
mcl_core.melt_ice(pos)
@@ -919,7 +917,7 @@ minetest.register_node("mcl_core:packed_ice", {
stack_max = 64,
groups = {handy=1,pickaxey=1, slippery=3, building_block=1, ice=1},
drop = "",
- sounds = mcl_sounds.node_sound_glass_defaults(),
+ sounds = mcl_sounds.node_sound_ice_defaults(),
_mcl_blast_resistance = 0.5,
_mcl_hardness = 0.5,
_mcl_silk_touch_drop = true,
@@ -967,7 +965,7 @@ for i=0,3 do
stack_max = 64,
groups = {handy=1, frosted_ice=1, slippery=3, not_in_creative_inventory=1, ice=1},
drop = "",
- sounds = mcl_sounds.node_sound_glass_defaults(),
+ sounds = mcl_sounds.node_sound_ice_defaults(),
on_construct = function(pos)
local timer = minetest.get_node_timer(pos)
timer:start(1.5)
diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_lapis.png b/mods/ITEMS/mcl_core/textures/mcl_core_lapis.png
new file mode 100644
index 0000000000..e0e3023075
Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_lapis.png differ
diff --git a/mods/ITEMS/mcl_crimson/init.lua b/mods/ITEMS/mcl_crimson/init.lua
index 8170000b3c..ba680cff56 100644
--- a/mods/ITEMS/mcl_crimson/init.lua
+++ b/mods/ITEMS/mcl_crimson/init.lua
@@ -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)
diff --git a/mods/ITEMS/mcl_deepslate/init.lua b/mods/ITEMS/mcl_deepslate/init.lua
index 17beb6b522..a1182246ac 100644
--- a/mods/ITEMS/mcl_deepslate/init.lua
+++ b/mods/ITEMS/mcl_deepslate/init.lua
@@ -89,11 +89,11 @@ end
local lapis_drops = {
max_items = 1, items = {
- { items = { "mcl_dye:blue 8" }, rarity = 5 },
- { items = { "mcl_dye:blue 7" }, rarity = 5 },
- { items = { "mcl_dye:blue 6" }, rarity = 5 },
- { items = { "mcl_dye:blue 5" }, rarity = 5 },
- { items = { "mcl_dye:blue 4" } }
+ { items = { "mcl_core:lapis 8" }, rarity = 5 },
+ { items = { "mcl_core:lapis 7" }, rarity = 5 },
+ { items = { "mcl_core:lapis 6" }, rarity = 5 },
+ { items = { "mcl_core:lapis 5" }, rarity = 5 },
+ { items = { "mcl_core:lapis 4" } }
}
}
@@ -103,7 +103,7 @@ local deepslate_ores = {
{ "Gold", "mcl_raw_ores:raw_gold", "mcl_core:gold_ingot", 4, 0 },
{ "Emerald", "mcl_core:emerald", "mcl_core:emerald", 4, 6 },
{ "Diamond", "mcl_core:diamond", "mcl_core:diamond", 4, 4 },
- { "Lapis Lazuli", lapis_drops, "mcl_dye:blue", 3, 6 },
+ { "Lapis Lazuli", lapis_drops, "mcl_core:lapis", 3, 6 },
}
for _, p in pairs(deepslate_ores) do
diff --git a/mods/ITEMS/mcl_dye/init.lua b/mods/ITEMS/mcl_dye/init.lua
index 8296519cae..80219d298e 100644
--- a/mods/ITEMS/mcl_dye/init.lua
+++ b/mods/ITEMS/mcl_dye/init.lua
@@ -18,10 +18,6 @@ local S = minetest.get_translator(minetest.get_current_modname())
local math = math
local string = string
--- Other mods can use these for looping through available colors
-mcl_dye.basecolors = {"white", "grey", "black", "red", "yellow", "green", "cyan", "blue", "magenta"}
-mcl_dye.excolors = {"white", "lightgrey", "grey", "darkgrey", "black", "red", "orange", "yellow", "lime", "green", "aqua", "cyan", "sky_blue", "blue", "violet", "magenta", "red_violet"}
-
-- Base color groups:
-- - basecolor_white
-- - basecolor_grey
@@ -62,43 +58,43 @@ mcl_dye.excolors = {"white", "lightgrey", "grey", "darkgrey", "black", "red", "o
-- - unicolor_medium__s50
-- - unicolor_dark__s50
--- Local stuff
-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}},
- {"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("Ink Sac"), {dye=1, craftitem=1, basecolor_black=1, excolor_black=1, unicolor_black=1}},
- {"violet", "dye_violet", S("Purple Dye"), {dye=1, craftitem=1, basecolor_magenta=1, excolor_violet=1, unicolor_violet=1}},
- {"blue", "mcl_dye_blue", S("Lapis Lazuli"), {dye=1, craftitem=1, basecolor_blue=1, excolor_blue=1, unicolor_blue=1}},
- {"lightblue", "mcl_dye_light_blue", S("Light Blue Dye"), {dye=1, craftitem=1, basecolor_blue=1, excolor_blue=1, unicolor_light_blue=1}},
- {"cyan", "dye_cyan", S("Cyan Dye"), {dye=1, craftitem=1, basecolor_cyan=1, excolor_cyan=1, unicolor_cyan=1}},
- {"dark_green", "dye_dark_green", S("Cactus Green"),{dye=1, craftitem=1, basecolor_green=1, excolor_green=1, unicolor_dark_green=1}},
- {"green", "mcl_dye_lime", S("Lime Dye"), {dye=1, craftitem=1, basecolor_green=1, excolor_green=1, unicolor_green=1}},
- {"yellow", "dye_yellow", S("Dandelion Yellow"), {dye=1, craftitem=1, basecolor_yellow=1, excolor_yellow=1, unicolor_yellow=1}},
- {"brown", "mcl_dye_brown", S("Cocoa Beans"), {dye=1, craftitem=1, basecolor_brown=1, excolor_orange=1, unicolor_dark_orange=1, compostability = 65}},
- {"orange", "dye_orange", S("Orange Dye"), {dye=1, craftitem=1, basecolor_orange=1, excolor_orange=1, unicolor_orange=1}},
- {"red", "dye_red", S("Rose Red"), {dye=1, craftitem=1, basecolor_red=1, excolor_red=1, unicolor_red=1}},
- {"magenta", "dye_magenta", S("Magenta Dye"), {dye=1, craftitem=1, basecolor_magenta=1, excolor_red_violet=1,unicolor_red_violet=1}},
- {"pink", "dye_pink", S("Pink Dye"), {dye=1, craftitem=1, basecolor_red=1, excolor_red=1, unicolor_light_red=1}},
+local dyes = {
+ {"white", S("White Dye"), {basecolor_white=1, excolor_white=1, unicolor_white=1}},
+ {"grey", S("Light Grey Dye"), {basecolor_grey=1, excolor_grey=1, unicolor_grey=1}},
+ {"dark_grey", S("Grey Dye"), {basecolor_grey=1, excolor_darkgrey=1, unicolor_darkgrey=1}},
+ {"black", S("Black Dye"), {basecolor_black=1, excolor_black=1, unicolor_black=1}},
+ {"violet", S("Purple Dye"), {basecolor_magenta=1, excolor_violet=1, unicolor_violet=1}},
+ {"blue", S("Blue Dye"), {basecolor_blue=1, excolor_blue=1, unicolor_blue=1}},
+ {"lightblue", S("Light Blue Dye"), {basecolor_blue=1, excolor_blue=1, unicolor_light_blue=1}},
+ {"cyan", S("Cyan Dye"), {basecolor_cyan=1, excolor_cyan=1, unicolor_cyan=1}},
+ {"dark_green", S("Cactus Green"), {basecolor_green=1, excolor_green=1, unicolor_dark_green=1}},
+ {"green", S("Lime Dye"), {basecolor_green=1, excolor_green=1, unicolor_green=1}},
+ {"yellow", S("Dandelion Yellow"), {basecolor_yellow=1, excolor_yellow=1, unicolor_yellow=1}},
+ {"brown", S("Brown Dye"), {basecolor_brown=1, excolor_orange=1, unicolor_dark_orange=1}},
+ {"orange", S("Orange Dye"), {basecolor_orange=1, excolor_orange=1, unicolor_orange=1}},
+ {"red", S("Rose Red"), {basecolor_red=1, excolor_red=1, unicolor_red=1}},
+ {"magenta", S("Magenta Dye"), {basecolor_magenta=1, excolor_red_violet=1,unicolor_red_violet=1}},
+ {"pink", S("Pink Dye"), {basecolor_red=1, excolor_red=1, unicolor_light_red=1}},
}
-local mg_name = minetest.get_mapgen_setting("mg_name")
+-- Other mods can use these for looping through available colors
+mcl_dye.basecolors = {"white", "grey", "black", "magenta", "blue", "cyan", "green", "yellow", "orange", "red", "brown"}
+mcl_dye.excolors = {"white", "grey", "darkgrey", "black", "violet", "blue", "cyan", "green", "yellow", "orange", "red", "red_violet"}
-dyelocal.unicolor_to_dye_id = {}
-for d=1, #dyelocal.dyes do
- for k, _ in pairs(dyelocal.dyes[d][4]) do
+local unicolor_to_dye_id = {}
+for d = 1, #dyes do
+ for k, _ in pairs(dyes[d][3]) do
if string.sub(k, 1, 9) == "unicolor_" then
- dyelocal.unicolor_to_dye_id[k] = dyelocal.dyes[d][1]
+ unicolor_to_dye_id[k] = dyes[d][1]
end
end
end
--- Takes an unicolor group name (e.g. “unicolor_white”) and returns a corresponding dye name (if it exists), nil otherwise.
+-- Takes an unicolor group name (e.g. “unicolor_white”) and returns a
+-- corresponding dye name (if it exists), nil otherwise.
function mcl_dye.unicolor_to_dye(unicolor_group)
- local color = dyelocal.unicolor_to_dye_id[unicolor_group]
+ local color = unicolor_to_dye_id[unicolor_group]
if color then
return "mcl_dye:" .. color
else
@@ -106,28 +102,21 @@ function mcl_dye.unicolor_to_dye(unicolor_group)
end
end
--- Define items
-for _, row in ipairs(dyelocal.dyes) do
- local name = row[1]
- -- White and brown dyes are defined explicitly below
- if name ~= "white" and name ~= "brown" 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
+-- Define dye items.
+--
+for _, row in pairs(dyes) do
+ local name, desc, grps = unpack(row)
+ minetest.register_craftitem("mcl_dye:" .. name, {
+ inventory_image = "mcl_dye_" .. name .. ".png",
+ description = desc,
+ _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 = table.update({craftitem = 1, dye = 1}, grps)
+ })
end
--- Bone Meal
+-- Bone meal code to be moved into its own mod.
+--
function mcl_dye.add_bone_meal_particle(pos, def)
if not def then
def = {}
@@ -381,14 +370,17 @@ end
mcl_dye.apply_bone_meal = apply_bone_meal
-minetest.register_craftitem("mcl_dye:white", {
- inventory_image = "mcl_dye_white.png",
+-- Bone meal item registration.
+--
+-- To be moved into its own mod.
+--
+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,55 +413,160 @@ minetest.register_craftitem("mcl_dye:white", {
_dispense_into_walkable = true
})
-minetest.register_craftitem("mcl_dye:brown", {
- inventory_image = "mcl_dye_brown.png",
- _tt_help = S("Grows at the side of jungle trees"),
- _doc_items_longdesc = S("Cocoa beans are a brown dye and can be used to plant cocoas."),
- _doc_items_usagehelp = S("Rightclick a sheep to turn its wool brown. Rightclick on the side of a jungle tree trunk (Jungle Wood) to plant a young cocoa."),
- description = S("Cocoa Beans"),
- stack_max = 64,
- groups = dyelocal.dyes[12][4],
- on_place = function(itemstack, placer, pointed_thing)
- return mcl_cocoas.place(itemstack, placer, pointed_thing, "mcl_cocoas:cocoa_1")
- end,
+minetest.register_craft({
+ output = "mcl_bone_meal:bone_meal 3",
+ recipe = {{"mcl_mobitems:bone"}},
})
--- Dye mixing
+
+-- Dye creation recipes.
+--
+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"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:yellow",
+ recipe = {{"mcl_flowers:dandelion"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:yellow 2",
+ recipe = {{"mcl_flowers:sunflower"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:blue",
+ recipe = {{"mcl_core:lapis"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:lightblue",
+ recipe = {{"mcl_flowers:blue_orchid"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:grey",
+ recipe = {{"mcl_flowers:azure_bluet"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:grey",
+ recipe = {{"mcl_flowers:oxeye_daisy"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:grey",
+ recipe = {{"mcl_flowers:tulip_white"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:magenta",
+ recipe = {{"mcl_flowers:allium"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:magenta 2",
+ recipe = {{"mcl_flowers:lilac"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:orange",
+ recipe = {{"mcl_flowers:tulip_orange"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:brown",
+ recipe = {{"mcl_cocoas:cocoa_beans"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:pink",
+ recipe = {{"mcl_flowers:tulip_pink"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:pink 2",
+ recipe = {{"mcl_flowers:peony"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:red",
+ recipe = {{"mcl_farming:beetroot_item"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:red",
+ recipe = {{"mcl_flowers:poppy"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:red",
+ recipe = {{"mcl_flowers:tulip_red"}},
+})
+
+minetest.register_craft({
+ output = "mcl_dye:red 2",
+ recipe = {{"mcl_flowers:rose_bush"}},
+})
+
+minetest.register_craft({
+ type = "cooking",
+ output = "mcl_dye:dark_green",
+ recipe = "mcl_core:cactus",
+ cooktime = 10,
+})
+
+-- Dye mixing recipes.
+--
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:dark_grey 2",
recipe = {"mcl_dye:black", "mcl_dye:white"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:lightblue 2",
recipe = {"mcl_dye:blue", "mcl_dye:white"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:grey 3",
recipe = {"mcl_dye:black", "mcl_dye:white", "mcl_dye:white"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:grey 2",
recipe = {"mcl_dye:dark_grey", "mcl_dye:white"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:green 2",
recipe = {"mcl_dye:dark_green", "mcl_dye:white"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:magenta 4",
recipe = {"mcl_dye:blue", "mcl_dye:white", "mcl_dye:red", "mcl_dye:red"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:magenta 3",
recipe = {"mcl_dye:pink", "mcl_dye:red", "mcl_dye:blue"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:magenta 2",
@@ -493,80 +590,34 @@ minetest.register_craft({
output = "mcl_dye:violet 2",
recipe = {"mcl_dye:blue", "mcl_dye:red"},
})
+
minetest.register_craft({
type = "shapeless",
output = "mcl_dye:orange 2",
recipe = {"mcl_dye:yellow", "mcl_dye:red"},
})
--- Dye creation
+-- Legacy items grace conversion recipes.
+--
+-- These allow for retrieval of precious items that were converted into
+-- dye items after refactoring of the dyes. Should be removed again in
+-- the near future.
minetest.register_craft({
- output = "mcl_dye:yellow",
- recipe = {{"mcl_flowers:dandelion"}},
+ output = "mcl_bone_meal:bone_meal",
+ recipe = {{"mcl_dye:white"}},
})
+
minetest.register_craft({
- output = "mcl_dye:yellow 2",
- recipe = {{"mcl_flowers:sunflower"}},
+ output = "mcl_mobitems:ink_sac",
+ recipe = {{"mcl_dye:black"}},
})
+
minetest.register_craft({
- output = "mcl_dye:lightblue",
- recipe = {{"mcl_flowers:blue_orchid"}},
+ output = "mcl_core:lapis",
+ recipe = {{"mcl_dye:blue"}},
})
+
minetest.register_craft({
- output = "mcl_dye:grey",
- recipe = {{"mcl_flowers:azure_bluet"}},
-})
-minetest.register_craft({
- output = "mcl_dye:grey",
- recipe = {{"mcl_flowers:oxeye_daisy"}},
-})
-minetest.register_craft({
- output = "mcl_dye:grey",
- recipe = {{"mcl_flowers:tulip_white"}},
-})
-minetest.register_craft({
- output = "mcl_dye:magenta",
- recipe = {{"mcl_flowers:allium"}},
-})
-minetest.register_craft({
- output = "mcl_dye:magenta 2",
- recipe = {{"mcl_flowers:lilac"}},
-})
-minetest.register_craft({
- output = "mcl_dye:orange",
- recipe = {{"mcl_flowers:tulip_orange"}},
-})
-minetest.register_craft({
- output = "mcl_dye:pink",
- recipe = {{"mcl_flowers:tulip_pink"}},
-})
-minetest.register_craft({
- output = "mcl_dye:pink 2",
- recipe = {{"mcl_flowers:peony"}},
-})
-minetest.register_craft({
- output = "mcl_dye:red",
- recipe = {{"mcl_farming:beetroot_item"}},
-})
-minetest.register_craft({
- output = "mcl_dye:red",
- recipe = {{"mcl_flowers:poppy"}},
-})
-minetest.register_craft({
- output = "mcl_dye:red",
- recipe = {{"mcl_flowers:tulip_red"}},
-})
-minetest.register_craft({
- output = "mcl_dye:red 2",
- recipe = {{"mcl_flowers:rose_bush"}},
-})
-minetest.register_craft({
- type = "cooking",
- output = "mcl_dye:dark_green",
- recipe = "mcl_core:cactus",
- cooktime = 10,
-})
-minetest.register_craft({
- output = "mcl_dye:white 3",
- recipe = {{"mcl_mobitems:bone"}},
+ output = "mcl_cocoas:cocoa_beans",
+ recipe = {{"mcl_dye:brown"}},
})
diff --git a/mods/ITEMS/mcl_dye/locale/mcl_dye.de.tr b/mods/ITEMS/mcl_dye/locale/mcl_dye.de.tr
index 29cd4d20d0..ca56dff225 100644
--- a/mods/ITEMS/mcl_dye/locale/mcl_dye.de.tr
+++ b/mods/ITEMS/mcl_dye/locale/mcl_dye.de.tr
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=Knochenmehl
+White Dye=Weißer Farbstoff
Light Grey Dye=Hellgrauer Farbstoff
Grey Dye=Grauer Farbstoff
-Ink Sac=Tintenbeutel
+Black Dye=Schwarzer Farbstoff
Purple Dye=Violetter Farbstoff
-Lapis Lazuli=Lapislazuli
+Blue Dye=Blaue Farbstoff
Light Blue Dye=Hellblauer Farbstoff
Cyan Dye=Türkiser Farbstoff
Cactus Green=Kaktusgrün
Lime Dye=Lindgrüner Farbstoff
Dandelion Yellow=Löwenzahngelb
-Cocoa Beans=Kakaobohnen
+Brown Dye=Brauner Farbstoff
Orange Dye=Orange Farbstoff
Rose Red=Rosenrot
Magenta Dye=Magenta Farbstoff
diff --git a/mods/ITEMS/mcl_dye/locale/mcl_dye.es.tr b/mods/ITEMS/mcl_dye/locale/mcl_dye.es.tr
index d20e8c96ac..14c2c12d1d 100644
--- a/mods/ITEMS/mcl_dye/locale/mcl_dye.es.tr
+++ b/mods/ITEMS/mcl_dye/locale/mcl_dye.es.tr
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=Harina de hueso
+White Dye=Tinte blanca
Light Grey Dye=Tinte gris claro
Grey Dye=Tinte gris
-Ink Sac=Saco de tinta
+Black Dye=Tinte negro
Purple Dye=Tinte púrpura
-Lapis Lazuli=Lapislázuli
+Blue Dye=Tinte azul
Light Blue Dye=Tinte azul claro
Cyan Dye=Tinte cian
Cactus Green=Tinte verde
Lime Dye=Tinte amarillo verdoso
Dandelion Yellow=Tinte amarillo
-Cocoa Beans=Granos de cacao
+Brown Dye=Tinte marrón
Orange Dye=Tinte naranja
Rose Red=Tinte rojo
Magenta Dye=Tinte magenta
diff --git a/mods/ITEMS/mcl_dye/locale/mcl_dye.fr.tr b/mods/ITEMS/mcl_dye/locale/mcl_dye.fr.tr
index 1c2651a94e..9418225d69 100644
--- a/mods/ITEMS/mcl_dye/locale/mcl_dye.fr.tr
+++ b/mods/ITEMS/mcl_dye/locale/mcl_dye.fr.tr
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=Poudre d'Os
+White Dye=Teinture Blanche
Light Grey Dye=Teinture Gris Clair
Grey Dye=Teinture Gris
-Ink Sac=Poche d'Encre
+Black Dye=Teinture Noire
Purple Dye=Teinture Violette
-Lapis Lazuli=Lapis Lazuli
+Blue Dye=Teinture Bleu
Light Blue Dye=Teinture Bleu Clair
Cyan Dye=Teinture Cyan
Cactus Green=Cactus Vert
Lime Dye=Teinture Vert Clair
Dandelion Yellow=Teinture Jaune
-Cocoa Beans=Fèves de Cacao
+Brown Dye=Teinture Marron
Orange Dye=Teinture Orange
Rose Red=Teinture Rouge
Magenta Dye=Teinture Magenta
diff --git a/mods/ITEMS/mcl_dye/locale/mcl_dye.pl.tr b/mods/ITEMS/mcl_dye/locale/mcl_dye.pl.tr
index d16edb5b0f..e9d8e41731 100644
--- a/mods/ITEMS/mcl_dye/locale/mcl_dye.pl.tr
+++ b/mods/ITEMS/mcl_dye/locale/mcl_dye.pl.tr
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=Mączka kostna
+White Dye=Biały farba
Light Grey Dye=Jasnoszara farba
Grey Dye=Szara farba
-Ink Sac=Torbiel z atramentem
+Black Dye=Czarny farba
Purple Dye=Fioletowa farba
-Lapis Lazuli=Lazuryt
+Blue Dye=Niebieska farba
Light Blue Dye=Jasnoniebieska farba
Cyan Dye=Błękitna farba
Cactus Green=Kaktusowa zieleń
Lime Dye=Jasnozielona farba
Dandelion Yellow=Mleczowy żółty
-Cocoa Beans=Ziarna kakaowe
+Brown Dye=Brązowy farba
Orange Dye=Pomarańczowa farba
Rose Red=Różany czerwony
Magenta Dye=Karmazynowa farba
diff --git a/mods/ITEMS/mcl_dye/locale/mcl_dye.ru.tr b/mods/ITEMS/mcl_dye/locale/mcl_dye.ru.tr
index e70388115b..4e79031329 100644
--- a/mods/ITEMS/mcl_dye/locale/mcl_dye.ru.tr
+++ b/mods/ITEMS/mcl_dye/locale/mcl_dye.ru.tr
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=Костная мука
+White Dye=Белый краситель
Light Grey Dye=Светло-серый краситель
Grey Dye=Серый краситель
-Ink Sac=Чернильный мешок
+Black Dye=Чёрный краситель
Purple Dye=Пурпурный краситель
-Lapis Lazuli=Ляпис-лазурь
+Blue Dye=голубой краситель
Light Blue Dye=Светло-голубой краситель
Cyan Dye=Голубой краситель
Cactus Green=Зелень кактуса
Lime Dye=Зелёный лаймовый краситель
Dandelion Yellow=Одуванчиковый жёлтый краситель
-Cocoa Beans=Какао-бобы
+Brown Dye=Коричневый краситель
Orange Dye=Оранжевый краситель
Rose Red=Экстракт красной розы
Magenta Dye=Фиолетовый краситель
diff --git a/mods/ITEMS/mcl_dye/locale/mcl_dye.zh_TW.tr b/mods/ITEMS/mcl_dye/locale/mcl_dye.zh_TW.tr
index 23d2face21..5e236e9dd9 100644
--- a/mods/ITEMS/mcl_dye/locale/mcl_dye.zh_TW.tr
+++ b/mods/ITEMS/mcl_dye/locale/mcl_dye.zh_TW.tr
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=骨粉
+White Dye=白色染料
Light Grey Dye=淺灰色染料
Grey Dye=灰色染料
-Ink Sac=墨囊
+Black Dye=黑色染料
Purple Dye=紫色染料
-Lapis Lazuli=青金石
+Blue Dye=藍色染料
Light Blue Dye=淺藍色染料
Cyan Dye=青色染料
Cactus Green=仙人掌綠
Lime Dye=淺綠色染料
Dandelion Yellow=蒲公英黃
-Cocoa Beans=可可豆
+Brown Dye=棕色染料
Orange Dye=橙色染料
Rose Red=玫瑰紅
Magenta Dye=洋紅色染料
diff --git a/mods/ITEMS/mcl_dye/locale/template.txt b/mods/ITEMS/mcl_dye/locale/template.txt
index 94e250f064..a40b0859ad 100644
--- a/mods/ITEMS/mcl_dye/locale/template.txt
+++ b/mods/ITEMS/mcl_dye/locale/template.txt
@@ -1,16 +1,16 @@
# textdomain: mcl_dye
-Bone Meal=
+White Dye=
Light Grey Dye=
Grey Dye=
-Ink Sac=
+Black Dye=
Purple Dye=
-Lapis Lazuli=
+Blue Dye=
Light Blue Dye=
Cyan Dye=
Cactus Green=
Lime Dye=
Dandelion Yellow=
-Cocoa Beans=
+Brown Dye=
Orange Dye=
Rose Red=
Magenta Dye=
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_bone_meal_bone_meal.png b/mods/ITEMS/mcl_dye/textures/mcl_bone_meal_bone_meal.png
new file mode 100644
index 0000000000..bc06c2865e
Binary files /dev/null and b/mods/ITEMS/mcl_dye/textures/mcl_bone_meal_bone_meal.png differ
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_dye_black.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_black.png
index 95a8df4ad1..79670d4e21 100644
Binary files a/mods/ITEMS/mcl_dye/textures/mcl_dye_black.png and b/mods/ITEMS/mcl_dye/textures/mcl_dye_black.png differ
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_dye_blue.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_blue.png
index e0e3023075..25eaacb4f8 100644
Binary files a/mods/ITEMS/mcl_dye/textures/mcl_dye_blue.png and b/mods/ITEMS/mcl_dye/textures/mcl_dye_blue.png differ
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_dye_brown.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_brown.png
index 877ee69dc2..b24c84b1fb 100644
Binary files a/mods/ITEMS/mcl_dye/textures/mcl_dye_brown.png and b/mods/ITEMS/mcl_dye/textures/mcl_dye_brown.png differ
diff --git a/mods/ITEMS/mcl_dye/textures/dye_cyan.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_cyan.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_cyan.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_cyan.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_dark_green.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_dark_green.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_dark_green.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_dark_green.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_dark_grey.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_dark_grey.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_dark_grey.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_dark_grey.png
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_dye_green.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_green.png
new file mode 100644
index 0000000000..7b4d08b34e
Binary files /dev/null and b/mods/ITEMS/mcl_dye/textures/mcl_dye_green.png differ
diff --git a/mods/ITEMS/mcl_dye/textures/dye_grey.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_grey.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_grey.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_grey.png
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_dye_light_blue.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_lightblue.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/mcl_dye_light_blue.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_lightblue.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_magenta.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_magenta.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_magenta.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_magenta.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_orange.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_orange.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_orange.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_orange.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_pink.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_pink.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_pink.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_pink.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_red.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_red.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_red.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_red.png
diff --git a/mods/ITEMS/mcl_dye/textures/dye_violet.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_violet.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_violet.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_violet.png
diff --git a/mods/ITEMS/mcl_dye/textures/mcl_dye_white.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_white.png
index bc06c2865e..4ceeed439c 100644
Binary files a/mods/ITEMS/mcl_dye/textures/mcl_dye_white.png and b/mods/ITEMS/mcl_dye/textures/mcl_dye_white.png differ
diff --git a/mods/ITEMS/mcl_dye/textures/dye_yellow.png b/mods/ITEMS/mcl_dye/textures/mcl_dye_yellow.png
similarity index 100%
rename from mods/ITEMS/mcl_dye/textures/dye_yellow.png
rename to mods/ITEMS/mcl_dye/textures/mcl_dye_yellow.png
diff --git a/mods/ITEMS/mcl_enchanting/engine.lua b/mods/ITEMS/mcl_enchanting/engine.lua
index 46a05abf9e..fa6dea3538 100644
--- a/mods/ITEMS/mcl_enchanting/engine.lua
+++ b/mods/ITEMS/mcl_enchanting/engine.lua
@@ -520,7 +520,7 @@ function mcl_enchanting.show_enchanting_formspec(player)
local table_slots = mcl_enchanting.get_table_slots(player, itemstack, num_bookshelves)
for i, slot in ipairs(table_slots) do
any_enchantment = any_enchantment or slot
- local enough_lapis = inv:contains_item("enchanting_lapis", ItemStack({name = "mcl_dye:blue", count = i}))
+ local enough_lapis = inv:contains_item("enchanting_lapis", ItemStack({name = "mcl_core:lapis", count = i}))
local enough_levels = slot and slot.level_requirement <= player_levels
local can_enchant = (slot and enough_lapis and enough_levels)
local ending = (can_enchant and "" or "_off")
@@ -555,7 +555,7 @@ function mcl_enchanting.handle_formspec_fields(player, formname, fields)
local meta = player:get_meta()
local num_bookshelfes = meta:get_int("mcl_enchanting:num_bookshelves")
local itemstack = inv:get_stack("enchanting_item", 1)
- local cost = ItemStack({name = "mcl_dye:blue", count = button_pressed})
+ local cost = ItemStack({name = "mcl_core:lapis", count = button_pressed})
if not inv:contains_item("enchanting_lapis", cost) then
return
end
@@ -608,7 +608,7 @@ function mcl_enchanting.allow_inventory_action(player, action, inventory, invent
if action == "move" then
local listname = inventory_info.to_list
local stack = inventory:get_stack(inventory_info.from_list, inventory_info.from_index)
- if stack:get_name() == "mcl_dye:blue" and listname ~= "enchanting_item" then
+ if stack:get_name() == "mcl_core:lapis" and listname ~= "enchanting_item" then
local count = stack:get_count()
local old_stack = inventory:get_stack("enchanting_lapis", 1)
if old_stack:get_name() ~= "" then
@@ -631,7 +631,7 @@ function mcl_enchanting.on_inventory_action(player, action, inventory, inventory
if action == "move" and inventory_info.to_list == "enchanting" then
local stack = inventory:get_stack("enchanting", 1)
local result_list
- if stack:get_name() == "mcl_dye:blue" then
+ if stack:get_name() == "mcl_core:lapis" then
result_list = "enchanting_lapis"
stack:add_item(inventory:get_stack("enchanting_lapis", 1))
else
diff --git a/mods/ITEMS/mcl_farming/sweet_berry.lua b/mods/ITEMS/mcl_farming/sweet_berry.lua
index be5c7ef2c2..aca5fadc20 100644
--- a/mods/ITEMS/mcl_farming/sweet_berry.lua
+++ b/mods/ITEMS/mcl_farming/sweet_berry.lua
@@ -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
diff --git a/mods/ITEMS/mcl_farming/wheat.lua b/mods/ITEMS/mcl_farming/wheat.lua
index a254ed36c6..44d82b5667 100644
--- a/mods/ITEMS/mcl_farming/wheat.lua
+++ b/mods/ITEMS/mcl_farming/wheat.lua
@@ -117,7 +117,7 @@ minetest.register_craft({
minetest.register_craft({
output = "mcl_farming:cookie 8",
recipe = {
- {"mcl_farming:wheat_item", "mcl_dye:brown", "mcl_farming:wheat_item"},
+ {"mcl_farming:wheat_item", "mcl_cocoas:cocoa_beans", "mcl_farming:wheat_item"},
}
})
diff --git a/mods/ITEMS/mcl_fishing/init.lua b/mods/ITEMS/mcl_fishing/init.lua
index 546ad7eea6..b543b8d99d 100644
--- a/mods/ITEMS/mcl_fishing/init.lua
+++ b/mods/ITEMS/mcl_fishing/init.lua
@@ -89,7 +89,7 @@ local fish = function(itemstack, player, pointed_thing)
{ itemstring = "mcl_mobitems:string", weight = 5 },
{ itemstring = "mcl_potions:water", weight = 10 },
{ itemstring = "mcl_mobitems:bone", weight = 10 },
- { itemstring = "mcl_dye:black", weight = 1, amount_min = 10, amount_max = 10 },
+ { itemstring = "mcl_mobitems:ink_sac", weight = 1, amount_min = 10, amount_max = 10 },
{ itemstring = "mcl_mobitems:string", weight = 10 }, -- TODO: Tripwire Hook
},
stacks_min = 1,
diff --git a/mods/ITEMS/mcl_hoppers/init.lua b/mods/ITEMS/mcl_hoppers/init.lua
index fa6625843a..258767aad6 100644
--- a/mods/ITEMS/mcl_hoppers/init.lua
+++ b/mods/ITEMS/mcl_hoppers/init.lua
@@ -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,
})
diff --git a/mods/ITEMS/mcl_mobitems/init.lua b/mods/ITEMS/mcl_mobitems/init.lua
index e1b39660f1..357762645b 100644
--- a/mods/ITEMS/mcl_mobitems/init.lua
+++ b/mods/ITEMS/mcl_mobitems/init.lua
@@ -181,6 +181,14 @@ minetest.register_craftitem("mcl_mobitems:bone", {
_mcl_toollike_wield = true,
})
+minetest.register_craftitem("mcl_mobitems:ink_sac", {
+ description = S("Squid Ink Sac"),
+ _doc_items_longdesc = S("This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye."),
+ inventory_image = "mcl_mobitems_ink_sac.png",
+ stack_max = 64,
+ groups = { craftitem = 1 },
+})
+
minetest.register_craftitem("mcl_mobitems:string",{
description = S("String"),
_doc_items_longdesc = S("Strings are used in crafting."),
diff --git a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.de.tr b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.de.tr
index f9a0aaf507..c1278ad369 100644
--- a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.de.tr
+++ b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.de.tr
@@ -52,6 +52,9 @@ Bones can be used to tame wolves so they will protect you. They are also useful
Wield the bone near wolves to attract them. Use the “Place” key on the wolf to give it a bone and tame it. You can then give commands to the tamed wolf by using the “Place” key on it.=Halten Sie den Knochen in der Nähe von Wölfen, um sie anzulocken. Benutzen Sie die „Platzieren“-Taste auf dem Wolf, um ihm den Knochen zu geben und ihn zu zähmen. Sie können dem gezähmten Wolf Befehle erteilen, indem Sie die „Platzieren“-Taste auf ihm benutzen.
+Squid Ink Sac=Tintenbeutel
+This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye.=Dieser Gegenstand wird von toten Tintenfischen abgeworfen. Tintenbeutel können benutzt werden, um Buch und Feder oder schwarzen Farbstoff zu fertigen.
+
String=Faden
Strings are used in crafting.=Fäden sind nützlich in der Fertigung.
Blaze Rod=Lohenrute
diff --git a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.es.tr b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.es.tr
index 9b149788ad..1add14030a 100644
--- a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.es.tr
+++ b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.es.tr
@@ -52,6 +52,9 @@ Bones can be used to tame wolves so they will protect you. They are also useful
Wield the bone near wolves to attract them. Use the “Place” key on the wolf to give it a bone and tame it. You can then give commands to the tamed wolf by using the “Place” key on it.=Empuña el hueso cerca de los lobos para atraerlos. Usa la tecla "Colocar" en el lobo para darle un hueso y domesticarlo. Luego puede dar órdenes al lobo domesticado utilizando la tecla "Colocar".
+Squid Ink Sac=Saco de tinta
+This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye.=
+
String=Cuerda
Strings are used in crafting.=Las cuerdas se usan en la elaboración.
Blaze Rod=Vara de blaze
diff --git a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr
index 8a916e99ab..09b7ea70bc 100644
--- a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr
+++ b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr
@@ -52,6 +52,9 @@ Bones can be used to tame wolves so they will protect you. They are also useful
Wield the bone near wolves to attract them. Use the “Place” key on the wolf to give it a bone and tame it. You can then give commands to the tamed wolf by using the “Place” key on it.=Maniez l'os près des loups pour les attirer. Utilisez la touche «Placer» sur le loup pour lui donner un os et l'apprivoiser. Vous pouvez ensuite donner des commandes au loup apprivoisé en utilisant la touche "Placer" sur celui-ci.
+Squid Ink Sac=Poche d'encre
+This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye.=
+
String=Ficelle
Strings are used in crafting.=Les ficelles sont utilisées dans l'artisanat.
Blaze Rod=Bâton de Blaze
diff --git a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.pl.tr b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.pl.tr
index dd78a692f4..a58bfb474f 100644
--- a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.pl.tr
+++ b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.pl.tr
@@ -53,6 +53,9 @@ Bones can be used to tame wolves so they will protect you. They are also useful
Wield the bone near wolves to attract them. Use the “Place” key on the wolf to give it a bone and tame it. You can then give commands to the tamed wolf by using the “Place” key on it.=Trzymaj kość w pobliżu wilków aby je zwabić. Użyj przycisku "Umieść" na wilku aby dać mu kość i go oswoić. Możesz wtedy wydawać polecenia oswojonemu wilkowi klikając przycisk "Umieść" na nim.
+Squid Ink Sac=Torbiel z atramentem
+This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye.=
+
String=Nić
Strings are used in crafting.=Nić jest użyteczna w wytwarzaniu.
Blaze Rod=Płomienna różdżka
diff --git a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.ru.tr b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.ru.tr
index 64f73618c9..4e3fc020be 100644
--- a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.ru.tr
+++ b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.ru.tr
@@ -52,6 +52,9 @@ Bones can be used to tame wolves so they will protect you. They are also useful
Wield the bone near wolves to attract them. Use the “Place” key on the wolf to give it a bone and tame it. You can then give commands to the tamed wolf by using the “Place” key on it.=Положите кость рядом с волками, чтобы привлечь их. Используйте клавишу “Разместить” на волке, чтобы дать ему кость и приручить его. Вы можете командовать приручёнными волками с помощью клавиши “Разместить”.
+Squid Ink Sac=Чернильный мешок
+This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye.=
+
String=Нити
Strings are used in crafting.=Нити используются для крафтинга
Blaze Rod=Огненный стержень
diff --git a/mods/ITEMS/mcl_mobitems/locale/template.txt b/mods/ITEMS/mcl_mobitems/locale/template.txt
index 690ae3fac8..f26ab52d7c 100644
--- a/mods/ITEMS/mcl_mobitems/locale/template.txt
+++ b/mods/ITEMS/mcl_mobitems/locale/template.txt
@@ -52,6 +52,9 @@ Bones can be used to tame wolves so they will protect you. They are also useful
Wield the bone near wolves to attract them. Use the “Place” key on the wolf to give it a bone and tame it. You can then give commands to the tamed wolf by using the “Place” key on it.=
+Squid Ink Sac=
+This item is dropped by dead squids. Squid ink can be used to as an ingredient to craft book and quill or black dye.=
+
String=
Strings are used in crafting.=
Blaze Rod=
diff --git a/mods/ITEMS/mcl_mobitems/textures/mcl_mobitems_ink_sac.png b/mods/ITEMS/mcl_mobitems/textures/mcl_mobitems_ink_sac.png
new file mode 100644
index 0000000000..95a8df4ad1
Binary files /dev/null and b/mods/ITEMS/mcl_mobitems/textures/mcl_mobitems_ink_sac.png differ
diff --git a/mods/MAPGEN/mcl_structures/shipwrecks.lua b/mods/MAPGEN/mcl_structures/shipwrecks.lua
index 38f790cb66..a9c48e0b55 100644
--- a/mods/MAPGEN/mcl_structures/shipwrecks.lua
+++ b/mods/MAPGEN/mcl_structures/shipwrecks.lua
@@ -149,7 +149,7 @@ mcl_structures.register_structure("shipwreck",{
{ itemstring = "mcl_core:iron_ingot", weight = 90, amount_min = 1, amount_max = 5 },
{ itemstring = "mcl_core:iron_nugget", weight = 50, amount_min = 1, amount_max = 10 },
{ itemstring = "mcl_core:emerald", weight = 40, amount_min = 1, amount_max = 5 },
- { itemstring = "mcl_dye:blue", weight = 20, amount_min = 1, amount_max = 10 },
+ { itemstring = "mcl_core:lapis", weight = 20, amount_min = 1, amount_max = 10 },
{ itemstring = "mcl_core:gold_ingot", weight = 10, amount_min = 1, amount_max = 5 },
{ itemstring = "mcl_core:gold_nugget", weight = 10, amount_min = 1, amount_max = 10 },
{ itemstring = "mcl_experience:bottle", weight = 5, amount_min = 1, amount_max = 1 },
diff --git a/mods/MAPGEN/tsm_railcorridors/gameconfig.lua b/mods/MAPGEN/tsm_railcorridors/gameconfig.lua
index 3ada3052ff..4a27586a2f 100644
--- a/mods/MAPGEN/tsm_railcorridors/gameconfig.lua
+++ b/mods/MAPGEN/tsm_railcorridors/gameconfig.lua
@@ -92,7 +92,7 @@ function tsm_railcorridors.get_treasures(pr)
{ itemstring = "mcl_farming:melon_seeds", weight = 10, amount_min = 2, amount_max = 4 },
{ itemstring = "mcl_farming:pumpkin_seeds", weight = 10, amount_min = 2, amount_max = 4 },
{ itemstring = "mcl_core:iron_ingot", weight = 10, amount_min = 1, amount_max = 5 },
- { itemstring = "mcl_dye:blue", weight = 5, amount_min = 4, amount_max = 9 },
+ { itemstring = "mcl_core:lapis", weight = 5, amount_min = 4, amount_max = 9 },
{ itemstring = "mesecons:redstone", weight = 5, amount_min = 4, amount_max = 9 },
{ itemstring = "mcl_core:gold_ingot", weight = 5, amount_min = 1, amount_max = 3 },
{ itemstring = "mcl_core:diamond", weight = 3, amount_min = 1, amount_max = 2 },