aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0419-Cache-block-data-strings.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0419-Cache-block-data-strings.patch')
-rw-r--r--patches/server/0419-Cache-block-data-strings.patch19
1 files changed, 9 insertions, 10 deletions
diff --git a/patches/server/0419-Cache-block-data-strings.patch b/patches/server/0419-Cache-block-data-strings.patch
index ead288ff03..933c5a446f 100644
--- a/patches/server/0419-Cache-block-data-strings.patch
+++ b/patches/server/0419-Cache-block-data-strings.patch
@@ -17,10 +17,10 @@ index 44521086adbb9db6574045414c7b23a4dde22387..8d572e02747b86fb975776c2b3689b91
if (this.isSameThread()) {
diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
-index 19fab0d8d8a6211782df1fd99b5d60681aecd2f5..b875bebb8b63c6f60301180fc2e3fc9c1bc87193 100644
+index c1c5750dd2e4a9af1a115996a87eaaa1ea552c74..67ff2241aa8869b41abb0a93467b8694618264e2 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
-@@ -153,7 +153,7 @@ public class CraftBlockData implements BlockData {
+@@ -154,7 +154,7 @@ public class CraftBlockData implements BlockData {
return exactMatch;
}
@@ -29,7 +29,7 @@ index 19fab0d8d8a6211782df1fd99b5d60681aecd2f5..b875bebb8b63c6f60301180fc2e3fc9c
/**
* Convert an NMS Enum (usually a BlockStateEnum) to its appropriate Bukkit
-@@ -538,9 +538,39 @@ public class CraftBlockData implements BlockData {
+@@ -539,7 +539,38 @@ public class CraftBlockData implements BlockData {
Preconditions.checkState(CraftBlockData.MAP.put(nms, bukkit) == null, "Duplicate mapping %s->%s", nms, bukkit);
}
@@ -48,12 +48,11 @@ index 19fab0d8d8a6211782df1fd99b5d60681aecd2f5..b875bebb8b63c6f60301180fc2e3fc9c
+ }
+ // Paper end - cache block data strings
+
- public static CraftBlockData newData(Material material, String data) {
- Preconditions.checkArgument(material == null || material.isBlock(), "Cannot get data for not block %s", material);
-
+ public static CraftBlockData newData(BlockType blockType, String data) {
++
+ // Paper start - cache block data strings
-+ if (material != null) {
-+ Block block = CraftBlockType.bukkitToMinecraft(material);
++ if (blockType != null) {
++ Block block = CraftBlockType.bukkitToMinecraftNew(blockType);
+ if (block != null) {
+ net.minecraft.resources.ResourceLocation key = BuiltInRegistries.BLOCK.getKey(block);
+ data = data == null ? key.toString() : key + data;
@@ -64,8 +63,8 @@ index 19fab0d8d8a6211782df1fd99b5d60681aecd2f5..b875bebb8b63c6f60301180fc2e3fc9c
+ return (CraftBlockData) cached.clone();
+ }
+
-+ private static CraftBlockData createNewData(Material material, String data) {
++ private static CraftBlockData createNewData(BlockType blockType, String data) {
+ // Paper end - cache block data strings
net.minecraft.world.level.block.state.BlockState blockData;
- Block block = CraftBlockType.bukkitToMinecraft(material);
+ Block block = blockType == null ? null : ((CraftBlockType<?>) blockType).getHandle();
Map<Property<?>, Comparable<?>> parsed = null;