diff --git a/src/generated/resources/assets/gtceu/lang/en_ud.json b/src/generated/resources/assets/gtceu/lang/en_ud.json index 5dd7bd5552d..fadd44ee66c 100644 --- a/src/generated/resources/assets/gtceu/lang/en_ud.json +++ b/src/generated/resources/assets/gtceu/lang/en_ud.json @@ -3903,6 +3903,7 @@ "gtceu.top.buffer_bound_pos": "%s :Z '%s :ʎ '%s :X - o⟘ punoᗺ", "gtceu.top.buffer_not_bound": "punoᗺ ʎןʇuǝɹɹnƆ ʇoN ɹǝɟɟnᗺ", "gtceu.top.cable_amperage": " :ǝbɐɹǝdɯⱯ", + "gtceu.top.cable_overloaded": "ɹ§%s%% :⅁NI⟘ⱯƎHᴚƎΛOㄣ§", "gtceu.top.cable_voltage": " :ǝbɐʇןoΛ", "gtceu.top.convert_eu": "ɹ§ƎℲɔ§ >- ɹ§∩Ǝǝ§ buıʇɹǝʌuoƆ", "gtceu.top.convert_fe": "ɹ§∩Ǝǝ§ >- ɹ§ƎℲɔ§ buıʇɹǝʌuoƆ", diff --git a/src/generated/resources/assets/gtceu/lang/en_us.json b/src/generated/resources/assets/gtceu/lang/en_us.json index bd4a84627d4..056a9b161b3 100644 --- a/src/generated/resources/assets/gtceu/lang/en_us.json +++ b/src/generated/resources/assets/gtceu/lang/en_us.json @@ -3903,6 +3903,7 @@ "gtceu.top.buffer_bound_pos": "Bound To - X: %s, Y: %s, Z: %s", "gtceu.top.buffer_not_bound": "Buffer Not Currently Bound", "gtceu.top.cable_amperage": "Amperage: ", + "gtceu.top.cable_overloaded": "§4OVERHEATING: %s%%§r", "gtceu.top.cable_voltage": "Voltage: ", "gtceu.top.convert_eu": "Converting §eEU§r -> §cFE§r", "gtceu.top.convert_fe": "Converting §cFE§r -> §eEU§r", diff --git a/src/main/java/com/gregtechceu/gtceu/common/blockentity/CableBlockEntity.java b/src/main/java/com/gregtechceu/gtceu/common/blockentity/CableBlockEntity.java index ba3c179a040..c2321af7e29 100644 --- a/src/main/java/com/gregtechceu/gtceu/common/blockentity/CableBlockEntity.java +++ b/src/main/java/com/gregtechceu/gtceu/common/blockentity/CableBlockEntity.java @@ -61,7 +61,7 @@ public class CableBlockEntity extends PipeBlockEntity handlers = new EnumMap<>(Direction.class); private final PerTickLongCounter maxVoltageCounter = new PerTickLongCounter(); @@ -207,7 +207,7 @@ public long getMaxVoltage() { return getNodeData().getVoltage(); } - public int getDefaultTemp() { + public static int getDefaultTemp() { return 293; } diff --git a/src/main/java/com/gregtechceu/gtceu/data/lang/IntegrationLang.java b/src/main/java/com/gregtechceu/gtceu/data/lang/IntegrationLang.java index e421abd7451..ea1223974ec 100644 --- a/src/main/java/com/gregtechceu/gtceu/data/lang/IntegrationLang.java +++ b/src/main/java/com/gregtechceu/gtceu/data/lang/IntegrationLang.java @@ -84,6 +84,7 @@ private static void initWailaLikeLang(RegistrateLangProvider provider) { provider.add("gtceu.top.allow_output_input", "Allow Input"); provider.add("gtceu.top.cable_voltage", "Voltage: "); provider.add("gtceu.top.cable_amperage", "Amperage: "); + provider.add("gtceu.top.cable_overloaded", "§4OVERHEATING: %s%%§r"); provider.add("gtceu.top.exhaust_vent_direction", "Exhaust Vent: %s"); provider.add("gtceu.top.exhaust_vent_blocked", "Blocked"); provider.add("gtceu.top.machine_mode", "Machine Mode: "); diff --git a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/CableBlockProvider.java b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/CableBlockProvider.java index b91c909ee95..fa3df3dff2c 100644 --- a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/CableBlockProvider.java +++ b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/CableBlockProvider.java @@ -31,6 +31,7 @@ public void appendTooltip(ITooltip iTooltip, BlockAccessor blockAccessor, IPlugi var tag = data.getCompound("cableData"); long voltage = tag.getLong("currentVoltage"); double amperage = tag.getDouble("currentAmperage"); + int temperature = tag.getInt("temperature"); iTooltip.add(Component.translatable("gtceu.top.cable_voltage")); if (voltage != 0) { iTooltip.append(Component.literal(GTValues.VNF[GTUtil.getTierByVoltage(voltage)])); @@ -42,7 +43,13 @@ public void appendTooltip(ITooltip iTooltip, BlockAccessor blockAccessor, IPlugi if (amperage != 0) { iTooltip.append(Component.literal(DECIMAL_FORMAT_1F.format(amperage) + "A / ")); } - iTooltip.append(Component.literal(DECIMAL_FORMAT_1F.format(tag.getDouble("maxAmperage")) + "A")); + iTooltip.append(Component.translatable("gtceu.jade.amperage_use", + DECIMAL_FORMAT_1F.format(tag.getDouble("maxAmperage")))); + + if (temperature != CableBlockEntity.getDefaultTemp()) { + iTooltip.add(Component.translatable("gtceu.top.cable_overloaded", progressToFailure( + CableBlockEntity.getDefaultTemp(), CableBlockEntity.getMeltTemp(), temperature))); + } } } } @@ -59,6 +66,7 @@ public void appendServerData(CompoundTag compoundTag, BlockAccessor blockAccesso cableData.putLong("currentVoltage", cable.getCurrentMaxVoltage()); cableData.putDouble("maxAmperage", cable.getMaxAmperage()); cableData.putDouble("currentAmperage", cable.getAverageAmperage()); + cableData.putInt("temperature", cable.getTemperature()); data.put("cableData", cableData); } } @@ -69,4 +77,8 @@ public void appendServerData(CompoundTag compoundTag, BlockAccessor blockAccesso public ResourceLocation getUid() { return GTCEu.id("cable_info"); } + + private int progressToFailure(int base, int melt, int current) { + return (100 * (current - base)) / (melt - base); + } }