From 594adc141c42f86e39a00f60af3a37f5f81b02b7 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Fri, 24 Jan 2014 10:35:35 -0600 Subject: [PATCH] Fixed issue with Upgrades not having correct maximums. --- parts/automation/PartUpgradeable.java | 7 ++++++- parts/automation/UpgradeInventory.java | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/parts/automation/PartUpgradeable.java b/parts/automation/PartUpgradeable.java index 2640b7a1d..2a6e23e6e 100644 --- a/parts/automation/PartUpgradeable.java +++ b/parts/automation/PartUpgradeable.java @@ -16,7 +16,7 @@ public class PartUpgradeable extends PartBasicState implements ISegmentedInvento { IConfigManager settings = new ConfigManager( this ); - private UpgradeInventory upgrades = new UpgradeInventory( is.getItem(), this, 4 ); + private UpgradeInventory upgrades = new UpgradeInventory( is, this, getUpgradeSlots() ); @Override public int getInstalledUpgrades(Upgrades u) @@ -24,6 +24,11 @@ public class PartUpgradeable extends PartBasicState implements ISegmentedInvento return upgrades.getInstalledUpgrades( u ); } + protected int getUpgradeSlots() + { + return 4; + } + public void writeToNBT(net.minecraft.nbt.NBTTagCompound extra) { super.writeToNBT( extra ); diff --git a/parts/automation/UpgradeInventory.java b/parts/automation/UpgradeInventory.java index 6afa2f766..759e43218 100644 --- a/parts/automation/UpgradeInventory.java +++ b/parts/automation/UpgradeInventory.java @@ -65,7 +65,6 @@ public class UpgradeInventory extends AppEngInternalInventory implements IAEAppE private int getMaxInstalled(Upgrades u) { Integer max = null; - for (ItemStack is : u.getSupported().keySet()) { if ( is.getItem() == itemorblock ) @@ -78,6 +77,11 @@ public class UpgradeInventory extends AppEngInternalInventory implements IAEAppE max = u.getSupported().get( is ); break; } + else if ( itemorblock instanceof ItemStack && Platform.isSameItem( (ItemStack) itemorblock, is ) ) + { + max = u.getSupported().get( is ); + break; + } } if ( max == null )