use of org.lanternpowered.server.network.vanilla.message.type.play.MessagePlayOutWorldBorder in project LanternServer by LanternPowered.
the class CodecPlayOutWorldBorder method encode.
@Override
public ByteBuffer encode(CodecContext context, MessagePlayOutWorldBorder message) throws CodecException {
ByteBuffer buf = context.byteBufAlloc().buffer();
if (message instanceof MessagePlayOutWorldBorder.Initialize) {
MessagePlayOutWorldBorder.Initialize message1 = (MessagePlayOutWorldBorder.Initialize) message;
buf.writeVarInt(3);
buf.writeDouble(message1.getCenterX());
buf.writeDouble(message1.getCenterZ());
buf.writeDouble(message1.getOldDiameter());
buf.writeDouble(message1.getNewDiameter());
buf.writeVarLong(message1.getLerpTime());
buf.writeVarInt(message1.getWorldSize());
buf.writeVarInt(message1.getWarningTime());
buf.writeVarInt(message1.getWarningDistance());
} else if (message instanceof MessagePlayOutWorldBorder.UpdateCenter) {
MessagePlayOutWorldBorder.UpdateCenter message1 = (MessagePlayOutWorldBorder.UpdateCenter) message;
buf.writeVarInt(2);
buf.writeDouble(message1.getX());
buf.writeDouble(message1.getZ());
} else if (message instanceof MessagePlayOutWorldBorder.UpdateLerpedDiameter) {
MessagePlayOutWorldBorder.UpdateLerpedDiameter message1 = (MessagePlayOutWorldBorder.UpdateLerpedDiameter) message;
buf.writeVarInt(1);
buf.writeDouble(message1.getOldDiameter());
buf.writeDouble(message1.getNewDiameter());
buf.writeVarLong(message1.getLerpTime());
} else if (message instanceof MessagePlayOutWorldBorder.UpdateDiameter) {
buf.writeVarInt(0);
buf.writeDouble(((MessagePlayOutWorldBorder.UpdateDiameter) message).getDiameter());
} else if (message instanceof MessagePlayOutWorldBorder.UpdateWarningDistance) {
buf.writeVarInt(5);
buf.writeVarInt(((MessagePlayOutWorldBorder.UpdateWarningDistance) message).getDistance());
} else if (message instanceof MessagePlayOutWorldBorder.UpdateWarningTime) {
buf.writeVarInt(4);
buf.writeVarInt(((MessagePlayOutWorldBorder.UpdateWarningTime) message).getTime());
} else {
throw new EncoderException("Unsupported message type: " + message.getClass().getName());
}
return buf;
}
Aggregations