diff --git a/patches/server/Moonrise-optimisation-patches.patch b/patches/server/Moonrise-optimisation-patches.patch index d80d876e6..deecdad6e 100644 --- a/patches/server/Moonrise-optimisation-patches.patch +++ b/patches/server/Moonrise-optimisation-patches.patch @@ -18347,11 +18347,17 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + + public CollisionContext getDelegate() { + this.delegated = true; -+ final Entity entity = this.getEntity(); ++ final Entity entity = super.getEntity(); + return this.delegate == null ? this.delegate = (entity == null ? CollisionContext.empty() : CollisionContext.of(entity)) : this.delegate; + } + + @Override ++ public Entity getEntity() { ++ this.getDelegate(); ++ return super.getEntity(); ++ } ++ ++ @Override + public boolean isDescending() { + return this.getDelegate().isDescending(); + } @@ -31088,9 +31094,9 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + // Paper start - optimise collisions + if (this.cache != null) { + final VoxelShape collisionShape = this.cache.collisionShape; -+ try { -+ this.constantCollisionShape = this.getCollisionShape(null, null, null); -+ } catch (final Throwable throwable) { ++ if (this.isAir()) { ++ this.constantCollisionShape = Shapes.empty(); ++ } else { + this.constantCollisionShape = null; + } + this.occludesFullBlock = ((ca.spottedleaf.moonrise.patches.collisions.shape.CollisionVoxelShape)collisionShape).moonrise$occludesFullBlock();