diff --git a/src/main/java/com/colen/postea/API/ChunkFixerUtility.java b/src/main/java/com/colen/postea/API/ChunkFixerUtility.java index 743b823..f371b14 100644 --- a/src/main/java/com/colen/postea/API/ChunkFixerUtility.java +++ b/src/main/java/com/colen/postea/API/ChunkFixerUtility.java @@ -90,23 +90,21 @@ public class ChunkFixerUtility { } private static List removeTileEntities(NBTTagList tileEntities) { - List conversionInfo = new ArrayList<>(); - String targetTileEntityId = "GT_TileEntity_Ores"; List indicesToRemove = new ArrayList<>(); // List to store indices of tileEntities to be removed - // Loop through each tile entity to check for matches for (int i = 0; i < tileEntities.tagCount(); i++) { NBTTagCompound tileEntity = tileEntities.getCompoundTagAt(i); String tileEntityId = tileEntity.getString("id"); - // If the tile entity matches the target - if (tileEntityId.equals(targetTileEntityId)) { + // Check if we have a transformer registered for this tile entity ID + Function transformationFunction = TileEntityReplacementManager.getTileEntityToNormalBlockTransformerFunction(tileEntityId); + + if (transformationFunction != null) { int x = tileEntity.getInteger("x"); int y = tileEntity.getInteger("y"); int z = tileEntity.getInteger("z"); - Function transformationFunction = TileEntityReplacementManager.getTileEntityToNormalBlockTransformerFunction(tileEntityId); BlockInfo blockInfo = transformationFunction.apply(tileEntity); conversionInfo.add(new ConversionInfo(x, y, z, blockInfo)); @@ -114,7 +112,7 @@ public class ChunkFixerUtility { } } - // Now remove the tile entities in reverse order to avoid index shifts + // Remove the tile entities in reverse order to avoid index shifts Collections.reverse(indicesToRemove); for (int index : indicesToRemove) { tileEntities.removeTag(index); diff --git a/src/main/java/com/colen/postea/Postea.java b/src/main/java/com/colen/postea/Postea.java index 1a73c01..ed520bf 100644 --- a/src/main/java/com/colen/postea/Postea.java +++ b/src/main/java/com/colen/postea/Postea.java @@ -22,13 +22,13 @@ public class Postea { // BlockReplacementManager.addBlockReplacement(GregTech_API.sBlockOres1, 1018, Blocks.end_stone, 0); // Define the transformation function - Function myTransformer = (tag) -> { +/* Function myTransformer = (tag) -> { if (tag.getInteger("m") == 86) { tag.setInteger("m", 323); return tag; } return tag; - }; + };*/ //TileEntityReplacementManager.tileEntityFixer("GT_TileEntity_Ores", myTransformer); TileEntityReplacementManager.tileEntityToNormalBlockTransformer("GT_TileEntity_Ores", (tag) -> { @@ -38,6 +38,14 @@ public class Postea { return new ChunkFixerUtility.BlockInfo(Blocks.wool, 1); }); + + TileEntityReplacementManager.tileEntityToNormalBlockTransformer("Furnace", (tag) -> { + return new ChunkFixerUtility.BlockInfo(Blocks.planks, 3); + }); + + TileEntityReplacementManager.tileEntityToNormalBlockTransformer("Chest", (tag) -> { + return new ChunkFixerUtility.BlockInfo(Blocks.coal_block, 0); + }); } @Mod.EventHandler