9
0
mirror of https://github.com/Dreeam-qwq/Gale.git synced 2025-12-27 18:49:11 +00:00
Files
Gale/patches/server/0104-Skip-negligible-planar-movement-multiplication.patch
2022-12-01 14:41:32 +01:00

32 lines
1.8 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: MartijnMuijsers <martijnmuijsers@live.nl>
Date: Wed, 30 Nov 2022 23:44:41 +0100
Subject: [PATCH] Skip negligible planar movement multiplication
License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index f6b9c9c55effdc169d8226308b3163bc5c54b3ed..cb4b8628413f019621e07144f02e8d4738b21eff 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1195,9 +1195,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
}
this.tryCheckInsideBlocks();
+ // Gale start - skip negligible planar movement multiplication
+ Vec3 oldDeltaMovement = this.getDeltaMovement();
+ if (oldDeltaMovement.x < -1e-7 || oldDeltaMovement.x > 1e-7 || oldDeltaMovement.z < -1e-7 || oldDeltaMovement.z > 1e-7) {
+ // Gale end - skip negligible planar movement multiplication
float f2 = this.getBlockSpeedFactor();
- this.setDeltaMovement(this.getDeltaMovement().multiply((double) f2, 1.0D, (double) f2));
+ // Gale start - skip negligible planar movement multiplication
+ if (f2 < 1 - 1e-7 || f2 > 1 + 1e-7) {
+ this.setDeltaMovement(oldDeltaMovement.multiply(f2, 1.0D, f2));
+ }
+ }
+ // Gale end - skip negligible planar movement multiplication
// Paper start - remove expensive streams from here
boolean noneMatch = true;
AABB fireSearchBox = this.getBoundingBox().deflate(1.0E-6D);