From d5f45d51aae4196536ba1d8c96d46d417ad0f130 Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Sun, 13 Oct 2019 15:34:30 +0200 Subject: [PATCH] Add config for storage block energy usage --- .../node/storage/StorageNetworkNode.java | 15 +++++- .../refinedstorage/config/ServerConfig.java | 48 ++++++++++++++++++- 2 files changed, 61 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java index 366976215..0a9520858 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java @@ -69,7 +69,20 @@ public class StorageNetworkNode extends NetworkNode implements IStorageScreen, I @Override public int getEnergyUsage() { - return 0; + switch (type) { + case ONE_K: + return RS.SERVER_CONFIG.getStorageBlock().getOneKUsage(); + case FOUR_K: + return RS.SERVER_CONFIG.getStorageBlock().getFourKUsage(); + case SIXTEEN_K: + return RS.SERVER_CONFIG.getStorageBlock().getSixteenKUsage(); + case SIXTY_FOUR_K: + return RS.SERVER_CONFIG.getStorageBlock().getSixtyFourKUsage(); + case CREATIVE: + return RS.SERVER_CONFIG.getStorageBlock().getCreativeUsage(); + default: + return 0; + } } @Override diff --git a/src/main/java/com/raoulvdberge/refinedstorage/config/ServerConfig.java b/src/main/java/com/raoulvdberge/refinedstorage/config/ServerConfig.java index 4829321d2..36ed443dc 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/config/ServerConfig.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/config/ServerConfig.java @@ -10,6 +10,7 @@ public class ServerConfig { private Cable cable; private Grid grid; private DiskDrive diskDrive; + private StorageBlock storageBlock; private Upgrades upgrades; public ServerConfig() { @@ -17,6 +18,7 @@ public class ServerConfig { cable = new Cable(); grid = new Grid(); diskDrive = new DiskDrive(); + storageBlock = new StorageBlock(); upgrades = new Upgrades(); spec = builder.build(); @@ -42,6 +44,10 @@ public class ServerConfig { return grid; } + public StorageBlock getStorageBlock() { + return storageBlock; + } + public ForgeConfigSpec getSpec() { return spec; } @@ -101,7 +107,7 @@ public class ServerConfig { private final ForgeConfigSpec.IntValue diskUsage; public DiskDrive() { - builder.push("diskdrive"); + builder.push("diskDrive"); usage = builder.comment("The energy used by the Disk Drive").defineInRange("usage", 0, 0, Integer.MAX_VALUE); diskUsage = builder.comment("The energy used per disk in the Disk Drive").defineInRange("diskUsage", 1, 0, Integer.MAX_VALUE); @@ -209,4 +215,44 @@ public class ServerConfig { return fortune3UpgradeUsage.get(); } } + + public class StorageBlock { + private final ForgeConfigSpec.IntValue oneKUsage; + private final ForgeConfigSpec.IntValue fourKUsage; + private final ForgeConfigSpec.IntValue sixteenKUsage; + private final ForgeConfigSpec.IntValue sixtyFourKUsage; + private final ForgeConfigSpec.IntValue creativeUsage; + + public StorageBlock() { + builder.push("storageBlock"); + + oneKUsage = builder.comment("The energy used by the 1k Storage Block").defineInRange("oneKUsage", 2, 0, Integer.MAX_VALUE); + fourKUsage = builder.comment("The energy used by the 4k Storage Block").defineInRange("fourKUsage", 4, 0, Integer.MAX_VALUE); + sixteenKUsage = builder.comment("The energy used by the 16k Storage Block").defineInRange("sixteenKUsage", 6, 0, Integer.MAX_VALUE); + sixtyFourKUsage = builder.comment("The energy used by the 64k Storage Block").defineInRange("sixtyFourKUsage", 8, 0, Integer.MAX_VALUE); + creativeUsage = builder.comment("The energy used by the Creative Storage Block").defineInRange("creativeUsage", 10, 0, Integer.MAX_VALUE); + + builder.pop(); + } + + public int getOneKUsage() { + return oneKUsage.get(); + } + + public int getFourKUsage() { + return fourKUsage.get(); + } + + public int getSixteenKUsage() { + return sixteenKUsage.get(); + } + + public int getSixtyFourKUsage() { + return sixtyFourKUsage.get(); + } + + public int getCreativeUsage() { + return creativeUsage.get(); + } + } }