From 358a51d47f39d0ed5c85fb275f819d1c7cb2d590 Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Fri, 1 Jul 2016 20:11:08 +0200 Subject: [PATCH] Initial config options --- .../java/refinedstorage/RefinedStorage.java | 73 +++++++++++++++++++ .../java/refinedstorage/tile/TileCrafter.java | 10 ++- 2 files changed, 82 insertions(+), 1 deletion(-) diff --git a/src/main/java/refinedstorage/RefinedStorage.java b/src/main/java/refinedstorage/RefinedStorage.java index 248ef515e..e57d7ce22 100755 --- a/src/main/java/refinedstorage/RefinedStorage.java +++ b/src/main/java/refinedstorage/RefinedStorage.java @@ -3,6 +3,7 @@ package refinedstorage; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraftforge.common.config.Configuration; import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod.EventHandler; @@ -41,9 +42,81 @@ public final class RefinedStorage { @Instance public static RefinedStorage INSTANCE; + public int cableRfUsage; + public int constructorRfUsage; + public int crafterRfUsage; + public int crafterPerPatternRfUsage; + public int craftingMonitorRfUsage; + public int destructorRfUsage; + public int detectorRfUsage; + public int diskDriveRfUsage; + public int diskDrivePerDiskRfUsage; + public int externalStorageRfUsage; + public int externalStoragePerStorageRfUsage; + public int exporterRfUsage; + public int importerRfUsage; + public int interfaceRfUsage; + public int relayRfUsage; + public int soldererRfUsage; + public int storageRfUsage; + public int wirelessTransmitterRfUsage; + public int gridRfUsage; + public int craftingGridRfUsage; + public int patternGridRfUsage; + + public boolean controllerUsesRf; + + public int wirelessTransmitterBaseRange; + + public int rangeUpgradeRfUsage; + public int speedUpgradeRfUsage; + public int craftingUpgradeRfUsage; + public int stackUpgradeRfUsage; + + public int wirelessTransmitterRangePerUpgrade; + public int soldererSpeedIncreasePerUpgrade; + @EventHandler public void preInit(FMLPreInitializationEvent e) { PROXY.preInit(e); + + Configuration config = new Configuration(e.getSuggestedConfigurationFile()); + + cableRfUsage = config.getInt("cable", "energy", 0, 0, 10, "The RF/t used by cables"); + constructorRfUsage = config.getInt("constructor", "energy", 1, 0, 10, "The RF/t used by Constructors"); + crafterRfUsage = config.getInt("crafter", "energy", 2, 0, 10, "The base RF/t used by Crafters"); + crafterPerPatternRfUsage = config.getInt("crafterPerPattern", "energy", 1, 0, 10, "The additional RF/t used per Pattern in a Crafter"); + craftingMonitorRfUsage = config.getInt("craftingMonitor", "energy", 2, 0, 10, "The RF/t used by Crafting Monitors"); + destructorRfUsage = config.getInt("destructor", "energy", 1, 0, 10, "The RF/t used by Destructors"); + detectorRfUsage = config.getInt("detector", "energy", 2, 0, 10, "The RF/t used by Detectors"); + diskDriveRfUsage = config.getInt("diskDrive", "energy", 0, 0, 10, "The base RF/t used by Disk Drives"); + diskDrivePerDiskRfUsage = config.getInt("diskDrivePerDisk", "energy", 1, 0, 10, "The additional RF/t used by Storage Disks in Disk Drives"); + externalStorageRfUsage = config.getInt("externalStorage", "energy", 0, 0, 10, "The base RF/t used by External Storages"); + externalStoragePerStorageRfUsage = config.getInt("externalStoragePerStorage", "energy", 1, 0, 10, "The additional RF/t used per connected storage to an External Storage"); + exporterRfUsage = config.getInt("exporter", "energy", 1, 0, 10, "The RF/t used by Exporters"); + importerRfUsage = config.getInt("importer", "energy", 1, 0, 10, "The RF/t used by Importers"); + interfaceRfUsage = config.getInt("interface", "energy", 3, 0, 10, "The RF/t used by Interfaces"); + relayRfUsage = config.getInt("relay", "energy", 1, 0, 10, "The RF/t used by Relays"); + soldererRfUsage = config.getInt("solderer", "energy", 3, 0, 10, "The RF/t used by Solderers"); + storageRfUsage = config.getInt("storage", "energy", 1, 0, 10, "The RF/t used by Storage Blocks"); + wirelessTransmitterRfUsage = config.getInt("wirelessTransmitter", "energy", 8, 0, 10, "The RF/t used by Wireless Transmitters"); + gridRfUsage = config.getInt("grid", "energy", 2, 0, 10, "The RF/t used by Grids"); + craftingGridRfUsage = config.getInt("craftingGrid", "energy", 4, 0, 10, "The RF/t used by Crafting Grids"); + patternGridRfUsage = config.getInt("patternGrid", "energy", 3, 0, 10, "The RF/t used by Pattern Grids"); + + controllerUsesRf = config.getBoolean("controllerUsesRf", "energy", true, "Whether the controller uses RF"); + + wirelessTransmitterBaseRange = config.getInt("range", "wirelessTransmitter", 16, 0, 10, "The base range of the Wireless Transmitter"); + + rangeUpgradeRfUsage = config.getInt("range", "upgrades", 8, 10, 0, "The additional RF/t used per Range Upgrade"); + speedUpgradeRfUsage = config.getInt("speed", "upgrades", 2, 10, 0, "The additional RF/t used per Speed Upgrade"); + craftingUpgradeRfUsage = config.getInt("crafting", "upgrades", 5, 10, 0, "The additional RF/t used per Crafting Upgrade"); + stackUpgradeRfUsage = config.getInt("stack", "upgrades", 12, 10, 0, "The additional RF/t used per Stack Upgrade"); + + wirelessTransmitterRangePerUpgrade = config.getInt("rangePerUpgrade", "upgrades", 8, 0, 10, "The additional range per Range Upgrade in the Wireless Transmitter"); + soldererSpeedIncreasePerUpgrade = config.getInt("soldererSpeedIncrasePerUpgrade", "upgrades", 1, 0, 10, "The additional speed increase per Speed Upgrade in the Solderer"); + + config.save(); } @EventHandler diff --git a/src/main/java/refinedstorage/tile/TileCrafter.java b/src/main/java/refinedstorage/tile/TileCrafter.java index 8e9ad5a0f..6358ba166 100755 --- a/src/main/java/refinedstorage/tile/TileCrafter.java +++ b/src/main/java/refinedstorage/tile/TileCrafter.java @@ -32,7 +32,15 @@ public class TileCrafter extends TileSlave implements ICraftingPatternContainer @Override public int getEnergyUsage() { - return 2 + RefinedStorageUtils.getUpgradeEnergyUsage(upgrades); + int usage = 2 + RefinedStorageUtils.getUpgradeEnergyUsage(upgrades); + + for (int i = 0; i < patterns.getSlots(); ++i) { + if (patterns.getStackInSlot(i) != null) { + usage++; + } + } + + return usage; } @Override