Search in sources :

Example 1 with TextPacket

use of org.dragonet.protocol.packets.TextPacket in project DragonProxy by DragonetMC.

the class PCChatPacketTranslator method translate.

public PEPacket[] translate(UpstreamSession session, ServerChatPacket packet) {
    TextPacket pe = new TextPacket();
    switch(packet.getType()) {
        case NOTIFICATION:
            pe.message = pe.message = MessageTranslator.translate(packet.getMessage());
            pe.type = TYPE_POPUP;
            break;
        case CHAT:
            if (packet.getMessage() instanceof TranslationMessage) {
                pe.type = TYPE_TRANSLATION;
                pe.needsTranslation = true;
                pe.message = MessageTranslator.translationTranslateText((TranslationMessage) packet.getMessage());
                pe.params = MessageTranslator.translationTranslateParams(((TranslationMessage) packet.getMessage()).getTranslationParams());
            } else {
                pe.message = pe.message = MessageTranslator.translate(packet.getMessage());
                pe.type = TYPE_RAW;
            }
            break;
        case SYSTEM:
            if (packet.getMessage() instanceof TranslationMessage) {
                pe.type = TYPE_TRANSLATION;
                pe.needsTranslation = true;
                pe.message = MessageTranslator.translationTranslateText((TranslationMessage) packet.getMessage());
                pe.params = MessageTranslator.translationTranslateParams(((TranslationMessage) packet.getMessage()).getTranslationParams());
            } else {
                pe.message = pe.message = MessageTranslator.translate(packet.getMessage());
                pe.type = TYPE_RAW;
            }
            break;
    }
    return new PEPacket[] { pe };
}
Also used : TextPacket(org.dragonet.protocol.packets.TextPacket) PEPacket(org.dragonet.protocol.PEPacket) TranslationMessage(com.github.steveice10.mc.protocol.data.message.TranslationMessage)

Example 2 with TextPacket

use of org.dragonet.protocol.packets.TextPacket in project DragonProxy by DragonetMC.

the class UpstreamSession method sendChat.

public void sendChat(String chat) {
    if (chat.contains("\n")) {
        String[] lines = chat.split("\n");
        for (String line : lines) sendChat(line);
        return;
    }
    // raw
    TextPacket text = new TextPacket();
    text.type = TextPacket.TYPE_RAW;
    text.message = chat;
    sendPacket(text, true);
}
Also used : TextPacket(org.dragonet.protocol.packets.TextPacket)

Aggregations

TextPacket (org.dragonet.protocol.packets.TextPacket)2 TranslationMessage (com.github.steveice10.mc.protocol.data.message.TranslationMessage)1 PEPacket (org.dragonet.protocol.PEPacket)1