@Override public Locale getLocale() { return ( locale == null && settings != null ) ? locale = Locale.forLanguageTag( settings.getLocale().replace( '_', '-' ) ) : locale; }
@Override public ProxiedPlayer.ChatMode getChatMode() { if ( settings == null ) { return ProxiedPlayer.ChatMode.SHOWN; } switch ( settings.getChatFlags() ) { default: case 0: return ProxiedPlayer.ChatMode.SHOWN; case 1: return ProxiedPlayer.ChatMode.COMMANDS_ONLY; case 2: return ProxiedPlayer.ChatMode.HIDDEN; } }
@Override public ProxiedPlayer.MainHand getMainHand() { return ( settings == null || settings.getMainHand() == 1 ) ? ProxiedPlayer.MainHand.RIGHT : ProxiedPlayer.MainHand.LEFT; }
@Override public void read(ByteBuf buf, ProtocolConstants.Direction direction, int protocolVersion) { locale = readString( buf ); viewDistance = buf.readByte(); chatFlags = protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ? DefinedPacket.readVarInt( buf ) : buf.readUnsignedByte(); chatColours = buf.readBoolean(); skinParts = buf.readByte(); if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ) { mainHand = DefinedPacket.readVarInt( buf ); } }
@Override public void write(ByteBuf buf, ProtocolConstants.Direction direction, int protocolVersion) { writeString( locale, buf ); buf.writeByte( viewDistance ); if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ) { DefinedPacket.writeVarInt( chatFlags, buf ); } else { buf.writeByte( chatFlags ); } buf.writeBoolean( chatColours ); buf.writeByte( skinParts ); if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ) { DefinedPacket.writeVarInt( mainHand, buf ); } }
@Override public boolean hasChatColors() { return settings == null || settings.isChatColours(); }
@Override public byte getViewDistance() { return ( settings != null ) ? settings.getViewDistance() : 10; }
@Override public SkinConfiguration getSkinParts() { return ( settings != null ) ? new PlayerSkinConfiguration( settings.getSkinParts() ) : PlayerSkinConfiguration.SKIN_SHOW_ALL; }
@Override public void read(ByteBuf buf, ProtocolConstants.Direction direction, int protocolVersion) { locale = readString( buf ); viewDistance = buf.readByte(); chatFlags = protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ? DefinedPacket.readVarInt( buf ) : buf.readUnsignedByte(); chatColours = buf.readBoolean(); if ( protocolVersion <= ProtocolConstants.MINECRAFT_1_7_6 ) { difficulty = buf.readByte(); } skinParts = buf.readByte(); if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ) { mainHand = DefinedPacket.readVarInt( buf ); } }
@Override public void write(ByteBuf buf, ProtocolConstants.Direction direction, int protocolVersion) { writeString( locale, buf ); buf.writeByte( viewDistance ); if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ) { DefinedPacket.writeVarInt( chatFlags, buf ); } else { buf.writeByte( chatFlags ); } buf.writeBoolean( chatColours ); if ( protocolVersion <= ProtocolConstants.MINECRAFT_1_7_6 ) { buf.writeByte( difficulty ); } buf.writeByte( skinParts ); if ( protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ) { DefinedPacket.writeVarInt( mainHand, buf ); } }
@Override public Locale getLocale() { return ( locale == null && settings != null ) ? locale = Locale.forLanguageTag( settings.getLocale().replace( '_', '-' ) ) : locale; }