Skip to content

Commit

Permalink
Fix #1686 1.11.2 Config changes in GUI reset to values in file
Browse files Browse the repository at this point in the history
  • Loading branch information
Nedelosk committed Jul 23, 2017
1 parent 96ed44a commit 8ad42a8
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 29 deletions.
32 changes: 18 additions & 14 deletions src/main/java/forestry/Forestry.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,26 @@
******************************************************************************/
package forestry;

import com.google.common.base.Preconditions;

import javax.annotation.Nullable;
import java.io.File;

import com.google.common.base.Preconditions;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fluids.FluidRegistry;

import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLInterModComms;
import net.minecraftforge.fml.common.event.FMLInterModComms.IMCEvent;
import net.minecraftforge.fml.common.event.FMLMissingMappingsEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.event.FMLServerStartingEvent;
import net.minecraftforge.fml.common.network.NetworkRegistry;
import net.minecraftforge.fml.common.registry.GameRegistry;

import forestry.api.core.ForestryAPI;
import forestry.core.EventHandlerCore;
import forestry.core.climate.ClimateEventHandler;
Expand All @@ -30,19 +46,6 @@
import forestry.core.worldgen.WorldGenerator;
import forestry.plugins.PluginManager;
import forestry.plugins.compat.PluginIC2;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLInterModComms;
import net.minecraftforge.fml.common.event.FMLInterModComms.IMCEvent;
import net.minecraftforge.fml.common.event.FMLMissingMappingsEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.event.FMLServerStartingEvent;
import net.minecraftforge.fml.common.network.NetworkRegistry;
import net.minecraftforge.fml.common.registry.GameRegistry;

/**
* Forestry Minecraft Mod
Expand Down Expand Up @@ -91,6 +94,7 @@ public void preInit(FMLPreInitializationEvent event) {
MinecraftForge.EVENT_BUS.register(eventHandlerCore);
MinecraftForge.EVENT_BUS.register(new MultiblockEventHandler());
MinecraftForge.EVENT_BUS.register(new ClimateEventHandler());
MinecraftForge.EVENT_BUS.register(Config.class);
Proxies.common.registerEventHandlers();

configFolder = new File(event.getModConfigurationDirectory(), Constants.MOD_ID);
Expand Down
32 changes: 17 additions & 15 deletions src/main/java/forestry/core/config/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@

import net.minecraftforge.common.config.Property;

import net.minecraftforge.fml.client.event.ConfigChangedEvent;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.relauncher.Side;

import forestry.Forestry;
Expand Down Expand Up @@ -81,8 +84,6 @@ public class Config {

// Performance
public static boolean enableBackpackResupply = true;
//public static int planterThrottle = 10;
//public static int harvesterThrottle = 200;

// Customization
private static boolean craftingBronzeEnabled = true;
Expand Down Expand Up @@ -138,17 +139,26 @@ public static boolean isMagicalCropsSupportEnabled() {

public static void load(Side side) {
File configCommonFile = new File(Forestry.instance.getConfigFolder(), CATEGORY_COMMON + ".cfg");
loadConfigCommon(side, configCommonFile);
configCommon = new LocalizedConfiguration(configCommonFile, "1.2.0");
loadConfigCommon(side);

File configFluidsFile = new File(Forestry.instance.getConfigFolder(), CATEGORY_FLUIDS + ".cfg");
loadConfigFluids(configFluidsFile);
configFluid = new LocalizedConfiguration(configFluidsFile, "1.0.0");
loadConfigFluids();

loadHints();
}

private static void loadConfigCommon(Side side, File configFileCommon) {
@SubscribeEvent
public static void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent event){
if(!event.getModID().equals(Constants.MOD_ID)){
return;
}
loadConfigCommon(FMLCommonHandler.instance().getSide());
loadConfigFluids();
}

configCommon = new LocalizedConfiguration(configFileCommon, "1.2.0");
private static void loadConfigCommon(Side side) {

gameMode = configCommon.getStringLocalized("difficulty", "game.mode", "EASY", new String[]{"OP, EASY, NORMAL, HARD"});

Expand Down Expand Up @@ -220,12 +230,6 @@ private static void loadConfigCommon(Side side, File configFileCommon) {
enableBackpackResupply = configCommon.getBooleanLocalized("performance", "backpacks.resupply", enableBackpackResupply);

humusDegradeDelimiter = configCommon.getIntLocalized("tweaks.humus", "degradeDelimiter", humusDegradeDelimiter, 1, 10);

//planterThrottle = configCommon.getIntLocalized("performance", "performance.planter", planterThrottle, 1, 2000);
//propThrottle.Comment = "higher numbers increase working speeds of planters but also increase cpu load.";

//harvesterThrottle = configCommon.getIntLocalized("performance", "performance.harvester", harvesterThrottle, 1, 2000);
//propThrottle.Comment = "higher numbers increase working speeds of harvesters but also increase cpu load.";

if (side == Side.CLIENT) {
mailAlertEnabled = configCommon.getBooleanLocalized("tweaks.gui.mail.alert", "enabled", mailAlertEnabled);
Expand Down Expand Up @@ -258,9 +262,7 @@ private static void loadConfigCommon(Side side, File configFileCommon) {
configCommon.save();
}

private static void loadConfigFluids(File configFile) {
configFluid = new LocalizedConfiguration(configFile, "1.0.0");

private static void loadConfigFluids() {
for (Fluids fluid : Fluids.values()) {
String fluidName = Translator.translateToLocal("fluid." + fluid.getTag());

Expand Down

0 comments on commit 8ad42a8

Please sign in to comment.