From 9b0cf70949beab972a7f9b2e6884dc9eb4cb8dca Mon Sep 17 00:00:00 2001 From: boubou19 Date: Tue, 4 Apr 2023 13:57:15 +0200 Subject: Modid work (#1833) * add all mods founds in NHCore * depracte old strings * add ars magica 2 * more enum work * use a switch * spotless * more mod id rework * more mod id rework * more mod id rework * should be last * spotless * rename to make more sense * add path attribute * add getResourcePath to enum * spotless --- src/main/java/gregtech/GT_Mod.java | 13 +- src/main/java/gregtech/api/GregTech_API.java | 4 +- src/main/java/gregtech/api/enums/GT_Values.java | 105 ++- src/main/java/gregtech/api/enums/Materials.java | 4 +- src/main/java/gregtech/api/enums/ModIDs.java | 84 --- src/main/java/gregtech/api/enums/Mods.java | 291 ++++++++ .../java/gregtech/api/enums/SoundResource.java | 60 +- src/main/java/gregtech/api/enums/Textures.java | 15 +- .../gregtech/api/gui/GT_GUIContainer_1by1.java | 10 +- .../gregtech/api/gui/GT_GUIContainer_2by2.java | 10 +- .../gregtech/api/gui/GT_GUIContainer_3by3.java | 10 +- .../gregtech/api/gui/GT_GUIContainer_4by4.java | 10 +- .../api/gui/GT_GUIContainer_BasicMachine.java | 6 +- .../api/gui/GT_GUIContainer_BasicTank.java | 6 +- .../api/gui/GT_GUIContainer_MultiMachine.java | 8 +- .../gregtech/api/gui/modularui/GT_UITextures.java | 538 ++++++++------- .../java/gregtech/api/gui/widgets/GT_GuiIcon.java | 8 +- .../api/interfaces/IDragAndDropSupport.java | 5 +- .../gregtech/api/items/GT_EnergyArmor_Item.java | 4 +- .../java/gregtech/api/items/GT_Generic_Item.java | 7 +- .../gregtech/api/items/GT_MetaGenerated_Item.java | 15 +- .../implementations/GT_MetaPipeEntity_Cable.java | 2 +- .../implementations/GT_MetaPipeEntity_Fluid.java | 4 +- .../GT_MetaTileEntity_BasicMachine_GT_Recipe.java | 5 +- .../interfaces/IMultiTileEntity.java | 5 +- src/main/java/gregtech/api/objects/GT_Fluid.java | 4 +- src/main/java/gregtech/api/util/GT_BaseCrop.java | 2 +- .../gregtech/api/util/GT_ChunkAssociatedData.java | 4 +- .../java/gregtech/api/util/GT_ModReference.java | 8 +- src/main/java/gregtech/api/util/GT_Recipe.java | 189 +++--- .../java/gregtech/api/util/GT_RecipeMapUtil.java | 3 +- .../java/gregtech/client/GT_GUI_ClientConfig.java | 4 +- src/main/java/gregtech/common/GT_Client.java | 5 +- src/main/java/gregtech/common/GT_Proxy.java | 733 ++++++++++----------- src/main/java/gregtech/common/GT_RecipeAdder.java | 8 +- .../gregtech/common/blocks/GT_Block_Metal.java | 2 +- .../common/blocks/GT_Block_Ores_Abstract.java | 2 +- .../gregtech/common/blocks/GT_Block_Ores_UB1.java | 4 +- .../gregtech/common/blocks/GT_Block_Ores_UB2.java | 4 +- .../gregtech/common/blocks/GT_Block_Ores_UB3.java | 4 +- .../gregtech/common/fluid/GT_FluidBuilder.java | 4 +- .../common/items/GT_IntegratedCircuit_Item.java | 4 +- .../common/items/GT_MetaGenerated_Item_01.java | 2 +- .../common/items/GT_MetaGenerated_Item_02.java | 98 +-- .../gregtech/common/items/GT_VolumetricFlask.java | 4 +- src/main/java/gregtech/common/items/ItemComb.java | 188 +++--- src/main/java/gregtech/common/items/ItemDrop.java | 35 +- .../java/gregtech/common/items/ItemPollen.java | 4 +- .../java/gregtech/common/items/ItemPropolis.java | 23 +- .../common/items/behaviors/Behaviour_Crowbar.java | 4 +- .../misc/spaceprojects/enums/SolarSystem.java | 5 +- .../GT_MetaTileEntity_MagicalEnergyAbsorber.java | 2 +- .../basic/GT_MetaTileEntity_Disassembler.java | 19 +- .../machines/basic/GT_MetaTileEntity_Miner.java | 3 +- .../machines/basic/GT_MetaTileEntity_Scanner.java | 18 +- .../multi/GT_MetaTileEntity_AssemblyLine.java | 11 +- .../GT_MetaTileEntity_IntegratedOreFactory.java | 11 +- .../multi/GT_MetaTileEntity_PCBFactory.java | 11 +- .../multi/GT_MetaTileEntity_PyrolyseOven.java | 4 +- .../multiblock/logic/CokeOvenProcessingLogic.java | 3 +- .../java/gregtech/common/tools/GT_Tool_Scoop.java | 2 +- src/main/java/gregtech/crossmod/Waila.java | 3 +- src/main/java/gregtech/loaders/ExtraIcons.java | 26 +- .../java/gregtech/loaders/load/GT_FuelLoader.java | 24 +- .../materialprocessing/ProcessingModSupport.java | 2 +- .../gregtech/loaders/misc/GT_Achievements.java | 2 +- .../gregtech/loaders/misc/GT_BeeDefinition.java | 401 +++++------ src/main/java/gregtech/loaders/misc/GT_Bees.java | 2 +- .../loaders/oreprocessing/ProcessingCircuit.java | 6 +- .../loaders/oreprocessing/ProcessingCrafting.java | 28 +- .../loaders/oreprocessing/ProcessingGem.java | 3 +- .../loaders/oreprocessing/ProcessingLog.java | 4 +- .../loaders/oreprocessing/ProcessingSlab.java | 2 +- .../loaders/oreprocessing/ProcessingStone.java | 4 +- .../loaders/postload/GT_CraftingRecipeLoader.java | 60 +- .../loaders/postload/GT_MachineRecipeLoader.java | 2 +- .../gregtech/loaders/postload/GT_PostLoad.java | 10 +- .../loaders/postload/chains/GT_NaniteChain.java | 41 +- .../postload/chains/GT_PCBFactoryRecipes.java | 13 +- .../postload/recipes/ArcFurnaceRecipes.java | 62 +- .../loaders/postload/recipes/AssemblerRecipes.java | 454 +++++++------ .../postload/recipes/AssemblyLineRecipes.java | 4 +- .../loaders/postload/recipes/AutoclaveRecipes.java | 38 +- .../postload/recipes/BlastFurnaceRecipes.java | 5 +- .../loaders/postload/recipes/BreweryRecipes.java | 10 +- .../loaders/postload/recipes/CannerRecipes.java | 2 +- .../postload/recipes/CentrifugeRecipes.java | 74 +-- .../postload/recipes/ChemicalBathRecipes.java | 14 +- .../loaders/postload/recipes/ChemicalRecipes.java | 22 +- .../postload/recipes/CircuitAssemblerRecipes.java | 50 +- .../postload/recipes/CompressorRecipes.java | 16 +- .../loaders/postload/recipes/CuttingRecipes.java | 27 +- .../postload/recipes/DistilleryRecipes.java | 2 +- .../postload/recipes/FluidExtractorRecipes.java | 80 +-- .../postload/recipes/FluidSolidifierRecipes.java | 10 +- .../postload/recipes/ForgeHammerRecipes.java | 10 +- .../postload/recipes/FormingPressRecipes.java | 54 +- .../loaders/postload/recipes/FuelRecipes.java | 34 +- .../recipes/ImplosionCompressorRecipes.java | 10 +- .../loaders/postload/recipes/LatheRecipes.java | 4 +- .../loaders/postload/recipes/MixerRecipes.java | 92 +-- .../loaders/postload/recipes/NEIHiding.java | 4 +- .../postload/recipes/OreDictUnification.java | 4 +- .../postload/recipes/PlasmaForgeRecipes.java | 9 +- .../loaders/postload/recipes/Pulverizer.java | 76 +-- .../loaders/postload/recipes/PyrolyseRecipes.java | 8 +- .../loaders/postload/recipes/RecipeRemover.java | 10 +- .../postload/recipes/ThaumcraftRecipes.java | 16 +- .../postload/recipes/VacuumFreezerRecipes.java | 2 +- .../loaders/preload/GT_Loader_ItemData.java | 61 +- .../preload/GT_Loader_Item_Block_And_Fluid.java | 68 +- .../preload/GT_Loader_MetaTileEntities.java | 60 +- .../loaders/preload/GT_Loader_OreDictionary.java | 125 ++-- .../java/gregtech/loaders/preload/GT_PreLoad.java | 4 +- src/main/java/gregtech/nei/IMCForNEI.java | 5 +- .../java/gregtech/nei/dumper/GregTechIDDumper.java | 2 +- 116 files changed, 2583 insertions(+), 2238 deletions(-) delete mode 100644 src/main/java/gregtech/api/enums/ModIDs.java create mode 100644 src/main/java/gregtech/api/enums/Mods.java (limited to 'src/main/java/gregtech') diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index 7d239263b0..5a7bee508b 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -1,7 +1,7 @@ package gregtech; import static gregtech.api.GregTech_API.registerCircuitProgrammer; -import static gregtech.api.enums.ModIDs.Forestry; +import static gregtech.api.enums.Mods.Forestry; import java.io.PrintWriter; import java.io.StringWriter; @@ -93,7 +93,7 @@ import ic2.api.recipe.IRecipeInput; import ic2.api.recipe.RecipeOutput; @Mod( - modid = "gregtech", + modid = Mods.Names.GREG_TECH, name = "GregTech", version = "MC1710", guiFactory = "gregtech.client.GT_GuiFactory", @@ -148,10 +148,13 @@ public class GT_Mod implements IGT_Mod { @Deprecated public static final int REQUIRED_IC2 = 624; - @Mod.Instance("gregtech") + @Mod.Instance(Mods.Names.GREG_TECH) public static GT_Mod instance; - @SidedProxy(modId = "gregtech", clientSide = "gregtech.common.GT_Client", serverSide = "gregtech.common.GT_Server") + @SidedProxy( + modId = Mods.Names.GREG_TECH, + clientSide = "gregtech.common.GT_Client", + serverSide = "gregtech.common.GT_Server") public static GT_Proxy gregtechproxy; public static int MAX_IC2 = 2147483647; @@ -331,7 +334,7 @@ public class GT_Mod implements IGT_Mod { gregtechproxy.registerUnificationEntries(); new GT_FuelLoader().run(); } - if (ModIDs.Waila.isModLoaded()) { + if (Mods.Waila.isModLoaded()) { Waila.init(); } IMCForNEI.IMCSender(); diff --git a/src/main/java/gregtech/api/GregTech_API.java b/src/main/java/gregtech/api/GregTech_API.java index 7a8b495a4b..59fa6776c3 100644 --- a/src/main/java/gregtech/api/GregTech_API.java +++ b/src/main/java/gregtech/api/GregTech_API.java @@ -3,7 +3,7 @@ package gregtech.api; import static gregtech.api.enums.GT_Values.B; import static gregtech.api.enums.GT_Values.L; import static gregtech.api.enums.GT_Values.M; -import static gregtech.api.enums.ModIDs.IndustrialCraft2; +import static gregtech.api.enums.Mods.IndustrialCraft2; import java.util.*; import java.util.concurrent.ConcurrentHashMap; @@ -285,7 +285,7 @@ public class GregTech_API { public static boolean mUseOnlyGoodSolderingMaterials = false; - private static final String aTextIC2Lower = IndustrialCraft2.modID.toLowerCase(Locale.ENGLISH); + private static final String aTextIC2Lower = IndustrialCraft2.ID.toLowerCase(Locale.ENGLISH); /** * Getting assigned by the Mod loading */ diff --git a/src/main/java/gregtech/api/enums/GT_Values.java b/src/main/java/gregtech/api/enums/GT_Values.java index 1a9422f374..e1f4efaca2 100644 --- a/src/main/java/gregtech/api/enums/GT_Values.java +++ b/src/main/java/gregtech/api/enums/GT_Values.java @@ -1,6 +1,7 @@ package gregtech.api.enums; -import static gregtech.api.enums.ModIDs.IndustrialCraft2; +import static gregtech.api.enums.Mods.GregTech; +import static gregtech.api.enums.Mods.IndustrialCraft2; import java.math.BigInteger; import java.util.*; @@ -190,27 +191,93 @@ public class GT_Values { /** * MOD ID Strings, since they are very common Parameters. */ - public static final String MOD_ID = "gregtech", MOD_ID_IC2 = "IC2", MOD_ID_NC = "IC2NuclearControl", - MOD_ID_TC = "Thaumcraft", MOD_ID_TF = "TwilightForest", MOD_ID_RC = "Railcraft", - MOD_ID_TE = "ThermalExpansion", MOD_ID_AE = "appliedenergistics2", MOD_ID_TFC = "terrafirmacraft", - MOD_ID_PFAA = "PFAAGeologica", MOD_ID_FR = "Forestry", MOD_ID_HaC = "harvestcraft", - MOD_ID_APC = "AppleCore", MOD_ID_MaCr = "magicalcrops", MOD_ID_GaEn = "ganysend", - MOD_ID_GaSu = "ganyssurface", MOD_ID_GaNe = "ganysnether", MOD_ID_BC_SILICON = "BuildCraft|Silicon", - MOD_ID_BC_TRANSPORT = "BuildCraft|Transport", MOD_ID_BC_FACTORY = "BuildCraft|Factory", - MOD_ID_BC_ENERGY = "BuildCraft|Energy", MOD_ID_BC_BUILDERS = "BuildCraft|Builders", - MOD_ID_BC_CORE = "BuildCraft|Core", MOD_ID_GC_CORE = "GalacticraftCore", - MOD_ID_GC_MARS = "GalacticraftMars", MOD_ID_GC_PLANETS = "GalacticraftPlanets", MOD_ID_DC = "dreamcraft", - MOD_ID_GTPP = "miscutils"; + @Deprecated + public static final String MOD_ID = "gregtech"; + @Deprecated + public static final String MOD_ID_IC2 = "IC2"; + @Deprecated + public static final String MOD_ID_NC = "IC2NuclearControl"; + @Deprecated + public static final String MOD_ID_TC = "Thaumcraft"; + @Deprecated + public static final String MOD_ID_TF = "TwilightForest"; + @Deprecated + public static final String MOD_ID_RC = "Railcraft"; + @Deprecated + public static final String MOD_ID_TE = "ThermalExpansion"; + @Deprecated + public static final String MOD_ID_AE = "appliedenergistics2"; + @Deprecated + public static final String MOD_ID_TFC = "terrafirmacraft"; + @Deprecated + public static final String MOD_ID_PFAA = "PFAAGeologica"; + @Deprecated + public static final String MOD_ID_FR = "Forestry"; + @Deprecated + public static final String MOD_ID_HaC = "harvestcraft"; + @Deprecated + public static final String MOD_ID_APC = "AppleCore"; + @Deprecated + public static final String MOD_ID_MaCr = "magicalcrops"; + @Deprecated + public static final String MOD_ID_GaEn = "ganysend"; + @Deprecated + public static final String MOD_ID_GaSu = "ganyssurface"; + @Deprecated + public static final String MOD_ID_GaNe = "ganysnether"; + @Deprecated + public static final String MOD_ID_BC_SILICON = "BuildCraft|Silicon"; + @Deprecated + public static final String MOD_ID_BC_TRANSPORT = "BuildCraft|Transport"; + @Deprecated + public static final String MOD_ID_BC_FACTORY = "BuildCraft|Factory"; + @Deprecated + public static final String MOD_ID_BC_ENERGY = "BuildCraft|Energy"; + @Deprecated + public static final String MOD_ID_BC_BUILDERS = "BuildCraft|Builders"; + @Deprecated + public static final String MOD_ID_BC_CORE = "BuildCraft|Core"; + @Deprecated + public static final String MOD_ID_GC_CORE = "GalacticraftCore"; + @Deprecated + public static final String MOD_ID_GC_MARS = "GalacticraftMars"; + @Deprecated + public static final String MOD_ID_GC_PLANETS = "GalacticraftPlanets"; + @Deprecated + public static final String MOD_ID_DC = "dreamcraft"; + @Deprecated + public static final String MOD_ID_GTPP = "miscutils"; /** * File Paths and Resource Paths */ - public static final String TEX_DIR = "textures/", TEX_DIR_GUI = TEX_DIR + "gui/", TEX_DIR_ITEM = TEX_DIR + "items/", - TEX_DIR_BLOCK = TEX_DIR + "blocks/", TEX_DIR_ENTITY = TEX_DIR + "entity/", - TEX_DIR_ASPECTS = TEX_DIR + "aspects/", RES_PATH = MOD_ID + ":" + TEX_DIR, - RES_PATH_GUI = MOD_ID + ":" + TEX_DIR_GUI, RES_PATH_ITEM = MOD_ID + ":", RES_PATH_BLOCK = MOD_ID + ":", - RES_PATH_ENTITY = MOD_ID + ":" + TEX_DIR_ENTITY, RES_PATH_ASPECTS = MOD_ID + ":" + TEX_DIR_ASPECTS, - RES_PATH_IC2 = IndustrialCraft2.modID.toLowerCase(Locale.ENGLISH) + ":", - RES_PATH_MODEL = MOD_ID + ":" + TEX_DIR + "models/"; + @Deprecated + public static final String TEX_DIR = "textures/"; + @Deprecated + public static final String TEX_DIR_GUI = TEX_DIR + "gui/"; + @Deprecated + public static final String TEX_DIR_ITEM = TEX_DIR + "items/"; + @Deprecated + public static final String TEX_DIR_BLOCK = TEX_DIR + "blocks/"; + @Deprecated + public static final String TEX_DIR_ENTITY = TEX_DIR + "entity/"; + @Deprecated + public static final String TEX_DIR_ASPECTS = TEX_DIR + "aspects/"; + @Deprecated + public static final String RES_PATH = GregTech.getResourcePath(TEX_DIR); + @Deprecated + public static final String RES_PATH_GUI = GregTech.getResourcePath("textures", "gui/"); + @Deprecated + public static final String RES_PATH_ITEM = GregTech.getResourcePath(); + @Deprecated + public static final String RES_PATH_BLOCK = GregTech.getResourcePath(); + @Deprecated + public static final String RES_PATH_ENTITY = GregTech.getResourcePath("textures", "entity/"); + @Deprecated + public static final String RES_PATH_ASPECTS = GregTech.getResourcePath("textures", "aspects/"); + @Deprecated + public static final String RES_PATH_MODEL = GregTech.getResourcePath("textures", "models/"); + @Deprecated + public static final String RES_PATH_IC2 = IndustrialCraft2.getResourcePath(); /** * NBT String Keys diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index c64b7a6d14..a96876bc7f 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -2,8 +2,8 @@ package gregtech.api.enums; import static gregtech.api.enums.FluidState.GAS; import static gregtech.api.enums.GT_Values.M; -import static gregtech.api.enums.ModIDs.NewHorizonsCoreMod; -import static gregtech.api.enums.ModIDs.Thaumcraft; +import static gregtech.api.enums.Mods.NewHorizonsCoreMod; +import static gregtech.api.enums.Mods.Thaumcraft; import java.util.*; import java.util.stream.Collectors; diff --git a/src/main/java/gregtech/api/enums/ModIDs.java b/src/main/java/gregtech/api/enums/ModIDs.java deleted file mode 100644 index 16c03e3ae5..0000000000 --- a/src/main/java/gregtech/api/enums/ModIDs.java +++ /dev/null @@ -1,84 +0,0 @@ -package gregtech.api.enums; - -import cpw.mods.fml.common.Loader; - -public enum ModIDs { - - AdvancedSolarPanel("AdvancedSolarPanel"), - AE2FluidCraft("ae2fc"), - AppleCore("AppleCore"), - AppliedEnergistics2("appliedenergistics2"), - Avaritia("Avaritia"), - AvaritiaAddons("avaritiaddons"), - BartWorks("bartworks"), - BetterLoadingScreen("betterloadingscreen"), - BiomesOPlanty("BiomesOPlenty"), - BuildCraftFactory("BuildCraft|Factory"), - BuildCraftSilicon("BuildCraft|Silicon"), - BuildCraftTransport("BuildCraft|Transport"), - Computronics("computronics"), - CraftTweaker("MineTweaker3"), - EnderIO("EnderIO"), - EnderStorage("EnderStorage"), - EternalSingularity("eternalsingularity"), - ExtraCells2("extracells"), - ExtraUtilities("ExtraUtilities"), - ForbiddenMagic("ForbiddenMagic"), - Forestry("Forestry"), - GalacticraftCore("GalacticraftCore"), - GalacticraftMars("GalacticraftMars"), - GalaxySpace("GalaxySpace"), - Gendustry("gendustry"), - GoodGenerator("GoodGenerator"), - GregTech("gregtech"), - GraviSuite("GraviSuite"), - GTNHLanthanides("gtnhlanth"), - GTPlusPlus("miscutils"), - PamsHarvestCraft("harvestcraft"), - HardcoreEnderExpansion("HardcoreEnderExpansion"), - HodgePodge("hodgepodge"), - IC2CropPlugin("Ic2Nei"), - IC2NuclearControl("IC2NuclearControl"), - IguanaTweaksTinkerConstruct("IguanaTweaksTConstruct"), - IndustrialCraft2("IC2"), - IronChests("IronChest"), - IronTanks("irontank"), - Minecraft("minecraft"), - Natura("Natura"), - NEICustomDiagrams("neicustomdiagram"), - NewHorizonsCoreMod("dreamcraft"), - NotEnoughItems("NotEnoughItems"), - OpenComputers("OpenComputers"), - ProjectRedCore("ProjRed|Core"), - Railcraft("Railcraft"), - TaintedMagic("TaintedMagic"), - Thaumcraft("Thaumcraft"), - ThaumicBases("thaumicbases"), - ThaumicTinkerer("ThaumicTinkerer"), - TinkerConstruct("TConstruct"), - TinkersGregworks("TGregworks"), - Translocator("Translocator"), - TwilightForest("TwilightForest"), - Waila("Waila"), - // Do we keep compat of those? - IndustrialCraft2Classic("IC2-Classic-Spmod"), - Metallurgy("Metallurgy"), - RotaryCraft("RotaryCraft"), - ThermalExpansion("ThermalExpansion"), - ThermalFondation("ThermalFoundation"), - UndergroundBiomes("UndergroundBiomes"); - - public final String modID; - private Boolean modLoaded; - - ModIDs(String modID) { - this.modID = modID; - } - - public boolean isModLoaded() { - if (this.modLoaded == null) { - this.modLoaded = Loader.isModLoaded(modID); - } - return this.modLoaded; - } -} diff --git a/src/main/java/gregtech/api/enums/Mods.java b/src/main/java/gregtech/api/enums/Mods.java new file mode 100644 index 0000000000..723fb1bda8 --- /dev/null +++ b/src/main/java/gregtech/api/enums/Mods.java @@ -0,0 +1,291 @@ +package gregtech.api.enums; + +import java.util.Locale; + +import net.minecraft.util.ResourceLocation; + +import cpw.mods.fml.common.Loader; + +public enum Mods { + + AdvancedSolarPanel(Names.ADVANCED_SOLAR_PANEL), + AdventureBackpack(Names.ADVENTURE_BACKPACK), + AE2FluidCraft(Names.A_E2_FLUID_CRAFT), + AFSU(Names.A_F_S_U), + AppleCore(Names.APPLE_CORE), + AppliedEnergistics2(Names.APPLIED_ENERGISTICS2), + ArchitectureCraft(Names.ARCHITECTURE_CRAFT), + Aroma1997Core(Names.AROMA1997_CORE), + Avaritia(Names.AVARITIA), + AvaritiaAddons(Names.AVARITIA_ADDONS), + Backpack(Names.BACKPACK), + BartWorks(Names.BART_WORKS), + Baubles(Names.BAUBLES), + BetterLoadingScreen(Names.BETTER_LOADING_SCREEN), + BetterQuesting(Names.BETTER_QUESTING), + BiblioCraft(Names.BIBLIO_CRAFT), + BiblioWoodsBoPEdition(Names.BIBLIO_WOODS_BO_P_EDITION), + BiblioWoodsForestryEdition(Names.BIBLIO_WOODS_FORESTRY_EDITION), + BiblioWoodsNaturaEdition(Names.BIBLIO_WOODS_NATURA_EDITION), + BiomesOPlenty(Names.BIOMES_O_PLENTY), + BloodArsenal(Names.BLOOD_ARSENAL), + BloodMagic(Names.BLOOD_MAGIC), + Botania(Names.BOTANIA), + Botany(Names.BOTANY), + BuildCraftCore(Names.BUILD_CRAFT_CORE), + BuildCraftFactory(Names.BUILD_CRAFT_FACTORY), + BuildCraftSilicon(Names.BUILD_CRAFT_SILICON), + BuildCraftTransport(Names.BUILD_CRAFT_TRANSPORT), + Chisel(Names.CHISEL), + Computronics(Names.COMPUTRONICS), + CraftTweaker(Names.CRAFT_TWEAKER), + CropsPlusPlus(Names.CROPS_PLUS_PLUS), + DraconicEvolution(Names.DRACONIC_EVOLUTION), + ElectroMagicTools(Names.ELECTRO_MAGIC_TOOLS), + EnderIO(Names.ENDER_I_O), + EnderStorage(Names.ENDER_STORAGE), + EnderZoo(Names.ENDER_ZOO), + EternalSingularity(Names.ETERNAL_SINGULARITY), + ExtraBees(Names.EXTRA_BEES), + ExtraCells2(Names.EXTRA_CELLS2), + ExtraTrees(Names.EXTRA_TREES), + ExtraUtilities(Names.EXTRA_UTILITIES), + FloodLights(Names.FLOOD_LIGHTS), + ForbiddenMagic(Names.FORBIDDEN_MAGIC), + Forestry(Names.FORESTRY), + ForgeMicroblocks(Names.FORGE_MICROBLOCKS), + ForgeRelocation(Names.FORGE_RELOCATION), + Gadomancy(Names.GADOMANCY), + GalacticraftCore(Names.GALACTICRAFT_CORE), + GalacticraftMars(Names.GALACTICRAFT_MARS), + GalactiGreg(Names.GALACTI_GREG), + GalaxySpace(Names.GALAXY_SPACE), + Gendustry(Names.GENDUSTRY), + Genetics(Names.GENETICS), + GoodGenerator(Names.GOOD_GENERATOR), + GraviSuite(Names.GRAVI_SUITE), + GregTech(Names.GREG_TECH), + GTNHLanthanides(Names.G_T_N_H_LANTHANIDES), + GTPlusPlus(Names.G_T_PLUS_PLUS), + HardcoreEnderExpansion(Names.HARDCORE_ENDER_EXPANSION), + HodgePodge(Names.HODGE_PODGE), + HoloInventory(Names.HOLO_INVENTORY), + IC2CropPlugin(Names.I_C2_CROP_PLUGIN), + IC2NuclearControl(Names.I_C2_NUCLEAR_CONTROL), + IguanaTweaksTinkerConstruct(Names.IGUANA_TWEAKS_TINKER_CONSTRUCT), + IndustrialCraft2(Names.INDUSTRIAL_CRAFT2), + IronChests(Names.IRON_CHESTS), + IronTanks(Names.IRON_TANKS), + JABBA(Names.J_A_B_B_A), + MagicBees(Names.MAGIC_BEES), + MalisisDoors(Names.MALISIS_DOORS), + Mantle(Names.MANTLE), + MineAndBladeBattleGear2(Names.MINE_AND_BLADE_BATTLE_GEAR2), + Minecraft(Names.MINECRAFT), + Natura(Names.NATURA), + NaturesCompass(Names.NATURES_COMPASS), + NEICustomDiagrams(Names.N_E_I_CUSTOM_DIAGRAMS), + NEIOrePlugin(Names.N_E_I_ORE_PLUGIN), + NewHorizonsCoreMod(Names.NEW_HORIZONS_CORE_MOD), + NotEnoughItems(Names.NOT_ENOUGH_ITEMS), + OpenBlocks(Names.OPEN_BLOCKS), + OpenComputers(Names.OPEN_COMPUTERS), + OpenGlasses(Names.OPEN_GLASSES), + OpenModularTurrets(Names.OPEN_MODULAR_TURRETS), + OpenPrinters(Names.OPEN_PRINTERS), + OpenSecurity(Names.OPEN_SECURITY), + PamsHarvestCraft(Names.PAMS_HARVEST_CRAFT), + PamsHarvestTheNether(Names.PAMS_HARVEST_THE_NETHER), + ProjectRedCore(Names.PROJECT_RED_CORE), + ProjectRedIllumination(Names.PROJECT_RED_ILLUMINATION), + Railcraft(Names.RAILCRAFT), + RandomThings(Names.RANDOM_THINGS), + SGCraft(Names.S_G_CRAFT), + SleepingBags(Names.SLEEPING_BAGS), + SpiceOfLife(Names.SPICE_OF_LIFE), + StevesCarts2(Names.STEVES_CARTS2), + SuperSolarPanels(Names.SUPER_SOLAR_PANELS), + TaintedMagic(Names.TAINTED_MAGIC), + Thaumcraft(Names.THAUMCRAFT), + ThaumicBases(Names.THAUMIC_BASES), + ThaumicEnergistics(Names.THAUMIC_ENERGISTICS), + ThaumicHorizons(Names.THAUMIC_HORIZONS), + ThaumicMachina(Names.THAUMIC_MACHINA), + ThaumicTinkerer(Names.THAUMIC_TINKERER), + TinkerConstruct(Names.TINKER_CONSTRUCT), + TinkersGregworks(Names.TINKERS_GREGWORKS), + Translocator(Names.TRANSLOCATOR), + TravellersGear(Names.TRAVELLERS_GEAR), + TwilightForest(Names.TWILIGHT_FOREST), + Waila(Names.WAILA), + WarpTheory(Names.WARP_THEORY), + Witchery(Names.WITCHERY), + WitchingGadgets(Names.WITCHING_GADGETS), + ZTones(Names.Z_TONES), + + // Do we keep compat of those? + ArsMagica2(Names.ARS_MAGICA2), + GanysSurface(Names.GANYS_SURFACE), + IndustrialCraft2Classic(Names.INDUSTRIAL_CRAFT2_CLASSIC), + MagicalCrops(Names.MAGICAL_CROPS), + Metallurgy(Names.METALLURGY), + RotaryCraft(Names.ROTARY_CRAFT), + ThermalExpansion(Names.THERMAL_EXPANSION), + ThermalFondation(Names.THERMAL_FONDATION), + UndergroundBiomes(Names.UNDERGROUND_BIOMES); + + public static class Names { + + public static final String ADVANCED_SOLAR_PANEL = "AdvancedSolarPanel"; + public static final String ADVENTURE_BACKPACK = "adventurebackpack"; + public static final String A_E2_FLUID_CRAFT = "ae2fc"; + public static final String A_F_S_U = "AFSU"; + public static final String APPLE_CORE = "AppleCore"; + public static final String APPLIED_ENERGISTICS2 = "appliedenergistics2"; + public static final String ARCHITECTURE_CRAFT = "ArchitectureCraft"; + public static final String AROMA1997_CORE = "Aroma1997Core"; + public static final String AVARITIA = "Avaritia"; + public static final String AVARITIA_ADDONS = "avaritiaddons"; + public static final String BACKPACK = "Backpack"; + public static final String BART_WORKS = "bartworks"; + public static final String BAUBLES = "Baubles"; + public static final String BETTER_LOADING_SCREEN = "betterloadingscreen"; + public static final String BETTER_QUESTING = "betterquesting"; + public static final String BIBLIO_CRAFT = "BiblioCraft"; + public static final String BIBLIO_WOODS_BO_P_EDITION = "BiblioWoodsBoP"; + public static final String BIBLIO_WOODS_FORESTRY_EDITION = "BiblioWoodsForestry"; + public static final String BIBLIO_WOODS_NATURA_EDITION = "BiblioWoodsNatura"; + public static final String BIOMES_O_PLENTY = "BiomesOPlenty"; + public static final String BLOOD_ARSENAL = "BloodArsenal"; + public static final String BLOOD_MAGIC = "AWWayofTime"; + public static final String BOTANIA = "Botania"; + public static final String BOTANY = "Botany"; + public static final String BUILD_CRAFT_CORE = "BuildCraft|Core"; + public static final String BUILD_CRAFT_FACTORY = "BuildCraft|Factory"; + public static final String BUILD_CRAFT_SILICON = "BuildCraft|Silicon"; + public static final String BUILD_CRAFT_TRANSPORT = "BuildCraft|Transport"; + public static final String CHISEL = "chisel"; + public static final String COMPUTRONICS = "computronics"; + public static final String CRAFT_TWEAKER = "MineTweaker3"; + public static final String CROPS_PLUS_PLUS = "berriespp"; + public static final String DRACONIC_EVOLUTION = "DraconicEvolution"; + public static final String ELECTRO_MAGIC_TOOLS = "EMT"; + public static final String ENDER_I_O = "EnderIO"; + public static final String ENDER_STORAGE = "EnderStorage"; + public static final String ENDER_ZOO = "EnderZoo"; + public static final String ETERNAL_SINGULARITY = "eternalsingularity"; + public static final String EXTRA_BEES = "ExtraBees"; + public static final String EXTRA_CELLS2 = "extracells"; + public static final String EXTRA_TREES = "ExtraTrees"; + public static final String EXTRA_UTILITIES = "ExtraUtilities"; + public static final String FLOOD_LIGHTS = "FloodLights"; + public static final String FORBIDDEN_MAGIC = "ForbiddenMagic"; + public static final String FORESTRY = "Forestry"; + public static final String FORGE_MICROBLOCKS = "ForgeMicroblock"; + public static final String FORGE_RELOCATION = "ForgeRelocation"; + public static final String GADOMANCY = "gadomancy"; + public static final String GALACTICRAFT_CORE = "GalacticraftCore"; + public static final String GALACTICRAFT_MARS = "GalacticraftMars"; + public static final String GALACTI_GREG = "galacticgreg"; + public static final String GALAXY_SPACE = "GalaxySpace"; + public static final String GENDUSTRY = "gendustry"; + public static final String GENETICS = "Genetics"; + public static final String GOOD_GENERATOR = "GoodGenerator"; + public static final String GRAVI_SUITE = "GraviSuite"; + public static final String GREG_TECH = "gregtech"; + public static final String G_T_N_H_LANTHANIDES = "gtnhlanth"; + public static final String G_T_PLUS_PLUS = "miscutils"; + public static final String HARDCORE_ENDER_EXPANSION = "HardcoreEnderExpansion"; + public static final String HODGE_PODGE = "hodgepodge"; + public static final String HOLO_INVENTORY = "holoinventory"; + public static final String I_C2_CROP_PLUGIN = "Ic2Nei"; + public static final String I_C2_NUCLEAR_CONTROL = "IC2NuclearControl"; + public static final String IGUANA_TWEAKS_TINKER_CONSTRUCT = "IguanaTweaksTConstruct"; + public static final String INDUSTRIAL_CRAFT2 = "IC2"; + public static final String IRON_CHESTS = "IronChest"; + public static final String IRON_TANKS = "irontank"; + public static final String J_A_B_B_A = "JABBA"; + public static final String MAGIC_BEES = "MagicBees"; + public static final String MALISIS_DOORS = "malisisdoors"; + public static final String MANTLE = "Mantle"; + public static final String MINE_AND_BLADE_BATTLE_GEAR2 = "battlegear2"; + public static final String MINECRAFT = "minecraft"; + public static final String NATURA = "Natura"; + public static final String NATURES_COMPASS = "naturescompass"; + public static final String N_E_I_CUSTOM_DIAGRAMS = "neicustomdiagram"; + public static final String N_E_I_ORE_PLUGIN = "gtneioreplugin"; + public static final String NEW_HORIZONS_CORE_MOD = "dreamcraft"; + public static final String NOT_ENOUGH_ITEMS = "NotEnoughItems"; + public static final String OPEN_BLOCKS = "OpenBlocks"; + public static final String OPEN_COMPUTERS = "OpenComputers"; + public static final String OPEN_GLASSES = "openglasses"; + public static final String OPEN_MODULAR_TURRETS = "openmodularturrets"; + public static final String OPEN_PRINTERS = "openprinter"; + public static final String OPEN_SECURITY = "opensecurity"; + public static final String PAMS_HARVEST_CRAFT = "harvestcraft"; + public static final String PAMS_HARVEST_THE_NETHER = "harvestthenether"; + public static final String PROJECT_RED_CORE = "ProjRed|Core"; + public static final String PROJECT_RED_ILLUMINATION = "ProjRed|Illumination"; + public static final String RAILCRAFT = "Railcraft"; + public static final String RANDOM_THINGS = "RandomThings"; + public static final String S_G_CRAFT = "SGCraft"; + public static final String SLEEPING_BAGS = "sleepingbag"; + public static final String SPICE_OF_LIFE = "SpiceOfLife"; + public static final String STEVES_CARTS2 = "StevesCarts"; + public static final String SUPER_SOLAR_PANELS = "supersolarpanel"; + public static final String TAINTED_MAGIC = "TaintedMagic"; + public static final String THAUMCRAFT = "Thaumcraft"; + public static final String THAUMIC_BASES = "thaumicbases"; + public static final String THAUMIC_ENERGISTICS = "thaumicenergistics"; + public static final String THAUMIC_HORIZONS = "ThaumicHorizons"; + public static final String THAUMIC_MACHINA = "ThaumicMachina"; + public static final String THAUMIC_TINKERER = "ThaumicTinkerer"; + public static final String TINKER_CONSTRUCT = "TConstruct"; + public static final String TINKERS_GREGWORKS = "TGregworks"; + public static final String TRANSLOCATOR = "Translocator"; + public static final String TRAVELLERS_GEAR = "TravellersGear"; + public static final String TWILIGHT_FOREST = "TwilightForest"; + public static final String WAILA = "Waila"; + public static final String WARP_THEORY = "WarpTheory"; + public static final String WITCHERY = "witchery"; + public static final String WITCHING_GADGETS = "WitchingGadgets"; + public static final String Z_TONES = "Ztones"; + + // Do we keep compat of those mods? + public static final String ARS_MAGICA2 = "arsmagica2"; + public static final String GANYS_SURFACE = "ganyssurface"; + public static final String INDUSTRIAL_CRAFT2_CLASSIC = "IC2-Classic-Spmod"; + public static final String MAGICAL_CROPS = "magicalcrops"; + public static final String METALLURGY = "Metallurgy"; + public static final String ROTARY_CRAFT = "RotaryCraft"; + public static final String THERMAL_EXPANSION = "ThermalExpansion"; + public static final String THERMAL_FONDATION = "ThermalFoundation"; + public static final String UNDERGROUND_BIOMES = "UndergroundBiomes"; + + } + + public final String ID; + public final String resourceDomain; + private Boolean modLoaded; + + Mods(String ID) { + this.ID = ID; + this.resourceDomain = ID.toLowerCase(Locale.ENGLISH); + } + + public boolean isModLoaded() { + if (this.modLoaded == null) { + this.modLoaded = Loader.isModLoaded(ID); + } + return this.modLoaded; + } + + public String getResourcePath(String... path) { + return this.getResourceLocation(path) + .toString(); + } + + public ResourceLocation getResourceLocation(String... path) { + return new ResourceLocation(this.resourceDomain, String.join("/", path)); + } +} diff --git a/src/main/java/gregtech/api/enums/SoundResource.java b/src/main/java/gregtech/api/enums/SoundResource.java index a0c039e48e..5d24abaea0 100644 --- a/src/main/java/gregtech/api/enums/SoundResource.java +++ b/src/main/java/gregtech/api/enums/SoundResource.java @@ -1,7 +1,7 @@ package gregtech.api.enums; -import static gregtech.api.enums.GT_Values.MOD_ID; -import static gregtech.api.enums.ModIDs.IndustrialCraft2; +import static gregtech.api.enums.Mods.GregTech; +import static gregtech.api.enums.Mods.IndustrialCraft2; import java.util.EnumSet; import java.util.Locale; @@ -30,38 +30,38 @@ public enum SoundResource { RANDOM_EXPLODE(5, "random.explode"), FIRE_IGNITE(6, "fire.ignite"), - IC2_TOOLS_WRENCH(100, IndustrialCraft2.modID, "tools.Wrench"), - IC2_TOOLS_RUBBER_TRAMPOLINE(101, IndustrialCraft2.modID, "tools.RubberTrampoline"), - IC2_TOOLS_PAINTER(102, IndustrialCraft2.modID, "tools.Painter"), - IC2_TOOLS_BATTERY_USE(103, IndustrialCraft2.modID, "tools.BatteryUse"), - IC2_TOOLS_CHAINSAW_CHAINSAW_USE_ONE(104, IndustrialCraft2.modID, "tools.chainsaw.ChainsawUseOne"), - IC2_TOOLS_CHAINSAW_CHAINSAW_USE_TWO(105, IndustrialCraft2.modID, "tools.chainsaw.ChainsawUseTwo"), - IC2_TOOLS_DRILL_DRILL_SOFT(106, IndustrialCraft2.modID, "tools.drill.DrillSoft"), - IC2_TOOLS_DRILL_DRILL_HARD(107, IndustrialCraft2.modID, "tools.drill.DrillHard"), - IC2_TOOLS_OD_SCANNER(108, IndustrialCraft2.modID, "tools.ODScanner"), - IC2_TOOLS_INSULATION_CUTTERS(109, IndustrialCraft2.modID, "tools.InsulationCutters"), + IC2_TOOLS_WRENCH(100, IndustrialCraft2.ID, "tools.Wrench"), + IC2_TOOLS_RUBBER_TRAMPOLINE(101, IndustrialCraft2.ID, "tools.RubberTrampoline"), + IC2_TOOLS_PAINTER(102, IndustrialCraft2.ID, "tools.Painter"), + IC2_TOOLS_BATTERY_USE(103, IndustrialCraft2.ID, "tools.BatteryUse"), + IC2_TOOLS_CHAINSAW_CHAINSAW_USE_ONE(104, IndustrialCraft2.ID, "tools.chainsaw.ChainsawUseOne"), + IC2_TOOLS_CHAINSAW_CHAINSAW_USE_TWO(105, IndustrialCraft2.ID, "tools.chainsaw.ChainsawUseTwo"), + IC2_TOOLS_DRILL_DRILL_SOFT(106, IndustrialCraft2.ID, "tools.drill.DrillSoft"), + IC2_TOOLS_DRILL_DRILL_HARD(107, IndustrialCraft2.ID, "tools.drill.DrillHard"), + IC2_TOOLS_OD_SCANNER(108, IndustrialCraft2.ID, "tools.ODScanner"), + IC2_TOOLS_INSULATION_CUTTERS(109, IndustrialCraft2.ID, "tools.InsulationCutters"), - IC2_MACHINES_EXTRACTOR_OP(200, IndustrialCraft2.modID, "machines.ExtractorOp"), - IC2_MACHINES_MACERATOR_OP(201, IndustrialCraft2.modID, "machines.MaceratorOp"), - IC2_MACHINES_INDUCTION_LOOP(202, IndustrialCraft2.modID, "machines.InductionLoop"), - IC2_MACHINES_COMPRESSOR_OP(203, IndustrialCraft2.modID, "machines.CompressorOp"), - IC2_MACHINES_RECYCLER_OP(204, IndustrialCraft2.modID, "machines.RecyclerOp"), - IC2_MACHINES_MINER_OP(205, IndustrialCraft2.modID, "machines.MinerOp"), - IC2_MACHINES_PUMP_OP(206, IndustrialCraft2.modID, "machines.PumpOp"), - IC2_MACHINES_ELECTROFURNACE_LOOP(207, IndustrialCraft2.modID, "machines.ElectroFurnaceLoop"), + IC2_MACHINES_EXTRACTOR_OP(200, IndustrialCraft2.ID, "machines.ExtractorOp"), + IC2_MACHINES_MACERATOR_OP(201, IndustrialCraft2.ID, "machines.MaceratorOp"), + IC2_MACHINES_INDUCTION_LOOP(202, IndustrialCraft2.ID, "machines.InductionLoop"), + IC2_MACHINES_COMPRESSOR_OP(203, IndustrialCraft2.ID, "machines.CompressorOp"), + IC2_MACHINES_RECYCLER_OP(204, IndustrialCraft2.ID, "machines.RecyclerOp"), + IC2_MACHINES_MINER_OP(205, IndustrialCraft2.ID, "machines.MinerOp"), + IC2_MACHINES_PUMP_OP(206, IndustrialCraft2.ID, "machines.PumpOp"), + IC2_MACHINES_ELECTROFURNACE_LOOP(207, IndustrialCraft2.ID, "machines.ElectroFurnaceLoop"), @Deprecated - DEPRECATED_DUPE_OF_IC2_MACHINES_INDUCTION_LOOP(208, IndustrialCraft2.modID, "machines.InductionLoop"), - IC2_MACHINES_MACHINE_OVERLOAD(209, IndustrialCraft2.modID, "machines.MachineOverload"), - IC2_MACHINES_INTERRUPT_ONE(210, IndustrialCraft2.modID, "machines.InterruptOne"), - IC2_MACHINES_KA_CHING(211, IndustrialCraft2.modID, "machines.KaChing"), - IC2_MACHINES_MAGNETIZER_LOOP(212, IndustrialCraft2.modID, "machines.MagnetizerLoop"), + DEPRECATED_DUPE_OF_IC2_MACHINES_INDUCTION_LOOP(208, IndustrialCraft2.ID, "machines.InductionLoop"), + IC2_MACHINES_MACHINE_OVERLOAD(209, IndustrialCraft2.ID, "machines.MachineOverload"), + IC2_MACHINES_INTERRUPT_ONE(210, IndustrialCraft2.ID, "machines.InterruptOne"), + IC2_MACHINES_KA_CHING(211, IndustrialCraft2.ID, "machines.KaChing"), + IC2_MACHINES_MAGNETIZER_LOOP(212, IndustrialCraft2.ID, "machines.MagnetizerLoop"), - GT_MACHINES_FUSION_LOOP(230, MOD_ID, "machines.FusionLoop"), - GT_MACHINES_DISTILLERY_LOOP(231, MOD_ID, "machines.DistilleryLoop"), - GT_MACHINES_PLASMAFORGE_LOOP(232, MOD_ID, "machines.PlasmaForgeLoop"), + GT_MACHINES_FUSION_LOOP(230, GregTech.ID, "machines.FusionLoop"), + GT_MACHINES_DISTILLERY_LOOP(231, GregTech.ID, "machines.DistilleryLoop"), + GT_MACHINES_PLASMAFORGE_LOOP(232, GregTech.ID, "machines.PlasmaForgeLoop"), - GUI_BUTTON_DOWN(-1, MOD_ID, "gui.buttonDown"), - GUI_BUTTON_UP(-1, MOD_ID, "gui.buttonUp"), + GUI_BUTTON_DOWN(-1, GregTech.ID, "gui.buttonDown"), + GUI_BUTTON_UP(-1, GregTech.ID, "gui.buttonUp"), /* * Other Minecraft Sounds that were missing diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java index b2a3090a14..f554ee852c 100644 --- a/src/main/java/gregtech/api/enums/Textures.java +++ b/src/main/java/gregtech/api/enums/Textures.java @@ -1,7 +1,6 @@ package gregtech.api.enums; -import static gregtech.api.enums.GT_Values.RES_PATH_BLOCK; -import static gregtech.api.enums.GT_Values.RES_PATH_ITEM; +import static gregtech.api.enums.Mods.GregTech; import java.util.HashMap; import java.util.Map; @@ -1727,7 +1726,7 @@ public class Textures { @Override public void run() { - mIcon = GregTech_API.sBlockIcons.registerIcon(RES_PATH_BLOCK + "iconsets/" + this); + mIcon = GregTech_API.sBlockIcons.registerIcon(GregTech.getResourcePath("iconsets", this.toString())); } public static class CustomIcon implements IIconContainer, Runnable { @@ -1736,7 +1735,7 @@ public class Textures { protected String mIconName; public CustomIcon(String aIconName) { - mIconName = !aIconName.contains(":") ? RES_PATH_BLOCK + aIconName : aIconName; + mIconName = !aIconName.contains(":") ? GregTech.getResourcePath(aIconName) : aIconName; GregTech_API.sGTBlockIconload.add(this); } @@ -1851,8 +1850,8 @@ public class Textures { @Override public void run() { - mIcon = GregTech_API.sItemIcons.registerIcon(RES_PATH_ITEM + "iconsets/" + this); - mOverlay = GregTech_API.sItemIcons.registerIcon(RES_PATH_ITEM + "iconsets/" + this + "_OVERLAY"); + mIcon = GregTech_API.sItemIcons.registerIcon(GregTech.getResourcePath("iconsets", this.toString())); + mOverlay = GregTech_API.sItemIcons.registerIcon(GregTech.getResourcePath("iconsets", this + "_OVERLAY")); } public static class CustomIcon implements IIconContainer, Runnable { @@ -1882,8 +1881,8 @@ public class Textures { @Override public void run() { - mIcon = GregTech_API.sItemIcons.registerIcon(RES_PATH_ITEM + mIconName); - mOverlay = GregTech_API.sItemIcons.registerIcon(RES_PATH_ITEM + mIconName + "_OVERLAY"); + mIcon = GregTech_API.sItemIcons.registerIcon(GregTech.getResourcePath(mIconName)); + mOverlay = GregTech_API.sItemIcons.registerIcon(GregTech.getResourcePath(mIconName + "_OVERLAY")); } } } diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java index b891ed177d..1d82fa8274 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java @@ -1,6 +1,6 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; import net.minecraft.entity.player.InventoryPlayer; @@ -13,13 +13,17 @@ public class GT_GUIContainer_1by1 extends GT_GUIContainerMetaTile_Machine { private final int textColor = this.getTextColorOrDefault("title", 0x404040); public GT_GUIContainer_1by1(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName) { - super(new GT_Container_1by1(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "1by1.png"); + super( + new GT_Container_1by1(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", "1by1.png")); mName = aName; } public GT_GUIContainer_1by1(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { - super(new GT_Container_1by1(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "1by1.png"); + super( + new GT_Container_1by1(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", aBackground + "1by1.png")); mName = aName; } diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java index a06d4a98d2..5d65ca1344 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java @@ -1,6 +1,6 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; import net.minecraft.entity.player.InventoryPlayer; @@ -13,13 +13,17 @@ public class GT_GUIContainer_2by2 extends GT_GUIContainerMetaTile_Machine { private final int textColor = this.getTextColorOrDefault("title", 0x404040); public GT_GUIContainer_2by2(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName) { - super(new GT_Container_2by2(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "2by2.png"); + super( + new GT_Container_2by2(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", "2by2.png")); mName = aName; } public GT_GUIContainer_2by2(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { - super(new GT_Container_2by2(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "2by2.png"); + super( + new GT_Container_2by2(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", aBackground + "2by2.png")); mName = aName; } diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java index 715be4fdea..2ba68decf6 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java @@ -1,6 +1,6 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; import net.minecraft.entity.player.InventoryPlayer; @@ -13,13 +13,17 @@ public class GT_GUIContainer_3by3 extends GT_GUIContainerMetaTile_Machine { private final int textColor = this.getTextColorOrDefault("title", 0x404040); public GT_GUIContainer_3by3(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName) { - super(new GT_Container_3by3(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "3by3.png"); + super( + new GT_Container_3by3(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", "3by3.png")); mName = aName; } public GT_GUIContainer_3by3(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { - super(new GT_Container_3by3(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "3by3.png"); + super( + new GT_Container_3by3(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", aBackground + "3by3.png")); mName = aName; } diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java index d091abfff6..f1933897c7 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java @@ -1,6 +1,6 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; import net.minecraft.entity.player.InventoryPlayer; @@ -13,13 +13,17 @@ public class GT_GUIContainer_4by4 extends GT_GUIContainerMetaTile_Machine { private final int textColor = this.getTextColorOrDefault("title", 0x404040); public GT_GUIContainer_4by4(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName) { - super(new GT_Container_4by4(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "4by4.png"); + super( + new GT_Container_4by4(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", "4by4.png")); mName = aName; } public GT_GUIContainer_4by4(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { - super(new GT_Container_4by4(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "4by4.png"); + super( + new GT_Container_4by4(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", aBackground + "4by4.png")); mName = aName; } diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java index eb0122093c..6e6ce4c1d0 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java @@ -1,8 +1,8 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; -import java.awt.Rectangle; +import java.awt.*; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.StatCollector; @@ -61,7 +61,7 @@ public class GT_GUIContainer_BasicMachine extends GT_GUIContainerMetaTile_Machin String aTextureFile, String aNEI, byte aProgressBarDirection, byte aProgressBarAmount) { super( new GT_Container_BasicMachine(aInventoryPlayer, aTileEntity), - RES_PATH_GUI + "basicmachines/" + aTextureFile); + GregTech.getResourcePath("textures", "gui", "basicmachines", aTextureFile)); mProgressBarDirection = aProgressBarDirection; mProgressBarAmount = (byte) Math.max(1, aProgressBarAmount); mName = aName; diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicTank.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicTank.java index 99478667ec..a8e965cf28 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicTank.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicTank.java @@ -1,6 +1,6 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.StatCollector; @@ -16,7 +16,9 @@ public class GT_GUIContainer_BasicTank extends GT_GUIContainerMetaTile_Machine { textColorValue = this.getTextColorOrDefault("value", 0xFAFAFF); public GT_GUIContainer_BasicTank(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName) { - super(new GT_Container_BasicTank(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "BasicTank.png"); + super( + new GT_Container_BasicTank(aInventoryPlayer, aTileEntity), + GregTech.getResourcePath("textures", "gui", "BasicTank.png")); mName = aName; } diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java index d9c971482c..8378c5e8cf 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java @@ -1,6 +1,6 @@ package gregtech.api.gui; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; +import static gregtech.api.enums.Mods.GregTech; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; @@ -28,7 +28,11 @@ public class GT_GUIContainer_MultiMachine extends GT_GUIContainerMetaTile_Machin String aTextureFile) { super( new GT_Container_MultiMachine(aInventoryPlayer, aTileEntity), - RES_PATH_GUI + "multimachines/" + (aTextureFile == null ? "MultiblockDisplay" : aTextureFile)); + GregTech.getResourcePath( + "textures", + "gui", + "multimachines", + aTextureFile == null ? "MultiblockDisplay" : aTextureFile)); mName = aName; } diff --git a/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java b/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java index 590b14af29..ff05f23d25 100644 --- a/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java +++ b/src/main/java/gregtech/api/gui/modularui/GT_UITextures.java @@ -1,5 +1,7 @@ package gregtech.api.gui.modularui; +import static gregtech.api.enums.Mods.GregTech; + import java.util.function.BiFunction; import java.util.stream.Collectors; import java.util.stream.IntStream; @@ -9,475 +11,553 @@ import com.gtnewhorizons.modularui.api.drawable.UITexture; public class GT_UITextures { - private static final String MODID = "gregtech"; - - public static final UITexture TRANSPARENT = UITexture.fullImage(MODID, "gui/picture/transparent"); + public static final UITexture TRANSPARENT = UITexture.fullImage(GregTech.ID, "gui/picture/transparent"); public static final AdaptableUITexture BACKGROUND_SINGLEBLOCK_DEFAULT = AdaptableUITexture.of( - MODID, + GregTech.ID, "gui/background/singleblock_default", 176, 166, 4); public static final SteamTexture BACKGROUND_STEAM = SteamTexture.adaptableTexture( - MODID, + GregTech.ID, "gui/background/%s", 176, 166, 4); public static final UITexture BACKGROUND_FUSION_COMPUTER = UITexture.fullImage( - MODID, + GregTech.ID, "gui/background/fusion_computer"); public static final AdaptableUITexture BACKGROUND_TEXT_FIELD = AdaptableUITexture.of( - MODID, + GregTech.ID, "gui/background/text_field", 142, 28, 1); public static final AdaptableUITexture BACKGROUND_TEXT_FIELD_LIGHT_GRAY = AdaptableUITexture.of( - MODID, + GregTech.ID, "gui/background/text_field_light_gray", 61, 12, 1); - public static final SteamTexture SLOT_ITEM_STEAM = SteamTexture.fullImage(MODID, "gui/slot/item_%s"); - public static final SteamTexture SLOT_FLUID_STEAM = SteamTexture.fullImage(MODID, "gui/slot/fluid_%s"); + public static final SteamTexture SLOT_ITEM_STEAM = SteamTexture.fullImage(GregTech.ID, "gui/slot/item_%s"); + public static final SteamTexture SLOT_FLUID_STEAM = SteamTexture.fullImage(GregTech.ID, "gui/slot/fluid_%s"); public static final AdaptableUITexture SLOT_DARK_GRAY = AdaptableUITexture.of( - MODID, + GregTech.ID, "gui/slot/dark_gray", 18, 18, 1); public static final AdaptableUITexture SLOT_MAINTENANCE = AdaptableUITexture.of( - MODID, + GregTech.ID, "gui/slot/maintenance", 20, 20, 1); - public static final AdaptableUITexture SLOT_UPLIFTED = AdaptableUITexture.of(MODID, "gui/slot/uplifted", 18, 18, 1); + public static final AdaptableUITexture SLOT_UPLIFTED = AdaptableUITexture.of( + GregTech.ID, + "gui/slot/uplifted", + 18, + 18, + 1); - public static final UITexture OVERLAY_SLOT_ARROW_ME = UITexture.fullImage(MODID, "gui/overlay_slot/arrow_me"); - public static final UITexture OVERLAY_SLOT_BEAKER_1 = UITexture.fullImage(MODID, "gui/overlay_slot/beaker_1"); - public static final UITexture OVERLAY_SLOT_BEAKER_2 = UITexture.fullImage(MODID, "gui/overlay_slot/beaker_2"); - public static final UITexture OVERLAY_SLOT_BEE_DRONE = UITexture.fullImage(MODID, "gui/overlay_slot/bee_drone"); - public static final UITexture OVERLAY_SLOT_BEE_QUEEN = UITexture.fullImage(MODID, "gui/overlay_slot/bee_queen"); - public static final UITexture OVERLAY_SLOT_BENDER = UITexture.fullImage(MODID, "gui/overlay_slot/bender"); - public static final UITexture OVERLAY_SLOT_BOX = UITexture.fullImage(MODID, "gui/overlay_slot/box"); - public static final UITexture OVERLAY_SLOT_BOXED = UITexture.fullImage(MODID, "gui/overlay_slot/boxed"); - public static final UITexture OVERLAY_SLOT_CANISTER = UITexture.fullImage(MODID, "gui/overlay_slot/canister"); + public static final UITexture OVERLAY_SLOT_ARROW_ME = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/arrow_me"); + public static final UITexture OVERLAY_SLOT_BEAKER_1 = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/beaker_1"); + public static final UITexture OVERLAY_SLOT_BEAKER_2 = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/beaker_2"); + public static final UITexture OVERLAY_SLOT_BEE_DRONE = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/bee_drone"); + public static final UITexture OVERLAY_SLOT_BEE_QUEEN = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/bee_queen"); + public static final UITexture OVERLAY_SLOT_BENDER = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/bender"); + public static final UITexture OVERLAY_SLOT_BOX = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/box"); + public static final UITexture OVERLAY_SLOT_BOXED = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/boxed"); + public static final UITexture OVERLAY_SLOT_CANISTER = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/canister"); public static final SteamTexture OVERLAY_SLOT_CANISTER_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/canister_%s"); - public static final UITexture OVERLAY_SLOT_CANNER = UITexture.fullImage(MODID, "gui/overlay_slot/canner"); - public static final UITexture OVERLAY_SLOT_CAULDRON = UITexture.fullImage(MODID, "gui/overlay_slot/cauldron"); - public static final UITexture OVERLAY_SLOT_CENTRIFUGE = UITexture.fullImage(MODID, "gui/overlay_slot/centrifuge"); + public static final UITexture OVERLAY_SLOT_CANNER = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/canner"); + public static final UITexture OVERLAY_SLOT_CAULDRON = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/cauldron"); + public static final UITexture OVERLAY_SLOT_CENTRIFUGE = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/centrifuge"); public static final UITexture OVERLAY_SLOT_CENTRIFUGE_FLUID = UITexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/centrifuge_fluid"); public static final SteamTexture OVERLAY_SLOT_CENTRIFUGE_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/centrifuge_%s"); - public static final UITexture OVERLAY_SLOT_CHARGER = UITexture.fullImage(MODID, "gui/overlay_slot/charger"); + public static final UITexture OVERLAY_SLOT_CHARGER = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/charger"); public static final UITexture OVERLAY_SLOT_CHARGER_FLUID = UITexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/charger_fluid"); - public static final UITexture OVERLAY_SLOT_CIRCUIT = UITexture.fullImage(MODID, "gui/overlay_slot/circuit"); + public static final UITexture OVERLAY_SLOT_CIRCUIT = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/circuit"); public static final SteamTexture OVERLAY_SLOT_COAL_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/coal_%s"); - public static final UITexture OVERLAY_SLOT_COMPRESSOR = UITexture.fullImage(MODID, "gui/overlay_slot/compressor"); + public static final UITexture OVERLAY_SLOT_COMPRESSOR = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/compressor"); public static final SteamTexture OVERLAY_SLOT_COMPRESSOR_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/compressor_%s"); - public static final UITexture OVERLAY_SLOT_CRUSHED_ORE = UITexture.fullImage(MODID, "gui/overlay_slot/crushed_ore"); + public static final UITexture OVERLAY_SLOT_CRUSHED_ORE = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/crushed_ore"); public static final SteamTexture OVERLAY_SLOT_CRUSHED_ORE_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/crushed_ore_%s"); public static final UITexture OVERLAY_SLOT_CUTTER_SLICED = UITexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/cutter_sliced"); - public static final UITexture OVERLAY_SLOT_DATA_ORB = UITexture.fullImage(MODID, "gui/overlay_slot/data_orb"); - public static final UITexture OVERLAY_SLOT_DATA_STICK = UITexture.fullImage(MODID, "gui/overlay_slot/data_stick"); - public static final UITexture OVERLAY_SLOT_DUST = UITexture.fullImage(MODID, "gui/overlay_slot/dust"); + public static final UITexture OVERLAY_SLOT_DATA_ORB = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/data_orb"); + public static final UITexture OVERLAY_SLOT_DATA_STICK = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/data_stick"); + public static final UITexture OVERLAY_SLOT_DUST = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/dust"); public static final SteamTexture OVERLAY_SLOT_DUST_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/dust_%s"); public static final SteamTexture OVERLAY_SLOT_BLOCK_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/block_%s"); - public static final UITexture OVERLAY_SLOT_EXPLOSIVE = UITexture.fullImage(MODID, "gui/overlay_slot/explosive"); + public static final UITexture OVERLAY_SLOT_EXPLOSIVE = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/explosive"); public static final UITexture OVERLAY_SLOT_EXTRUDER_SHAPE = UITexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/extruder_shape"); - public static final UITexture OVERLAY_SLOT_FURNACE = UITexture.fullImage(MODID, "gui/overlay_slot/furnace"); + public static final UITexture OVERLAY_SLOT_FURNACE = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/furnace"); public static final SteamTexture OVERLAY_SLOT_FURNACE_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/furnace_%s"); - public static final UITexture OVERLAY_SLOT_GEM = UITexture.fullImage(MODID, "gui/overlay_slot/gem"); - public static final UITexture OVERLAY_SLOT_HAMMER = UITexture.fullImage(MODID, "gui/overlay_slot/hammer"); + public static final UITexture OVERLAY_SLOT_GEM = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/gem"); + public static final UITexture OVERLAY_SLOT_HAMMER = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/hammer"); public static final SteamTexture OVERLAY_SLOT_HAMMER_STEAM = SteamTexture.fullImage( - MODID, + GregTech.ID, "gui/overlay_slot/hammer_%s"); - public static final UITexture OVERLAY_SLOT_HEATER_1 = UITexture.fullImage(MODID, "gui/overlay_slot/heater_1"); - public static final UITexture OVERLAY_SLOT_HEATER_2 = UITexture.fullImage(MODID, "gui/overlay_slot/heater_2"); - public static final UITexture OVERLAY_SLOT_IMPLOSION = UITexture.fullImage(MODID, "gui/overlay_slot/implosion"); - public static final UITexture OVERLAY_SLOT_IN = UITexture.fullImage(MODID, "gui/overlay_slot/in"); - public static final SteamTexture OVERLAY_SLOT_IN_STEAM = SteamTexture.fullImage(MODID, "gui/overlay_slot/in_%s"); + public static final UITexture OVERLAY_SLOT_HEATER_1 = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/heater_1"); + public static final UITexture OVERLAY_SLOT_HEATER_2 = UITexture.fullImage(GregTech.ID, "gui/overlay_slot/heater_2"); + public static final UITexture OVERLAY_SLOT_IMPLOSION = UITexture.fullImage( + GregTech.ID, + "gui/overlay_slot/implosion"); + public static final UITexture OVERLAY_SLOT_IN = UITexture