From 2a55c36b74a85a38d1d35398d375dcdc6c2ccd95 Mon Sep 17 00:00:00 2001 From: Kam Date: Fri, 6 Mar 2026 05:42:56 -0500 Subject: [PATCH] Reset Position / World Time when Entity is reflected --- .../java/kamkeel/npcs/entity/EntityEnergyProjectile.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/kamkeel/npcs/entity/EntityEnergyProjectile.java b/src/main/java/kamkeel/npcs/entity/EntityEnergyProjectile.java index 4b55b82e0..974853533 100644 --- a/src/main/java/kamkeel/npcs/entity/EntityEnergyProjectile.java +++ b/src/main/java/kamkeel/npcs/entity/EntityEnergyProjectile.java @@ -576,6 +576,14 @@ public abstract class EntityEnergyProjectile extends EntityEnergyAbility { barrierImpactPauseTicks = 0; barrierImpactDestroyOnResume = false; + // Reset start position and lifetime so the reflected projectile gets a fresh + // max-distance budget and lifetime. Without this, re-reflection fails because + // the projectile expires from the original launch's distance/time limits. + startX = posX; + startY = posY; + startZ = posZ; + deathWorldTime = -1; + // Detach from source ability BEFORE changing ownership. // This lets the ability see the projectile as gone and free the caster // (e.g., release movement/rotation locks on the player).