aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kubatech/config
diff options
context:
space:
mode:
authorJakub <53441451+kuba6000@users.noreply.github.com>2022-09-20 18:05:24 +0200
committerGitHub <noreply@github.com>2022-09-20 18:05:24 +0200
commit3377cc137172adb92d80c382c57369cdf5c82466 (patch)
tree6e42998255913fd2945523e52302b89881020008 /src/main/java/kubatech/config
parent4453b8be4c269e211dec6a392bc187238f62a16c (diff)
downloadGT5-Unofficial-3377cc137172adb92d80c382c57369cdf5c82466.tar.gz
GT5-Unofficial-3377cc137172adb92d80c382c57369cdf5c82466.tar.bz2
GT5-Unofficial-3377cc137172adb92d80c382c57369cdf5c82466.zip
Stop GL error spam + Full head rotation on mobs in EEC (#20)
* Stop GL error log spam with buggy mobs * Also save attribs * Snowqueen * Keep error log with config option * Update EntityRenderer.java * Update * Update Config.java * spotlessApply * Also rotate head in EEC to look at the player * Update EntityRenderer.java Co-authored-by: GitHub GTNH Actions <>
Diffstat (limited to 'src/main/java/kubatech/config')
-rw-r--r--src/main/java/kubatech/config/Config.java158
1 files changed, 97 insertions, 61 deletions
diff --git a/src/main/java/kubatech/config/Config.java b/src/main/java/kubatech/config/Config.java
index b09de66910..da6bd4a16a 100644
--- a/src/main/java/kubatech/config/Config.java
+++ b/src/main/java/kubatech/config/Config.java
@@ -25,26 +25,108 @@ import net.minecraftforge.common.config.Configuration;
public class Config {
- private static class Categories {
- public static final String mobHandler = "MobHandler";
+ private enum Category {
+ MOB_HANDLER("MobHandler"),
+ DEBUG("Debug");
+ final String categoryName;
+
+ Category(String s) {
+ categoryName = s;
+ }
+
+ public String get() {
+ return categoryName;
+ }
+
+ @Override
+ public String toString() {
+ return get();
+ }
}
- public static boolean mobHandlerEnabled = true;
+ public static class MobHandler {
+
+ public static boolean mobHandlerEnabled = true;
+
+ public enum _CacheRegenerationTrigger {
+ Never,
+ ModAdditionRemoval,
+ ModAdditionRemovalChange,
+ Always;
+
+ public static _CacheRegenerationTrigger get(int oridinal) {
+ return values()[oridinal];
+ }
+ }
+
+ public static _CacheRegenerationTrigger regenerationTrigger =
+ _CacheRegenerationTrigger.ModAdditionRemovalChange;
+ public static boolean includeEmptyMobs = true;
+ public static String[] mobBlacklist;
+
+ private static void load(Configuration configuration) {
+ Category category = Category.MOB_HANDLER;
+ mobHandlerEnabled = configuration
+ .get(
+ category.get(),
+ "Enabled",
+ true,
+ "Enable \"Mob Drops\" NEI page and Extreme Extermination Chamber")
+ .getBoolean();
+ StringBuilder c = new StringBuilder("When will cache regeneration trigger? ");
+ for (_CacheRegenerationTrigger value : _CacheRegenerationTrigger.values())
+ c.append(value.ordinal()).append(" - ").append(value.name()).append(", ");
+ regenerationTrigger = _CacheRegenerationTrigger.get(configuration
+ .get(
+ category.get(),
+ "CacheRegenerationTrigger",
+ _CacheRegenerationTrigger.ModAdditionRemovalChange.ordinal(),
+ c.toString())
+ .getInt());
+ includeEmptyMobs = configuration
+ .get(category.get(), "IncludeEmptyMobs", true, "Include mobs that have no drops in NEI")
+ .getBoolean();
+ mobBlacklist = configuration
+ .get(
+ category.get(),
+ "MobBlacklist",
+ new String[] {
+ "Giant",
+ "Thaumcraft.TravelingTrunk",
+ "chisel.snowman",
+ "OpenBlocks.Luggage",
+ "OpenBlocks.MiniMe",
+ "SpecialMobs.SpecialCreeper",
+ "SpecialMobs.SpecialZombie",
+ "SpecialMobs.SpecialPigZombie",
+ "SpecialMobs.SpecialSlime",
+ "SpecialMobs.SpecialSkeleton",
+ "SpecialMobs.SpecialEnderman",
+ "SpecialMobs.SpecialCaveSpider",
+ "SpecialMobs.SpecialGhast",
+ "SpecialMobs.SpecialWitch",
+ "SpecialMobs.SpecialSpider",
+ "TwilightForest.HydraHead",
+ "TwilightForest.RovingCube",
+ "TwilightForest.Harbinger Cube",
+ "TwilightForest.Adherent",
+ "SpecialMobs.SpecialSilverfish",
+ },
+ "These mobs will be skipped when generating recipe map")
+ .getStringList();
+ }
+ }
- public enum _CacheRegenerationTrigger {
- Never,
- ModAdditionRemoval,
- ModAdditionRemovalChange,
- Always;
+ public static class Debug {
+ public static boolean showRenderErrors = false;
- public static _CacheRegenerationTrigger get(int oridinal) {
- return values()[oridinal];
+ private static void load(Configuration configuration) {
+ Category category = Category.DEBUG;
+ showRenderErrors =
+ configuration.get(category.get(), "ShowRenderErrors", false).getBoolean();
}
}
- public static _CacheRegenerationTrigger regenerationTrigger = _CacheRegenerationTrigger.ModAdditionRemovalChange;
- public static boolean includeEmptyMobs = true;
- public static String[] mobBlacklist;
public static File configFile;
public static File configDirectory;
@@ -61,54 +143,8 @@ public class Config {
Configuration configuration = new Configuration(configFile);
configuration.load();
- mobHandlerEnabled = configuration
- .get(
- Categories.mobHandler,
- "Enabled",
- true,
- "Enable \"Mob Drops\" NEI page and Extreme Extermination Chamber")
- .getBoolean();
- StringBuilder c = new StringBuilder("When will cache regeneration trigger? ");
- for (_CacheRegenerationTrigger value : _CacheRegenerationTrigger.values())
- c.append(value.ordinal()).append(" - ").append(value.name()).append(", ");
- regenerationTrigger = _CacheRegenerationTrigger.get(configuration
- .get(
- Categories.mobHandler,
- "CacheRegenerationTrigger",
- _CacheRegenerationTrigger.ModAdditionRemovalChange.ordinal(),
- c.toString())
- .getInt());
- includeEmptyMobs = configuration
- .get(Categories.mobHandler, "IncludeEmptyMobs", true, "Include mobs that have no drops in NEI")
- .getBoolean();
- mobBlacklist = configuration
- .get(
- Categories.mobHandler,
- "MobBlacklist",
- new String[] {
- "Giant",
- "Thaumcraft.TravelingTrunk",
- "chisel.snowman",
- "OpenBlocks.Luggage",
- "OpenBlocks.MiniMe",
- "SpecialMobs.SpecialCreeper",
- "SpecialMobs.SpecialZombie",
- "SpecialMobs.SpecialPigZombie",
- "SpecialMobs.SpecialSlime",
- "SpecialMobs.SpecialSkeleton",
- "SpecialMobs.SpecialEnderman",
- "SpecialMobs.SpecialCaveSpider",
- "SpecialMobs.SpecialGhast",
- "SpecialMobs.SpecialWitch",
- "SpecialMobs.SpecialSpider",
- "TwilightForest.HydraHead",
- "TwilightForest.RovingCube",
- "TwilightForest.Harbinger Cube",
- "TwilightForest.Adherent",
- "SpecialMobs.SpecialSilverfish",
- },
- "These mobs will be skipped when generating recipe map")
- .getStringList();
+ MobHandler.load(configuration);
+ Debug.load(configuration);
if (configuration.hasChanged()) {
configuration.save();