From 678d7962c0df14c49acdfd4f5592a93f5017f3c3 Mon Sep 17 00:00:00 2001 From: Leaf Date: Tue, 14 Jan 2025 08:44:19 +1300 Subject: [PATCH] No fall damage in soulhomes for entities --- .../leaf/soulhome/handlers/CommonEvents.java | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/main/java/leaf/soulhome/handlers/CommonEvents.java b/src/main/java/leaf/soulhome/handlers/CommonEvents.java index 1e072b1..4ab7b60 100644 --- a/src/main/java/leaf/soulhome/handlers/CommonEvents.java +++ b/src/main/java/leaf/soulhome/handlers/CommonEvents.java @@ -31,8 +31,23 @@ public static void registerCommands(RegisterCommandsEvent event) public static void onLivingHurt(LivingHurtEvent event) { final LivingEntity entityLiving = event.getEntity(); - if (entityLiving instanceof Player - && DimensionHelper.isInSoulDimension(entityLiving)) + final boolean inSoulDimension = DimensionHelper.isInSoulDimension(entityLiving); + + if (!inSoulDimension) + { + return; + } + + //no fall damage in soul homes for any entity + if (event.getSource() == entityLiving.damageSources().fall()) + { + entityLiving.fallDistance = 0; + event.setCanceled(true); + return; + } + + + if (entityLiving instanceof Player) { event.setCanceled(true); entityLiving.fallDistance = 0;