From 547f9184113f38cd010a83d6d12cb0235d0ca8c3 Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Wed, 4 Jul 2018 12:24:27 +0200 Subject: [PATCH] Fixed some coverables not dropping covers. --- .../apiimpl/network/node/NetworkNodeExporter.java | 3 ++- .../apiimpl/network/node/NetworkNodeExternalStorage.java | 7 +++++++ .../apiimpl/network/node/NetworkNodeImporter.java | 3 ++- .../apiimpl/network/node/cover/CoverManager.java | 4 ++-- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java index 6f1bdbfcf..7d9360882 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java @@ -24,6 +24,7 @@ import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.ItemHandlerHelper; +import net.minecraftforge.items.wrapper.CombinedInvWrapper; public class NetworkNodeExporter extends NetworkNode implements IComparable, IType, ICoverable { public static final String ID = "exporter"; @@ -217,7 +218,7 @@ public class NetworkNodeExporter extends NetworkNode implements IComparable, ITy @Override public IItemHandler getDrops() { - return upgrades; + return new CombinedInvWrapper(upgrades, coverManager.getAsInventory()); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExternalStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExternalStorage.java index 9c92e53b1..3cc33845d 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExternalStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExternalStorage.java @@ -32,6 +32,7 @@ import net.minecraftforge.common.util.Constants; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.items.IItemHandler; +import javax.annotation.Nullable; import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; @@ -351,6 +352,12 @@ public class NetworkNodeExternalStorage extends NetworkNode implements IStorageP return fluidStorages; } + @Nullable + @Override + public IItemHandler getDrops() { + return coverManager.getAsInventory(); + } + @Override public CoverManager getCoverManager() { return coverManager; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java index 87696e59e..16435c69f 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java @@ -27,6 +27,7 @@ import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.capability.IFluidHandler; import net.minecraftforge.items.IItemHandler; +import net.minecraftforge.items.wrapper.CombinedInvWrapper; public class NetworkNodeImporter extends NetworkNode implements IComparable, IFilterable, IType, ICoverable { public static final String ID = "importer"; @@ -216,7 +217,7 @@ public class NetworkNodeImporter extends NetworkNode implements IComparable, IFi @Override public IItemHandler getDrops() { - return upgrades; + return new CombinedInvWrapper(upgrades, coverManager.getAsInventory()); } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/cover/CoverManager.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/cover/CoverManager.java index 16a9d9f37..4a873d438 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/cover/CoverManager.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/cover/CoverManager.java @@ -15,7 +15,7 @@ import net.minecraft.nbt.NBTTagList; import net.minecraft.util.EnumBlockRenderType; import net.minecraft.util.EnumFacing; import net.minecraftforge.common.property.IExtendedBlockState; -import net.minecraftforge.items.IItemHandler; +import net.minecraftforge.items.IItemHandlerModifiable; import net.minecraftforge.items.ItemStackHandler; import javax.annotation.Nullable; @@ -112,7 +112,7 @@ public class CoverManager { return list; } - public IItemHandler getAsInventory() { + public IItemHandlerModifiable getAsInventory() { ItemStackHandler handler = new ItemStackHandler(covers.size()); int i = 0;