mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-19 17:37:42 +01:00
Implement ItemFactory#getMonsterEgg
This commit is contained in:
32
patches/api/0013-Implement-ItemFactory-getMonsterEgg.patch
Normal file
32
patches/api/0013-Implement-ItemFactory-getMonsterEgg.patch
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
From 6e35aa8c329b3e93f32e2974247e23e42bf2b082 Mon Sep 17 00:00:00 2001
|
||||||
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||||
|
Date: Fri, 5 Jul 2019 16:37:04 -0500
|
||||||
|
Subject: [PATCH] Implement ItemFactory#getMonsterEgg
|
||||||
|
|
||||||
|
---
|
||||||
|
src/main/java/org/bukkit/inventory/ItemFactory.java | 11 +++++++++++
|
||||||
|
1 file changed, 11 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
|
||||||
|
index 03ba2265..630c15d2 100644
|
||||||
|
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
|
||||||
|
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
|
||||||
|
@@ -166,4 +166,15 @@ public interface ItemFactory {
|
||||||
|
@Nullable
|
||||||
|
String getI18NDisplayName(@Nullable ItemStack item);
|
||||||
|
// Paper end
|
||||||
|
+
|
||||||
|
+ // Purpur start
|
||||||
|
+ /**
|
||||||
|
+ * Get a monster egg ItemStack from an EntityType
|
||||||
|
+ *
|
||||||
|
+ * @param type EntityType
|
||||||
|
+ * @return ItemStack spawner egg
|
||||||
|
+ */
|
||||||
|
+ @Nullable
|
||||||
|
+ ItemStack getMonsterEgg(@Nullable org.bukkit.entity.EntityType type);
|
||||||
|
+ // Purpur end
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.20.1
|
||||||
|
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
From 3da9a55c19a7080d6976b28f8c51be51f8f711c5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||||
|
Date: Fri, 5 Jul 2019 16:36:55 -0500
|
||||||
|
Subject: [PATCH] Implement ItemFactory#getMonsterEgg
|
||||||
|
|
||||||
|
---
|
||||||
|
.../java/net/minecraft/server/ItemMonsterEgg.java | 2 +-
|
||||||
|
.../craftbukkit/inventory/CraftItemFactory.java | 14 ++++++++++++++
|
||||||
|
2 files changed, 15 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/main/java/net/minecraft/server/ItemMonsterEgg.java b/src/main/java/net/minecraft/server/ItemMonsterEgg.java
|
||||||
|
index 4482dd930..bb3b0abd9 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/ItemMonsterEgg.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/ItemMonsterEgg.java
|
||||||
|
@@ -8,7 +8,7 @@ import javax.annotation.Nullable;
|
||||||
|
|
||||||
|
public class ItemMonsterEgg extends Item {
|
||||||
|
|
||||||
|
- private static final Map<EntityTypes<?>, ItemMonsterEgg> a = Maps.newIdentityHashMap();
|
||||||
|
+ public static final Map<EntityTypes<?>, ItemMonsterEgg> a = Maps.newIdentityHashMap(); // Purpur - private -> public
|
||||||
|
private final int b;
|
||||||
|
private final int c;
|
||||||
|
private final EntityTypes<?> d;
|
||||||
|
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
|
||||||
|
index 80f71a77b..0dae1fcf7 100644
|
||||||
|
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
|
||||||
|
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
|
||||||
|
@@ -349,4 +349,18 @@ public final class CraftItemFactory implements ItemFactory {
|
||||||
|
return nms != null ? net.minecraft.server.LocaleLanguage.getInstance().translateKey(nms.getItem().getName()) : null;
|
||||||
|
}
|
||||||
|
// Paper end
|
||||||
|
+
|
||||||
|
+ // Purpur start
|
||||||
|
+ @Override
|
||||||
|
+ public ItemStack getMonsterEgg(org.bukkit.entity.EntityType type) {
|
||||||
|
+ if (type == null) {
|
||||||
|
+ return null;
|
||||||
|
+ }
|
||||||
|
+ String name = type.getKey().toString();
|
||||||
|
+ net.minecraft.server.MinecraftKey key = new net.minecraft.server.MinecraftKey(name);
|
||||||
|
+ net.minecraft.server.EntityTypes types = net.minecraft.server.EntityTypes.getFromKey(key);
|
||||||
|
+ net.minecraft.server.ItemMonsterEgg egg = net.minecraft.server.ItemMonsterEgg.a.get(types);
|
||||||
|
+ return new net.minecraft.server.ItemStack(egg).asBukkitMirror();
|
||||||
|
+ }
|
||||||
|
+ // Purpur end
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.20.1
|
||||||
|
|
||||||
Reference in New Issue
Block a user