From cd59535df84a2fa6ebaa8a4a839f6d21f7016b31 Mon Sep 17 00:00:00 2001 From: miozune Date: Mon, 19 Dec 2022 16:15:46 +0900 Subject: Fix NPE with multiblock explosion --- .../base/GT_MetaTileEntity_MultiblockBase_EM.java | 73 +++++++--------------- 1 file changed, 23 insertions(+), 50 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java index c5f25f6aa8..d4990878ee 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java @@ -20,6 +20,7 @@ import com.github.technus.tectech.thing.gui.TecTechUITextures; import com.github.technus.tectech.thing.metaTileEntity.hatch.*; import com.github.technus.tectech.thing.metaTileEntity.multi.base.render.TT_RenderedExtendedFacingTexture; import com.github.technus.tectech.util.TT_Utility; +import com.google.common.collect.Iterables; import com.gtnewhorizon.structurelib.StructureLibAPI; import com.gtnewhorizon.structurelib.alignment.IAlignment; import com.gtnewhorizon.structurelib.alignment.IAlignmentLimits; @@ -2190,56 +2191,28 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt extraExplosions_EM(); GT_Pollution.addPollution(getBaseMetaTileEntity(), 600000); mInventory[1] = null; - for (MetaTileEntity tTileEntity : mInputBusses) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : mOutputBusses) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : mInputHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : mOutputHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : mDynamoHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : mMufflerHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : mEnergyHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : mMaintenanceHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : eParamHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : eInputHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : eOutputHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : eMufflerHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : eEnergyMulti) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : eUncertainHatches) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : eDynamoMulti) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); - } - for (MetaTileEntity tTileEntity : eInputData) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - } - for (MetaTileEntity tTileEntity : eOutputData) { - tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); + Iterable allHatches = Iterables.concat( + mInputBusses, + mOutputBusses, + mInputHatches, + mOutputHatches, + mDynamoHatches, + mMufflerHatches, + mEnergyHatches, + mMaintenanceHatches, + eParamHatches, + eInputHatches, + eOutputHatches, + eMufflerHatches, + eEnergyMulti, + eUncertainHatches, + eDynamoMulti, + eInputData, + eOutputData); + for (MetaTileEntity tTileEntity : allHatches) { + if (tTileEntity != null && tTileEntity.getBaseMetaTileEntity() != null) { + tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); + } } getBaseMetaTileEntity().doExplosion(V[15]); } -- cgit From fe002e6b3934625a808f262d5c819b20b8ba2ad0 Mon Sep 17 00:00:00 2001 From: miozune Date: Tue, 20 Dec 2022 15:29:31 +0900 Subject: Remove inconsistent lubricant recipe in uhv part 2 --- .../tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java index 23fb49153b..497870ae92 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java @@ -4956,7 +4956,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.foil, Materials.ElectrumFlux, 64L), GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.Bedrockium, 7L) }, - new FluidStack[] {fluid_0, fluid_1, fluid_2}, + new FluidStack[] {fluid_0, fluid_1}, ItemList.Sensor_UHV.get(1L), crafting_time_in_ticks, crafting_eu_per_tick); @@ -4987,7 +4987,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Neutronium, 64L), GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.Bedrockium, 8L) }, - new FluidStack[] {fluid_0, fluid_1, fluid_2}, + new FluidStack[] {fluid_0, fluid_1}, ItemList.Field_Generator_UHV.get(1L), crafting_time_in_ticks, crafting_eu_per_tick); -- cgit From 95e802c6ee4d913750ae6652a847fa14a6e5def1 Mon Sep 17 00:00:00 2001 From: miozune Date: Tue, 20 Dec 2022 22:01:03 +0900 Subject: Fix inconsistent amount of Gravi Stars for Field Generators --- .../tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java index 497870ae92..a42fddbfd6 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java @@ -5448,7 +5448,7 @@ public class DreamCraftRecipeLoader { new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TranscendentMetal, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.TranscendentMetal, 6L), - ItemList.Gravistar.get(32), + ItemList.Gravistar.get(16L), ItemList.Emitter_UIV.get(4L), new Object[] {OrePrefixes.circuit.get(Materials.Piko), 4}, GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Infinity, 64L), @@ -5691,7 +5691,7 @@ public class DreamCraftRecipeLoader { new Object[] { GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.SpaceTime, 1L), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.SpaceTime, 6L), - ItemList.Gravistar.get(8L), + ItemList.Gravistar.get(32L), ItemList.Emitter_UMV.get(4L), new Object[] {OrePrefixes.circuit.get(Materials.Quantum), 4}, GT_ModHandler.getModItem("miscutils", "itemFineWireHypogen", 64, 0), -- cgit