From 4920490a4c23f0d1773964d92d17e9694c16ebd8 Mon Sep 17 00:00:00 2001 From: Martin Graversen Date: Fri, 16 Apr 2021 17:27:56 +0200 Subject: [PATCH] :zap: Rework HoverEvent to conform with new API --- .../graversen/minecraft/rcon/JsonUtils.java | 2 +- .../rcon/commands/tellraw/HoverEvent.java | 22 +++++----------- .../rcon/commands/tellraw/TextContent.java | 26 +++++++++++++++++++ 3 files changed, 34 insertions(+), 16 deletions(-) create mode 100644 src/main/java/io/graversen/minecraft/rcon/commands/tellraw/TextContent.java diff --git a/src/main/java/io/graversen/minecraft/rcon/JsonUtils.java b/src/main/java/io/graversen/minecraft/rcon/JsonUtils.java index b65f00b..f4b0c5a 100644 --- a/src/main/java/io/graversen/minecraft/rcon/JsonUtils.java +++ b/src/main/java/io/graversen/minecraft/rcon/JsonUtils.java @@ -4,7 +4,7 @@ import com.google.gson.GsonBuilder; public class JsonUtils { - private static final Gson GSON_INSTANCE = new GsonBuilder().create(); + private static final Gson GSON_INSTANCE = new GsonBuilder().disableHtmlEscaping().create(); public static String toJson(Object object) { return GSON_INSTANCE.toJson(object); diff --git a/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/HoverEvent.java b/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/HoverEvent.java index 2f2a858..9091544 100644 --- a/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/HoverEvent.java +++ b/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/HoverEvent.java @@ -1,20 +1,12 @@ package io.graversen.minecraft.rcon.commands.tellraw; +import lombok.AccessLevel; +import lombok.Getter; +import lombok.RequiredArgsConstructor; + +@Getter +@RequiredArgsConstructor(access = AccessLevel.PACKAGE) public class HoverEvent { private final String action; - private final String value; - - public HoverEvent(String action, String value) { - this.action = action; - this.value = value; - } - - public String getAction() { - return action; - } - - public String getValue() { - return value; - } - + private final TextContent[] contents; } diff --git a/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/TextContent.java b/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/TextContent.java new file mode 100644 index 0000000..beb8c36 --- /dev/null +++ b/src/main/java/io/graversen/minecraft/rcon/commands/tellraw/TextContent.java @@ -0,0 +1,26 @@ +package io.graversen.minecraft.rcon.commands.tellraw; + +import lombok.Getter; +import lombok.RequiredArgsConstructor; + +@Getter +@RequiredArgsConstructor +public class TextContent { + private final String text; + private final boolean bold; + private final boolean italic; + private final boolean underlined; + private final boolean striketrough; + private final boolean obfuscated; + private final String color; + + public TextContent(TellRawCommand tellRawCommand) { + this.text = tellRawCommand.getText(); + this.bold = tellRawCommand.isBold(); + this.italic = tellRawCommand.isItalic(); + this.underlined = tellRawCommand.isUnderlined(); + this.striketrough = tellRawCommand.isStriketrough(); + this.obfuscated = tellRawCommand.isObfuscated(); + this.color = tellRawCommand.getColor(); + } +}