40public final class ChatMessage {
49 private final byte[] encoded;
51 private ChatMessage(
byte[] encoded) {
56 this.encoded = encoded;
62 return create(message, ChatColor.YELLOW, ChatEffect.NONE);
65 public static ChatMessage create(String message, ChatColor color) {
66 return create(message, color, ChatEffect.NONE);
69 public static ChatMessage create(String message, ChatColor color, ChatEffect effect) {
70 return new ChatMessage(ChatCodec.encode(message.isEmpty() || message.length() >
CHARACTER_LIMIT ?
"Cabbage" : message), color, effect);
73 public boolean isValid() {
74 if (color.getCode() < 0 || color.getCode() >= ChatColor.values().length) {
77 if (effect.getCode() < 0 || effect.getCode() >= ChatColor.values().length) {
83 public ChatColor getColor() {
87 public ChatEffect getEffect() {
91 public byte[] getEncoded() {