mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-18 17:07:43 +01:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@a9f252e Replace third party repos with Paper repo (#7733) PaperMC/Paper@b8fa41e [ci skip] Remove Mojang repo from test-plugin PaperMC/Paper@c6e631a Use username instead of display name in PlayerList#getPlayerStats (#7740) PaperMC/Paper@1cfd363 Updated Upstream (Bukkit/CraftBukkit/Spigot)
This commit is contained in:
@@ -5,7 +5,7 @@ Subject: [PATCH] Anvil API
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||
index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c3f4db84c 100644
|
||||
index ec89526f1eabef4681fed57b74fc1bef5be4c0c1..a88efd9b435349ae00c4152f09d87ebf4f724659 100644
|
||||
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||
@@ -3,7 +3,11 @@ package net.minecraft.world.inventory;
|
||||
@@ -20,7 +20,7 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
import net.minecraft.tags.BlockTags;
|
||||
import net.minecraft.world.entity.player.Inventory;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
@@ -40,6 +44,8 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -41,6 +45,8 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
public int maximumRepairCost = 40;
|
||||
private CraftInventoryView bukkitEntity;
|
||||
// CraftBukkit end
|
||||
@@ -29,12 +29,12 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
|
||||
public AnvilMenu(int syncId, Inventory inventory) {
|
||||
this(syncId, inventory, ContainerLevelAccess.NULL);
|
||||
@@ -58,12 +64,14 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -59,12 +65,14 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
|
||||
@Override
|
||||
protected boolean mayPickup(Player player, boolean present) {
|
||||
- return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && this.cost.get() >= 0; // Paper - fix anvil prepare event not working with 0 xp
|
||||
+ return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && (bypassCost || this.cost.get() >= 0); // Paper - fix anvil prepare event not working with 0 xp // Purpur
|
||||
- return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && this.cost.get() > AnvilMenu.DEFAULT_DENIED_COST && present; // CraftBukkit - allow cost 0 like a free item
|
||||
+ return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && (bypassCost || this.cost.get() > AnvilMenu.DEFAULT_DENIED_COST) && present; // CraftBukkit - allow cost 0 like a free item // Purpur
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -45,7 +45,7 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
player.giveExperienceLevels(-this.cost.get());
|
||||
}
|
||||
|
||||
@@ -114,6 +122,12 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -115,6 +123,12 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
|
||||
@Override
|
||||
public void createResult() {
|
||||
@@ -58,7 +58,7 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
ItemStack itemstack = this.inputSlots.getItem(0);
|
||||
|
||||
this.cost.set(1);
|
||||
@@ -190,7 +204,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -191,7 +205,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
int i2 = (Integer) map1.get(enchantment);
|
||||
|
||||
i2 = l1 == i2 ? i2 + 1 : Math.max(i2, l1);
|
||||
@@ -67,7 +67,7 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
|
||||
if (this.player.getAbilities().instabuild || itemstack.is(Items.ENCHANTED_BOOK)) {
|
||||
flag3 = true;
|
||||
@@ -202,7 +216,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -203,7 +217,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
Enchantment enchantment1 = (Enchantment) iterator1.next();
|
||||
|
||||
if (enchantment1 != enchantment && !enchantment.isCompatibleWith(enchantment1)) {
|
||||
@@ -76,7 +76,7 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
++i;
|
||||
}
|
||||
}
|
||||
@@ -273,6 +287,13 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -274,6 +288,13 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
this.cost.set(this.maximumRepairCost - 1); // CraftBukkit
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ index af199f8bb4e25b25653aa780fd02573b5a974904..90e1c28a5030ecf5fe1d5e6ff2a1685c
|
||||
if (this.cost.get() >= this.maximumRepairCost && !this.player.getAbilities().instabuild) { // CraftBukkit
|
||||
itemstack1 = ItemStack.EMPTY;
|
||||
}
|
||||
@@ -295,6 +316,12 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
@@ -296,6 +317,12 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||
org.bukkit.craftbukkit.event.CraftEventFactory.callPrepareAnvilEvent(this.getBukkitView(), itemstack1); // CraftBukkit
|
||||
sendAllDataToRemote(); // CraftBukkit - SPIGOT-6686: Always send completed inventory to stay in sync with client
|
||||
this.broadcastChanges();
|
||||
|
||||
Reference in New Issue
Block a user