From 3d0b0324a98086b6d7bbb129eac3f9fdd3bc8c45 Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Wed, 11 Sep 2019 22:54:07 +0200 Subject: [PATCH] Fix containers mostly --- .../com/raoulvdberge/refinedstorage/RS.java | 3 + .../refinedstorage/RSContainers.java | 56 +++++++++++++++++++ .../container/ContainerAmount.java | 4 +- .../container/ContainerBase.java | 20 +++---- .../container/ContainerConstructor.java | 11 ++-- .../container/ContainerController.java | 5 +- .../container/ContainerCrafter.java | 9 +-- .../container/ContainerCrafterManager.java | 31 ++++------ .../container/ContainerCraftingMonitor.java | 12 ++-- .../container/ContainerCraftingSettings.java | 6 +- .../container/ContainerDestructor.java | 11 ++-- .../container/ContainerDetector.java | 9 +-- .../container/ContainerDiskDrive.java | 11 ++-- .../container/ContainerDiskManipulator.java | 15 ++--- .../container/ContainerExporter.java | 11 ++-- .../container/ContainerExternalStorage.java | 9 +-- .../container/ContainerFilter.java | 13 +++-- .../container/ContainerFluidAmount.java | 4 +- .../container/ContainerFluidInterface.java | 11 ++-- .../container/ContainerFluidStorage.java | 7 ++- .../container/ContainerGrid.java | 37 ++++++------ .../container/ContainerImporter.java | 11 ++-- .../container/ContainerInterface.java | 13 +++-- .../ContainerNetworkTransmitter.java | 7 ++- .../container/ContainerReaderWriter.java | 10 ++-- .../container/ContainerRelay.java | 5 +- .../container/ContainerSecurityManager.java | 9 +-- .../container/ContainerStorage.java | 7 ++- .../container/ContainerStorageMonitor.java | 7 ++- .../ContainerWirelessTransmitter.java | 7 ++- 30 files changed, 220 insertions(+), 151 deletions(-) create mode 100644 src/main/java/com/raoulvdberge/refinedstorage/RSContainers.java diff --git a/src/main/java/com/raoulvdberge/refinedstorage/RS.java b/src/main/java/com/raoulvdberge/refinedstorage/RS.java index 377c80a59..63c739812 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/RS.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/RS.java @@ -15,6 +15,7 @@ import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.*; import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; +import net.minecraftforge.fml.network.NetworkHooks; @Mod(modid = RS.ID, version = RS.VERSION, acceptedMinecraftVersions = "[1.12.2,1.13)", guiFactory = RS.GUI_FACTORY, updateJSON = RS.UPDATE_JSON, certificateFingerprint = RS.FINGERPRINT, dependencies = RS.DEPENDENCIES) public final class RS { @@ -59,6 +60,8 @@ public final class RS { config = new RSConfig(null, e.getSuggestedConfigurationFile()); PROXY.preInit(e); + + NetworkHooks.openGui(); } @EventHandler diff --git a/src/main/java/com/raoulvdberge/refinedstorage/RSContainers.java b/src/main/java/com/raoulvdberge/refinedstorage/RSContainers.java new file mode 100644 index 000000000..181d13956 --- /dev/null +++ b/src/main/java/com/raoulvdberge/refinedstorage/RSContainers.java @@ -0,0 +1,56 @@ +package com.raoulvdberge.refinedstorage; + +import com.raoulvdberge.refinedstorage.container.*; +import net.minecraft.inventory.container.ContainerType; +import net.minecraftforge.registries.ObjectHolder; + +public final class RSContainers { + @ObjectHolder(RS.ID + ":constructor") + public static final ContainerType CONSTRUCTOR = null; + @ObjectHolder(RS.ID + ":controller") + public static final ContainerType CONTROLLER = null; + @ObjectHolder(RS.ID + ":crafter") + public static final ContainerType CRAFTER = null; + @ObjectHolder(RS.ID + ":crafter_manager") + public static final ContainerType CRAFTER_MANAGER = null; + @ObjectHolder(RS.ID + ":crafting_monitor") + public static final ContainerType CRAFTING_MONITOR = null; + @ObjectHolder(RS.ID + ":destructor") + public static final ContainerType DESTRUCTOR = null; + @ObjectHolder(RS.ID + ":detector") + public static final ContainerType DETECTOR = null; + @ObjectHolder(RS.ID + ":disk_drive") + public static final ContainerType DISK_DRIVE = null; + @ObjectHolder(RS.ID + ":disk_manipulator") + public static final ContainerType DISK_MANIPULATOR = null; + @ObjectHolder(RS.ID + ":exporter") + public static final ContainerType EXPORTER = null; + @ObjectHolder(RS.ID + ":external_storage") + public static final ContainerType EXTERNAL_STORAGE = null; + @ObjectHolder(RS.ID + ":filter") + public static final ContainerType FILTER = null; + @ObjectHolder(RS.ID + ":fluid_interface") + public static final ContainerType FLUID_INTERFACE = null; + @ObjectHolder(RS.ID + ":fluid_storage") + public static final ContainerType FLUID_STORAGE = null; + @ObjectHolder(RS.ID + ":grid") + public static final ContainerType GRID = null; + @ObjectHolder(RS.ID + ":importer") + public static final ContainerType IMPORTER = null; + @ObjectHolder(RS.ID + ":interface") + public static final ContainerType INTERFACE = null; + @ObjectHolder(RS.ID + ":network_transmitter") + public static final ContainerType NETWORK_TRANSMITTER = null; + @ObjectHolder(RS.ID + ":reader_writer") + public static final ContainerType READER_WRITER = null; + @ObjectHolder(RS.ID + ":relay") + public static final ContainerType RELAY = null; + @ObjectHolder(RS.ID + ":security_manager") + public static final ContainerType SECURITY_MANAGER = null; + @ObjectHolder(RS.ID + ":storage") + public static final ContainerType STORAGE = null; + @ObjectHolder(RS.ID + ":storage_monitor") + public static final ContainerType STORAGE_MONITOR = null; + @ObjectHolder(RS.ID + ":wireless_transmitter") + public static final ContainerType WIRELESS_TRANSMITTER = null; +} diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerAmount.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerAmount.java index e8abc3e12..7b6ddc485 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerAmount.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerAmount.java @@ -8,12 +8,12 @@ import net.minecraftforge.items.ItemStackHandler; public class ContainerAmount extends ContainerBase { public ContainerAmount(PlayerEntity player, ItemStack stack) { - super(null, player); + super(null, null, player, 0); ItemStackHandler inventory = new ItemStackHandler(1); inventory.setStackInSlot(0, ItemHandlerHelper.copyStackWithSize(stack, 1)); - addSlotToContainer(new SlotDisabled(inventory, 0, 89, 48)); + addSlot(new SlotDisabled(inventory, 0, 89, 48)); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java index 8e9fa221b..da6f30ba7 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java @@ -1,6 +1,5 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.API; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; @@ -8,13 +7,14 @@ import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.container.slot.legacy.SlotLegacyDisabled; import com.raoulvdberge.refinedstorage.container.slot.legacy.SlotLegacyFilter; import com.raoulvdberge.refinedstorage.container.transfer.TransferManager; -import com.raoulvdberge.refinedstorage.network.MessageSlotFilterFluidUpdate; import com.raoulvdberge.refinedstorage.tile.TileBase; import com.raoulvdberge.refinedstorage.tile.data.TileDataWatcher; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.ServerPlayerEntity; +import net.minecraft.inventory.container.ClickType; import net.minecraft.inventory.container.Container; import net.minecraft.inventory.container.ContainerType; +import net.minecraft.inventory.container.Slot; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; @@ -34,8 +34,8 @@ public abstract class ContainerBase extends Container { private List fluidSlots = new ArrayList<>(); private List fluids = new ArrayList<>(); - public ContainerBase(@Nullable TileBase tile, PlayerEntity player, int windowId) { - super(ContainerType.CRAFTING, windowId); + public ContainerBase(@Nullable ContainerType type, @Nullable TileBase tile, PlayerEntity player, int windowId) { + super(type, windowId); this.tile = tile; @@ -63,9 +63,9 @@ public abstract class ContainerBase extends Container { int y = yInventory + 4 + (3 * 18); if (isHeldItemDisabled() && i == player.inventory.currentItem) { - addSlotToContainer(new SlotLegacyDisabled(player.inventory, id, x, y)); + addSlot(new SlotLegacyDisabled(player.inventory, id, x, y)); } else { - addSlotToContainer(new Slot(player.inventory, id, x, y)); + addSlot(new Slot(player.inventory, id, x, y)); } id++; @@ -73,7 +73,7 @@ public abstract class ContainerBase extends Container { for (int y = 0; y < 3; y++) { for (int x = 0; x < 9; x++) { - addSlotToContainer(new Slot(player.inventory, id, xInventory + x * 18, yInventory + y * 18)); + addSlot(new Slot(player.inventory, id, xInventory + x * 18, yInventory + y * 18)); id++; } @@ -160,13 +160,13 @@ public abstract class ContainerBase extends Container { } @Override - protected Slot addSlotToContainer(Slot slot) { + protected Slot addSlot(Slot slot) { if (slot instanceof SlotFilterFluid) { fluids.add(null); fluidSlots.add((SlotFilterFluid) slot); } - return super.addSlotToContainer(slot); + return super.addSlot(slot); } @Override @@ -187,7 +187,7 @@ public abstract class ContainerBase extends Container { if (!API.instance().getComparer().isEqual(cached, actual, IComparer.COMPARE_QUANTITY | IComparer.COMPARE_NBT)) { this.fluids.set(i, actual); - RS.INSTANCE.network.sendTo(new MessageSlotFilterFluidUpdate(slot.slotNumber, actual), (ServerPlayerEntity) this.getPlayer()); + // TODO RS.INSTANCE.network.sendTo(new MessageSlotFilterFluidUpdate(slot.slotNumber, actual), (ServerPlayerEntity) this.getPlayer()); } } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java index a639f5132..026b73926 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileConstructor; @@ -8,15 +9,15 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerConstructor extends ContainerBase { - public ContainerConstructor(TileConstructor constructor, PlayerEntity player) { - super(constructor, player); + public ContainerConstructor(TileConstructor constructor, PlayerEntity player, int windowId) { + super(RSContainers.CONSTRUCTOR, constructor, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(constructor.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(constructor.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } - addSlotToContainer(new SlotFilter(constructor.getNode().getItemFilters(), 0, 80, 20).setEnableHandler(() -> constructor.getNode().getType() == IType.ITEMS)); - addSlotToContainer(new SlotFilterFluid(constructor.getNode().getFluidFilters(), 0, 80, 20, 0).setEnableHandler(() -> constructor.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilter(constructor.getNode().getItemFilters(), 0, 80, 20).setEnableHandler(() -> constructor.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilterFluid(constructor.getNode().getFluidFilters(), 0, 80, 20, 0).setEnableHandler(() -> constructor.getNode().getType() == IType.FLUIDS)); addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerController.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerController.java index 184208017..f3cb79747 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerController.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerController.java @@ -1,11 +1,12 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.tile.TileController; import net.minecraft.entity.player.PlayerEntity; public class ContainerController extends ContainerBase { - public ContainerController(TileController controller, PlayerEntity player) { - super(controller, player); + public ContainerController(TileController controller, PlayerEntity player, int windowId) { + super(RSContainers.CONTROLLER, controller, player, windowId); addPlayerInventory(8, 99); } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java index 2313d3a85..4972d4d72 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java @@ -1,19 +1,20 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.tile.TileCrafter; import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerCrafter extends ContainerBase { - public ContainerCrafter(TileCrafter crafter, PlayerEntity player) { - super(crafter, player); + public ContainerCrafter(TileCrafter crafter, PlayerEntity player, int windowId) { + super(RSContainers.CRAFTER, crafter, player, windowId); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotItemHandler(crafter.getNode().getPatternItems(), i, 8 + (18 * i), 20)); + addSlot(new SlotItemHandler(crafter.getNode().getPatternItems(), i, 8 + (18 * i), 20)); } for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(crafter.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(crafter.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafterManager.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafterManager.java index 9e95b4663..cd49494ab 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafterManager.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafterManager.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.apiimpl.autocrafting.CraftingPattern; import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNodeCrafter; import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNodeCrafterManager; @@ -13,20 +14,16 @@ import com.raoulvdberge.refinedstorage.item.ItemPattern; import com.raoulvdberge.refinedstorage.tile.TileCrafterManager; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.ServerPlayerEntity; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; +import net.minecraft.inventory.container.Container; +import net.minecraft.inventory.container.IContainerListener; +import net.minecraft.inventory.container.Slot; import net.minecraft.item.ItemStack; import net.minecraft.util.NonNullList; import net.minecraftforge.items.IItemHandlerModifiable; import javax.annotation.Nonnull; import javax.annotation.Nullable; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.function.Predicate; public class ContainerCrafterManager extends ContainerBase { @@ -64,11 +61,6 @@ public class ContainerCrafterManager extends ContainerBase { public void sendWindowProperty(Container container, int varToUpdate, int newValue) { base.sendWindowProperty(container, varToUpdate, newValue); } - - @Override - public void sendAllWindowProperties(Container container, IInventory inventory) { - base.sendAllWindowProperties(container, inventory); - } } private IResizableDisplay display; @@ -87,12 +79,13 @@ public class ContainerCrafterManager extends ContainerBase { super.addListener(listener); } + // TODO add AT for listeners public List getListeners() { - return listeners; + return new ArrayList<>(); } - public ContainerCrafterManager(TileCrafterManager crafterManager, PlayerEntity player, IResizableDisplay display) { - super(crafterManager, player); + public ContainerCrafterManager(TileCrafterManager crafterManager, PlayerEntity player, IResizableDisplay display, int windowId) { + super(RSContainers.CRAFTER_MANAGER, crafterManager, player, windowId); this.display = display; this.crafterManager = crafterManager.getNode(); @@ -104,7 +97,7 @@ public class ContainerCrafterManager extends ContainerBase { for (Map.Entry> entry : crafterManager.getNode().getNetwork().getCraftingManager().getNamedContainers().entrySet()) { for (IItemHandlerModifiable handler : entry.getValue()) { for (int i = 0; i < handler.getSlots(); ++i) { - addSlotToContainer(new SlotCrafterManager(handler, i, 0, 0, true, display, this.crafterManager)); + addSlot(new SlotCrafterManager(handler, i, 0, 0, true, display, this.crafterManager)); } } } @@ -124,7 +117,7 @@ public class ContainerCrafterManager extends ContainerBase { } this.inventorySlots.clear(); - this.inventoryItemStacks.clear(); + // TODO at for inventoryItemStacks this.inventoryItemStacks.clear(); this.headings.clear(); rows = 0; @@ -191,7 +184,7 @@ public class ContainerCrafterManager extends ContainerBase { } } - addSlotToContainer(new SlotCrafterManager(dummy, slot, x, y, visible, display, crafterManager)); + addSlot(new SlotCrafterManager(dummy, slot, x, y, visible, display, crafterManager)); if (visible) { foundItemsInCategory = true; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingMonitor.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingMonitor.java index b1281bca5..c3f24d481 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingMonitor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingMonitor.java @@ -1,15 +1,13 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.RS; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.api.autocrafting.ICraftingManager; import com.raoulvdberge.refinedstorage.api.autocrafting.craftingmonitor.ICraftingMonitorListener; -import com.raoulvdberge.refinedstorage.network.MessageCraftingMonitorElements; import com.raoulvdberge.refinedstorage.tile.craftingmonitor.ICraftingMonitor; import com.raoulvdberge.refinedstorage.tile.craftingmonitor.TileCraftingMonitor; import com.raoulvdberge.refinedstorage.tile.craftingmonitor.WirelessCraftingMonitor; import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.entity.player.ServerPlayerEntity; -import net.minecraft.inventory.Slot; +import net.minecraft.inventory.container.Slot; import net.minecraft.item.ItemStack; import javax.annotation.Nullable; @@ -18,8 +16,8 @@ public class ContainerCraftingMonitor extends ContainerBase implements ICrafting private ICraftingMonitor craftingMonitor; private boolean addedListener; - public ContainerCraftingMonitor(ICraftingMonitor craftingMonitor, @Nullable TileCraftingMonitor craftingMonitorTile, PlayerEntity player) { - super(craftingMonitorTile, player); + public ContainerCraftingMonitor(ICraftingMonitor craftingMonitor, @Nullable TileCraftingMonitor craftingMonitorTile, PlayerEntity player, int windowId) { + super(RSContainers.CRAFTING_MONITOR, craftingMonitorTile, player, windowId); this.craftingMonitor = craftingMonitor; } @@ -93,6 +91,6 @@ public class ContainerCraftingMonitor extends ContainerBase implements ICrafting @Override public void onChanged() { - RS.INSTANCE.network.sendTo(new MessageCraftingMonitorElements(craftingMonitor), (ServerPlayerEntity) getPlayer()); + // TODO RS.INSTANCE.network.sendTo(new MessageCraftingMonitorElements(craftingMonitor), (ServerPlayerEntity) getPlayer()); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingSettings.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingSettings.java index ec09e1aed..498322759 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingSettings.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCraftingSettings.java @@ -12,20 +12,20 @@ import net.minecraftforge.items.ItemStackHandler; public class ContainerCraftingSettings extends ContainerBase { public ContainerCraftingSettings(PlayerEntity player, IGridStack stack) { - super(null, player); + super(null, null, player, 0); if (stack instanceof GridStackFluid) { FluidInventory inventory = new FluidInventory(1); inventory.setFluid(0, ((GridStackFluid) stack).getStack()); - addSlotToContainer(new SlotFilterFluidDisabled(inventory, 0, 89, 48)); + addSlot(new SlotFilterFluidDisabled(inventory, 0, 89, 48)); } else if (stack instanceof GridStackItem) { ItemStackHandler handler = new ItemStackHandler(1); handler.setStackInSlot(0, ItemHandlerHelper.copyStackWithSize(((GridStackItem) stack).getStack(), 1)); - addSlotToContainer(new SlotDisabled(handler, 0, 89, 48)); + addSlot(new SlotDisabled(handler, 0, 89, 48)); } } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java index c460f8d11..464178d7e 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileDestructor; @@ -8,19 +9,19 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerDestructor extends ContainerBase { - public ContainerDestructor(TileDestructor destructor, PlayerEntity player) { - super(destructor, player); + public ContainerDestructor(TileDestructor destructor, PlayerEntity player, int windowId) { + super(RSContainers.DESTRUCTOR, destructor, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(destructor.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(destructor.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(destructor.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> destructor.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilter(destructor.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> destructor.getNode().getType() == IType.ITEMS)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(destructor.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> destructor.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilterFluid(destructor.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> destructor.getNode().getType() == IType.FLUIDS)); } addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDetector.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDetector.java index f8b160f8c..38e7d4873 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDetector.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDetector.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileDetector; @@ -7,11 +8,11 @@ import com.raoulvdberge.refinedstorage.tile.config.IType; import net.minecraft.entity.player.PlayerEntity; public class ContainerDetector extends ContainerBase { - public ContainerDetector(TileDetector detector, PlayerEntity player) { - super(detector, player); + public ContainerDetector(TileDetector detector, PlayerEntity player, int windowId) { + super(RSContainers.DETECTOR, detector, player, windowId); - addSlotToContainer(new SlotFilter(detector.getNode().getItemFilters(), 0, 107, 20).setEnableHandler(() -> detector.getNode().getType() == IType.ITEMS)); - addSlotToContainer(new SlotFilterFluid(detector.getNode().getFluidFilters(), 0, 107, 20).setEnableHandler(() -> detector.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilter(detector.getNode().getItemFilters(), 0, 107, 20).setEnableHandler(() -> detector.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilterFluid(detector.getNode().getFluidFilters(), 0, 107, 20).setEnableHandler(() -> detector.getNode().getType() == IType.FLUIDS)); addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java index f88ee69b5..123cd93f4 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; @@ -8,22 +9,22 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerDiskDrive extends ContainerBase { - public ContainerDiskDrive(TileDiskDrive diskDrive, PlayerEntity player) { - super(diskDrive, player); + public ContainerDiskDrive(TileDiskDrive diskDrive, PlayerEntity player, int windowId) { + super(RSContainers.DISK_DRIVE, diskDrive, player, windowId); int x = 80; int y = 54; for (int i = 0; i < 8; ++i) { - addSlotToContainer(new SlotItemHandler(diskDrive.getNode().getDisks(), i, x + ((i % 2) * 18), y + Math.floorDiv(i, 2) * 18)); + addSlot(new SlotItemHandler(diskDrive.getNode().getDisks(), i, x + ((i % 2) * 18), y + Math.floorDiv(i, 2) * 18)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(diskDrive.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskDrive.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilter(diskDrive.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskDrive.getNode().getType() == IType.ITEMS)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(diskDrive.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskDrive.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilterFluid(diskDrive.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskDrive.getNode().getType() == IType.FLUIDS)); } addPlayerInventory(8, 141); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java index 29d9290a6..b58ad9cce 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileDiskManipulator; @@ -8,27 +9,27 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerDiskManipulator extends ContainerBase { - public ContainerDiskManipulator(TileDiskManipulator diskManipulator, PlayerEntity player) { - super(diskManipulator, player); + public ContainerDiskManipulator(TileDiskManipulator diskManipulator, PlayerEntity player, int windowId) { + super(RSContainers.DISK_MANIPULATOR, diskManipulator, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(diskManipulator.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(diskManipulator.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 3; ++i) { - addSlotToContainer(new SlotItemHandler(diskManipulator.getNode().getInputDisks(), i, 44, 57 + (i * 18))); + addSlot(new SlotItemHandler(diskManipulator.getNode().getInputDisks(), i, 44, 57 + (i * 18))); } for (int i = 0; i < 3; ++i) { - addSlotToContainer(new SlotItemHandler(diskManipulator.getNode().getOutputDisks(), i, 116, 57 + (i * 18))); + addSlot(new SlotItemHandler(diskManipulator.getNode().getOutputDisks(), i, 116, 57 + (i * 18))); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(diskManipulator.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskManipulator.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilter(diskManipulator.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskManipulator.getNode().getType() == IType.ITEMS)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(diskManipulator.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskManipulator.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilterFluid(diskManipulator.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> diskManipulator.getNode().getType() == IType.FLUIDS)); } addPlayerInventory(8, 129); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java index 8cf6a1d25..f82aac733 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileExporter; @@ -8,19 +9,19 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerExporter extends ContainerBase { - public ContainerExporter(TileExporter exporter, PlayerEntity player) { - super(exporter, player); + public ContainerExporter(TileExporter exporter, PlayerEntity player, int windowId) { + super(RSContainers.EXPORTER, exporter, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(exporter.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(exporter.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(exporter.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> exporter.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilter(exporter.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> exporter.getNode().getType() == IType.ITEMS)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(exporter.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> exporter.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilterFluid(exporter.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> exporter.getNode().getType() == IType.FLUIDS)); } addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExternalStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExternalStorage.java index 741719124..8da931738 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExternalStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExternalStorage.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileExternalStorage; @@ -7,15 +8,15 @@ import com.raoulvdberge.refinedstorage.tile.config.IType; import net.minecraft.entity.player.PlayerEntity; public class ContainerExternalStorage extends ContainerBase { - public ContainerExternalStorage(TileExternalStorage externalStorage, PlayerEntity player) { - super(externalStorage, player); + public ContainerExternalStorage(TileExternalStorage externalStorage, PlayerEntity player, int windowId) { + super(RSContainers.EXTERNAL_STORAGE, externalStorage, player, windowId); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(externalStorage.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> externalStorage.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilter(externalStorage.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> externalStorage.getNode().getType() == IType.ITEMS)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(externalStorage.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> externalStorage.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilterFluid(externalStorage.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> externalStorage.getNode().getType() == IType.FLUIDS)); } addPlayerInventory(8, 141); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFilter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFilter.java index d7a6d1e91..3c50b61d1 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFilter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFilter.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.inventory.fluid.FluidInventory; @@ -15,8 +16,8 @@ import net.minecraft.item.ItemStack; public class ContainerFilter extends ContainerBase { private ItemStack stack; - public ContainerFilter(PlayerEntity player, ItemStack stack) { - super(null, player); + public ContainerFilter(PlayerEntity player, ItemStack stack, int windowId) { + super(RSContainers.FILTER, null, player, windowId); this.stack = stack; @@ -29,8 +30,8 @@ public class ContainerFilter extends ContainerBase { FluidInventory fluidFilter = new FluidInventoryFilter(stack); for (int i = 0; i < 27; ++i) { - addSlotToContainer(new SlotFilter(filter, i, x, y).setEnableHandler(() -> ItemFilter.getType(stack) == IType.ITEMS)); - addSlotToContainer(new SlotFilterFluid(fluidFilter, i, x, y).setEnableHandler(() -> ItemFilter.getType(stack) == IType.FLUIDS)); + addSlot(new SlotFilter(filter, i, x, y).setEnableHandler(() -> ItemFilter.getType(stack) == IType.ITEMS)); + addSlot(new SlotFilterFluid(fluidFilter, i, x, y).setEnableHandler(() -> ItemFilter.getType(stack) == IType.FLUIDS)); if ((i + 1) % 9 == 0) { x = 8; @@ -40,8 +41,8 @@ public class ContainerFilter extends ContainerBase { } } - addSlotToContainer(new SlotFilter(new ItemHandlerFilterIcon(stack), 0, 8, 117).setEnableHandler(() -> ItemFilter.getType(stack) == IType.ITEMS)); - addSlotToContainer(new SlotFilterFluid(fluidIcon, 0, 8, 117).setEnableHandler(() -> ItemFilter.getType(stack) == IType.FLUIDS)); + addSlot(new SlotFilter(new ItemHandlerFilterIcon(stack), 0, 8, 117).setEnableHandler(() -> ItemFilter.getType(stack) == IType.ITEMS)); + addSlot(new SlotFilterFluid(fluidIcon, 0, 8, 117).setEnableHandler(() -> ItemFilter.getType(stack) == IType.FLUIDS)); addPlayerInventory(8, 149); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidAmount.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidAmount.java index 0c078dc59..3ed72b729 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidAmount.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidAmount.java @@ -7,12 +7,12 @@ import net.minecraftforge.fluids.FluidStack; public class ContainerFluidAmount extends ContainerBase { public ContainerFluidAmount(PlayerEntity player, FluidStack stack) { - super(null, player); + super(null, null, player, 0); FluidInventory inventory = new FluidInventory(1); inventory.setFluid(0, stack); - addSlotToContainer(new SlotFilterFluidDisabled(inventory, 0, 89, 48, 0)); + addSlot(new SlotFilterFluidDisabled(inventory, 0, 89, 48, 0)); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java index 6643d1929..ef64c01ae 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileFluidInterface; @@ -7,15 +8,15 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerFluidInterface extends ContainerBase { - public ContainerFluidInterface(TileFluidInterface fluidInterface, PlayerEntity player) { - super(fluidInterface, player); + public ContainerFluidInterface(TileFluidInterface fluidInterface, PlayerEntity player, int windowId) { + super(RSContainers.FLUID_INTERFACE, fluidInterface, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(fluidInterface.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(fluidInterface.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } - addSlotToContainer(new SlotItemHandler(fluidInterface.getNode().getIn(), 0, 44, 32)); - addSlotToContainer(new SlotFilterFluid(fluidInterface.getNode().getOut(), 0, 116, 32, SlotFilter.FILTER_ALLOW_SIZE)); + addSlot(new SlotItemHandler(fluidInterface.getNode().getIn(), 0, 44, 32)); + addSlot(new SlotFilterFluid(fluidInterface.getNode().getOut(), 0, 116, 32, SlotFilter.FILTER_ALLOW_SIZE)); addPlayerInventory(8, 122); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidStorage.java index 8a18e3d7c..6ff40ae45 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidStorage.java @@ -1,15 +1,16 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileFluidStorage; import net.minecraft.entity.player.PlayerEntity; public class ContainerFluidStorage extends ContainerBase { - public ContainerFluidStorage(TileFluidStorage fluidStorage, PlayerEntity player) { - super(fluidStorage, player); + public ContainerFluidStorage(TileFluidStorage fluidStorage, PlayerEntity player, int windowId) { + super(RSContainers.FLUID_STORAGE, fluidStorage, player, windowId); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(fluidStorage.getNode().getFilters(), i, 8 + (18 * i), 20)); + addSlot(new SlotFilterFluid(fluidStorage.getNode().getFilters(), i, 8 + (18 * i), 20)); } addPlayerInventory(8, 141); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java index 599b240f5..d46e709aa 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.api.network.grid.GridType; import com.raoulvdberge.refinedstorage.api.network.grid.IGrid; import com.raoulvdberge.refinedstorage.api.network.grid.IGridCraftingListener; @@ -23,10 +24,10 @@ import com.raoulvdberge.refinedstorage.tile.grid.portable.IPortableGrid; import com.raoulvdberge.refinedstorage.tile.grid.portable.PortableGrid; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.ServerPlayerEntity; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.Slot; +import net.minecraft.inventory.container.IContainerListener; +import net.minecraft.inventory.container.Slot; import net.minecraft.item.ItemStack; -import net.minecraft.network.play.server.SPacketSetSlot; +import net.minecraft.network.play.server.SSetSlotPacket; import net.minecraftforge.items.SlotItemHandler; import javax.annotation.Nullable; @@ -40,8 +41,8 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene private SlotGridCraftingResult craftingResultSlot; private SlotLegacyBase patternResultSlot; - public ContainerGrid(IGrid grid, IResizableDisplay display, @Nullable TileBase gridTile, PlayerEntity player) { - super(gridTile, player); + public ContainerGrid(IGrid grid, IResizableDisplay display, @Nullable TileBase gridTile, PlayerEntity player, int windowId) { + super(RSContainers.GRID, gridTile, player, windowId); this.grid = grid; this.display = display; @@ -53,7 +54,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene public void initSlots() { this.inventorySlots.clear(); - this.inventoryItemStacks.clear(); + this.inventoryItemStacks.clear(); // TODO at this.transferManager.clearTransfers(); @@ -114,7 +115,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene } private void addPortableGridSlots() { - addSlotToContainer(new SlotItemHandler(((IPortableGrid) grid).getDisk(), 0, 204, 6)); + addSlot(new SlotItemHandler(((IPortableGrid) grid).getDisk(), 0, 204, 6)); transferManager.addBiTransfer(getPlayer().inventory, ((IPortableGrid) grid).getDisk()); } @@ -127,7 +128,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene } for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(grid.getFilter(), i, 204, yStart + (18 * i))); + addSlot(new SlotItemHandler(grid.getFilter(), i, 204, yStart + (18 * i))); } transferManager.addBiTransfer(getPlayer().inventory, grid.getFilter()); @@ -140,7 +141,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene int y = headerAndSlots + 4; for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotGridCrafting(grid.getCraftingMatrix(), i, x, y)); + addSlot(new SlotGridCrafting(grid.getCraftingMatrix(), i, x, y)); x += 18; @@ -150,14 +151,14 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene } } - addSlotToContainer(craftingResultSlot = new SlotGridCraftingResult(this, getPlayer(), grid, 0, 130 + 4, headerAndSlots + 22)); + addSlot(craftingResultSlot = new SlotGridCraftingResult(getPlayer(), grid, 0, 130 + 4, headerAndSlots + 22)); } private void addPatternSlots() { int headerAndSlots = display.getTopHeight() + (display.getVisibleRows() * 18); - addSlotToContainer(new SlotItemHandler(((NetworkNodeGrid) grid).getPatterns(), 0, 172, headerAndSlots + 4)); - addSlotToContainer(new SlotItemHandler(((NetworkNodeGrid) grid).getPatterns(), 1, 172, headerAndSlots + 40)); + addSlot(new SlotItemHandler(((NetworkNodeGrid) grid).getPatterns(), 0, 172, headerAndSlots + 4)); + addSlot(new SlotItemHandler(((NetworkNodeGrid) grid).getPatterns(), 1, 172, headerAndSlots + 40)); transferManager.addBiTransfer(getPlayer().inventory, ((NetworkNodeGrid) grid).getPatterns()); @@ -167,8 +168,8 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene int y = headerAndSlots + 4; for (int i = 0; i < 9 * 2; ++i) { - addSlotToContainer(new SlotFilter(((NetworkNodeGrid) grid).getProcessingMatrix(), i, x, y, SlotFilter.FILTER_ALLOW_SIZE).setEnableHandler(() -> ((NetworkNodeGrid) grid).isProcessingPattern() && ((NetworkNodeGrid) grid).getType() == IType.ITEMS)); - addSlotToContainer(new SlotFilterFluid(((NetworkNodeGrid) grid).getProcessingMatrixFluids(), i, x, y, SlotFilter.FILTER_ALLOW_SIZE).setEnableHandler(() -> ((NetworkNodeGrid) grid).isProcessingPattern() && ((NetworkNodeGrid) grid).getType() == IType.FLUIDS)); + addSlot(new SlotFilter(((NetworkNodeGrid) grid).getProcessingMatrix(), i, x, y, SlotFilter.FILTER_ALLOW_SIZE).setEnableHandler(() -> ((NetworkNodeGrid) grid).isProcessingPattern() && ((NetworkNodeGrid) grid).getType() == IType.ITEMS)); + addSlot(new SlotFilterFluid(((NetworkNodeGrid) grid).getProcessingMatrixFluids(), i, x, y, SlotFilter.FILTER_ALLOW_SIZE).setEnableHandler(() -> ((NetworkNodeGrid) grid).isProcessingPattern() && ((NetworkNodeGrid) grid).getType() == IType.FLUIDS)); x += 18; @@ -189,7 +190,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene y = headerAndSlots + 4; for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotLegacyFilter(grid.getCraftingMatrix(), i, x, y).setEnableHandler(() -> !((NetworkNodeGrid) grid).isProcessingPattern())); + addSlot(new SlotLegacyFilter(grid.getCraftingMatrix(), i, x, y).setEnableHandler(() -> !((NetworkNodeGrid) grid).isProcessingPattern())); x += 18; @@ -199,7 +200,7 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene } } - addSlotToContainer(patternResultSlot = (new SlotLegacyDisabled(grid.getCraftingResult(), 0, 134, headerAndSlots + 22).setEnableHandler(() -> !((NetworkNodeGrid) grid).isProcessingPattern()))); + addSlot(patternResultSlot = (new SlotLegacyDisabled(grid.getCraftingResult(), 0, 134, headerAndSlots + 22).setEnableHandler(() -> !((NetworkNodeGrid) grid).isProcessingPattern()))); } public IGrid getGrid() { @@ -212,10 +213,10 @@ public class ContainerGrid extends ContainerBase implements IGridCraftingListene Slot slot = inventorySlots.get(i); if (slot instanceof SlotGridCrafting || slot == craftingResultSlot || slot == patternResultSlot) { - for (IContainerListener listener : listeners) { + for (IContainerListener listener : listeners) { // TODO AT for listeners // @Volatile: We can't use IContainerListener#sendSlotContents since ServerPlayerEntity blocks SlotCrafting changes... if (listener instanceof ServerPlayerEntity) { - ((ServerPlayerEntity) listener).connection.sendPacket(new SPacketSetSlot(windowId, i, slot.getStack())); + ((ServerPlayerEntity) listener).connection.sendPacket(new SSetSlotPacket(windowId, i, slot.getStack())); } } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java index ee3b4f5c1..1939ff70b 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileImporter; @@ -8,19 +9,19 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerImporter extends ContainerBase { - public ContainerImporter(TileImporter importer, PlayerEntity player) { - super(importer, player); + public ContainerImporter(TileImporter importer, PlayerEntity player, int windowId) { + super(RSContainers.IMPORTER, importer, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(importer.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(importer.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(importer.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> importer.getNode().getType() == IType.ITEMS)); + addSlot(new SlotFilter(importer.getNode().getItemFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> importer.getNode().getType() == IType.ITEMS)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilterFluid(importer.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> importer.getNode().getType() == IType.FLUIDS)); + addSlot(new SlotFilterFluid(importer.getNode().getFluidFilters(), i, 8 + (18 * i), 20).setEnableHandler(() -> importer.getNode().getType() == IType.FLUIDS)); } addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java index 53a398ed2..33ff2d52c 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.SlotOutput; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.tile.TileInterface; @@ -7,23 +8,23 @@ import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerInterface extends ContainerBase { - public ContainerInterface(TileInterface tile, PlayerEntity player) { - super(tile, player); + public ContainerInterface(TileInterface tile, PlayerEntity player, int windowId) { + super(RSContainers.INTERFACE, tile, player, windowId); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotItemHandler(tile.getNode().getImportItems(), i, 8 + (18 * i), 20)); + addSlot(new SlotItemHandler(tile.getNode().getImportItems(), i, 8 + (18 * i), 20)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(tile.getNode().getExportFilterItems(), i, 8 + (18 * i), 54, SlotFilter.FILTER_ALLOW_SIZE)); + addSlot(new SlotFilter(tile.getNode().getExportFilterItems(), i, 8 + (18 * i), 54, SlotFilter.FILTER_ALLOW_SIZE)); } for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotOutput(tile.getNode().getExportItems(), i, 8 + (18 * i), 100)); + addSlot(new SlotOutput(tile.getNode().getExportItems(), i, 8 + (18 * i), 100)); } for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(tile.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(tile.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 134); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerNetworkTransmitter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerNetworkTransmitter.java index 46e978dc1..54bf6f6ec 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerNetworkTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerNetworkTransmitter.java @@ -1,14 +1,15 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.tile.TileNetworkTransmitter; import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerNetworkTransmitter extends ContainerBase { - public ContainerNetworkTransmitter(TileNetworkTransmitter networkTransmitter, PlayerEntity player) { - super(networkTransmitter, player); + public ContainerNetworkTransmitter(TileNetworkTransmitter networkTransmitter, PlayerEntity player, int windowId) { + super(RSContainers.NETWORK_TRANSMITTER, networkTransmitter, player, windowId); - addSlotToContainer(new SlotItemHandler(networkTransmitter.getNode().getNetworkCard(), 0, 8, 20)); + addSlot(new SlotItemHandler(networkTransmitter.getNode().getNetworkCard(), 0, 8, 20)); addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerReaderWriter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerReaderWriter.java index 3662fe4f6..6b4747b85 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerReaderWriter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerReaderWriter.java @@ -1,20 +1,18 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.RS; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterListener; import com.raoulvdberge.refinedstorage.api.network.readerwriter.IReaderWriterManager; import com.raoulvdberge.refinedstorage.apiimpl.network.node.IGuiReaderWriter; -import com.raoulvdberge.refinedstorage.network.MessageReaderWriterUpdate; import com.raoulvdberge.refinedstorage.tile.TileBase; import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.entity.player.ServerPlayerEntity; public class ContainerReaderWriter extends ContainerBase implements IReaderWriterListener { private IGuiReaderWriter readerWriter; private boolean addedListener; - public ContainerReaderWriter(IGuiReaderWriter readerWriter, TileBase tile, PlayerEntity player) { - super(tile, player); + public ContainerReaderWriter(IGuiReaderWriter readerWriter, TileBase tile, PlayerEntity player, int windowId) { + super(RSContainers.READER_WRITER, tile, player, windowId); this.readerWriter = readerWriter; @@ -58,6 +56,6 @@ public class ContainerReaderWriter extends ContainerBase implements IReaderWrite @Override public void onChanged() { - RS.INSTANCE.network.sendTo(new MessageReaderWriterUpdate(readerWriter.getNetwork().getReaderWriterManager().getChannels()), (ServerPlayerEntity) getPlayer()); + // TODO RS.INSTANCE.network.sendTo(new MessageReaderWriterUpdate(readerWriter.getNetwork().getReaderWriterManager().getChannels()), (ServerPlayerEntity) getPlayer()); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerRelay.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerRelay.java index 8fcd4e63d..847f8c559 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerRelay.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerRelay.java @@ -1,11 +1,12 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.tile.TileRelay; import net.minecraft.entity.player.PlayerEntity; public class ContainerRelay extends ContainerBase { - public ContainerRelay(TileRelay relay, PlayerEntity player) { - super(relay, player); + public ContainerRelay(TileRelay relay, PlayerEntity player, int windowId) { + super(RSContainers.RELAY, relay, player, windowId); addPlayerInventory(8, 50); } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSecurityManager.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSecurityManager.java index 6c32b7808..3c82e4b78 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSecurityManager.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSecurityManager.java @@ -1,18 +1,19 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.tile.TileSecurityManager; import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerSecurityManager extends ContainerBase { - public ContainerSecurityManager(TileSecurityManager securityManager, PlayerEntity player) { - super(securityManager, player); + public ContainerSecurityManager(TileSecurityManager securityManager, PlayerEntity player, int windowId) { + super(RSContainers.SECURITY_MANAGER, securityManager, player, windowId); int x = 8; int y = 20; for (int i = 0; i < 9 * 2; ++i) { - addSlotToContainer(new SlotItemHandler(securityManager.getNode().getCardsItems(), i, x, y)); + addSlot(new SlotItemHandler(securityManager.getNode().getCardsItems(), i, x, y)); if (((i + 1) % 9) == 0) { x = 8; @@ -22,7 +23,7 @@ public class ContainerSecurityManager extends ContainerBase { } } - addSlotToContainer(new SlotItemHandler(securityManager.getNode().getEditCard(), 0, 80, 70)); + addSlot(new SlotItemHandler(securityManager.getNode().getEditCard(), 0, 80, 70)); addPlayerInventory(8, 152); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorage.java index 083328917..64eaba9ac 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorage.java @@ -1,15 +1,16 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.tile.TileStorage; import net.minecraft.entity.player.PlayerEntity; public class ContainerStorage extends ContainerBase { - public ContainerStorage(TileStorage storage, PlayerEntity player) { - super(storage, player); + public ContainerStorage(TileStorage storage, PlayerEntity player, int windowId) { + super(RSContainers.STORAGE, storage, player, windowId); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotFilter(storage.getNode().getFilters(), i, 8 + (18 * i), 20)); + addSlot(new SlotFilter(storage.getNode().getFilters(), i, 8 + (18 * i), 20)); } addPlayerInventory(8, 141); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorageMonitor.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorageMonitor.java index c9cb21370..fb9bc4f9a 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorageMonitor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerStorageMonitor.java @@ -1,14 +1,15 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.container.slot.filter.SlotFilter; import com.raoulvdberge.refinedstorage.tile.TileStorageMonitor; import net.minecraft.entity.player.PlayerEntity; public class ContainerStorageMonitor extends ContainerBase { - public ContainerStorageMonitor(TileStorageMonitor storageMonitor, PlayerEntity player) { - super(storageMonitor, player); + public ContainerStorageMonitor(TileStorageMonitor storageMonitor, PlayerEntity player, int windowId) { + super(RSContainers.STORAGE_MONITOR, storageMonitor, player, windowId); - addSlotToContainer(new SlotFilter(storageMonitor.getNode().getItemFilters(), 0, 80, 20)); + addSlot(new SlotFilter(storageMonitor.getNode().getItemFilters(), 0, 80, 20)); addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java index ba599d144..6bbefc8ba 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java @@ -1,15 +1,16 @@ package com.raoulvdberge.refinedstorage.container; +import com.raoulvdberge.refinedstorage.RSContainers; import com.raoulvdberge.refinedstorage.tile.TileWirelessTransmitter; import net.minecraft.entity.player.PlayerEntity; import net.minecraftforge.items.SlotItemHandler; public class ContainerWirelessTransmitter extends ContainerBase { - public ContainerWirelessTransmitter(TileWirelessTransmitter wirelessTransmitter, PlayerEntity player) { - super(wirelessTransmitter, player); + public ContainerWirelessTransmitter(TileWirelessTransmitter wirelessTransmitter, PlayerEntity player, int windowId) { + super(RSContainers.WIRELESS_TRANSMITTER, wirelessTransmitter, player, windowId); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotItemHandler(wirelessTransmitter.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(wirelessTransmitter.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 55);