Search in sources :

Example 31 with Configuration

use of net.minecraftforge.common.config.Configuration in project Railcraft by Railcraft.

the class RailcraftModuleManager method preInit.

public static void preInit() {
    setStage(Stage.DEPENDENCY_CHECKING);
    Game.log(Level.TRACE, "Checking Module dependencies and config.");
    Locale locale = Locale.getDefault();
    Locale.setDefault(Locale.ENGLISH);
    config = new Configuration(new File(Railcraft.getMod().getConfigFolder(), MODULE_CONFIG_FILE_NAME));
    config.load();
    config.addCustomCategoryComment(CATEGORY_MODULES, "Disabling these Modules can greatly change how the mod functions.\n" + "For example, disabling the Train Module will prevent you from linking carts.\n" + "Disabling the Locomotive Module will remove the extra drag added to Trains.\n" + "Disabling the World Module will disable all world gen.\n" + "Railcraft will attempt to compensate for disabled Modules on a best effort basis.\n" + "It will define alternate recipes and crafting paths, but the system is far from flawless.\n" + "Unexpected behavior, bugs, or crashes may occur. Please report any issues so they can be fixed.\n");
    // Add enabled modules to list
    List<Class<? extends IRailcraftModule>> toEnable = Lists.newArrayList();
    TreeSet<Class<? extends IRailcraftModule>> toDisable = new TreeSet<>(Comparator.comparing(RailcraftModuleManager::getModuleName));
    for (Map.Entry<Class<? extends IRailcraftModule>, IRailcraftModule> entry : classToInstanceMapping.entrySet()) {
        if (ModuleCore.class.equals(entry.getKey()))
            continue;
        IRailcraftModule module = entry.getValue();
        String moduleName = getModuleName(module);
        if (!isConfigured(config, module)) {
            Game.log(Level.INFO, "Module disabled: {0}", module);
            continue;
        }
        try {
            module.checkPrerequisites();
        } catch (IRailcraftModule.MissingPrerequisiteException ex) {
            Game.logThrowable(Level.INFO, 0, ex, "Module failed prerequisite check, disabling: {0}", moduleName);
            toDisable.add(module.getClass());
            continue;
        }
        toEnable.add(module.getClass());
    }
    // Determine which modules are lacking dependencies
    TreeSet<Class<? extends IRailcraftModule>> toLoad = new TreeSet<>(Comparator.comparing(RailcraftModuleManager::getModuleName));
    toLoad.add(ModuleCore.class);
    boolean changed;
    do {
        changed = false;
        Iterator<Class<? extends IRailcraftModule>> it = toEnable.iterator();
        while (it.hasNext()) {
            Class<? extends IRailcraftModule> moduleClass = it.next();
            if (toLoad.containsAll(getDependencies(moduleClass))) {
                it.remove();
                toLoad.add(moduleClass);
                changed = true;
                break;
            }
        }
    } while (changed);
    // Tell the user which modules are missing dependencies
    for (Class<? extends IRailcraftModule> moduleClass : toEnable) {
        Game.log(Level.WARN, "Module is missing dependencies, disabling: {0} -> {1}", getDependencies(moduleClass), getModuleName(moduleClass));
    }
    // Add modules missing dependencies to the disabled list
    toDisable.addAll(toEnable);
    // Build and sort loadOrder
    toLoad.remove(ModuleCore.class);
    loadOrder.add(ModuleCore.class);
    do {
        changed = false;
        Iterator<Class<? extends IRailcraftModule>> it = toLoad.iterator();
        while (it.hasNext()) {
            Class<? extends IRailcraftModule> moduleClass = it.next();
            if (loadOrder.containsAll(getAllDependencies(moduleClass))) {
                it.remove();
                loadOrder.add(moduleClass);
                changed = true;
                break;
            }
        }
    } while (changed);
    // Add the valid modules to the enabled list in the load order
    enabledModules.addAll(loadOrder);
    // Add the disabled modules to the load order
    loadOrder.addAll(toDisable);
    if (config.hasChanged())
        config.save();
    Locale.setDefault(locale);
    processStage(Stage.CONSTRUCTION);
    processStage(Stage.PRE_INIT);
}
Also used : Configuration(net.minecraftforge.common.config.Configuration) IRailcraftModule(mods.railcraft.api.core.IRailcraftModule) File(java.io.File)

