From 0c47ff0813ae54cc4dbfe6bfa81d158f6a07fedf Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Tue, 6 Dec 2016 15:47:30 +0100 Subject: [PATCH] Bump to 1.3.3, update Forge, removed some ugly workarounds --- build.gradle | 10 +-- .../com/raoulvdberge/refinedstorage/RS.java | 2 +- .../container/ContainerBase.java | 90 ------------------- .../container/ContainerConstructor.java | 4 +- .../container/ContainerCrafter.java | 6 +- .../container/ContainerDestructor.java | 4 +- .../container/ContainerDiskDrive.java | 4 +- .../container/ContainerDiskManipulator.java | 8 +- .../container/ContainerExporter.java | 4 +- .../container/ContainerFluidInterface.java | 6 +- .../container/ContainerGrid.java | 5 +- .../container/ContainerImporter.java | 4 +- .../container/ContainerInterface.java | 6 +- .../ContainerNetworkTransmitter.java | 6 +- .../ContainerProcessingPatternEncoder.java | 4 +- .../container/ContainerSolderer.java | 6 +- .../ContainerWirelessTransmitter.java | 4 +- .../container/slot/SlotBase.java | 16 ---- .../container/slot/SlotFilter.java | 13 +-- .../container/slot/SlotOutput.java | 3 +- src/main/resources/mcmod.info | 2 +- 21 files changed, 48 insertions(+), 159 deletions(-) delete mode 100755 src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotBase.java diff --git a/build.gradle b/build.gradle index 2dbad9ab8..b2fabba34 100755 --- a/build.gradle +++ b/build.gradle @@ -20,7 +20,7 @@ apply plugin: 'maven' apply plugin: 'maven-publish' apply plugin: 'net.minecraftforge.gradle.forge' -version = "1.3.2" +version = "1.3.3" group = "refinedstorage" archivesBaseName = "refinedstorage" @@ -28,10 +28,10 @@ sourceCompatibility = 1.8 targetCompatibility = 1.8 minecraft { - version = "1.11-13.19.0.2180" + version = "1.11-13.19.1.2188" runDir = "run" useDepAts = true - mappings = "snapshot_20161126" + mappings = "snapshot_20161206" } repositories { @@ -44,8 +44,8 @@ repositories { } dependencies { - deobfCompile "mezz.jei:jei_1.11:4.0.3.196:api" - runtime "mezz.jei:jei_1.11:4.0.3.196" + deobfCompile "mezz.jei:jei_1.11:4.0.4.199:api" + runtime "mezz.jei:jei_1.11:4.0.4.199" deobfCompile "net.darkhax.tesla:Tesla:1.11-1.3.0.51" } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/RS.java b/src/main/java/com/raoulvdberge/refinedstorage/RS.java index 6b8e4d58d..7e2ad0cc5 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/RS.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/RS.java @@ -21,7 +21,7 @@ public final class RS { } public static final String ID = "refinedstorage"; - public static final String VERSION = "1.3.2"; + public static final String VERSION = "1.3.3"; public static final String GUI_FACTORY = "com.raoulvdberge.refinedstorage.gui.config.ModGuiFactory"; @SidedProxy(clientSide = "com.raoulvdberge.refinedstorage.proxy.ProxyClient", serverSide = "com.raoulvdberge.refinedstorage.proxy.ProxyCommon") diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java index 00655c0e0..ba6b296ed 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerBase.java @@ -30,96 +30,6 @@ public abstract class ContainerBase extends Container { return tile; } - // @todo Forge issue #3498 - @Override - protected boolean mergeItemStack(ItemStack stack, int startIndex, int endIndex, boolean reverseDirection) { - boolean flag = false; - int i = startIndex; - - if (reverseDirection) { - i = endIndex - 1; - } - - if (stack.isStackable()) { - while (!stack.isEmpty()) { - if (reverseDirection) { - if (i < startIndex) { - break; - } - } else if (i >= endIndex) { - break; - } - - Slot slot = (Slot) this.inventorySlots.get(i); - ItemStack itemstack = slot.getStack(); - - if (!itemstack.isEmpty() && itemstack.getItem() == stack.getItem() && (!stack.getHasSubtypes() || stack.getMetadata() == itemstack.getMetadata()) && ItemStack.areItemStackTagsEqual(stack, itemstack)) { - int j = itemstack.getCount() + stack.getCount(); - int max = Math.min(slot.getSlotStackLimit(), stack.getMaxStackSize()); - - if (j <= max) { - stack.setCount(0); - itemstack.setCount(j); - slot.onSlotChanged(); - flag = true; - } else if (itemstack.getCount() < max) { - stack.shrink(max - itemstack.getCount()); - itemstack.setCount(max); - slot.onSlotChanged(); - flag = true; - } - } - - if (reverseDirection) { - --i; - } else { - ++i; - } - } - } - - if (!stack.isEmpty()) { - if (reverseDirection) { - i = endIndex - 1; - } else { - i = startIndex; - } - - while (true) { - if (reverseDirection) { - if (i < startIndex) { - break; - } - } else if (i >= endIndex) { - break; - } - - Slot slot1 = (Slot) this.inventorySlots.get(i); - ItemStack itemstack1 = slot1.getStack(); - - if (itemstack1.isEmpty() && slot1.isItemValid(stack)) { - if (stack.getCount() > slot1.getSlotStackLimit()) { - slot1.putStack(stack.splitStack(slot1.getSlotStackLimit())); - } else { - slot1.putStack(stack.splitStack(stack.getCount())); - } - - slot1.onSlotChanged(); - flag = true; - break; - } - - if (reverseDirection) { - --i; - } else { - ++i; - } - } - } - - return flag; - } - protected void addPlayerInventory(int xInventory, int yInventory) { int id = 0; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java index f2287223a..d29a2372c 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerConstructor.java @@ -1,18 +1,18 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterType; import com.raoulvdberge.refinedstorage.tile.TileConstructor; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerConstructor extends ContainerBase { public ContainerConstructor(TileConstructor constructor, EntityPlayer player) { super(constructor, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(constructor.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(constructor.getUpgrades(), i, 187, 6 + (i * 18))); } addSlotToContainer(new SlotFilterType(constructor, 0, 80, 20)); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java index 03936bc88..32bf796f0 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerCrafter.java @@ -1,21 +1,21 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.tile.TileCrafter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerCrafter extends ContainerBase { public ContainerCrafter(TileCrafter crafter, EntityPlayer player) { super(crafter, player); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotBase(crafter.getPatternItems(), i, 8 + (18 * i), 20)); + addSlotToContainer(new SlotItemHandler(crafter.getPatternItems(), i, 8 + (18 * i), 20)); } for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(crafter.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(crafter.getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java index 9e50473eb..a3216351a 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDestructor.java @@ -1,18 +1,18 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterType; import com.raoulvdberge.refinedstorage.tile.TileDestructor; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerDestructor extends ContainerBase { public ContainerDestructor(TileDestructor destructor, EntityPlayer player) { super(destructor, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(destructor.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(destructor.getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java index 4e13d987d..a9bffda27 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskDrive.java @@ -1,11 +1,11 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterType; import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerDiskDrive extends ContainerBase { public ContainerDiskDrive(TileDiskDrive drive, EntityPlayer player) { @@ -15,7 +15,7 @@ public class ContainerDiskDrive extends ContainerBase { int y = 54; for (int i = 0; i < 8; ++i) { - addSlotToContainer(new SlotBase(drive.getDisks(), i, x + ((i % 2) * 18), y + Math.floorDiv(i, 2) * 18)); + addSlotToContainer(new SlotItemHandler(drive.getDisks(), i, x + ((i % 2) * 18), y + Math.floorDiv(i, 2) * 18)); } for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java index d333377ce..7c28f470b 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerDiskManipulator.java @@ -1,26 +1,26 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterType; import com.raoulvdberge.refinedstorage.tile.TileDiskManipulator; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerDiskManipulator extends ContainerBase { public ContainerDiskManipulator(TileDiskManipulator manipulator, EntityPlayer player) { super(manipulator, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(manipulator.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(manipulator.getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 3; ++i) { - addSlotToContainer(new SlotBase(manipulator.getInputDisks(), i, 44, 57 + (i * 18))); + addSlotToContainer(new SlotItemHandler(manipulator.getInputDisks(), i, 44, 57 + (i * 18))); } for (int i = 0; i < 3; ++i) { - addSlotToContainer(new SlotBase(manipulator.getOutputDisks(), i, 116, 57 + (i * 18))); + addSlotToContainer(new SlotItemHandler(manipulator.getOutputDisks(), i, 116, 57 + (i * 18))); } for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java index 7f812e5b1..2128ba318 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerExporter.java @@ -1,18 +1,18 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterType; import com.raoulvdberge.refinedstorage.tile.TileExporter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerExporter extends ContainerBase { public ContainerExporter(TileExporter exporter, EntityPlayer player) { super(exporter, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(exporter.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(exporter.getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java index 412cbfd67..a2a8d45a5 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerFluidInterface.java @@ -1,21 +1,21 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterFluid; import com.raoulvdberge.refinedstorage.tile.TileFluidInterface; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerFluidInterface extends ContainerBase { public ContainerFluidInterface(TileFluidInterface fluidInterface, EntityPlayer player) { super(fluidInterface, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(fluidInterface.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(fluidInterface.getUpgrades(), i, 187, 6 + (i * 18))); } - addSlotToContainer(new SlotBase(fluidInterface.getIn(), 0, 44, 32)); + addSlotToContainer(new SlotItemHandler(fluidInterface.getIn(), 0, 44, 32)); addSlotToContainer(new SlotFilterFluid(!fluidInterface.getWorld().isRemote, fluidInterface.getOut(), 0, 116, 32)); addPlayerInventory(8, 122); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java index 565e6d0b8..dd741bd60 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerGrid.java @@ -12,6 +12,7 @@ import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.inventory.IContainerListener; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerGrid extends ContainerBase { private IGrid grid; @@ -59,13 +60,13 @@ public class ContainerGrid extends ContainerBase { addSlotToContainer(patternResultSlot = new SlotDisabled(((TileGrid) grid).getResult(), 0, 112 + 4, 110 + 4)); - addSlotToContainer(new SlotBase(((TileGrid) grid).getPatterns(), 0, 152, 96)); + addSlotToContainer(new SlotItemHandler(((TileGrid) grid).getPatterns(), 0, 152, 96)); addSlotToContainer(new SlotOutput(((TileGrid) grid).getPatterns(), 1, 152, 132)); } if (grid.getType() != EnumGridType.FLUID) { for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(grid.getFilter(), i, 204, 6 + (18 * i))); + addSlotToContainer(new SlotItemHandler(grid.getFilter(), i, 204, 6 + (18 * i))); } } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java index 67c3ef006..2b4829254 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerImporter.java @@ -1,18 +1,18 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilterType; import com.raoulvdberge.refinedstorage.tile.TileImporter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerImporter extends ContainerBase { public ContainerImporter(TileImporter importer, EntityPlayer player) { super(importer, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(importer.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(importer.getUpgrades(), i, 187, 6 + (i * 18))); } for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java index 5ffd16e9a..3be521156 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerInterface.java @@ -1,19 +1,19 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.SlotOutput; import com.raoulvdberge.refinedstorage.tile.TileInterface; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerInterface extends ContainerBase { public ContainerInterface(TileInterface tile, EntityPlayer player) { super(tile, player); for (int i = 0; i < 9; ++i) { - addSlotToContainer(new SlotBase(tile.getImportItems(), i, 8 + (18 * i), 20)); + addSlotToContainer(new SlotItemHandler(tile.getImportItems(), i, 8 + (18 * i), 20)); } for (int i = 0; i < 9; ++i) { @@ -25,7 +25,7 @@ public class ContainerInterface extends ContainerBase { } for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(tile.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(tile.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 45524f211..16ed0bead 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerNetworkTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerNetworkTransmitter.java @@ -1,18 +1,18 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.tile.TileNetworkTransmitter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerNetworkTransmitter extends ContainerBase { public ContainerNetworkTransmitter(TileNetworkTransmitter networkTransmitter, EntityPlayer player) { super(networkTransmitter, player); - addSlotToContainer(new SlotBase(networkTransmitter.getNetworkCard(), 0, 8, 20)); + addSlotToContainer(new SlotItemHandler(networkTransmitter.getNetworkCard(), 0, 8, 20)); - addSlotToContainer(new SlotBase(networkTransmitter.getUpgrades(), 0, 187, 6)); + addSlotToContainer(new SlotItemHandler(networkTransmitter.getUpgrades(), 0, 187, 6)); addPlayerInventory(8, 55); } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerProcessingPatternEncoder.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerProcessingPatternEncoder.java index d66e59aa1..0ef22e6d7 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerProcessingPatternEncoder.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerProcessingPatternEncoder.java @@ -1,12 +1,12 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotFilter; import com.raoulvdberge.refinedstorage.container.slot.SlotOutput; import com.raoulvdberge.refinedstorage.tile.TileProcessingPatternEncoder; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; import java.util.Collection; @@ -14,7 +14,7 @@ public class ContainerProcessingPatternEncoder extends ContainerBase { public ContainerProcessingPatternEncoder(TileProcessingPatternEncoder encoder, EntityPlayer player) { super(encoder, player); - addSlotToContainer(new SlotBase(encoder.getPatterns(), 0, 152, 18)); + addSlotToContainer(new SlotItemHandler(encoder.getPatterns(), 0, 152, 18)); addSlotToContainer(new SlotOutput(encoder.getPatterns(), 1, 152, 58)); int ox = 8; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSolderer.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSolderer.java index 37e20f03c..81f34eeaa 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSolderer.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerSolderer.java @@ -1,12 +1,12 @@ package com.raoulvdberge.refinedstorage.container; import com.raoulvdberge.refinedstorage.RSItems; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.container.slot.SlotOutput; import com.raoulvdberge.refinedstorage.tile.TileSolderer; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerSolderer extends ContainerBase { public ContainerSolderer(TileSolderer solderer, EntityPlayer player) { @@ -16,7 +16,7 @@ public class ContainerSolderer extends ContainerBase { int y = 20; for (int i = 0; i < 3; ++i) { - addSlotToContainer(new SlotBase(solderer.getItems(), i, x, y)); + addSlotToContainer(new SlotItemHandler(solderer.getItems(), i, x, y)); y += 18; } @@ -24,7 +24,7 @@ public class ContainerSolderer extends ContainerBase { addSlotToContainer(new SlotOutput(solderer.getResult(), 0, 127, 38)); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(solderer.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(solderer.getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 89); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java index 29cefdd70..fbe7b3126 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/ContainerWirelessTransmitter.java @@ -1,17 +1,17 @@ package com.raoulvdberge.refinedstorage.container; -import com.raoulvdberge.refinedstorage.container.slot.SlotBase; import com.raoulvdberge.refinedstorage.tile.TileWirelessTransmitter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; +import net.minecraftforge.items.SlotItemHandler; public class ContainerWirelessTransmitter extends ContainerBase { public ContainerWirelessTransmitter(TileWirelessTransmitter wirelessTransmitter, EntityPlayer player) { super(wirelessTransmitter, player); for (int i = 0; i < 4; ++i) { - addSlotToContainer(new SlotBase(wirelessTransmitter.getUpgrades(), i, 187, 6 + (i * 18))); + addSlotToContainer(new SlotItemHandler(wirelessTransmitter.getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 55); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotBase.java b/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotBase.java deleted file mode 100755 index b9135aea9..000000000 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotBase.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.raoulvdberge.refinedstorage.container.slot; - -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -// @todo: Forge issue #3497 -public class SlotBase extends SlotItemHandler { - public SlotBase(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public int getSlotStackLimit() { - return getItemHandler().getSlotLimit(getSlotIndex()); - } -} diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotFilter.java b/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotFilter.java index c326b7ecf..e62ae6c50 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotFilter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotFilter.java @@ -1,6 +1,5 @@ package com.raoulvdberge.refinedstorage.container.slot; -import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; @@ -9,11 +8,11 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.world.IBlockAccess; import net.minecraftforge.common.IPlantable; import net.minecraftforge.items.IItemHandler; +import net.minecraftforge.items.SlotItemHandler; import javax.annotation.Nonnull; -import java.lang.reflect.Field; -public class SlotFilter extends SlotBase { +public class SlotFilter extends SlotItemHandler { public static final int FILTER_ALLOW_SIZE = 1; public static final int FILTER_ALLOW_BLOCKS = 2; @@ -69,13 +68,7 @@ public class SlotFilter extends SlotBase { Item item = stack.getItem(); if (item instanceof ItemBlockSpecial) { - try { - Field f = ((ItemBlockSpecial) item).getClass().getDeclaredField("block"); - f.setAccessible(true); - return ((Block) f.get(item)).getDefaultState(); - } catch (IllegalAccessException | NoSuchFieldException e) { - // NO OP - } + return ((ItemBlockSpecial) item).getBlock().getDefaultState(); } else if (item instanceof ItemBlock) { return (((ItemBlock) item).getBlock()).getDefaultState(); } else if (item instanceof IPlantable) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotOutput.java b/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotOutput.java index 308ec90d1..557e0d2d8 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotOutput.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/container/slot/SlotOutput.java @@ -2,10 +2,11 @@ package com.raoulvdberge.refinedstorage.container.slot; import net.minecraft.item.ItemStack; import net.minecraftforge.items.IItemHandler; +import net.minecraftforge.items.SlotItemHandler; import javax.annotation.Nonnull; -public class SlotOutput extends SlotBase { +public class SlotOutput extends SlotItemHandler { public SlotOutput(IItemHandler inventory, int id, int x, int y) { super(inventory, id, x, y); } diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 72b418585..83b30b9ff 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "refinedstorage", "name": "Refined Storage", "description": "An elegant solution to your hoarding problem", - "version": "1.3.2", + "version": "1.3.3", "mcversion": "1.11", "url": "", "updateUrl": "",