From 5f6011f705c75007b48735d02e590581c78ca8db Mon Sep 17 00:00:00 2001 From: NotAPenguin Date: Sun, 15 Sep 2024 23:30:13 +0200 Subject: Small optimizations & MultiBlockBase cleanup (#3197) Co-authored-by: Martin Robertz --- .../multis/MTECircuitAssemblyLine.java | 4 +- .../multis/MTEHighTempGasCooledReactor.java | 6 +- .../multis/MTEThoriumHighTempReactor.java | 4 +- .../multis/mega/MTEMegaBlastFurnace.java | 4 +- .../multis/mega/MTEMegaOilCracker.java | 10 +- .../multis/mega/MegaMultiBlockBase.java | 6 +- src/main/java/ggfab/mte/MTEAdvAssLine.java | 6 +- .../blocks/tileEntity/MTECoolantTower.java | 4 +- .../blocks/tileEntity/MTEPreciseAssembler.java | 22 +-- .../tileEntity/base/MTELargeFusionComputer.java | 4 +- .../tileEntity/base/MTELargeTurbineBase.java | 8 +- .../MTEExtendedPowerMultiBlockBase.java | 3 +- .../implementations/MTEMultiBlockBase.java | 216 ++++++++------------- .../gregtech/api/util/ExoticEnergyInputHelper.java | 12 +- src/main/java/gregtech/api/util/GTUtil.java | 3 +- src/main/java/gregtech/api/util/GTUtility.java | 10 +- src/main/java/gregtech/api/util/ValidMTEList.java | 60 ++++++ .../machines/multi/MTEAssemblyLine.java | 4 +- .../machines/multi/MTEDieselEngine.java | 6 +- .../machines/multi/MTEDrillerBase.java | 4 +- .../machines/multi/MTEElectricBlastFurnace.java | 5 +- .../machines/multi/MTEExtremeDieselEngine.java | 6 +- .../machines/multi/MTEFusionComputer.java | 4 +- .../machines/multi/MTELargeTurbine.java | 8 +- .../machines/multi/MTEMultiFurnace.java | 6 +- .../tileentities/machines/multi/MTEOilCracker.java | 10 +- .../tileentities/machines/multi/MTEPCBFactory.java | 4 +- .../machines/multi/MTEPlasmaForge.java | 4 +- .../machines/multi/MTEProcessingArray.java | 4 +- .../implementations/base/GTPPMultiBlockBase.java | 20 +- .../implementations/base/MTESteamMultiBase.java | 24 +-- .../processing/MTEIndustrialMultiMachine.java | 4 +- .../processing/MTEIndustrialVacuumFreezer.java | 4 +- .../machines/multi/processing/MTEIsaMill.java | 4 +- .../multi/processing/advanced/MTEAdvEBF.java | 4 +- .../multi/production/MTEElementalDuplicator.java | 6 +- .../multi/production/MTELargeRocketEngine.java | 6 +- .../machines/multi/production/MTETreeFarm.java | 4 +- .../production/chemplant/MTEChemicalPlant.java | 4 +- .../production/mega/MTEMegaAlloyBlastSmelter.java | 4 +- .../production/turbines/MTELargerTurbineBase.java | 14 +- ...chMetaTileEntity_PowerSubStationController.java | 10 +- .../multiblock/MTEExtremeIndustrialGreenhouse.java | 6 +- .../metaTileEntity/multi/MTEQuantumComputer.java | 16 +- .../metaTileEntity/multi/MTEResearchStation.java | 10 +- .../thing/metaTileEntity/multi/MTETeslaTower.java | 14 +- .../multi/base/TTMultiblockBase.java | 62 +++--- 47 files changed, 339 insertions(+), 324 deletions(-) create mode 100644 src/main/java/gregtech/api/util/ValidMTEList.java (limited to 'src') diff --git a/src/main/java/bartworks/common/tileentities/multis/MTECircuitAssemblyLine.java b/src/main/java/bartworks/common/tileentities/multis/MTECircuitAssemblyLine.java index 80f851167d..46f5e66649 100644 --- a/src/main/java/bartworks/common/tileentities/multis/MTECircuitAssemblyLine.java +++ b/src/main/java/bartworks/common/tileentities/multis/MTECircuitAssemblyLine.java @@ -28,8 +28,8 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_ASSEMBLY_LINE import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_ASSEMBLY_LINE_GLOW; import static gregtech.api.metatileentity.BaseTileEntity.TOOLTIP_DELAY; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; import static gregtech.api.util.GTUtility.getColoredTierNameFromTier; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Arrays; @@ -372,7 +372,7 @@ public class MTECircuitAssemblyLine extends MTEEnhancedMultiBlockBase getStoredInputs() { if (mode == 0) { ArrayList rList = new ArrayList<>(); - for (MTEHatchInputBus tHatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus tHatch : validMTEList(mInputBusses)) { tHatch.mRecipeMap = this.getRecipeMap(); for (int i = 0; i < tHatch.getBaseMetaTileEntity() .getSizeInventory(); i++) { diff --git a/src/main/java/bartworks/common/tileentities/multis/MTEHighTempGasCooledReactor.java b/src/main/java/bartworks/common/tileentities/multis/MTEHighTempGasCooledReactor.java index 73f6593d4f..3250c7ce0d 100644 --- a/src/main/java/bartworks/common/tileentities/multis/MTEHighTempGasCooledReactor.java +++ b/src/main/java/bartworks/common/tileentities/multis/MTEHighTempGasCooledReactor.java @@ -18,7 +18,7 @@ import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose import static gregtech.api.enums.GTValues.AuthorKuba; import static gregtech.api.util.GTRecipeBuilder.HOURS; import static gregtech.api.util.GTStructureUtility.ofHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.HashMap; @@ -327,7 +327,7 @@ public class MTEHighTempGasCooledReactor extends MTEEnhancedMultiBlockBase if (isOutputPollution) { tOutputHatches = this.mPollutionOutputHatches; int pollutionReduction = 0; - for (MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) { + for (MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) { pollutionReduction = 100 - tHatch.calculatePollutionReduction(100); break; } diff --git a/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaOilCracker.java b/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaOilCracker.java index 3e2a73c725..4424bc62cc 100644 --- a/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaOilCracker.java +++ b/src/main/java/bartworks/common/tileentities/multis/mega/MTEMegaOilCracker.java @@ -25,7 +25,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_OIL_CRACKER_G import static gregtech.api.enums.Textures.BlockIcons.casingTexturePages; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofCoil; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.HashMap; @@ -358,7 +358,7 @@ public class MTEMegaOilCracker extends MegaMultiBlockBase imp public ArrayList getStoredFluids() { final ArrayList rList = new ArrayList<>(); Map inputsFromME = new HashMap<>(); - for (final MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (final MTEHatchInput tHatch : validMTEList(mInputHatches)) { tHatch.mRecipeMap = getRecipeMap(); if (tHatch instanceof MTEHatchInputME meHatch) { for (FluidStack tFluid : meHatch.getStoredFluids()) { @@ -381,7 +381,7 @@ public class MTEMegaOilCracker extends MegaMultiBlockBase imp } } } - for (final MTEHatchInput tHatch : filterValidMTEs(mMiddleInputHatches)) { + for (final MTEHatchInput tHatch : validMTEList(mMiddleInputHatches)) { tHatch.mRecipeMap = getRecipeMap(); if (tHatch instanceof MTEHatchInputME meHatch) { for (FluidStack tFluid : meHatch.getStoredFluids()) { @@ -445,7 +445,7 @@ public class MTEMegaOilCracker extends MegaMultiBlockBase imp @Override protected void startRecipeProcessing() { - for (MTEHatchInput hatch : filterValidMTEs(mMiddleInputHatches)) { + for (MTEHatchInput hatch : validMTEList(mMiddleInputHatches)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { aware.startRecipeProcessing(); } @@ -456,7 +456,7 @@ public class MTEMegaOilCracker extends MegaMultiBlockBase imp @Override protected void endRecipeProcessing() { super.endRecipeProcessing(); - for (MTEHatchInput hatch : filterValidMTEs(mMiddleInputHatches)) { + for (MTEHatchInput hatch : validMTEList(mMiddleInputHatches)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { setResultIfFailure(aware.endRecipeProcessing(this)); } diff --git a/src/main/java/bartworks/common/tileentities/multis/mega/MegaMultiBlockBase.java b/src/main/java/bartworks/common/tileentities/multis/mega/MegaMultiBlockBase.java index bac811ede8..02eda50607 100644 --- a/src/main/java/bartworks/common/tileentities/multis/mega/MegaMultiBlockBase.java +++ b/src/main/java/bartworks/common/tileentities/multis/mega/MegaMultiBlockBase.java @@ -1,6 +1,6 @@ package bartworks.common.tileentities.multis.mega; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.Arrays; @@ -52,7 +52,7 @@ public abstract class MegaMultiBlockBase> extend public String[] getInfoData() { int mPollutionReduction = 0; - for (MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) { + for (MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) { mPollutionReduction = Math.max(tHatch.calculatePollutionReduction(100), mPollutionReduction); } @@ -60,7 +60,7 @@ public abstract class MegaMultiBlockBase> extend long storedEnergy = ttHatches[0]; long maxEnergy = ttHatches[1]; - for (MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) { + for (MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) { storedEnergy += tHatch.getBaseMetaTileEntity() .getStoredEU(); maxEnergy += tHatch.getBaseMetaTileEntity() diff --git a/src/main/java/ggfab/mte/MTEAdvAssLine.java b/src/main/java/ggfab/mte/MTEAdvAssLine.java index 5474cdd04b..e02abdedd1 100644 --- a/src/main/java/ggfab/mte/MTEAdvAssLine.java +++ b/src/main/java/ggfab/mte/MTEAdvAssLine.java @@ -21,8 +21,8 @@ import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.Textures.BlockIcons.casingTexturePages; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; import static gregtech.api.util.GTUtility.formatNumbers; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Arrays; @@ -725,7 +725,7 @@ public class MTEAdvAssLine extends MTEExtendedPowerMultiBlockBase if (GTUtility.isStackValid(mInventory[1]) && isCorrectDataItem(mInventory[1], state)) { rList.add(mInventory[1]); } - for (MTEHatchDataAccess tHatch : filterValidMTEs(mDataAccessHatches)) { + for (MTEHatchDataAccess tHatch : validMTEList(mDataAccessHatches)) { rList.addAll(tHatch.getInventoryItems(stack -> isCorrectDataItem(stack, state))); } return rList; @@ -978,7 +978,7 @@ public class MTEAdvAssLine extends MTEExtendedPowerMultiBlockBase private void drainAllFluids(GTRecipe.RecipeAssemblyLine recipe, int parallel) { GTRecipe.RecipeAssemblyLine .consumeInputFluids(mInputHatches, parallel, recipe.mFluidInputs, curBatchFluidsFromME); - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) tHatch.updateSlots(); + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) tHatch.updateSlots(); } @Override diff --git a/src/main/java/goodgenerator/blocks/tileEntity/MTECoolantTower.java b/src/main/java/goodgenerator/blocks/tileEntity/MTECoolantTower.java index be0fe5b4ce..b9c03aef0c 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/MTECoolantTower.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/MTECoolantTower.java @@ -4,7 +4,7 @@ import static com.gtnewhorizon.structurelib.structure.StructureUtility.*; import static goodgenerator.util.DescTextLocalization.BLUE_PRINT_INFO; import static gregtech.api.enums.Textures.BlockIcons.*; import static gregtech.api.util.GTStructureUtility.*; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; @@ -148,7 +148,7 @@ public class MTECoolantTower extends MTETooltipMultiBlockBaseEM implements ICons this.mMaxProgresstime = 20; int steam = 0; - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) { steam += maybeDrainHatch(tHatch); } addOutput(GTModHandler.getDistilledWater(steam / 160)); diff --git a/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java b/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java index d268db2f35..0c66084592 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/MTEPreciseAssembler.java @@ -7,7 +7,7 @@ import static goodgenerator.util.DescTextLocalization.BLUE_PRINT_INFO; import static gregtech.api.enums.HatchElement.*; import static gregtech.api.metatileentity.BaseTileEntity.TOOLTIP_DELAY; import static gregtech.api.util.GTStructureUtility.ofFrame; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.Arrays; import java.util.Collection; @@ -389,10 +389,10 @@ public class MTEPreciseAssembler extends MTEExtendedPowerMultiBlockBase hatches = getExoticAndNormalEnergyHatchList(); - for (MTEHatch hatch : filterValidMTEs(hatches)) { + for (MTEHatch hatch : validMTEList(hatches)) { long consumableEnergy = Math.min(hatch.getEUVar(), energyLimit); long receivedEnergy = Math .min(consumableEnergy, maxEUStore() - aBaseMetaTileEntity.getStoredEU()); diff --git a/src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeTurbineBase.java b/src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeTurbineBase.java index ea36b53651..7b06dbb96d 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeTurbineBase.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/base/MTELargeTurbineBase.java @@ -7,7 +7,7 @@ import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofBlock; import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose; import static gregtech.api.enums.HatchElement.*; import static gregtech.api.util.GTStructureUtility.*; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; @@ -229,7 +229,7 @@ public abstract class MTELargeTurbineBase extends MTEEnhancedMultiBlockBase 1) { - try { - GTMod.achievements.issueAchievement( - aBaseMetaTileEntity.getWorld() - .getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), - "oilplant"); - } catch (Exception ignored) {} - } mOutputFluids = null; } mEfficiency = Math.max( @@ -646,8 +633,10 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } public boolean polluteEnvironment(int aPollutionLevel) { + // Early exit if pollution is disabled + if (!GTMod.gregtechproxy.mPollution) return true; mPollution += aPollutionLevel; - for (MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) { + for (MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) { if (mPollution >= 10000) { if (tHatch.polluteEnvironment(this)) { mPollution -= 10000; @@ -1112,7 +1101,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity if (aEU <= 0) { return true; } - if (mDynamoHatches.size() > 0) { + if (!mDynamoHatches.isEmpty()) { return addEnergyOutputMultipleDynamos(aEU, true); } return false; @@ -1123,7 +1112,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity long totalOutput = 0; long aFirstVoltageFound = -1; boolean aFoundMixedDynamos = false; - for (MTEHatchDynamo aDynamo : filterValidMTEs(mDynamoHatches)) { + for (MTEHatchDynamo aDynamo : validMTEList(mDynamoHatches)) { long aVoltage = aDynamo.maxEUOutput(); long aTotal = aDynamo.maxAmperesOut() * aVoltage; // Check against voltage to check when hatch mixing @@ -1147,7 +1136,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity int aAmpsToInject; int aRemainder; int ampsOnCurrentHatch; - for (MTEHatchDynamo aDynamo : filterValidMTEs(mDynamoHatches)) { + for (MTEHatchDynamo aDynamo : validMTEList(mDynamoHatches)) { leftToInject = aEU - injected; aVoltage = aDynamo.maxEUOutput(); aAmpsToInject = (int) (leftToInject / aVoltage); @@ -1172,7 +1161,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity */ public long getMaxInputVoltage() { long rVoltage = 0; - for (MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) rVoltage += tHatch.getBaseMetaTileEntity() + for (MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) rVoltage += tHatch.getBaseMetaTileEntity() .getInputVoltage(); return rVoltage; } @@ -1194,7 +1183,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity */ public long getMaxInputPower() { long eut = 0; - for (MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) { + for (MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) { IGregTechTileEntity baseTile = tHatch.getBaseMetaTileEntity(); eut += baseTile.getInputVoltage() * baseTile.getInputAmperage(); } @@ -1206,7 +1195,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity */ public long getInputVoltageTier() { long rTier = 0; - if (mEnergyHatches.size() > 0) { + if (!mEnergyHatches.isEmpty()) { rTier = mEnergyHatches.get(0) .getInputTier(); for (int i = 1; i < mEnergyHatches.size(); i++) { @@ -1259,7 +1248,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public boolean drainEnergyInput(long aEU) { if (aEU <= 0) return true; - for (MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) { + for (MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) { if (tHatch.getBaseMetaTileEntity() .decreaseStoredEnergyUnits(aEU, false)) return true; } @@ -1268,7 +1257,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity protected static boolean dumpFluid(List aOutputHatches, FluidStack copiedFluidStack, boolean restrictiveHatchesOnly) { - for (MTEHatchOutput tHatch : filterValidMTEs(aOutputHatches)) { + for (MTEHatchOutput tHatch : validMTEList(aOutputHatches)) { if (restrictiveHatchesOnly && tHatch.mMode == 0) { continue; } @@ -1307,7 +1296,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public boolean depleteInput(FluidStack aLiquid, boolean simulate) { if (aLiquid == null) return false; - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) { setHatchRecipeMap(tHatch); FluidStack tLiquid = tHatch.drain(ForgeDirection.UNKNOWN, aLiquid, false); if (tLiquid != null && tLiquid.amount >= aLiquid.amount) { @@ -1332,10 +1321,11 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity boolean outputSuccess = true; // noinspection DataFlowIssue + final List filteredHatches = filterValidMTEs(mOutputHatches); while (outputSuccess && aStack.stackSize > 0) { outputSuccess = false; ItemStack single = aStack.splitStack(1); - for (MTEHatchOutput tHatch : filterValidMTEs(mOutputHatches)) { + for (MTEHatchOutput tHatch : filteredHatches) { if (!outputSuccess && tHatch.outputsItems()) { if (tHatch.getBaseMetaTileEntity() .addStackToSlot(1, single)) outputSuccess = true; @@ -1363,32 +1353,25 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity if (GTUtility.isStackInvalid(aStack)) return false; FluidStack aLiquid = GTUtility.getFluidForFilledItem(aStack, true); if (aLiquid != null) return depleteInput(aLiquid); - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) { setHatchRecipeMap(tHatch); - if (GTUtility.areStacksEqual( - aStack, - tHatch.getBaseMetaTileEntity() - .getStackInSlot(0))) { - if (tHatch.getBaseMetaTileEntity() - .getStackInSlot(0).stackSize >= aStack.stackSize) { - tHatch.getBaseMetaTileEntity() - .decrStackSize(0, aStack.stackSize); + final IGregTechTileEntity baseMetaTileEntity = tHatch.getBaseMetaTileEntity(); + ItemStack stackInFirstSlot = baseMetaTileEntity.getStackInSlot(0); + if (GTUtility.areStacksEqual(aStack, stackInFirstSlot)) { + if (stackInFirstSlot.stackSize >= aStack.stackSize) { + baseMetaTileEntity.decrStackSize(0, aStack.stackSize); return true; } } } - for (MTEHatchInputBus tHatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus tHatch : validMTEList(mInputBusses)) { tHatch.mRecipeMap = getRecipeMap(); - for (int i = tHatch.getBaseMetaTileEntity() - .getSizeInventory() - 1; i >= 0; i--) { - if (GTUtility.areStacksEqual( - aStack, - tHatch.getBaseMetaTileEntity() - .getStackInSlot(i))) { - if (tHatch.getBaseMetaTileEntity() - .getStackInSlot(i).stackSize >= aStack.stackSize) { - tHatch.getBaseMetaTileEntity() - .decrStackSize(i, aStack.stackSize); + final IGregTechTileEntity baseMetaTileEntity = tHatch.getBaseMetaTileEntity(); + for (int i = baseMetaTileEntity.getSizeInventory() - 1; i >= 0; i--) { + ItemStack stackInSlot = baseMetaTileEntity.getStackInSlot(i); + if (GTUtility.areStacksEqual(aStack, stackInSlot)) { + if (stackInSlot.stackSize >= aStack.stackSize) { + baseMetaTileEntity.decrStackSize(i, aStack.stackSize); return true; } } @@ -1399,12 +1382,10 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public ArrayList getStoredOutputs() { ArrayList rList = new ArrayList<>(); - for (MTEHatchOutputBus tHatch : filterValidMTEs(mOutputBusses)) { - for (int i = tHatch.getBaseMetaTileEntity() - .getSizeInventory() - 1; i >= 0; i--) { - rList.add( - tHatch.getBaseMetaTileEntity() - .getStackInSlot(i)); + for (MTEHatchOutputBus tHatch : validMTEList(mOutputBusses)) { + IGregTechTileEntity baseMetaTileEntity = tHatch.getBaseMetaTileEntity(); + for (int i = baseMetaTileEntity.getSizeInventory() - 1; i >= 0; i--) { + rList.add(baseMetaTileEntity.getStackInSlot(i)); } } return rList; @@ -1413,7 +1394,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public ArrayList getStoredFluids() { ArrayList rList = new ArrayList<>(); Map inputsFromME = new HashMap<>(); - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) { setHatchRecipeMap(tHatch); if (tHatch instanceof MTEHatchMultiInput multiInputHatch) { for (FluidStack tFluid : multiInputHatch.getStoredFluid()) { @@ -1429,8 +1410,9 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } } } else { - if (tHatch.getFillableStack() != null) { - rList.add(tHatch.getFillableStack()); + FluidStack fillableStack = tHatch.getFillableStack(); + if (fillableStack != null) { + rList.add(fillableStack); } } } @@ -1481,7 +1463,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public ArrayList getStoredInputs() { ArrayList rList = new ArrayList<>(); Map inputsFromME = new HashMap<>(); - for (MTEHatchInputBus tHatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus tHatch : validMTEList(mInputBusses)) { if (tHatch instanceof MTEHatchCraftingInputME) { continue; } @@ -1501,8 +1483,9 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } } - if (getStackInSlot(1) != null && getStackInSlot(1).getUnlocalizedName() - .startsWith("gt.integrated_circuit")) rList.add(getStackInSlot(1)); + ItemStack stackInSlot1 = getStackInSlot(1); + if (stackInSlot1 != null && stackInSlot1.getUnlocalizedName() + .startsWith("gt.integrated_circuit")) rList.add(stackInSlot1); if (!inputsFromME.isEmpty()) { rList.addAll(inputsFromME.values()); } @@ -1536,7 +1519,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } Map inputsFromME = new HashMap<>(); - for (MTEHatchInputBus tHatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus tHatch : validMTEList(mInputBusses)) { if (tHatch instanceof MTEHatchCraftingInputME) { continue; } @@ -1556,8 +1539,9 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } } - if (getStackInSlot(1) != null && getStackInSlot(1).getUnlocalizedName() - .startsWith("gt.integrated_circuit")) rList.add(getStackInSlot(1)); + ItemStack stackInSlot1 = getStackInSlot(1); + if (stackInSlot1 != null && stackInSlot1.getUnlocalizedName() + .startsWith("gt.integrated_circuit")) rList.add(stackInSlot1); if (!inputsFromME.isEmpty()) { rList.addAll(inputsFromME.values()); } @@ -1566,7 +1550,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public Map getStoredInputsFromME() { Map inputsFromME = new Object2ReferenceOpenHashMap<>(); - for (MTEHatchInputBus tHatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus tHatch : validMTEList(mInputBusses)) { if (tHatch instanceof MTEHatchInputBusME meBus) { for (int i = meBus.getSizeInventory() - 1; i >= 0; i--) { ItemStack itemStack = meBus.getStackInSlot(i); @@ -1582,7 +1566,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity public Map getStoredFluidsFromME() { Map fluidsFromME = new Reference2ReferenceOpenHashMap<>(); - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) { if (tHatch instanceof MTEHatchInputME meHatch) { for (FluidStack fluid : meHatch.getStoredFluids()) { if (fluid != null) { @@ -1611,17 +1595,17 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } public void updateSlots() { - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) tHatch.updateSlots(); - for (MTEHatchInputBus tHatch : filterValidMTEs(mInputBusses)) tHatch.updateSlots(); + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) tHatch.updateSlots(); + for (MTEHatchInputBus tHatch : validMTEList(mInputBusses)) tHatch.updateSlots(); } protected void startRecipeProcessing() { - for (MTEHatchInputBus hatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus hatch : validMTEList(mInputBusses)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { aware.startRecipeProcessing(); } } - for (MTEHatchInput hatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput hatch : validMTEList(mInputHatches)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { aware.startRecipeProcessing(); } @@ -1635,12 +1619,12 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity } protected void endRecipeProcessing() { - for (MTEHatchInputBus hatch : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus hatch : validMTEList(mInputBusses)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { setResultIfFailure(aware.endRecipeProcessing(this)); } } - for (MTEHatchInput hatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput hatch : validMTEList(mInputHatches)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { setResultIfFailure(aware.endRecipeProcessing(this)); } @@ -1665,21 +1649,20 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity mSmartInputHatches.add(hatch); } } - if (aMetaTileEntity instanceof MTEHatchInput) { - setHatchRecipeMap((MTEHatchInput) aMetaTileEntity); - return mInputHatches.add((MTEHatchInput) aMetaTileEntity); + if (aMetaTileEntity instanceof MTEHatchInput hatch) { + setHatchRecipeMap(hatch); + return mInputHatches.add(hatch); } - if (aMetaTileEntity instanceof MTEHatchInputBus) { - ((MTEHatchInputBus) aMetaTileEntity).mRecipeMap = getRecipeMap(); - return mInputBusses.add((MTEHatchInputBus) aMetaTileEntity); + if (aMetaTileEntity instanceof MTEHatchInputBus hatch) { + hatch.mRecipeMap = getRecipeMap(); + return mInputBusses.add(hatch); } - if (aMetaTileEntity instanceof MTEHatchOutput) return mOutputHatches.add((MTEHatchOutput) aMetaTileEntity); - if (aMetaTileEntity instanceof MTEHatchOutputBus) return mOutputBusses.add((MTEHatchOutputBus) aMetaTileEntity); - if (aMetaTileEntity instanceof MTEHatchEnergy) return mEnergyHatches.add((MTEHatchEnergy) aMetaTileEntity); - if (aMetaTileEntity instanceof MTEHatchDynamo) return mDynamoHatches.add((MTEHatchDynamo) aMetaTileEntity); - if (aMetaTileEntity instanceof MTEHatchMaintenance) - return mMaintenanceHatches.add((MTEHatchMaintenance) aMetaTileEntity); - if (aMetaTileEntity instanceof MTEHatchMuffler) return mMufflerHatches.add((MTEHatchMuffler) aMetaTileEntity); + if (aMetaTileEntity instanceof MTEHatchOutput hatch) return mOutputHatches.add(hatch); + if (aMetaTileEntity instanceof MTEHatchOutputBus hatch) return mOutputBusses.add(hatch); + if (aMetaTileEntity instanceof MTEHatchEnergy hatch) return mEnergyHatches.add(hatch); + if (aMetaTileEntity instanceof MTEHatchDynamo hatch) return mDynamoHatches.add(hatch); + if (aMetaTileEntity instanceof MTEHatchMaintenance hatch) return mMaintenanceHatches.add(hatch); + if (aMetaTileEntity instanceof MTEHatchMuffler hatch) return mMufflerHatches.add(hatch); return false; } @@ -1833,17 +1816,16 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity @Override public String[] getInfoData() { int mPollutionReduction = 0; - for (MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) { + for (MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) { mPollutionReduction = Math.max(tHatch.calculatePollutionReduction(100), mPollutionReduction); } long storedEnergy = 0; long maxEnergy = 0; - for (MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) { - storedEnergy += tHatch.getBaseMetaTileEntity() - .getStoredEU(); - maxEnergy += tHatch.getBaseMetaTileEntity() - .getEUCapacity(); + for (MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) { + final IGregTechTileEntity baseMetaTileEntity = tHatch.getBaseMetaTileEntity(); + storedEnergy += baseMetaTileEntity.getStoredEU(); + maxEnergy += baseMetaTileEntity.getEUCapacity(); } return new String[] { @@ -1915,47 +1897,6 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity return supportsSlotAutomation(aIndex); } - protected ItemStack[] getCompactedInputs() { - // TODO: repalce method with a cleaner one - ArrayList tInputList = getStoredInputs(); - int tInputList_sS = tInputList.size(); - for (int i = 0; i < tInputList_sS - 1; i++) { - for (int j = i + 1; j < tInputList_sS; j++) { - if (!GTUtility.areStacksEqual(tInputList.get(i), tInputList.get(j))) continue; - if (tInputList.get(i).stackSize >= tInputList.get(j).stackSize) { - tInputList.remove(j--); - tInputList_sS = tInputList.size(); - } else { - tInputList.remove(i--); - tInputList_sS = tInputList.size(); - break; - } - } - } - return tInputList.toArray(new ItemStack[0]); - } - - protected FluidStack[] getCompactedFluids() { - // TODO: repalce method with a cleaner one - ArrayList tFluidList = getStoredFluids(); - int tFluidList_sS = tFluidList.size(); - for (int i = 0; i < tFluidList_sS - 1; i++) { - for (int j = i + 1; j < tFluidList_sS; j++) { - if (!GTUtility.areFluidsEqual(tFluidList.get(i), tFluidList.get(j))) continue; - - if (tFluidList.get(i).amount >= tFluidList.get(j).amount) { - tFluidList.remove(j--); - tFluidList_sS = tFluidList.size(); - } else { - tFluidList.remove(i--); - tFluidList_sS = tFluidList.size(); - break; - } - } - } - return tFluidList.toArray(new FluidStack[0]); - } - @Override public void getWailaBody(ItemStack itemStack, List currentTip, IWailaDataAccessor accessor, IWailaConfigHandler config) { @@ -2155,20 +2096,23 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity @Override public boolean isAllowedToWork() { - return getBaseMetaTileEntity() != null && getBaseMetaTileEntity().isAllowedToWork(); + final IGregTechTileEntity baseMetaTileEntity = getBaseMetaTileEntity(); + return baseMetaTileEntity != null && baseMetaTileEntity.isAllowedToWork(); } @Override public void disableWorking() { - if (getBaseMetaTileEntity() != null) { - getBaseMetaTileEntity().disableWorking(); + final IGregTechTileEntity baseMetaTileEntity = getBaseMetaTileEntity(); + if (baseMetaTileEntity != null) { + baseMetaTileEntity.disableWorking(); } } @Override public void enableWorking() { - if (getBaseMetaTileEntity() != null) { - getBaseMetaTileEntity().enableWorking(); + final IGregTechTileEntity baseMetaTileEntity = getBaseMetaTileEntity(); + if (baseMetaTileEntity != null) { + baseMetaTileEntity.enableWorking(); } } @@ -2223,7 +2167,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity @Override public List getItemOutputSlots(ItemStack[] toOutput) { List ret = new ArrayList<>(); - for (final MTEHatch tBus : filterValidMTEs(mOutputBusses)) { + for (final MTEHatch tBus : validMTEList(mOutputBusses)) { if (!(tBus instanceof MTEHatchOutputBusME)) { final IInventory tBusInv = tBus.getBaseMetaTileEntity(); for (int i = 0; i < tBusInv.getSizeInventory(); i++) { @@ -2277,7 +2221,7 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity @Override public boolean canDumpItemToME() { - for (MTEHatch tHatch : filterValidMTEs(mOutputBusses)) { + for (MTEHatch tHatch : validMTEList(mOutputBusses)) { if (tHatch instanceof MTEHatchOutputBusME) { if ((((MTEHatchOutputBusME) tHatch).canAcceptItem())) { return true; diff --git a/src/main/java/gregtech/api/util/ExoticEnergyInputHelper.java b/src/main/java/gregtech/api/util/ExoticEnergyInputHelper.java index 6640f03835..55d2b87f3b 100644 --- a/src/main/java/gregtech/api/util/ExoticEnergyInputHelper.java +++ b/src/main/java/gregtech/api/util/ExoticEnergyInputHelper.java @@ -1,6 +1,6 @@ package gregtech.api.util; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Collection; @@ -52,7 +52,7 @@ public class ExoticEnergyInputHelper { public static long getTotalEuMulti(Collection hatches) { long rEU = 0L; - for (MTEHatch tHatch : filterValidMTEs(hatches)) { + for (MTEHatch tHatch : validMTEList(hatches)) { rEU += tHatch.getBaseMetaTileEntity() .getInputVoltage() * tHatch.maxWorkingAmperesIn(); } @@ -61,7 +61,7 @@ public class ExoticEnergyInputHelper { public static long getMaxInputVoltageMulti(Collection hatches) { long rVoltage = 0; - for (MTEHatch tHatch : filterValidMTEs(hatches)) { + for (MTEHatch tHatch : validMTEList(hatches)) { rVoltage += tHatch.getBaseMetaTileEntity() .getInputVoltage(); } @@ -70,7 +70,7 @@ public class ExoticEnergyInputHelper { public static long getAverageInputVoltageMulti(Collection hatches) { long rVoltage = 0; - for (MTEHatch tHatch : filterValidMTEs(hatches)) { + for (MTEHatch tHatch : validMTEList(hatches)) { rVoltage += tHatch.getBaseMetaTileEntity() .getInputVoltage(); } @@ -82,7 +82,7 @@ public class ExoticEnergyInputHelper { public static long getMaxInputAmpsMulti(Collection hatches) { long rAmp = 0; - for (MTEHatch tHatch : filterValidMTEs(hatches)) { + for (MTEHatch tHatch : validMTEList(hatches)) { rAmp += tHatch.getBaseMetaTileEntity() .getInputAmperage(); } @@ -91,7 +91,7 @@ public class ExoticEnergyInputHelper { public static long getMaxWorkingInputAmpsMulti(Collection hatches) { long rAmp = 0; - for (MTEHatch tHatch : filterValidMTEs(hatches)) { + for (MTEHatch tHatch : validMTEList(hatches)) { rAmp += tHatch.maxWorkingAmperesIn(); } return rAmp; diff --git a/src/main/java/gregtech/api/util/GTUtil.java b/src/main/java/gregtech/api/util/GTUtil.java index d1dd308449..8923bca954 100644 --- a/src/main/java/gregtech/api/util/GTUtil.java +++ b/src/main/java/gregtech/api/util/GTUtil.java @@ -1,6 +1,7 @@ package gregtech.api.util; import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.List; @@ -330,7 +331,7 @@ public class GTUtil { private static NBTTagList saveConfigurationToDataStick(EntityPlayer player, List hatches) { NBTTagList list = new NBTTagList(); - for (MTEHatch tHatch : filterValidMTEs(hatches)) { + for (MTEHatch tHatch : validMTEList(hatches)) { if (!(tHatch instanceof IDataCopyable copyable)) { list.appendTag(new NBTTagCompound()); continue; diff --git a/src/main/java/gregtech/api/util/GTUtility.java b/src/main/java/gregtech/api/util/GTUtility.java index ede680ba62..442ba2a562 100644 --- a/src/main/java/gregtech/api/util/GTUtility.java +++ b/src/main/java/gregtech/api/util/GTUtility.java @@ -4028,13 +4028,21 @@ public class GTUtility { } /** - * @return Supplied collection that doesn't contain invalid MetaTileEntities + * @return Supplied collection that doesn't contain invalid MetaTileEntities. */ public static , E extends MetaTileEntity> T filterValidMTEs(T metaTileEntities) { metaTileEntities.removeIf(mte -> mte == null || !mte.isValid()); return metaTileEntities; } + /** + * @return Supplied collection that removes invalid MTEs from the collection while it is being iterated + */ + public static , E extends MetaTileEntity> ValidMTEList validMTEList( + T metaTileEntities) { + return new ValidMTEList<>(metaTileEntities); + } + public static ForgeDirection getSideFromPlayerFacing(Entity player) { if (player == null) return ForgeDirection.UNKNOWN; if (player.rotationPitch >= 65) return ForgeDirection.UP; diff --git a/src/main/java/gregtech/api/util/ValidMTEList.java b/src/main/java/gregtech/api/util/ValidMTEList.java new file mode 100644 index 0000000000..95f4cd7ad0 --- /dev/null +++ b/src/main/java/gregtech/api/util/ValidMTEList.java @@ -0,0 +1,60 @@ +package gregtech.api.util; + +import java.util.Collection; +import java.util.Iterator; +import java.util.NoSuchElementException; + +import org.jetbrains.annotations.NotNull; + +import gregtech.api.metatileentity.MetaTileEntity; + +public class ValidMTEList, T extends MetaTileEntity> implements Iterable { + + private final E collection; + + public ValidMTEList(E collection) { + this.collection = collection; + } + + private class ValidMTEIterator implements Iterator { + + Iterator iterator = collection.iterator(); + + T nextObject = null; + boolean nextObjectSet = false; + + private boolean setNextObject() { + while (iterator.hasNext()) { + final T object = iterator.next(); + if (object != null && object.isValid()) { + nextObject = object; + nextObjectSet = true; + return true; + } else { + iterator.remove(); + } + } + return false; + } + + @Override + public boolean hasNext() { + return nextObjectSet || setNextObject(); + } + + @Override + public T next() { + if (!nextObjectSet && !setNextObject()) { + throw new NoSuchElementException(); + } + nextObjectSet = false; + return nextObject; + + } + } + + @Override + public @NotNull Iterator iterator() { + return new ValidMTEIterator(); + } +} diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEAssemblyLine.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEAssemblyLine.java index 33e75b7e00..31224ce604 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEAssemblyLine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEAssemblyLine.java @@ -15,7 +15,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_ASSEMBLY_LINE import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_ASSEMBLY_LINE_GLOW; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Collections; @@ -439,7 +439,7 @@ public class MTEAssemblyLine extends MTEExtendedPowerMultiBlockBase isCorrectDataItem(stack, state))); } return rList; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEDieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEDieselEngine.java index 1465e6ba31..40b1dfd0d8 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEDieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEDieselEngine.java @@ -13,7 +13,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_DIESEL_ENGINE import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_DIESEL_ENGINE_GLOW; import static gregtech.api.enums.Textures.BlockIcons.casingTexturePages; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; @@ -337,13 +337,13 @@ public class MTEDieselEngine extends MTEEnhancedMultiBlockBase @Override public String[] getInfoData() { int mPollutionReduction = 0; - for (MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) { + for (MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) { mPollutionReduction = Math.max(tHatch.calculatePollutionReduction(100), mPollutionReduction); } long storedEnergy = 0; long maxEnergy = 0; - for (MTEHatchDynamo tHatch : filterValidMTEs(mDynamoHatches)) { + for (MTEHatchDynamo tHatch : validMTEList(mDynamoHatches)) { storedEnergy += tHatch.getBaseMetaTileEntity() .getStoredEU(); maxEnergy += tHatch.getBaseMetaTileEntity() diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEDrillerBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEDrillerBase.java index 131a1a3166..81069c8841 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEDrillerBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEDrillerBase.java @@ -19,7 +19,7 @@ import static gregtech.api.enums.Textures.BlockIcons.getCasingTextureForId; import static gregtech.api.metatileentity.BaseTileEntity.TOOLTIP_DELAY; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofFrame; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Collections; @@ -725,7 +725,7 @@ public abstract class MTEDrillerBase extends MTEEnhancedMultiBlockBase im @Override public String[] getInfoData() { int mPollutionReduction = 0; - for (final MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) + for (final MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) mPollutionReduction = Math.max(tHatch.calculatePollutionReduction(100), mPollutionReduction); long storedEnergy = 0; long maxEnergy = 0; - for (final MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) { + for (final MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) { storedEnergy += tHatch.getBaseMetaTileEntity() .getStoredEU(); maxEnergy += tHatch.getBaseMetaTileEntity() diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilCracker.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilCracker.java index 71c00cc9aa..b84640c7da 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilCracker.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEOilCracker.java @@ -10,7 +10,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_OIL_CRACKER_G import static gregtech.api.enums.Textures.BlockIcons.casingTexturePages; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofCoil; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.HashMap; @@ -320,7 +320,7 @@ public class MTEOilCracker extends MTEEnhancedMultiBlockBase impl public ArrayList getStoredFluids() { final ArrayList rList = new ArrayList<>(); Map inputsFromME = new HashMap<>(); - for (final MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (final MTEHatchInput tHatch : validMTEList(mInputHatches)) { tHatch.mRecipeMap = getRecipeMap(); if (tHatch instanceof MTEHatchInputME meHatch) { for (FluidStack tFluid : meHatch.getStoredFluids()) { @@ -343,7 +343,7 @@ public class MTEOilCracker extends MTEEnhancedMultiBlockBase impl } } } - for (final MTEHatchInput tHatch : filterValidMTEs(mMiddleInputHatches)) { + for (final MTEHatchInput tHatch : validMTEList(mMiddleInputHatches)) { tHatch.mRecipeMap = getRecipeMap(); if (tHatch instanceof MTEHatchInputME meHatch) { for (FluidStack tFluid : meHatch.getStoredFluids()) { @@ -398,7 +398,7 @@ public class MTEOilCracker extends MTEEnhancedMultiBlockBase impl @Override protected void startRecipeProcessing() { - for (MTEHatchInput hatch : filterValidMTEs(mMiddleInputHatches)) { + for (MTEHatchInput hatch : validMTEList(mMiddleInputHatches)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { aware.startRecipeProcessing(); } @@ -409,7 +409,7 @@ public class MTEOilCracker extends MTEEnhancedMultiBlockBase impl @Override protected void endRecipeProcessing() { super.endRecipeProcessing(); - for (MTEHatchInput hatch : filterValidMTEs(mMiddleInputHatches)) { + for (MTEHatchInput hatch : validMTEList(mMiddleInputHatches)) { if (hatch instanceof IRecipeProcessingAwareHatch aware) { setResultIfFailure(aware.endRecipeProcessing(this)); } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEPCBFactory.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEPCBFactory.java index e815c10a03..af674dff2f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEPCBFactory.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEPCBFactory.java @@ -16,7 +16,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_ASSEMBLY_LINE import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_ASSEMBLY_LINE_GLOW; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofFrame; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.List; @@ -758,7 +758,7 @@ public class MTEPCBFactory extends MTEExtendedPowerMultiBlockBase @Override public String[] getInfoData() { int mPollutionReduction = 0; - for (MTEHatchMuffler tHatch : filterValidMTEs(mMufflerHatches)) { + for (MTEHatchMuffler tHatch : validMTEList(mMufflerHatches)) { mPollutionReduction = Math.max(tHatch.calculatePollutionReduction(100), mPollutionReduction); } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEPlasmaForge.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEPlasmaForge.java index feaead0047..df64db0554 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEPlasmaForge.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEPlasmaForge.java @@ -18,7 +18,7 @@ import static gregtech.api.enums.Textures.BlockIcons.casingTexturePages; import static gregtech.api.metatileentity.BaseTileEntity.TOOLTIP_DELAY; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofCoil; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import static net.minecraft.util.StatCollector.translateToLocal; import java.util.ArrayList; @@ -907,7 +907,7 @@ public class MTEPlasmaForge extends MTEExtendedPowerMultiBlockBase aHatches, int aAmount) { - for (final MTEHatchCustomFluidBase tHatch : filterValidMTEs(aHatches)) { + for (final MTEHatchCustomFluidBase tHatch : validMTEList(aHatches)) { FluidStack tLiquid = tHatch.getFluid(); if (tLiquid == null || tLiquid.amount < aAmount) { continue; @@ -507,10 +507,10 @@ public abstract class GTPPMultiBlockBase> extends @Override public boolean depleteInput(FluidStack aLiquid) { if (aLiquid == null) return false; - for (MTEHatchCustomFluidBase tHatch : filterValidMTEs(mSteamInputFluids)) { + for (MTEHatchCustomFluidBase tHatch : validMTEList(mSteamInputFluids)) { FluidStack tLiquid = tHatch.getFluid(); if (tLiquid != null && tLiquid.isFluidEqual(aLiquid)) { tLiquid = tHatch.drain(aLiquid.amount, false); @@ -215,7 +215,7 @@ public abstract class MTESteamMultiBase> extends if (GTUtility.isStackInvalid(aStack)) return false; FluidStack aLiquid = GTUtility.getFluidForFilledItem(aStack, true); if (aLiquid != null) return depleteInput(aLiquid); - for (MTEHatchCustomFluidBase tHatch : filterValidMTEs(mSteamInputFluids)) { + for (MTEHatchCustomFluidBase tHatch : validMTEList(mSteamInputFluids)) { if (GTUtility.areStacksEqual( aStack, tHatch.getBaseMetaTileEntity() @@ -228,7 +228,7 @@ public abstract class MTESteamMultiBase> extends } } } - for (MteHatchSteamBusInput tHatch : filterValidMTEs(mSteamInputs)) { + for (MteHatchSteamBusInput tHatch : validMTEList(mSteamInputs)) { tHatch.mRecipeMap = getRecipeMap(); for (int i = tHatch.getBaseMetaTileEntity() .getSizeInventory() - 1; i >= 0; i--) { @@ -251,7 +251,7 @@ public abstract class MTESteamMultiBase> extends @Override public ArrayList getStoredFluids() { ArrayList rList = new ArrayList<>(); - for (MTEHatchCustomFluidBase tHatch : filterValidMTEs(mSteamInputFluids)) { + for (MTEHatchCustomFluidBase tHatch : validMTEList(mSteamInputFluids)) { if (tHatch.getFillableStack() != null) { rList.add(tHatch.getFillableStack()); } @@ -265,7 +265,7 @@ public abstract class MTESteamMultiBase> extends @Override public ArrayList getStoredInputs() { ArrayList rList = new ArrayList<>(); - for (MteHatchSteamBusInput tHatch : filterValidMTEs(mSteamInputs)) { + for (MteHatchSteamBusInput tHatch : validMTEList(mSteamInputs)) { tHatch.mRecipeMap = getRecipeMap(); for (int i = tHatch.getBaseMetaTileEntity() .getSizeInventory() - 1; i >= 0; i--) { @@ -288,7 +288,7 @@ public abstract class MTESteamMultiBase> extends while (outputSuccess && aStack.stackSize > 0) { outputSuccess = false; ItemStack single = aStack.splitStack(1); - for (MTEHatchSteamBusOutput tHatch : filterValidMTEs(mSteamOutputs)) { + for (MTEHatchSteamBusOutput tHatch : validMTEList(mSteamOutputs)) { if (!outputSuccess) { for (int i = tHatch.getSizeInventory() - 1; i >= 0 && !outputSuccess; i--) { if (tHatch.getBaseMetaTileEntity() @@ -296,7 +296,7 @@ public abstract class MTESteamMultiBase> extends } } } - for (MTEHatchOutput tHatch : filterValidMTEs(mOutputHatches)) { + for (MTEHatchOutput tHatch : validMTEList(mOutputHatches)) { if (!outputSuccess && tHatch.outputsItems()) { if (tHatch.getBaseMetaTileEntity() .addStackToSlot(1, single)) outputSuccess = true; @@ -309,7 +309,7 @@ public abstract class MTESteamMultiBase> extends @Override public ArrayList getStoredOutputs() { ArrayList rList = new ArrayList<>(); - for (MTEHatchSteamBusOutput tHatch : filterValidMTEs(mSteamOutputs)) { + for (MTEHatchSteamBusOutput tHatch : validMTEList(mSteamOutputs)) { for (int i = tHatch.getBaseMetaTileEntity() .getSizeInventory() - 1; i >= 0; i--) { rList.add( @@ -323,7 +323,7 @@ public abstract class MTESteamMultiBase> extends @Override public List getItemOutputSlots(ItemStack[] toOutput) { List ret = new ArrayList<>(); - for (final MTEHatch tBus : filterValidMTEs(mSteamOutputs)) { + for (final MTEHatch tBus : validMTEList(mSteamOutputs)) { final IInventory tBusInv = tBus.getBaseMetaTileEntity(); for (int i = 0; i < tBusInv.getSizeInventory(); i++) { ret.add(tBus.getStackInSlot(i)); @@ -334,8 +334,8 @@ public abstract class MTESteamMultiBase> extends @Override public void updateSlots() { - for (MTEHatchCustomFluidBase tHatch : filterValidMTEs(mSteamInputFluids)) tHatch.updateSlots(); - for (MteHatchSteamBusInput tHatch : filterValidMTEs(mSteamInputs)) tHatch.updateSlots(); + for (MTEHatchCustomFluidBase tHatch : validMTEList(mSteamInputFluids)) tHatch.updateSlots(); + for (MteHatchSteamBusInput tHatch : validMTEList(mSteamInputs)) tHatch.updateSlots(); } @Override diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialMultiMachine.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialMultiMachine.java index 8b0b5594e3..fae1d920a8 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialMultiMachine.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialMultiMachine.java @@ -11,7 +11,7 @@ import static gregtech.api.enums.HatchElement.Muffler; import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Arrays; @@ -471,7 +471,7 @@ public class MTEIndustrialMultiMachine extends GTPPMultiBlockBase getStoredFluids() { ArrayList rList = new ArrayList<>(); - for (MTEHatchInput tHatch : filterValidMTEs(mInputHatches)) { + for (MTEHatchInput tHatch : validMTEList(mInputHatches)) { if (tHatch instanceof MTEHatchSolidifier) { continue; } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java index 3d18a9eda0..b47ccf583f 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/MTEIndustrialVacuumFreezer.java @@ -12,7 +12,7 @@ import static gregtech.api.enums.HatchElement.Muffler; import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Objects; @@ -168,7 +168,7 @@ public class MTEIndustrialVacuumFreezer extends GTPPMultiBlockBase implements ISurvi @Override public ArrayList getStoredInputs() { ArrayList tItems = super.getStoredInputs(); - for (MTEHatchMillingBalls tHatch : filterValidMTEs(mMillingBallBuses)) { + for (MTEHatchMillingBalls tHatch : validMTEList(mMillingBallBuses)) { AutoMap aHatchContent = tHatch.getContentUsageSlots(); if (!aHatchContent.isEmpty()) { tItems.addAll(aHatchContent); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java index 63aec37990..4cedf91f0f 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/advanced/MTEAdvEBF.java @@ -13,7 +13,7 @@ import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofCoil; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Objects; @@ -189,7 +189,7 @@ public class MTEAdvEBF extends GTPPMultiBlockBase implements ISurviva @Override public void updateSlots() { - for (MTEHatchCustomFluidBase tHatch : filterValidMTEs(mPyrotheumHatches)) tHatch.updateSlots(); + for (MTEHatchCustomFluidBase tHatch : validMTEList(mPyrotheumHatches)) tHatch.updateSlots(); super.updateSlots(); } diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEElementalDuplicator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEElementalDuplicator.java index 676b6e817a..e115fe5af1 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEElementalDuplicator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTEElementalDuplicator.java @@ -11,7 +11,7 @@ import static gregtech.api.enums.HatchElement.Muffler; import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Collections; @@ -293,7 +293,7 @@ public class MTEElementalDuplicator extends GTPPMultiBlockBase getStoredInputs() { ArrayList tItems = super.getStoredInputs(); - for (MTEHatchElementalDataOrbHolder tHatch : filterValidMTEs(mReplicatorDataOrbHatches)) { + for (MTEHatchElementalDataOrbHolder tHatch : validMTEList(mReplicatorDataOrbHatches)) { tItems.add(tHatch.getOrbByCircuit()); } tItems.removeAll(Collections.singleton(null)); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTELargeRocketEngine.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTELargeRocketEngine.java index 3a5bbaa42a..f2ddecb687 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTELargeRocketEngine.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/MTELargeRocketEngine.java @@ -9,7 +9,7 @@ import static gregtech.api.enums.HatchElement.InputHatch; import static gregtech.api.enums.HatchElement.Maintenance; import static gregtech.api.enums.HatchElement.Muffler; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import static gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GTPPMultiBlockBase.GTPPHatchElement.AirIntake; import static gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GTPPMultiBlockBase.GTPPHatchElement.TTDynamo; @@ -387,7 +387,7 @@ public class MTELargeRocketEngine extends GTPPMultiBlockBase implements ISur ItemStack controllerSlot = getControllerSlot(); if (controllerSlot == null || !(controllerSlot.getItem() instanceof MetaGeneratedTool01)) return false; - for (MTEHatchInputBus inputBus : filterValidMTEs(mInputBusses)) { + for (MTEHatchInputBus inputBus : validMTEList(mInputBusses)) { ItemStack[] inventory = inputBus.getRealInventory(); for (int slot = 0; slot < inventory.length; ++slot) { if (isValidSapling(inventory[slot])) { diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/MTEChemicalPlant.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/MTEChemicalPlant.java index 5de235982f..98a14726eb 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/MTEChemicalPlant.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/chemplant/MTEChemicalPlant.java @@ -11,7 +11,7 @@ import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.filterByMTETier; import static gregtech.api.util.GTStructureUtility.ofCoil; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.Arrays; @@ -659,7 +659,7 @@ public class MTEChemicalPlant extends GTPPMultiBlockBase imple */ public ArrayList getCatalystInputs() { ArrayList tItems = new ArrayList<>(); - for (MTEHatchCatalysts tHatch : filterValidMTEs(mCatalystBuses)) { + for (MTEHatchCatalysts tHatch : validMTEList(mCatalystBuses)) { AutoMap aHatchContent = tHatch.getContentUsageSlots(); if (!aHatchContent.isEmpty()) { tItems.addAll(aHatchContent); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/MTEMegaAlloyBlastSmelter.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/MTEMegaAlloyBlastSmelter.java index 41f97910bd..8e97ae11f3 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/MTEMegaAlloyBlastSmelter.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/mega/MTEMegaAlloyBlastSmelter.java @@ -14,7 +14,7 @@ import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofCoil; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import java.util.ArrayList; import java.util.List; @@ -335,7 +335,7 @@ public class MTEMegaAlloyBlastSmelter extends MTEExtendedPowerMultiBlockBase= 10000) { if (PollutionUtils.addPollution(this.getBaseMetaTileEntity(), 10000)) { mPollution -= 10000; @@ -770,7 +770,7 @@ public abstract class MTELargerTurbineBase extends GTPPMultiBlockBase 0) { for (ItemStack toOutput : bucket.tryRemoveSeed(helper.getMaxParallel(), false)) { - for (MTEHatchOutputBus tHatch : filterValidMTEs(mOutputBusses)) { + for (MTEHatchOutputBus tHatch : validMTEList(mOutputBusses)) { if (tHatch.storeAll(toOutput)) break; } } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java index 87e969e606..25dd5f6ec6 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java @@ -6,7 +6,7 @@ import static gregtech.api.enums.GTValues.V; import static gregtech.api.enums.HatchElement.Energy; import static gregtech.api.enums.HatchElement.Maintenance; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import static net.minecraft.util.StatCollector.translateToLocal; import java.util.ArrayList; @@ -174,7 +174,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon @Override public boolean checkMachine_EM(IGregTechTileEntity iGregTechTileEntity, ItemStack itemStack) { - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { rack.getBaseMetaTileEntity() .setActive(false); } @@ -203,7 +203,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon return false; } eCertainMode = (byte) Math.min(totalLen / 3, 5); - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { rack.getBaseMetaTileEntity() .setActive(iGregTechTileEntity.isActive()); } @@ -249,7 +249,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon && !aBaseMetaTileEntity.isActive() && aTick % 20 == CommonValues.MULTI_CHECK_AT) { double maxTemp = 0; - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { if (rack.heat > maxTemp) { maxTemp = rack.heat; } @@ -280,7 +280,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon short thingsActive = 0; int rackComputation; - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { if (rack.heat > maxTemp) { maxTemp = rack.heat; } @@ -447,7 +447,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon @Override public void onRemoval() { super.onRemoval(); - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { rack.getBaseMetaTileEntity() .setActive(false); } @@ -470,7 +470,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon public void stopMachine(@Nonnull ShutDownReason reason) { super.stopMachine(reason); eAvailableData = 0; - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { rack.getBaseMetaTileEntity() .setActive(false); } @@ -479,7 +479,7 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon @Override protected void afterRecipeCheckFailed() { super.afterRecipeCheckFailed(); - for (MTEHatchRack rack : filterValidMTEs(eRacks)) { + for (MTEHatchRack rack : validMTEList(eRacks)) { rack.getBaseMetaTileEntity() .setActive(false); } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEResearchStation.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEResearchStation.java index 6f29160d48..153a5a52ee 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEResearchStation.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEResearchStation.java @@ -8,7 +8,7 @@ import static gregtech.api.enums.HatchElement.Energy; import static gregtech.api.enums.HatchElement.Maintenance; import static gregtech.api.recipe.RecipeMaps.scannerFakeRecipes; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import static mcp.mobius.waila.api.SpecialChars.GREEN; import static mcp.mobius.waila.api.SpecialChars.RED; import static mcp.mobius.waila.api.SpecialChars.RESET; @@ -179,7 +179,7 @@ public class MTEResearchStation extends TTMultiblockBase implements ISurvivalCon @Override public boolean checkMachine_EM(IGregTechTileEntity iGregTechTileEntity, ItemStack itemStack) { - for (MTEHatchObjectHolder rack : filterValidMTEs(eHolders)) { + for (MTEHatchObjectHolder rack : validMTEList(eHolders)) { rack.getBaseMetaTileEntity() .setActive(false); } @@ -189,7 +189,7 @@ public class MTEResearchStation extends TTMultiblockBase implements ISurvivalCon return false; } - for (MTEHatchObjectHolder rack : filterValidMTEs(eHolders)) { + for (MTEHatchObjectHolder rack : validMTEList(eHolders)) { rack.getBaseMetaTileEntity() .setActive(iGregTechTileEntity.isActive()); } @@ -322,13 +322,13 @@ public class MTEResearchStation extends TTMultiblockBase implements ISurvivalCon public String[] getInfoData() { long storedEnergy = 0; long maxEnergy = 0; - for (MTEHatchEnergy tHatch : filterValidMTEs(mEnergyHatches)) { + for (MTEHatchEnergy tHatch : validMTEList(mEnergyHatches)) { storedEnergy += tHatch.getBaseMetaTileEntity() .getStoredEU(); maxEnergy += tHatch.getBaseMetaTileEntity() .getEUCapacity(); } - for (MTEHatchEnergyMulti tHatch : filterValidMTEs(eEnergyMulti)) { + for (MTEHatchEnergyMulti tHatch : validMTEList(eEnergyMulti)) { storedEnergy += tHatch.getBaseMetaTileEntity() .getStoredEU(); maxEnergy += tHatch.getBaseMetaTileEntity() diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTETeslaTower.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTETeslaTower.java index 73a8a8925c..fc160411e4 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTETeslaTower.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTETeslaTower.java @@ -11,7 +11,7 @@ import static gregtech.api.enums.HatchElement.Maintenance; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import static gregtech.api.util.GTStructureUtility.ofFrame; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import static java.lang.Math.min; import static net.minecraft.util.StatCollector.translateToLocal; @@ -457,7 +457,7 @@ public class MTETeslaTower extends TTMultiblockBase implements ISurvivalConstruc @Override public boolean checkMachine_EM(IGregTechTileEntity iGregTechTileEntity, ItemStack itemStack) { - for (MTEHatchCapacitor cap : filterValidMTEs(eCapacitorHatches)) { + for (MTEHatchCapacitor cap : validMTEList(eCapacitorHatches)) { cap.getBaseMetaTileEntity() .setActive(false); } @@ -466,7 +466,7 @@ public class MTETeslaTower extends TTMultiblockBase implements ISurvivalConstruc mTier = -1; if (structureCheck_EM("main", 3, 16, 0)) { - for (MTEHatchCapacitor cap : filterValidMTEs(eCapacitorHatches)) { + for (MTEHatchCapacitor cap : validMTEList(eCapacitorHatches)) { cap.getBaseMetaTileEntity() .setActive(iGregTechTileEntity.isActive()); } @@ -522,7 +522,7 @@ public class MTETeslaTower extends TTMultiblockBase implements ISurvivalConstruc mMaxProgresstime = 20; vTier = -1; long[] capacitorData; - for (MTEHatchCapacitor cap : filterValidMTEs(eCapacitorHatches)) { + for (MTEHatchCapacitor cap : validMTEList(eCapacitorHatches)) { if (cap.getCapacitors()[0] > vTier) { vTier = (int) cap.getCapacitors()[0]; } @@ -540,7 +540,7 @@ public class MTETeslaTower extends TTMultiblockBase implements ISurvivalConstruc } outputVoltageMax = V[vTier + 1]; - for (MTEHatchCapacitor cap : filterValidMTEs(eCapacitorHatches)) { + for (MTEHatchCapacitor cap : validMTEList(eCapacitorHatches)) { cap.getBaseMetaTileEntity() .setActive(true); capacitorData = cap.getCapacitors(); @@ -620,7 +620,7 @@ public class MTETeslaTower extends TTMultiblockBase implements ISurvivalConstruc super.onRemoval(); if (!getBaseMetaTileEntity().isClientSide()) { TeslaUtil.teslaSimpleNodeSetRemove(this); - for (MTEHatchCapacitor cap : filterValidMTEs(eCapacitorHatches)) { + for (MTEHatchCapacitor cap : validMTEList(eCapacitorHatches)) { cap.getBaseMetaTileEntity() .setActive(false); } @@ -723,7 +723,7 @@ public class MTETeslaTower extends TTMultiblockBase implements ISurvivalConstruc @Override public void stopMachine(@Nonnull ShutDownReason reason) { super.stopMachine(reason); - for (MTEHatchCapacitor cap : filterValidMTEs(eCapacitorHatches)) { + for (MTEHatchCapacitor cap : validMTEList(eCapacitorHatches)) { cap.getBaseMetaTileEntity() .setActive(false); } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java b/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java index dab072e0a9..140fb80ae2 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java @@ -9,7 +9,7 @@ import static gregtech.api.enums.HatchElement.Muffler; import static gregtech.api.enums.HatchElement.OutputBus; import static gregtech.api.enums.HatchElement.OutputHatch; import static gregtech.api.metatileentity.BaseTileEntity.TOOLTIP_DELAY; -import static gregtech.api.util.GTUtility.filterValidMTEs; +import static gregtech.api.util.GTUtility.validMTEList; import static java.lang.Math.min; import static tectech.thing.casing.BlockGTCasingsTT.texturePage; @@ -401,13 +401,13 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase 0; if (busy) { // write from buffer to hatches only - for (MTEHatchParam hatch : filterValidMTEs(eParamHatches)) { + for (MTEHatchParam hatch : validMTEList(eParamHatches)) { if (hatch.param < 0) { continue; } @@ -995,7 +995,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase hatch_data : filterValidMTEs(eOutputData)) { + for (MTEHatchDataConnector hatch_data : validMTEList(eOutputData)) { hatch_data.id = -1; } - for (MTEHatchDataConnector hatch_data : filterValidMTEs(eInputData)) { + for (MTEHatchDataConnector hatch_data : validMTEList(eInputData)) { hatch_data.id = -1; } - for (MTEHatchUncertainty hatch : filterValidMTEs(eUncertainHatches)) { + for (MTEHatchUncertainty hatch : validMTEList(eUncertainHatches)) { hatch.getBaseMetaTileEntity() .setActive(false); } - for (MTEHatchParam hatch : filterValidMTEs(eParamHatches)) { + for (MTEHatchParam hatch : validMTEList(eParamHatches)) { hatch.getBaseMetaTileEntity() .setActive(false); } @@ -1270,19 +1270,19 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase hatch_data : filterValidMTEs(eOutputData)) { + for (MTEHatchDataConnector hatch_data : validMTEList(eOutputData)) { hatch_data.id = id++; } id = 1; - for (MTEHatchDataConnector hatch_data : filterValidMTEs(eInputData)) { + for (MTEHatchDataConnector hatch_data : validMTEList(eInputData)) { hatch_data.id = id++; } - for (MTEHatchUncertainty hatch : filterValidMTEs(eUncertainHatches)) { + for (MTEHatchUncertainty hatch : validMTEList(eUncertainHatches)) { hatch.getBaseMetaTileEntity() .setActive(true); } - for (MTEHatchParam hatch : filterValidMTEs(eParamHatches)) { + for (MTEHatchParam hatch : validMTEList(eParamHatches)) { hatch.getBaseMetaTileEntity() .setActive(true); } @@ -1296,7 +1296,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase getMinimumStoredEU()) { break; } @@ -1426,7 +1426,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase getMinimumStoredEU()) { break; } @@ -1440,7 +1440,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase getMinimumStoredEU()) { break; } @@ -1450,7 +1450,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase getMinimumStoredEU()) { break; } @@ -1558,7 +1558,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase