diff options
| author | boubou19 <miisterunknown@gmail.com> | 2024-09-12 22:30:04 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-12 20:30:04 +0000 |
| commit | dbc10704fdbff100d1ae592aa0ddf1dc8b1aeca0 (patch) | |
| tree | 0f31ac23d82fedee110d63dd36133b3922eb5095 /src/main/java/gregtech/common | |
| parent | 4603dfdeb2ec5c0c4fc322d3e5dd7a692d69508d (diff) | |
| download | GT5-Unofficial-dbc10704fdbff100d1ae592aa0ddf1dc8b1aeca0.tar.gz GT5-Unofficial-dbc10704fdbff100d1ae592aa0ddf1dc8b1aeca0.tar.bz2 GT5-Unofficial-dbc10704fdbff100d1ae592aa0ddf1dc8b1aeca0.zip | |
Merge config categories (#3152)
Co-authored-by: miozune <miozune@gmail.com>
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gregtech/common')
38 files changed, 1228 insertions, 1159 deletions
diff --git a/src/main/java/gregtech/common/GTClient.java b/src/main/java/gregtech/common/GTClient.java index e117a58d71..07d11fe214 100644 --- a/src/main/java/gregtech/common/GTClient.java +++ b/src/main/java/gregtech/common/GTClient.java @@ -779,7 +779,7 @@ public class GTClient extends GTProxy implements Runnable { @SubscribeEvent public void onConfigChange(ConfigChangedEvent.OnConfigChangedEvent e) { - if (GregTech.ID.equals(e.modID) && "client".equals(e.configID)) { + if (GregTech.ID.equals(e.modID)) { // refresh client preference and send to server, since it's the only config we allow changing at runtime. mPreference = new GTClientPreference(); GTPreLoad.loadClientConfig(); diff --git a/src/main/java/gregtech/common/GTProxy.java b/src/main/java/gregtech/common/GTProxy.java index c678914283..ef7070cb59 100644 --- a/src/main/java/gregtech/common/GTProxy.java +++ b/src/main/java/gregtech/common/GTProxy.java @@ -145,8 +145,6 @@ import gregtech.api.objects.GTChunkManager; import gregtech.api.objects.GTItemStack; import gregtech.api.objects.GTUODimensionList; import gregtech.api.objects.ItemData; -import gregtech.api.recipe.RecipeCategory; -import gregtech.api.recipe.RecipeCategorySetting; import gregtech.api.recipe.RecipeMaps; import gregtech.api.util.GTBlockMap; import gregtech.api.util.GTCLSCompat; @@ -163,7 +161,7 @@ import gregtech.api.util.GTShapedRecipe; import gregtech.api.util.GTShapelessRecipe; import gregtech.api.util.GTUtility; import gregtech.api.util.WorldSpawnedEventBuilder; -import gregtech.common.config.opstuff.ConfigGeneral; +import gregtech.common.config.OPStuff; import gregtech.common.items.IDMetaTool01; import gregtech.common.items.MetaGeneratedItem98; import gregtech.common.items.MetaGeneratedTool01; @@ -719,8 +717,6 @@ public abstract class GTProxy implements IGTMod, IFuelHandler { */ public boolean mRenderItemChargeBar = true; - public final Map<RecipeCategory, RecipeCategorySetting> recipeCategorySettings = new HashMap<>(); - /** * This enables showing voltage tier of transformer for Waila, instead of raw voltage number */ @@ -824,8 +820,8 @@ public abstract class GTProxy implements IGTMod, IFuelHandler { GTLog.ore.println("GTMod: Preload-Phase started!"); GregTechAPI.sPreloadStarted = true; - this.mIgnoreTcon = ConfigGeneral.ignoreTinkerConstruct; - this.replicatorExponent = ConfigGeneral.replicatorExponent; + this.mIgnoreTcon = OPStuff.ignoreTinkerConstruct; + this.replicatorExponent = OPStuff.replicatorExponent; for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry .getRegisteredFluidContainerData()) { if ((tData.filledContainer.getItem() == Items.potionitem) && (tData.filledContainer.getItemDamage() == 0)) { diff --git a/src/main/java/gregtech/common/GTWorldgenerator.java b/src/main/java/gregtech/common/GTWorldgenerator.java index a853472089..14073d3325 100644 --- a/src/main/java/gregtech/common/GTWorldgenerator.java +++ b/src/main/java/gregtech/common/GTWorldgenerator.java @@ -34,7 +34,7 @@ import gregtech.api.objects.XSTR; import gregtech.api.util.GTLog; import gregtech.api.world.GTWorldgen; import gregtech.common.blocks.TileEntityOres; -import gregtech.common.config.worldgen.ConfigEndAsteroids; +import gregtech.common.config.Worldgen; public class GTWorldgenerator implements IWorldGenerator { @@ -65,10 +65,10 @@ public class GTWorldgenerator implements IWorldGenerator { public static OregenPattern oregenPattern = OregenPattern.AXISSYMMETRICAL; public GTWorldgenerator() { - endAsteroids = ConfigEndAsteroids.generateEndAsteroids; - endMinSize = ConfigEndAsteroids.EndAsteroidMinSize; - endMaxSize = ConfigEndAsteroids.EndAsteroidMaxSize; - mEndAsteroidProbability = ConfigEndAsteroids.EndAsteroidProbability; + endAsteroids = Worldgen.endAsteroids.generateEndAsteroids; + endMinSize = Worldgen.endAsteroids.EndAsteroidMinSize; + endMaxSize = Worldgen.endAsteroids.EndAsteroidMaxSize; + mEndAsteroidProbability = Worldgen.endAsteroids.EndAsteroidProbability; GameRegistry.registerWorldGenerator(this, 1073741823); if (debugWorldGen) { GTLog.out.println("GTWorldgenerator created"); diff --git a/src/main/java/gregtech/common/config/Client.java b/src/main/java/gregtech/common/config/Client.java new file mode 100644 index 0000000000..f871b846a4 --- /dev/null +++ b/src/main/java/gregtech/common/config/Client.java @@ -0,0 +1,245 @@ +package gregtech.common.config; + +import static gregtech.api.recipe.RecipeCategorySetting.ENABLE; + +import com.gtnewhorizon.gtnhlib.config.Config; + +import gregtech.api.enums.Mods; +import gregtech.api.recipe.RecipeCategorySetting; + +@Config(modid = Mods.Names.GREG_TECH, category = "client", configSubDirectory = "GregTech", filename = "Client") +@Config.LangKey("GT5U.gui.config.client") +public class Client { + + @Config.Comment("Color Modulation section") + public static final ColorModulation colorModulation = new ColorModulation(); + + @Config.Comment("Interface section") + public static final Interface iface = new Interface(); + + @Config.Comment("Preference section") + public static final Preference preference = new Preference(); + + @Config.Comment("Render section") + public static final Render render = new Render(); + + @Config.Comment("Waila section") + public static final Waila waila = new Waila(); + + @Config.Comment("NEI section") + public static final NEI nei = new NEI(); + + @Config.LangKey("GT5U.gui.config.client.color_modulation") + public static class ColorModulation { + + @Config.Comment("RGB values for the cable insulation color modulation.") + public CableInsulation cableInsulation = new CableInsulation(); + + @Config.Comment("RGB values for the construction foam color modulation.") + public ConstructionFoam constructionFoam = new ConstructionFoam(); + + @Config.Comment("RGB values for the machine metal color modulation (default GUI color).") + public MachineMetal machineMetal = new MachineMetal(); + + @Config.LangKey("GT5U.gui.config.client.color_modulation.cable_insulation") + public static class CableInsulation { + + @Config.DefaultInt(64) + public int red; + + @Config.DefaultInt(64) + public int green; + + @Config.DefaultInt(64) + public int blue; + } + + @Config.LangKey("GT5U.gui.config.client.color_modulation.construction_foam") + public static class ConstructionFoam { + + @Config.DefaultInt(64) + public int red; + + @Config.DefaultInt(64) + public int green; + + @Config.DefaultInt(64) + public int blue; + } + + @Config.LangKey("GT5U.gui.config.client.color_modulation.machine_metal") + public static class MachineMetal { + + @Config.DefaultInt(210) + public int red; + + @Config.DefaultInt(220) + public int green; + + @Config.DefaultInt(255) + public int blue; + } + } + + @Config.LangKey("GT5U.gui.config.client.interface") + public static class Interface { + + @Config.Comment("if true, makes cover tabs visible on GregTech machines.") + @Config.DefaultBoolean(true) + public boolean coverTabsVisible; + + @Config.Comment("if true, puts the cover tabs display on the right of the UI instead of the left.") + @Config.DefaultBoolean(false) + public boolean coverTabsFlipped; + + @Config.Comment("How verbose should tooltips be? 0: disabled, 1: one-line, 2: normal, 3+: extended.") + @Config.DefaultInt(2) + public int tooltipVerbosity; + + @Config.Comment("How verbose should tooltips be when LSHIFT is held? 0: disabled, 1: one-line, 2: normal, 3+: extended.") + @Config.DefaultInt(3) + public int tooltipShiftVerbosity; + + @Config.Comment("Which style to use for title tab on machine GUI? 0: text tab split-dark, 1: text tab unified, 2: item icon tab.") + @Config.DefaultInt(0) + public int titleTabStyle; + } + + @Config.LangKey("GT5U.gui.config.client.preference") + public static class Preference { + + @Config.Comment("if true, input filter will initially be on when input buses are placed in the world.") + @Config.DefaultBoolean(false) + public boolean inputBusInitialFilter; + + @Config.Comment("if true, allow multistacks on single blocks by default when they are first placed in the world.") + @Config.DefaultBoolean(false) + public boolean singleBlockInitialAllowMultiStack; + + @Config.Comment("if true, input filter will initially be on when machines are placed in the world.") + @Config.DefaultBoolean(false) + public boolean singleBlockInitialFilter; + } + + @Config.LangKey("GT5U.gui.config.client.render") + public static class Render { + + @Config.Comment("if true, enables ambient-occlusion smooth lighting on tiles.") + @Config.DefaultBoolean(true) + public boolean renderTileAmbientOcclusion; + + @Config.Comment("if true, enables glowing of the machine controllers.") + @Config.DefaultBoolean(true) + public boolean renderGlowTextures; + + @Config.Comment("if true, render flipped machine with flipped textures.") + @Config.DefaultBoolean(true) + public boolean renderFlippedMachinesFlipped; + + @Config.Comment("if true, render indicators on hatches.") + @Config.DefaultBoolean(true) + public boolean renderIndicatorsOnHatch; + + @Config.Comment("if true, enables dirt particles when pollution reaches the threshold.") + @Config.DefaultBoolean(true) + public boolean renderDirtParticles; + + @Config.Comment("if true, enables pollution fog when pollution reaches the threshold.") + @Config.DefaultBoolean(true) + public boolean renderPollutionFog; + + @Config.Comment("if true, enables the green -> red durability for an item's damage value.") + @Config.DefaultBoolean(true) + public boolean renderItemDurabilityBar; + + @Config.Comment("if true, enables the blue charge bar for an electric item's charge.") + @Config.DefaultBoolean(true) + public boolean renderItemChargeBar; + + @Config.Comment("enables BaseMetaTileEntity block updates handled by BlockUpdateHandler.") + @Config.DefaultBoolean(false) + public boolean useBlockUpdateHandler; + } + + @Config.LangKey("GT5U.gui.config.client.waila") + public static class Waila { + + /** + * This enables showing voltage tier of transformer for Waila, instead of raw voltage number + */ + @Config.Comment("if true, enables showing voltage tier of transformer for Waila, instead of raw voltage number.") + @Config.DefaultBoolean(true) + public boolean wailaTransformerVoltageTier; + + @Config.Comment("if true, enables showing voltage tier of transformer for Waila, instead of raw voltage number.") + @Config.DefaultBoolean(false) + public boolean wailaAverageNS; + } + + @Config.LangKey("GT5U.gui.config.client.nei") + public static class NEI { + + @Config.Comment("Recipe category section") + public final RecipeCategories recipeCategories = new RecipeCategories(); + + @Config.Comment("if true, shows the recipes using seconds (as opposed to ticks).") + @Config.DefaultBoolean(true) + public boolean NEIRecipeSecondMode; + + @Config.Comment("if true, shows the mod which added the recipe.") + @Config.DefaultBoolean(false) + public boolean NEIRecipeOwner; + + @Config.Comment("if true, show the stacktrace related to the recipe addition.") + @Config.DefaultBoolean(false) + public boolean NEIRecipeOwnerStackTrace; + + @Config.Comment("if true, show original voltage when overclocked.") + @Config.DefaultBoolean(false) + public boolean NEIOriginalVoltage; + + @Config.LangKey("GT5U.gui.config.client.nei.recipe_categories") + public static class RecipeCategories { + + @Config.LangKey("gt.recipe.category.arc_furnace_recycling") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting arcFurnaceRecycling = ENABLE; + + @Config.LangKey("gt.recipe.category.plasma_arc_furnace_recycling") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting plasmaArcFurnaceRecycling = ENABLE; + + @Config.LangKey("gt.recipe.category.macerator_recycling") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting maceratorRecycling = ENABLE; + + @Config.LangKey("gt.recipe.category.fluid_extractor_recycling") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting fluidExtractorRecycling = ENABLE; + + @Config.LangKey("gt.recipe.category.alloy_smelter_recycling") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting alloySmelterRecycling = ENABLE; + + @Config.LangKey("gt.recipe.category.alloy_smelter_molding") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting alloySmelterMolding = ENABLE; + + @Config.LangKey("gt.recipe.category.forge_hammer_recycling") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting forgeHammerRecycling = ENABLE; + + @Config.LangKey("gt.recipe.category.tic_part_extruding") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting ticPartExtruding = ENABLE; + + @Config.LangKey("gt.recipe.category.tic_bolt_molding") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting ticBoltMolding = ENABLE; + + @Config.LangKey("gtpp.recipe.category.abs_non_alloy_recipes") + @Config.DefaultEnum("ENABLE") + public RecipeCategorySetting absNonAlloyRecipes = ENABLE; + } + } +} diff --git a/src/main/java/gregtech/common/config/Gregtech.java b/src/main/java/gregtech/common/config/Gregtech.java new file mode 100644 index 0000000000..a293b6cba7 --- /dev/null +++ b/src/main/java/gregtech/common/config/Gregtech.java @@ -0,0 +1,685 @@ +package gregtech.common.config; + +import com.gtnewhorizon.gtnhlib.config.Config; + +import gregtech.api.enums.Mods; +import gregtech.common.GTProxy; + +@Config(modid = Mods.Names.GREG_TECH, category = "gregtech", configSubDirectory = "GregTech", filename = "GregTech") +@Config.LangKey("GT5U.gui.config.gregtech") +public class Gregtech { + + @Config.Comment("Debug section") + public static final Debug debug = new Debug(); + + @Config.Comment("Features section") + public static final Features features = new Features(); + + @Config.Comment("General section") + public static final General general = new General(); + + @Config.Comment("Harvest level section") + public static final HarvestLevel harvestLevel = new HarvestLevel(); + + @Config.Comment("Machines section") + public static final Machines machines = new Machines(); + + @Config.Comment("Ore drop behavior section") + public static final OreDropBehavior oreDropBehavior = new OreDropBehavior(); + + @Config.Comment("Pollution section") + public static final Pollution pollution = new Pollution(); + + @Config.LangKey("GT5U.gui.config.gregtech.debug") + public static class Debug { + + @Config.Comment("enable D1 flag (a set of debug logs)") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean D1; + + @Config.Comment("enable D2 flag (another set of debug logs)") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean D2; + + @Config.Comment("This will prevent NEI from crashing but spams the Log.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean allowBrokenRecipeMap; + + @Config.Comment("Debug parameters for cleanroom testing.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugCleanroom; + + @Config.Comment("Debug parameter for driller testing.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugDriller; + + @Config.Comment("Debug parameter for world generation. Tracks chunks added/removed from run queue.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugWorldgen; + + @Config.Comment("Debug parameter for orevein generation.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugOrevein; + + @Config.Comment("Debug parameter for small ore generation.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugSmallOres; + + @Config.Comment("Debug parameter for stones generation.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugStones; + + @Config.Comment("Debug parameter for single block miner.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugBlockMiner; + + @Config.Comment("Debug parameter for single block pump.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugBlockPump; + + @Config.Comment("Debug parameter for entity cramming reduction.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugEntityCramming; + + @Config.Comment("Debug parameter for gregtech.api.util.GT_ChunkAssociatedData") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugWorldData; + + @Config.Comment("Debug parameter for chunk loaders.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean debugChunkloaders; + } + + @Config.LangKey("GT5U.gui.config.gregtech.features") + public static class Features { + + @Config.Comment("Controls the stacksize of tree related blocks.") + @Config.DefaultInt(64) + @Config.RequiresMcRestart + public int maxLogStackSize; + + @Config.Comment("Controls the stacksize of every oredicted prefix based items used for blocks (if that even makes sense)") + @Config.DefaultInt(64) + @Config.RequiresMcRestart + public int maxOtherBlocksStackSize; + + @Config.Comment("Controls the stacksize of oredicted planks.") + @Config.DefaultInt(64) + @Config.RequiresMcRestart + public int maxPlankStackSize; + + @Config.Comment("Controls the stacksize of oredicted items used in ore treatment.") + @Config.DefaultInt(64) + @Config.RequiresMcRestart + public int maxOreStackSize; + + @Config.Comment("Controls the stacksize of IC2 overclocker upgrades.") + @Config.DefaultInt(4) + @Config.RequiresMcRestart + public int upgradeStackSize; + } + + @Config.LangKey("GT5U.gui.config.gregtech.general") + public static class General { + + @Config.Comment("Control percentage of filled 3x3 chunks. Lower number means less oreveins spawn.") + @Config.DefaultInt(100) + @Config.RequiresMcRestart + public int oreveinPercentage; + + @Config.Comment("Control number of attempts to find a valid orevein. Generally this maximum limit isn't hit, selecting a vein is cheap") + @Config.DefaultInt(64) + @Config.RequiresMcRestart + public int oreveinAttempts; + + @Config.Comment("Control number of attempts to place a valid ore vein. If a vein wasn't placed due to height restrictions, completely in the water, etc, another attempt is tried.") + @Config.DefaultInt(8) + @Config.RequiresMcRestart + public int oreveinMaxPlacementAttempts; + + @Config.Comment("Whether to place small ores as placer ores for an orevein.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean oreveinPlacerOres; + + @Config.Comment("Multiplier to control how many placer ores get generated.") + @Config.DefaultInt(2) + @Config.RequiresMcRestart + public int oreveinPlacerOresMultiplier; + + @Config.Comment("If true, enables the timber axe (cuts down whole tree in a single hit).") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean timber; + + @Config.Comment("If true, all the GT5U potions are always drinkable.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean drinksAlwaysDrinkable; + + @Config.Comment("if true, shows all the metaitems in creative and in NEI.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean doShowAllItemsInCreative; + + @Config.Comment("if true, makes the GT5U sounds multi-threaded.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean multiThreadedSounds; + + @Config.Comment("Max entity amount in the same block for entity craming.") + @Config.DefaultInt(6) + @Config.RequiresMcRestart + public int maxEqualEntitiesAtOneSpot; + + @Config.Comment("The chance of success to start a fire from the flint and steel.") + @Config.DefaultInt(30) + @Config.RequiresMcRestart + public int flintChance; + + @Config.Comment("Entity despawn time.") + @Config.DefaultInt(6000) + @Config.RequiresMcRestart + public int itemDespawnTime; + + @Config.Comment("If true, allows small boiler automation.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean allowSmallBoilerAutomation; + + @Config.Comment("If true, increases dungeon loots in vanilla structures.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean increaseDungeonLoot; + + @Config.Comment("If true, spawns an axe at the start in adventure mode. Does nothing if the advanture mode isn't forced.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean axeWhenAdventure; + + @Config.Comment("If true, forces the survival map into adventure mode.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean survivalIntoAdventure; + + @Config.Comment("If true, hungers the players based on his amount of stuff in the inventory every 6s, regardless of player movement.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean hungerEffect; + + @Config.Comment("If true, enables the item oredification of the items in the inventory.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean inventoryUnification; + + @Config.Comment("if true, enables GT5U and GT++ bees.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean GTBees; + + @Config.Comment("if true, enables crafting unification.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean craftingUnification; + + @Config.Comment("If true, nerfs planks recipes.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean nerfedWoodPlank; + + @Config.Comment("if true, reduces the durability of the vanilla tools.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean nerfedVanillaTools; + + @Config.Comment("if true, enables GT5U achievements.") + @Config.DefaultBoolean(true) + @Config.RequiresMcRestart + public boolean achievements; + + @Config.Comment("if true, hides unused ores.") + @Config.DefaultBoolean(false) + @Config.RequiresMcRestart + public boolean hideUnusedOres; + |
