diff options
author | Elisis <gtandemmodding@gmail.com> | 2022-10-30 19:14:42 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-30 09:14:42 +0100 |
commit | 6525aae5ce50c974c0d49c469bd19e4b9d650dc6 (patch) | |
tree | f9c94eee70f6344de20d3fe9d0ba1fac3815f6eb | |
parent | 053c34890bb03af4475ae8a632c9d96a6e07a21f (diff) | |
download | GT5-Unofficial-6525aae5ce50c974c0d49c469bd19e4b9d650dc6.tar.gz GT5-Unofficial-6525aae5ce50c974c0d49c469bd19e4b9d650dc6.tar.bz2 GT5-Unofficial-6525aae5ce50c974c0d49c469bd19e4b9d650dc6.zip |
Add method for getting a GT material from a Forge Fluid instance (#1497)
* Add Fluid material map, lookup function
* spotlessApply (#1498)
Co-authored-by: Elisis <gtandemmodding@gmail.com>
Co-authored-by: GitHub GTNH Actions <>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-rw-r--r-- | src/main/java/gregtech/api/enums/Materials.java | 7 | ||||
-rw-r--r-- | src/main/java/gregtech/common/GT_Proxy.java | 28 |
2 files changed, 31 insertions, 4 deletions
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 719cd18278..a205aa2be0 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -34,6 +34,9 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static final List<IMaterialHandler> mMaterialHandlers = new ArrayList<>(); private static final Map<String, Materials> MATERIALS_MAP = new LinkedHashMap<>(); + + public static final Map<Fluid, Materials> FLUID_MAP = new LinkedHashMap<>(); + public static volatile int VERSION = 509; /** * This is for keeping compatibility with addons mods (Such as TinkersGregworks etc.) that looped over the old materials enum @@ -3292,4 +3295,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public ItemStack getPlates(int amount) { return GT_OreDictUnificator.get(OrePrefixes.plate, this, amount); } + + public static Materials getGtMaterialFromFluid(Fluid fluid) { + return FLUID_MAP.get(fluid); + } } diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index d1648ce1d8..6cd1d96943 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -2356,7 +2356,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG // All lower case. final String fluidTexture = aMaterial.mIconSet.is_custom ? "fluid." + aMaterial.mName.toLowerCase() : "autogenerated"; - return GT_FluidFactory.builder(aMaterial.mName.toLowerCase(Locale.ENGLISH)) + + Fluid fluid = GT_FluidFactory.builder(aMaterial.mName.toLowerCase(Locale.ENGLISH)) .withLocalizedName(aMaterial.mDefaultLocalName) .withTextureName(fluidTexture) .withColorRGBA(aMaterial.mRGBa) @@ -2366,6 +2367,10 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG .registerBContainers( GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L), ItemList.Cell_Empty.get(1L)) .asFluid(); + + Materials.FLUID_MAP.put(fluid, aMaterial); + + return fluid; } public Fluid addAutoGeneratedCorrespondingGas(Materials aMaterial) { @@ -2374,7 +2379,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG // lower case. final String fluidTexture = aMaterial.mIconSet.is_custom ? ("gas." + aMaterial.mName.toLowerCase()) : "autogenerated"; - return GT_FluidFactory.builder(aMaterial.mName.toLowerCase(Locale.ENGLISH)) + + Fluid fluid = GT_FluidFactory.builder(aMaterial.mName.toLowerCase(Locale.ENGLISH)) .withLocalizedName(aMaterial.mDefaultLocalName) .withTextureName(fluidTexture) .withColorRGBA(aMaterial.mRGBa) @@ -2384,6 +2390,10 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG .registerBContainers( GT_OreDictUnificator.get(OrePrefixes.cell, aMaterial, 1L), ItemList.Cell_Empty.get(1L)) .asFluid(); + + Materials.FLUID_MAP.put(fluid, aMaterial); + + return fluid; } public Fluid addAutogeneratedPlasmaFluid(Materials aMaterial) { @@ -2392,7 +2402,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG // All lower case. final String fluidTexture = aMaterial.mIconSet.is_custom ? ("plasma." + aMaterial.mName.toLowerCase()) : "plasma.autogenerated"; - return GT_FluidFactory.builder("plasma." + aMaterial.mName.toLowerCase(Locale.ENGLISH)) + + Fluid fluid = GT_FluidFactory.builder("plasma." + aMaterial.mName.toLowerCase(Locale.ENGLISH)) .withLocalizedName(aMaterial.mDefaultLocalName + " Plasma") .withTextureName(fluidTexture) .withColorRGBA(aMaterial.mMoltenRGBa) @@ -2404,6 +2415,10 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG ItemList.Cell_Empty.get(1L), aMaterial.getMolten(1) != null ? 144 : 1000) .asFluid(); + + Materials.FLUID_MAP.put(fluid, aMaterial); + + return fluid; } public Fluid addAutogeneratedMoltenFluid(Materials aMaterial) { @@ -2412,7 +2427,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG // All lower case. final String fluidTexture = aMaterial.mIconSet.is_custom ? ("molten." + aMaterial.mName.toLowerCase()) : "molten.autogenerated"; - return GT_FluidFactory.builder("molten." + aMaterial.mName.toLowerCase(Locale.ENGLISH)) + + Fluid fluid = GT_FluidFactory.builder("molten." + aMaterial.mName.toLowerCase(Locale.ENGLISH)) .withLocalizedName("Molten " + aMaterial.mDefaultLocalName) .withTextureName(fluidTexture) .withColorRGBA(aMaterial.mMoltenRGBa) @@ -2424,6 +2440,10 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler, IG ItemList.Cell_Empty.get(1L), 144) .asFluid(); + + Materials.FLUID_MAP.put(fluid, aMaterial); + + return fluid; } // ------------------------------------------------------------------------------------------------------------ |