Add chat position API.

This commit is contained in:
Minecrell
2014-09-08 21:15:14 +02:00
committed by md_5
parent 772c8d7f2b
commit f19cc7fe4f
3 changed files with 62 additions and 2 deletions

View File

@@ -24,6 +24,7 @@ import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import net.md_5.bungee.api.Callback;
import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.ProxyServer;
import net.md_5.bungee.api.Title;
import net.md_5.bungee.api.chat.BaseComponent;
@@ -370,13 +371,44 @@ public final class UserConnection implements ProxiedPlayer
@Override
public void sendMessage(BaseComponent... message)
{
unsafe().sendPacket( new Chat( ComponentSerializer.toString( message ) ) );
sendMessage( ChatMessageType.CHAT, message );
}
@Override
public void sendMessage(BaseComponent message)
{
unsafe().sendPacket( new Chat( ComponentSerializer.toString( message ) ) );
sendMessage( ChatMessageType.CHAT, message );
}
private void sendMessage(ChatMessageType position, String message)
{
unsafe().sendPacket( new Chat( message, (byte) position.ordinal() ) );
}
@Override
public void sendMessage(ChatMessageType position, BaseComponent... message)
{
// Action bar doesn't display the new JSON formattings, legacy works - send it using this for now
if ( position == ChatMessageType.ACTION_BAR && pendingConnection.getVersion() >= ProtocolConstants.MINECRAFT_SNAPSHOT )
{
sendMessage( position, ComponentSerializer.toString( new TextComponent( TextComponent.toLegacyText( message ) ) ) );
} else
{
sendMessage( position, ComponentSerializer.toString( message ) );
}
}
@Override
public void sendMessage(ChatMessageType position, BaseComponent message)
{
// Action bar doesn't display the new JSON formattings, legacy works - send it using this for now
if ( position == ChatMessageType.ACTION_BAR && pendingConnection.getVersion() >= ProtocolConstants.MINECRAFT_SNAPSHOT )
{
sendMessage( position, ComponentSerializer.toString( new TextComponent( TextComponent.toLegacyText( message ) ) ) );
} else
{
sendMessage( position, ComponentSerializer.toString( message ) );
}
}
@Override