From 0d2301d67bf5240385f6dde1fbb34c28376119ac Mon Sep 17 00:00:00 2001 From: oilboi <47129783+oilboi@users.noreply.github.com> Date: Tue, 9 Jun 2020 09:39:03 -0400 Subject: [PATCH] Fix players sneaking items into boots slot causing crash --- README.md | 1 + mods/player/player_interaction.lua | 44 +++++++++++++++--------------- 2 files changed, 23 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 3ba8ed4..5377c97 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,7 @@ enable_mod_channels = true - Added in clientside modchannel lockout to check if server sending message - Added in capes - Overhauled client mod version checking +- Overhauled mob pathfinding AI --- diff --git a/mods/player/player_interaction.lua b/mods/player/player_interaction.lua index de626aa..fb2a82a 100644 --- a/mods/player/player_interaction.lua +++ b/mods/player/player_interaction.lua @@ -28,30 +28,30 @@ minetest.register_on_player_hpchange(function(player, hp_change, reason) recalculate_armor(player) set_armor_gui(player) --do particles too - else + elseif minetest.get_item_group(new_stack,"boots") > 0 then + local pos = player:get_pos() + minetest.add_particlespawner({ + amount = 30, + time = 0.00001, + minpos = {x=pos.x-0.5, y=pos.y+0.1, z=pos.z-0.5}, + maxpos = {x=pos.x+0.5, y=pos.y+0.1, z=pos.z+0.5}, + minvel = vector.new(-0.5,1,-0.5), + maxvel = vector.new(0.5 ,2 ,0.5), + minacc = {x=0, y=-9.81, z=1}, + maxacc = {x=0, y=-9.81, z=1}, + minexptime = 0.5, + maxexptime = 1.5, + minsize = 0, + maxsize = 0, + --attached = player, + collisiondetection = true, + collision_removal = true, + vertical = false, + node = {name= name.."particletexture"}, + --texture = "eat_particles_1.png" + }) minetest.sound_play("armor_fall_damage", {object=player, gain = 1.0, max_hear_distance = 60,pitch = math.random(80,100)/100}) end - local pos = player:get_pos() - minetest.add_particlespawner({ - amount = 30, - time = 0.00001, - minpos = {x=pos.x-0.5, y=pos.y+0.1, z=pos.z-0.5}, - maxpos = {x=pos.x+0.5, y=pos.y+0.1, z=pos.z+0.5}, - minvel = vector.new(-0.5,1,-0.5), - maxvel = vector.new(0.5 ,2 ,0.5), - minacc = {x=0, y=-9.81, z=1}, - maxacc = {x=0, y=-9.81, z=1}, - minexptime = 0.5, - maxexptime = 1.5, - minsize = 0, - maxsize = 0, - --attached = player, - collisiondetection = true, - collision_removal = true, - vertical = false, - node = {name= name.."particletexture"}, - --texture = "eat_particles_1.png" - }) fall_damage = fall_damage + absorption -- 2.44.0