diff options
author | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-04-29 12:19:35 +1000 |
---|---|---|
committer | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-04-29 12:19:35 +1000 |
commit | 47d2b68b66fb9958b57c3ff81f1e73e8f6afd91b (patch) | |
tree | 4b286fbf8780c16a1f30598614875c3afb26daa5 /src/Java/gtPlusPlus/core/util/minecraft | |
parent | f2f00bdaf83738740f004b46126ffe48e0b1cbc9 (diff) | |
download | GT5-Unofficial-47d2b68b66fb9958b57c3ff81f1e73e8f6afd91b.tar.gz GT5-Unofficial-47d2b68b66fb9958b57c3ff81f1e73e8f6afd91b.tar.bz2 GT5-Unofficial-47d2b68b66fb9958b57c3ff81f1e73e8f6afd91b.zip |
$ Fixed bug when breaking blocks which drop their inventory contents.
$ Fixed Hardness of Lead Lined Chest.
$ Fixed handling of tools/electrics in the Tree Farmer.
% Updated English Locale.
Diffstat (limited to 'src/Java/gtPlusPlus/core/util/minecraft')
-rw-r--r-- | src/Java/gtPlusPlus/core/util/minecraft/EnergyUtils.java | 15 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/util/minecraft/InventoryUtils.java | 12 |
2 files changed, 21 insertions, 6 deletions
diff --git a/src/Java/gtPlusPlus/core/util/minecraft/EnergyUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/EnergyUtils.java index 51bedaf64b..ef68436f21 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/EnergyUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/EnergyUtils.java @@ -1,6 +1,9 @@ package gtPlusPlus.core.util.minecraft; +import gregtech.api.enums.GT_Values; import gregtech.api.util.GT_ModHandler; +import gtPlusPlus.api.objects.Logger; +import ic2.api.item.ElectricItem; import ic2.api.item.IElectricItem; import ic2.api.item.IElectricItemManager; import ic2.api.item.ISpecialElectricItem; @@ -33,8 +36,16 @@ public class EnergyUtils { return 0 != GT_ModHandler.chargeElectricItem(aStack, aEnergyToInsert, aTier, true, false); } - public static boolean discharge(ItemStack aStack, int aEnergyToInsert, int aTier) { - return 0 != GT_ModHandler.dischargeElectricItem(aStack, -aEnergyToInsert, aTier, true, false, true); + public static boolean discharge(ItemStack aStack, int aEnergyToDrain, int aTier) { + if (isElectricItem(aStack)) { + int tTier = ((IElectricItem) aStack.getItem()).getTier(aStack); + int aDischargeValue = GT_ModHandler.dischargeElectricItem(aStack, aEnergyToDrain, tTier, true, false, false); + Logger.INFO("Trying to drain "+aDischargeValue); + return aDischargeValue > 0; + } + else { + return false; + } } public static long getMaxStorage(ItemStack aStack) { diff --git a/src/Java/gtPlusPlus/core/util/minecraft/InventoryUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/InventoryUtils.java index 8f12d20494..aaa81a0057 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/InventoryUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/InventoryUtils.java @@ -17,10 +17,14 @@ public class InventoryUtils { public static void dropInventoryItems(World world, int x, int y, int z, Block block) { TileEntity tileentity = world.getTileEntity(x, y, z); - if (tileentity != null && tileentity instanceof IInventory - && ((IInventory) tileentity).getSizeInventory() > 0) { - for (int i1 = 0; i1 < ((IInventory) tileentity).getSizeInventory(); ++i1) { - ItemStack itemstack = ((IInventory) tileentity).getStackInSlot(i1); + if (tileentity != null && tileentity instanceof IInventory && ((IInventory) tileentity).getSizeInventory() > 0) { + + IInventory aTileInv = (IInventory) tileentity; + int aMinSlot = 0; + int aMaxSlot = aTileInv.getSizeInventory()-1; + + for (int i1 = aMinSlot; i1 < aMaxSlot; ++i1) { + ItemStack itemstack = aTileInv.getStackInSlot(i1); if (itemstack != null) { float f = mRandom.nextFloat() * 0.8F + 0.1F; |