31 lines
1.4 KiB
Diff
31 lines
1.4 KiB
Diff
--- ../src-base/minecraft/net/minecraft/tileentity/TileEntityLockable.java
|
|
+++ ../src-work/minecraft/net/minecraft/tileentity/TileEntityLockable.java
|
|
@@ -48,4 +48,27 @@
|
|
{
|
|
return (ITextComponent)(this.func_145818_k_() ? new TextComponentString(this.func_70005_c_()) : new TextComponentTranslation(this.func_70005_c_(), new Object[0]));
|
|
}
|
|
+
|
|
+ private net.minecraftforge.items.IItemHandler itemHandler;
|
|
+
|
|
+ protected net.minecraftforge.items.IItemHandler createUnSidedHandler()
|
|
+ {
|
|
+ return new net.minecraftforge.items.wrapper.InvWrapper(this);
|
|
+ }
|
|
+
|
|
+ @SuppressWarnings("unchecked")
|
|
+ @Override
|
|
+ @javax.annotation.Nullable
|
|
+ public <T> T getCapability(net.minecraftforge.common.capabilities.Capability<T> capability, @javax.annotation.Nullable net.minecraft.util.EnumFacing facing)
|
|
+ {
|
|
+ if (capability == net.minecraftforge.items.CapabilityItemHandler.ITEM_HANDLER_CAPABILITY)
|
|
+ return (T) (itemHandler == null ? (itemHandler = createUnSidedHandler()) : itemHandler);
|
|
+ return super.getCapability(capability, facing);
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public boolean hasCapability(net.minecraftforge.common.capabilities.Capability<?> capability, @javax.annotation.Nullable net.minecraft.util.EnumFacing facing)
|
|
+ {
|
|
+ return capability == net.minecraftforge.items.CapabilityItemHandler.ITEM_HANDLER_CAPABILITY || super.hasCapability(capability, facing);
|
|
+ }
|
|
}
|