Skip to content

Commit a1f82a7

Browse files
committed
Messages are now translated.
1 parent 014f5bb commit a1f82a7

10 files changed

Lines changed: 65 additions & 14 deletions

File tree

src/main/java/com/azuredoom/classescore/command/ClassCommand.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import com.hypixel.hytale.component.Ref;
44
import com.hypixel.hytale.component.Store;
5-
import com.hypixel.hytale.server.core.Message;
65
import com.hypixel.hytale.server.core.command.system.CommandContext;
76
import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
87
import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
@@ -16,6 +15,7 @@
1615

1716
import com.azuredoom.classescore.ClassesCore;
1817
import com.azuredoom.classescore.api.ClassesCoreAPI;
18+
import com.azuredoom.classescore.lang.BaseLangMessages;
1919

2020
public final class ClassCommand extends AbstractPlayerCommand {
2121

@@ -35,9 +35,6 @@ public ClassCommand() {
3535
this.classIdArg = this.withRequiredArg("classId", "Class id to select", ArgTypes.STRING);
3636
}
3737

38-
/*
39-
* TODO: Update Message.raw to translated messages instead
40-
*/
4138
@Override
4239
protected void execute(
4340
@NotNull CommandContext commandContext,
@@ -47,18 +44,19 @@ protected void execute(
4744
@NotNull World world
4845
) {
4946
if (ClassesCoreAPI.playerHasClass(playerRef.getUuid())) {
47+
playerRef.sendMessage(BaseLangMessages.ALREADY_HAS_CLASS);
5048
return;
5149
}
5250
playerRef = this.playerArg.get(commandContext);
5351
var classId = classIdArg.get(commandContext);
5452

5553
var definition = ClassesCore.getClassRegistry().get(classId);
5654
if (definition.isEmpty()) {
57-
playerRef.sendMessage(Message.raw("Unknown class: " + classId));
55+
playerRef.sendMessage(BaseLangMessages.UNKNOWN_CLASS.param("classId", classId));
5856
return;
5957
}
6058

6159
ClassesCore.getClassService().selectClass(playerRef.getUuid(), classId);
62-
playerRef.sendMessage(Message.raw("Joined selected class: " + definition.get().displayName()));
60+
playerRef.sendMessage(BaseLangMessages.JOINED_CLASS.param("className", definition.get().displayName()));
6361
}
6462
}

src/main/java/com/azuredoom/classescore/command/LeaveClassCommand.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import com.hypixel.hytale.component.Ref;
44
import com.hypixel.hytale.component.Store;
5-
import com.hypixel.hytale.server.core.Message;
65
import com.hypixel.hytale.server.core.command.system.CommandContext;
76
import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
87
import com.hypixel.hytale.server.core.command.system.arguments.types.ArgTypes;
@@ -16,6 +15,7 @@
1615

1716
import com.azuredoom.classescore.ClassesCore;
1817
import com.azuredoom.classescore.api.ClassesCoreAPI;
18+
import com.azuredoom.classescore.lang.BaseLangMessages;
1919

2020
public class LeaveClassCommand extends AbstractPlayerCommand {
2121

@@ -35,9 +35,6 @@ public LeaveClassCommand() {
3535
this.classIdArg = this.withRequiredArg("classId", "Class id to select", ArgTypes.STRING);
3636
}
3737

38-
/*
39-
* TODO: Update Message.raw to translated messages instead
40-
*/
4138
@Override
4239
protected void execute(
4340
@NotNull CommandContext commandContext,
@@ -47,18 +44,19 @@ protected void execute(
4744
@NotNull World world
4845
) {
4946
if (!ClassesCoreAPI.playerHasClass(playerRef.getUuid())) {
47+
playerRef.sendMessage(BaseLangMessages.NO_CLASS_SELECTED);
5048
return;
5149
}
5250
playerRef = this.playerArg.get(commandContext);
5351
var classId = classIdArg.get(commandContext);
5452

5553
var definition = ClassesCore.getClassRegistry().get(classId);
5654
if (definition.isEmpty()) {
57-
playerRef.sendMessage(Message.raw("Unknown class: " + classId));
55+
playerRef.sendMessage(BaseLangMessages.UNKNOWN_CLASS.param("classId", classId));
5856
return;
5957
}
6058

6159
ClassesCore.getClassService().clearClass(playerRef.getUuid(), classId);
62-
playerRef.sendMessage(Message.raw("Left selected class: " + definition.get().displayName()));
60+
playerRef.sendMessage(BaseLangMessages.LEFT_CLASS.param("className", definition.get().displayName()));
6361
}
6462
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.azuredoom.classescore.lang;
2+
3+
import com.hypixel.hytale.server.core.Message;
4+
5+
public class BaseLangMessages {
6+
7+
public static final Message UNKNOWN_CLASS = Message.translation("server.classescore.unknownclass");
8+
9+
public static final Message JOINED_CLASS = Message.translation("server.classescore.joinedclass");
10+
11+
public static final Message LEFT_CLASS = Message.translation("server.classescore.leftclass");
12+
13+
public static final Message NO_CLASS_SELECTED = Message.translation("server.classescore.noclassselected");
14+
15+
public static final Message ALREADY_HAS_CLASS = Message.translation("server.classescore.alreadyhasclass");
16+
17+
public static final Message ITEM_RESTRICTED = Message.translation("server.classescore.itemrestricted");
18+
}

src/main/java/com/azuredoom/classescore/util/NotificationsUtil.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
package com.azuredoom.classescore.util;
22

33
import com.hypixel.hytale.protocol.packets.interface_.NotificationStyle;
4-
import com.hypixel.hytale.server.core.Message;
54
import com.hypixel.hytale.server.core.inventory.ItemStack;
65
import com.hypixel.hytale.server.core.modules.i18n.I18nModule;
76
import com.hypixel.hytale.server.core.universe.PlayerRef;
87
import com.hypixel.hytale.server.core.util.NotificationUtil;
98

109
import com.azuredoom.classescore.ClassesCore;
10+
import com.azuredoom.classescore.lang.BaseLangMessages;
1111

1212
public class NotificationsUtil {
1313

@@ -26,7 +26,8 @@ public static void sendItemClassRestrictionNotification(PlayerRef playerRef, Ite
2626
}
2727
NotificationUtil.sendNotification(
2828
playerRef.getPacketHandler(),
29-
Message.raw("You cannot use this " + itemName + " as a " + definition.get().displayName() + " class."),
29+
BaseLangMessages.ITEM_RESTRICTED.param("itemName", itemName)
30+
.param("displayName", definition.get().displayName()),
3031
NotificationStyle.Danger
3132
);
3233
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
classescore.unknownclass = Unbekannte Klasse: {classId}
2+
classescore.joinedclass = Ausgewählter Klasse beigetreten: {className}
3+
classescore.leftclass = Ausgewählte Klasse verlassen: {className}
4+
classescore.itemrestricted = Du kannst dieses {itemName} nicht als Klasse {displayName} verwenden.
5+
classescore.noclassselected = Spieler ist in keiner Klasse
6+
classescore.alreadyhasclass = Spieler hat bereits eine Klasse
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
classescore.unknownclass = Unknown class: {classId}
2+
classescore.joinedclass = Joined selected class: {className}
3+
classescore.leftclass = Left selected class: {className}
4+
classescore.itemrestricted = You cannot use this {itemName} as a {displayName} class.
5+
classescore.noclassselected = Player is not in any class
6+
classescore.alreadyhasclass = Player already has a class
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
classescore.unknownclass = Clase desconocida: {classId}
2+
classescore.joinedclass = Te has unido a la clase seleccionada: {className}
3+
classescore.leftclass = Has salido de la clase seleccionada: {className}
4+
classescore.itemrestricted = No puedes usar este {itemName} como clase {displayName}.
5+
classescore.noclassselected = El jugador no está en ninguna clase
6+
classescore.alreadyhasclass = El jugador ya tiene una clase
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
classescore.unknownclass = Classe inconnue : {classId}
2+
classescore.joinedclass = Classe sélectionnée rejointe : {className}
3+
classescore.leftclass = Classe sélectionnée quittée : {className}
4+
classescore.itemrestricted = Vous ne pouvez pas utiliser cet objet {itemName} en tant que classe {displayName}.
5+
classescore.noclassselected = Le joueur n'est dans aucune classe
6+
classescore.alreadyhasclass = Le joueur a déjà une classe
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
classescore.unknownclass = Classe desconhecida: {classId}
2+
classescore.joinedclass = Entrou na classe selecionada: {className}
3+
classescore.leftclass = Saiu da classe selecionada: {className}
4+
classescore.itemrestricted = Você não pode usar este {itemName} como a classe {displayName}.
5+
classescore.noclassselected = O jogador não está em nenhuma classe
6+
classescore.alreadyhasclass = O jogador já possui uma classe
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
classescore.unknownclass = Неизвестный класс: {classId}
2+
classescore.joinedclass = Присоединился к выбранному классу: {className}
3+
classescore.leftclass = Покинул выбранный класс: {className}
4+
classescore.itemrestricted = Вы не можете использовать {itemName} как класс {displayName}.
5+
classescore.noclassselected = Игрок не состоит ни в одном классе
6+
classescore.alreadyhasclass = У игрока уже есть класс

0 commit comments

Comments
 (0)