#1431: Add API for InventoryView derivatives

By: Miles Holder <mwholder2005@gmail.com>
This commit is contained in:
CraftBukkit/Spigot
2024-07-27 10:01:29 +10:00
parent 7fae51f18d
commit bfad1aa117
23 changed files with 537 additions and 72 deletions

View File

@@ -4,7 +4,7 @@
import net.minecraft.world.item.trading.MerchantRecipe;
import net.minecraft.world.item.trading.MerchantRecipeList;
+import org.bukkit.craftbukkit.inventory.CraftInventoryView; // CraftBukkit
+import org.bukkit.craftbukkit.inventory.view.CraftMerchantView; // CraftBukkit
+
public class ContainerMerchant extends Container {
@@ -14,13 +14,13 @@
private boolean canRestock;
+ // CraftBukkit start
+ private CraftInventoryView bukkitEntity = null;
+ private CraftMerchantView bukkitEntity = null;
+ private PlayerInventory player;
+
+ @Override
+ public CraftInventoryView getBukkitView() {
+ public CraftMerchantView getBukkitView() {
+ if (bukkitEntity == null) {
+ bukkitEntity = new CraftInventoryView(this.player.player.getBukkitEntity(), new org.bukkit.craftbukkit.inventory.CraftInventoryMerchant(trader, tradeContainer), this);
+ bukkitEntity = new CraftMerchantView(this.player.player.getBukkitEntity(), new org.bukkit.craftbukkit.inventory.CraftInventoryMerchant(trader, tradeContainer), this, trader);
+ }
+ return bukkitEntity;
+ }