diff options
-rw-r--r-- | src/main/java/bartworks/common/tileentities/multis/MTEBioVat.java | 10 | ||||
-rw-r--r-- | src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java | 45 |
2 files changed, 33 insertions, 22 deletions
diff --git a/src/main/java/bartworks/common/tileentities/multis/MTEBioVat.java b/src/main/java/bartworks/common/tileentities/multis/MTEBioVat.java index 7859cc587d..b3d4347616 100644 --- a/src/main/java/bartworks/common/tileentities/multis/MTEBioVat.java +++ b/src/main/java/bartworks/common/tileentities/multis/MTEBioVat.java @@ -50,7 +50,9 @@ import net.minecraftforge.fluids.FluidStack; import org.jetbrains.annotations.NotNull; import com.gtnewhorizon.structurelib.alignment.IAlignmentLimits; +import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; +import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; import bartworks.API.SideReference; @@ -84,7 +86,7 @@ import gregtech.api.util.GTUtility; import gregtech.api.util.MultiblockTooltipBuilder; import gregtech.api.util.ParallelHelper; -public class MTEBioVat extends MTEEnhancedMultiBlockBase<MTEBioVat> { +public class MTEBioVat extends MTEEnhancedMultiBlockBase<MTEBioVat> implements ISurvivalConstructable { public static final HashMap<Coords, Integer> staticColorMap = new HashMap<>(); @@ -784,6 +786,12 @@ public class MTEBioVat extends MTEEnhancedMultiBlockBase<MTEBioVat> { } @Override + public int survivalConstruct(ItemStack stackSize, int elementBudget, ISurvivalBuildEnvironment env) { + if (mMachine) return -1; + return survivialBuildPiece(STRUCTURE_PIECE_MAIN, stackSize, 2, 3, 0, elementBudget, env, false, true); + } + + @Override public String[] getInfoData() { final String[] baseInfoData = super.getInfoData(); final String[] infoData = new String[baseInfoData.length + 2]; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java b/src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java index 5e750d5465..5597023871 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java @@ -248,7 +248,7 @@ public class MTEMultiSolidifier extends MTEExtendedPowerMultiBlockBase<MTEMultiS int built = survivialBuildPiece(STRUCTURE_PIECE_MAIN, stackSize, 3, 4, 0, elementBudget, env, false, true); if (built >= 0) return built; int tTotalWidth = Math.min(stackSize.stackSize + 1, 6); - for (int i = 1; i < tTotalWidth - 1; i++) { + for (int i = 1; i < tTotalWidth; i++) { mWidth = i; nWidth = i; built = survivialBuildPiece(MS_LEFT_MID, stackSize, 3 + 2 * i, 4, 0, elementBudget, env, false, true); @@ -256,26 +256,29 @@ public class MTEMultiSolidifier extends MTEExtendedPowerMultiBlockBase<MTEMultiS built = survivialBuildPiece(MS_RIGHT_MID, stackSize, -2 - 2 * i, 4, 0, elementBudget, env, false, true); if (built >= 0) return built; } - if (mWidth == tTotalWidth - 2) return survivialBuildPiece( - MS_END, - stackSize, - (2 + tTotalWidth) * 2 - 4, - 4, - 0, - elementBudget, - env, - false, - true); - else return survivialBuildPiece( - MS_END, - stackSize, - (-2 - tTotalWidth) * 2 + 4, - 4, - 0, - elementBudget, - env, - false, - true); + if (mWidth == tTotalWidth - 1) { + built += survivialBuildPiece( + MS_END, + stackSize, + (3 + tTotalWidth) * 2 - 4, + 4, + 0, + elementBudget, + env, + false, + true); + built += survivialBuildPiece( + MS_END, + stackSize, + (-3 - tTotalWidth) * 2 + 4, + 4, + 0, + elementBudget, + env, + false, + true); + } + return built; } @Override |