diff options
Diffstat (limited to 'src')
6 files changed, 45 insertions, 19 deletions
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 8fa67c52bd..21d19ff31b 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -17,6 +17,8 @@ import java.util.Objects; import java.util.stream.Collectors; import java.util.stream.IntStream; +import javax.annotation.Nonnull; + import net.minecraft.enchantment.Enchantment; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; @@ -2780,10 +2782,18 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { return MATERIALS_MAP; } + @Nonnull public static Materials get(String aMaterialName) { - Materials aMaterial = getMaterialsMap().get(aMaterialName); - if (aMaterial != null) return aMaterial; - return Materials._NULL; + return getWithFallback(aMaterialName, Materials._NULL); + } + + @Nonnull + public static Materials getWithFallback(String name, @Nonnull Materials fallback) { + Materials material = getMaterialsMap().get(name); + if (material != null) { + return material; + } + return fallback; } public static Materials getRealMaterial(String aMaterialName) { diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java index 4b45708370..42f45e0e5d 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java @@ -43,6 +43,7 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.BaseMetaTileEntity; import gregtech.api.render.TextureFactory; +import gregtech.api.util.ExternalMaterials; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; @@ -401,7 +402,7 @@ public class GT_MetaTileEntity_BasicMachine_GT_Recipe extends GT_MetaTileEntity_ case 3 -> OrePrefixes.rotor.get(Materials.Steel); case 4 -> OrePrefixes.rotor.get(Materials.StainlessSteel); case 5 -> OrePrefixes.rotor.get(Materials.TungstenSteel); - case 6 -> OrePrefixes.rotor.get(BartWorks.isModLoaded() ? Materials.get("Rhodium-PlatedPalladium") : Materials.Chrome); + case 6 -> OrePrefixes.rotor.get(ExternalMaterials.getRhodiumPlatedPalladium()); case 7 -> OrePrefixes.rotor.get(Materials.Iridium); default -> OrePrefixes.rotor.get(Materials.Osmium); }; diff --git a/src/main/java/gregtech/api/util/ExternalMaterials.java b/src/main/java/gregtech/api/util/ExternalMaterials.java new file mode 100644 index 0000000000..29564db2fd --- /dev/null +++ b/src/main/java/gregtech/api/util/ExternalMaterials.java @@ -0,0 +1,14 @@ +package gregtech.api.util; + +import gregtech.api.enums.Materials; + +public class ExternalMaterials { + + public static Materials getRhodiumPlatedPalladium() { + return Materials.getWithFallback("Rhodium-PlatedPalladium", Materials.Chrome); + } + + public static Materials getRuridit() { + return Materials.getWithFallback("Ruridit", Materials.Osmiridium); + } +} diff --git a/src/main/java/gregtech/loaders/load/GT_Loader_MetaTileEntities_Recipes.java b/src/main/java/gregtech/loaders/load/GT_Loader_MetaTileEntities_Recipes.java index c8f0ab3de4..3f1540c9da 100644 --- a/src/main/java/gregtech/loaders/load/GT_Loader_MetaTileEntities_Recipes.java +++ b/src/main/java/gregtech/loaders/load/GT_Loader_MetaTileEntities_Recipes.java @@ -1,6 +1,5 @@ package gregtech.loaders.load; -import static gregtech.api.enums.Mods.BartWorks; import static gregtech.api.enums.Mods.BuildCraftFactory; import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.Gendustry; @@ -28,6 +27,7 @@ import gregtech.api.enums.SoundResource; import gregtech.api.enums.TierEU; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_GT_Recipe.SpecialEffects; +import gregtech.api.util.ExternalMaterials; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; @@ -54,8 +54,6 @@ public class GT_Loader_MetaTileEntities_Recipes implements Runnable { private static final long bitsd = GT_ModHandler.RecipeBits.DISMANTLEABLE | bits; private static void run1() { - Materials LuVMat2 = BartWorks.isModLoaded() ? Materials.get("Rhodium-PlatedPalladium") : Materials.Chrome; - GT_ModHandler.addCraftingRecipe( ItemList.Casing_Pipe_Polytetrafluoroethylene.get(1L), bits, @@ -99,7 +97,8 @@ public class GT_Loader_MetaTileEntities_Recipes implements Runnable { GT_ModHandler.addCraftingRecipe( ItemList.Casing_LuV.get(1L), bits, - new Object[] { aTextPlate, aTextPlateWrench, aTextPlate, 'P', OrePrefixes.plate.get(LuVMat2) }); + new Object[] { aTextPlate, aTextPlateWrench, aTextPlate, 'P', + OrePrefixes.plate.get(ExternalMaterials.getRhodiumPlatedPalladium()) }); GT_ModHandler.addCraftingRecipe( ItemList.Casing_ZPM.get(1L), bits, @@ -418,7 +417,8 @@ public class GT_Loader_MetaTileEntities_Recipes implements Runnable { ItemList.Hull_LuV.get(1L), GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { aTextCableHull, 'M', ItemList.Casing_LuV, 'C', - OrePrefixes.cableGt01.get(Materials.VanadiumGallium), 'H', OrePrefixes.plate.get(LuVMat2), 'P', + OrePrefixes.cableGt01.get(Materials.VanadiumGallium), 'H', + OrePrefixes.plate.get(ExternalMaterials.getRhodiumPlatedPalladium()), 'P', OrePrefixes.plate.get(Materials.Polytetrafluoroethylene) }); GT_ModHandler.addCraftingRecipe( ItemList.Hull_ZPM.get(1L), @@ -491,7 +491,8 @@ public class GT_Loader_MetaTileEntities_Recipes implements Runnable { ItemList.Hull_LuV.get(1L), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[] { "PHP", aTextCableHull, 'M', ItemList.Casing_LuV, 'C', - OrePrefixes.cableGt01.get(Materials.VanadiumGallium), 'H', OrePrefixes.plate.get(LuVMat2), 'P', + OrePrefixes.cableGt01.get(Materials.VanadiumGallium), 'H', + OrePrefixes.plate.get(ExternalMaterials.getRhodiumPlatedPalladium()), 'P', OrePrefixes.plate.get(Materials.Polytetrafluoroethylene) }); GT_ModHandler.addCraftingRecipe( ItemList.Hull_ZPM.get(1L), diff --git a/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java index 5485e0f76f..e9f36aba42 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AssemblerRecipes.java @@ -48,6 +48,7 @@ import gregtech.api.enums.MaterialsUEVplus; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; import gregtech.api.enums.TierEU; +import gregtech.api.util.ExternalMaterials; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -68,9 +69,6 @@ public class AssemblerRecipes implements Runnable { this.loadOutputHatchesRecipes(); this.withIC2NuclearControl(); - Materials LuVMat = BartWorks.isModLoaded() ? Materials.get("Ruridit") : Materials.Osmiridium; - Materials LuVMat2 = BartWorks.isModLoaded() ? Materials.get("Rhodium-PlatedPalladium") : Materials.Chrome; - GT_Values.RA.stdBuilder() .itemInputs( GT_OreDictUnificator.get(OrePrefixes.stick, Materials.Wood, 1), @@ -1629,7 +1627,7 @@ public class AssemblerRecipes implements Runnable { GT_Values.RA.stdBuilder() .itemInputs( GT_OreDictUnificator.get(OrePrefixes.stick, Materials.SamariumMagnetic, 1), - GT_OreDictUnificator.get(OrePrefixes.wireFine, LuVMat, 16), + GT_OreDictUnificator.get(OrePrefixes.wireFine, ExternalMaterials.getRuridit(), 16), GT_Utility.getIntegratedCircuit(1)) .itemOutputs(ItemList.LuV_Coil.get(1)) .noFluidInputs() @@ -2149,7 +2147,9 @@ public class AssemblerRecipes implements Runnable { .addTo(sAssemblerRecipes); GT_Values.RA.stdBuilder() - .itemInputs(GT_OreDictUnificator.get(OrePrefixes.plate, LuVMat2, 8), GT_Utility.getIntegratedCircuit(8)) + .itemInputs( + GT_OreDictUnificator.get(OrePrefixes.plate, ExternalMaterials.getRhodiumPlatedPalladium(), 8), + GT_Utility.getIntegratedCircuit(8)) .itemOutputs(ItemList.Casing_LuV.get(1)) .noFluidInputs() .noFluidOutputs() @@ -7371,13 +7371,13 @@ public class AssemblerRecipes implements Runnable { } public void withBartWorks() { - if (BartWorks.isModLoaded()) { + if (!BartWorks.isModLoaded()) { return; } GT_Values.RA.stdBuilder() .itemInputs( - getModItem(BartWorks.ID, "gt.bwMetaGeneratedplate", 6L, 88), + GT_OreDictUnificator.get(OrePrefixes.plate, ExternalMaterials.getRhodiumPlatedPalladium(), 6), GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Chrome, 1)) .itemOutputs(ItemList.Casing_Advanced_Rhodium_Palladium.get(1)) .noFluidInputs() diff --git a/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java b/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java index 4ef36a7f98..d71b4b853f 100644 --- a/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java +++ b/src/main/java/gregtech/loaders/postload/recipes/AssemblyLineRecipes.java @@ -1,6 +1,5 @@ package gregtech.loaders.postload.recipes; -import static gregtech.api.enums.Mods.BartWorks; import static gregtech.api.enums.Mods.GTPlusPlus; import static gregtech.api.util.GT_RecipeBuilder.HOURS; import static gregtech.api.util.GT_RecipeBuilder.MINUTES; @@ -19,6 +18,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; +import gregtech.api.util.ExternalMaterials; import gregtech.api.util.GT_OreDictUnificator; public class AssemblyLineRecipes implements Runnable { @@ -30,7 +30,7 @@ public class AssemblyLineRecipes implements Runnable { solderIndalloy = GTPlusPlus.isModLoaded() ? FluidRegistry.getFluid("molten.indalloy140") : FluidRegistry.getFluid("molten.solderingalloy"); - LuVMat = BartWorks.isModLoaded() ? Materials.get("Ruridit") : Materials.Osmiridium; + LuVMat = ExternalMaterials.getRuridit(); } @Override |