Posted April 21, 20178 yr Hi, I just saw the commit "Use the new @Config-compatible config GUI" on Choonster's TestMod3 and some threads about it here on the forum. Can someone explain to me how this system works? Thx in advance. Bektor Edited April 21, 20178 yr by Bektor Developer of Primeval Forest.
April 21, 20178 yr Are you asking about the annotation-based config system or the recent addition of the config GUI compatible with it? If it's the former, create a class to hold your config options and annotate it with @Config. This class should have a static field for each option or sub-category. These fields can be one of the following types: Any primitive or primitive wrapper class or array of primitives/wrappers. This will be mapped to single value or list property of the corresponding type in the config file. String or String[]. This will be mapped to string or string list property. An enum. This will be mapped to a string property, but will throw an error if set to an invalid value. Map<String, T>, or any class that implements it. T may be any of the previous types. This will be mapped to a category containing a property for each key/value pair in the Map. Any class that directly extends Object. These will be mapped to a category containing a property for each of the class's non-static fields. The fields can be any of these types, including another class that directly extends Object. You can use the sub-annotations of @Config to set the lang key (for the config GUI), comment (used in the config file, also in the config GUI if there's no translation for langKey + ".tooltip"), value range (for numeric properties), property/category name and whether changing the property's value requires restarting Minecraft or the world. To use the config GUI with this system, all you need to do is subscribe to ConfigChangedEvent.OnConfigChangedEvent. If the event's mod ID is your mod ID, call ConfigManager.sync with your mod ID and Config.Type.INSTANCE. You can see a basic implementation of this here. The translations for this can be found here. Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
April 21, 20178 yr Author 33 minutes ago, Choonster said: Are you asking about the annotation-based config system or the recent addition of the config GUI compatible with it? Basically about both. The last time I worked with both of them, I did everything completly without annotations. And thx for the answer. Edited April 21, 20178 yr by Bektor Developer of Primeval Forest.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.