diff --git a/dependencies.gradle b/dependencies.gradle index ae2dca12..5a48851c 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -35,18 +35,18 @@ */ dependencies { api('com.github.GTNewHorizons:NotEnoughItems:2.6.19-GTNH:dev') - api('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-418-GTNH:dev') + api('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-421-GTNH:dev') api('curse.maven:cofh-core-69162:2388751') api('com.github.GTNewHorizons:waila:1.8.1:dev') - implementation("com.github.GTNewHorizons:WirelessCraftingTerminal:1.11.2:dev") + implementation("com.github.GTNewHorizons:WirelessCraftingTerminal:1.11.5:dev") compileOnly("com.github.GTNewHorizons:GTNHLib:0.3.3:dev") { transitive = false } compileOnly('com.github.GTNewHorizons:Baubles:1.0.4:dev') compileOnly('com.github.GTNewHorizons:ExtraCells2:2.5.34:dev') { transitive = false } compileOnly('com.github.GTNewHorizons:ForestryMC:4.9.7:dev') compileOnly('com.github.GTNewHorizons:EnderIO:2.8.17:dev') - compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.48.113:dev') { + compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.48.120:dev') { exclude group: 'com.github.GTNewHorizons', module: 'AE2FluidCraft-Rework' } diff --git a/src/main/java/com/glodblock/github/client/gui/container/ContainerFluidStorageBus.java b/src/main/java/com/glodblock/github/client/gui/container/ContainerFluidStorageBus.java index 9c06106a..cba712d5 100644 --- a/src/main/java/com/glodblock/github/client/gui/container/ContainerFluidStorageBus.java +++ b/src/main/java/com/glodblock/github/client/gui/container/ContainerFluidStorageBus.java @@ -23,6 +23,7 @@ import appeng.api.storage.data.IItemList; import appeng.container.guisync.GuiSync; import appeng.container.slot.SlotRestrictedInput; import appeng.tile.inventory.AppEngInternalAEInventory; +import appeng.util.IterationCounter; import appeng.util.Platform; import appeng.util.iterators.NullIterator; @@ -156,7 +157,7 @@ public class ContainerFluidStorageBus extends FCContainerFluidConfigurable { Iterator i = new NullIterator<>(); if (cellInv != null) { final IItemList list = cellInv - .getAvailableItems(AEApi.instance().storage().createFluidList()); + .getAvailableItems(AEApi.instance().storage().createFluidList(), IterationCounter.fetchNewId()); i = list.iterator(); } diff --git a/src/main/java/com/glodblock/github/common/item/FCBaseItemCell.java b/src/main/java/com/glodblock/github/common/item/FCBaseItemCell.java index e63c78f5..d3f5b728 100644 --- a/src/main/java/com/glodblock/github/common/item/FCBaseItemCell.java +++ b/src/main/java/com/glodblock/github/common/item/FCBaseItemCell.java @@ -37,6 +37,7 @@ import appeng.items.AEBaseItem; import appeng.items.contents.CellConfig; import appeng.items.contents.CellUpgrades; import appeng.util.InventoryAdaptor; +import appeng.util.IterationCounter; import appeng.util.Platform; import appeng.util.ReadableNumberConverter; @@ -224,7 +225,8 @@ public abstract class FCBaseItemCell extends AEBaseItem implements IStorageFluid .getCellInventory(stack, null, StorageChannel.FLUIDS); if (inv != null && playerInventory.getCurrentItem() == stack) { final InventoryAdaptor ia = InventoryAdaptor.getAdaptor(player, ForgeDirection.UNKNOWN); - final IItemList list = inv.getAvailableItems(StorageChannel.FLUIDS.createList()); + final IItemList list = inv + .getAvailableItems(StorageChannel.FLUIDS.createList(), IterationCounter.fetchNewId()); if (list.isEmpty() && ia != null) { playerInventory.setInventorySlotContents(playerInventory.currentItem, null); diff --git a/src/main/java/com/glodblock/github/common/parts/PartFluidStorageBus.java b/src/main/java/com/glodblock/github/common/parts/PartFluidStorageBus.java index cc503230..2c5146b3 100644 --- a/src/main/java/com/glodblock/github/common/parts/PartFluidStorageBus.java +++ b/src/main/java/com/glodblock/github/common/parts/PartFluidStorageBus.java @@ -67,6 +67,7 @@ import appeng.parts.automation.PartUpgradeable; import appeng.tile.inventory.AppEngInternalAEInventory; import appeng.tile.inventory.InvOperation; import appeng.tile.networking.TileCableBus; +import appeng.util.IterationCounter; import appeng.util.Platform; import appeng.util.item.AEFluidStack; import appeng.util.prioitylist.PrecisePriorityList; @@ -207,11 +208,11 @@ public class PartFluidStorageBus extends PartUpgradeable if (!currentAccess.hasPermission(AccessRestriction.READ)) { readOncePass = true; } - before = in.getAvailableItems(before); + before = in.getAvailableItems(before, IterationCounter.fetchNewId()); in.setBaseAccess(currentAccess); accessChanged = false; } else { - before = in.getAvailableItems(before); + before = in.getAvailableItems(before, IterationCounter.fetchNewId()); } } @@ -225,7 +226,7 @@ public class PartFluidStorageBus extends PartUpgradeable if (in != out) { if (out != null) { - after = out.getAvailableItems(after); + after = out.getAvailableItems(after, IterationCounter.fetchNewId()); } Platform.postListChanges(before, after, this, this.source); } diff --git a/src/main/java/com/glodblock/github/common/storage/FluidCellInventory.java b/src/main/java/com/glodblock/github/common/storage/FluidCellInventory.java index bf6396af..55d8d232 100644 --- a/src/main/java/com/glodblock/github/common/storage/FluidCellInventory.java +++ b/src/main/java/com/glodblock/github/common/storage/FluidCellInventory.java @@ -380,7 +380,7 @@ public class FluidCellInventory implements IFluidCellInventory { } @Override - public IItemList getAvailableItems(IItemList out) { + public IItemList getAvailableItems(IItemList out, int iteration) { for (final IAEFluidStack i : this.getCellFluids()) { out.add(i); } @@ -388,7 +388,7 @@ public class FluidCellInventory implements IFluidCellInventory { } @Override - public IAEFluidStack getAvailableItem(@Nonnull IAEFluidStack request) { + public IAEFluidStack getAvailableItem(@Nonnull IAEFluidStack request, int iteration) { return this.getCellFluids().findPrecise(request); } diff --git a/src/main/java/com/glodblock/github/common/tile/TileFluidDiscretizer.java b/src/main/java/com/glodblock/github/common/tile/TileFluidDiscretizer.java index cd41c64a..bedb3c53 100644 --- a/src/main/java/com/glodblock/github/common/tile/TileFluidDiscretizer.java +++ b/src/main/java/com/glodblock/github/common/tile/TileFluidDiscretizer.java @@ -189,7 +189,7 @@ public class TileFluidDiscretizer extends AENetworkTile implements IPriorityHost } @Override - public IItemList getAvailableItems(IItemList out) { + public IItemList getAvailableItems(IItemList out, int iteration) { if (itemCache == null) { itemCache = AEApi.instance().storage().createItemList(); IMEMonitor fluidGrid = getFluidGrid(); @@ -210,7 +210,7 @@ public class TileFluidDiscretizer extends AENetworkTile implements IPriorityHost } @Override - public IAEItemStack getAvailableItem(@Nonnull IAEItemStack request) { + public IAEItemStack getAvailableItem(@Nonnull IAEItemStack request, int iteration) { IMEMonitor fluidGrid = getFluidGrid(); if (fluidGrid == null) { return null; @@ -219,7 +219,7 @@ public class TileFluidDiscretizer extends AENetworkTile implements IPriorityHost if (fluidRequest == null) { return null; } - IAEFluidStack availableFluid = fluidGrid.getAvailableItem(fluidRequest); + IAEFluidStack availableFluid = fluidGrid.getAvailableItem(fluidRequest, iteration); if (availableFluid == null || availableFluid.getFluid() == null || FluidCraftAPI.instance().isBlacklistedInDisplay(availableFluid.getFluid().getClass())) { return null; @@ -297,12 +297,12 @@ public class TileFluidDiscretizer extends AENetworkTile implements IPriorityHost } @Override - public IItemList getAvailableItems(IItemList out) { + public IItemList getAvailableItems(IItemList out, int iteration) { return out; } @Override - public IAEFluidStack getAvailableItem(@Nonnull IAEFluidStack request) { + public IAEFluidStack getAvailableItem(@Nonnull IAEFluidStack request, int iteration) { return null; } diff --git a/src/main/java/com/glodblock/github/inventory/MEMonitorIFluidHandler.java b/src/main/java/com/glodblock/github/inventory/MEMonitorIFluidHandler.java index 8d0d70c5..1344b22b 100644 --- a/src/main/java/com/glodblock/github/inventory/MEMonitorIFluidHandler.java +++ b/src/main/java/com/glodblock/github/inventory/MEMonitorIFluidHandler.java @@ -184,7 +184,7 @@ public class MEMonitorIFluidHandler implements IMEMonitor { return true; } - public IItemList getAvailableItems(IItemList out) { + public IItemList getAvailableItems(IItemList out, int iteration) { for (IAEFluidStack fs : this.cache) { out.addStorage(fs); @@ -194,7 +194,7 @@ public class MEMonitorIFluidHandler implements IMEMonitor { } @Override - public IAEFluidStack getAvailableItem(@Nonnull IAEFluidStack request) { + public IAEFluidStack getAvailableItem(@Nonnull IAEFluidStack request, int iteration) { return this.cache.findPrecise(request); }