From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Samsuik Date: Thu, 23 Sep 2021 18:50:13 +0100 Subject: [PATCH] Optimise LivingEntity#pushEntities diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java index 902a19def9d902e7bfb476688354a070633a3454..c10c3f46fe29733c4b7fab7dd6d68a76905488eb 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3510,7 +3510,11 @@ public abstract class LivingEntity extends Entity { return; } // Paper end - don't run getEntities if we're not going to use its result - List list = this.level.getEntities((Entity) this, this.getBoundingBox(), EntitySelector.pushable(this, level.paperConfig().collisions.fixClimbingBypassingCrammingRule)); // Paper - fix climbing bypassing cramming rule + // Sakura start - use maxEntityCollision limit for entity retrival + int limit = Math.max(i, this.level.paperConfig().collisions.maxEntityCollisions); + int search = limit * limit; + List list = this.level.getLimitedEntities((Entity) this, this.getBoundingBox(), EntitySelector.pushable(this, level.paperConfig().collisions.fixClimbingBypassingCrammingRule), limit, search); // Paper - fix climbing bypassing cramming rule + // Sakura end - use maxEntityCollision limit for entity retrival if (!list.isEmpty()) { // Paper - moved up