From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: MeFisto94 <MeFisto94@users.noreply.github.com>
Date: Fri, 28 Aug 2020 01:41:26 +0200
Subject: [PATCH] Expose the Entity Counter to allow plugins to use valid and
 non-conflicting Entity Ids


diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index fa0256a99c833e6035b8d3e873a93af2b674ef52..53fb4f04087c091f3354e74d6b94554601f2cbe0 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -3375,4 +3375,10 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
 
         void accept(Entity entity, double d0, double d1, double d2);
     }
+
+    // Paper start
+    public static int nextEntityId() {
+        return entityCount.incrementAndGet();
+    }
+    // Paper end
 }
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 1718735d00a0316b5b7a61adaf22f7118daaff08..ed926fc6ebbabd50a73d216a9e018a9427f5b128 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -410,6 +410,10 @@ public final class CraftMagicNumbers implements UnsafeValues {
         return net.minecraft.server.EntityTypes.getByName(type.getName()).map(net.minecraft.server.EntityTypes::getDescriptionId).orElse(null);
     }
 
+    public int nextEntityId() {
+        return net.minecraft.server.Entity.nextEntityId();
+    }
+
     // Paper end
 
     /**
