From 3534b7dd4bfe5f7bcdc030cd69e201a012aa6977 Mon Sep 17 00:00:00 2001 From: GlodBlock <1356392126@qq.com> Date: Fri, 20 Aug 2021 11:38:44 +0800 Subject: fix LEG explode when essetia is overloaded --- src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/main/java/GoodGenerator/Blocks/TEs') diff --git a/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java b/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java index 1631bd60f3..ec2ffc1324 100644 --- a/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java +++ b/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java @@ -18,6 +18,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.*; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.render.TextureFactory; +import gregtech.api.util.GT_Log; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -249,9 +250,11 @@ public class LargeEssentiaGenerator extends GT_MetaTileEntity_MultiblockBase_EM for (EssentiaHatch hatch: this.mEssentiaHatch){ AspectList aspects = hatch.getAspects(); for (Aspect aspect: aspects.aspects.keySet()) { - while (EUt < EULimit && aspects.getAmount(aspect) > 0) { + while (EUt + getPerAspectEnergy(aspect) <= EULimit && aspects.getAmount(aspect) > 0) { EUt += getPerAspectEnergy(aspect); aspects.reduce(aspect, 1); + if (aspects.getAmount(aspect) == 0) + aspects.remove(aspect); } } } -- cgit