package techreborn.compat.ee3; import com.pahimar.ee3.exchange.DynamicEnergyValueInitThread; import com.pahimar.ee3.exchange.EnergyValueRegistry; import com.pahimar.ee3.reference.Files; import com.pahimar.ee3.reference.Reference; import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraft.command.CommandBase; import net.minecraft.command.ICommandSender; import net.minecraft.util.ChatComponentText; import java.io.File; public class CommandReload extends CommandBase { public static final String EE3_ENERGYVALUES_DIR = FMLCommonHandler.instance().getMinecraftServerInstance().getEntityWorld().getSaveHandler().getWorldDirectory() + File.separator + "data" + File.separator + Reference.LOWERCASE_MOD_ID + File.separator + "energyvalues"; @Override public String getCommandName() { return "eerelaod"; } @Override public int getRequiredPermissionLevel() { return 4; } @Override public String getCommandUsage(ICommandSender commandSender) { return ""; } @Override public void processCommand(ICommandSender commandSender, String[] args) { commandSender.addChatMessage(new ChatComponentText("Reloading EMC Values...")); File energyValuesDirectory = new File(EE3_ENERGYVALUES_DIR); if (energyValuesDirectory.exists() && energyValuesDirectory.isDirectory()) { File staticValues = new File(energyValuesDirectory, Files.STATIC_ENERGY_VALUES_JSON); commandSender.addChatMessage(new ChatComponentText("Looking for " + staticValues.getName())); if (staticValues.exists()) { commandSender.addChatMessage(new ChatComponentText("Found static values, reloading from disk!")); } else { commandSender.addChatMessage(new ChatComponentText("Will now recompute all values!!")); } } DynamicEnergyValueInitThread.initEnergyValueRegistry(); EnergyValueRegistry.getInstance().setShouldRegenNextRestart(false); } }