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;
|
package buttondevteam.chat.components.announce;
|
||||||
|
|
||||||
import buttondevteam.chat.commands.ucmds.UCommandBase;
|
import buttondevteam.chat.commands.ucmds.UCommandBase;
|
||||||
import buttondevteam.chat.components.formatter.ChatProcessing;
|
|
||||||
import buttondevteam.chat.components.formatter.FormatterComponent;
|
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.core.ComponentManager;
|
||||||
import buttondevteam.lib.chat.Command2;
|
import buttondevteam.lib.chat.Command2;
|
||||||
import buttondevteam.lib.chat.CommandClass;
|
import buttondevteam.lib.chat.CommandClass;
|
||||||
|
@ -13,6 +10,12 @@ import lombok.val;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.CommandSender;
|
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)
|
@CommandClass(modOnly = true)
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class AnnounceCommand extends UCommandBase {
|
public class AnnounceCommand extends UCommandBase {
|
||||||
|
@ -60,11 +63,9 @@ public class AnnounceCommand extends UCommandBase {
|
||||||
sender.sendMessage(msg);
|
sender.sendMessage(msg);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
String json = ChatProcessing.toJson(new TellrawPart(msg)
|
sender.sendMessage(text(msg)
|
||||||
.setHoverEvent(TellrawEvent.create(TellrawEvent.HoverAction.SHOW_TEXT, "Click to edit"))
|
.hoverEvent(hoverEvent(SHOW_TEXT, text("Click to edit")))
|
||||||
.setClickEvent(TellrawEvent.create(TellrawEvent.ClickAction.SUGGEST_COMMAND,
|
.clickEvent(clickEvent(SUGGEST_COMMAND, "/" + getCommandPath() + " edit " + (i - 1) + " " + message.replace('§', '&'))));
|
||||||
"/" + getCommandPath() + " edit " + (i - 1) + " " + message.replace('§', '&'))));
|
|
||||||
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "tellraw " + sender.getName() + " " + json);
|
|
||||||
}
|
}
|
||||||
sender.sendMessage("§bCurrent wait time between announcements: "
|
sender.sendMessage("§bCurrent wait time between announcements: "
|
||||||
+ component.announceTime.get() / 60 / 1000 + " minute(s)§r");
|
+ 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.chat.listener.PlayerListener;
|
||||||
import buttondevteam.core.ComponentManager;
|
import buttondevteam.core.ComponentManager;
|
||||||
import buttondevteam.core.component.channel.Channel;
|
import buttondevteam.core.component.channel.Channel;
|
||||||
|
import buttondevteam.lib.ChromaUtils;
|
||||||
import buttondevteam.lib.TBMCChatEvent;
|
import buttondevteam.lib.TBMCChatEvent;
|
||||||
import buttondevteam.lib.TBMCChatEventBase;
|
import buttondevteam.lib.TBMCChatEventBase;
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
import buttondevteam.lib.chat.TellrawSerializableEnum;
|
|
||||||
import buttondevteam.lib.player.ChromaGamerBase;
|
import buttondevteam.lib.player.ChromaGamerBase;
|
||||||
import buttondevteam.lib.player.TBMCPlayer;
|
import buttondevteam.lib.player.TBMCPlayer;
|
||||||
import buttondevteam.lib.player.TBMCPlayerBase;
|
import buttondevteam.lib.player.TBMCPlayerBase;
|
||||||
import com.earth2me.essentials.User;
|
import com.earth2me.essentials.User;
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
import com.google.gson.Gson;
|
|
||||||
import com.google.gson.GsonBuilder;
|
|
||||||
import lombok.val;
|
import lombok.val;
|
||||||
import net.ess3.api.events.AfkStatusChangeEvent;
|
import net.ess3.api.events.AfkStatusChangeEvent;
|
||||||
import net.kyori.adventure.text.TextComponent;
|
import net.kyori.adventure.text.TextComponent;
|
||||||
|
@ -101,11 +99,6 @@ public class ChatProcessing {
|
||||||
return "@someone (" + player.getDisplayName() + "§r)";
|
return "@someone (" + player.getDisplayName() + "§r)";
|
||||||
}).build(), true, "@someone"),
|
}).build(), true, "@someone"),
|
||||||
new RegexMatchProvider("greentext", GREENTEXT_PATTERN, FormatSettings.builder().color(GREEN).build()));
|
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 static final String[] testPlayers = {"Koiiev", "iie", "Alisolarflare", "NorbiPeti", "Arsen_Derby_FTW", "carrot_lynx"};
|
||||||
|
|
||||||
private ChatProcessing() {
|
private ChatProcessing() {
|
||||||
|
@ -222,10 +215,6 @@ public class ChatProcessing {
|
||||||
}).build()));
|
}).build()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String toJson(TellrawPart json) {
|
|
||||||
return gson.toJson(json);
|
|
||||||
}
|
|
||||||
|
|
||||||
static TextComponent.Builder createEmptyMessageLine(ChromaGamerBase user, String message, @Nullable Player player,
|
static TextComponent.Builder createEmptyMessageLine(ChromaGamerBase user, String message, @Nullable Player player,
|
||||||
final String channelidentifier, String origin) {
|
final String channelidentifier, String origin) {
|
||||||
val json = text();
|
val json = text();
|
||||||
|
@ -257,7 +246,7 @@ public class ChatProcessing {
|
||||||
ArrayList<MatchProviderBase> formatters = (ArrayList<MatchProviderBase>) commonFormatters.clone();
|
ArrayList<MatchProviderBase> formatters = (ArrayList<MatchProviderBase>) commonFormatters.clone();
|
||||||
|
|
||||||
boolean nottest; //Not assigning a default value, so that it can only be used in the if
|
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;
|
String[] names;
|
||||||
if (nottest)
|
if (nottest)
|
||||||
names = Bukkit.getOnlinePlayers().stream().filter(canSee).map(CommandSender::getName).toArray(String[]::new);
|
names = Bukkit.getOnlinePlayers().stream().filter(canSee).map(CommandSender::getName).toArray(String[]::new);
|
||||||
|
|
|
@ -204,7 +204,8 @@ public final class ChatFormatter {
|
||||||
String openlink = null;
|
String openlink = null;
|
||||||
var settings = section.Settings;
|
var settings = section.Settings;
|
||||||
DebugCommand.SendDebugMessage("Applying settings: " + 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.");
|
DebugCommand.SendDebugMessage("This part has the same properties as the previous one, combining.");
|
||||||
lasttp = lasttp.content(lasttp.content() + originaltext);
|
lasttp = lasttp.content(lasttp.content() + originaltext);
|
||||||
continue; //Combine parts with the same properties
|
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, "[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, "[](fakelink)", text("[](fakelink)").color(WHITE)));
|
||||||
list.add(new ChatFormatIT(sender, "||this is a spoiler||", text("this is a spoiler").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);
|
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***",
|
list.add(new ChatFormatIT(sender, "***some complicated ||test message|| with [links](https://chromagaming.figytuna.com) and other __greatness__ by NorbiPeti***",
|
||||||
whiteBoldItalic.apply("some complicated "),
|
whiteBoldItalic.apply("some complicated "),
|
||||||
|
|
Loading…
Reference in a new issue