From 88c85d87946a2a0664afe0115dc6762238fa3670 Mon Sep 17 00:00:00 2001 From: Martin Robertz Date: Thu, 1 Sep 2022 07:06:50 +0200 Subject: Sodium potassium (#1322) * Add a new way get Sodium Potassium Add Fluid Sodium to gt * spotless remove old NAk and Helium cell recipes * derp * add liquid sodium texture (cherry picked from commit bd050330f91e0306e156f6a130783e867661338a) * add liquid sodium cells (cherry picked from commit 45f988cf3bbca43abf3f07a0a8e7ba891b8727a3) * move recipe to core mod (cherry picked from commit 7db15cd792136abac6fb88c9a7fa9d05f1f0619e) * add a heater recipe without a input fluid * Revert "move recipe to core mod" This reverts commit 9d5ff875a00e59c6edb52336b7d9c20889d9bd9b. * use fluid heater recipe without input fluid * Spotless apply for branch Sodium-Potassium for #1322 (#1328) * Two slots wiremill (#1324) * add a circuit slot to wiremil * add circuits to wire recipes * add 2 input slots to Wiremil * exchange circuit and material slot * add 2x-16x wires to wiremil * add missing 12x wires * add slot migration code (#1326) * spotlessApply (#1327) Co-authored-by: Martin Robertz Co-authored-by: GitHub GTNH Actions <> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * spotlessApply Co-authored-by: Martin Robertz Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: GitHub GTNH Actions <> * Revert "Spotless apply for branch Sodium-Potassium for #1322 (#1328)" This reverts commit 5bf31ffddfeddd1c4d161d434abb8402939ec9d6. * spotless * make fluid heater working with <1 fluid (cherry picked from commit 8045cf6f03d0ce030b8e7b2fa6c70dca6d9ccc5d) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> --- src/main/java/gregtech/api/enums/Materials.java | 2 +- .../api/interfaces/internal/IGT_RecipeAdder.java | 3 +- src/main/java/gregtech/api/util/GT_Recipe.java | 2 +- src/main/java/gregtech/common/GT_RecipeAdder.java | 15 ++++ .../loaders/postload/GT_MachineRecipeLoader.java | 3 + .../preload/GT_Loader_Item_Block_And_Fluid.java | 84 +++------------------ .../textures/blocks/fluids/fluid.liquid_sodium.png | Bin 0 -> 9280 bytes .../blocks/fluids/fluid.liquid_sodium.png.mcmeta | 5 ++ 8 files changed, 37 insertions(+), 77 deletions(-) create mode 100644 src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png create mode 100644 src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png.mcmeta (limited to 'src') diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 4134c80c57..c72f75e365 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -110,7 +110,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Scandium = new Materials( 27, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 204, 204, 204, 0, "Scandium" , "Scandium" , 0, 0, 1814, 1814, true, false, 2, 1, 1, Dyes.dyeYellow , Element.Sc , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); public static Materials Silicon = new Materials( 20, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 60, 60, 80, 0, "Silicon" , "Raw Silicon" , 0, 0, 2273, 2273, true, false, 1, 1, 1, Dyes.dyeBlack , Element.Si , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.TENEBRAE, 1))); public static Materials Silver = new Materials( 54, TextureSet.SET_SHINY , 10.0F, 64, 2, 1|2 |8 |32|64|128 , 220, 220, 255, 0, "Silver" , "Silver" , 0, 0, 1234, 0, false, false, 3, 1, 1, Dyes.dyeLightGray , Element.Ag , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.LUCRUM, 1))); - public static Materials Sodium = new Materials( 17, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |32 , 0, 0, 150, 0, "Sodium" , "Sodium" , 0, 0, 370, 0, false, false, 1, 1, 1, Dyes.dyeBlue , Element.Na , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 2), new TC_AspectStack(TC_Aspects.LUX, 1))); + public static Materials Sodium = new Materials( 17, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |16|32 , 0, 0, 150, 0, "Sodium" , "Sodium" , 0, 0, 370, 0, false, false, 1, 1, 1, Dyes.dyeBlue , Element.Na , Arrays.asList(new TC_AspectStack(TC_Aspects.VITREUS, 2), new TC_AspectStack(TC_Aspects.LUX, 1))); public static Materials Strontium = new Materials( 44, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |8 |32 , 200, 200, 200, 0, "Strontium" , "Strontium" , 0, 0, 1050, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Element.Sr , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.STRONTIO, 1))); public static Materials Sulfur = new Materials( 22, TextureSet.SET_DULL , 1.0F, 0, 2, 1 |8 |32 , 200, 200, 0, 0, "Sulfur" , "Sulfur" , 0, 0, 388, 0, false, false, 2, 1, 1, Dyes.dyeYellow , Element.S , Collections.singletonList(new TC_AspectStack(TC_Aspects.IGNIS, 1))); public static Materials Tantalum = new Materials( 80, TextureSet.SET_SHINY , 6.0F, 2560, 3, 1|2 |8 |32 , 105, 183, 255, 0, "Tantalum" , "Tantalum" , 0, 0, 3290, 3290, true, false, 4, 1, 1, Dyes._NULL , Element.Ta , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.VINCULUM, 1))).disableAutoGeneratedBlastFurnaceRecipes(); diff --git a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java index cfebfef7fc..8bb10d8580 100644 --- a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java +++ b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java @@ -864,8 +864,9 @@ public interface IGT_RecipeAdder { /** * Adds a Recipe for the Fluid Heater */ - boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt); + boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aOutput, int aDuration, int aEUt); + boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt); /** * Adds a Recipe for the Distillery */ diff --git a/src/main/java/gregtech/api/util/GT_Recipe.java b/src/main/java/gregtech/api/util/GT_Recipe.java index 09549a52c8..96ff61a026 100644 --- a/src/main/java/gregtech/api/util/GT_Recipe.java +++ b/src/main/java/gregtech/api/util/GT_Recipe.java @@ -1418,7 +1418,7 @@ public class GT_Recipe implements Comparable { 1, 0, 1, - 1, + 0, 1, E, 1, diff --git a/src/main/java/gregtech/common/GT_RecipeAdder.java b/src/main/java/gregtech/common/GT_RecipeAdder.java index f75712a887..6b2d556242 100644 --- a/src/main/java/gregtech/common/GT_RecipeAdder.java +++ b/src/main/java/gregtech/common/GT_RecipeAdder.java @@ -2586,6 +2586,21 @@ public class GT_RecipeAdder implements IGT_RecipeAdder { return true; } + @Override + public boolean addFluidHeaterRecipe(ItemStack aItem, FluidStack aOutput, int aDuration, int aEUt) { + if ((aItem == null) || (aOutput == null)) { + return false; + } + if ((aDuration = GregTech_API.sRecipeFile.get( + "fluidheater", aOutput.getFluid().getUnlocalizedName(), aDuration)) + <= 0) { + return false; + } + GT_Recipe.GT_Recipe_Map.sFluidHeaterRecipes.addRecipe( + true, new ItemStack[] {aItem}, null, null, null, new FluidStack[] {aOutput}, aDuration, aEUt, 0); + return true; + } + @Override public boolean addFluidHeaterRecipe( ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 2000442437..0dcd9c5bfb 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -14540,6 +14540,9 @@ public class GT_MachineRecipeLoader implements Runnable { Materials.Quicklime.getDust(2), 80, 480); + // Fluid Sodium + GT_Values.RA.addFluidHeaterRecipe(Materials.Sodium.getDust(1), Materials.Sodium.getFluid(1000), 200, 120); + // 2CH3COOH = CH3COCH3 + CO2 + H GT_Values.RA.addMultiblockChemicalRecipe( new ItemStack[] { diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java index 66a241604b..0529dd5e5d 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java @@ -113,92 +113,18 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { ItemList.Neutron_Reflector.set( new GT_NeutronReflector_Item("neutronreflector", "Iridium Neutron Reflector", 0)); - ItemList.Reactor_Coolant_He_1.set( GregTech_API.constructCoolantCellItem("60k_Helium_Coolantcell", "60k He Coolant Cell", 60000)); - GT_ModHandler.addCraftingRecipe( - ItemList.Reactor_Coolant_He_1.get(1L, new Object[0]), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - " P ", - "PCP", - " P ", - 'C', - OrePrefixes.cell.get(Materials.Helium), - 'P', - OrePrefixes.plate.get(Materials.Tin) - }); - ItemList.Reactor_Coolant_He_3.set( GregTech_API.constructCoolantCellItem("180k_Helium_Coolantcell", "180k He Coolant Cell", 180000)); - GT_ModHandler.addCraftingRecipe( - ItemList.Reactor_Coolant_He_3.get(1L, new Object[0]), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - "PCP", "PCP", "PCP", 'C', ItemList.Reactor_Coolant_He_1, 'P', OrePrefixes.plate.get(Materials.Tin) - }); - ItemList.Reactor_Coolant_He_6.set( GregTech_API.constructCoolantCellItem("360k_Helium_Coolantcell", "360k He Coolant Cell", 360000)); - GT_ModHandler.addCraftingRecipe( - ItemList.Reactor_Coolant_He_6.get(1L, new Object[0]), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - "PCP", - "PDP", - "PCP", - 'C', - ItemList.Reactor_Coolant_He_3, - 'P', - OrePrefixes.plate.get(Materials.Tin), - 'D', - OrePrefixes.plateDense.get(Materials.Copper) - }); - ItemList.Reactor_Coolant_NaK_1.set( GregTech_API.constructCoolantCellItem("60k_NaK_Coolantcell", "60k NaK Coolantcell", 60000)); - GT_ModHandler.addCraftingRecipe( - ItemList.Reactor_Coolant_NaK_1.get(1L, new Object[0]), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - "TST", - "PCP", - "TST", - 'C', - GT_ModHandler.getIC2Item("reactorCoolantSimple", 1L, 1), - 'T', - OrePrefixes.plate.get(Materials.Tin), - 'S', - OrePrefixes.dust.get(Materials.Sodium), - 'P', - OrePrefixes.dust.get(Materials.Potassium) - }); - ItemList.Reactor_Coolant_NaK_3.set( GregTech_API.constructCoolantCellItem("180k_NaK_Coolantcell", "180k NaK Coolantcell", 180000)); - GT_ModHandler.addCraftingRecipe( - ItemList.Reactor_Coolant_NaK_3.get(1L, new Object[0]), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - "PCP", "PCP", "PCP", 'C', ItemList.Reactor_Coolant_NaK_1, 'P', OrePrefixes.plate.get(Materials.Tin) - }); - ItemList.Reactor_Coolant_NaK_6.set( GregTech_API.constructCoolantCellItem("360k_NaK_Coolantcell", "360k NaK Coolantcell", 360000)); - GT_ModHandler.addCraftingRecipe( - ItemList.Reactor_Coolant_NaK_6.get(1L, new Object[0]), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - "PCP", - "PDP", - "PCP", - 'C', - ItemList.Reactor_Coolant_NaK_3, - 'P', - OrePrefixes.plate.get(Materials.Tin), - 'D', - OrePrefixes.plateDense.get(Materials.Copper) - }); ItemList.Reactor_Coolant_Sp_1.set( GregTech_API.constructCoolantCellItem("180k_Space_Coolantcell", "180k Sp Coolant Cell", 180000)); @@ -1408,6 +1334,16 @@ public class GT_Loader_Item_Block_And_Fluid implements Runnable { Materials.FierySteel.getFluid(250L), ItemList.TF_Vial_FieryBlood.get(1L, new Object[0]), ItemList.Bottle_Empty.get(1L, new Object[0]))); + + GT_Mod.gregtechproxy.addFluid( + "liquid_sodium", + "Liquid Sodium", + Materials.Sodium, + 1, + 495, + GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Sodium, 1L), + ItemList.Cell_Empty.get(1L, new Object[0]), + 1000); } FluidContainerRegistry.registerFluidContainer(new FluidContainerRegistry.FluidContainerData( diff --git a/src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png b/src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png new file mode 100644 index 0000000000..9095310faf Binary files /dev/null and b/src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png differ diff --git a/src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png.mcmeta b/src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png.mcmeta new file mode 100644 index 0000000000..0645f48c62 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/fluids/fluid.liquid_sodium.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} -- cgit