Example 32 with Configuration

use of net.minecraftforge.common.config.Configuration in project Railcraft by Railcraft.

the class RailcraftConfig method preInit.

public static void preInit() {
    Game.log(Level.TRACE, "Railcraft Config: Doing pre-init parsing");
    Locale locale = Locale.getDefault();
    Locale.setDefault(Locale.ENGLISH);
    configMain = new Configuration(new File(Railcraft.getMod().getConfigFolder(), "railcraft.cfg"));
    configMain.load();
    configBlocks = new Configuration(new File(Railcraft.getMod().getConfigFolder(), "blocks.cfg"));
    configBlocks.load();
    configItems = new Configuration(new File(Railcraft.getMod().getConfigFolder(), "items.cfg"));
    configItems.load();
    configEntity = new Configuration(new File(Railcraft.getMod().getConfigFolder(), "entities.cfg"));
    configEntity.load();
    configClient = new Configuration(new File(Railcraft.getMod().getConfigFolder(), "client.cfg"));
    configClient.load();
    playSounds = get("play.sounds", true, "change to '{t}=false' to prevent all mod sounds from playing");
    configMain.addCustomCategoryComment("tweaks", "Here you can change the behavior of various things");
    configMain.removeCategory(configMain.getCategory(CAT_LOOT));
    configMain.removeCategory(configMain.getCategory("anchors"));
    printChargeDebug = get(CAT_CHARGE, "printDebug", false, "change to '{t}=true' to enabled Charge Network debug spam");
    loadWorldspikeSettings();
    loadBlockTweaks();
    loadItemTweaks();
    loadTrackTweaks();
    loadRoutingTweaks();
    loadCartTweaks();
    loadRecipeOption();
    loadCarts();
    loadBlocks();
    loadItems();
    loadBoreMineableBlocks();
    loadWorldGen();
    loadFluids();
    loadEnchantment();
    loadClient();
    saveConfigs();
    Locale.setDefault(locale);
}
Also used : Configuration(net.minecraftforge.common.config.Configuration) File(java.io.File)

Example 33 with Configuration

use of net.minecraftforge.common.config.Configuration in project Valkyrien-Warfare-Revamped by ValkyrienWarfare.

the class ValkyrienWarfareMod method runConfiguration.

private void runConfiguration(FMLPreInitializationEvent event) {
    configFile = event.getSuggestedConfigurationFile();
    config = new Configuration(configFile);
    config.load();
    applyConfig(config);
    config.save();
}
Also used : Configuration(net.minecraftforge.common.config.Configuration)

Example 34 with Configuration

use of net.minecraftforge.common.config.Configuration in project Engine by VoltzEngine-Project.

the class Engine method preInit.

