mirror of
https://github.com/GeyserMC/Geyser.git
synced 2024-08-14 23:57:35 +00:00
Add translators for title/subtitle/actionbar
This commit is contained in:
parent
75d38abe1d
commit
49dc3bbe60
1 changed files with 34 additions and 0 deletions
|
@ -31,6 +31,7 @@ import com.flowpowered.math.vector.Vector3i;
|
||||||
import com.github.steveice10.mc.protocol.data.message.TranslationMessage;
|
import com.github.steveice10.mc.protocol.data.message.TranslationMessage;
|
||||||
import com.github.steveice10.mc.protocol.packet.ingame.server.ServerChatPacket;
|
import com.github.steveice10.mc.protocol.packet.ingame.server.ServerChatPacket;
|
||||||
import com.github.steveice10.mc.protocol.packet.ingame.server.ServerJoinGamePacket;
|
import com.github.steveice10.mc.protocol.packet.ingame.server.ServerJoinGamePacket;
|
||||||
|
import com.github.steveice10.mc.protocol.packet.ingame.server.ServerTitlePacket;
|
||||||
import com.nukkitx.nbt.CompoundTagBuilder;
|
import com.nukkitx.nbt.CompoundTagBuilder;
|
||||||
import com.nukkitx.nbt.NbtUtils;
|
import com.nukkitx.nbt.NbtUtils;
|
||||||
import com.nukkitx.nbt.stream.NBTOutputStream;
|
import com.nukkitx.nbt.stream.NBTOutputStream;
|
||||||
|
@ -65,6 +66,7 @@ public class TranslatorsInit {
|
||||||
public static void start() {
|
public static void start() {
|
||||||
addLoginPackets();
|
addLoginPackets();
|
||||||
addChatPackets();
|
addChatPackets();
|
||||||
|
addTitlePackets();
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void addLoginPackets() {
|
private static void addLoginPackets() {
|
||||||
|
@ -185,4 +187,36 @@ public class TranslatorsInit {
|
||||||
session.getUpstream().sendPacket(textPacket);
|
session.getUpstream().sendPacket(textPacket);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void addTitlePackets() {
|
||||||
|
Registry.add(ServerTitlePacket.class, (packet, session) -> {
|
||||||
|
SetTitlePacket titlePacket = new SetTitlePacket();
|
||||||
|
|
||||||
|
switch (packet.getAction()) {
|
||||||
|
case TITLE:
|
||||||
|
titlePacket.setType(SetTitlePacket.Type.SET_TITLE);
|
||||||
|
titlePacket.setText(packet.getTitle().getFullText());
|
||||||
|
break;
|
||||||
|
case SUBTITLE:
|
||||||
|
titlePacket.setType(SetTitlePacket.Type.SET_SUBTITLE);
|
||||||
|
titlePacket.setText(packet.getSubtitle().getFullText());
|
||||||
|
break;
|
||||||
|
case CLEAR:
|
||||||
|
case RESET:
|
||||||
|
titlePacket.setType(SetTitlePacket.Type.RESET_TITLE);
|
||||||
|
titlePacket.setText("");
|
||||||
|
break;
|
||||||
|
case ACTION_BAR:
|
||||||
|
titlePacket.setType(SetTitlePacket.Type.SET_ACTIONBAR_MESSAGE);
|
||||||
|
titlePacket.setText(packet.getActionBar().getFullText());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
titlePacket.setFadeInTime(packet.getFadeIn());
|
||||||
|
titlePacket.setFadeOutTime(packet.getFadeOut());
|
||||||
|
titlePacket.setStayTime(packet.getStay());
|
||||||
|
|
||||||
|
session.getUpstream().sendPacket(titlePacket);
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue