aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
diff options
context:
space:
mode:
authorRaven Szewczyk <git@eigenraven.me>2024-05-25 13:42:15 +0100
committerRaven Szewczyk <git@eigenraven.me>2024-05-25 13:42:15 +0100
commite6ddc31395e2f53e4b08fc4cf7091cf2744a23e2 (patch)
tree78dee2359aaba6fc526f4189dcfc871c0bb6934f /src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
parentf5cb8a50061da2279812f8d11d7e0451350f9e6c (diff)
downloadGT5-Unofficial-e6ddc31395e2f53e4b08fc4cf7091cf2744a23e2.tar.gz
GT5-Unofficial-e6ddc31395e2f53e4b08fc4cf7091cf2744a23e2.tar.bz2
GT5-Unofficial-e6ddc31395e2f53e4b08fc4cf7091cf2744a23e2.zip
Move kekztech sources
Diffstat (limited to 'src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java')
-rw-r--r--src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java190
1 files changed, 190 insertions, 0 deletions
diff --git a/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java b/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
new file mode 100644
index 0000000000..971aac494a
--- /dev/null
+++ b/src/main/java/common/itemBlocks/IB_LapotronicEnergyUnit.java
@@ -0,0 +1,190 @@
+package common.itemBlocks;
+
+import static com.google.common.math.LongMath.pow;
+
+import java.math.BigInteger;
+import java.util.List;
+
+import net.minecraft.block.Block;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemBlock;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.StatCollector;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.util.GT_Utility;
+
+public class IB_LapotronicEnergyUnit extends ItemBlock {
+
+ public IB_LapotronicEnergyUnit(Block block) {
+ super(block);
+ }
+
+ @Override
+ public int getMetadata(int meta) {
+ return meta;
+ }
+
+ @Override
+ public boolean getHasSubtypes() {
+ return true;
+ }
+
+ @Override
+ public String getUnlocalizedName(ItemStack stack) {
+ return super.getUnlocalizedName() + "." + stack.getItemDamage();
+ }
+
+ // 5 Minutes, 5 mins * 60s * 20 ticks.
+ public static long LSC_time_between_wireless_rebalance_in_ticks = 5L * 60L * 20L;
+
+ // 60 Trillion EU.
+ public static BigInteger LSC_wireless_eu_cap = BigInteger.valueOf(60 * pow(10, 12));
+
+ // 10 Billion EU/t
+ private static final BigInteger UHV_cap_eu_per_tick = LSC_wireless_eu_cap
+ .divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
+
+ // 6 Quadrillion EU.
+ public static BigInteger UEV_wireless_eu_cap = BigInteger.valueOf(100 * 60 * pow(10, 12));
+
+ // 1 Trillion EU/t
+ private static final BigInteger UEV_cap_eu_per_tick = UEV_wireless_eu_cap
+ .divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
+
+ // 600 Quadrillion EU.
+ public static BigInteger UIV_wireless_eu_cap = BigInteger.valueOf(60 * pow(10, 16));
+
+ // 100 Trillion EU/t
+ private static final BigInteger UIV_cap_eu_per_tick = UIV_wireless_eu_cap
+ .divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
+
+ // 60 Quintillion EU.
+ public static BigInteger UMV_wireless_eu_cap = UIV_wireless_eu_cap.multiply(BigInteger.valueOf(100));
+
+ // 10 Quadrillion EU/t
+ private static final BigInteger UMV_cap_eu_per_tick = UMV_wireless_eu_cap
+ .divide(BigInteger.valueOf(LSC_time_between_wireless_rebalance_in_ticks));
+
+ public static long EV_cap_storage = 60_000_000L;
+ public static long IV_cap_storage = 600_000_000L;
+ public static long LuV_cap_storage = 6_000_000_000L;
+ public static long ZPM_cap_storage = 60_000_000_000L;
+ public static long UV_cap_storage = 600_000_000_000L;
+ public static long UHV_cap_storage = Long.MAX_VALUE;
+ public static long UEV_cap_storage = Long.MAX_VALUE;
+ public static long UIV_cap_storage = Long.MAX_VALUE;
+ public static BigInteger UMV_cap_storage = BigInteger.valueOf(UIV_cap_storage)
+ .pow(2);
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public void addInformation(ItemStack stack, EntityPlayer player, List lines, boolean advancedTooltips) {
+ lines.add(StatCollector.translateToLocal("tile.kekztech_lapotronicenergyunit_block.desc"));
+ switch (stack.getItemDamage()) {
+ case 1:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(IV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ break;
+ case 2:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(LuV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ break;
+ case 3:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(ZPM_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ break;
+ case 4:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ break;
+ case 5:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UHV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ lines.add(
+ "Supports up to " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UHV_cap_eu_per_tick)
+ + EnumChatFormatting.GRAY
+ + "EU/t of wireless transfer per "
+ + GT_Values.TIER_COLORS[9]
+ + GT_Values.VN[9]
+ + EnumChatFormatting.GRAY
+ + " capacitor.");
+ break;
+ case 6:
+ lines.add("Capacity: None");
+ break;
+ case 7:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(EV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + " EU");
+ break;
+ case 8:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UEV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ lines.add(
+ "Supports up to " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UEV_cap_eu_per_tick)
+ + EnumChatFormatting.GRAY
+ + "EU/t of wireless transfer per "
+ + GT_Values.TIER_COLORS[10]
+ + GT_Values.VN[10]
+ + EnumChatFormatting.GRAY
+ + " capacitor.");
+ break;
+ case 9:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UIV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ lines.add(
+ "Supports up to " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UIV_cap_eu_per_tick)
+ + EnumChatFormatting.GRAY
+ + "EU/t of wireless transfer per "
+ + GT_Values.TIER_COLORS[11]
+ + GT_Values.VN[11]
+ + EnumChatFormatting.GRAY
+ + " capacitor.");
+ break;
+ case 10:
+ lines.add(
+ "Capacity: " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UMV_cap_storage)
+ + EnumChatFormatting.GRAY
+ + "EU");
+ lines.add(
+ "Supports up to " + EnumChatFormatting.RED
+ + GT_Utility.formatNumbers(UMV_cap_eu_per_tick)
+ + EnumChatFormatting.GRAY
+ + "EU/t of wireless transfer per "
+ + GT_Values.TIER_COLORS[12]
+ + GT_Values.VN[12]
+ + EnumChatFormatting.GRAY
+ + " capacitor.");
+ break;
+ }
+ }
+}