From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 Date: Thu, 4 Jun 2026 17:32:39 +0800 Subject: [PATCH] Gale: Skip negligible planar movement multiplication License: GPL-3.0-only (https://www.gnu.org/licenses/gpl-3.0.html) Gale - https://github.com/GaleMC/Gale diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java index e4dfb9dec23b1ac38e2f2de529d9683615e758a7..ab3bc9fea3fb5da4f851f4722fae77dd961f2e55 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -1299,8 +1299,17 @@ public abstract class Entity } } - float blockSpeedFactor = this.getBlockSpeedFactor(); - this.setDeltaMovement(this.getDeltaMovement().multiply(blockSpeedFactor, 1.0, blockSpeedFactor)); + // Gale start - skip negligible planar movement multiplication + Vec3 oldDeltaMovement = this.getDeltaMovement(); + if (oldDeltaMovement.x < -1e-6 || oldDeltaMovement.x > 1e-6 || oldDeltaMovement.z < -1e-6 || oldDeltaMovement.z > 1e-6) { + // Gale end - skip negligible planar movement multiplication + float blockSpeedFactor = this.getBlockSpeedFactor(); + // Gale start - skip negligible planar movement multiplication + if (blockSpeedFactor < 1 - 1e-6 || blockSpeedFactor > 1 + 1e-6) { + this.setDeltaMovement(oldDeltaMovement.multiply(blockSpeedFactor, 1.0, blockSpeedFactor)); + } + } + // Gale end - skip negligible planar movement multiplication profiler.pop(); } }