13
0
geforkt von Mirrors/Paper

Properly remove the experimental smithing inventory type (#9290)

Dieser Commit ist enthalten in:
Jake Potrebic 2023-06-09 11:50:00 -07:00
Ursprung fd6fd80508
Commit 120345dea6
3 geänderte Dateien mit 172 neuen und 1 gelöschten Zeilen

Datei anzeigen

@ -0,0 +1,42 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Thu, 8 Jun 2023 14:45:30 -0700
Subject: [PATCH] Properly remove the experimental smithing inventory type
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryType.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java
@@ -0,0 +0,0 @@ public enum InventoryType {
/**
* The new smithing inventory, with 3 CRAFTING slots and 1 RESULT slot.
*
- * @apiNote draft, experimental 1.20 API
+ * @deprecated use {@link #SMITHING}
*/
- @MinecraftExperimental
+ @Deprecated(forRemoval = true) // Paper
SMITHING_NEW(4, "Upgrade Gear"),
;
diff --git a/src/main/java/org/bukkit/inventory/InventoryView.java b/src/main/java/org/bukkit/inventory/InventoryView.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/inventory/InventoryView.java
+++ b/src/main/java/org/bukkit/inventory/InventoryView.java
@@ -0,0 +0,0 @@ public abstract class InventoryView {
type = InventoryType.SlotType.CRAFTING;
break;
case ANVIL:
- case SMITHING:
case CARTOGRAPHY:
case GRINDSTONE:
case MERCHANT:
@@ -0,0 +0,0 @@ public abstract class InventoryView {
}
break;
case LOOM:
+ case SMITHING: // Paper
case SMITHING_NEW:
if (slot == 3) {
type = InventoryType.SlotType.RESULT;

Datei anzeigen

@ -3,7 +3,6 @@ From: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com>
Date: Mon, 3 Apr 2023 18:46:49 +0200
Subject: [PATCH] Fix block place logic
TODO: what to do about dropped sign diff
diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644

Datei anzeigen

@ -0,0 +1,130 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Thu, 8 Jun 2023 14:45:18 -0700
Subject: [PATCH] Properly remove the experimental smithing inventory type
diff --git a/src/main/java/net/minecraft/world/inventory/SmithingMenu.java b/src/main/java/net/minecraft/world/inventory/SmithingMenu.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/net/minecraft/world/inventory/SmithingMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/SmithingMenu.java
@@ -0,0 +0,0 @@ public class SmithingMenu extends ItemCombinerMenu {
return this.bukkitEntity;
}
- org.bukkit.craftbukkit.inventory.CraftInventory inventory = new org.bukkit.craftbukkit.inventory.CraftInventorySmithingNew(
+ org.bukkit.craftbukkit.inventory.CraftInventory inventory = new org.bukkit.craftbukkit.inventory.CraftInventorySmithing( // Paper
access.getLocation(), this.inputSlots, this.resultSlots);
this.bukkitEntity = new CraftInventoryView(this.player.getBukkitEntity(), inventory, this);
return this.bukkitEntity;
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java
@@ -0,0 +0,0 @@ public class CraftContainer extends AbstractContainerMenu {
case STONECUTTER:
return MenuType.STONECUTTER;
case SMITHING_NEW:
+ case SMITHING:
return MenuType.SMITHING;
case CREATIVE:
case CRAFTING:
@@ -0,0 +0,0 @@ public class CraftContainer extends AbstractContainerMenu {
this.delegate = new HopperMenu(windowId, bottom, top);
break;
case ANVIL:
- case SMITHING:
this.setupAnvil(top, bottom); // SPIGOT-6783 - manually set up slots so we can use the delegated inventory and not the automatically created one
break;
case BEACON:
@@ -0,0 +0,0 @@ public class CraftContainer extends AbstractContainerMenu {
case MERCHANT:
this.delegate = new MerchantMenu(windowId, bottom);
break;
+ case SMITHING: // Paper
case SMITHING_NEW:
this.setupSmithing(top, bottom); // SPIGOT-6783 - manually set up slots so we can use the delegated inventory and not the automatically created one
break;
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java
@@ -0,0 +0,0 @@ public class CraftInventory implements Inventory {
return InventoryType.COMPOSTER;
} else if (this.inventory instanceof JukeboxBlockEntity) {
return InventoryType.JUKEBOX;
- } else if (this instanceof CraftInventorySmithingNew) {
- return InventoryType.SMITHING_NEW;
+ // Paper - remove
} else {
return InventoryType.CHEST;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java
@@ -0,0 +0,0 @@ public class CraftInventorySmithing extends CraftResultInventory implements Smit
@Override
public ItemStack getResult() {
- return getItem(2);
+ return getItem(net.minecraft.world.inventory.SmithingMenu.RESULT_SLOT); // Paper
}
@Override
public void setResult(ItemStack item) {
- setItem(2, item);
+ setItem(net.minecraft.world.inventory.SmithingMenu.RESULT_SLOT, item); // Paper
}
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithingNew.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithingNew.java
deleted file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithingNew.java
+++ /dev/null
@@ -0,0 +0,0 @@
-package org.bukkit.craftbukkit.inventory;
-
-import net.minecraft.world.Container;
-import net.minecraft.world.inventory.ResultContainer;
-import org.bukkit.Location;
-import org.bukkit.inventory.ItemStack;
-import org.bukkit.inventory.Recipe;
-import org.bukkit.inventory.SmithingInventory;
-
-public class CraftInventorySmithingNew extends CraftResultInventory implements SmithingInventory {
-
- private final Location location;
-
- public CraftInventorySmithingNew(Location location, Container inventory, ResultContainer resultInventory) {
- super(inventory, resultInventory);
- this.location = location;
- }
-
- @Override
- public ResultContainer getResultInventory() {
- return (ResultContainer) super.getResultInventory();
- }
-
- @Override
- public Location getLocation() {
- return this.location;
- }
-
- @Override
- public ItemStack getResult() {
- return getItem(3);
- }
-
- @Override
- public void setResult(ItemStack item) {
- setItem(3, item);
- }
-
- @Override
- public Recipe getRecipe() {
- net.minecraft.world.item.crafting.Recipe recipe = this.getResultInventory().getRecipeUsed();
- return (recipe == null) ? null : recipe.toBukkitRecipe();
- }
-}