Fix remaining test cases for formatting
- Fixed name mentioning test check - Removed legacy tell raw stuff - Fixed RPC sections getting combined because the settings weren't updated before checking if they are the same - Fixed spoiler test assuming and expecting the hover text to be white #130
This commit is contained in:
parent
b5fd834dc7
commit
512a62d75c
4 changed files with 14 additions and 23 deletions
|
@ -1,10 +1,7 @@
|
|||
package buttondevteam.chat.components.announce;
|
||||
|
||||
import buttondevteam.chat.commands.ucmds.UCommandBase;
|
||||
import buttondevteam.chat.components.formatter.ChatProcessing;
|
||||
import buttondevteam.chat.components.formatter.FormatterComponent;
|
||||
import buttondevteam.chat.components.formatter.formatting.TellrawEvent;
|
||||
import buttondevteam.chat.components.formatter.formatting.TellrawPart;
|
||||
import buttondevteam.core.ComponentManager;
|
||||
import buttondevteam.lib.chat.Command2;
|
||||
import buttondevteam.lib.chat.CommandClass;
|
||||
|
@ -13,6 +10,12 @@ import lombok.val;
|
|||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
import static net.kyori.adventure.text.Component.text;
|
||||
import static net.kyori.adventure.text.event.ClickEvent.Action.SUGGEST_COMMAND;
|
||||
import static net.kyori.adventure.text.event.ClickEvent.clickEvent;
|
||||
import static net.kyori.adventure.text.event.HoverEvent.Action.SHOW_TEXT;
|
||||
import static net.kyori.adventure.text.event.HoverEvent.hoverEvent;
|
||||
|
||||
@CommandClass(modOnly = true)
|
||||
@RequiredArgsConstructor
|
||||
public class AnnounceCommand extends UCommandBase {
|
||||
|
@ -60,11 +63,9 @@ public class AnnounceCommand extends UCommandBase {
|
|||
sender.sendMessage(msg);
|
||||
continue;
|
||||
}
|
||||
String json = ChatProcessing.toJson(new TellrawPart(msg)
|
||||
.setHoverEvent(TellrawEvent.create(TellrawEvent.HoverAction.SHOW_TEXT, "Click to edit"))
|
||||
.setClickEvent(TellrawEvent.create(TellrawEvent.ClickAction.SUGGEST_COMMAND,
|
||||
"/" + getCommandPath() + " edit " + (i - 1) + " " + message.replace('§', '&'))));
|
||||
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "tellraw " + sender.getName() + " " + json);
|
||||
sender.sendMessage(text(msg)
|
||||
.hoverEvent(hoverEvent(SHOW_TEXT, text("Click to edit")))
|
||||
.clickEvent(clickEvent(SUGGEST_COMMAND, "/" + getCommandPath() + " edit " + (i - 1) + " " + message.replace('§', '&'))));
|
||||
}
|
||||
sender.sendMessage("§bCurrent wait time between announcements: "
|
||||
+ component.announceTime.get() / 60 / 1000 + " minute(s)§r");
|
||||
|
|
|
@ -12,18 +12,16 @@ import buttondevteam.chat.components.towny.TownyComponent;
|
|||
import buttondevteam.chat.listener.PlayerListener;
|
||||
import buttondevteam.core.ComponentManager;
|
||||
import buttondevteam.core.component.channel.Channel;
|
||||
import buttondevteam.lib.ChromaUtils;
|
||||
import buttondevteam.lib.TBMCChatEvent;
|
||||
import buttondevteam.lib.TBMCChatEventBase;
|
||||
import buttondevteam.lib.TBMCCoreAPI;
|
||||
import buttondevteam.lib.chat.TellrawSerializableEnum;
|
||||
import buttondevteam.lib.player.ChromaGamerBase;
|
||||
import buttondevteam.lib.player.TBMCPlayer;
|
||||
import buttondevteam.lib.player.TBMCPlayerBase;
|
||||
import com.earth2me.essentials.User;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import lombok.val;
|
||||
import net.ess3.api.events.AfkStatusChangeEvent;
|
||||
import net.kyori.adventure.text.TextComponent;
|
||||
|
@ -101,11 +99,6 @@ public class ChatProcessing {
|
|||
return "@someone (" + player.getDisplayName() + "§r)";
|
||||
}).build(), true, "@someone"),
|
||||
new RegexMatchProvider("greentext", GREENTEXT_PATTERN, FormatSettings.builder().color(GREEN).build()));
|
||||
private static final Gson gson = new GsonBuilder()
|
||||
.registerTypeHierarchyAdapter(TellrawSerializableEnum.class, new TellrawSerializer.TwEnum())
|
||||
.registerTypeHierarchyAdapter(Collection.class, new TellrawSerializer.TwCollection())
|
||||
.registerTypeAdapter(Boolean.class, new TellrawSerializer.TwBool())
|
||||
.registerTypeAdapter(boolean.class, new TellrawSerializer.TwBool()).disableHtmlEscaping().create();
|
||||
private static final String[] testPlayers = {"Koiiev", "iie", "Alisolarflare", "NorbiPeti", "Arsen_Derby_FTW", "carrot_lynx"};
|
||||
|
||||
private ChatProcessing() {
|
||||
|
@ -222,10 +215,6 @@ public class ChatProcessing {
|
|||
}).build()));
|
||||
}
|
||||
|
||||
public static String toJson(TellrawPart json) {
|
||||
return gson.toJson(json);
|
||||
}
|
||||
|
||||
static TextComponent.Builder createEmptyMessageLine(ChromaGamerBase user, String message, @Nullable Player player,
|
||||
final String channelidentifier, String origin) {
|
||||
val json = text();
|
||||
|
@ -257,7 +246,7 @@ public class ChatProcessing {
|
|||
ArrayList<MatchProviderBase> formatters = (ArrayList<MatchProviderBase>) commonFormatters.clone();
|
||||
|
||||
boolean nottest; //Not assigning a default value, so that it can only be used in the if
|
||||
if ((nottest = Bukkit.getOnlinePlayers().size() > 0) || Bukkit.getVersion().equals("test")) {
|
||||
if ((nottest = Bukkit.getOnlinePlayers().size() > 0) || ChromaUtils.isTest()) {
|
||||
String[] names;
|
||||
if (nottest)
|
||||
names = Bukkit.getOnlinePlayers().stream().filter(canSee).map(CommandSender::getName).toArray(String[]::new);
|
||||
|
|
|
@ -204,7 +204,8 @@ public final class ChatFormatter {
|
|||
String openlink = null;
|
||||
var settings = section.Settings;
|
||||
DebugCommand.SendDebugMessage("Applying settings: " + settings);
|
||||
if (lasttp != null && hasSameDecorations(lasttp, settings) && Objects.equals(lastlink, settings.openlink)) {
|
||||
if (lasttp != null && hasSameDecorations(lasttp, settings) && Objects.equals(lastlink, settings.openlink)
|
||||
&& settings.onmatch == null) { // The onmatch function can change the settings
|
||||
DebugCommand.SendDebugMessage("This part has the same properties as the previous one, combining.");
|
||||
lasttp = lasttp.content(lasttp.content() + originaltext);
|
||||
continue; //Combine parts with the same properties
|
||||
|
|
|
@ -97,7 +97,7 @@ public class ChatFormatIT {
|
|||
list.add(new ChatFormatIT(sender, "[here's a link]()", text("[here's a link]()").color(WHITE)));
|
||||
list.add(new ChatFormatIT(sender, "[](fakelink)", text("[](fakelink)").color(WHITE)));
|
||||
list.add(new ChatFormatIT(sender, "||this is a spoiler||", text("this is a spoiler").color(WHITE)
|
||||
.decorate(OBFUSCATED).hoverEvent(hoverEvent(SHOW_TEXT, text("this is a spoiler").color(WHITE)))));
|
||||
.decorate(OBFUSCATED).hoverEvent(hoverEvent(SHOW_TEXT, text("this is a spoiler")))));
|
||||
Function<String, TextComponent> whiteBoldItalic = text -> text(text).color(WHITE).decorate(BOLD).decorate(ITALIC);
|
||||
list.add(new ChatFormatIT(sender, "***some complicated ||test message|| with [links](https://chromagaming.figytuna.com) and other __greatness__ by NorbiPeti***",
|
||||
whiteBoldItalic.apply("some complicated "),
|
||||
|
|
Loading…
Reference in a new issue