diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a53dd0a5..e96bd7c09 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### 1.6.12 - Increased the speed of autocrafting (raoulvdberge) +- Fixed External Storage sending storage updates when it is disabled (raoulvdberge) - Added a completion percentage to the Crafting Monitor (raoulvdberge) - Updated Russian translation (kellixon) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/autocrafting/task/CraftingTask.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/autocrafting/task/CraftingTask.java index eafc6a252..b517606b9 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/autocrafting/task/CraftingTask.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/autocrafting/task/CraftingTask.java @@ -122,7 +122,7 @@ public class CraftingTask implements ICraftingTask { this.executionStarted = tag.getLong(NBT_EXECUTION_STARTED); if (tag.hasKey(NBT_TOTAL_STEPS)) { - totalSteps = tag.getInteger(NBT_TOTAL_STEPS); + this.totalSteps = tag.getInteger(NBT_TOTAL_STEPS); } StorageDiskFactoryItem factoryItem = new StorageDiskFactoryItem(); 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 0b1851ca0..cad19d00a 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 @@ -83,7 +83,7 @@ public class NetworkNodeExternalStorage extends NetworkNode implements IStorageP public void update() { super.update(); - if (network != null) { + if (canUpdate()) { if (networkTicks++ == 0) { updateStorage(network); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheFluid.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheFluid.java index 1900f12a4..bc3edd421 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheFluid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheFluid.java @@ -60,7 +60,7 @@ public class StorageCacheFluid implements IStorageCache { if (!batched) { listeners.forEach(l -> l.onChanged(stack, size)); } else { - batchedChanges.add(Pair.of(stack, size)); + batchedChanges.add(Pair.of(stack.copy(), size)); } } } @@ -71,7 +71,7 @@ public class StorageCacheFluid implements IStorageCache { if (!batched) { listeners.forEach(l -> l.onChanged(stack, -size)); } else { - batchedChanges.add(Pair.of(stack, -size)); + batchedChanges.add(Pair.of(stack.copy(), -size)); } } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheItem.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheItem.java index 920fad09d..801ca8eab 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheItem.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageCacheItem.java @@ -62,7 +62,7 @@ public class StorageCacheItem implements IStorageCache { if (!batched) { listeners.forEach(l -> l.onChanged(stack, size)); } else { - batchedChanges.add(Pair.of(stack, size)); + batchedChanges.add(Pair.of(stack.copy(), size)); } } } @@ -73,7 +73,7 @@ public class StorageCacheItem implements IStorageCache { if (!batched) { listeners.forEach(l -> l.onChanged(stack, -size)); } else { - batchedChanges.add(Pair.of(stack, -size)); + batchedChanges.add(Pair.of(stack.copy(), -size)); } } } @@ -81,11 +81,12 @@ public class StorageCacheItem implements IStorageCache { @Override public synchronized void flush() { if (!batchedChanges.isEmpty()) { - if(batchedChanges.size() > 1) { + if (batchedChanges.size() > 1) { listeners.forEach(l -> l.onChangedBulk(batchedChanges)); } else { batchedChanges.forEach(c -> listeners.forEach(l -> l.onChanged(c.getKey(), c.getValue()))); } + batchedChanges.clear(); } }