Fixed ItemBlockBattery meta issue

This commit is contained in:
DarkGuardsman 2014-01-19 03:28:18 -05:00
parent c90d509d5e
commit 3c36d162e0

View file

@ -29,6 +29,7 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
this.setNoRepair(); this.setNoRepair();
} }
@SuppressWarnings("unchecked")
@Override @Override
public void addInformation(ItemStack itemStack, EntityPlayer entityPlayer, List list, boolean par4) public void addInformation(ItemStack itemStack, EntityPlayer entityPlayer, List list, boolean par4)
{ {
@ -47,7 +48,7 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
{ {
color = "\u00a76"; color = "\u00a76";
} }
itemStack.getItemDamageForDisplay();
list.add(LanguageUtility.getLocal("tooltip.battery.energy").replace("%0", color).replace("%1", EnumColor.GREY.toString()).replace("%v0", UnitDisplay.getDisplayShort(joules, Unit.JOULES)).replace("%v1", UnitDisplay.getDisplayShort(this.getEnergyCapacity(itemStack), Unit.JOULES))); list.add(LanguageUtility.getLocal("tooltip.battery.energy").replace("%0", color).replace("%1", EnumColor.GREY.toString()).replace("%v0", UnitDisplay.getDisplayShort(joules, Unit.JOULES)).replace("%v1", UnitDisplay.getDisplayShort(this.getEnergyCapacity(itemStack), Unit.JOULES)));
} }
@ -65,10 +66,8 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
return place; return place;
} }
/** /** Makes sure the item is uncharged when it is crafted and not charged. Change this if you do
* Makes sure the item is uncharged when it is crafted and not charged. Change this if you do * not want this to happen! */
* not want this to happen!
*/
@Override @Override
public void onCreated(ItemStack itemStack, World par2World, EntityPlayer par3EntityPlayer) public void onCreated(ItemStack itemStack, World par2World, EntityPlayer par3EntityPlayer)
{ {
@ -118,7 +117,6 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
long electricityStored = Math.max(Math.min(joules, this.getEnergyCapacity(itemStack)), 0); long electricityStored = Math.max(Math.min(joules, this.getEnergyCapacity(itemStack)), 0);
itemStack.getTagCompound().setLong("electricity", electricityStored); itemStack.getTagCompound().setLong("electricity", electricityStored);
itemStack.setItemDamage((int) (100 - ((double) electricityStored / (double) getEnergyCapacity(itemStack)) * 100));
} }
public long getTransfer(ItemStack itemStack) public long getTransfer(ItemStack itemStack)
@ -136,14 +134,19 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
} }
long energyStored = itemStack.getTagCompound().getLong("electricity"); long energyStored = itemStack.getTagCompound().getLong("electricity");
itemStack.setItemDamage((int) (100 - ((double) energyStored / (double) getEnergyCapacity(itemStack)) * 100));
return energyStored; return energyStored;
} }
@Override
public int getDisplayDamage(ItemStack stack)
{
return (int) (100 - ((double) this.getEnergy(stack) / (double) getEnergyCapacity(stack)) * 100);
}
@Override @Override
public long getEnergyCapacity(ItemStack theItem) public long getEnergyCapacity(ItemStack theItem)
{ {
return TileBattery.getEnergyForTier(theItem.getItemDamage()); return TileBattery.getEnergyForTier(theItem.getItemDamage() + 1);
} }
public long getTransferRate(ItemStack itemStack) public long getTransferRate(ItemStack itemStack)
@ -151,11 +154,15 @@ public class ItemBlockBattery extends ItemBlock implements IEnergyItem, IVoltage
return this.getEnergyCapacity(itemStack) / 100; return this.getEnergyCapacity(itemStack) / 100;
} }
@SuppressWarnings("unchecked")
@Override @Override
public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List) public void getSubItems(int par1, CreativeTabs par2CreativeTabs, List par3List)
{ {
par3List.add(CompatibilityModule.getItemWithCharge(new ItemStack(this), 0)); par3List.add(new ItemStack(this, 1, 0));
par3List.add(CompatibilityModule.getItemWithCharge(new ItemStack(this), this.getEnergyCapacity(new ItemStack(this)))); par3List.add(CompatibilityModule.getItemWithCharge(new ItemStack(this, 1, 0), this.getEnergyCapacity(new ItemStack(this, 1, 0))));
par3List.add(new ItemStack(this, 1, 1));
par3List.add(CompatibilityModule.getItemWithCharge(new ItemStack(this, 1, 1), this.getEnergyCapacity(new ItemStack(this, 1, 1))));
} }
} }