Fixed last modified date not being sent when extracting from an External Storage

This commit is contained in:
raoulvdberge
2017-11-28 11:15:44 +01:00
parent 46699bc42f
commit 9a6d38d473
4 changed files with 8 additions and 5 deletions

View File

@@ -3,6 +3,7 @@
### 1.5.25
- Fixed not being able to autocraft different Storage Drawers' wood drawers (raoulvdberge)
- Fixed not being able to autocraft certain Modular Routers items (raoulvdberge)
- Fixed last modified date not being sent when extracting from an External Storage (raoulvdberge)
### 1.5.24
- The Grid now displays last modified information (player name and date) and size on tooltips of stacks (raoulvdberge)

View File

@@ -69,11 +69,12 @@ public class ItemGridHandler implements IItemGridHandler {
size = Math.min(size, maxItemSize);
// Do this before actually extracting, since external storage sends updates as soon as a change happens (so before the storage tracker used to track)
network.getItemStorageTracker().changed(player, item.copy());
ItemStack took = network.extractItem(item, size, true);
if (took != null) {
network.getItemStorageTracker().changed(player, took.copy());
if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) {
IItemHandler playerInventory = player.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, EnumFacing.UP);

View File

@@ -69,11 +69,12 @@ public class ItemGridHandlerPortable implements IItemGridHandler {
size = Math.min(size, maxItemSize);
// Do this before actually extracting, since portable grid sends updates as soon as a change happens (so before the storage tracker used to track)
portableGrid.getStorageTracker().changed(player, item.copy());
ItemStack took = portableGrid.getStorage().extract(item, size, IComparer.COMPARE_DAMAGE | IComparer.COMPARE_NBT, true);
if (took != null) {
portableGrid.getStorageTracker().changed(player, took.copy());
if ((flags & EXTRACT_SHIFT) == EXTRACT_SHIFT) {
IItemHandler playerInventory = player.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, EnumFacing.UP);

View File

@@ -85,7 +85,7 @@ public class MessageGridItemDelta implements IMessage, IMessageHandler<MessageGr
for (Pair<ItemStack, Integer> delta : deltas) {
StackUtils.writeItemStack(buf, delta.getLeft(), network, false);
IStorageTracker.IStorageTrackerEntry entry = storageTracker.get(stack);
IStorageTracker.IStorageTrackerEntry entry = storageTracker.get(delta.getLeft());
buf.writeBoolean(entry != null);
if (entry != null) {
buf.writeLong(entry.getTime());