re-add cursed setter to get it working with tests again

This commit is contained in:
Christopher Bohn 2024-02-23 23:19:10 -08:00
parent a9d025e6c7
commit b7bc59fe71
2 changed files with 19 additions and 12 deletions

View File

@ -657,6 +657,7 @@ public class Essentials extends JavaPlugin implements net.ess3.api.IEssentials {
final PluginManager pm = getServer().getPluginManager();
registerListeners(pm);
AdventureUtil.setEss(this);
bukkitAudience = BukkitAudiences.create(this);
}

View File

@ -1,6 +1,6 @@
package com.earth2me.essentials.utils;
import com.earth2me.essentials.Essentials;
import net.ess3.api.IEssentials;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.flattener.ComponentFlattener;
import net.kyori.adventure.text.format.NamedTextColor;
@ -9,19 +9,19 @@ import net.kyori.adventure.text.minimessage.tag.Tag;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
import org.bukkit.ChatColor;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public final class AdventureUtil {
private static final LegacyComponentSerializer LEGACY_SERIALIZER;
private static final MiniMessage MINI_MESSAGE_INSTANCE;
private static final Pattern NAMED_PATTERN = Pattern.compile(ChatColor.COLOR_CHAR + "[0-9a-fk-orA-FK-OR]");
private static final Pattern HEX_PATTERN = Pattern.compile(ChatColor.COLOR_CHAR + "x((?:" + ChatColor.COLOR_CHAR + "[0-9a-fA-F]){6})");
private static final String LOOKUP = "0123456789abcdefklmnor";
private static final String[] MINI_TAGS = new String[] {"black", "dark_blue", "dark_green", "dark_aqua", "dark_red", "dark_purple", "gold", "gray", "dark_gray", "blue", "green", "aqua", "red", "light_purple", "yellow", "white", "obf", "b", "st", "u", "i", "reset"};
private static final NamedTextColor[] COLORS = new NamedTextColor[] {NamedTextColor.BLACK, NamedTextColor.DARK_BLUE, NamedTextColor.DARK_GREEN, NamedTextColor.DARK_AQUA, NamedTextColor.DARK_RED, NamedTextColor.DARK_PURPLE, NamedTextColor.GOLD, NamedTextColor.GRAY, NamedTextColor.DARK_GRAY, NamedTextColor.BLUE, NamedTextColor.GREEN, NamedTextColor.AQUA, NamedTextColor.RED, NamedTextColor.LIGHT_PURPLE, NamedTextColor.YELLOW, NamedTextColor.WHITE};
private static IEssentials ess;
private static MiniMessage miniMessageInstance;
static {
final LegacyComponentSerializer.Builder builder = LegacyComponentSerializer.builder().flattener(ComponentFlattener.basic()).useUnusualXRepeatedCharacterHexFormat();
@ -29,22 +29,29 @@ public final class AdventureUtil {
builder.hexColors();
}
LEGACY_SERIALIZER = builder.build();
miniMessageInstance = createMiniMessageInstance();
}
MINI_MESSAGE_INSTANCE = MiniMessage.builder()
private AdventureUtil() {
}
public static void setEss(final IEssentials ess) {
AdventureUtil.ess = ess;
miniMessageInstance = createMiniMessageInstance();
}
private static MiniMessage createMiniMessageInstance() {
return MiniMessage.builder()
.tags(TagResolver.builder()
.resolvers(TagResolver.standard())
.resolver(TagResolver.resolver("primary", supplyTag(true)))
.resolver(TagResolver.resolver("secondary", supplyTag(false)))
.build())
.build();
}
private AdventureUtil() {
}
public static MiniMessage miniMessage() {
return MINI_MESSAGE_INSTANCE;
return miniMessageInstance;
}
/**
@ -137,11 +144,10 @@ public final class AdventureUtil {
}
private static Tag supplyTag(final boolean primary) {
final Essentials ess = JavaPlugin.getPlugin(Essentials.class);
if (primary) {
return ess.getSettings().getPrimaryColor();
return ess != null ? ess.getSettings().getPrimaryColor() : Tag.styling(NamedTextColor.GOLD);
}
return ess.getSettings().getSecondaryColor();
return ess != null ? ess.getSettings().getSecondaryColor() : Tag.styling(NamedTextColor.RED);
}
public static class ParsedPlaceholder {