From faa4c18f63edb46e60da26e64b597d19abb6b49e Mon Sep 17 00:00:00 2001 From: Dream-Master Date: Mon, 28 Dec 2015 21:04:13 +0100 Subject: Added Blood Asps commits. New debug lang for achievements generation(miuirussia) fuel rod override v2(Blood Asp) Mox not working lik ic2 any more (more heat up more eu) Overriding IC2 fuel rods(Blood Asp) fix teleporter(Blood Asp) Sensor kit should not stack(Blood Asp) Fix teleporter nuclear control support(Blood Asp) Fixed Display overflow(Blood Asp) --- .../GT_MetaTileEntity_BasicBatteryBuffer.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/api/metatileentity') diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java index 40c45c5cfb..637d4a04e6 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicBatteryBuffer.java @@ -255,15 +255,18 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier if (!GT_Utility.isStackValid(aStack)) { return false; } - if (GT_ModHandler.isElectricItem(aStack, this.mTier)) { + if (mInventory[aIndex]==null && GT_ModHandler.isElectricItem(aStack, this.mTier)) { return true; } return false; } public long[] getStoredEnergy() { + boolean scaleOverflow =false; + boolean storedOverflow = false; long tScale = getBaseMetaTileEntity().getEUCapacity(); long tStored = getBaseMetaTileEntity().getStoredEU(); + long tStep = 0; if (mInventory != null) { for (ItemStack aStack : mInventory) { if (GT_ModHandler.isElectricItem(aStack)) { @@ -271,8 +274,11 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier if (aStack.getItem() instanceof GT_MetaBase_Item) { Long[] stats = ((GT_MetaBase_Item) aStack.getItem()).getElectricStats(aStack); if (stats != null) { + if(stats[0]>Long.MAX_VALUE/2){scaleOverflow=true;} tScale = tScale + stats[0]; - tStored = tStored + ((GT_MetaBase_Item) aStack.getItem()).getRealCharge(aStack); + tStep = ((GT_MetaBase_Item) aStack.getItem()).getRealCharge(aStack); + if(tStep > Long.MAX_VALUE/2){storedOverflow=true;} + tStored = tStored + tStep; } } else if (aStack.getItem() instanceof IElectricItem) { tStored = tStored + (long) ic2.api.item.ElectricItem.manager.getCharge(aStack); @@ -282,6 +288,8 @@ public class GT_MetaTileEntity_BasicBatteryBuffer extends GT_MetaTileEntity_Tier } } + if(scaleOverflow){tScale=Long.MAX_VALUE;} + if(storedOverflow){tStored=Long.MAX_VALUE;} return new long[]{tStored, tScale}; } -- cgit