@@ -0,0 +1,2896 @@
+package tld.testmod;%0A%0A/*%0A    Licenses for assets can be found in ASSETS_LICENSE.txt. All other files are licensed under the terms below:%0A    %0A    The MIT License (MIT)%0A    %0A    Test Mod 3 - Copyright (c) 2015-2017 Choonster%0A    %0A    Permission is hereby granted, free of charge, to any person obtaining a copy%0A    of this software and associated documentation files (the %22Software%22), to deal%0A    in the Software without restriction, including without limitation the rights%0A    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell%0A    copies of the Software, and to permit persons to whom the Software is%0A    furnished to do so, subject to the following conditions:%0A    %0A    The above copyright notice and this permission notice shall be included in all%0A    copies or substantial portions of the Software.%0A    %0A    THE SOFTWARE IS PROVIDED %22AS IS%22, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR%0A    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,%0A    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE%0A    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER%0A    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,%0A    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE%0A    SOFTWARE.%0A */%0Aimport net.minecraftforge.common.config.Config;%0Aimport net.minecraftforge.common.config.ConfigManager;%0Aimport net.minecraftforge.fml.client.event.ConfigChangedEvent;%0Aimport net.minecraftforge.fml.common.Mod;%0Aimport net.minecraftforge.fml.common.eventhandler.SubscribeEvent;%0A%0A@Config(modid = Main.MODID)%0A@Config.LangKey(%22testmod.config.title%22)%0Apublic class ModConfig %7B%0A%0A    @Config.Comment(%22This is an example boolean property.%22)%0A    public static boolean fooBar = false;%0A%0A    public static final Client client = new Client();%0A%0A    public static class Client %7B%0A%0A        @Config.Comment(%22This is an example int property.%22)%0A        public int baz = -100;%0A%0A        public final HUDPos chunkEnergyHUDPos = new HUDPos(0, 0);%0A%0A        public static class HUDPos %7B%0A            public HUDPos(final int x, final int y) %7B%0A                this.x = x;%0A                this.y = y;%0A            %7D%0A%0A            @Config.Comment(%22The x coordinate%22)%0A            public int x;%0A%0A            @Config.Comment(%22The y coordinate%22)%0A            public int y;%0A        %7D%0A    %7D%0A%0A    @Mod.EventBusSubscriber%0A    private static class EventHandler %7B%0A%0A        /**%0A         * Inject the new values and save to the config file when the config has been changed from the GUI.%0A         *%0A         * @param event The event%0A         */%0A        @SubscribeEvent%0A        public static void onConfigChanged(final ConfigChangedEvent.OnConfigChangedEvent event) %7B%0A            if (event.getModID().equals(Main.MODID)) %7B%0A                ConfigManager.sync(Main.MODID, Config.Type.INSTANCE);%0A            %7D%0A        %7D%0A    %7D%0A%7D

Add a test config for the heck of it. Thank you Choonster for your TestMod3.