Use Components for the Laser Relays instead of String using I18n

This commit is contained in:
Mrbysco 2024-03-12 20:37:07 +01:00
parent 08b4f923f2
commit 0226078aee
5 changed files with 23 additions and 17 deletions

View file

@ -34,6 +34,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.resources.language.I18n;
import net.minecraft.core.BlockPos;
import net.minecraft.network.chat.Component;
import net.minecraft.world.InteractionHand;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.entity.player.Player;
@ -214,14 +215,14 @@ public class BlockLaserRelay extends FullyDirectionalBlock.Container implements
BlockEntity tile = minecraft.level.getBlockEntity(pos);
if (tile instanceof TileEntityLaserRelay relay) {
String strg = relay.getExtraDisplayString();
Component strg = relay.getExtraDisplayString();
guiGraphics.drawString(minecraft.font, strg, (int) (resolution.getGuiScaledWidth() / 2f + 5), (int) (resolution.getGuiScaledHeight() / 2f + 5), 0xFFFFFF);
String expl;
Component expl;
if (compass) {
expl = relay.getCompassDisplayString();
} else {
expl = ChatFormatting.GRAY.toString() + ChatFormatting.ITALIC + I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.mode.noCompasss", I18n.get(CommonConfig.Other.relayConfigureItem.getDescriptionId()));
expl = Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.mode.noCompasss", Component.translatable(CommonConfig.Other.relayConfigureItem.getDescriptionId()).getString()).withStyle(ChatFormatting.GRAY, ChatFormatting.ITALIC);
}
guiGraphics.drawString(minecraft.font, expl, (int) (resolution.getGuiScaledWidth() / 2f + 5), (int) (resolution.getGuiScaledHeight() / 2f + 15), 0xFFFFFF);

View file

@ -22,6 +22,7 @@ import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import net.minecraft.network.chat.Component;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.block.entity.BlockEntityType;
@ -200,10 +201,10 @@ public abstract class TileEntityLaserRelay extends TileEntityInventoryBase {
}
@OnlyIn(Dist.CLIENT)
public abstract String getExtraDisplayString();
public abstract Component getExtraDisplayString();
@OnlyIn(Dist.CLIENT)
public abstract String getCompassDisplayString();
public abstract Component getCompassDisplayString();
public abstract void onCompassAction(Player player);

View file

@ -22,6 +22,7 @@ import net.minecraft.client.resources.language.I18n;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.chat.Component;
import net.minecraft.util.Mth;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.level.Level;
@ -259,14 +260,15 @@ public class TileEntityLaserRelayEnergy extends TileEntityLaserRelay {
@Override
@OnlyIn(Dist.CLIENT)
public String getExtraDisplayString() {
return I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.energy.extra") + ": " + ChatFormatting.DARK_RED + I18n.get(this.mode.name) + ChatFormatting.RESET;
public Component getExtraDisplayString() {
return Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.energy.extra").append(": ").append(Component.translatable(this.mode.name).withStyle(ChatFormatting.DARK_RED));
}
@Override
@OnlyIn(Dist.CLIENT)
public String getCompassDisplayString() {
return ChatFormatting.GREEN + I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.energy.display");
public Component getCompassDisplayString() {
return Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.energy.display").withStyle(ChatFormatting.GREEN);
}
@Override

View file

@ -22,6 +22,7 @@ import net.minecraft.client.resources.language.I18n;
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;
@ -251,14 +252,14 @@ public class TileEntityLaserRelayFluids extends TileEntityLaserRelay {
@Override
@OnlyIn(Dist.CLIENT)
public String getExtraDisplayString() {
return I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.fluid.extra") + ": " + ChatFormatting.DARK_RED + I18n.get(this.mode.name) + ChatFormatting.RESET;
public Component getExtraDisplayString() {
return Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.fluid.extra").append(": ").append(Component.translatable(this.mode.name).withStyle(ChatFormatting.DARK_RED));
}
@Override
@OnlyIn(Dist.CLIENT)
public String getCompassDisplayString() {
return ChatFormatting.GREEN + I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.energy.display");
public Component getCompassDisplayString() {
return Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.energy.display").withStyle(ChatFormatting.GREEN);
}
@Override

View file

@ -23,6 +23,7 @@ import net.minecraft.client.resources.language.I18n;
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.item.ItemStack;
import net.minecraft.world.level.Level;
@ -158,14 +159,14 @@ public class TileEntityLaserRelayItem extends TileEntityLaserRelay {
@Override
@OnlyIn(Dist.CLIENT)
public String getExtraDisplayString() {
return I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.item.extra") + ": " + ChatFormatting.DARK_RED + this.getPriority() + ChatFormatting.RESET;
public Component getExtraDisplayString() {
return Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.item.extra").append(": ").append(Component.literal(String.valueOf(this.getPriority())).withStyle(ChatFormatting.DARK_RED));
}
@Override
@OnlyIn(Dist.CLIENT)
public String getCompassDisplayString() {
return ChatFormatting.GREEN + I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.item.display.1") + "\n" + I18n.get("info." + ActuallyAdditions.MODID + ".laserRelay.item.display.2");
public Component getCompassDisplayString() {
return Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.item.display.1").append("\n").append(Component.translatable("info." + ActuallyAdditions.MODID + ".laserRelay.item.display.2")).withStyle(ChatFormatting.GREEN);
}
@Override