geforkt von Mirrors/Paper
abba3d113b
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: bb813f6f SPIGOT-4605: Warn against hacking physics CraftBukkit Changes:2ced0233
Don't handle sync packets for kicked playersd5e96882
SPIGOT-4602: Cache reflection in decompile error workaround Spigot Changes: b0f4c22b SPIGOT-4605: Catch more physics problems
72 Zeilen
3.7 KiB
Diff
72 Zeilen
3.7 KiB
Diff
From 37c4fc9303c9da3c1a83e5e8603ff99fd3a19951 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Wed, 13 Apr 2016 00:25:28 -0400
|
|
Subject: [PATCH] Remove unused World Tile Entity List
|
|
|
|
Massive hit to performance and it is completely unnecessary.
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
|
index af6abc2df..d8ef300f7 100644
|
|
--- a/src/main/java/net/minecraft/server/World.java
|
|
+++ b/src/main/java/net/minecraft/server/World.java
|
|
@@ -71,7 +71,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
|
|
};
|
|
// Spigot end
|
|
protected final Set<Entity> g = com.google.common.collect.Sets.newHashSet(); // Paper
|
|
- public final List<TileEntity> tileEntityList = Lists.newArrayList();
|
|
+ //public final List<TileEntity> tileEntityList = Lists.newArrayList(); // Paper - remove unused list
|
|
public final List<TileEntity> tileEntityListTick = Lists.newArrayList();
|
|
private final List<TileEntity> c = Lists.newArrayList();
|
|
private final Set<TileEntity> tileEntityListUnload = com.google.common.collect.Sets.newHashSet(); // Paper
|
|
@@ -1268,7 +1268,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
|
|
timings.tileEntityTick.startTiming(); // Spigot
|
|
if (!this.tileEntityListUnload.isEmpty()) {
|
|
this.tileEntityListTick.removeAll(this.tileEntityListUnload);
|
|
- this.tileEntityList.removeAll(this.tileEntityListUnload);
|
|
+ //this.tileEntityList.removeAll(this.tileEntityListUnload); // Paper - remove unused list
|
|
this.tileEntityListUnload.clear();
|
|
}
|
|
|
|
@@ -1321,7 +1321,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
|
|
if (tileentity.x()) {
|
|
tilesThisCycle--;
|
|
this.tileEntityListTick.remove(tileTickPosition--);
|
|
- this.tileEntityList.remove(tileentity);
|
|
+ //this.tileEntityList.remove(tileentity); // Paper - remove unused list
|
|
if (this.isLoaded(tileentity.getPosition())) {
|
|
this.getChunkAtWorldCoords(tileentity.getPosition()).d(tileentity.getPosition());
|
|
}
|
|
@@ -1351,7 +1351,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
|
|
this.notify(tileentity1.getPosition(), iblockdata, iblockdata, 3);
|
|
// CraftBukkit start
|
|
// From above, don't screw this up - SPIGOT-1746
|
|
- if (!this.tileEntityList.contains(tileentity1)) {
|
|
+ if (true) { // Paper - remove unused list
|
|
this.a(tileentity1);
|
|
}
|
|
// CraftBukkit end
|
|
@@ -1371,9 +1371,9 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
|
|
protected void p_() {}
|
|
|
|
public boolean a(TileEntity tileentity) {
|
|
- boolean flag = this.tileEntityList.add(tileentity);
|
|
+ boolean flag = true; // Paper - remove unused list
|
|
|
|
- if (flag && tileentity instanceof ITickable) {
|
|
+ if (flag && tileentity instanceof ITickable && !this.tileEntityListTick.contains(tileentity)) { // Paper
|
|
this.tileEntityListTick.add(tileentity);
|
|
}
|
|
|
|
@@ -1854,7 +1854,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
|
|
} else {
|
|
if (tileentity != null) {
|
|
this.c.remove(tileentity);
|
|
- this.tileEntityList.remove(tileentity);
|
|
+ //this.tileEntityList.remove(tileentity); // Paper - remove unused list
|
|
this.tileEntityListTick.remove(tileentity);
|
|
}
|
|
|
|
--
|
|
2.20.1
|
|
|