diff options
author | Abdiel Kavash <19243993+AbdielKavash@users.noreply.github.com> | 2024-11-07 17:11:59 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-07 23:11:59 +0000 |
commit | 1a168f9f00cfc3827c78c9ad91c21130509875d5 (patch) | |
tree | 9038b02fd609b69c179f593230af3bbdf6ccb9b3 /src/main/java/gregtech/common/tileentities | |
parent | d42811f069353e51938ca6481da3f93d61aef652 (diff) | |
download | GT5-Unofficial-1a168f9f00cfc3827c78c9ad91c21130509875d5.tar.gz GT5-Unofficial-1a168f9f00cfc3827c78c9ad91c21130509875d5.tar.bz2 GT5-Unofficial-1a168f9f00cfc3827c78c9ad91c21130509875d5.zip |
Add Tool Casting support to the Fluid Shaper multiblock. (#3454)
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
-rw-r--r-- | src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java | 39 |
1 files changed, 38 insertions, 1 deletions
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 256e2885bb..9958f925a7 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/MTEMultiSolidifier.java @@ -16,6 +16,8 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_MULTI_CANNER_ import static gregtech.api.util.GTStructureUtility.buildHatchAdder; import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; import java.util.List; import net.minecraft.entity.player.EntityPlayerMP; @@ -36,6 +38,7 @@ import com.gtnewhorizon.structurelib.structure.ISurvivalBuildEnvironment; import com.gtnewhorizon.structurelib.structure.StructureDefinition; import bartworks.API.BorosilicateGlass; +import ggfab.api.GGFabRecipeMaps; import gregtech.api.GregTechAPI; import gregtech.api.enums.Textures; import gregtech.api.enums.VoltageIndex; @@ -182,7 +185,12 @@ public class MTEMultiSolidifier extends MTEExtendedPowerMultiBlockBase<MTEMultiS @Override protected MultiblockTooltipBuilder createTooltip() { MultiblockTooltipBuilder tt = new MultiblockTooltipBuilder(); - tt.addMachineType("Fluid Solidifier") + tt.addMachineType("Fluid Solidifier, Tool Casting Machine") + .addInfo( + "Can use " + EnumChatFormatting.YELLOW + + "Solidifier Hatches" + + EnumChatFormatting.GRAY + + " to hold different molds") .addInfo("Speeds up to a maximum of 200% faster than singleblock machines while running") .addInfo("Decays at double the Rate that it Speeds up at") .addInfo("Only uses 80% of the EU/t normally required") @@ -275,6 +283,30 @@ public class MTEMultiSolidifier extends MTEExtendedPowerMultiBlockBase<MTEMultiS protected ProcessingLogic createProcessingLogic() { return new ProcessingLogic() { + RecipeMap<?> currentRecipeMap = RecipeMaps.fluidSolidifierRecipes; + + // Override is needed so that switching recipe maps does not stop recipe locking. + @Override + protected RecipeMap<?> preProcess() { + lastRecipeMap = currentRecipeMap; + + if (maxParallelSupplier != null) { + maxParallel = maxParallelSupplier.get(); + } + return currentRecipeMap; + } + + @NotNull + @Override + public CheckRecipeResult process() { + currentRecipeMap = RecipeMaps.fluidSolidifierRecipes; + CheckRecipeResult result = super.process(); + if (result.wasSuccessful()) return result; + + currentRecipeMap = GGFabRecipeMaps.toolCastRecipes; + return super.process(); + } + @NotNull @Override protected CheckRecipeResult validateRecipe(@NotNull GTRecipe recipe) { @@ -311,6 +343,11 @@ public class MTEMultiSolidifier extends MTEExtendedPowerMultiBlockBase<MTEMultiS } @Override + public @NotNull Collection<RecipeMap<?>> getAvailableRecipeMaps() { + return Arrays.asList(RecipeMaps.fluidSolidifierRecipes, GGFabRecipeMaps.toolCastRecipes); + } + + @Override public RecipeMap<?> getRecipeMap() { return RecipeMaps.fluidSolidifierRecipes; } |