Skip to content

Commit

Permalink
use the right classes this time for transformer information (#1641)
Browse files Browse the repository at this point in the history
  • Loading branch information
YoungOnionMC authored Aug 5, 2024
1 parent b42c3d2 commit 4dcf2f0
Show file tree
Hide file tree
Showing 5 changed files with 88 additions and 83 deletions.
2 changes: 1 addition & 1 deletion src/generated/resources/assets/gtceu/lang/en_ud.json
Original file line number Diff line number Diff line change
Expand Up @@ -2309,7 +2309,7 @@
"config.jade.plugin_gtceu.recipe_logic_provider": "ɔıboꞀ ǝdıɔǝᴚ ]nƎƆ⟘⅁[",
"config.jade.plugin_gtceu.recipe_output_info": "oɟuI ʇndʇnO ǝdıɔǝᴚ ]nƎƆ⟘⅁[",
"config.jade.plugin_gtceu.stained_color": "oɟuI ʞɔoןᗺ pǝuıɐʇS ]nƎƆ⟘⅁[",
"config.jade.plugin_gtceu.transformer_provider": "oɟuI ɹǝɯɹoɟsuɐɹ⟘ ]nƎƆ⟘⅁[",
"config.jade.plugin_gtceu.transformer": "oɟuI ɹǝɯɹoɟsuɐɹ⟘ ]nƎƆ⟘⅁[",
"config.jade.plugin_gtceu.workable_provider": "ǝןqɐʞɹoM ]nƎƆ⟘⅁[",
"cover.advanced_energy_detector.invert.disabled.0": "ןɐɯɹoN :ʇndʇnO",
"cover.advanced_energy_detector.invert.disabled.1": "",
Expand Down
2 changes: 1 addition & 1 deletion src/generated/resources/assets/gtceu/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -2309,7 +2309,7 @@
"config.jade.plugin_gtceu.recipe_logic_provider": "[GTCEu] Recipe Logic",
"config.jade.plugin_gtceu.recipe_output_info": "[GTCEu] Recipe Output Info",
"config.jade.plugin_gtceu.stained_color": "[GTCEu] Stained Block Info",
"config.jade.plugin_gtceu.transformer_provider": "[GTCEu] Transformer Info",
"config.jade.plugin_gtceu.transformer": "[GTCEu] Transformer Info",
"config.jade.plugin_gtceu.workable_provider": "[GTCEu] Workable",
"cover.advanced_energy_detector.invert.disabled.0": "Output: Normal",
"cover.advanced_energy_detector.invert.disabled.1": "",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1206,7 +1206,7 @@ public static void init(RegistrateLangProvider provider) {
provider.add("config.jade.plugin_gtceu.maintenance_info", "[GTCEu] Maintenance Info");
provider.add("config.jade.plugin_gtceu.multiblock_structure", "[GTCEu] MultiBlock Structure");
provider.add("config.jade.plugin_gtceu.parallel_info", "[GTCEu] Parallel Info");
provider.add("config.jade.plugin_gtceu.transformer_provider", "[GTCEu] Transformer Info");
provider.add("config.jade.plugin_gtceu.transformer", "[GTCEu] Transformer Info");
provider.add("config.jade.plugin_gtceu.stained_color", "[GTCEu] Stained Block Info");
// gui
provider.add("gtceu.recipe_type.show_recipes", "Show Recipes");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,68 +2,74 @@

import com.gregtechceu.gtceu.GTCEu;
import com.gregtechceu.gtceu.api.GTValues;
import com.gregtechceu.gtceu.api.machine.IMachineBlockEntity;
import com.gregtechceu.gtceu.api.machine.MetaMachine;
import com.gregtechceu.gtceu.common.machine.electric.TransformerMachine;

import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.resources.ResourceLocation;

import org.jetbrains.annotations.Nullable;
import snownee.jade.api.BlockAccessor;
import snownee.jade.api.IBlockComponentProvider;
import snownee.jade.api.IServerDataProvider;
import snownee.jade.api.ITooltip;
import snownee.jade.api.config.IPluginConfig;

public class TransformerBlockProvider extends CapabilityBlockProvider<TransformerMachine> {

public TransformerBlockProvider() {
super(GTCEu.id("transformer_provider"));
}
public class TransformerBlockProvider implements IBlockComponentProvider, IServerDataProvider<BlockAccessor> {

@Override
protected @Nullable TransformerMachine getCapability(Level level, BlockPos pos, @Nullable Direction side) {
if (MetaMachine.getMachine(level, pos) instanceof TransformerMachine transformer) {
return transformer;
}
return null;
public ResourceLocation getUid() {
return GTCEu.id("transformer");
}

@Override
protected void write(CompoundTag data, TransformerMachine machine) {
data.putInt("side", machine.getFrontFacing().get3DDataValue());
data.putBoolean("transformUp", machine.isTransformUp());
data.putInt("baseAmp", machine.getBaseAmp());
data.putInt("baseVoltage", machine.getTier());
public void appendServerData(CompoundTag compoundTag, BlockAccessor blockAccessor) {
if (blockAccessor.getBlockEntity() instanceof IMachineBlockEntity blockEntity) {
MetaMachine machine = blockEntity.getMetaMachine();
if (machine instanceof TransformerMachine transformer) {
compoundTag.putInt("side", transformer.getFrontFacing().get3DDataValue());
compoundTag.putBoolean("transformUp", transformer.isTransformUp());
compoundTag.putInt("baseAmp", transformer.getBaseAmp());
compoundTag.putInt("baseVoltage", transformer.getTier());
}
}
}

@Override
protected void addTooltip(CompoundTag capData, ITooltip tooltip, Player player, BlockAccessor block,
BlockEntity blockEntity, IPluginConfig config) {
boolean transformUp = capData.getBoolean("transformUp");
int voltage = capData.getInt("baseVoltage");
int amp = capData.getInt("baseAmp");
if (transformUp) {
tooltip.add(Component.translatable("gtceu.top.transform_up",
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A) -> " + GTValues.VNF[voltage + 1] + " §r(" + amp +
"A)")));
} else {
tooltip.add(Component.translatable("gtceu.top.transform_down",
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A) -> " + GTValues.VNF[voltage] + " §r(" + amp * 4 +
"A)")));
}
public void appendTooltip(ITooltip tooltip, BlockAccessor blockAccessor, IPluginConfig iPluginConfig) {
if (blockAccessor.getBlockEntity() instanceof IMachineBlockEntity blockEntity) {
MetaMachine machine = blockEntity.getMetaMachine();
if (machine instanceof TransformerMachine transformer) {
boolean transformUp = blockAccessor.getServerData().getBoolean("transformUp");
int voltage = blockAccessor.getServerData().getInt("baseVoltage");
int amp = blockAccessor.getServerData().getInt("baseAmp");
if (transformUp) {
tooltip.add(Component.translatable("gtceu.top.transform_up",
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A) -> " + GTValues.VNF[voltage + 1] + " §r(" +
amp +
"A)")));
} else {
tooltip.add(Component.translatable("gtceu.top.transform_down",
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A) -> " + GTValues.VNF[voltage] + " §r(" +
amp * 4 +
"A)")));
}

if (block.getHitResult().getDirection() == Direction.from3DDataValue(capData.getInt("side"))) {
tooltip.add(
Component.translatable((transformUp ? "gtceu.top.transform_output" : "gtceu.top.transform_input"),
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A)")));
} else {
tooltip.add(
Component.translatable((transformUp ? "gtceu.top.transform_input" : "gtceu.top.transform_output"),
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A)")));
if (blockAccessor.getHitResult().getDirection() ==
Direction.from3DDataValue(blockAccessor.getServerData().getInt("side"))) {
tooltip.add(
Component.translatable(
(transformUp ? "gtceu.top.transform_output" : "gtceu.top.transform_input"),
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A)")));
} else {
tooltip.add(
Component.translatable(
(transformUp ? "gtceu.top.transform_input" : "gtceu.top.transform_output"),
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A)")));
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,55 +5,54 @@
import com.gregtechceu.gtceu.api.machine.MetaMachine;
import com.gregtechceu.gtceu.common.machine.electric.TransformerMachine;

import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;

import mcjty.theoneprobe.api.IProbeHitData;
import mcjty.theoneprobe.api.IProbeInfo;
import org.jetbrains.annotations.Nullable;
import mcjty.theoneprobe.api.IProbeInfoProvider;
import mcjty.theoneprobe.api.ProbeMode;

public class TransformerInfoProvider extends CapabilityInfoProvider<TransformerMachine> {
public class TransformerInfoProvider implements IProbeInfoProvider {

@Override
protected @Nullable TransformerMachine getCapability(Level level, BlockPos pos, @Nullable Direction side) {
if (MetaMachine.getMachine(level, pos) instanceof TransformerMachine transformer) {
return transformer;
}
return null;
}

@Override
protected void addProbeInfo(TransformerMachine capability, IProbeInfo probeInfo, Player player,
BlockEntity blockEntity, IProbeHitData data) {
boolean transformUp = capability.isTransformUp();
int voltage = capability.getTier();
int amp = capability.getBaseAmp();
int side = capability.getFrontFacing().get3DDataValue();

IProbeInfo verticalPane = probeInfo.vertical(probeInfo.defaultLayoutStyle().spacing(0));
if (transformUp) {
verticalPane.text(Component.translatable("gtceu.top.transform_up",
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A) -> " + GTValues.VNF[voltage + 1] + " §r(" + amp +
"A)")));
} else {
verticalPane.text(Component.translatable("gtceu.top.transform_down",
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A) -> " + GTValues.VNF[voltage] + " §r(" + amp * 4 +
"A)")));
}

if (data.getSideHit() == Direction.from3DDataValue(side)) {
verticalPane.text(
Component.translatable((transformUp ? "gtceu.top.transform_output" : "gtceu.top.transform_input"),
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A)")));
} else {
verticalPane.text(
Component.translatable((transformUp ? "gtceu.top.transform_input" : "gtceu.top.transform_output"),
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A)")));
public void addProbeInfo(ProbeMode probeMode, IProbeInfo iProbeInfo, Player player, Level level,
BlockState blockState, IProbeHitData iProbeHitData) {
if (MetaMachine.getMachine(level, iProbeHitData.getPos()) instanceof TransformerMachine transformer) {

boolean transformUp = transformer.isTransformUp();
int voltage = transformer.getTier();
int amp = transformer.getBaseAmp();
int side = transformer.getFrontFacing().get3DDataValue();

IProbeInfo verticalPane = iProbeInfo.vertical(iProbeInfo.defaultLayoutStyle().spacing(0));
if (transformUp) {
verticalPane.text(Component.translatable("gtceu.top.transform_up",
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A) -> " + GTValues.VNF[voltage + 1] + " §r(" +
amp +
"A)")));
} else {
verticalPane.text(Component.translatable("gtceu.top.transform_down",
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A) -> " + GTValues.VNF[voltage] + " §r(" +
amp * 4 +
"A)")));
}

if (iProbeHitData.getSideHit() == Direction.from3DDataValue(side)) {
verticalPane.text(
Component.translatable(
(transformUp ? "gtceu.top.transform_output" : "gtceu.top.transform_input"),
(GTValues.VNF[voltage + 1] + " §r(" + amp + "A)")));
} else {
verticalPane.text(
Component.translatable(
(transformUp ? "gtceu.top.transform_input" : "gtceu.top.transform_output"),
(GTValues.VNF[voltage] + " §r(" + amp * 4 + "A)")));
}
}
}

Expand Down

0 comments on commit 4dcf2f0

Please sign in to comment.