diff --git a/parts/misc/PartStorageBus.java b/parts/misc/PartStorageBus.java index fa40f8e37..e2ef5c16b 100644 --- a/parts/misc/PartStorageBus.java +++ b/parts/misc/PartStorageBus.java @@ -157,7 +157,7 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC if ( host == null || host.getTile() == null || host.getTile().getWorldObj() == null ) return; - IMEInventory in = getHandler(); + IMEInventory in = getInternalHandler(); IItemList before = AEApi.instance().storage().createItemList(); if ( in != null ) before = in.getAvailableItems( before ); @@ -175,7 +175,7 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC // :3 } - IMEInventory out = getHandler(); + IMEInventory out = getInternalHandler(); IItemList after = AEApi.instance().storage().createItemList(); if ( out != null ) after = out.getAvailableItems( after ); @@ -198,6 +198,13 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC resetCache( true ); } + @Override + public void upgradesChanged() + { + super.upgradesChanged(); + resetCache( true ); + } + @Override public void updateSetting(IConfigManager manager, Enum settingName, Enum newValue) { @@ -213,7 +220,7 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC resetCache( true ); } - private MEInventoryHandler getHandler() + public MEInventoryHandler getInternalHandler() { if ( cached ) return handler; @@ -390,7 +397,7 @@ public class PartStorageBus extends PartUpgradeable implements IGridTickable, IC { if ( channel == StorageChannel.ITEMS ) { - IMEInventoryHandler out = proxy.isActive() ? getHandler() : null; + IMEInventoryHandler out = proxy.isActive() ? getInternalHandler() : null; if ( out != null ) return Arrays.asList( new IMEInventoryHandler[] { out } ); }