papermc/Spigot-API-Patches/0048-Provide-E-TE-Chunk-count-stat-methods.patch
Aikar e4ef645032 Enforce Sync Chunk Unloads
Unloading Chunks async is extremely dangerous. This will force it to main
the same way we handle async chunk loads.
2017-01-07 16:10:56 -05:00

44 lines
1.2 KiB
Diff

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
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..2b6136fd 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -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
+
/**
* Gets the {@link Block} at the given coordinates
*
--
2.11.0