From d00a994aafb5098803161671d3f2dd6b0de94ade Mon Sep 17 00:00:00 2001 From: Sampsa <69092953+S4mpsa@users.noreply.github.com> Date: Wed, 23 Aug 2023 12:16:09 +0300 Subject: Buff Naquadah Fuels in UIV+ tiers (#198) * Add a way to enrich tiberium dust * Add alternate recipe for MK3 Fuel * Bump deps * Add new tier of catalyst and coolant to Naquadah Reactor * Add T4 Field Restriction Coil * Fix structure check on T4 coils * Classic spotless --- .../blocks/tileEntity/FuelRefineFactory.java | 19 +++++----- .../blocks/tileEntity/MultiNqGenerator.java | 41 ++++++++++++---------- 2 files changed, 34 insertions(+), 26 deletions(-) (limited to 'src/main/java/goodgenerator/blocks') diff --git a/src/main/java/goodgenerator/blocks/tileEntity/FuelRefineFactory.java b/src/main/java/goodgenerator/blocks/tileEntity/FuelRefineFactory.java index 55961d0737..1989531a54 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/FuelRefineFactory.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/FuelRefineFactory.java @@ -47,8 +47,9 @@ public class FuelRefineFactory extends GT_MetaTileEntity_TooltipMultiBlockBase_E private IStructureDefinition multiDefinition = null; private int Tier = -1; - private int[] cnt = new int[] { 0, 0, 0 }; - private static final Block[] coils = new Block[] { Loaders.FRF_Coil_1, Loaders.FRF_Coil_2, Loaders.FRF_Coil_3 }; + private int[] cnt = new int[] { 0, 0, 0, 0 }; + private static final Block[] coils = new Block[] { Loaders.FRF_Coil_1, Loaders.FRF_Coil_2, Loaders.FRF_Coil_3, + Loaders.FRF_Coil_4 }; public FuelRefineFactory(String name) { super(name); @@ -109,7 +110,8 @@ public class FuelRefineFactory extends GT_MetaTileEntity_TooltipMultiBlockBase_E ofChain( onElementPass(x -> ++x.cnt[0], ofFieldCoil(0)), onElementPass(x -> ++x.cnt[1], ofFieldCoil(1)), - onElementPass(x -> ++x.cnt[2], ofFieldCoil(2)))) + onElementPass(x -> ++x.cnt[2], ofFieldCoil(2)), + onElementPass(x -> ++x.cnt[3], ofFieldCoil(3)))) .build(); } return multiDefinition; @@ -132,7 +134,7 @@ public class FuelRefineFactory extends GT_MetaTileEntity_TooltipMultiBlockBase_E private int getIndex(ItemStack trigger) { int s = trigger.stackSize; - if (s > 3 || s <= 0) s = 3; + if (s > 4 || s <= 0) s = 4; return s - 1; } @@ -147,9 +149,9 @@ public class FuelRefineFactory extends GT_MetaTileEntity_TooltipMultiBlockBase_E protected GT_Multiblock_Tooltip_Builder createTooltip() { final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); tt.addMachineType("Naquadah Fuel Refinery").addInfo("Controller block for the Naquadah Fuel Refinery") - .addInfo("But at what cost?").addInfo("Produce the endgame naquadah fuel.") - .addInfo("Need field restriction coil to control the fatal radiation.") - .addInfo("Use higher tier coil to unlock more fuel and reduce the process time.") + .addInfo("But at what cost?").addInfo("Produces naquadah fuels.") + .addInfo("Needs field restriction coils to control the fatal radiation.") + .addInfo("Use higher tier coils to unlock more fuel types and reduce the processing times.") .addInfo("The structure is too complex!").addInfo(BLUE_PRINT_INFO).addSeparator() .beginStructureBlock(3, 15, 15, false).addInputHatch("The casings adjoin the field restriction glass.") .addInputBus("The casings adjoin the field restriction glass.") @@ -180,11 +182,12 @@ public class FuelRefineFactory extends GT_MetaTileEntity_TooltipMultiBlockBase_E cnt[0] = 0; cnt[1] = 0; cnt[2] = 0; + cnt[3] = 0; return structureCheck_EM(mName, 7, 12, 1) && getTier() != -1; } public int getTier() { - for (int i = 0; i < 3; i++) { + for (int i = 0; i < 4; i++) { if (cnt[i] == 32) { Tier = i + 1; return i; diff --git a/src/main/java/goodgenerator/blocks/tileEntity/MultiNqGenerator.java b/src/main/java/goodgenerator/blocks/tileEntity/MultiNqGenerator.java index 7e86888ea6..4623615dde 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/MultiNqGenerator.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/MultiNqGenerator.java @@ -36,6 +36,7 @@ import goodgenerator.util.MyRecipeAdder; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_HatchElement; import gregtech.api.enums.Materials; +import gregtech.api.enums.MaterialsUEVplus; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -66,14 +67,16 @@ public class MultiNqGenerator extends GT_MetaTileEntity_TooltipMultiBlockBase_EM static { excitedLiquid = Arrays.asList( - new Pair<>(MyMaterial.atomicSeparationCatalyst.getMolten(20), ExcitedLiquidCoe[0]), - new Pair<>(Materials.Naquadah.getMolten(20L), ExcitedLiquidCoe[1]), - new Pair<>(Materials.Uranium235.getMolten(180L), ExcitedLiquidCoe[2]), - new Pair<>(Materials.Caesium.getMolten(180L), ExcitedLiquidCoe[3])); + new Pair<>(MaterialsUEVplus.Space.getMolten(20L), ExcitedLiquidCoe[0]), + new Pair<>(MyMaterial.atomicSeparationCatalyst.getMolten(20), ExcitedLiquidCoe[1]), + new Pair<>(Materials.Naquadah.getMolten(20L), ExcitedLiquidCoe[2]), + new Pair<>(Materials.Uranium235.getMolten(180L), ExcitedLiquidCoe[3]), + new Pair<>(Materials.Caesium.getMolten(180L), ExcitedLiquidCoe[4])); coolant = Arrays.asList( - new Pair<>(FluidRegistry.getFluidStack("cryotheum", 1000), CoolantEfficiency[0]), - new Pair<>(Materials.SuperCoolant.getFluid(1000L), CoolantEfficiency[1]), - new Pair<>(FluidRegistry.getFluidStack("ic2coolant", 1000), CoolantEfficiency[2])); + new Pair<>(MaterialsUEVplus.Time.getMolten(20L), CoolantEfficiency[0]), + new Pair<>(FluidRegistry.getFluidStack("cryotheum", 1000), CoolantEfficiency[1]), + new Pair<>(Materials.SuperCoolant.getFluid(1000L), CoolantEfficiency[2]), + new Pair<>(FluidRegistry.getFluidStack("ic2coolant", 1000), CoolantEfficiency[3])); } @Override @@ -368,32 +371,34 @@ public class MultiNqGenerator extends GT_MetaTileEntity_TooltipMultiBlockBase_EM protected GT_Multiblock_Tooltip_Builder createTooltip() { final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); tt.addMachineType("Naquadah Reactor").addInfo("Controller block for the Naquadah Reactor") - .addInfo("Environmental Friendly!").addInfo("Generate power with the High-energy liquid.") + .addInfo("Environmentally Friendly!").addInfo("Generate power from high-energy liquids.") .addInfo( String.format( - "Consume liquid air %d L/s to keep running, otherwise" + EnumChatFormatting.YELLOW + "Consumes &d L/s Liquid Air to keep running, otherwise" + EnumChatFormatting.YELLOW + " it will void your fuel" + EnumChatFormatting.GRAY + ".", LiquidAirConsumptionPerSecond)) .addInfo("Input liquid nuclear fuel or liquid naquadah fuel.") .addInfo( - "The reactor will explode when there are more than" + EnumChatFormatting.RED + "The reactor will explode when there is more than" + EnumChatFormatting.RED + " ONE" + EnumChatFormatting.GRAY - + " types of fuel in the hatch!") - .addInfo("Consume coolant 1000 L/s to increase the efficiency:") + + " type of fuel in hatches!") + .addInfo("Can consume 1000L/s of coolant to increase efficiency:") .addInfo( String.format( - "IC2 Coolant %d%%, Super Coolant %d%%, Cryotheum %d%%", + "IC2 Coolant %d%%, Super Coolant %d%%, Cryotheum %d%%, Tachyon Rich Temporal Fluid %d%%", + CoolantEfficiency[3], CoolantEfficiency[2], CoolantEfficiency[1], CoolantEfficiency[0])) - .addInfo("Consume excited liquid to increase the output power:") - .addInfo(String.format("molten caesium | %dx power | 180 L/s ", ExcitedLiquidCoe[3])) - .addInfo(String.format("molten uranium-235 | %dx power | 180 L/s", ExcitedLiquidCoe[2])) - .addInfo(String.format("molten naquadah | %dx power | 20 L/s", ExcitedLiquidCoe[1])) - .addInfo(String.format("molten Atomic Separation Catalyst | %dx power | 20 L/s", ExcitedLiquidCoe[0])) + .addInfo("Can consume excited liquid to increase the output power and fuel usage:") + .addInfo(String.format("Molten Caesium | %dx power | 180 L/s ", ExcitedLiquidCoe[4])) + .addInfo(String.format("Molten Uranium-235 | %dx power | 180 L/s", ExcitedLiquidCoe[3])) + .addInfo(String.format("Molten Naquadah | %dx power | 20 L/s", ExcitedLiquidCoe[2])) + .addInfo(String.format("Molten Atomic Separation Catalyst | %dx power | 20 L/s", ExcitedLiquidCoe[1])) + .addInfo(String.format("Spatially Enlarged Fluid | %dx power | 20 L/s", ExcitedLiquidCoe[0])) .addInfo("The structure is too complex!").addInfo(BLUE_PRINT_INFO).addSeparator() .beginStructureBlock(7, 8, 7, true).addController("Front bottom") .addDynamoHatch("Any bottom layer casing, only accept ONE!").addInputHatch("Any bottom layer casing") -- cgit