From bc335ac5d600e1185cdcc583ab32bc055cf58051 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Sun, 29 Dec 2013 23:56:08 -0600 Subject: [PATCH] Optional Slots... --- container/slot/IOptionalSlotHost.java | 8 ++++++++ container/slot/OptionalSlotFake.java | 29 +++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 container/slot/IOptionalSlotHost.java create mode 100644 container/slot/OptionalSlotFake.java diff --git a/container/slot/IOptionalSlotHost.java b/container/slot/IOptionalSlotHost.java new file mode 100644 index 00000000..40f78b9f --- /dev/null +++ b/container/slot/IOptionalSlotHost.java @@ -0,0 +1,8 @@ +package appeng.container.slot; + +public interface IOptionalSlotHost +{ + + boolean isSlotEnabled(int idx, OptionalSlotFake osf); + +} diff --git a/container/slot/OptionalSlotFake.java b/container/slot/OptionalSlotFake.java new file mode 100644 index 00000000..0331440e --- /dev/null +++ b/container/slot/OptionalSlotFake.java @@ -0,0 +1,29 @@ +package appeng.container.slot; + +import net.minecraft.inventory.IInventory; + +public class OptionalSlotFake extends SlotFake +{ + + int invSlot; + final int groupNum; + IOptionalSlotHost host; + + int srcX; + int srcY; + + public OptionalSlotFake(IInventory inv, IOptionalSlotHost containerBus, int idx, int x, int y, int offX, int offY, int groupNum) { + super( inv, idx, x + offX * 18, y + offY * 18 ); + srcX = x; + srcY = y; + invSlot = idx; + this.groupNum = groupNum; + } + + @Override + public boolean isEnabled() + { + return host.isSlotEnabled( groupNum, this ); + } + +}