mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-09 13:28:36 +02:00
This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. We also store counts by type to further enable other performance optimizations in later patches.
25 lines
1.3 KiB
Diff
25 lines
1.3 KiB
Diff
From f468cbcfc4e7e05e67215e55bb021f4fb1ef1007 Mon Sep 17 00:00:00 2001
|
|
From: Byteflux <byte@byteflux.net>
|
|
Date: Tue, 1 Mar 2016 15:08:03 -0600
|
|
Subject: [PATCH] Remove invalid mob spawner tile entities
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
|
index ca5a42377..50113c303 100644
|
|
--- a/src/main/java/net/minecraft/server/Chunk.java
|
|
+++ b/src/main/java/net/minecraft/server/Chunk.java
|
|
@@ -759,6 +759,10 @@ public class Chunk {
|
|
tileentity.A();
|
|
this.tileEntities.put(blockposition, tileentity);
|
|
// CraftBukkit start
|
|
+ // Paper start - Remove invalid mob spawner tile entities
|
|
+ } else if (tileentity instanceof TileEntityMobSpawner && org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(getBlockData(blockposition).getBlock()) != org.bukkit.Material.MOB_SPAWNER) {
|
|
+ this.tileEntities.remove(blockposition);
|
|
+ // Paper end
|
|
} else {
|
|
System.out.println("Attempted to place a tile entity (" + tileentity + ") at " + tileentity.position.getX() + "," + tileentity.position.getY() + "," + tileentity.position.getZ()
|
|
+ " (" + org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(getBlockData(blockposition).getBlock()) + ") where there was no entity tile!");
|
|
--
|
|
2.18.0
|
|
|