From 96fa6c251ef59acaed76b6e65e4a7af795cb62b6 Mon Sep 17 00:00:00 2001 From: Eliy21 Date: Wed, 20 Dec 2023 15:50:37 +0000 Subject: [PATCH] Counteract self forward velocity when hit by players in pvp --- mods/ITEMS/mcl_enchanting/enchantments.lua | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mods/ITEMS/mcl_enchanting/enchantments.lua b/mods/ITEMS/mcl_enchanting/enchantments.lua index 29fdab6f6..bd9b4047d 100644 --- a/mods/ITEMS/mcl_enchanting/enchantments.lua +++ b/mods/ITEMS/mcl_enchanting/enchantments.lua @@ -308,6 +308,11 @@ function minetest.calculate_knockback(player, hitter, time_from_last_punch, tool knockback = knockback + 0.609375 end end + -- counteract forward velocity when hit + local self_dir_dot = (v.x * dir.x) + (v.z * dir.z) + if self_dir_dot < 0 then + player:add_velocity({x = v.x * -1, y = 0, z = v.z * -1}) + end -- add player velocity to knockback local h_name = hitter:get_player_name() local hv = hitter:get_velocity()