diff --git a/GROUPS.md b/GROUPS.md
index 8c0c3563e0..8286b29bc6 100644
--- a/GROUPS.md
+++ b/GROUPS.md
@@ -149,7 +149,7 @@ These groups are used mostly for informational purposes
* `trapdoor=2`: Open trapdoor
* `glass=1`: Glass (full cubes only)
* `rail=1`: Rail
-* `music_record`: Music Disc (rating is track ID)
+* `music_record`: Item is Music Disc
* `tnt=1`: Block is TNT
* `boat=1`: Boat
* `minecart=1`: Minecart
diff --git a/mods/ENTITIES/mobs_mc/LICENSE-media.md b/mods/ENTITIES/mobs_mc/LICENSE-media.md
index dad31abb85..3bfe70a151 100644
--- a/mods/ENTITIES/mobs_mc/LICENSE-media.md
+++ b/mods/ENTITIES/mobs_mc/LICENSE-media.md
@@ -190,9 +190,10 @@ Origin of those models:
* [Spennnyyy](https://freesound.org/people/Spennnyyy/) (CC0)
* `mcl_totems_totem.ogg`
* Source:
-* [Baŝto](https://opengameart.org/users/ba%C5%9Dto)
+* [Baŝto](https://opengameart.org/users/ba%C5%9Dto) (remixer) and [kantouth](https://freesound.org/people/kantouth/) (original author)
* `mobs_mc_skeleton_random.*.ogg` (CC BY 3.0)
* Source:
+ * Based on:
* [spookymodem](https://freesound.org/people/spookymodem/)
* `mobs_mc_skeleton_death.ogg` (CC0)
*
@@ -306,4 +307,4 @@ Origin of those models:
Note: Many of these sounds have been more or less modified to fit the game.
-Sounds not mentioned hre are licensed under CC0.
+Sounds not mentioned here are licensed under CC0.
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.de.tr b/mods/ITEMS/mcl_core/locale/mcl_core.de.tr
index 3d90dd5ae8..0a1cbad37b 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.de.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.de.tr
@@ -221,17 +221,23 @@ Sugar canes are a plant which has some uses in crafting. Sugar canes will slowly
Sugar canes can only be placed top of other sugar canes and on top of blocks on which they would grow.=Zuckerrohr kann nur auf Zuckerrohr platziert werden und auf Blöcken, auf denen Zuckerrohr wachsen würde.
Sugar comes from sugar canes and is used to make sweet foods.=Zucker kommt von Zuckerrohr und wird benutzt, um süße Lebensmittel zu machen.
The stripped trunk of an acacia tree.=Der entrindete Stamm einer Akazie.
-The stripped trunk of an birch tree.=Der entrindete Stamm einer Birke.
-The stripped trunk of an dark oak tree.=Der entrindete Stamm einer Schwarzeiche.
-The stripped trunk of an jungle tree.=Der entrindete Stamm eines Dschungelbaums.
+The stripped trunk of a birch tree.=Der entrindete Stamm einer Birke.
+The stripped trunk of a dark oak tree.=Der entrindete Stamm einer Schwarzeiche.
+The stripped trunk of a jungle tree.=Der entrindete Stamm eines Dschungelbaums.
The stripped trunk of an oak tree.=Der entrindete Stamm einer Eiche.
-The stripped trunk of an spruce tree.=Der entrindete Stamm einer Fichte.
+The stripped trunk of a spruce tree.=Der entrindete Stamm einer Fichte.
The trunk of a birch tree.=Der Baumstamm einer Birke.
The trunk of a dark oak tree.=Der Baumstamm einer Schwarzeiche.
The trunk of a jungle tree.=Der Baumstamm eines Dschungelbaums.
The trunk of a spruce tree.=Der Baumstamm einer Fichte.
The trunk of an acacia.=Der Baumstamm einer Akazie.
The trunk of an oak tree.=Der Baumstamm einer Eiche.
+The stripped wood of an acacia tree.=Das entrindete Holz einer Akazie.
+The stripped wood of a birch tree.=Das entrindete Holz einer Birke.
+The stripped wood of a dark oak tree.=Das entrindete Holz einer Schwarzeiche.
+The stripped wood of a jungle tree.=Das entrindete Holz eines Dschungelbaums.
+The stripped wood of an oak tree.=Das entrindete Holz einer Eiche.
+The stripped wood of a spruce tree.=Das entrindete Holz einer Fichte.
This block consists of a couple of loose stones and can't support itself.=Dieser Block besteht aus ein paar losen Steinchen und kann sich nicht selbst tragen.
This is a decorative block surrounded by the bark of a tree trunk.=Dies ist ein dekorativer Block, der von der Rinde eines Baumstamms umgeben ist.
This is a decorative block.=Dies ist ein dekorativer Block.
diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr b/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr
index 86bc489cd0..725025e487 100644
--- a/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr
+++ b/mods/ITEMS/mcl_core/locale/mcl_core.fr.tr
@@ -109,7 +109,7 @@ Gold Ore=Minerai d'Or
Gold nuggets are very small pieces of molten gold; the main purpose is to create gold ingots.=Les pépites d'or sont de très petites pièces d'or en fusion; le but principal est de créer des lingots d'or.
Golden Apple=Pomme Dorée
Golden apples are precious food items which can be eaten.=Les pommes dorrées sont des aliments précieux qui peuvent être consommés.
-Granite=Granite
+Granite=Granit
Grass Block=Bloc d'Herbe
Grass Path=Chemin d'Herbe
Grass paths are a decorative variant of grass blocks. Their top has a different color and they are a bit lower than grass blocks, making them useful to build footpaths. Grass paths can be created with a shovel. A grass path turns into dirt when it is below a solid block.=Les chemins d'herbe sont une variante décorative des blocs d'herbe. Leur sommet a une couleur différente et ils sont un peu plus bas que les blocs d'herbe, ce qui les rend utiles pour construire des sentiers. Les chemins d'herbe peuvent être créés avec une pelle. Un chemin d'herbe se transforme en terre quand il est en dessous d'un bloc solide.
@@ -165,7 +165,7 @@ Podzol=Podzol
Podzol is a type of dirt found in taiga forests. Only a few plants are able to survive on it.=Le podzol est un type de terre trouvé dans les forêts de la taïga. Seules quelques plantes peuvent y survivre.
Polished Andesite=Andrésite Polie
Polished Diorite=Diorite Polie
-Polished Granite=Granite Polie
+Polished Granite=Granit Poli
Polished Stone=Roche Polie
Polished andesite is a decorative building block made from andesite.=L'andésite polie est un bloc de construction décoratif en andésite.
Polished diorite is a decorative building block made from diorite.=La diorite polie est un bloc de construction décoratif en diorite.
diff --git a/mods/ITEMS/mcl_core/locale/template.txt b/mods/ITEMS/mcl_core/locale/template.txt
index 31320c1c7c..2cb74f5d1e 100644
--- a/mods/ITEMS/mcl_core/locale/template.txt
+++ b/mods/ITEMS/mcl_core/locale/template.txt
@@ -221,17 +221,23 @@ Sugar canes are a plant which has some uses in crafting. Sugar canes will slowly
Sugar canes can only be placed top of other sugar canes and on top of blocks on which they would grow.=
Sugar comes from sugar canes and is used to make sweet foods.=
The stripped trunk of an acacia tree.=
-The stripped trunk of an birch tree.=
-The stripped trunk of an dark oak tree.=
-The stripped trunk of an jungle tree.=
+The stripped trunk of a birch tree.=
+The stripped trunk of a dark oak tree.=
+The stripped trunk of a jungle tree.=
The stripped trunk of an oak tree.=
-The stripped trunk of an spruce tree.=
+The stripped trunk of a spruce tree.=
The trunk of a birch tree.=
The trunk of a dark oak tree.=
The trunk of a jungle tree.=
The trunk of a spruce tree.=
The trunk of an acacia.=
The trunk of an oak tree.=
+The stripped wood of an acacia tree.=
+The stripped wood of a birch tree.=
+The stripped wood of a dark oak tree.=
+The stripped wood of a jungle tree.=
+The stripped wood of an oak tree.=
+The stripped wood of a spruce tree.=
This block consists of a couple of loose stones and can't support itself.=
This is a decorative block surrounded by the bark of a tree trunk.=
This is a decorative block.=
diff --git a/mods/ITEMS/mcl_core/nodes_trees.lua b/mods/ITEMS/mcl_core/nodes_trees.lua
index c73829d6c5..a5ef7aa97d 100644
--- a/mods/ITEMS/mcl_core/nodes_trees.lua
+++ b/mods/ITEMS/mcl_core/nodes_trees.lua
@@ -9,7 +9,7 @@ if mod_screwdriver then
end
-- Register tree trunk (wood) and bark
-local function register_tree_trunk(subname, description_trunk, description_bark, longdesc, tile_inner, tile_bark, stripped_varient)
+local function register_tree_trunk(subname, description_trunk, description_bark, longdesc, tile_inner, tile_bark, stripped_variant)
minetest.register_node("mcl_core:"..subname, {
description = description_trunk,
_doc_items_longdesc = longdesc,
@@ -23,7 +23,7 @@ local function register_tree_trunk(subname, description_trunk, description_bark,
on_rotate = on_rotate,
_mcl_blast_resistance = 2,
_mcl_hardness = 2,
- _mcl_stripped_varient = stripped_varient,
+ _mcl_stripped_variant = stripped_variant,
})
minetest.register_node("mcl_core:"..subname.."_bark", {
@@ -39,7 +39,7 @@ local function register_tree_trunk(subname, description_trunk, description_bark,
on_rotate = on_rotate,
_mcl_blast_resistance = 2,
_mcl_hardness = 2,
- _mcl_stripped_varient = stripped_varient.."_bark",
+ _mcl_stripped_variant = stripped_variant.."_bark",
})
minetest.register_craft({
@@ -52,7 +52,7 @@ local function register_tree_trunk(subname, description_trunk, description_bark,
end
-- Register stripped trunk and stripped wood
-local function register_stripped_trunk(subname, description_stripped_trunk, description_stripped_bark, longdesc, tile_stripped_inner, tile_stripped_bark)
+local function register_stripped_trunk(subname, description_stripped_trunk, description_stripped_bark, longdesc, longdesc_wood, tile_stripped_inner, tile_stripped_bark)
minetest.register_node("mcl_core:"..subname, {
description = description_stripped_trunk,
_doc_items_longdesc = longdesc,
@@ -61,7 +61,7 @@ local function register_stripped_trunk(subname, description_stripped_trunk, desc
paramtype2 = "facedir",
on_place = mcl_util.rotate_axis,
stack_max = 64,
- groups = {handy=1,axey=1, tree=1, flammable=2, building_block=1, material_wood=1, fire_encouragement=5, fire_flammability=5},
+ groups = {handy=1, axey=1, tree=1, flammable=2, building_block=1, material_wood=1, fire_encouragement=5, fire_flammability=5},
sounds = mcl_sounds.node_sound_wood_defaults(),
on_rotate = on_rotate,
_mcl_blast_resistance = 2,
@@ -70,12 +70,12 @@ local function register_stripped_trunk(subname, description_stripped_trunk, desc
minetest.register_node("mcl_core:"..subname.."_bark", {
description = description_stripped_bark,
- _doc_items_longdesc = S("This is a decorative block."),
+ _doc_items_longdesc = longdesc_wood,
tiles = {tile_stripped_bark},
paramtype2 = "facedir",
on_place = mcl_util.rotate_axis,
stack_max = 64,
- groups = {handy=1,axey=1, bark=1, flammable=2, building_block=1, material_wood=1, fire_encouragement=5, fire_flammability=5},
+ groups = {handy=1, axey=1, bark=1, flammable=2, building_block=1, material_wood=1, fire_encouragement=5, fire_flammability=5},
sounds = mcl_sounds.node_sound_wood_defaults(),
is_ground_content = false,
on_rotate = on_rotate,
@@ -223,13 +223,12 @@ register_tree_trunk("sprucetree", S("Spruce Wood"), S("Spruce Bark"), S("The tru
register_tree_trunk("birchtree", S("Birch Wood"), S("Birch Bark"), S("The trunk of a birch tree."), "mcl_core_log_birch_top.png", "mcl_core_log_birch.png", "mcl_core:stripped_birch")
register_tree_trunk("jungletree", S("Jungle Wood"), S("Jungle Bark"), S("The trunk of a jungle tree."), "default_jungletree_top.png", "default_jungletree.png", "mcl_core:stripped_jungle")
-register_stripped_trunk("stripped_oak", S("Stripped Oak Log"), S("Stripped Oak Wood"), S("The stripped trunk of an oak tree."), "mcl_core_stripped_oak_top.png", "mcl_core_stripped_oak_side.png")
-register_stripped_trunk("stripped_acacia", S("Stripped Acacia Log"), S("Stripped Acacia Wood"), S("The stripped trunk of an acacia tree."), "mcl_core_stripped_acacia_top.png", "mcl_core_stripped_acacia_side.png")
-register_stripped_trunk("stripped_dark_oak", S("Stripped Dark Oak Log"), S("Stripped Dark Oak Wood"), S("The stripped trunk of an dark oak tree."), "mcl_core_stripped_dark_oak_top.png", "mcl_core_stripped_dark_oak_side.png")
-register_stripped_trunk("stripped_birch", S("Stripped Birch Log"), S("Stripped Birch Wood"), S("The stripped trunk of an birch tree."), "mcl_core_stripped_birch_top.png", "mcl_core_stripped_birch_side.png")
-register_stripped_trunk("stripped_spruce", S("Stripped Spruce Log"), S("Stripped Spruce Wood"), S("The stripped trunk of an spruce tree."), "mcl_core_stripped_spruce_top.png", "mcl_core_stripped_spruce_side.png")
-register_stripped_trunk("stripped_jungle", S("Stripped Jungle Log"), S("Stripped Jungle Wood"), S("The stripped trunk of an jungle tree."),"mcl_core_stripped_jungle_top.png", "mcl_core_stripped_jungle_side.png")
-
+register_stripped_trunk("stripped_oak", S("Stripped Oak Log"), S("Stripped Oak Wood"), S("The stripped trunk of an oak tree."), S("The stripped wood of an oak tree."), "mcl_core_stripped_oak_top.png", "mcl_core_stripped_oak_side.png")
+register_stripped_trunk("stripped_acacia", S("Stripped Acacia Log"), S("Stripped Acacia Wood"), S("The stripped trunk of an acacia tree."), S("The stripped wood of an acacia tree."), "mcl_core_stripped_acacia_top.png", "mcl_core_stripped_acacia_side.png")
+register_stripped_trunk("stripped_dark_oak", S("Stripped Dark Oak Log"), S("Stripped Dark Oak Wood"), S("The stripped trunk of a dark oak tree."), S("The stripped wood of a dark oak tree."), "mcl_core_stripped_dark_oak_top.png", "mcl_core_stripped_dark_oak_side.png")
+register_stripped_trunk("stripped_birch", S("Stripped Birch Log"), S("Stripped Birch Wood"), S("The stripped trunk of a birch tree."), S("The stripped wood of a birch tree."), "mcl_core_stripped_birch_top.png", "mcl_core_stripped_birch_side.png")
+register_stripped_trunk("stripped_spruce", S("Stripped Spruce Log"), S("Stripped Spruce Wood"), S("The stripped trunk of a spruce tree."), S("The stripped wood of a spruce tree."), "mcl_core_stripped_spruce_top.png", "mcl_core_stripped_spruce_side.png")
+register_stripped_trunk("stripped_jungle", S("Stripped Jungle Log"), S("Stripped Jungle Wood"), S("The stripped trunk of a jungle tree."), S("The stripped wood of a jungle tree."),"mcl_core_stripped_jungle_top.png", "mcl_core_stripped_jungle_side.png")
register_wooden_planks("wood", S("Oak Wood Planks"), {"default_wood.png"})
register_wooden_planks("darkwood", S("Dark Oak Wood Planks"), {"mcl_core_planks_big_oak.png"})
register_wooden_planks("junglewood", S("Jungle Wood Planks"), {"default_junglewood.png"})
diff --git a/mods/ITEMS/mcl_farming/pumpkin.lua b/mods/ITEMS/mcl_farming/pumpkin.lua
index b27ad71f8b..1d9ca012cf 100644
--- a/mods/ITEMS/mcl_farming/pumpkin.lua
+++ b/mods/ITEMS/mcl_farming/pumpkin.lua
@@ -162,7 +162,9 @@ if minetest.get_modpath("mcl_armor") then
end
end)
minetest.register_on_dieplayer(function(player)
- remove_pumpkin_hud(player)
+ if not minetest.settings:get_bool("mcl_keepInventory") then
+ remove_pumpkin_hud(player)
+ end
end)
minetest.register_on_leaveplayer(function(player)
pumpkin_hud[player] = nil
diff --git a/mods/ITEMS/mcl_jukebox/init.lua b/mods/ITEMS/mcl_jukebox/init.lua
index ebee6f7bbb..6c51a6c942 100644
--- a/mods/ITEMS/mcl_jukebox/init.lua
+++ b/mods/ITEMS/mcl_jukebox/init.lua
@@ -94,7 +94,9 @@ minetest.register_craft({
})
local function play_record(pos, itemstack, player)
- local name = itemstack:get_name()
+ local item_name = itemstack:get_name()
+ -- ensure the jukebox uses the new record names for old records
+ local name = minetest.registered_aliases[item_name] or item_name
if mcl_jukebox.registered_records[name] then
local cname = player:get_player_name()
if active_tracks[cname] then
diff --git a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr
index eee31278b2..d31632345b 100644
--- a/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr
+++ b/mods/ITEMS/mcl_mobitems/locale/mcl_mobitems.fr.tr
@@ -27,7 +27,7 @@ Raw Porkchop=Porc Cru
A raw porkchop is the flesh from a pig and can be eaten safely. Cooking it will greatly increase its nutritional value.=Un porc cru est la chair d'un porc et peut être mangée en toute sécurité. La cuisson augmentera considérablement sa valeur nutritive.
-Cooked Porkchop=Parc Cuit
+Cooked Porkchop=Porc Cuit
Cooked porkchop is the cooked flesh of a pig and is used as food.=Le porc cuit est la chair cuite d'un porc et est utilisé comme aliment.
Raw Rabbit=Lapin Cru
diff --git a/mods/ITEMS/mcl_portals/portal_end.lua b/mods/ITEMS/mcl_portals/portal_end.lua
index 085205cfde..d591537e1b 100644
--- a/mods/ITEMS/mcl_portals/portal_end.lua
+++ b/mods/ITEMS/mcl_portals/portal_end.lua
@@ -307,7 +307,7 @@ minetest.register_node("mcl_portals:end_portal_frame_eye", {
description = S("End Portal Frame with Eye of Ender"),
_tt_help = S("Used to construct end portals"),
_doc_items_create_entry = false,
- groups = { creative_breakable = 1, deco_block = 1, comparator_signal = 15, end_portal_frame = 2 },
+ groups = { creative_breakable = 1, deco_block = 1, comparator_signal = 15, end_portal_frame = 2, not_in_creative_inventory = 1 },
tiles = { "mcl_portals_endframe_top.png^[lowpart:75:mcl_portals_endframe_eye.png", "mcl_portals_endframe_bottom.png", "mcl_portals_endframe_eye.png^mcl_portals_endframe_side.png" },
use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "opaque" or false,
paramtype2 = "facedir",
diff --git a/mods/ITEMS/mcl_stairs/locale/mcl_stairs.fr.tr b/mods/ITEMS/mcl_stairs/locale/mcl_stairs.fr.tr
index 9c6684fc66..4892122f63 100644
--- a/mods/ITEMS/mcl_stairs/locale/mcl_stairs.fr.tr
+++ b/mods/ITEMS/mcl_stairs/locale/mcl_stairs.fr.tr
@@ -30,9 +30,9 @@ Double Polished Stone Slab=Double Dalle en Pierre Polie
Andesite Stairs=Escalier en Andésite
Andesite Slab=Dalle en Andésite
Double Andesite Slab=Double Dalle en Andésite
-Granite Stairs=Escalier en Granite
-Granite Slab=Dalle en Granite
-Double Granite Slab=Double Dalle en Granite
+Granite Stairs=Escalier en Granit
+Granite Slab=Dalle en Granit
+Double Granite Slab=Double Dalle en Granit
Diorite Stairs=Escalier en Diorite
Diorite Slab=Dalle en Diorite
Double Diorite Slab=Double Dalle en Diorite
diff --git a/mods/ITEMS/mcl_tools/init.lua b/mods/ITEMS/mcl_tools/init.lua
index b0c12958ca..3e6695c7e7 100644
--- a/mods/ITEMS/mcl_tools/init.lua
+++ b/mods/ITEMS/mcl_tools/init.lua
@@ -415,10 +415,10 @@ local function make_stripped_trunk(itemstack, placer, pointed_thing)
return itemstack
end
- if noddef._mcl_stripped_varient == nil then
+ if noddef._mcl_stripped_variant == nil then
return itemstack
else
- minetest.swap_node(pointed_thing.under, {name=noddef._mcl_stripped_varient, param2=node.param2})
+ minetest.swap_node(pointed_thing.under, {name=noddef._mcl_stripped_variant, param2=node.param2})
if not minetest.is_creative_enabled(placer:get_player_name()) then
-- Add wear (as if digging a axey node)
local toolname = itemstack:get_name()
diff --git a/mods/ITEMS/mcl_walls/locale/mcl_walls.fr.tr b/mods/ITEMS/mcl_walls/locale/mcl_walls.fr.tr
index e4bbfd0ddc..445c8f7b39 100644
--- a/mods/ITEMS/mcl_walls/locale/mcl_walls.fr.tr
+++ b/mods/ITEMS/mcl_walls/locale/mcl_walls.fr.tr
@@ -3,7 +3,7 @@ A piece of wall. It cannot be jumped over with a simple jump. When multiple of t
Cobblestone Wall=Muret de Pierres
Mossy Cobblestone Wall=Muret de Pierres Moussu
Andesite Wall=Muret d'Andésite
-Granite Wall=Muret de Granite
+Granite Wall=Muret de Granit
Diorite Wall=Muret de Diorite
Brick Wall=Muret en Brique
Sandstone Wall=Muret de Grès
diff --git a/mods/PLAYER/mcl_playerplus/init.lua b/mods/PLAYER/mcl_playerplus/init.lua
index c00d8a91e8..8184e53881 100644
--- a/mods/PLAYER/mcl_playerplus/init.lua
+++ b/mods/PLAYER/mcl_playerplus/init.lua
@@ -191,22 +191,15 @@ minetest.register_globalstep(function(dtime)
if vector.length(player_velocity) < 40 then
local add_velocity = player.add_velocity or player.add_player_velocity
add_velocity(player, vector.multiply(player:get_look_dir(), 4))
- minetest.add_particlespawner({
- amount = 1,
- time = 0.1,
- minpos = fly_pos,
- maxpos = fly_pos,
- minvel = {x = 0, y = 0, z = 0},
- maxvel = {x = 0, y = 0, z = 0},
- minacc = {x = 0, y = 0, z = 0},
- maxacc = {x = 0, y = 0, z = 0},
- minexptime = 0.3,
- maxexptime = 0.5,
- minsize = 1,
- maxsize = 2.5,
+ add_particle({
+ pos = fly_pos,
+ velocity = {x = 0, y = 0, z = 0},
+ acceleration = {x = 0, y = 0, z = 0},
+ expirationtime = math.random(0.3, 0.5),
+ size = math.random(1, 2),
collisiondetection = false,
vertical = false,
- texture = "mcl_particles_crit.png^[colorize:#bc7a57:127",
+ texture = "mcl_particles_bonemeal.png^[colorize:#bc7a57:127",
glow = 5,
})
end