mirror of
https://github.com/barkeser2002/CatServer.git
synced 2026-09-25 12:05:59 +03:00
51 lines
1.7 KiB
Diff
51 lines
1.7 KiB
Diff
--- ../src-base/minecraft/net/minecraft/inventory/ContainerDispenser.java
|
|
+++ ../src-work/minecraft/net/minecraft/inventory/ContainerDispenser.java
|
|
@@ -1,16 +1,39 @@
|
|
package net.minecraft.inventory;
|
|
|
|
import javax.annotation.Nullable;
|
|
+
|
|
+import org.bukkit.craftbukkit.inventory.CraftInventory;
|
|
+import org.bukkit.craftbukkit.inventory.CraftInventoryView;
|
|
+
|
|
import net.minecraft.entity.player.EntityPlayer;
|
|
+import net.minecraft.entity.player.InventoryPlayer;
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
public class ContainerDispenser extends Container
|
|
{
|
|
private final IInventory dispenserInventory;
|
|
+ // CraftBukkit start
|
|
+ private CraftInventoryView bukkitEntity = null;
|
|
+ private InventoryPlayer player;
|
|
|
|
+ public CraftInventoryView getBukkitView() {
|
|
+ if (bukkitEntity != null) {
|
|
+ return bukkitEntity;
|
|
+ }
|
|
+
|
|
+ CraftInventory inventory = new CraftInventory(this.dispenserInventory);
|
|
+ bukkitEntity = new CraftInventoryView(this.player.player.getBukkitEntity(), inventory, this);
|
|
+ return bukkitEntity;
|
|
+ }
|
|
+ // CraftBukkit end
|
|
+
|
|
public ContainerDispenser(IInventory playerInventory, IInventory dispenserInventoryIn)
|
|
{
|
|
this.dispenserInventory = dispenserInventoryIn;
|
|
+ // CraftBukkit start - Save player
|
|
+ // TODO: Should we check to make sure it really is an InventoryPlayer?
|
|
+ this.player = (InventoryPlayer) playerInventory;
|
|
+ // CraftBukkit end
|
|
|
|
for (int i = 0; i < 3; ++i)
|
|
{
|
|
@@ -36,6 +59,7 @@
|
|
|
|
public boolean canInteractWith(EntityPlayer playerIn)
|
|
{
|
|
+ if (!this.checkReachable) return true; // CraftBukkit
|
|
return this.dispenserInventory.isUseableByPlayer(playerIn);
|
|
}
|
|
|