Enforce Sync Chunk Unloads

Unloading Chunks async is extremely dangerous. This will force it to main
the same way we handle async chunk loads.
This commit is contained in:
Aikar 2017-01-07 16:08:16 -05:00
parent 2e3081d45c
commit e4ef645032
2 changed files with 49 additions and 3 deletions

View file

@ -1,4 +1,4 @@
From 604dc8e444593ab84281c94ca4eb334164c96ea8 Mon Sep 17 00:00:00 2001
From 20f93fadc1651fc03cbd926370d79d191a3fe1f1 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 7 Jan 2017 15:23:03 -0500
Subject: [PATCH] Provide E/TE/Chunk count stat methods
@ -7,17 +7,32 @@ Provides counts without the ineffeciency of using .getEntities().size()
which creates copy of the collections.
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
index 56f50296..63cdcdb8 100644
index 56f50296..2b6136fd 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -24,6 +24,13 @@ import org.bukkit.util.Vector;
@@ -24,6 +24,28 @@ import org.bukkit.util.Vector;
*/
public interface World extends PluginMessageRecipient, Metadatable {
+ // Paper start
+ /**
+ * @return The amount of Entities in this world
+ */
+ int getEntityCount();
+
+ /**
+ * @return The amount of Tile Entities in this world
+ */
+ int getTileEntityCount();
+
+ /**
+ * @return The amount of Tickable Tile Entities in this world
+ */
+ int getTickableTileEntityCount();
+
+ /**
+ * @return The amount of Chunks in this world
+ */
+ int getChunkCount();
+ // Paper end
+