Fixed autocrafting + external FLUID storage dupe. Fixes #2037
This commit is contained in:
@@ -78,25 +78,11 @@ public class StorageExternalFluid implements IStorageExternal<FluidStack> {
|
||||
network.getFluidStorageCache().remove(cached, cached.amount, true);
|
||||
} else if (actual != null && cached == null) {
|
||||
network.getFluidStorageCache().add(actual, actual.amount, false, true);
|
||||
|
||||
// When we use an interface + crafting upgrade + external storage combo, we don't want the crafting task
|
||||
// to think we inserted twice.
|
||||
if (!isConnectedToInterface()) {
|
||||
network.getCraftingManager().track(actual, actual.amount);
|
||||
}
|
||||
} else if (!API.instance().getComparer().isEqual(actual, cached, IComparer.COMPARE_NBT)) {
|
||||
network.getFluidStorageCache().remove(cached, cached.amount, true);
|
||||
network.getFluidStorageCache().add(actual, actual.amount, false, true);
|
||||
|
||||
if (!isConnectedToInterface()) {
|
||||
network.getCraftingManager().track(actual, actual.amount);
|
||||
}
|
||||
} else if (actual.amount > cached.amount) {
|
||||
network.getFluidStorageCache().add(actual, actual.amount - cached.amount, false, true);
|
||||
|
||||
if (!isConnectedToInterface()) {
|
||||
network.getCraftingManager().track(actual, actual.amount - cached.amount);
|
||||
}
|
||||
} else if (actual.amount < cached.amount) {
|
||||
network.getFluidStorageCache().remove(actual, cached.amount - actual.amount, true);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user