fbae9dbe07
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 2b8fb83f #601: Add Block#isPreferredTool CraftBukkit Changes: 9db9aeece #823: Add Block#isPreferredTool
98 lines
3.8 KiB
Diff
98 lines
3.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: MeFisto94 <MeFisto94@users.noreply.github.com>
|
|
Date: Tue, 11 Aug 2020 19:17:46 +0200
|
|
Subject: [PATCH] Add a way to get translation keys for blocks, entities and
|
|
materials
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
|
|
index 2b53e68e96ea346a6f2b5cadcf9f81b2c231c408..e453e5eb7245aad3ecbb19652ebb34abe030c0a9 100644
|
|
--- a/src/main/java/org/bukkit/Material.java
|
|
+++ b/src/main/java/org/bukkit/Material.java
|
|
@@ -3578,6 +3578,16 @@ public enum Material implements Keyed {
|
|
}
|
|
return false;
|
|
}
|
|
+
|
|
+ /**
|
|
+ * Return the translation key for the Material, so the client can translate it into the active
|
|
+ * locale when using a TranslatableComponent.
|
|
+ * @return the translation key
|
|
+ */
|
|
+ @NotNull
|
|
+ public String getTranslationKey() {
|
|
+ return Bukkit.getUnsafe().getTranslationKey(this);
|
|
+ }
|
|
// Paper end
|
|
|
|
/**
|
|
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
|
|
index b824a1b0590014d428e64f789008454bd241996a..23d0798d479fc3dd9cc4c41f7999a889987b9ab0 100644
|
|
--- a/src/main/java/org/bukkit/UnsafeValues.java
|
|
+++ b/src/main/java/org/bukkit/UnsafeValues.java
|
|
@@ -95,5 +95,27 @@ public interface UnsafeValues {
|
|
byte[] serializeItem(ItemStack item);
|
|
|
|
ItemStack deserializeItem(byte[] data);
|
|
+
|
|
+ /**
|
|
+ * Return the translation key for the Material, so the client can translate it into the active
|
|
+ * locale when using a TranslatableComponent.
|
|
+ * @return the translation key
|
|
+ */
|
|
+ String getTranslationKey(Material mat);
|
|
+
|
|
+ /**
|
|
+ * Return the translation key for the Block, so the client can translate it into the active
|
|
+ * locale when using a TranslatableComponent.
|
|
+ * @return the translation key
|
|
+ */
|
|
+ String getTranslationKey(org.bukkit.block.Block block);
|
|
+
|
|
+ /**
|
|
+ * Return the translation key for the EntityType, so the client can translate it into the active
|
|
+ * locale when using a TranslatableComponent.<br>
|
|
+ * This is <code>null</code>, when the EntityType isn't known to NMS (custom entities)
|
|
+ * @return the translation key
|
|
+ */
|
|
+ String getTranslationKey(org.bukkit.entity.EntityType type);
|
|
// Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/block/Block.java b/src/main/java/org/bukkit/block/Block.java
|
|
index e1cc36fbe808973227c0e8ca7166453235c90279..e6647c45f65bae916759cd899256f8130790d242 100644
|
|
--- a/src/main/java/org/bukkit/block/Block.java
|
|
+++ b/src/main/java/org/bukkit/block/Block.java
|
|
@@ -584,5 +584,13 @@ public interface Block extends Metadatable {
|
|
*/
|
|
@NotNull
|
|
com.destroystokyo.paper.block.BlockSoundGroup getSoundGroup();
|
|
+
|
|
+ /**
|
|
+ * Return the translation key for the Block, so the client can translate it into the active
|
|
+ * locale when using a TranslatableComponent.
|
|
+ * @return the translation key
|
|
+ */
|
|
+ @NotNull
|
|
+ String getTranslationKey();
|
|
// Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java
|
|
index 774363a8186b3861f10c0452ac63726cae365169..692b75eb78405874077c850bfc72e247ccc80860 100644
|
|
--- a/src/main/java/org/bukkit/entity/EntityType.java
|
|
+++ b/src/main/java/org/bukkit/entity/EntityType.java
|
|
@@ -414,4 +414,15 @@ public enum EntityType implements Keyed {
|
|
public boolean isAlive() {
|
|
return living;
|
|
}
|
|
+
|
|
+ /**
|
|
+ * Return the translation key for the EntityType, so the client can translate it into the active
|
|
+ * locale when using a TranslatableComponent.<br>
|
|
+ * This is <code>null</code>, when the EntityType isn't known to NMS (custom entities)
|
|
+ * @return the translation key
|
|
+ */
|
|
+ @Nullable
|
|
+ String getTranslationKey() {
|
|
+ return org.bukkit.Bukkit.getUnsafe().getTranslationKey(this);
|
|
+ }
|
|
}
|