diff --git a/mods/ENTITIES/mcl_boats/init.lua b/mods/ENTITIES/mcl_boats/init.lua index beff5fb52..2a976c2f3 100644 --- a/mods/ENTITIES/mcl_boats/init.lua +++ b/mods/ENTITIES/mcl_boats/init.lua @@ -41,7 +41,18 @@ local function check_object(obj) end local function get_visual_size(obj) - return obj:is_player() and {x = 1, y = 1, z = 1} or obj:get_luaentity()._old_visual_size or obj:get_properties().visual_size + if not obj or obj:is_player() then + return boat_visual_size + end + local luaentity = obj:get_luaentity() + if luaentity then + if luaentity._old_visual_size then + return luaentity._old_visual_size + else + return boat_visual_size + end + end + return obj:get_properties().visual_size end local function set_attach(boat) diff --git a/mods/ENTITIES/mcl_mobs/api/mob_functions/movement.lua b/mods/ENTITIES/mcl_mobs/api/mob_functions/movement.lua index b10d794ea..cbc2076e7 100644 --- a/mods/ENTITIES/mcl_mobs/api/mob_functions/movement.lua +++ b/mods/ENTITIES/mcl_mobs/api/mob_functions/movement.lua @@ -43,6 +43,11 @@ mobs.float = function(self) self.object:set_acceleration({x=0, y=0, z=0}) end + if self.jump_only then + self.object:set_acceleration({x=acceleration.x, y=-5, z=acceleration.z}) + return + end + local current_velocity = self.object:get_velocity() local new_velocity_addition = DEFAULT_FLOAT_SPEED - current_velocity.y diff --git a/mods/ENVIRONMENT/mcl_weather/nether_dust.lua b/mods/ENVIRONMENT/mcl_weather/nether_dust.lua index 488745eec..49c726eb5 100644 --- a/mods/ENVIRONMENT/mcl_weather/nether_dust.lua +++ b/mods/ENVIRONMENT/mcl_weather/nether_dust.lua @@ -21,14 +21,14 @@ local psdef= { } local function check_player(player) - local name=player:get_player_name(name) + local name=player:get_player_name(player) if mcl_worlds.has_dust(player:get_pos()) and not mcl_weather.nether_dust.particlespawners[name] then return true end end mcl_weather.nether_dust.add_particlespawners = function(player) - local name=player:get_player_name(name) + local name=player:get_player_name(player) mcl_weather.nether_dust.particlespawners[name]={} psdef.playername = name psdef.attached = player @@ -40,7 +40,7 @@ mcl_weather.nether_dust.add_particlespawners = function(player) end mcl_weather.nether_dust.delete_particlespawners = function(player) - local name=player:get_player_name(name) + local name=player:get_player_name(player) if mcl_weather.nether_dust.particlespawners[name] then for i=1,3 do minetest.delete_particlespawner(mcl_weather.nether_dust.particlespawners[name][i]) diff --git a/mods/HUD/mcl_inventory/init.lua b/mods/HUD/mcl_inventory/init.lua index c197bfdd9..1785ed91f 100644 --- a/mods/HUD/mcl_inventory/init.lua +++ b/mods/HUD/mcl_inventory/init.lua @@ -177,7 +177,5 @@ minetest.register_on_joinplayer(function(player) return_fields(player, "enchanting_lapis") end) -if minetest.is_creative_enabled("") then - dofile(minetest.get_modpath(minetest.get_current_modname()).."/creative.lua") -end +dofile(minetest.get_modpath(minetest.get_current_modname()).."/creative.lua") diff --git a/mods/HUD/mcl_inventory/mod.conf b/mods/HUD/mcl_inventory/mod.conf index 10e669265..1a23698b0 100644 --- a/mods/HUD/mcl_inventory/mod.conf +++ b/mods/HUD/mcl_inventory/mod.conf @@ -1,5 +1,5 @@ name = mcl_inventory author = BlockMen description = Adds the player inventory and creative inventory. -depends = mcl_init, mcl_formspec, mcl_enchanting +depends = mcl_init, mcl_formspec, mcl_enchanting, mcl_commands optional_depends = mcl_armor, mcl_brewing, mcl_potions, mcl_enchanting, mcl_craftguide, mcl_player diff --git a/mods/ITEMS/REDSTONE/mesecons_solarpanel/init.lua b/mods/ITEMS/REDSTONE/mesecons_solarpanel/init.lua index 1c89293cc..05fed31a3 100644 --- a/mods/ITEMS/REDSTONE/mesecons_solarpanel/init.lua +++ b/mods/ITEMS/REDSTONE/mesecons_solarpanel/init.lua @@ -207,7 +207,7 @@ minetest.register_abm({ local light = minetest.get_node_light(pos, nil) local time = minetest.get_us_time() - if light < 14 and time > 18000 then + if light < 14 and time > 18000 then minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_inverted_on", param2=node.param2}) mesecon.receptor_on(pos, mesecon.rules.pplate) end diff --git a/mods/ITEMS/mcl_bows/arrow.lua b/mods/ITEMS/mcl_bows/arrow.lua index 7e5ab169a..7529da167 100644 --- a/mods/ITEMS/mcl_bows/arrow.lua +++ b/mods/ITEMS/mcl_bows/arrow.lua @@ -73,7 +73,7 @@ local ARROW_ENTITY={ _stuckin=nil, --Position of node in which arow is stuck. _shooter=nil, -- ObjectRef of player or mob who shot it _is_arrow = true, - + _in_player = false, _viscosity=0, -- Viscosity of node the arrow is currently in _deflection_cooloff=0, -- Cooloff timer after an arrow deflection, to prevent many deflections in quick succession } @@ -439,6 +439,7 @@ function ARROW_ENTITY.get_staticdata(self) is_critical = self._is_critical, stuck = self._stuck, stuckin = self._stuckin, + stuckin_player = self._in_player, } if self._stuck then -- If _stucktimer is missing for some reason, assume the maximum @@ -453,21 +454,10 @@ function ARROW_ENTITY.get_staticdata(self) return minetest.serialize(out) end -local function remove_arrow_on_joinplayer(staticdata, self) - if not staticdata.activated then - staticdata.activated = true - else - self.object:remove() - end -end - function ARROW_ENTITY.on_activate(self, staticdata, dtime_s) self._time_in_air = 1.0 - self._in_player = false local data = minetest.deserialize(staticdata) if data then - remove_arrow_on_joinplayer(data, self) - self._stuck = data.stuck if data.stuck then if data.stuckstarttime then @@ -498,10 +488,23 @@ function ARROW_ENTITY.on_activate(self, staticdata, dtime_s) self._shooter = shooter end end + + if data.stuckin_player then + self.object:remove() + end end self.object:set_armor_groups({ immortal = 1 }) end +minetest.register_on_respawnplayer(function(player) + for _, obj in pairs(player:get_children()) do + local ent = obj:get_luaentity() + if ent and ent.name and string.find(ent.name, "mcl_bows:arrow_entity") then + obj:remove() + end + end +end) + minetest.register_entity("mcl_bows:arrow_entity", ARROW_ENTITY) if minetest.get_modpath("mcl_core") and minetest.get_modpath("mcl_mobitems") then diff --git a/mods/ITEMS/mcl_buckets/init.lua b/mods/ITEMS/mcl_buckets/init.lua index 931214b95..61efc02e4 100644 --- a/mods/ITEMS/mcl_buckets/init.lua +++ b/mods/ITEMS/mcl_buckets/init.lua @@ -186,8 +186,12 @@ function mcl_buckets.register_liquid(def) local undernode = get_node(pointed_thing.under) local abovenode = get_node(pointed_thing.above) - local buildable1 = minetest.registered_nodes[undernode.name] and minetest.registered_nodes[undernode.name].buildable_to - local buildable2 = minetest.registered_nodes[abovenode.name] and minetest.registered_nodes[abovenode.name].buildable_to + local name1, name2 = undernode.name, abovenode.name + local regnode1, regnode2 = minetest.registered_nodes[name1], minetest.registered_nodes[name2] + + local buildable1 = regnode1 and (regnode1.buildable_to or regnode1.groups.cauldron == 1) + local buildable2 = regnode2 and (regnode2.buildable_to or regnode2.groups.cauldron == 1) + if not buildable1 and not buildable2 then return itemstack end --if both nodes aren't buildable_to, skip if buildable1 then diff --git a/mods/ITEMS/mcl_core/nodes_glass.lua b/mods/ITEMS/mcl_core/nodes_glass.lua index 6e7ab350b..8b3aea689 100644 --- a/mods/ITEMS/mcl_core/nodes_glass.lua +++ b/mods/ITEMS/mcl_core/nodes_glass.lua @@ -5,10 +5,11 @@ local mod_doc = minetest.get_modpath("doc") minetest.register_node("mcl_core:glass", { description = S("Glass"), _doc_items_longdesc = S("A decorative and mostly transparent block."), - drawtype = "glasslike", + drawtype = "glasslike_framed_optional", is_ground_content = false, - tiles = {"default_glass.png"}, + tiles = {"default_glass.png", "default_glass_detail.png"}, paramtype = "light", + paramtype2 = "glasslikeliquidlevel", sunlight_propagates = true, stack_max = 64, groups = {handy=1, glass=1, building_block=1, material_glass=1}, @@ -39,10 +40,11 @@ function mcl_core.add_stained_glass(desc, recipeitem, colorgroup, color) _doc_items_create_entry = create_entry, _doc_items_entry_name = entry_name, _doc_items_longdesc = longdesc, - drawtype = "glasslike", + drawtype = "glasslike_framed_optional", is_ground_content = false, - tiles = {"mcl_core_glass_"..color..".png"}, + tiles = {"mcl_core_glass_"..color..".png", "mcl_core_glass_"..color.."_detail.png"}, paramtype = "light", + paramtype2 = "glasslikeliquidlevel", sunlight_propagates = true, use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "blend" or true, stack_max = 64, diff --git a/mods/ITEMS/mcl_core/textures/default_glass_detail.png b/mods/ITEMS/mcl_core/textures/default_glass_detail.png new file mode 100644 index 000000000..791309817 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/default_glass_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_black_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_black_detail.png new file mode 100644 index 000000000..48bcb54c4 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_black_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_blue_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_blue_detail.png new file mode 100644 index 000000000..0d026ce7c Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_blue_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_brown_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_brown_detail.png new file mode 100644 index 000000000..e012b08f2 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_brown_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_cyan_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_cyan_detail.png new file mode 100644 index 000000000..92dedaa84 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_cyan_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_gray_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_gray_detail.png new file mode 100644 index 000000000..f7daeba19 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_gray_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_green_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_green_detail.png new file mode 100644 index 000000000..fb54f942b Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_green_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_light_blue_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_light_blue_detail.png new file mode 100644 index 000000000..5c7a34fce Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_light_blue_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_lime_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_lime_detail.png new file mode 100644 index 000000000..963933572 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_lime_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_magenta_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_magenta_detail.png new file mode 100644 index 000000000..8a1ffeda8 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_magenta_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_orange_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_orange_detail.png new file mode 100644 index 000000000..4894833f1 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_orange_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_pink_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_pink_detail.png new file mode 100644 index 000000000..38bd3a8c3 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_pink_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_purple_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_purple_detail.png new file mode 100644 index 000000000..a31284094 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_purple_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_red_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_red_detail.png new file mode 100644 index 000000000..db44333b2 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_red_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_silver_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_silver_detail.png new file mode 100644 index 000000000..8ff77440a Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_silver_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_white_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_white_detail.png new file mode 100644 index 000000000..baddd95eb Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_white_detail.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_glass_yellow_detail.png b/mods/ITEMS/mcl_core/textures/mcl_core_glass_yellow_detail.png new file mode 100644 index 000000000..83eedf08b Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_glass_yellow_detail.png differ diff --git a/mods/MISC/mcl_commands/gamemode.lua b/mods/MISC/mcl_commands/gamemode.lua new file mode 100644 index 000000000..bd24a7685 --- /dev/null +++ b/mods/MISC/mcl_commands/gamemode.lua @@ -0,0 +1,80 @@ +local S = minetest.get_translator(minetest.get_current_modname()) + +local gamemode_ids = { + survival = 1, + creative = 2, +} + +local id_to_gamemode = {} +for gamemode, id in pairs(gamemode_ids) do + id_to_gamemode[id] = gamemode +end + +local creative_mode = 'creative' + +local storage = minetest.get_mod_storage() + +local player_to_gamemode_id = minetest.deserialize(storage:get_string("player_to_gamemode_id") or "return {}") or {} +minetest.register_on_shutdown(function() + storage:set_string("player_to_gamemode_id", minetest.serialize(player_to_gamemode_id)) +end) + +local core_is_creative_enabled = minetest.is_creative_enabled + +minetest.is_creative_enabled = function(name) + local id = player_to_gamemode_id[name] + if id then + local gamemode = id_to_gamemode[id] + if gamemode then + return gamemode == creative_mode + end + end + return core_is_creative_enabled(name) +end + +local function handle_gamemode_command(player_name, new_gamemode) + player_to_gamemode_id[player_name] = gamemode_ids[new_gamemode] + return true +end + +if minetest.registered_chatcommands["gamemode"] then + minetest.unregister_chatcommand("gamemode") +end + +local function get_gamemode_param() + local param + local i = 0 + for gamemode, _ in pairs(gamemode_ids) do + if i == 0 then + param = "(" + else + param = param .. " | " + end + i = i + 1 + param = param .. gamemode + end + if i > 0 then + param = param .. ") " + end + return param +end + +minetest.register_chatcommand("gamemode", { + params = S("@1[]", get_gamemode_param()), + description = S("Set game mode for player or yourself"), + privs = {server=true}, + func = function(name, param) + if (param == "") then + return false, S("Error: No game mode specified.") + end + if (gamemode_ids[param]) then + handle_gamemode_command(name, param) + else + local new_gamemode, player_name = string.match(param, "^([%a]+) ([%a%d_-]+)$") + if not new_gamemode or not gamemode_ids[new_gamemode] or not player_name then + return false, S("Invalid usage, see /help @1", "gamemode") + end + handle_gamemode_command(player_name, new_gamemode) + end + end +}) diff --git a/mods/MISC/mcl_commands/init.lua b/mods/MISC/mcl_commands/init.lua index a287c2926..b6b07fb22 100644 --- a/mods/MISC/mcl_commands/init.lua +++ b/mods/MISC/mcl_commands/init.lua @@ -1,5 +1,6 @@ local modpath = minetest.get_modpath(minetest.get_current_modname()) +dofile(modpath.."/gamemode.lua") dofile(modpath.."/kill.lua") dofile(modpath.."/setblock.lua") dofile(modpath.."/seed.lua") diff --git a/mods/MISC/mcl_commands/locale/mcl_commands.de.tr b/mods/MISC/mcl_commands/locale/mcl_commands.de.tr index 68d267517..7f21c8537 100644 --- a/mods/MISC/mcl_commands/locale/mcl_commands.de.tr +++ b/mods/MISC/mcl_commands/locale/mcl_commands.de.tr @@ -10,7 +10,7 @@ Kill player or yourself=Spieler oder sich selbst töten Can use /say=Kann „/say“ benutzen = Send a message to every player=Nachricht an alle Spieler senden -Invalid usage, see /help say.=Falsche Benutzung, siehe „/help say“. +Invalid usage, see /help @1.=Falsche Benutzung, siehe „/help @1“. ,, =,, Set node at given position=Node (Block) an der gegebenen Position platzieren Invalid node=Unültiger Node @@ -21,3 +21,6 @@ Ban list: @1=Bannliste: @1 Show who is logged on=Anzeigen, wer eingeloggt ist Displays the world seed=Den Seed der Welt anzeigen Only peaceful mobs allowed!=Nur friedliche Mobs erlaubt! +@1[]= +Set game mode for player or yourself= +Error: No game mode specified.= diff --git a/mods/MISC/mcl_commands/locale/mcl_commands.es.tr b/mods/MISC/mcl_commands/locale/mcl_commands.es.tr index 91b21eb91..a04d4aaf1 100644 --- a/mods/MISC/mcl_commands/locale/mcl_commands.es.tr +++ b/mods/MISC/mcl_commands/locale/mcl_commands.es.tr @@ -21,3 +21,6 @@ Ban list: @1=Lista de baneados: @1 Show who is logged on=Mostrar quién ha iniciado sesión Displays the world seed=Muestra la semilla del mundo Only peaceful mobs allowed!=¡Solo se permiten animales pacíficos! +@1[]= +Set game mode for player or yourself= +Error: No game mode specified.= diff --git a/mods/MISC/mcl_commands/locale/mcl_commands.fr.tr b/mods/MISC/mcl_commands/locale/mcl_commands.fr.tr index a655368bf..e83913264 100644 --- a/mods/MISC/mcl_commands/locale/mcl_commands.fr.tr +++ b/mods/MISC/mcl_commands/locale/mcl_commands.fr.tr @@ -10,7 +10,7 @@ Kill player or yourself=Tuez un joueur ou vous-même Can use /say=Peut utiliser /say = Send a message to every player=Envoyez un message à chaque joueur -Invalid usage, see /help say.=Utilisation non valide, voir /help say. +Invalid usage, see /help @1.=Utilisation non valide, voir /help @1. ,, =,, Set node at given position=Placer le noeud à une position donnée Invalid node=Noeud non valide @@ -21,3 +21,6 @@ Ban list: @1=Liste d'interdiction: @1 Show who is logged on=Afficher qui est connecté Displays the world seed=Affiche la graine du monde Only peaceful mobs allowed!=Seuls les mobs pacifiques sont autorisées! +@1[]= +Set game mode for player or yourself= +Error: No game mode specified.= diff --git a/mods/MISC/mcl_commands/locale/mcl_commands.pl.tr b/mods/MISC/mcl_commands/locale/mcl_commands.pl.tr index 4a3ad181c..bacdae3a9 100644 --- a/mods/MISC/mcl_commands/locale/mcl_commands.pl.tr +++ b/mods/MISC/mcl_commands/locale/mcl_commands.pl.tr @@ -10,7 +10,7 @@ Kill player or yourself=Zabij gracza lub siebie Can use /say=Może używać /say = Send a message to every player=Wyślij wiadomość do każdego gracza -Invalid usage, see /help say.=Niepoprawne użyciu, zobacz /help say. +Invalid usage, see /help @1.=Niepoprawne użyciu, zobacz /help @1. ,, =,, Set node at given position=Ustaw node w danej pozycji Invalid node=Niepoprawny node @@ -21,3 +21,6 @@ Ban list: @1=Lista zbanowanych: @1 Show who is logged on=Pokaż zalogowanych Displays the world seed=Wyświetl ziarno świata Only peaceful mobs allowed!=Tylko pokojowe moby dozwolone! +@1[]= +Set game mode for player or yourself= +Error: No game mode specified.= diff --git a/mods/MISC/mcl_commands/locale/mcl_commands.ru.tr b/mods/MISC/mcl_commands/locale/mcl_commands.ru.tr index 686c8067c..4378e5de5 100644 --- a/mods/MISC/mcl_commands/locale/mcl_commands.ru.tr +++ b/mods/MISC/mcl_commands/locale/mcl_commands.ru.tr @@ -10,7 +10,7 @@ Kill player or yourself=Убить игрока или себя Can use /say=Можно использовать /say =<сообщение> Send a message to every player=Отправляет сообщение всем игрокам -Invalid usage, see /help say.=Недопустимое использование, см. /help say. +Invalid usage, see /help @1.=Недопустимое использование, см. /help @1. ,, =,, <СтрокаУзла> Set node at given position=Устанавливает узел в заданной позиции Invalid node=Неправильный узел @@ -21,3 +21,6 @@ Ban list: @1=Бан-лист: @1 Show who is logged on=Показывает, кто подключён Displays the world seed=Показывает значение зерна мира (seed) Only peaceful mobs allowed!=Включены только мирные мобы! +@1[]=@1[<имя>] +Set game mode for player or yourself=Задаёт режим игры для игрока или для вас +Error: No game mode specified.=Ошибка: Режим игры не указан. diff --git a/mods/MISC/mcl_commands/locale/template.txt b/mods/MISC/mcl_commands/locale/template.txt index 5b4370b8f..b42f06085 100644 --- a/mods/MISC/mcl_commands/locale/template.txt +++ b/mods/MISC/mcl_commands/locale/template.txt @@ -10,7 +10,7 @@ Kill player or yourself= Can use /say= = Send a message to every player= -Invalid usage, see /help say.= +Invalid usage, see /help @1.= ,, = Set node at given position= Invalid node= @@ -21,3 +21,6 @@ Ban list: @1= Show who is logged on= Displays the world seed= Only peaceful mobs allowed!= +@1[]= +Set game mode for player or yourself= +Error: No game mode specified.= diff --git a/mods/MISC/mcl_commands/say.lua b/mods/MISC/mcl_commands/say.lua index 9fd53c174..5f5bc5b00 100644 --- a/mods/MISC/mcl_commands/say.lua +++ b/mods/MISC/mcl_commands/say.lua @@ -10,7 +10,7 @@ minetest.register_chatcommand("say", { privs = {announce=true}, func = function(name, param) if not param then - return false, S("Invalid usage, see /help say.") + return false, S("Invalid usage, see /help @1.", "say") end minetest.chat_send_all(("["..name.."] "..param)) return true diff --git a/mods/PLAYER/mcl_anticheat/init.lua b/mods/PLAYER/mcl_anticheat/init.lua index a37c9b5b8..25ec3fd48 100644 --- a/mods/PLAYER/mcl_anticheat/init.lua +++ b/mods/PLAYER/mcl_anticheat/init.lua @@ -6,7 +6,6 @@ local get_connected_players = minetest.get_connected_players local get_node = minetest.get_node local get_objects_inside_radius = minetest.get_objects_inside_radius local get_player_by_name = minetest.get_player_by_name -local is_creative_enabled = minetest.is_creative_enabled local kick_player = minetest.kick_player local set_node = minetest.set_node @@ -63,7 +62,7 @@ local function update_player(player_object) end local function check_player(name) - if is_creative_enabled(name) then return end + if minetest.is_creative_enabled(name) then return end local data = joined_players[name] if not data then return end if not data[0] then return end diff --git a/mods/PLAYER/mcl_playerplus/init.lua b/mods/PLAYER/mcl_playerplus/init.lua index 380f29bd4..a989c8071 100644 --- a/mods/PLAYER/mcl_playerplus/init.lua +++ b/mods/PLAYER/mcl_playerplus/init.lua @@ -552,7 +552,8 @@ mcl_damage.register_modifier(function(obj, damage, reason) node = minetest.get_node(pos) end if node then - if minetest.registered_nodes[node.name].walkable then + local def = minetest.registered_nodes[node.name] + if not def or def.walkable then return end if minetest.get_item_group(node.name, "water") ~= 0 then