mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-01 12:42:05 -07:00
Update upstream, fix accidental removal from last
This commit is contained in:
@@ -6,7 +6,7 @@ Subject: [PATCH] Optimize World.isLoaded(BlockPosition)Z
|
|||||||
Reduce method invocations for World.isLoaded(BlockPosition)Z
|
Reduce method invocations for World.isLoaded(BlockPosition)Z
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||||
index e7ae4c706..51e05f414 100644
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
--- a/src/main/java/net/minecraft/server/World.java
|
--- a/src/main/java/net/minecraft/server/World.java
|
||||||
+++ b/src/main/java/net/minecraft/server/World.java
|
+++ b/src/main/java/net/minecraft/server/World.java
|
||||||
@@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess {
|
@@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess {
|
||||||
|
@@ -1,77 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Aikar <aikar@aikar.co>
|
|
||||||
Date: Wed, 4 May 2016 22:31:18 -0400
|
|
||||||
Subject: [PATCH] Process NMS Data Conversion post ItemMeta on Copy
|
|
||||||
|
|
||||||
ItemMeta apply is a destructive process that expects to be the authority on
|
|
||||||
what the items NBT data is.
|
|
||||||
|
|
||||||
When CraftItemStack.asNMSCopy was called, the conversion ran, potentially setting
|
|
||||||
the converted data into the ItemStacks tag.
|
|
||||||
|
|
||||||
Then if that item had ItemMeta, it would completely undo that conversion by
|
|
||||||
erasing the NBT Tag.
|
|
||||||
|
|
||||||
On copy, run conversion post ItemMeta apply.
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/DataInspectorBlockEntity.java b/src/main/java/net/minecraft/server/DataInspectorBlockEntity.java
|
|
||||||
index 4a8820e68..27fb802bf 100644
|
|
||||||
--- a/src/main/java/net/minecraft/server/DataInspectorBlockEntity.java
|
|
||||||
+++ b/src/main/java/net/minecraft/server/DataInspectorBlockEntity.java
|
|
||||||
@@ -0,0 +0,0 @@ public class DataInspectorBlockEntity implements DataInspector {
|
|
||||||
boolean flag;
|
|
||||||
|
|
||||||
if (s1 == null) {
|
|
||||||
- DataInspectorBlockEntity.a.warn("Unable to resolve BlockEntity for ItemInstance: {}", new Object[] { s});
|
|
||||||
+ //DataInspectorBlockEntity.a.warn("Unable to resolve BlockEntity for ItemInstance: {}", new Object[] { s}); // Paper - no need to nag about an ok condition
|
|
||||||
flag = false;
|
|
||||||
} else {
|
|
||||||
flag = !nbttagcompound2.hasKey("id");
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
|
|
||||||
index 66973051a..1218c005e 100644
|
|
||||||
--- a/src/main/java/net/minecraft/server/ItemStack.java
|
|
||||||
+++ b/src/main/java/net/minecraft/server/ItemStack.java
|
|
||||||
@@ -0,0 +0,0 @@ public final class ItemStack {
|
|
||||||
this(item, i, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ // Paper start
|
|
||||||
public ItemStack(Item item, int i, int j) {
|
|
||||||
+ this(item, i, j, true);
|
|
||||||
+ }
|
|
||||||
+ public ItemStack(Item item, int i, int j, boolean convert) {
|
|
||||||
+ // Paper end
|
|
||||||
this.item = item;
|
|
||||||
this.damage = j;
|
|
||||||
this.count = i;
|
|
||||||
// CraftBukkit start - Pass to setData to do filtering
|
|
||||||
+ // Paper start
|
|
||||||
+ if (convert) convertData(j);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ public final void convertData(int data) {
|
|
||||||
+ // Paper end
|
|
||||||
if (MinecraftServer.getServer() != null) {
|
|
||||||
- this.setData(j);
|
|
||||||
+ this.setData(data);
|
|
||||||
NBTTagCompound savedStack = new NBTTagCompound();
|
|
||||||
this.save(savedStack);
|
|
||||||
MinecraftServer.getServer().getDataConverterManager().a(DataConverterTypes.ITEM_INSTANCE, savedStack); // PAIL: convert
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
|
|
||||||
index 4afd3a99a..a862e946c 100644
|
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
|
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
|
|
||||||
@@ -0,0 +0,0 @@ public final class CraftItemStack extends ItemStack {
|
|
||||||
return net.minecraft.server.ItemStack.a;
|
|
||||||
}
|
|
||||||
|
|
||||||
- net.minecraft.server.ItemStack stack = new net.minecraft.server.ItemStack(item, original.getAmount(), original.getDurability());
|
|
||||||
+ net.minecraft.server.ItemStack stack = new net.minecraft.server.ItemStack(item, original.getAmount(), original.getDurability(), false); // Paper
|
|
||||||
if (original.hasItemMeta()) {
|
|
||||||
setItemMeta(stack, original.getItemMeta());
|
|
||||||
}
|
|
||||||
+ stack.convertData(original.getDurability()); // Paper
|
|
||||||
return stack;
|
|
||||||
}
|
|
||||||
|
|
||||||
--
|
|
Reference in New Issue
Block a user