@EventHandler
public void preInit(FMLPreInitializationEvent event) {
    //Init API values
    VoltzEngineAPI.massRegistry = new MassRegistry();
    //Init run time references
    References.GLOBAL_CONFIG_FOLDER = event.getModConfigurationDirectory();
    References.ROOT_FOLDER = References.GLOBAL_CONFIG_FOLDER.getParentFile();
    References.BBM_CONFIG_FOLDER = new File(event.getModConfigurationDirectory(), "bbm");
    //Load config files
    config = new Configuration(new File(References.BBM_CONFIG_FOLDER, "ve/VoltzEngine.cfg"));
    heatDataConfig = new Configuration(new File(event.getModConfigurationDirectory(), "bbm/ve/HeatMap.cfg"));
    explosiveConfig = new Configuration(new File(event.getModConfigurationDirectory(), "bbm/ve/Explosives.cfg"));
    manager = new ModManager().setPrefix(References.DOMAIN).setTab(CreativeTabs.tabAllSearch);
    config.load();
    heatDataConfig.load();
    explosiveConfig.load();
    ConfigScanner.instance().generateSets(event.getAsmData());
    ConfigHandler.sync(getConfig(), References.DOMAIN);
    NetworkRegistry.INSTANCE.registerGuiHandler(this, proxy);
    MinecraftForge.EVENT_BUS.register(this);
    MinecraftForge.EVENT_BUS.register(proxy);
    MinecraftForge.EVENT_BUS.register(SaveManager.instance());
    MinecraftForge.EVENT_BUS.register(new InteractionHandler());
    MinecraftForge.EVENT_BUS.register(SelectionHandler.INSTANCE);
    MinecraftForge.EVENT_BUS.register(RadarRegistry.INSTANCE);
    FMLCommonHandler.instance().bus().register(RadarRegistry.INSTANCE);
    MinecraftForge.EVENT_BUS.register(TileMapRegistry.INSTANCE);
    FMLCommonHandler.instance().bus().register(TileMapRegistry.INSTANCE);
    MinecraftForge.EVENT_BUS.register(RadioRegistry.INSTANCE);
    FMLCommonHandler.instance().bus().register(RadioRegistry.INSTANCE);
    FMLCommonHandler.instance().bus().register(new WorldActionQue());
    FMLCommonHandler.instance().bus().register(TileTaskTickHandler.INSTANCE);
    FMLCommonHandler.instance().bus().register(SelectionHandler.INSTANCE);
    FMLCommonHandler.instance().bus().register(proxy);
    //Load heat configs
    enabledHeatMap = heatDataConfig.getBoolean("EnabledHeatMap", Configuration.CATEGORY_GENERAL, true, "Heat map handles interaction of heat based energy and the world. Disable only if it causes issues or you want to reduce world file size. If disabled it can prevent machines from working.");
    //Load explosive configs
    log_registering_explosives = explosiveConfig.getBoolean("EnableRegisterLogging", Configuration.CATEGORY_GENERAL, false, "Adds debug each time a mod registers an explosive handler. Should only be enabled to figure out which mod is overriding another mod's explosive");
    MachineRecipeType.ITEM_SMELTER.setHandler(new MRSmelterHandler());
    MachineRecipeType.ITEM_GRINDER.setHandler(new MRHandlerItemStack(MachineRecipeType.ITEM_GRINDER.INTERNAL_NAME));
    MachineRecipeType.ITEM_CRUSHER.setHandler(new MRHandlerItemStack(MachineRecipeType.ITEM_CRUSHER.INTERNAL_NAME));
    MachineRecipeType.ITEM_WASHER.setHandler(new MRHandlerItemStack(MachineRecipeType.ITEM_WASHER.INTERNAL_NAME));
    MachineRecipeType.ITEM_SAWMILL.setHandler(new MRHandlerItemStack(MachineRecipeType.ITEM_SAWMILL.INTERNAL_NAME));
    MachineRecipeType.FLUID_SMELTER.setHandler(new MRHandlerFluidStack(MachineRecipeType.FLUID_SMELTER.INTERNAL_NAME));
    MachineRecipeType.FLUID_CAST.setHandler(new MRHandlerCast());
    RecipeSorter.register(References.PREFIX + "sheetMetalTools", RecipeSheetMetal.class, SHAPED, "after:minecraft:shaped");
    RecipeSorter.register(References.PREFIX + "Tools", RecipeTool.class, SHAPED, "after:minecraft:shaped");
    RecipeSorter.register(References.PREFIX + "shapedLarge", RecipeShapedOreLarge.class, SHAPED, "after:minecraft:shaped");
    //Internal systems
    if (config.getBoolean("ASMTestingEnabled", "Internal", true, "Enables the testing of the internally used ASM code, used to ensure quality of the game. Only disable if you know the ASM is functional or there are issues with it running. Normally though if the ASM test fails then the ASM code itself was not injected. Which will result in several features of the mod not functioning correctly.")) {
        //TODO check for Bukkit and disable
        loader.applyModule(new ProxyASMTest());
    }
    loader.applyModule(getProxy());
    loader.applyModule(packetHandler);
    loader.applyModule(GroupProfileHandler.GLOBAL);
    loader.applyModule(GlobalAccessSystem.instance);
    //Recipes
    loader.applyModule(SmeltingRecipeLoad.class);
    loader.applyModule(CrusherRecipeLoad.class);
    loader.applyModule(GrinderRecipeLoad.class);
    loader.applyModule(FluidSmelterRecipeLoad.class);
    loader.applyModule(CastRecipeLoader.class);
    loader.applyModule(GearRecipeLoader.class);
    loader.applyModule(RodRecipeLoader.class);
    loader.applyModule(PlateRecipeLoader.class);
    loader.applyModule(NuggetRecipeLoader.class);
    loader.applyModule(WireRecipeLoader.class);
    loader.applyModule(ScrewRecipeLoader.class);
    loader.applyModule(JsonContentLoader.INSTANCE);
    //Mod Support
    config.setCategoryComment("Mod_Support", "If true the proxy class for the mod will be loaded enabling support, set to false if support is not required or breaks the game.");
    //Uses reflection instead of API files
    loader.applyModule(NEIProxy.class);
    loader.applyModule(OCProxy.class, Mods.OC.isLoaded());
    loader.applyModule(TinkerProxy.class, Mods.TINKERS.isLoaded());
    loader.applyModule(AEProxy.class, Mods.AE.isLoaded());
    loader.applyModule(ICProxy.class, Mods.IC2.isLoaded());
    loader.applyModule(BCProxy.class, Mods.BC.isLoaded());
    loader.applyModule(MekProxy.class, Mods.MEKANISM.isLoaded());
    loader.applyModule(ProjectEProxy.class, Mods.PROJECT_E.isLoaded());
    TriggerCauseRegistry.register("entity", new TriggerNBTBuilder("entity"));
    TriggerCauseRegistry.register("impactEntity", new TriggerNBTBuilder("impactEntity"));
    TriggerCauseRegistry.register("entityImpactBlock", new TriggerNBTBuilder("entityImpactBlock"));
    TriggerCauseRegistry.register("entityImpactEntity", new TriggerNBTBuilder("entityImpactEntity"));
    TriggerCauseRegistry.register("explosion", new TriggerNBTBuilder("explosion"));
    TriggerCauseRegistry.register("fire", new TriggerNBTBuilder("fire"));
    TriggerCauseRegistry.register("redstone", new TriggerNBTBuilder("redstone"));
    //Load dev only content
    if (runningAsDev) {
        loader.applyModule(new DevWorldLoader());
    }
    //Check if RF api exists
    boolean shouldLoadRFHandler = true;
    for (String s : new String[] { "IEnergyConnection", "IEnergyContainerItem", "IEnergyHandler", "IEnergyProvider", "IEnergyReceiver", "IEnergyStorage" }) {
        try {
            Class clazz = Class.forName("cofh.api.energy." + s, false, this.getClass().getClassLoader());
            if (clazz == null) {
                shouldLoadRFHandler = false;
                break;
            }
        } catch (ClassNotFoundException e) {
            shouldLoadRFHandler = false;
            logger().error("Not loading RF support as we couldn't detect " + "cofh.api.energy." + s + " class or interface.");
            break;
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    if (shouldLoadRFHandler) {
        loader.applyModule(RFLoader.class);
        loader.applyModule(TEProxy.class, Mods.TF_EXPANSION.isLoaded());
    }
    PotionUtility.resizePotionArray();
    //Manually registered configs TODO setup threw sync system (once the system is tested)
    CommandVE.disableCommands = getConfig().getBoolean("DisableServerCommands", "Commands", false, "Turns off all commands built into Voltz Engine");
    CommandVE.disableButcherCommand = getConfig().getBoolean("DisableButcherCommands", "Commands", false, "Turns off butcher command");
    CommandVE.disableClearCommand = getConfig().getBoolean("DisableClearCommands", "Commands", false, "Turns off clear command");
    CommandVE.disableRemoveCommand = getConfig().getBoolean("DisableRemoverCommands", "Commands", false, "Turns off remove command");
    //Map commands
    enableExtendedMetaPacketSync = getConfig().getBoolean("EnableExtendedBlockMetaPacketSync", "Map_data", true, "While on extended meta values will be synced to the client. Can be disabled on both sides to save on bandwidth but will result in rendering issues if disabled.");
    ToolMode.REGISTRY.add(new ToolModeGeneral());
    ToolMode.REGISTRY.add(new ToolModeRotation());
    /**
         * Multiblock Handling
         */
    if (getConfig().get("Content", "LoadInstantHole", runningAsDev, "This is a developer tool for checking if ores generated correctly. It creates a chunk sized hole in the ground replacing stone with air, and air with glass. Never enable or give this to normal users as it can be used for greifing.").getBoolean(runningAsDev)) {
        instaHole = contentRegistry.newItem("ve.instanthole", new ItemInstaHole());
    }
    if (getConfig().get("Content", "LoadDevDataTool", runningAsDev, "This is a developer tool for checking data on blocks and tile").getBoolean(runningAsDev)) {
        itemDevTool = contentRegistry.newItem("ve.devTool", new ItemDevData());
    }
    if (getConfig().get("Content", "LoadScrewDriver", true, "Basic tool for configuring, rotating, and picking up machines.").getBoolean(true)) {
        itemWrench = getManager().newItem("ve.screwdriver", new ItemScrewdriver());
    }
    if (getConfig().get("Content", "LoadSelectionTool", true, "Admin tool for selecting areas on the ground for world manipulation or other tasks.").getBoolean(true)) {
        itemSelectionTool = getManager().newItem("ve.selectiontool", new ItemSelectionWand());
    }
    if (Engine.runningAsDev) {
        blockInfInventory = getManager().newBlock(TileInfInv.class);
    }
    ExplosiveRegistry.registerOrGetExplosive(References.DOMAIN, "TNT", new ExplosiveHandlerTNT());
    final int tntValue = 8;
    ExplosiveRegistry.registerExplosiveItem(new ItemStack(Blocks.tnt), ExplosiveRegistry.get("TNT"), tntValue);
    ExplosiveRegistry.registerExplosiveItem(new ItemStack(Items.gunpowder), ExplosiveRegistry.get("TNT"), tntValue / 5.0);
    //Creeper skull
    ExplosiveRegistry.registerExplosiveItem(new ItemStack(Items.skull, 1, 4), ExplosiveRegistry.get("TNT"), tntValue / 10.0);
    //Call loader
    loader.preInit();
    //Claim json content
    JsonContentLoader.INSTANCE.claimContent(this);
    //Ore dictionary registry
    OreDictionary.registerOre(OreNames.WOOD_STICK, Items.stick);
    OreDictionary.registerOre(OreNames.STRING, Items.string);
    OreDictionary.registerOre(OreNames.FLINT, Items.flint);
    Calendar calendar = Calendar.getInstance();
    if (calendar.get(2) + 1 == 12 && calendar.get(5) >= 24 && calendar.get(5) <= 26) {
        XMAS = true;
    }
}
Also used : Configuration(net.minecraftforge.common.config.Configuration) TriggerNBTBuilder(com.builtbroken.mc.prefab.trigger.TriggerNBTBuilder) ProxyASMTest(com.builtbroken.mc.core.asm.ProxyASMTest) ModManager(com.builtbroken.mc.core.registry.ModManager) ItemDevData(com.builtbroken.mc.core.content.debug.ItemDevData) MRSmelterHandler(com.builtbroken.mc.lib.recipe.item.MRSmelterHandler) WorldActionQue(com.builtbroken.mc.lib.world.edit.thread.WorldActionQue) ItemSelectionWand(com.builtbroken.mc.core.content.tool.ItemSelectionWand) Calendar(java.util.Calendar) MRHandlerItemStack(com.builtbroken.mc.lib.recipe.item.MRHandlerItemStack) ExplosiveHandlerTNT(com.builtbroken.mc.prefab.explosive.handler.ExplosiveHandlerTNT) ItemScrewdriver(com.builtbroken.mc.core.content.tool.ItemScrewdriver) MRHandlerCast(com.builtbroken.mc.lib.recipe.cast.MRHandlerCast) ItemInstaHole(com.builtbroken.mc.core.content.debug.ItemInstaHole) TileInfInv(com.builtbroken.mc.core.content.debug.TileInfInv) ToolModeRotation(com.builtbroken.mc.core.content.tool.screwdriver.ToolModeRotation) InteractionHandler(com.builtbroken.mc.core.handler.InteractionHandler) MassRegistry(com.builtbroken.mc.lib.data.mass.MassRegistry) MRHandlerItemStack(com.builtbroken.mc.lib.recipe.item.MRHandlerItemStack) ItemStack(net.minecraft.item.ItemStack) File(java.io.File) ToolModeGeneral(com.builtbroken.mc.core.content.tool.screwdriver.ToolModeGeneral) MRHandlerFluidStack(com.builtbroken.mc.lib.recipe.fluid.MRHandlerFluidStack) DevWorldLoader(com.builtbroken.mc.core.content.world.DevWorldLoader) EventHandler(cpw.mods.fml.common.Mod.EventHandler)

Example 35 with Configuration

use of net.minecraftforge.common.config.Configuration in project VanillaTeleporter by dyeo.

the class ModConfiguration method preInit.

public static void preInit() {
    File configFile = new File(Loader.instance().getConfigDir(), TeleporterMod.MODID + ".cfg");
    config = new Configuration(configFile);
    config.setCategoryRequiresMcRestart(Configuration.CATEGORY_GENERAL, true);
    config.load();
    config.addCustomCategoryComment(Configuration.CATEGORY_GENERAL, "Vanilla-Inspired Teleporters Version " + TeleporterMod.VERSION + " Configuration");
    Property propUseDiamonds = config.get(Configuration.CATEGORY_GENERAL, "useDiamonds", useDiamonds, "If false, removes diamonds from the crafting recipe and replaces them with quartz blocks.\nDefault is true");
    Property propNumTeleporters = config.get(Configuration.CATEGORY_GENERAL, "numTeleporters", numTeleporters, "Specifies the number of teleporters created with a single recipe.\nDefault is 1");
    Property propTeleportPassiveMobs = config.get(Configuration.CATEGORY_GENERAL, "teleportPassiveMobs", teleportPassiveMobs, "Specifies whether or not passive mobs can go through teleporters.\nDefault is true");
    Property propTeleportHostileMobs = config.get(Configuration.CATEGORY_GENERAL, "teleportHostileMobs", teleportHostileMobs, "Specifies whether or not hostile mobs can go through teleporters.\nDefault is true");
    config.addCustomCategoryComment(ModConfiguration.CATEGORY_SOUNDS, "See http://minecraft.gamepedia.com/Sounds.json#Sound_events for a list of vanilla sound effects");
    Property propSoundEffectTeleporterEnter = config.get(ModConfiguration.CATEGORY_SOUNDS, "soundEffectTeleporterEnter", soundEffectTeleporterEnter, "Sound effect to play when an entity enters a teleporter.\nDefault is \"" + TeleporterMod.MODID + ":portal_enter\", leave blank for no sound.");
    Property propSoundEffectTeleporterExit = config.get(ModConfiguration.CATEGORY_SOUNDS, "soundEffectTeleporterExit", soundEffectTeleporterExit, "Sound effect to play when an entity exits a teleporter.\nDefault is \"" + TeleporterMod.MODID + ":portal_exit\", leave blank for no sound.");
    Property propSoundEffectTeleporterError = config.get(ModConfiguration.CATEGORY_SOUNDS, "soundEffectTeleporterError", soundEffectTeleporterError, "Sound effect to play when a teleporter cannot be used.\nDefault is \"" + TeleporterMod.MODID + ":portal_error\", leave blank for no sound.");
    List<String> propOrderGeneral = new ArrayList<String>();
    propOrderGeneral.add(propUseDiamonds.getName());
    propOrderGeneral.add(propNumTeleporters.getName());
    propOrderGeneral.add(propTeleportPassiveMobs.getName());
    propOrderGeneral.add(propTeleportHostileMobs.getName());
    config.setCategoryPropertyOrder(Configuration.CATEGORY_GENERAL, propOrderGeneral);
    List<String> propOrderSounds = new ArrayList<String>();
    propOrderSounds.add(propSoundEffectTeleporterEnter.getName());
    propOrderSounds.add(propSoundEffectTeleporterExit.getName());
    propOrderSounds.add(propSoundEffectTeleporterError.getName());
    config.setCategoryPropertyOrder(ModConfiguration.CATEGORY_SOUNDS, propOrderSounds);
    useDiamonds = propUseDiamonds.getBoolean();
    numTeleporters = propNumTeleporters.getInt();
    teleportPassiveMobs = propTeleportPassiveMobs.getBoolean();
    teleportHostileMobs = propTeleportHostileMobs.getBoolean();
    soundEffectTeleporterEnter = propSoundEffectTeleporterEnter.getString();
    soundEffectTeleporterExit = propSoundEffectTeleporterExit.getString();
    soundEffectTeleporterError = propSoundEffectTeleporterError.getString();
    if (config.hasChanged())
        config.save();
}
Also used : Configuration(net.minecraftforge.common.config.Configuration) ArrayList(java.util.ArrayList) File(java.io.File) Property(net.minecraftforge.common.config.Property)

Aggregations

Configuration (net.minecraftforge.common.config.Configuration)35 File (java.io.File)14 EventHandler (cpw.mods.fml.common.Mod.EventHandler)4 EventHandler (net.minecraftforge.fml.common.Mod.EventHandler)4 IOException (java.io.IOException)2 Property (net.minecraftforge.common.config.Property)2 AgriConfigAdapter (com.agricraft.agricore.config.AgriConfigAdapter)1 WorldConversionEventHandler (com.bluepowermod.convert.WorldConversionEventHandler)1 BPEventHandler (com.bluepowermod.event.BPEventHandler)1 Config (com.bluepowermod.init.Config)1 RedstoneProviderQmunityLib (com.bluepowermod.redstone.RedstoneProviderQmunityLib)1 ProxyASMTest (com.builtbroken.mc.core.asm.ProxyASMTest)1 ItemDevData (com.builtbroken.mc.core.content.debug.ItemDevData)1 ItemInstaHole (com.builtbroken.mc.core.content.debug.ItemInstaHole)1 TileInfInv (com.builtbroken.mc.core.content.debug.TileInfInv)1 ItemScrewdriver (com.builtbroken.mc.core.content.tool.ItemScrewdriver)1 ItemSelectionWand (com.builtbroken.mc.core.content.tool.ItemSelectionWand)1 ToolModeGeneral (com.builtbroken.mc.core.content.tool.screwdriver.ToolModeGeneral)1 ToolModeRotation (com.builtbroken.mc.core.content.tool.screwdriver.ToolModeRotation)1 DevWorldLoader (com.builtbroken.mc.core.content.world.DevWorldLoader)1