From 125b84121eff28a20d8b7e19e6a50afdf2bb3b36 Mon Sep 17 00:00:00 2001 From: Gustavo Date: Fri, 24 Jul 2026 23:21:25 +1000 Subject: [PATCH 1/3] add diode info provider --- .../resources/assets/gtceu/lang/en_ud.json | 1 + .../resources/assets/gtceu/lang/en_us.json | 1 + .../gtceu/data/lang/LangHandler.java | 2 ++ .../gtceu/integration/jade/GTJadePlugin.java | 2 ++ .../jade/provider/DiodeModeProvider.java | 34 +++++++++++++++++++ 5 files changed, 40 insertions(+) create mode 100644 src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java diff --git a/src/generated/resources/assets/gtceu/lang/en_ud.json b/src/generated/resources/assets/gtceu/lang/en_ud.json index 6b695382e29..136ed37b519 100644 --- a/src/generated/resources/assets/gtceu/lang/en_ud.json +++ b/src/generated/resources/assets/gtceu/lang/en_ud.json @@ -1962,6 +1962,7 @@ "config.jade.plugin_gtceu.cable_info": "oɟuI ǝןqɐƆ ]nƎƆ⟘⅁[", "config.jade.plugin_gtceu.controllable_provider": "ǝןqɐןןoɹʇuoƆ ]nƎƆ⟘⅁[", "config.jade.plugin_gtceu.data_bank": "oɟuI ʞuɐᗺ ɐʇɐᗡ ]nƎƆ⟘⅁[", + "config.jade.plugin_gtceu.diode_provider": "oɟuI ǝpoıᗡ ]nƎƆ⟘⅁[", "config.jade.plugin_gtceu.electric_container_provider": "ɹǝuıɐʇuoƆ ɔıɹʇɔǝןƎ ]nƎƆ⟘⅁[", "config.jade.plugin_gtceu.energy_converter_provider": "ǝpoW ɹǝʇɹǝʌuoƆ ʎbɹǝuƎ ]nƎƆ⟘⅁[", "config.jade.plugin_gtceu.exhaust_vent_info": "oɟuI ʇuǝΛ ʇsnɐɥxƎ ]nƎƆ⟘⅁[", diff --git a/src/generated/resources/assets/gtceu/lang/en_us.json b/src/generated/resources/assets/gtceu/lang/en_us.json index 5fe7f2da4e8..cd40a91eeea 100644 --- a/src/generated/resources/assets/gtceu/lang/en_us.json +++ b/src/generated/resources/assets/gtceu/lang/en_us.json @@ -1962,6 +1962,7 @@ "config.jade.plugin_gtceu.cable_info": "[GTCEu] Cable Info", "config.jade.plugin_gtceu.controllable_provider": "[GTCEu] Controllable", "config.jade.plugin_gtceu.data_bank": "[GTCEu] Data Bank Info", + "config.jade.plugin_gtceu.diode_provider": "[GTCEu] Diode Info", "config.jade.plugin_gtceu.electric_container_provider": "[GTCEu] Electric Container", "config.jade.plugin_gtceu.energy_converter_provider": "[GTCEu] Energy Converter Mode", "config.jade.plugin_gtceu.exhaust_vent_info": "[GTCEu] Exhaust Vent Info", diff --git a/src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java b/src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java index 67beb12d17c..849fae21701 100644 --- a/src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java +++ b/src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java @@ -1323,6 +1323,8 @@ public static void init(RegistrateLangProvider provider) { provider.add("config.jade.plugin_gtceu.me_pattern_buffer", "[GTCEu] Pattern Buffer Info"); provider.add("config.jade.plugin_gtceu.me_pattern_buffer_proxy", "[GTCEu] Pattern Buffer Proxy Info"); provider.add("config.jade.plugin_gtceu.energy_converter_provider", "[GTCEu] Energy Converter Mode"); + provider.add("config.jade.plugin_gtceu.diode_provider", "[GTCEu] Diode Info"); + provider.add("config.jade.plugin_gtceu.ldp_endpoint", "[GTCEu] Long Distance Pipeline Endpoint Info"); // gui diff --git a/src/main/java/com/gregtechceu/gtceu/integration/jade/GTJadePlugin.java b/src/main/java/com/gregtechceu/gtceu/integration/jade/GTJadePlugin.java index 3570040f874..17af76efc17 100644 --- a/src/main/java/com/gregtechceu/gtceu/integration/jade/GTJadePlugin.java +++ b/src/main/java/com/gregtechceu/gtceu/integration/jade/GTJadePlugin.java @@ -39,6 +39,7 @@ public void register(IWailaCommonRegistration registration) { new StainedColorProvider(), new HazardCleanerBlockProvider(), new TransformerBlockProvider(), + new DiodeModeProvider(), new PrimitivePumpBlockProvider(), new DataBankBlockProvider(), new EnergyConverterModeProvider(), @@ -73,6 +74,7 @@ public void registerClient(IWailaClientRegistration registration) { new StainedColorProvider(), new HazardCleanerBlockProvider(), new TransformerBlockProvider(), + new DiodeModeProvider(), new PrimitivePumpBlockProvider(), new DataBankBlockProvider(), new LDPEndpointProvider(), diff --git a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java new file mode 100644 index 00000000000..74b073849ea --- /dev/null +++ b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java @@ -0,0 +1,34 @@ +package com.gregtechceu.gtceu.integration.jade.provider; + +import com.gregtechceu.gtceu.GTCEu; +import com.gregtechceu.gtceu.api.GTValues; +import com.gregtechceu.gtceu.common.machine.multiblock.part.DiodePartMachine; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.entity.BlockEntity; +import snownee.jade.api.BlockAccessor; +import snownee.jade.api.ITooltip; +import snownee.jade.api.config.IPluginConfig; + +public class DiodeModeProvider extends MachineInfoProvider { + + public DiodeModeProvider() { + super(GTCEu.id("diode_provider"), DiodePartMachine.class); + } + + @Override + protected CompoundTag write(DiodePartMachine machine) { + var tag = new CompoundTag(); + tag.putInt("voltage", machine.getTier()); + tag.putInt("amps", machine.getAmps()); + return tag; + } + + @Override + protected void addTooltip(CompoundTag data, ITooltip tooltip, Player player, BlockAccessor block, BlockEntity blockEntity, IPluginConfig config) { + tooltip.add(Component.translatable( + "gtceu.top.transform_output", + (GTValues.VNF[data.getInt("voltage")] + " §r(" + data.getInt("amps") + "A)"))); + } +} From 8300238469e917cdeab1ee8d6c25f664a43980bc Mon Sep 17 00:00:00 2001 From: Gustavo Date: Fri, 24 Jul 2026 23:37:30 +1000 Subject: [PATCH 2/3] spotless --- .../gtceu/integration/jade/provider/DiodeModeProvider.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java index 74b073849ea..59f40bb55ef 100644 --- a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java +++ b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java @@ -3,10 +3,12 @@ import com.gregtechceu.gtceu.GTCEu; import com.gregtechceu.gtceu.api.GTValues; import com.gregtechceu.gtceu.common.machine.multiblock.part.DiodePartMachine; + import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.block.entity.BlockEntity; + import snownee.jade.api.BlockAccessor; import snownee.jade.api.ITooltip; import snownee.jade.api.config.IPluginConfig; @@ -26,7 +28,8 @@ protected CompoundTag write(DiodePartMachine machine) { } @Override - protected void addTooltip(CompoundTag data, ITooltip tooltip, Player player, BlockAccessor block, BlockEntity blockEntity, IPluginConfig config) { + protected void addTooltip(CompoundTag data, ITooltip tooltip, Player player, BlockAccessor block, + BlockEntity blockEntity, IPluginConfig config) { tooltip.add(Component.translatable( "gtceu.top.transform_output", (GTValues.VNF[data.getInt("voltage")] + " §r(" + data.getInt("amps") + "A)"))); From 5d5af34209975911f46da45c305342339b0fa58f Mon Sep 17 00:00:00 2001 From: Gustavo Date: Sat, 25 Jul 2026 13:03:12 +1000 Subject: [PATCH 3/3] add input amps to provider --- .../machine/multiblock/part/DiodePartMachine.java | 2 -- .../jade/provider/DiodeModeProvider.java | 15 ++++++++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/gregtechceu/gtceu/common/machine/multiblock/part/DiodePartMachine.java b/src/main/java/com/gregtechceu/gtceu/common/machine/multiblock/part/DiodePartMachine.java index c24bd3b359d..9bbda5f3c57 100644 --- a/src/main/java/com/gregtechceu/gtceu/common/machine/multiblock/part/DiodePartMachine.java +++ b/src/main/java/com/gregtechceu/gtceu/common/machine/multiblock/part/DiodePartMachine.java @@ -16,7 +16,6 @@ import net.minecraft.network.chat.Component; import net.minecraft.util.StringRepresentable; import net.minecraft.world.InteractionResult; -import net.minecraft.world.level.block.state.properties.EnumProperty; import lombok.Getter; @@ -61,7 +60,6 @@ public static AmpMode getByValue(int amps) { } } - public static final EnumProperty AMP_MODE_PROPERTY = GTMachineModelProperties.DIODE_AMP_MODE; // spotless:on public static int MAX_AMPS = 16; diff --git a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java index 59f40bb55ef..21d594bbeb9 100644 --- a/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java +++ b/src/main/java/com/gregtechceu/gtceu/integration/jade/provider/DiodeModeProvider.java @@ -4,6 +4,7 @@ import com.gregtechceu.gtceu.api.GTValues; import com.gregtechceu.gtceu.common.machine.multiblock.part.DiodePartMachine; +import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Player; @@ -22,6 +23,7 @@ public DiodeModeProvider() { @Override protected CompoundTag write(DiodePartMachine machine) { var tag = new CompoundTag(); + tag.putInt("side", machine.getFrontFacing().get3DDataValue()); tag.putInt("voltage", machine.getTier()); tag.putInt("amps", machine.getAmps()); return tag; @@ -30,8 +32,15 @@ protected CompoundTag write(DiodePartMachine machine) { @Override protected void addTooltip(CompoundTag data, ITooltip tooltip, Player player, BlockAccessor block, BlockEntity blockEntity, IPluginConfig config) { - tooltip.add(Component.translatable( - "gtceu.top.transform_output", - (GTValues.VNF[data.getInt("voltage")] + " §r(" + data.getInt("amps") + "A)"))); + if (block.getHitResult().getDirection() == + Direction.from3DDataValue(data.getInt("side"))) { + tooltip.add(Component.translatable( + "gtceu.top.transform_output", + (GTValues.VNF[data.getInt("voltage")] + " §r(" + data.getInt("amps") + "A)"))); + } else { + tooltip.add(Component.translatable( + "gtceu.top.transform_input", + (GTValues.VNF[data.getInt("voltage")] + " §r(16A)"))); + } } }