From 1f3e75540c3a03f27409ad9556a6dd14fd62f348 Mon Sep 17 00:00:00 2001 From: GlodBlock <1356392126@qq.com> Date: Tue, 20 Apr 2021 23:57:11 +0800 Subject: add new fuels and related line --- src/main/java/GoodGenerator/Items/MyMaterial.java | 60 +++++++++++++++ .../GoodGenerator/Loader/FuelRecipeLoader.java | 3 + src/main/java/GoodGenerator/Loader/Loaders.java | 6 ++ .../java/GoodGenerator/Loader/RecipeLoader.java | 89 +++++++++++++++++++++- .../resources/assets/goodgenerator/lang/en_US.lang | 3 + 5 files changed, 159 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/main/java/GoodGenerator/Items/MyMaterial.java b/src/main/java/GoodGenerator/Items/MyMaterial.java index 335a5f5364..303ab79a18 100644 --- a/src/main/java/GoodGenerator/Items/MyMaterial.java +++ b/src/main/java/GoodGenerator/Items/MyMaterial.java @@ -1,6 +1,7 @@ package GoodGenerator.Items; import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; +import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import gregtech.api.enums.TextureSet; import com.github.bartimaeusnek.bartworks.util.Pair; @@ -10,6 +11,7 @@ import static gregtech.api.enums.Materials.*; public class MyMaterial implements Runnable { + //Uranium Based Fuel Line public static final Werkstoff graphiteUraniumMixture = new Werkstoff( new short[]{0x3a,0x77,0x3d}, "Graphite-Uranium Mixture", @@ -45,6 +47,64 @@ public class MyMaterial implements Runnable { TextureSet.SET_FLUID ); + public static final Werkstoff uraniumBasedLiquidFuelDepleted = new Werkstoff( + new short[]{0x6e,0x8b,0x3d}, + "Uranium Based Liquid Fuel (Depleted)", + subscriptNumbers("Pb?Bi?Ba?Xe?"), + new Werkstoff.Stats().setToxic(true), + Werkstoff.Types.COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 31003, + TextureSet.SET_FLUID + ); + + //Thorium Based Fuel + public static final Werkstoff uraniumCarbideThoriumMixture = new Werkstoff( + new short[]{0x16,0x32,0x07}, + "Uranium Carbide-Thorium Mixture", + Werkstoff.Types.MIXTURE, + new Werkstoff.GenerationFeatures().disable().addMixerRecipes().onlyDust(), + 31004, + TextureSet.SET_DULL, + new Pair<> (Thorium,8), + new Pair<> (WerkstoffLoader.Thorium232,4), + new Pair<> (Uranium235,1), + new Pair<> (Carbon,3) + ); + + public static final Werkstoff thoriumBasedLiquidFuel = new Werkstoff( + new short[]{0x50,0x32,0x66}, + "Thorium Based Liquid Fuel", + subscriptNumbers("Th864Li4D2Hg"), + new Werkstoff.Stats().setRadioactive(true), + Werkstoff.Types.COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 31005, + TextureSet.SET_FLUID + ); + + public static final Werkstoff thoriumBasedLiquidFuelExcited = new Werkstoff( + new short[]{0x50,0x32,0x66}, + "Thorium Based Liquid Fuel (Excited State)", + subscriptNumbers("*(Th864Li4D2Hg)*"), + new Werkstoff.Stats().setRadioactive(true), + Werkstoff.Types.COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 31006, + TextureSet.SET_FLUID + ); + + public static final Werkstoff thoriumBasedLiquidFuelDepleted = new Werkstoff( + new short[]{0x7d,0x6c,0x8a}, + "Thorium Based Liquid Fuel (Depleted)", + subscriptNumbers("Lu?Pr?B?In?"), + new Werkstoff.Stats().setToxic(true), + Werkstoff.Types.COMPOUND, + new Werkstoff.GenerationFeatures().disable().addCells(), + 31007, + TextureSet.SET_FLUID + ); + @Override public void run() { } } diff --git a/src/main/java/GoodGenerator/Loader/FuelRecipeLoader.java b/src/main/java/GoodGenerator/Loader/FuelRecipeLoader.java index 82e6f3201f..7a22b709b5 100644 --- a/src/main/java/GoodGenerator/Loader/FuelRecipeLoader.java +++ b/src/main/java/GoodGenerator/Loader/FuelRecipeLoader.java @@ -1,5 +1,6 @@ package GoodGenerator.Loader; +import GoodGenerator.Items.MyMaterial; import GoodGenerator.util.MyRecipeAdder; import gregtech.api.enums.Materials; @@ -7,6 +8,8 @@ public class FuelRecipeLoader { public static void RegisterFuel(){ MyRecipeAdder.instance.addLiquidMentalFuel(Materials.NaquadahEnriched.getMolten(1L),Materials.Naquadah.getMolten(1L),32768,1200); MyRecipeAdder.instance.addLiquidMentalFuel(Materials.Naquadria.getMolten(1L),Materials.Naquadah.getMolten(1L),262144,100); + MyRecipeAdder.instance.addLiquidMentalFuel(MyMaterial.uraniumBasedLiquidFuelExcited.getFluidOrGas(1),MyMaterial.uraniumBasedLiquidFuelDepleted.getFluidOrGas(1),12960,100); + MyRecipeAdder.instance.addLiquidMentalFuel(MyMaterial.thoriumBasedLiquidFuelExcited.getFluidOrGas(1),MyMaterial.thoriumBasedLiquidFuelDepleted.getFluidOrGas(1),4320,500); } } diff --git a/src/main/java/GoodGenerator/Loader/Loaders.java b/src/main/java/GoodGenerator/Loader/Loaders.java index b74ffa2dcb..d8ab077c41 100644 --- a/src/main/java/GoodGenerator/Loader/Loaders.java +++ b/src/main/java/GoodGenerator/Loader/Loaders.java @@ -16,6 +16,9 @@ public class Loaders { public static final Item wrappedUraniumIngot = new MyItems("wrappedUraniumIngot",GoodGenerator.GG); public static final Item highDensityUraniumNugget = new MyItems("highDensityUraniumNugget",GoodGenerator.GG); public static final Item highDensityUranium = new MyItems("highDensityUranium",GoodGenerator.GG); + public static final Item wrappedThoriumIngot = new MyItems("wrappedThoriumIngot",GoodGenerator.GG); + public static final Item highDensityThoriumNugget = new MyItems("highDensityThoriumNugget",GoodGenerator.GG); + public static final Item highDensityThorium = new MyItems("highDensityThorium",GoodGenerator.GG); public static final Block MAR_Casing = new Casing("MAR_Casing",new String[]{ GoodGenerator.MOD_ID+":MAR_Casing", @@ -28,6 +31,9 @@ public class Loaders { GameRegistry.registerItem(wrappedUraniumIngot,"wrappedUraniumIngot",GoodGenerator.MOD_ID); GameRegistry.registerItem(highDensityUraniumNugget,"highDensityUraniumNugget",GoodGenerator.MOD_ID); GameRegistry.registerItem(highDensityUranium,"highDensityUranium",GoodGenerator.MOD_ID); + GameRegistry.registerItem(wrappedThoriumIngot,"wrappedThoriumIngot",GoodGenerator.MOD_ID); + GameRegistry.registerItem(highDensityThoriumNugget,"highDensityThoriumNugget",GoodGenerator.MOD_ID); + GameRegistry.registerItem(highDensityThorium,"highDensityThorium",GoodGenerator.MOD_ID); Loaders.MAR = new MultiNqGenerator(12732,"NaG","Large Naquadah Reactor").getStackForm(1L); } } diff --git a/src/main/java/GoodGenerator/Loader/RecipeLoader.java b/src/main/java/GoodGenerator/Loader/RecipeLoader.java index 937784b001..575cc07ca4 100644 --- a/src/main/java/GoodGenerator/Loader/RecipeLoader.java +++ b/src/main/java/GoodGenerator/Loader/RecipeLoader.java @@ -1,6 +1,9 @@ package GoodGenerator.Loader; import GoodGenerator.Items.MyMaterial; +import com.github.bartimaeusnek.bartworks.system.material.BW_GT_MaterialReference; +import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; +import cpw.mods.fml.common.registry.GameRegistry; import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; import net.minecraft.item.ItemStack; @@ -9,6 +12,8 @@ import gregtech.api.util.GT_Utility; public class RecipeLoader { public static void RecipeLoad(){ + + //Radiation Protection Plate GT_Values.RA.addAssemblerRecipe( new ItemStack[]{GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Lanthanum, 16L), GT_OreDictUnificator.get(OrePrefixes.plate,Materials.NaquadahAlloy,8L), @@ -20,6 +25,7 @@ public class RecipeLoader { 1920 ); + //LNR Controller GT_Values.RA.addAssemblylineRecipe( ItemList.Generator_Naquadah_Mark_V.get(1).copy(), 100000, @@ -44,6 +50,7 @@ public class RecipeLoader { 122880 ); + //LNR Casing GT_Values.RA.addAssemblerRecipe( new ItemStack[]{ new ItemStack(Loaders.radiationProtectionPlate,6), @@ -57,6 +64,7 @@ public class RecipeLoader { 1920 ); + //Uranium Liquid Fuel Process Line GT_Values.RA.addAssemblerRecipe( new ItemStack[]{ MyMaterial.graphiteUraniumMixture.get(OrePrefixes.dust,4), @@ -71,7 +79,7 @@ public class RecipeLoader { GT_Values.RA.addImplosionRecipe( new ItemStack(Loaders.wrappedUraniumIngot, 4), - 4, + 8, new ItemStack(Loaders.highDensityUraniumNugget), GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.TungstenCarbide,8) ); @@ -86,7 +94,7 @@ public class RecipeLoader { GT_Values.RA.addMixerRecipe( new ItemStack(Loaders.highDensityUranium), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Rubidium,8), - GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Quantium,4), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Quantium,4), GT_Utility.getIntegratedCircuit(1), Materials.Radon.getGas(1000L), MyMaterial.uraniumBasedLiquidFuel.getFluidOrGas(1000), @@ -103,5 +111,82 @@ public class RecipeLoader { 7680, 200000000 ); + + GT_Values.RA.addCentrifugeRecipe( + GT_Utility.getIntegratedCircuit(1),null, + MyMaterial.uraniumBasedLiquidFuelDepleted.getFluidOrGas(1000), + WerkstoffLoader.Xenon.getFluidOrGas(2), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lead,16L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bismuth,1L), + GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Barium,6L), + null,null,null, + new int[]{6000,1000,5000}, + 1000,1040 + ); + + //Thorium Liquid Process Line + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + MyMaterial.uraniumCarbideThoriumMixture.get(OrePrefixes.dust,64), + GT_OreDictUnificator.get(OrePrefixes.foil,Materials.TungstenSteel,4), + GT_Utility.getIntegratedCircuit(1) + }, + null, + new ItemStack(Loaders.wrappedThoriumIngot), + 1000, + 480 + ); + + GT_Values.RA.addImplosionRecipe( + new ItemStack(Loaders.wrappedThoriumIngot), + 4, + new ItemStack(Loaders.highDensityThoriumNugget), + GT_OreDictUnificator.get(OrePrefixes.dustTiny,Materials.TungstenSteel,3) + ); + + GT_Values.RA.addCompressorRecipe( + new ItemStack(Loaders.highDensityThoriumNugget), + new ItemStack(Loaders.highDensityThorium), + 400, + 120 + ); + + GT_Values.RA.addMixerRecipe( + new ItemStack(Loaders.highDensityThorium), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Lithium,4), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Draconium,2), + GT_Utility.getIntegratedCircuit(2), + Materials.Mercury.getFluid(1000L), + MyMaterial.thoriumBasedLiquidFuel.getFluidOrGas(4000), + null, + 3000, + 240 + ); + + GT_Values.RA.addMixerRecipe( + MyMaterial.thoriumBasedLiquidFuel.get(OrePrefixes.cell,1), + GT_Utility.getIntegratedCircuit(1), + null,null, + Materials.Helium.getPlasma(750L), + null, + MyMaterial.thoriumBasedLiquidFuelExcited.get(OrePrefixes.cell,1), + 4500, + 3840 + ); + + GT_Values.RA.addCentrifugeRecipe( + GT_Utility.getIntegratedCircuit(1),null, + MyMaterial.uraniumBasedLiquidFuelDepleted.getFluidOrGas(1000), + null, + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Lutetium,8), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Lutetium,8), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Lutetium,4), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Praseodymium,1), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Boron,2), + GT_OreDictUnificator.get(OrePrefixes.dust,Materials.Indium,4), + new int[]{9000,7000,1500,800,3000,5000}, + 1500, + 1040 + ); } } diff --git a/src/main/resources/assets/goodgenerator/lang/en_US.lang b/src/main/resources/assets/goodgenerator/lang/en_US.lang index c7e0b0bc16..32affd6add 100644 --- a/src/main/resources/assets/goodgenerator/lang/en_US.lang +++ b/src/main/resources/assets/goodgenerator/lang/en_US.lang @@ -5,6 +5,9 @@ item.radiationProtectionPlate.name=Radiation Protection Plate item.wrappedUraniumIngot.name=Wrapped Uranium Ingot item.highDensityUraniumNugget.name=High Density Uranium Nugget item.highDensityUranium.name=High Density Uranium +item.wrappedThoriumIngot.name=Wrapped Thorium Ingot +item.highDensityThoriumNugget.name=High Density Thorium Nugget +item.highDensityThorium.name=High Thorium Uranium itemGroup.Good Generator=Good Generator -- cgit