geforkt von Mirrors/Paper
4104545b11
"It was from a different time before books were as jank as they are now. As time has gone on they've only proven to be worse and worse."
31 Zeilen
1.5 KiB
Diff
31 Zeilen
1.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
|
|
Date: Wed, 15 Apr 2020 17:56:07 -0700
|
|
Subject: [PATCH] Don't run entity collision code if not needed
|
|
|
|
Will not run if max entity craming is disabled and
|
|
the max collisions per entity is less than or equal to 0
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
|
index 6388c03176449cb7b22ed9cfb26ab0bfbcf75ccc..f91c7cdd918ec1d329903beae9f3c0fd1da710c8 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
|
@@ -3256,10 +3256,16 @@ public abstract class LivingEntity extends Entity {
|
|
protected void serverAiStep() {}
|
|
|
|
protected void pushEntities() {
|
|
+ // Paper start - don't run getEntities if we're not going to use its result
|
|
+ int i = this.level.getGameRules().getInt(GameRules.RULE_MAX_ENTITY_CRAMMING);
|
|
+ if (i <= 0 && level.paperConfig.maxCollisionsPerEntity <= 0) {
|
|
+ return;
|
|
+ }
|
|
+ // Paper end - don't run getEntities if we're not going to use its result
|
|
List<Entity> list = this.level.getEntities(this, this.getBoundingBox(), EntitySelector.pushableBy(this));
|
|
|
|
if (!list.isEmpty()) {
|
|
- int i = this.level.getGameRules().getInt(GameRules.RULE_MAX_ENTITY_CRAMMING);
|
|
+ // Paper - move up
|
|
int j;
|
|
|
|
if (i > 0 && list.size() > i - 1 && this.random.nextInt(4) == 0) {
|