From c27c661ed90778f7eeb2066fc9bd2856c1639840 Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sat, 14 Mar 2026 16:52:41 +0000 Subject: [PATCH 1/8] Rewrote library to be paper focused --- build.gradle.kts | 60 +- common/build.gradle.kts | 7 + .../chatcolorhandler/common/ColorHandler.java | 284 +++++++ .../common/parser/HexParser.java | 24 + .../common/parser/LegacyAmpersandParser.java | 44 ++ .../common/parser/LegacyHexParser.java | 24 + .../common/parser/Parser.java | 19 + .../common/parser/ParserRegistry.java | 40 +- .../common/parser/ParserType.java | 44 ++ .../common/parser}/ParticleParser.java | 42 +- .../common/parser/PlaceholderAPIParser.java | 19 + .../common/parser/SoundParser.java | 45 ++ .../common/settings/ColorHandlerSettings.java | 33 + docs/allclasses-index.html | 56 +- docs/allpackages-index.html | 16 +- docs/constant-values.html | 88 +++ docs/deprecated-list.html | 32 +- docs/element-list | 9 +- docs/help-doc.html | 9 +- docs/index-files/index-1.html | 12 +- docs/index-files/index-10.html | 34 +- docs/index-files/index-11.html | 66 +- docs/index-files/index-12.html | 119 +++ docs/index-files/index-13.html | 75 ++ docs/index-files/index-14.html | 137 ++++ docs/index-files/index-15.html | 109 +++ docs/index-files/index-16.html | 74 ++ docs/index-files/index-2.html | 18 +- docs/index-files/index-3.html | 22 +- docs/index-files/index-4.html | 18 +- docs/index-files/index-5.html | 60 +- docs/index-files/index-6.html | 50 +- docs/index-files/index-7.html | 44 +- docs/index-files/index-8.html | 44 +- docs/index-files/index-9.html | 34 +- docs/index.html | 16 +- docs/member-search-index.js | 2 +- .../chatcolorhandler/ChatColorHandler.html | 2 +- .../chatcolorhandler/common/ColorHandler.html | 698 ++++++++++++++++++ .../common/package-summary.html | 95 +++ .../chatcolorhandler/common/package-tree.html | 71 ++ .../common/parser/HexParser.html | 224 ++++++ .../common/parser/LegacyAmpersandParser.html | 223 ++++++ .../common/parser/LegacyHexParser.html | 224 ++++++ .../common/parser/Parser.html | 159 ++++ .../common/parser/ParserRegistry.html | 219 ++++++ .../common/parser/ParserType.html | 285 +++++++ .../common/parser/ParticleParser.html | 223 ++++++ .../common/parser/PlaceholderAPIParser.html | 223 ++++++ .../common/parser/SoundParser.html | 223 ++++++ .../common/parser/package-summary.html | 121 +++ .../common/parser/package-tree.html | 97 +++ .../common/settings/ColorHandlerSettings.html | 190 +++++ .../common/settings/package-summary.html | 95 +++ .../common/settings/package-tree.html | 71 ++ .../chatcolorhandler/paper/PaperColor.html | 351 +++++++++ .../paper/package-summary.html | 95 +++ .../chatcolorhandler/paper/package-tree.html | 75 ++ .../paper/parser/ParserTypes.html | 212 ++++++ .../paper/parser/package-summary.html | 95 +++ .../paper/parser/package-tree.html | 71 ++ .../resolver/MiniMessageColorResolver.html | 215 ++++++ .../resolver/MiniMessageDefaultsResolver.html | 217 ++++++ .../MiniMessageInteractionResolver.html | 216 ++++++ .../MiniMessagePlaceholderResolver.html | 216 ++++++ .../MiniMessageTextFormattingResolver.html | 216 ++++++ .../paper/resolver/Resolver.html | 162 ++++ .../paper/resolver/ResolverRegistry.html | 217 ++++++ .../paper/resolver/package-summary.html | 113 +++ .../paper/resolver/package-tree.html | 86 +++ .../parsers/Parser.OutputType.html | 221 ++++++ .../chatcolorhandler/parsers/Parser.html | 200 +++++ .../chatcolorhandler/parsers/ParserTypes.html | 302 ++++++++ .../chatcolorhandler/parsers/Resolver.html | 182 +++++ .../parsers/custom/LegacyHexParser.html | 209 ++++++ .../parsers/custom/LegacySpigotParser.html | 209 ++++++ .../custom/MiniMessageColorParser.html | 228 ++++++ .../custom/MiniMessageInteractionParser.html | 228 ++++++ .../custom/MiniMessagePlaceholderParser.html | 228 ++++++ .../custom/MiniMessageResolverParser.html | 235 ++++++ .../MiniMessageTextFormattingParser.html | 228 ++++++ .../custom/MiniPlaceholdersParser.html | 214 ++++++ docs/overview-summary.html | 4 +- docs/overview-tree.html | 53 +- docs/package-search-index.js | 2 +- docs/script-dir/jquery-3.6.1.min.js | 2 + docs/tag-search-index.js | 2 +- docs/type-search-index.js | 2 +- platform/build.gradle.kts | 40 + platform/paper/build.gradle.kts | 7 + .../chatcolorhandler/paper/PaperColor.java | 157 ++++ .../paper/parser/ParserTypes.java | 43 ++ .../resolver/MiniMessageColorResolver.java | 32 +- .../resolver/MiniMessageDefaultsResolver.java | 22 + .../MiniMessageInteractionResolver.java | 29 + .../MiniMessagePlaceholderResolver.java | 32 + .../MiniMessageTextFormattingResolver.java | 28 + .../resolver/MiniPlaceholdersResolver.java | 26 + .../paper/resolver/Resolver.java | 17 + .../paper/resolver/ResolverRegistry.java | 74 ++ settings.gradle.kts | 5 +- .../chatcolorhandler/ChatColorHandler.java | 396 ---------- .../ChatColorHandlerSettings.java | 38 - .../ModernChatColorHandler.java | 116 --- .../messengers/AbstractMessenger.java | 190 ----- .../messengers/LegacyMessenger.java | 49 -- .../messengers/Messenger.java | 151 ---- .../messengers/MiniMessageMessenger.java | 73 -- .../chatcolorhandler/parsers/Parser.java | 36 - .../chatcolorhandler/parsers/ParserTypes.java | 64 -- .../chatcolorhandler/parsers/Resolver.java | 37 - .../parsers/custom/HexParser.java | 31 - .../parsers/custom/LegacyHexParser.java | 32 - .../parsers/custom/LegacySpigotParser.java | 50 -- .../custom/MiniMessageInteractionParser.java | 42 -- .../custom/MiniMessagePlaceholderParser.java | 45 -- .../custom/MiniMessageResolverParser.java | 59 -- .../MiniMessageTextFormattingParser.java | 41 - .../custom/MiniPlaceholdersParser.java | 29 - .../parsers/custom/PlaceholderAPIParser.java | 28 - .../parsers/custom/SoundParser.java | 65 -- .../parsers/custom/SpigotParser.java | 25 - test/build.gradle.kts | 13 +- test/paper/build.gradle.kts | 4 +- .../paper/ChatColorHandlerTest.java | 4 +- .../paper/command/MainCommand.java | 23 +- .../paper/test/TestRunner.java | 27 +- test/spigot/build.gradle.kts | 40 - .../spigot/ChatColorHandlerTest.java | 28 - .../spigot/command/MainCommand.java | 30 - test/spigot/src/main/resources/plugin.yml | 7 - 131 files changed, 10695 insertions(+), 2168 deletions(-) create mode 100644 common/build.gradle.kts create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/ColorHandler.java create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/HexParser.java create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.java create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.java create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/Parser.java rename src/main/java/org/lushplugins/chatcolorhandler/parsers/Parsers.java => common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java (69%) create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserType.java rename {src/main/java/org/lushplugins/chatcolorhandler/parsers/custom => common/src/main/java/org/lushplugins/chatcolorhandler/common/parser}/ParticleParser.java (64%) create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/PlaceholderAPIParser.java create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/SoundParser.java create mode 100644 common/src/main/java/org/lushplugins/chatcolorhandler/common/settings/ColorHandlerSettings.java create mode 100644 docs/constant-values.html create mode 100644 docs/index-files/index-12.html create mode 100644 docs/index-files/index-13.html create mode 100644 docs/index-files/index-14.html create mode 100644 docs/index-files/index-15.html create mode 100644 docs/index-files/index-16.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/ColorHandler.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/package-summary.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/package-tree.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/HexParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/Parser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/ParserType.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/PlaceholderAPIParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/SoundParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/package-summary.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/parser/package-tree.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/settings/ColorHandlerSettings.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/settings/package-summary.html create mode 100644 docs/org/lushplugins/chatcolorhandler/common/settings/package-tree.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/PaperColor.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/package-summary.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/package-tree.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/parser/package-summary.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/parser/package-tree.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/package-summary.html create mode 100644 docs/org/lushplugins/chatcolorhandler/paper/resolver/package-tree.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/Parser.OutputType.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/Parser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/ParserTypes.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/Resolver.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.html create mode 100644 docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.html create mode 100644 docs/script-dir/jquery-3.6.1.min.js create mode 100644 platform/build.gradle.kts create mode 100644 platform/paper/build.gradle.kts create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java rename src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.java => platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.java (53%) create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniPlaceholdersResolver.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.java create mode 100644 platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandler.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandlerSettings.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/ModernChatColorHandler.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/messengers/AbstractMessenger.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/messengers/LegacyMessenger.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/messengers/Messenger.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/messengers/MiniMessageMessenger.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/Parser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/ParserTypes.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/Resolver.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/HexParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/PlaceholderAPIParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/SoundParser.java delete mode 100644 src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/SpigotParser.java delete mode 100644 test/spigot/build.gradle.kts delete mode 100644 test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/ChatColorHandlerTest.java delete mode 100644 test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/command/MainCommand.java delete mode 100644 test/spigot/src/main/resources/plugin.yml diff --git a/build.gradle.kts b/build.gradle.kts index ebdbbf0..77905f3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,21 +4,26 @@ plugins { id("com.gradleup.shadow") version("9.3.1") } -group = "org.lushplugins" -version = "6.0.4" - allprojects { apply(plugin = "java-library") - apply(plugin = "com.gradleup.shadow") + apply(plugin = "maven-publish") + + group = "org.lushplugins" + version = "7.0.0" repositories { mavenLocal() - mavenCentral() // Adventure, MiniPlaceholders + mavenCentral() maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") // Spigot maven("https://repo.papermc.io/repository/maven-public/") // Paper maven("https://repo.helpch.at/releases") // PlaceholderAPI } + dependencies { + // Libraries + compileOnly("org.jetbrains:annotations:26.0.2") + } + java { toolchain.languageVersion.set(JavaLanguageVersion.of(21)) @@ -33,50 +38,5 @@ allprojects { withType { options.encoding = "UTF-8" } - - shadowJar { - archiveFileName.set("${project.name}-${project.version}.jar") - } - } -} - -dependencies { - compileOnly("org.spigotmc:spigot-api:1.21.11-R0.2-SNAPSHOT") - compileOnly("net.kyori:adventure-text-serializer-legacy:4.26.1") - compileOnly("net.kyori:adventure-text-minimessage:4.26.1") - compileOnly("io.github.miniplaceholders:miniplaceholders-api:3.1.0") - compileOnly("me.clip:placeholderapi:2.12.2") -} - -publishing { - repositories { - maven { - name = "lushReleases" - url = uri("https://repo.lushplugins.org/releases") - credentials(PasswordCredentials::class) - authentication { - isAllowInsecureProtocol = true - create("basic") - } - } - - maven { - name = "lushSnapshots" - url = uri("https://repo.lushplugins.org/snapshots") - credentials(PasswordCredentials::class) - authentication { - isAllowInsecureProtocol = true - create("basic") - } - } - } - - publications { - create("maven") { - groupId = rootProject.group.toString() - artifactId = rootProject.name - version = rootProject.version.toString() - from(project.components["java"]) - } } } diff --git a/common/build.gradle.kts b/common/build.gradle.kts new file mode 100644 index 0000000..94746d1 --- /dev/null +++ b/common/build.gradle.kts @@ -0,0 +1,7 @@ +dependencies { + // Dependencies + compileOnly("org.spigotmc:spigot-api:1.21.11-R0.2-SNAPSHOT") + + // Soft Dependencies + compileOnly("me.clip:placeholderapi:2.12.2") +} \ No newline at end of file diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/ColorHandler.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/ColorHandler.java new file mode 100644 index 0000000..a265c9f --- /dev/null +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/ColorHandler.java @@ -0,0 +1,284 @@ +package org.lushplugins.chatcolorhandler.common; + +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.Parser; +import org.lushplugins.chatcolorhandler.common.parser.ParserRegistry; +import org.lushplugins.chatcolorhandler.common.settings.ColorHandlerSettings; + +import java.util.Collection; +import java.util.List; + +/** + * @param Translation output type + */ +@SuppressWarnings("unused") +public abstract class ColorHandler { + private final ColorHandlerSettings settings = new ColorHandlerSettings(); + private final ParserRegistry parsers = new ParserRegistry(); + + public ColorHandlerSettings settings() { + return settings; + } + + public ParserRegistry parsers() { + return parsers; + } + + /** + * Translates a string to allow for hex colours and placeholders + * + * @param string String to be translated + * @param player Player to parse placeholders for + * @param parsers Parsers which this message will be parsed through + */ + public abstract T translate(@Nullable String string, @Nullable Player player, Collection parsers); + + /** + * Translates a string to allow for hex colours and placeholders + * + * @param string String to be translated + * @param player Player to parse placeholders for + */ + public T translate(@Nullable String string, @Nullable Player player) { + return translate(string, player, settings.defaultParsers()); + } + + /** + * Translates a string to allow for hex colours and placeholders + * + * @param string String to be translated + * @param parsers Parsers which this message won't be parsed through + */ + public T translate(@Nullable String string, Collection parsers) { + return translate(string, null, parsers); + } + + /** + * Translates a string to allow for hex colours and placeholders + * + * @param string String to be translated + */ + public T translate(@Nullable String string) { + return translate(string, null, settings.defaultParsers()); + } + + /** + * Translates a collection of strings to allow for hex colours and placeholders + * + * @param strings Strings to be translated + * @param player Player to parse placeholders for + * @param parsers Parsers which this message will be parsed through + */ + public List translate(Collection strings, Player player, List parsers) { + return strings.stream().map(string -> translate(string, player, parsers)).toList(); + } + + /** + * Translates a collection of strings to allow for hex colours and placeholders + * + * @param strings Strings to be translated + * @param player Player to parse placeholders for + */ + public List translate(Collection strings, Player player) { + return strings.stream().map(string -> translate(string, player)).toList(); + } + + /** + * Translates a collection of strings to allow for hex colours and placeholders + * + * @param strings Strings to be translated + * @param parsers Parsers which this message will be parsed through + */ + public List translate(Collection strings, List parsers) { + return strings.stream().map(string -> translate(string, parsers)).toList(); + } + + /** + * Translates a collection of strings to allow for hex colours and placeholders + * + * @param strings Strings to be translated + */ + public List translate(Collection strings) { + return strings.stream().map(this::translate).toList(); + } + + /** + * Sends a recipient a message + * + * @param recipient Sender to receive this message + * @param message Message to be displayed + */ + public abstract void sendMessage(CommandSender recipient, @Nullable String message); + + /** + * Sends a recipient multiple messages + * + * @param recipient Sender to receive message + * @param messages Messages to be displayed + */ + public void sendMessage(CommandSender recipient, String... messages) { + for (String message : messages) { + sendMessage(recipient, message); + } + } + + /** + * Sends multiple recipients a message + * + * @param recipients Senders to receive message + * @param message Message to be displayed + */ + public void sendMessage(Collection recipients, @Nullable String message) { + for (CommandSender recipient : recipients) { + sendMessage(recipient, message); + } + } + + /** + * Sends multiple recipients, multiple messages + * + * @param recipients Senders to receive this message + * @param messages Messages to be displayed + */ + public void sendMessage(Collection recipients, String... messages) { + for (String message : messages) { + sendMessage(recipients, message); + } + } + + /** + * Sends all online players a message + * + * @param message Message to be displayed + */ + public abstract void broadcastMessage(@Nullable String message); + + /** + * Sends all online players multiple messages + * + * @param messages Messages to be displayed + */ + public void broadcastMessage(String... messages) { + for (String message : messages) { + broadcastMessage(message); + } + } + + /** + * Sends a player an action bar message + * + * @param player Player to receive this action bar message + * @param message Message to be displayed + */ + public abstract void sendActionBarMessage(Player player, @Nullable String message); + + /** + * Sends multiple players an action bar message + * + * @param players Players to receive this action bar message + * @param message Message to be displayed + */ + public void sendActionBarMessage(Collection players, @Nullable String message) { + for (Player player : players) { + sendActionBarMessage(player, message); + } + } + + /** + * Send a player a title message + * + * @param player Player to receive this title + * @param title Title to be displayed + * @param subtitle Subtitle to be displayed + * @param fadeIn Duration for title to fade in + * @param stay Duration for title to appear + * @param fadeOut Duration for title to fade out + */ + public abstract void sendTitle(Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut); + + /** + * Send a player a title message + * + * @param player Player to receive this title + * @param title Title to be displayed + * @param subtitle Subtitle to be displayed + * @param fadeIn Duration for title to fade in + * @param fadeOut Duration for title to fade out + */ + public void sendTitle(Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut) { + sendTitle(player, title, subtitle, fadeIn, 70, fadeOut); + } + + /** + * Send a player a title message + * + * @param player Player to receive this title + * @param title Title to be displayed + * @param subtitle Subtitle to be displayed + */ + public void sendTitle(Player player, @Nullable String title, @Nullable String subtitle) { + sendTitle(player, title, subtitle, 10, 20); + } + + /** + * Send a player a title message + * + * @param player Player to receive this title + * @param title Title to be displayed + */ + public void sendTitle(Player player, @Nullable String title) { + sendTitle(player, title, null); + } + + /** + * Send multiple players a title message + * + * @param players Player to receive this title + * @param title Title to be displayed + * @param subtitle Subtitle to be displayed + * @param fadeIn Duration for title to fade in + * @param stay Duration for title to appear + * @param fadeOut Duration for title to fade out + */ + public void sendTitle(Collection players, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { + for (Player player : players) { + sendTitle(player, title, subtitle, fadeIn, stay, fadeOut); + } + } + + /** + * Send multiple players a title message + * + * @param players Player to receive this title + * @param title Title to be displayed + * @param subtitle Subtitle to be displayed + * @param fadeIn Duration for title to fade in + * @param fadeOut Duration for title to fade out + */ + public void sendTitle(Collection players, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut) { + sendTitle(players, title, subtitle, fadeIn, 70, fadeOut); + } + + /** + * Send multiple players a title message + * + * @param players Player to receive this title + * @param title Title to be displayed + * @param subtitle Subtitle to be displayed + */ + public void sendTitle(Collection players, @Nullable String title, @Nullable String subtitle) { + sendTitle(players, title, subtitle, 10, 20); + } + + /** + * Send multiple players a title message + * + * @param players Player to receive this title + * @param title Title to be displayed + */ + public void sendTitle(Collection players, @Nullable String title) { + sendTitle(players, title, null); + } +} diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/HexParser.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/HexParser.java new file mode 100644 index 0000000..d25a299 --- /dev/null +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/HexParser.java @@ -0,0 +1,24 @@ +package org.lushplugins.chatcolorhandler.common.parser; + +import org.bukkit.entity.Player; +import org.jetbrains.annotations.Nullable; + +import java.util.regex.Pattern; + +/** + * Translates hex in format "&#rrggbb" + */ +public class HexParser implements Parser { + public static final HexParser INSTANCE = new HexParser(); + private static final Pattern HEX_PATTERN = Pattern.compile("&(#[a-fA-F0-9]{6})"); + + @Override + public ParserType getType() { + return ParserType.COLOR; + } + + @Override + public String parseString(String string, @Nullable Player player) { + return HEX_PATTERN.matcher(string).replaceAll("<$1>"); + } +} diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.java new file mode 100644 index 0000000..a74a3a1 --- /dev/null +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.java @@ -0,0 +1,44 @@ +package org.lushplugins.chatcolorhandler.common.parser; + +import org.bukkit.entity.Player; +import org.jetbrains.annotations.Nullable; + +public class LegacyAmpersandParser implements Parser { + public static final LegacyAmpersandParser INSTANCE = new LegacyAmpersandParser(); + + @Override + public ParserType getType() { + return ParserType.COLOR; + } + + @Override + public String parseString(String string, @Nullable Player player) { + return string + // Legacy Ampersand + .replace("§", "&") + // Colours + .replace("&0", "") + .replace("&1", "") + .replace("&2", "") + .replace("&3", "") + .replace("&4", "") + .replace("&5", "") + .replace("&6", "") + .replace("&7", "") + .replace("&8", "") + .replace("&9", "") + .replace("&a", "") + .replace("&b", "") + .replace("&c", "") + .replace("&d", "") + .replace("&e", "") + .replace("&f", "") + // Decorations + .replace("&m", "") + .replace("&k", "") + .replace("&n", "") + .replace("&o", "") + .replace("&l", "") + .replace("&r", ""); + } +} diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.java new file mode 100644 index 0000000..6e8ea5d --- /dev/null +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.java @@ -0,0 +1,24 @@ +package org.lushplugins.chatcolorhandler.common.parser; + +import org.bukkit.entity.Player; +import org.jetbrains.annotations.Nullable; + +import java.util.regex.Pattern; + +/** + * Translates hex in format "§x§r§r§g§g§b§b" + */ +public class LegacyHexParser implements Parser { + public static final LegacyHexParser INSTANCE = new LegacyHexParser(); + private static final Pattern HEX_PATTERN = Pattern.compile("[§&]x[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])"); + + @Override + public ParserType getType() { + return ParserType.COLOR; + } + + @Override + public String parseString(String string, @Nullable Player player) { + return HEX_PATTERN.matcher(string).replaceAll("<#$1$2$3$4$5$6>"); + } +} diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/Parser.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/Parser.java new file mode 100644 index 0000000..2542800 --- /dev/null +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/Parser.java @@ -0,0 +1,19 @@ +package org.lushplugins.chatcolorhandler.common.parser; + +import org.bukkit.entity.Player; +import org.jetbrains.annotations.Nullable; + +public interface Parser { + /** + * @return The type of the parser or {@code null} if it should only apply when using all parsers + */ + @Nullable ParserType getType(); + + /** + * Parse a string in relation to a player + * @param string The string to parse + * @param player The player to apply whilst parsing + * @return The parsed string + */ + String parseString(String string, @Nullable Player player); +} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/Parsers.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java similarity index 69% rename from src/main/java/org/lushplugins/chatcolorhandler/parsers/Parsers.java rename to common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java index 8104e37..62a73fb 100644 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/Parsers.java +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java @@ -1,14 +1,14 @@ -package org.lushplugins.chatcolorhandler.parsers; +package org.lushplugins.chatcolorhandler.common.parser; import org.bukkit.Bukkit; -import org.jetbrains.annotations.NotNull; import org.bukkit.entity.Player; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.*; import java.util.logging.Level; -public class Parsers { +public class ParserRegistry { private Map parsers = new HashMap<>(); /** @@ -17,13 +17,13 @@ public class Parsers { */ public void register(Parser parser, int priority) { parsers.put(parser, priority); - parsers = sortByValue(parsers); + sort(); } - public String parseString(@NotNull String string, @NotNull Parser.OutputType outputType, @Nullable Player player, @NotNull List parsers) { + public String parseString(@NotNull String string, @Nullable Player player, @NotNull Collection parsers) { for (Parser parser : parsers) { try { - string = parser.parseString(string, outputType, player); + string = parser.parseString(string, player); } catch (Throwable e) { Bukkit.getLogger().log(Level.WARNING, "[ChatColorHandler] Failed to parse string '%s' through parser '%s: ".formatted(string, parser.getClass().getSimpleName()), e); } @@ -32,26 +32,24 @@ public String parseString(@NotNull String string, @NotNull Parser.OutputType out return string; } - public List getRegisteredParsers() { - return parsers.keySet().stream().toList(); + public void sort() { + parsers = sortByValue(parsers); } - public List getRegisteredResolvers() { - return parsers.keySet().stream() - .map(parser -> parser instanceof Resolver resolver ? resolver : null) - .filter(Objects::nonNull) - .toList(); - } - - public List ofType(@NotNull String type) { - return ofTypes(type); + public Set values() { + return parsers.keySet(); } public List ofTypes(@NotNull String... types) { - return parsers.keySet().stream() + return values().stream() .filter(parser -> { + ParserType parserType = parser.getType(); + if (parserType == null) { + return true; + } + for (String type : types) { - if (parser.getType().equals(type)) { + if (parserType.equals(type)) { return true; } } @@ -61,6 +59,10 @@ public List ofTypes(@NotNull String... types) { .toList(); } + public List ofType(@NotNull String type) { + return ofTypes(type); + } + private static > Map sortByValue(Map map) { List> list = new ArrayList<>(map.entrySet()); list.sort(Map.Entry.comparingByValue()); diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserType.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserType.java new file mode 100644 index 0000000..65e55ee --- /dev/null +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserType.java @@ -0,0 +1,44 @@ +package org.lushplugins.chatcolorhandler.common.parser; + +import java.util.List; + +public enum ParserType { + /** + * Color and decoration based parsers + */ + COLOR("color"), + /** + * Sound based parsers + */ + SOUND("sound"), + /** + * Particle based parsers + */ + PARTICLE("particle"), + /** + * Interaction based parsers, like hover, click and nbt elements + */ + INTERACTION("interaction"), + /** + * Placeholder based parsers + */ + PLACEHOLDER("placeholder"), + /** + * Text formatting based parsers, this includes font and newlines + */ + TEXT_FORMATTING("text-formatting"); + + private final String id; + + ParserType(String id) { + this.id = id; + } + + public String id() { + return id; + } + + public boolean equals(String id) { + return this.id.equals(id); + } +} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/ParticleParser.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.java similarity index 64% rename from src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/ParticleParser.java rename to common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.java index 6c38ac1..1135240 100644 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/ParticleParser.java +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.java @@ -1,47 +1,33 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; +package org.lushplugins.chatcolorhandler.common.parser; import org.bukkit.Location; import org.bukkit.Particle; import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; +import org.jetbrains.annotations.Nullable; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ParticleParser implements Parser { - - private static final Pattern PARTICLE_PATTERN = Pattern.compile(""); - public static final ParticleParser INSTANCE = new ParticleParser(); - - private ParticleParser() {} - - @Override - public String getType() { - return ParserTypes.PARTICLE; - } + private static final Pattern PARTICLE_PATTERN = Pattern.compile(""); @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return string; + public ParserType getType() { + return ParserType.PARTICLE; } @Override - public String parseString(@NotNull String string, @NotNull Parser.OutputType outputType, Player player) { - if (!string.contains(""); + private static final float DEFAULT_VOLUME = 1.0f; + private static final float DEFAULT_PITCH = 1.0f; + + @Override + public ParserType getType() { + return ParserType.SOUND; + } + + @Override + public String parseString(String string, @Nullable Player player) { + if (player == null || !string.contains(" defaultParsers = Collections.emptyList(); + + public List defaultParsers() { + return defaultParsers; + } + + /** + * Set the default parsers to use, when not overridden all registered parsers are used + * @param parsers The default parsers to use when none are specified + */ + public ColorHandlerSettings defaultParsers(List parsers) { + this.defaultParsers = parsers; + return this; + } + + /** + * Set the default parsers to use, when not overridden all registered parsers are used + * @param parsers The default parsers to use when none are specified + */ + public ColorHandlerSettings defaultParsers(Parser... parsers) { + return defaultParsers(Arrays.asList(parsers)); + } +} diff --git a/docs/allclasses-index.html b/docs/allclasses-index.html index 0b27752..d5b18ef 100644 --- a/docs/allclasses-index.html +++ b/docs/allclasses-index.html @@ -1,11 +1,11 @@ - + All Classes and Interfaces - + @@ -60,40 +60,50 @@

All Classes and Interfaces< diff --git a/docs/allpackages-index.html b/docs/allpackages-index.html index 617e072..f13d4d5 100644 --- a/docs/allpackages-index.html +++ b/docs/allpackages-index.html @@ -1,11 +1,11 @@ - + All Packages - + @@ -54,12 +54,18 @@

All Packages

diff --git a/docs/constant-values.html b/docs/constant-values.html new file mode 100644 index 0000000..f51a6eb --- /dev/null +++ b/docs/constant-values.html @@ -0,0 +1,88 @@ + + + + +Constant Field Values + + + + + + + + + + + + + + + +
+ +
+
+
+

Constant Field Values

+
+

Contents

+ +
+
+
+

org.lushplugins.*

+ +
+
+
+
+ + diff --git a/docs/deprecated-list.html b/docs/deprecated-list.html index 9434658..ca262dc 100644 --- a/docs/deprecated-list.html +++ b/docs/deprecated-list.html @@ -63,29 +63,29 @@

Contents

Element
Description
- + - + - + - + - +
- +
- +
- +
@@ -118,29 +118,29 @@

Contents

Method
Description
- + - + - + - + - +
- +
- +
- +
diff --git a/docs/element-list b/docs/element-list index 9249269..8ee1f3d 100644 --- a/docs/element-list +++ b/docs/element-list @@ -1,3 +1,6 @@ -org.lushplugins.chatcolorhandler -org.lushplugins.chatcolorhandler.parsers -org.lushplugins.chatcolorhandler.parsers.custom +org.lushplugins.chatcolorhandler.common +org.lushplugins.chatcolorhandler.common.parser +org.lushplugins.chatcolorhandler.common.settings +org.lushplugins.chatcolorhandler.paper +org.lushplugins.chatcolorhandler.paper.parser +org.lushplugins.chatcolorhandler.paper.resolver diff --git a/docs/help-doc.html b/docs/help-doc.html index cb78a0c..5ad8459 100644 --- a/docs/help-doc.html +++ b/docs/help-doc.html @@ -1,11 +1,11 @@ - + API Help - + @@ -68,7 +68,6 @@

JavaDoc Help

  • Class or Interface
  • Other Files
  • Tree (Class Hierarchy)
  • -
  • Constant Field Values
  • All Packages
  • All Classes and Interfaces
  • Index
  • @@ -156,10 +155,6 @@

    Tree (Class Hierarchy)

  • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
  • -
    -

    Constant Field Values

    -

    The Constant Field Values page lists the static final fields and their values.

    -

    All Packages

    The All Packages page contains an alphabetic index of all packages contained in the documentation.

    diff --git a/docs/index-files/index-1.html b/docs/index-files/index-1.html index b3b6e09..4352497 100644 --- a/docs/index-files/index-1.html +++ b/docs/index-files/index-1.html @@ -1,11 +1,11 @@ - + A-Index - + @@ -50,13 +50,15 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages

    A

    -
    all() - Static method in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    +
    all() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    asTagResolver(Audience, List<Resolver>) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    diff --git a/docs/index-files/index-10.html b/docs/index-files/index-10.html index 405cf78..37b468a 100644 --- a/docs/index-files/index-10.html +++ b/docs/index-files/index-10.html @@ -1,12 +1,12 @@ - -O-Index + +M-Index - - + + @@ -50,21 +50,31 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    O

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    M

    -
    ofType(String) - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    +
    MiniMessageColorResolver - Class in org.lushplugins.chatcolorhandler.paper.resolver
     
    -
    ofTypes(String...) - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    +
    MiniMessageColorResolver() - Constructor for class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageColorResolver
     
    -
    org.lushplugins.chatcolorhandler - package org.lushplugins.chatcolorhandler
    +
    MiniMessageDefaultsResolver - Class in org.lushplugins.chatcolorhandler.paper.resolver
     
    -
    org.lushplugins.chatcolorhandler.parsers - package org.lushplugins.chatcolorhandler.parsers
    +
    MiniMessageDefaultsResolver() - Constructor for class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageDefaultsResolver
     
    -
    org.lushplugins.chatcolorhandler.parsers.custom - package org.lushplugins.chatcolorhandler.parsers.custom
    +
    MiniMessageInteractionResolver - Class in org.lushplugins.chatcolorhandler.paper.resolver
    +
     
    +
    MiniMessageInteractionResolver() - Constructor for class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageInteractionResolver
    +
     
    +
    MiniMessagePlaceholderResolver - Class in org.lushplugins.chatcolorhandler.paper.resolver
    +
     
    +
    MiniMessagePlaceholderResolver() - Constructor for class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessagePlaceholderResolver
    +
     
    +
    MiniMessageTextFormattingResolver - Class in org.lushplugins.chatcolorhandler.paper.resolver
    +
     
    +
    MiniMessageTextFormattingResolver() - Constructor for class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageTextFormattingResolver
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    diff --git a/docs/index-files/index-11.html b/docs/index-files/index-11.html index 8af9d4d..5d5dda8 100644 --- a/docs/index-files/index-11.html +++ b/docs/index-files/index-11.html @@ -1,12 +1,12 @@ - -P-Index + +O-Index - - + + @@ -50,63 +50,31 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    P

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    O

    -
    Parser - Interface in org.lushplugins.chatcolorhandler.parsers
    +
    ofType(String) - Method in class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
     
    -
    Parser.OutputType - Enum Class in org.lushplugins.chatcolorhandler.parsers
    +
    ofType(String) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
     
    -
    Parsers - Class in org.lushplugins.chatcolorhandler.parsers
    +
    ofTypes(String...) - Method in class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
     
    -
    Parsers() - Constructor for class org.lushplugins.chatcolorhandler.parsers.Parsers
    +
    ofTypes(String...) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
     
    -
    ParserTypes - Class in org.lushplugins.chatcolorhandler.parsers
    +
    org.lushplugins.chatcolorhandler.common - package org.lushplugins.chatcolorhandler.common
     
    -
    ParserTypes() - Constructor for class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    +
    org.lushplugins.chatcolorhandler.common.parser - package org.lushplugins.chatcolorhandler.common.parser
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.HexParser
    +
    org.lushplugins.chatcolorhandler.common.settings - package org.lushplugins.chatcolorhandler.common.settings
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.LegacyHexParser
    +
    org.lushplugins.chatcolorhandler.paper - package org.lushplugins.chatcolorhandler.paper
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.LegacySpigotParser
    +
    org.lushplugins.chatcolorhandler.paper.parser - package org.lushplugins.chatcolorhandler.paper.parser
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageColorParser
    -
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageInteractionParser
    -
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessagePlaceholderParser
    -
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageResolverParser
    -
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageTextFormattingParser
    -
     
    -
    parseString(String, Parser.OutputType) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.PlaceholderAPIParser
    -
     
    -
    parseString(String, Parser.OutputType) - Method in interface org.lushplugins.chatcolorhandler.parsers.Parser
    -
    -
    Parse a string
    -
    -
    parseString(String, Parser.OutputType) - Method in interface org.lushplugins.chatcolorhandler.parsers.Resolver
    -
     
    -
    parseString(String, Parser.OutputType, Player) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageResolverParser
    -
     
    -
    parseString(String, Parser.OutputType, Player) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.PlaceholderAPIParser
    -
     
    -
    parseString(String, Parser.OutputType, Player) - Method in interface org.lushplugins.chatcolorhandler.parsers.Parser
    -
    -
    Parse a string in relation to a player
    -
    -
    parseString(String, Parser.OutputType, Player, List<Parser>) - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    -
     
    -
    placeholder() - Static method in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    -
     
    -
    PLACEHOLDER - Static variable in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    -
     
    -
    PlaceholderAPIParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    +
    org.lushplugins.chatcolorhandler.paper.resolver - package org.lushplugins.chatcolorhandler.paper.resolver
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-12.html b/docs/index-files/index-12.html new file mode 100644 index 0000000..1d8678c --- /dev/null +++ b/docs/index-files/index-12.html @@ -0,0 +1,119 @@ + + + + +P-Index + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    P

    +
    +
    PaperColor - Class in org.lushplugins.chatcolorhandler.paper
    +
     
    +
    PaperColor() - Constructor for class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    Parser - Interface in org.lushplugins.chatcolorhandler.common.parser
    +
     
    +
    ParserRegistry - Class in org.lushplugins.chatcolorhandler.common.parser
    +
     
    +
    ParserRegistry() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
    +
     
    +
    parsers() - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
     
    +
    ParserType - Enum Class in org.lushplugins.chatcolorhandler.common.parser
    +
     
    +
    ParserTypes - Class in org.lushplugins.chatcolorhandler.paper.parser
    +
     
    +
    ParserTypes() - Constructor for class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    parseString(String, Player, Collection<Parser>) - Method in class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
    +
     
    +
    parseString(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.parser.HexParser
    +
     
    +
    parseString(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.parser.LegacyAmpersandParser
    +
     
    +
    parseString(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.parser.LegacyHexParser
    +
     
    +
    parseString(String, Player) - Method in interface org.lushplugins.chatcolorhandler.common.parser.Parser
    +
    +
    Parse a string in relation to a player
    +
    +
    parseString(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.parser.ParticleParser
    +
     
    +
    parseString(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.parser.PlaceholderAPIParser
    +
     
    +
    parseString(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.parser.SoundParser
    +
     
    +
    parseString(String, Player) - Method in interface org.lushplugins.chatcolorhandler.paper.resolver.Resolver
    +
     
    +
    particle() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    PARTICLE - Enum constant in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Particle based parsers
    +
    +
    ParticleParser - Class in org.lushplugins.chatcolorhandler.common.parser
    +
     
    +
    ParticleParser() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.ParticleParser
    +
     
    +
    placeholder() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    PLACEHOLDER - Enum constant in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Placeholder based parsers
    +
    +
    PlaceholderAPIParser - Class in org.lushplugins.chatcolorhandler.common.parser
    +
     
    +
    PlaceholderAPIParser() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.PlaceholderAPIParser
    +
     
    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    +
    +
    + + diff --git a/docs/index-files/index-13.html b/docs/index-files/index-13.html new file mode 100644 index 0000000..02b15dd --- /dev/null +++ b/docs/index-files/index-13.html @@ -0,0 +1,75 @@ + + + + +R-Index + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    R

    +
    +
    register(Parser, int) - Method in class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
    +
     
    +
    register(Resolver) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
    +
     
    +
    register(Resolver...) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
    +
     
    +
    Resolver - Interface in org.lushplugins.chatcolorhandler.paper.resolver
    +
     
    +
    ResolverRegistry - Class in org.lushplugins.chatcolorhandler.paper.resolver
    +
     
    +
    ResolverRegistry() - Constructor for class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
    +
     
    +
    resolvers() - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    +
    +
    + + diff --git a/docs/index-files/index-14.html b/docs/index-files/index-14.html new file mode 100644 index 0000000..e290bdb --- /dev/null +++ b/docs/index-files/index-14.html @@ -0,0 +1,137 @@ + + + + +S-Index + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    S

    +
    +
    sendActionBarMessage(Collection<Player>, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Sends multiple players an action bar message
    +
    +
    sendActionBarMessage(Player, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Sends a player an action bar message
    +
    +
    sendActionBarMessage(Player, String) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    sendMessage(Collection<CommandSender>, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Sends multiple recipients a message
    +
    +
    sendMessage(Collection<CommandSender>, String...) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Sends multiple recipients, multiple messages
    +
    +
    sendMessage(CommandSender, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Sends a recipient a message
    +
    +
    sendMessage(CommandSender, String) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    sendMessage(CommandSender, String...) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Sends a recipient multiple messages
    +
    +
    sendTitle(Collection<Player>, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send multiple players a title message
    +
    +
    sendTitle(Collection<Player>, String, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send multiple players a title message
    +
    +
    sendTitle(Collection<Player>, String, String, int, int) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send multiple players a title message
    +
    +
    sendTitle(Collection<Player>, String, String, int, int, int) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send multiple players a title message
    +
    +
    sendTitle(Player, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send a player a title message
    +
    +
    sendTitle(Player, String, String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send a player a title message
    +
    +
    sendTitle(Player, String, String, int, int) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send a player a title message
    +
    +
    sendTitle(Player, String, String, int, int, int) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Send a player a title message
    +
    +
    sendTitle(Player, String, String, int, int, int) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    settings() - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
     
    +
    sort() - Method in class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
    +
     
    +
    sound() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    SOUND - Enum constant in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Sound based parsers
    +
    +
    SoundParser - Class in org.lushplugins.chatcolorhandler.common.parser
    +
     
    +
    SoundParser() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.SoundParser
    +
     
    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    +
    +
    + + diff --git a/docs/index-files/index-15.html b/docs/index-files/index-15.html new file mode 100644 index 0000000..c579b4a --- /dev/null +++ b/docs/index-files/index-15.html @@ -0,0 +1,109 @@ + + + + +T-Index + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    T

    +
    +
    TEXT_FORMATTING - Enum constant in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Text formatting based parsers, this includes font and newlines
    +
    +
    textFormatting() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    translate(String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a string to allow for hex colours and placeholders
    +
    +
    translate(String, Player) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a string to allow for hex colours and placeholders
    +
    +
    translate(String, Player, Collection<Parser>) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a string to allow for hex colours and placeholders
    +
    +
    translate(String, Player, Collection<Parser>) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    translate(String, Collection<Parser>) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a string to allow for hex colours and placeholders
    +
    +
    translate(Collection<String>) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a collection of strings to allow for hex colours and placeholders
    +
    +
    translate(Collection<String>, List<Parser>) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a collection of strings to allow for hex colours and placeholders
    +
    +
    translate(Collection<String>, Player) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a collection of strings to allow for hex colours and placeholders
    +
    +
    translate(Collection<String>, Player, List<Parser>) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
    +
    Translates a collection of strings to allow for hex colours and placeholders
    +
    +
    translateRaw(String) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    translateRaw(String, Player) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    translateRaw(String, Player, Collection<Parser>) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    translateRaw(String, Collection<Parser>) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    +
    +
    + + diff --git a/docs/index-files/index-16.html b/docs/index-files/index-16.html new file mode 100644 index 0000000..3799319 --- /dev/null +++ b/docs/index-files/index-16.html @@ -0,0 +1,74 @@ + + + + +V-Index + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Index

    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    V

    +
    +
    valueOf(String) - Static method in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Returns the enum constant of this class with the specified name.
    +
    +
    values() - Method in class org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
    +
     
    +
    values() - Static method in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Returns an array containing the constants of this enum class, in +the order they are declared.
    +
    +
    values() - Method in class org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
    +
     
    +
    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages
    +
    +
    + + diff --git a/docs/index-files/index-2.html b/docs/index-files/index-2.html index c09c54b..05af561 100644 --- a/docs/index-files/index-2.html +++ b/docs/index-files/index-2.html @@ -1,11 +1,11 @@ - + B-Index - + @@ -50,19 +50,21 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages

    B

    -
    broadcastMessage(String...) - Static method in class org.lushplugins.chatcolorhandler.ChatColorHandler
    +
    broadcastMessage(String) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    -
    Sends all online players multiple messages
    +
    Sends all online players a message
    -
    broadcastMessage(String) - Static method in class org.lushplugins.chatcolorhandler.ChatColorHandler
    +
    broadcastMessage(String) - Method in class org.lushplugins.chatcolorhandler.paper.PaperColor
    +
     
    +
    broadcastMessage(String...) - Method in class org.lushplugins.chatcolorhandler.common.ColorHandler
    -
    Sends all online players a message
    +
    Sends all online players multiple messages
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-3.html b/docs/index-files/index-3.html index 8310dfb..88fe180 100644 --- a/docs/index-files/index-3.html +++ b/docs/index-files/index-3.html @@ -1,11 +1,11 @@ - + C-Index - + @@ -50,17 +50,25 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages

    C

    -
    ChatColorHandler - Class in org.lushplugins.chatcolorhandler
    +
    color() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
     
    -
    color() - Static method in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    +
    COLOR - Enum constant in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Color and decoration based parsers
    +
    +
    ColorHandler<T> - Class in org.lushplugins.chatcolorhandler.common
     
    -
    COLOR - Static variable in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    +
    ColorHandler() - Constructor for class org.lushplugins.chatcolorhandler.common.ColorHandler
    +
     
    +
    ColorHandlerSettings - Class in org.lushplugins.chatcolorhandler.common.settings
    +
     
    +
    ColorHandlerSettings() - Constructor for class org.lushplugins.chatcolorhandler.common.settings.ColorHandlerSettings
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-4.html b/docs/index-files/index-4.html index 6d723ea..7407feb 100644 --- a/docs/index-files/index-4.html +++ b/docs/index-files/index-4.html @@ -1,11 +1,11 @@ - + D-Index - + @@ -50,13 +50,21 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages

    D

    -
    debugLog(String) - Static method in class org.lushplugins.chatcolorhandler.ChatColorHandler
    +
    defaultParsers() - Method in class org.lushplugins.chatcolorhandler.common.settings.ColorHandlerSettings
     
    +
    defaultParsers(List<Parser>) - Method in class org.lushplugins.chatcolorhandler.common.settings.ColorHandlerSettings
    +
    +
    Set the default parsers to use, when not overridden all registered parsers are used
    +
    +
    defaultParsers(Parser...) - Method in class org.lushplugins.chatcolorhandler.common.settings.ColorHandlerSettings
    +
    +
    Set the default parsers to use, when not overridden all registered parsers are used
    +
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-5.html b/docs/index-files/index-5.html index 618adce..d530d1c 100644 --- a/docs/index-files/index-5.html +++ b/docs/index-files/index-5.html @@ -1,12 +1,12 @@ - -G-Index + +E-Index - - + + @@ -50,57 +50,13 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    G

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    E

    -
    getCombinedResolvers(Audience) - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    -
     
    -
    getCombinedResolvers(Audience, List<Resolver>) - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    -
     
    -
    getRegisteredParsers() - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    -
     
    -
    getRegisteredResolvers() - Static method in class org.lushplugins.chatcolorhandler.parsers.Parsers
    -
     
    -
    getResolver() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageColorParser
    -
     
    -
    getResolver() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageInteractionParser
    -
     
    -
    getResolver() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessagePlaceholderParser
    -
     
    -
    getResolver() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageTextFormattingParser
    -
     
    -
    getResolver() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniPlaceholdersParser
    -
     
    -
    getResolver() - Method in interface org.lushplugins.chatcolorhandler.parsers.Resolver
    -
     
    -
    getResolver(Audience) - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniPlaceholdersParser
    -
     
    -
    getResolver(Audience) - Method in interface org.lushplugins.chatcolorhandler.parsers.Resolver
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.HexParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.LegacyHexParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.LegacySpigotParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageColorParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageInteractionParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessagePlaceholderParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageResolverParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageTextFormattingParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.MiniPlaceholdersParser
    -
     
    -
    getType() - Method in class org.lushplugins.chatcolorhandler.parsers.custom.PlaceholderAPIParser
    -
     
    -
    getType() - Method in interface org.lushplugins.chatcolorhandler.parsers.Parser
    +
    equals(String) - Method in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-6.html b/docs/index-files/index-6.html index c1aef24..c0fc5bd 100644 --- a/docs/index-files/index-6.html +++ b/docs/index-files/index-6.html @@ -1,12 +1,12 @@ - -H-Index + +G-Index - - + + @@ -50,13 +50,47 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    H

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    G

    -
    HexParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    +
    getResolver(Audience) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageColorResolver
    +
     
    +
    getResolver(Audience) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageDefaultsResolver
    +
     
    +
    getResolver(Audience) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageInteractionResolver
    +
     
    +
    getResolver(Audience) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessagePlaceholderResolver
    +
     
    +
    getResolver(Audience) - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageTextFormattingResolver
    +
     
    +
    getResolver(Audience) - Method in interface org.lushplugins.chatcolorhandler.paper.resolver.Resolver
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.common.parser.HexParser
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.common.parser.LegacyAmpersandParser
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.common.parser.LegacyHexParser
    +
     
    +
    getType() - Method in interface org.lushplugins.chatcolorhandler.common.parser.Parser
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.common.parser.ParticleParser
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.common.parser.PlaceholderAPIParser
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.common.parser.SoundParser
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageColorResolver
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageDefaultsResolver
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageInteractionResolver
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessagePlaceholderResolver
    +
     
    +
    getType() - Method in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageTextFormattingResolver
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-7.html b/docs/index-files/index-7.html index d9e7680..7ea6848 100644 --- a/docs/index-files/index-7.html +++ b/docs/index-files/index-7.html @@ -1,12 +1,12 @@ - -I-Index + +H-Index - - + + @@ -50,37 +50,19 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    I

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    H

    -
    init() - Static method in class org.lushplugins.chatcolorhandler.ChatColorHandler
    +
    handler() - Static method in class org.lushplugins.chatcolorhandler.paper.PaperColor
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.HexParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.LegacyHexParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.LegacySpigotParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageColorParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageInteractionParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessagePlaceholderParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageResolverParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageTextFormattingParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.MiniPlaceholdersParser
    -
     
    -
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.parsers.custom.PlaceholderAPIParser
    -
     
    -
    interact() - Static method in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    -
     
    -
    INTERACTION - Static variable in class org.lushplugins.chatcolorhandler.parsers.ParserTypes
    +
    HexParser - Class in org.lushplugins.chatcolorhandler.common.parser
    +
    +
    Translates hex in format "&#rrggbb"
    +
    +
    HexParser() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.HexParser
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-8.html b/docs/index-files/index-8.html index 71df9ee..1b9678b 100644 --- a/docs/index-files/index-8.html +++ b/docs/index-files/index-8.html @@ -1,12 +1,12 @@ - -L-Index + +I-Index - - + + @@ -50,15 +50,41 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    L

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    I

    -
    LegacyHexParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    +
    id() - Method in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
     
    -
    LegacySpigotParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.common.parser.HexParser
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.common.parser.LegacyAmpersandParser
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.common.parser.LegacyHexParser
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.common.parser.ParticleParser
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.common.parser.PlaceholderAPIParser
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.common.parser.SoundParser
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageColorResolver
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageDefaultsResolver
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageInteractionResolver
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessagePlaceholderResolver
    +
     
    +
    INSTANCE - Static variable in class org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageTextFormattingResolver
    +
     
    +
    interaction() - Static method in class org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
     
    +
    INTERACTION - Enum constant in enum class org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    Interaction based parsers, like hover, click and nbt elements
    +
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index-files/index-9.html b/docs/index-files/index-9.html index eb5283f..305970a 100644 --- a/docs/index-files/index-9.html +++ b/docs/index-files/index-9.html @@ -1,12 +1,12 @@ - -M-Index + +L-Index - - + + @@ -50,27 +50,21 @@

    Index

    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values -

    M

    +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages +

    L

    -
    MINI_MESSAGE - Enum constant in enum class org.lushplugins.chatcolorhandler.parsers.Parser.OutputType
    +
    LegacyAmpersandParser - Class in org.lushplugins.chatcolorhandler.common.parser
     
    -
    MiniMessageColorParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    +
    LegacyAmpersandParser() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.LegacyAmpersandParser
     
    -
    MiniMessageInteractionParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    -
     
    -
    MiniMessagePlaceholderParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    -
     
    -
    MiniMessageResolverParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    -
     
    -
    MiniMessageTextFormattingParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    -
     
    -
    MiniPlaceholdersParser - Class in org.lushplugins.chatcolorhandler.parsers.custom
    -
     
    -
    ModernChatColorHandler - Class in org.lushplugins.chatcolorhandler
    +
    LegacyHexParser - Class in org.lushplugins.chatcolorhandler.common.parser
    +
    +
    Translates hex in format "§x§r§r§g§g§b§b"
    +
    +
    LegacyHexParser() - Constructor for class org.lushplugins.chatcolorhandler.common.parser.LegacyHexParser
     
    -A B C D G H I L M O P R S T V 
    All Classes and Interfaces|All Packages|Constant Field Values +A B C D E G H I L M O P R S T V 
    All Classes and Interfaces|All Packages diff --git a/docs/index.html b/docs/index.html index 3a7f27c..1247842 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,11 +1,11 @@ - + Overview - + @@ -52,12 +52,18 @@ diff --git a/docs/member-search-index.js b/docs/member-search-index.js index 105337f..9fe8889 100644 --- a/docs/member-search-index.js +++ b/docs/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"all()"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"broadcastMessage(String)","u":"broadcastMessage(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"broadcastMessage(String...)","u":"broadcastMessage(java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"COLOR"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"color()"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"debugLog(String)","u":"debugLog(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"getCombinedResolvers(Audience)","u":"getCombinedResolvers(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"getCombinedResolvers(Audience, List)","u":"getCombinedResolvers(net.kyori.adventure.audience.Audience,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"getRegisteredParsers()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"getRegisteredResolvers()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageColorParser","l":"getResolver()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageInteractionParser","l":"getResolver()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessagePlaceholderParser","l":"getResolver()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageTextFormattingParser","l":"getResolver()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniPlaceholdersParser","l":"getResolver()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Resolver","l":"getResolver()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniPlaceholdersParser","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Resolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"HexParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"LegacyHexParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"LegacySpigotParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageColorParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageInteractionParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessagePlaceholderParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageResolverParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageTextFormattingParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniPlaceholdersParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"PlaceholderAPIParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"init()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"HexParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"LegacyHexParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"LegacySpigotParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageColorParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageInteractionParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessagePlaceholderParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageResolverParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageTextFormattingParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniPlaceholdersParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"PlaceholderAPIParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"interact()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"INTERACTION"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser.OutputType","l":"MINI_MESSAGE"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"ofType(String)","u":"ofType(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"ofTypes(String...)","u":"ofTypes(java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"Parsers()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"ParserTypes()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"HexParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"LegacyHexParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"LegacySpigotParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageColorParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageInteractionParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessagePlaceholderParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageResolverParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageTextFormattingParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"PlaceholderAPIParser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Resolver","l":"parseString(String, Parser.OutputType)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"MiniMessageResolverParser","l":"parseString(String, Parser.OutputType, Player)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.parsers.custom","c":"PlaceholderAPIParser","l":"parseString(String, Parser.OutputType, Player)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser","l":"parseString(String, Parser.OutputType, Player)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"parseString(String, Parser.OutputType, Player, List)","u":"parseString(java.lang.String,org.lushplugins.chatcolorhandler.parsers.Parser.OutputType,org.bukkit.entity.Player,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"PLACEHOLDER"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"placeholder()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parsers","l":"register(Parser, int)","u":"register(org.lushplugins.chatcolorhandler.parsers.Parser,int)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendActionBarMessage(Player, String)","u":"sendActionBarMessage(org.bukkit.entity.Player,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendActionBarMessage(Player[], String)","u":"sendActionBarMessage(org.bukkit.entity.Player[],java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendMessage(CommandSender, String)","u":"sendMessage(org.bukkit.command.CommandSender,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendMessage(CommandSender, String...)","u":"sendMessage(org.bukkit.command.CommandSender,java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendMessage(CommandSender[], String)","u":"sendMessage(org.bukkit.command.CommandSender[],java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendMessage(CommandSender[], String...)","u":"sendMessage(org.bukkit.command.CommandSender[],java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player, String)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player, String, String)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player, String, String, int, int)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String,int,int)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player, String, String, int, int, int)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String,int,int,int)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player[], String)","u":"sendTitle(org.bukkit.entity.Player[],java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player[], String, String)","u":"sendTitle(org.bukkit.entity.Player[],java.lang.String,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player[], String, String, int, int)","u":"sendTitle(org.bukkit.entity.Player[],java.lang.String,java.lang.String,int,int)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"sendTitle(Player[], String, String, int, int, int)","u":"sendTitle(org.bukkit.entity.Player[],java.lang.String,java.lang.String,int,int,int)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"settings()"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser.OutputType","l":"SPIGOT"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"stripColor(String)","u":"stripColor(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"TEXT_FORMATTING"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"ParserTypes","l":"textFormatting()"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(Collection)","u":"translate(java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(Collection)","u":"translate(java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(Collection, List)","u":"translate(java.util.Collection,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(Collection, List)","u":"translate(java.util.Collection,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(Collection, Player)","u":"translate(java.util.Collection,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(Collection, Player)","u":"translate(java.util.Collection,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(Collection, Player, List)","u":"translate(java.util.Collection,org.bukkit.entity.Player,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(Collection, Player, List)","u":"translate(java.util.Collection,org.bukkit.entity.Player,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(String)","u":"translate(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(String)","u":"translate(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(String, List)","u":"translate(java.lang.String,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(String, List)","u":"translate(java.lang.String,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(String, Player)","u":"translate(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(String, Player)","u":"translate(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler","c":"ModernChatColorHandler","l":"translate(String, Player, List)","u":"translate(java.lang.String,org.bukkit.entity.Player,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler","c":"ChatColorHandler","l":"translate(String, Player, List)","u":"translate(java.lang.String,org.bukkit.entity.Player,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser.OutputType","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.parsers","c":"Parser.OutputType","l":"values()"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"all()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"asTagResolver(Audience, List)","u":"asTagResolver(net.kyori.adventure.audience.Audience,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"broadcastMessage(String)","u":"broadcastMessage(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"broadcastMessage(String)","u":"broadcastMessage(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"broadcastMessage(String...)","u":"broadcastMessage(java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"COLOR"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"color()"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"ColorHandler()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.settings","c":"ColorHandlerSettings","l":"ColorHandlerSettings()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.settings","c":"ColorHandlerSettings","l":"defaultParsers()"},{"p":"org.lushplugins.chatcolorhandler.common.settings","c":"ColorHandlerSettings","l":"defaultParsers(List)","u":"defaultParsers(java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.common.settings","c":"ColorHandlerSettings","l":"defaultParsers(Parser...)","u":"defaultParsers(org.lushplugins.chatcolorhandler.common.parser.Parser...)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"equals(String)","u":"equals(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageColorResolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageDefaultsResolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageInteractionResolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessagePlaceholderResolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageTextFormattingResolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"Resolver","l":"getResolver(Audience)","u":"getResolver(net.kyori.adventure.audience.Audience)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"HexParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyAmpersandParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyHexParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"Parser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParticleParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"PlaceholderAPIParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"SoundParser","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageColorResolver","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageDefaultsResolver","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageInteractionResolver","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessagePlaceholderResolver","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageTextFormattingResolver","l":"getType()"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"handler()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"HexParser","l":"HexParser()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"id()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"HexParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyAmpersandParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyHexParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParticleParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"PlaceholderAPIParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"SoundParser","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageColorResolver","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageDefaultsResolver","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageInteractionResolver","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessagePlaceholderResolver","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageTextFormattingResolver","l":"INSTANCE"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"INTERACTION"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"interaction()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyAmpersandParser","l":"LegacyAmpersandParser()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyHexParser","l":"LegacyHexParser()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageColorResolver","l":"MiniMessageColorResolver()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageDefaultsResolver","l":"MiniMessageDefaultsResolver()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageInteractionResolver","l":"MiniMessageInteractionResolver()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessagePlaceholderResolver","l":"MiniMessagePlaceholderResolver()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"MiniMessageTextFormattingResolver","l":"MiniMessageTextFormattingResolver()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"ofType(String)","u":"ofType(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"ofType(String)","u":"ofType(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"ofTypes(String...)","u":"ofTypes(java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"ofTypes(String...)","u":"ofTypes(java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"PaperColor()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"ParserRegistry()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"parsers()"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"ParserTypes()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"HexParser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyAmpersandParser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"LegacyHexParser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"Parser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParticleParser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"PlaceholderAPIParser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"SoundParser","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"Resolver","l":"parseString(String, Player)","u":"parseString(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"parseString(String, Player, Collection)","u":"parseString(java.lang.String,org.bukkit.entity.Player,java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"PARTICLE"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"particle()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParticleParser","l":"ParticleParser()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"PLACEHOLDER"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"placeholder()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"PlaceholderAPIParser","l":"PlaceholderAPIParser()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"register(Parser, int)","u":"register(org.lushplugins.chatcolorhandler.common.parser.Parser,int)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"register(Resolver)","u":"register(org.lushplugins.chatcolorhandler.paper.resolver.Resolver)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"register(Resolver...)","u":"register(org.lushplugins.chatcolorhandler.paper.resolver.Resolver...)"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"ResolverRegistry()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"resolvers()"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendActionBarMessage(Collection, String)","u":"sendActionBarMessage(java.util.Collection,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendActionBarMessage(Player, String)","u":"sendActionBarMessage(org.bukkit.entity.Player,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"sendActionBarMessage(Player, String)","u":"sendActionBarMessage(org.bukkit.entity.Player,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendMessage(Collection, String)","u":"sendMessage(java.util.Collection,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendMessage(Collection, String...)","u":"sendMessage(java.util.Collection,java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendMessage(CommandSender, String)","u":"sendMessage(org.bukkit.command.CommandSender,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"sendMessage(CommandSender, String)","u":"sendMessage(org.bukkit.command.CommandSender,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendMessage(CommandSender, String...)","u":"sendMessage(org.bukkit.command.CommandSender,java.lang.String...)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Collection, String)","u":"sendTitle(java.util.Collection,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Collection, String, String)","u":"sendTitle(java.util.Collection,java.lang.String,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Collection, String, String, int, int)","u":"sendTitle(java.util.Collection,java.lang.String,java.lang.String,int,int)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Collection, String, String, int, int, int)","u":"sendTitle(java.util.Collection,java.lang.String,java.lang.String,int,int,int)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Player, String)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Player, String, String)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Player, String, String, int, int)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String,int,int)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"sendTitle(Player, String, String, int, int, int)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String,int,int,int)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"sendTitle(Player, String, String, int, int, int)","u":"sendTitle(org.bukkit.entity.Player,java.lang.String,java.lang.String,int,int,int)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"settings()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"sort()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"SOUND"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"sound()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"SoundParser","l":"SoundParser()","u":"%3Cinit%3E()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"TEXT_FORMATTING"},{"p":"org.lushplugins.chatcolorhandler.paper.parser","c":"ParserTypes","l":"textFormatting()"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(Collection)","u":"translate(java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(Collection, List)","u":"translate(java.util.Collection,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(Collection, Player)","u":"translate(java.util.Collection,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(Collection, Player, List)","u":"translate(java.util.Collection,org.bukkit.entity.Player,java.util.List)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(String)","u":"translate(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(String, Collection)","u":"translate(java.lang.String,java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(String, Player)","u":"translate(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.common","c":"ColorHandler","l":"translate(String, Player, Collection)","u":"translate(java.lang.String,org.bukkit.entity.Player,java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"translate(String, Player, Collection)","u":"translate(java.lang.String,org.bukkit.entity.Player,java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"translateRaw(String)","u":"translateRaw(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"translateRaw(String, Collection)","u":"translateRaw(java.lang.String,java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"translateRaw(String, Player)","u":"translateRaw(java.lang.String,org.bukkit.entity.Player)"},{"p":"org.lushplugins.chatcolorhandler.paper","c":"PaperColor","l":"translateRaw(String, Player, Collection)","u":"translateRaw(java.lang.String,org.bukkit.entity.Player,java.util.Collection)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserRegistry","l":"values()"},{"p":"org.lushplugins.chatcolorhandler.common.parser","c":"ParserType","l":"values()"},{"p":"org.lushplugins.chatcolorhandler.paper.resolver","c":"ResolverRegistry","l":"values()"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/org/lushplugins/chatcolorhandler/ChatColorHandler.html b/docs/org/lushplugins/chatcolorhandler/ChatColorHandler.html index 863aec9..3907772 100644 --- a/docs/org/lushplugins/chatcolorhandler/ChatColorHandler.html +++ b/docs/org/lushplugins/chatcolorhandler/ChatColorHandler.html @@ -72,7 +72,7 @@

    Class ChatColorHandler

    java.lang.Object -
    org.lushplugins.chatcolorhandler.ChatColorHandler
    +
    org.lushplugins.chatcolorhandler.SpigotColorHandler

    diff --git a/docs/org/lushplugins/chatcolorhandler/common/ColorHandler.html b/docs/org/lushplugins/chatcolorhandler/common/ColorHandler.html new file mode 100644 index 0000000..16eca2f --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/ColorHandler.html @@ -0,0 +1,698 @@ + + + + +ColorHandler + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ColorHandler<T>

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.ColorHandler<T>
    +
    +
    +
    +
    Type Parameters:
    +
    T - Translation output type
    +
    +
    +
    Direct Known Subclasses:
    +
    PaperColor
    +
    +
    +
    public abstract class ColorHandler<T> +extends Object
    +
    +
    +
      + +
    • +
      +

      Constructor Summary

      +
      Constructors
      +
      +
      Constructor
      +
      Description
      + +
       
      +
      +
      +
    • + +
    • +
      +

      Method Summary

      +
      +
      +
      +
      +
      Modifier and Type
      +
      Method
      +
      Description
      +
      abstract void
      +
      broadcastMessage(@Nullable String message)
      +
      +
      Sends all online players a message
      +
      +
      void
      +
      broadcastMessage(String... messages)
      +
      +
      Sends all online players multiple messages
      +
      + + +
       
      +
      void
      +
      sendActionBarMessage(Collection<org.bukkit.entity.Player> players, + @Nullable String message)
      +
      +
      Sends multiple players an action bar message
      +
      +
      abstract void
      +
      sendActionBarMessage(org.bukkit.entity.Player player, + @Nullable String message)
      +
      +
      Sends a player an action bar message
      +
      +
      void
      +
      sendMessage(Collection<org.bukkit.command.CommandSender> recipients, + @Nullable String message)
      +
      +
      Sends multiple recipients a message
      +
      +
      void
      +
      sendMessage(Collection<org.bukkit.command.CommandSender> recipients, + String... messages)
      +
      +
      Sends multiple recipients, multiple messages
      +
      +
      abstract void
      +
      sendMessage(org.bukkit.command.CommandSender recipient, + @Nullable String message)
      +
      +
      Sends a recipient a message
      +
      +
      void
      +
      sendMessage(org.bukkit.command.CommandSender recipient, + String... messages)
      +
      +
      Sends a recipient multiple messages
      +
      +
      void
      +
      sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable String title)
      +
      +
      Send multiple players a title message
      +
      +
      void
      +
      sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable String title, + @Nullable String subtitle)
      +
      +
      Send multiple players a title message
      +
      +
      void
      +
      sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable String title, + @Nullable String subtitle, + int fadeIn, + int fadeOut)
      +
      +
      Send multiple players a title message
      +
      +
      void
      +
      sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable String title, + @Nullable String subtitle, + int fadeIn, + int stay, + int fadeOut)
      +
      +
      Send multiple players a title message
      +
      +
      void
      +
      sendTitle(org.bukkit.entity.Player player, + @Nullable String title)
      +
      +
      Send a player a title message
      +
      +
      void
      +
      sendTitle(org.bukkit.entity.Player player, + @Nullable String title, + @Nullable String subtitle)
      +
      +
      Send a player a title message
      +
      +
      void
      +
      sendTitle(org.bukkit.entity.Player player, + @Nullable String title, + @Nullable String subtitle, + int fadeIn, + int fadeOut)
      +
      +
      Send a player a title message
      +
      +
      abstract void
      +
      sendTitle(org.bukkit.entity.Player player, + @Nullable String title, + @Nullable String subtitle, + int fadeIn, + int stay, + int fadeOut)
      +
      +
      Send a player a title message
      +
      + + +
       
      + +
      translate(@Nullable String string)
      +
      +
      Translates a string to allow for hex colours and placeholders
      +
      + +
      translate(@Nullable String string, + @Nullable org.bukkit.entity.Player player)
      +
      +
      Translates a string to allow for hex colours and placeholders
      +
      +
      abstract T
      +
      translate(@Nullable String string, + @Nullable org.bukkit.entity.Player player, + Collection<Parser> parsers)
      +
      +
      Translates a string to allow for hex colours and placeholders
      +
      + +
      translate(@Nullable String string, + Collection<Parser> parsers)
      +
      +
      Translates a string to allow for hex colours and placeholders
      +
      + + +
      +
      Translates a collection of strings to allow for hex colours and placeholders
      +
      + +
      translate(Collection<String> strings, + List<Parser> parsers)
      +
      +
      Translates a collection of strings to allow for hex colours and placeholders
      +
      + +
      translate(Collection<String> strings, + org.bukkit.entity.Player player)
      +
      +
      Translates a collection of strings to allow for hex colours and placeholders
      +
      + +
      translate(Collection<String> strings, + org.bukkit.entity.Player player, + List<Parser> parsers)
      +
      +
      Translates a collection of strings to allow for hex colours and placeholders
      +
      +
      +
      +
      +
      +

      Methods inherited from class java.lang.Object

      +equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      +
      +
    • +
    +
    +
    +
      + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ColorHandler

        +
        public ColorHandler()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        settings

        +
        public ColorHandlerSettings settings()
        +
        +
      • +
      • +
        +

        parsers

        +
        public ParserRegistry parsers()
        +
        +
      • +
      • +
        +

        translate

        +
        public abstract T translate(@Nullable + @Nullable String string, + @Nullable + @Nullable org.bukkit.entity.Player player, + Collection<Parser> parsers)
        +
        Translates a string to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        string - String to be translated
        +
        player - Player to parse placeholders for
        +
        parsers - Parsers which this message will be parsed through
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public T translate(@Nullable + @Nullable String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Translates a string to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        string - String to be translated
        +
        player - Player to parse placeholders for
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public T translate(@Nullable + @Nullable String string, + Collection<Parser> parsers)
        +
        Translates a string to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        string - String to be translated
        +
        parsers - Parsers which this message won't be parsed through
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public T translate(@Nullable + @Nullable String string)
        +
        Translates a string to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        string - String to be translated
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public List<T> translate(Collection<String> strings, + org.bukkit.entity.Player player, + List<Parser> parsers)
        +
        Translates a collection of strings to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        strings - Strings to be translated
        +
        player - Player to parse placeholders for
        +
        parsers - Parsers which this message will be parsed through
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public List<T> translate(Collection<String> strings, + org.bukkit.entity.Player player)
        +
        Translates a collection of strings to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        strings - Strings to be translated
        +
        player - Player to parse placeholders for
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public List<T> translate(Collection<String> strings, + List<Parser> parsers)
        +
        Translates a collection of strings to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        strings - Strings to be translated
        +
        parsers - Parsers which this message will be parsed through
        +
        +
        +
      • +
      • +
        +

        translate

        +
        public List<T> translate(Collection<String> strings)
        +
        Translates a collection of strings to allow for hex colours and placeholders
        +
        +
        Parameters:
        +
        strings - Strings to be translated
        +
        +
        +
      • +
      • +
        +

        sendMessage

        +
        public abstract void sendMessage(org.bukkit.command.CommandSender recipient, + @Nullable + @Nullable String message)
        +
        Sends a recipient a message
        +
        +
        Parameters:
        +
        recipient - Sender to receive this message
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        sendMessage

        +
        public void sendMessage(org.bukkit.command.CommandSender recipient, + String... messages)
        +
        Sends a recipient multiple messages
        +
        +
        Parameters:
        +
        recipient - Sender to receive message
        +
        messages - Messages to be displayed
        +
        +
        +
      • +
      • +
        +

        sendMessage

        +
        public void sendMessage(Collection<org.bukkit.command.CommandSender> recipients, + @Nullable + @Nullable String message)
        +
        Sends multiple recipients a message
        +
        +
        Parameters:
        +
        recipients - Senders to receive message
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        sendMessage

        +
        public void sendMessage(Collection<org.bukkit.command.CommandSender> recipients, + String... messages)
        +
        Sends multiple recipients, multiple messages
        +
        +
        Parameters:
        +
        recipients - Senders to receive this message
        +
        messages - Messages to be displayed
        +
        +
        +
      • +
      • +
        +

        broadcastMessage

        +
        public abstract void broadcastMessage(@Nullable + @Nullable String message)
        +
        Sends all online players a message
        +
        +
        Parameters:
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        broadcastMessage

        +
        public void broadcastMessage(String... messages)
        +
        Sends all online players multiple messages
        +
        +
        Parameters:
        +
        messages - Messages to be displayed
        +
        +
        +
      • +
      • +
        +

        sendActionBarMessage

        +
        public abstract void sendActionBarMessage(org.bukkit.entity.Player player, + @Nullable + @Nullable String message)
        +
        Sends a player an action bar message
        +
        +
        Parameters:
        +
        player - Player to receive this action bar message
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        sendActionBarMessage

        +
        public void sendActionBarMessage(Collection<org.bukkit.entity.Player> players, + @Nullable + @Nullable String message)
        +
        Sends multiple players an action bar message
        +
        +
        Parameters:
        +
        players - Players to receive this action bar message
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public abstract void sendTitle(org.bukkit.entity.Player player, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle, + int fadeIn, + int stay, + int fadeOut)
        +
        Send a player a title message
        +
        +
        Parameters:
        +
        player - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        fadeIn - Duration for title to fade in
        +
        stay - Duration for title to appear
        +
        fadeOut - Duration for title to fade out
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(org.bukkit.entity.Player player, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle, + int fadeIn, + int fadeOut)
        +
        Send a player a title message
        +
        +
        Parameters:
        +
        player - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        fadeIn - Duration for title to fade in
        +
        fadeOut - Duration for title to fade out
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(org.bukkit.entity.Player player, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle)
        +
        Send a player a title message
        +
        +
        Parameters:
        +
        player - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(org.bukkit.entity.Player player, + @Nullable + @Nullable String title)
        +
        Send a player a title message
        +
        +
        Parameters:
        +
        player - Player to receive this title
        +
        title - Title to be displayed
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle, + int fadeIn, + int stay, + int fadeOut)
        +
        Send multiple players a title message
        +
        +
        Parameters:
        +
        players - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        fadeIn - Duration for title to fade in
        +
        stay - Duration for title to appear
        +
        fadeOut - Duration for title to fade out
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle, + int fadeIn, + int fadeOut)
        +
        Send multiple players a title message
        +
        +
        Parameters:
        +
        players - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        fadeIn - Duration for title to fade in
        +
        fadeOut - Duration for title to fade out
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle)
        +
        Send multiple players a title message
        +
        +
        Parameters:
        +
        players - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(Collection<org.bukkit.entity.Player> players, + @Nullable + @Nullable String title)
        +
        Send multiple players a title message
        +
        +
        Parameters:
        +
        players - Player to receive this title
        +
        title - Title to be displayed
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/package-summary.html b/docs/org/lushplugins/chatcolorhandler/common/package-summary.html new file mode 100644 index 0000000..51b9c62 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/package-summary.html @@ -0,0 +1,95 @@ + + + + +org.lushplugins.chatcolorhandler.common + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Package org.lushplugins.chatcolorhandler.common

    +
    +
    +
    package org.lushplugins.chatcolorhandler.common
    +
    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/package-tree.html b/docs/org/lushplugins/chatcolorhandler/common/package-tree.html new file mode 100644 index 0000000..4be1d38 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/package-tree.html @@ -0,0 +1,71 @@ + + + + +org.lushplugins.chatcolorhandler.common Class Hierarchy + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For Package org.lushplugins.chatcolorhandler.common

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/HexParser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/HexParser.html new file mode 100644 index 0000000..0a3860f --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/HexParser.html @@ -0,0 +1,224 @@ + + + + +HexParser + + + + + + + + + + + + + + + +
    + +
    +
    + + +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.HexParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class HexParser +extends Object +implements Parser
    +
    Translates hex in format "&#rrggbb"
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      +
        +
      • +
        +

        INSTANCE

        +
        public static final HexParser INSTANCE
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        HexParser

        +
        public HexParser()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.html new file mode 100644 index 0000000..34ea837 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/LegacyAmpersandParser.html @@ -0,0 +1,223 @@ + + + + +LegacyAmpersandParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class LegacyAmpersandParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.LegacyAmpersandParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class LegacyAmpersandParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        LegacyAmpersandParser

        +
        public LegacyAmpersandParser()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.html new file mode 100644 index 0000000..3572862 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/LegacyHexParser.html @@ -0,0 +1,224 @@ + + + + +LegacyHexParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class LegacyHexParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.LegacyHexParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class LegacyHexParser +extends Object +implements Parser
    +
    Translates hex in format "§x§r§r§g§g§b§b"
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        LegacyHexParser

        +
        public LegacyHexParser()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/Parser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/Parser.html new file mode 100644 index 0000000..217fbaf --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/Parser.html @@ -0,0 +1,159 @@ + + + + +Parser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Interface Parser

    +
    +
    +
    +
    All Known Subinterfaces:
    +
    Resolver
    +
    +
    +
    All Known Implementing Classes:
    +
    HexParser, LegacyAmpersandParser, LegacyHexParser, MiniMessageColorResolver, MiniMessageDefaultsResolver, MiniMessageInteractionResolver, MiniMessagePlaceholderResolver, MiniMessageTextFormattingResolver, ParticleParser, PlaceholderAPIParser, SoundParser
    +
    +
    +
    public interface Parser
    +
    +
    +
      + +
    • +
      +

      Method Summary

      +
      +
      +
      +
      +
      Modifier and Type
      +
      Method
      +
      Description
      +
      @Nullable ParserType
      + +
       
      + +
      parseString(String string, + @Nullable org.bukkit.entity.Player player)
      +
      +
      Parse a string in relation to a player
      +
      +
      +
      +
      +
      +
    • +
    +
    +
    +
      + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        @Nullable +@Nullable ParserType getType()
        +
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Parse a string in relation to a player
        +
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.html b/docs/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.html new file mode 100644 index 0000000..ea9391e --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.html @@ -0,0 +1,219 @@ + + + + +ParserRegistry + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ParserRegistry

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
    +
    +
    +
    +
    public class ParserRegistry +extends Object
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ParserRegistry

        +
        public ParserRegistry()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        register

        +
        public void register(Parser parser, + int priority)
        +
        +
        Parameters:
        +
        parser - parser to register
        +
        priority - priority of parser, higher value will go first
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @Nullable + @Nullable org.bukkit.entity.Player player, + @NotNull + @NotNull Collection<Parser> parsers)
        +
        +
      • +
      • +
        +

        sort

        +
        public void sort()
        +
        +
      • +
      • +
        +

        values

        +
        public Set<Parser> values()
        +
        +
      • +
      • +
        +

        ofTypes

        +
        public List<Parser> ofTypes(@NotNull + @NotNull String... types)
        +
        +
      • +
      • +
        +

        ofType

        +
        public List<Parser> ofType(@NotNull + @NotNull String type)
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/ParserType.html b/docs/org/lushplugins/chatcolorhandler/common/parser/ParserType.html new file mode 100644 index 0000000..b11cd3b --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/ParserType.html @@ -0,0 +1,285 @@ + + + + +ParserType + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Enum Class ParserType

    +
    +
    java.lang.Object +
    java.lang.Enum<ParserType> +
    org.lushplugins.chatcolorhandler.common.parser.ParserType
    +
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Serializable, Comparable<ParserType>, Constable
    +
    +
    +
    public enum ParserType +extends Enum<ParserType>
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Enum Constant Details

      +
        +
      • +
        +

        COLOR

        +
        public static final ParserType COLOR
        +
        Color and decoration based parsers
        +
        +
      • +
      • +
        +

        SOUND

        +
        public static final ParserType SOUND
        +
        Sound based parsers
        +
        +
      • +
      • +
        +

        PARTICLE

        +
        public static final ParserType PARTICLE
        +
        Particle based parsers
        +
        +
      • +
      • +
        +

        INTERACTION

        +
        public static final ParserType INTERACTION
        +
        Interaction based parsers, like hover, click and nbt elements
        +
        +
      • +
      • +
        +

        PLACEHOLDER

        +
        public static final ParserType PLACEHOLDER
        +
        Placeholder based parsers
        +
        +
      • +
      • +
        +

        TEXT_FORMATTING

        +
        public static final ParserType TEXT_FORMATTING
        +
        Text formatting based parsers, this includes font and newlines
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        values

        +
        public static ParserType[] values()
        +
        Returns an array containing the constants of this enum class, in +the order they are declared.
        +
        +
        Returns:
        +
        an array containing the constants of this enum class, in the order they are declared
        +
        +
        +
      • +
      • +
        +

        valueOf

        +
        public static ParserType valueOf(String name)
        +
        Returns the enum constant of this class with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this class. (Extraneous whitespace characters are +not permitted.)
        +
        +
        Parameters:
        +
        name - the name of the enum constant to be returned.
        +
        Returns:
        +
        the enum constant with the specified name
        +
        Throws:
        +
        IllegalArgumentException - if this enum class has no constant with the specified name
        +
        NullPointerException - if the argument is null
        +
        +
        +
      • +
      • +
        +

        id

        +
        public String id()
        +
        +
      • +
      • +
        +

        equals

        +
        public boolean equals(String id)
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.html new file mode 100644 index 0000000..5de399e --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/ParticleParser.html @@ -0,0 +1,223 @@ + + + + +ParticleParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ParticleParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.ParticleParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class ParticleParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ParticleParser

        +
        public ParticleParser()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/PlaceholderAPIParser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/PlaceholderAPIParser.html new file mode 100644 index 0000000..8c7fef3 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/PlaceholderAPIParser.html @@ -0,0 +1,223 @@ + + + + +PlaceholderAPIParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class PlaceholderAPIParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.PlaceholderAPIParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class PlaceholderAPIParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        PlaceholderAPIParser

        +
        public PlaceholderAPIParser()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/SoundParser.html b/docs/org/lushplugins/chatcolorhandler/common/parser/SoundParser.html new file mode 100644 index 0000000..33f4932 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/SoundParser.html @@ -0,0 +1,223 @@ + + + + +SoundParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class SoundParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.parser.SoundParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class SoundParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      +
        +
      • +
        +

        INSTANCE

        +
        public static final SoundParser INSTANCE
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        SoundParser

        +
        public SoundParser()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/package-summary.html b/docs/org/lushplugins/chatcolorhandler/common/parser/package-summary.html new file mode 100644 index 0000000..bc485a8 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/package-summary.html @@ -0,0 +1,121 @@ + + + + +org.lushplugins.chatcolorhandler.common.parser + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Package org.lushplugins.chatcolorhandler.common.parser

    +
    +
    +
    package org.lushplugins.chatcolorhandler.common.parser
    +
    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/parser/package-tree.html b/docs/org/lushplugins/chatcolorhandler/common/parser/package-tree.html new file mode 100644 index 0000000..d0f43e2 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/parser/package-tree.html @@ -0,0 +1,97 @@ + + + + +org.lushplugins.chatcolorhandler.common.parser Class Hierarchy + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For Package org.lushplugins.chatcolorhandler.common.parser

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    +
      +
    • java.lang.Object +
        +
      • org.lushplugins.chatcolorhandler.common.parser.HexParser (implements org.lushplugins.chatcolorhandler.common.parser.Parser)
      • +
      • org.lushplugins.chatcolorhandler.common.parser.LegacyAmpersandParser (implements org.lushplugins.chatcolorhandler.common.parser.Parser)
      • +
      • org.lushplugins.chatcolorhandler.common.parser.LegacyHexParser (implements org.lushplugins.chatcolorhandler.common.parser.Parser)
      • +
      • org.lushplugins.chatcolorhandler.common.parser.ParserRegistry
      • +
      • org.lushplugins.chatcolorhandler.common.parser.ParticleParser (implements org.lushplugins.chatcolorhandler.common.parser.Parser)
      • +
      • org.lushplugins.chatcolorhandler.common.parser.PlaceholderAPIParser (implements org.lushplugins.chatcolorhandler.common.parser.Parser)
      • +
      • org.lushplugins.chatcolorhandler.common.parser.SoundParser (implements org.lushplugins.chatcolorhandler.common.parser.Parser)
      • +
      +
    • +
    +
    +
    +

    Interface Hierarchy

    +
      +
    • org.lushplugins.chatcolorhandler.common.parser.Parser
    • +
    +
    +
    +

    Enum Class Hierarchy

    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/settings/ColorHandlerSettings.html b/docs/org/lushplugins/chatcolorhandler/common/settings/ColorHandlerSettings.html new file mode 100644 index 0000000..c48de3f --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/settings/ColorHandlerSettings.html @@ -0,0 +1,190 @@ + + + + +ColorHandlerSettings + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ColorHandlerSettings

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.settings.ColorHandlerSettings
    +
    +
    +
    +
    public class ColorHandlerSettings +extends Object
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ColorHandlerSettings

        +
        public ColorHandlerSettings()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        defaultParsers

        +
        public List<Parser> defaultParsers()
        +
        +
      • +
      • +
        +

        defaultParsers

        +
        public ColorHandlerSettings defaultParsers(List<Parser> parsers)
        +
        Set the default parsers to use, when not overridden all registered parsers are used
        +
        +
        Parameters:
        +
        parsers - The default parsers to use when none are specified
        +
        +
        +
      • +
      • +
        +

        defaultParsers

        +
        public ColorHandlerSettings defaultParsers(Parser... parsers)
        +
        Set the default parsers to use, when not overridden all registered parsers are used
        +
        +
        Parameters:
        +
        parsers - The default parsers to use when none are specified
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/settings/package-summary.html b/docs/org/lushplugins/chatcolorhandler/common/settings/package-summary.html new file mode 100644 index 0000000..cae6b24 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/settings/package-summary.html @@ -0,0 +1,95 @@ + + + + +org.lushplugins.chatcolorhandler.common.settings + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Package org.lushplugins.chatcolorhandler.common.settings

    +
    +
    +
    package org.lushplugins.chatcolorhandler.common.settings
    +
    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/common/settings/package-tree.html b/docs/org/lushplugins/chatcolorhandler/common/settings/package-tree.html new file mode 100644 index 0000000..5c579b5 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/common/settings/package-tree.html @@ -0,0 +1,71 @@ + + + + +org.lushplugins.chatcolorhandler.common.settings Class Hierarchy + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For Package org.lushplugins.chatcolorhandler.common.settings

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/PaperColor.html b/docs/org/lushplugins/chatcolorhandler/paper/PaperColor.html new file mode 100644 index 0000000..8b71610 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/PaperColor.html @@ -0,0 +1,351 @@ + + + + +PaperColor + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class PaperColor

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.common.ColorHandler<net.kyori.adventure.text.Component> +
    org.lushplugins.chatcolorhandler.paper.PaperColor
    +
    +
    +
    +
    +
    public class PaperColor +extends ColorHandler<net.kyori.adventure.text.Component>
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        PaperColor

        +
        public PaperColor()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        resolvers

        +
        public ResolverRegistry resolvers()
        +
        +
      • +
      • +
        +

        translate

        +
        public net.kyori.adventure.text.Component translate(@Nullable + @Nullable String string, + @Nullable + @Nullable org.bukkit.entity.Player player, + Collection<Parser> parsers)
        +
        Description copied from class: ColorHandler
        +
        Translates a string to allow for hex colours and placeholders
        +
        +
        Specified by:
        +
        translate in class ColorHandler<net.kyori.adventure.text.Component>
        +
        Parameters:
        +
        string - String to be translated
        +
        player - Player to parse placeholders for
        +
        parsers - Parsers which this message will be parsed through
        +
        +
        +
      • +
      • +
        +

        translateRaw

        +
        public String translateRaw(@Nullable + @Nullable String string, + @Nullable + @Nullable org.bukkit.entity.Player player, + Collection<Parser> parsers)
        +
        +
      • +
      • +
        +

        translateRaw

        +
        public String translateRaw(@Nullable + @Nullable String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        +
      • +
      • +
        +

        translateRaw

        +
        public String translateRaw(@Nullable + @Nullable String string, + Collection<Parser> parsers)
        +
        +
      • +
      • +
        +

        translateRaw

        +
        public String translateRaw(@Nullable + @Nullable String string)
        +
        +
      • +
      • +
        +

        sendMessage

        +
        public void sendMessage(org.bukkit.command.CommandSender recipient, + @Nullable + @Nullable String message)
        +
        Description copied from class: ColorHandler
        +
        Sends a recipient a message
        +
        +
        Specified by:
        +
        sendMessage in class ColorHandler<net.kyori.adventure.text.Component>
        +
        Parameters:
        +
        recipient - Sender to receive this message
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        broadcastMessage

        +
        public void broadcastMessage(@Nullable + @Nullable String message)
        +
        Description copied from class: ColorHandler
        +
        Sends all online players a message
        +
        +
        Specified by:
        +
        broadcastMessage in class ColorHandler<net.kyori.adventure.text.Component>
        +
        Parameters:
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        sendActionBarMessage

        +
        public void sendActionBarMessage(org.bukkit.entity.Player player, + @Nullable + @Nullable String message)
        +
        Description copied from class: ColorHandler
        +
        Sends a player an action bar message
        +
        +
        Specified by:
        +
        sendActionBarMessage in class ColorHandler<net.kyori.adventure.text.Component>
        +
        Parameters:
        +
        player - Player to receive this action bar message
        +
        message - Message to be displayed
        +
        +
        +
      • +
      • +
        +

        sendTitle

        +
        public void sendTitle(org.bukkit.entity.Player player, + @Nullable + @Nullable String title, + @Nullable + @Nullable String subtitle, + int fadeIn, + int stay, + int fadeOut)
        +
        Description copied from class: ColorHandler
        +
        Send a player a title message
        +
        +
        Specified by:
        +
        sendTitle in class ColorHandler<net.kyori.adventure.text.Component>
        +
        Parameters:
        +
        player - Player to receive this title
        +
        title - Title to be displayed
        +
        subtitle - Subtitle to be displayed
        +
        fadeIn - Duration for title to fade in
        +
        stay - Duration for title to appear
        +
        fadeOut - Duration for title to fade out
        +
        +
        +
      • +
      • +
        +

        handler

        +
        public static PaperColor handler()
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/package-summary.html b/docs/org/lushplugins/chatcolorhandler/paper/package-summary.html new file mode 100644 index 0000000..27178ef --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/package-summary.html @@ -0,0 +1,95 @@ + + + + +org.lushplugins.chatcolorhandler.paper + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Package org.lushplugins.chatcolorhandler.paper

    +
    +
    +
    package org.lushplugins.chatcolorhandler.paper
    +
    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/package-tree.html b/docs/org/lushplugins/chatcolorhandler/paper/package-tree.html new file mode 100644 index 0000000..502ba8e --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/package-tree.html @@ -0,0 +1,75 @@ + + + + +org.lushplugins.chatcolorhandler.paper Class Hierarchy + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For Package org.lushplugins.chatcolorhandler.paper

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    +
      +
    • java.lang.Object +
        +
      • org.lushplugins.chatcolorhandler.common.ColorHandler<T> +
          +
        • org.lushplugins.chatcolorhandler.paper.PaperColor
        • +
        +
      • +
      +
    • +
    +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.html b/docs/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.html new file mode 100644 index 0000000..e7de5de --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.html @@ -0,0 +1,212 @@ + + + + +ParserTypes + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ParserTypes

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
    +
    +
    +
    +
    public class ParserTypes +extends Object
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ParserTypes

        +
        public ParserTypes()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        color

        +
        public static List<Parser> color()
        +
        +
      • +
      • +
        +

        sound

        +
        public static List<Parser> sound()
        +
        +
      • +
      • +
        +

        particle

        +
        public static List<Parser> particle()
        +
        +
      • +
      • +
        +

        interaction

        +
        public static List<Parser> interaction()
        +
        +
      • +
      • +
        +

        placeholder

        +
        public static List<Parser> placeholder()
        +
        +
      • +
      • +
        +

        textFormatting

        +
        public static List<Parser> textFormatting()
        +
        +
      • +
      • +
        +

        all

        +
        public static Set<Parser> all()
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/parser/package-summary.html b/docs/org/lushplugins/chatcolorhandler/paper/parser/package-summary.html new file mode 100644 index 0000000..100a16d --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/parser/package-summary.html @@ -0,0 +1,95 @@ + + + + +org.lushplugins.chatcolorhandler.paper.parser + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Package org.lushplugins.chatcolorhandler.paper.parser

    +
    +
    +
    package org.lushplugins.chatcolorhandler.paper.parser
    +
    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/parser/package-tree.html b/docs/org/lushplugins/chatcolorhandler/paper/parser/package-tree.html new file mode 100644 index 0000000..b28b8ae --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/parser/package-tree.html @@ -0,0 +1,71 @@ + + + + +org.lushplugins.chatcolorhandler.paper.parser Class Hierarchy + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For Package org.lushplugins.chatcolorhandler.paper.parser

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    +
      +
    • java.lang.Object +
        +
      • org.lushplugins.chatcolorhandler.paper.parser.ParserTypes
      • +
      +
    • +
    +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.html new file mode 100644 index 0000000..a401787 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.html @@ -0,0 +1,215 @@ + + + + +MiniMessageColorResolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageColorResolver

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageColorResolver
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageColorResolver +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        MiniMessageColorResolver

        +
        public MiniMessageColorResolver()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        public net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience)
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.html new file mode 100644 index 0000000..fd4b30c --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.html @@ -0,0 +1,217 @@ + + + + +MiniMessageDefaultsResolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageDefaultsResolver

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageDefaultsResolver
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageDefaultsResolver +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        MiniMessageDefaultsResolver

        +
        public MiniMessageDefaultsResolver()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        @Nullable +public @Nullable ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience)
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.html new file mode 100644 index 0000000..6239250 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.html @@ -0,0 +1,216 @@ + + + + +MiniMessageInteractionResolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageInteractionResolver

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageInteractionResolver
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageInteractionResolver +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        MiniMessageInteractionResolver

        +
        public MiniMessageInteractionResolver()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience)
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.html new file mode 100644 index 0000000..0e77ec9 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.html @@ -0,0 +1,216 @@ + + + + +MiniMessagePlaceholderResolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessagePlaceholderResolver

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.resolver.MiniMessagePlaceholderResolver
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessagePlaceholderResolver +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        MiniMessagePlaceholderResolver

        +
        public MiniMessagePlaceholderResolver()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience)
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.html new file mode 100644 index 0000000..89a67ee --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.html @@ -0,0 +1,216 @@ + + + + +MiniMessageTextFormattingResolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageTextFormattingResolver

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.resolver.MiniMessageTextFormattingResolver
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageTextFormattingResolver +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        MiniMessageTextFormattingResolver

        +
        public MiniMessageTextFormattingResolver()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public ParserType getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser or null if it should only apply when using all parsers
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience)
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.html new file mode 100644 index 0000000..6bc23dd --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.html @@ -0,0 +1,162 @@ + + + + +Resolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Interface Resolver

    +
    +
    +
    +
    All Superinterfaces:
    +
    Parser
    +
    +
    +
    All Known Implementing Classes:
    +
    MiniMessageColorResolver, MiniMessageDefaultsResolver, MiniMessageInteractionResolver, MiniMessagePlaceholderResolver, MiniMessageTextFormattingResolver
    +
    +
    +
    public interface Resolver +extends Parser
    +
    +
    +
      + +
    • +
      +

      Method Summary

      +
      +
      +
      +
      +
      Modifier and Type
      +
      Method
      +
      Description
      +
      net.kyori.adventure.text.minimessage.tag.resolver.TagResolver
      +
      getResolver(@Nullable net.kyori.adventure.audience.Audience audience)
      +
       
      +
      default String
      +
      parseString(String string, + @Nullable org.bukkit.entity.Player player)
      +
      +
      Parse a string in relation to a player
      +
      +
      +
      +
      +
      +

      Methods inherited from interface org.lushplugins.chatcolorhandler.common.parser.Parser

      +getType
      +
      +
    • +
    +
    +
    +
      + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        parseString

        +
        default String parseString(String string, + @Nullable + @Nullable org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience)
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.html new file mode 100644 index 0000000..2b14275 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.html @@ -0,0 +1,217 @@ + + + + +ResolverRegistry + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ResolverRegistry

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.paper.resolver.ResolverRegistry
    +
    +
    +
    +
    public class ResolverRegistry +extends Object
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ResolverRegistry

        +
        public ResolverRegistry()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        register

        +
        public void register(Resolver resolver)
        +
        +
        Parameters:
        +
        resolver - resolver to register
        +
        +
        +
      • +
      • +
        +

        register

        +
        public void register(Resolver... resolvers)
        +
        +
        Parameters:
        +
        resolvers - resolver to register
        +
        +
        +
      • +
      • +
        +

        asTagResolver

        +
        public net.kyori.adventure.text.minimessage.tag.resolver.TagResolver asTagResolver(@Nullable + @Nullable net.kyori.adventure.audience.Audience audience, + @NotNull + @NotNull List<Resolver> resolvers)
        +
        +
      • +
      • +
        +

        values

        +
        public Set<Resolver> values()
        +
        +
      • +
      • +
        +

        ofTypes

        +
        public List<Resolver> ofTypes(@NotNull + @NotNull String... types)
        +
        +
      • +
      • +
        +

        ofType

        +
        public List<Resolver> ofType(@NotNull + @NotNull String type)
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/package-summary.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/package-summary.html new file mode 100644 index 0000000..4612d11 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/package-summary.html @@ -0,0 +1,113 @@ + + + + +org.lushplugins.chatcolorhandler.paper.resolver + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Package org.lushplugins.chatcolorhandler.paper.resolver

    +
    +
    +
    package org.lushplugins.chatcolorhandler.paper.resolver
    +
    + +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/paper/resolver/package-tree.html b/docs/org/lushplugins/chatcolorhandler/paper/resolver/package-tree.html new file mode 100644 index 0000000..5b9c0d5 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/paper/resolver/package-tree.html @@ -0,0 +1,86 @@ + + + + +org.lushplugins.chatcolorhandler.paper.resolver Class Hierarchy + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Hierarchy For Package org.lushplugins.chatcolorhandler.paper.resolver

    +Package Hierarchies: + +
    +
    +

    Class Hierarchy

    + +
    +
    +

    Interface Hierarchy

    +
      +
    • org.lushplugins.chatcolorhandler.common.parser.Parser +
        +
      • org.lushplugins.chatcolorhandler.paper.resolver.Resolver
      • +
      +
    • +
    +
    +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/Parser.OutputType.html b/docs/org/lushplugins/chatcolorhandler/parsers/Parser.OutputType.html new file mode 100644 index 0000000..7029314 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/Parser.OutputType.html @@ -0,0 +1,221 @@ + + + + +Parser.OutputType + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Enum Class Parser.OutputType

    +
    +
    java.lang.Object +
    java.lang.Enum<Parser.OutputType> +
    org.lushplugins.chatcolorhandler.parsers.Parser.OutputType
    +
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Serializable, Comparable<Parser.OutputType>, Constable
    +
    +
    +
    Enclosing interface:
    +
    Parser
    +
    +
    +
    public static enum Parser.OutputType +extends Enum<Parser.OutputType>
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Enum Constant Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        values

        +
        public static Parser.OutputType[] values()
        +
        Returns an array containing the constants of this enum class, in +the order they are declared.
        +
        +
        Returns:
        +
        an array containing the constants of this enum class, in the order they are declared
        +
        +
        +
      • +
      • +
        +

        valueOf

        +
        public static Parser.OutputType valueOf(String name)
        +
        Returns the enum constant of this class with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this class. (Extraneous whitespace characters are +not permitted.)
        +
        +
        Parameters:
        +
        name - the name of the enum constant to be returned.
        +
        Returns:
        +
        the enum constant with the specified name
        +
        Throws:
        +
        IllegalArgumentException - if this enum class has no constant with the specified name
        +
        NullPointerException - if the argument is null
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/Parser.html b/docs/org/lushplugins/chatcolorhandler/parsers/Parser.html new file mode 100644 index 0000000..0f69fca --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/Parser.html @@ -0,0 +1,200 @@ + + + + +Parser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Interface Parser

    +
    +
    +
    +
    All Known Subinterfaces:
    +
    Resolver
    +
    +
    +
    All Known Implementing Classes:
    +
    HexParser, LegacyHexParser, LegacySpigotParser, MiniMessageColorParser, MiniMessageInteractionParser, MiniMessagePlaceholderParser, MiniMessageResolverParser, MiniMessageTextFormattingParser, MiniPlaceholdersParser, PlaceholderAPIParser
    +
    +
    +
    public interface Parser
    +
    +
    +
      + +
    • +
      +

      Nested Class Summary

      +
      Nested Classes
      +
      +
      Modifier and Type
      +
      Interface
      +
      Description
      +
      static enum 
      + +
       
      +
      +
      +
    • + +
    • +
      +

      Method Summary

      +
      +
      +
      +
      +
      Modifier and Type
      +
      Method
      +
      Description
      + + +
       
      + +
      parseString(@NotNull String string, + @NotNull Parser.OutputType outputType)
      +
      +
      Parse a string
      +
      +
      default String
      +
      parseString(@NotNull String string, + @NotNull Parser.OutputType outputType, + org.bukkit.entity.Player player)
      +
      +
      Parse a string in relation to a player
      +
      +
      +
      +
      +
      +
    • +
    +
    +
    +
      + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        String getType()
        +
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Parse a string
        +
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        default String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType, + org.bukkit.entity.Player player)
        +
        Parse a string in relation to a player
        +
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/ParserTypes.html b/docs/org/lushplugins/chatcolorhandler/parsers/ParserTypes.html new file mode 100644 index 0000000..067600d --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/ParserTypes.html @@ -0,0 +1,302 @@ + + + + +ParserTypes + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class ParserTypes

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.ParserTypes
    +
    +
    +
    +
    public class ParserTypes +extends Object
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Constructor Details

      +
        +
      • +
        +

        ParserTypes

        +
        public ParserTypes()
        +
        +
      • +
      +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        color

        +
        public static List<Parser> color()
        +
        +
        Returns:
        +
        A list of color and decoration based parsers
        +
        +
        +
      • +
      • +
        +

        interact

        +
        public static List<Parser> interact()
        +
        +
        Returns:
        +
        A list of interaction based parsers, this includes hover, click and nbt elements
        +
        +
        +
      • +
      • +
        +

        placeholder

        +
        public static List<Parser> placeholder()
        +
        +
        Returns:
        +
        A list of placeholder based parsers
        +
        +
        +
      • +
      • +
        +

        textFormatting

        +
        public static List<Parser> textFormatting()
        +
        +
        Returns:
        +
        A list of text formatting based parsers, this includes font and newlines
        +
        +
        +
      • +
      • +
        +

        all

        +
        public static List<Parser> all()
        +
        +
        Returns:
        +
        A list of all parsers
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/Resolver.html b/docs/org/lushplugins/chatcolorhandler/parsers/Resolver.html new file mode 100644 index 0000000..a288808 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/Resolver.html @@ -0,0 +1,182 @@ + + + + +Resolver + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Interface Resolver

    +
    +
    +
    +
    All Superinterfaces:
    +
    Parser
    +
    +
    +
    All Known Implementing Classes:
    +
    MiniMessageColorParser, MiniMessageInteractionParser, MiniMessagePlaceholderParser, MiniMessageTextFormattingParser, MiniPlaceholdersParser
    +
    +
    +
    public interface Resolver +extends Parser
    +
    +
    +
      + +
    • +
      +

      Nested Class Summary

      +
      +

      Nested classes/interfaces inherited from interface org.lushplugins.chatcolorhandler.parsers.Parser

      +Parser.OutputType
      +
      +
    • + +
    • +
      +

      Method Summary

      +
      +
      +
      +
      +
      Modifier and Type
      +
      Method
      +
      Description
      +
      @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver
      + +
       
      +
      default @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver
      +
      getResolver(net.kyori.adventure.audience.Audience audience)
      +
       
      +
      default String
      +
      parseString(@NotNull String string, + @NotNull Parser.OutputType outputType)
      +
      +
      Parse a string
      +
      +
      +
      +
      +
      +

      Methods inherited from interface org.lushplugins.chatcolorhandler.parsers.Parser

      +getType, parseString
      +
      +
    • +
    +
    +
    +
      + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        parseString

        +
        default String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +@NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver()
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +default @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(net.kyori.adventure.audience.Audience audience)
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.html new file mode 100644 index 0000000..6dab307 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.html @@ -0,0 +1,209 @@ + + + + +LegacyHexParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class LegacyHexParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.LegacyHexParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class LegacyHexParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.html new file mode 100644 index 0000000..83eadef --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.html @@ -0,0 +1,209 @@ + + + + +LegacySpigotParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class LegacySpigotParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.LegacyAmpersandParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class LegacySpigotParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.html new file mode 100644 index 0000000..56414aa --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.html @@ -0,0 +1,228 @@ + + + + +MiniMessageColorParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageColorParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageColorParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageColorParser +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Specified by:
        +
        parseString in interface Resolver
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver()
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.html new file mode 100644 index 0000000..a7a7a12 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.html @@ -0,0 +1,228 @@ + + + + +MiniMessageInteractionParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageInteractionParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageInteractionParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageInteractionParser +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Specified by:
        +
        parseString in interface Resolver
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver()
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.html new file mode 100644 index 0000000..09fbb6e --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.html @@ -0,0 +1,228 @@ + + + + +MiniMessagePlaceholderParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessagePlaceholderParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.MiniMessagePlaceholderParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessagePlaceholderParser +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Specified by:
        +
        parseString in interface Resolver
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver()
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.html new file mode 100644 index 0000000..d3c4828 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.html @@ -0,0 +1,235 @@ + + + + +MiniMessageResolverParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageResolverParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageResolverParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser
    +
    +
    +
    public class MiniMessageResolverParser +extends Object +implements Parser
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType, + org.bukkit.entity.Player player)
        +
        Description copied from interface: Parser
        +
        Parse a string in relation to a player
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        player - The player to apply whilst parsing
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.html new file mode 100644 index 0000000..ed34631 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.html @@ -0,0 +1,228 @@ + + + + +MiniMessageTextFormattingParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniMessageTextFormattingParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.MiniMessageTextFormattingParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniMessageTextFormattingParser +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        parseString

        +
        public String parseString(@NotNull + @NotNull String string, + @NotNull + @NotNull Parser.OutputType outputType)
        +
        Description copied from interface: Parser
        +
        Parse a string
        +
        +
        Specified by:
        +
        parseString in interface Parser
        +
        Specified by:
        +
        parseString in interface Resolver
        +
        Parameters:
        +
        string - The string to parse
        +
        outputType - The output type to parse for
        +
        Returns:
        +
        The parsed string
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver()
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.html b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.html new file mode 100644 index 0000000..aba5893 --- /dev/null +++ b/docs/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.html @@ -0,0 +1,214 @@ + + + + +MiniPlaceholdersParser + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class MiniPlaceholdersParser

    +
    +
    java.lang.Object +
    org.lushplugins.chatcolorhandler.parsers.custom.MiniPlaceholdersParser
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Parser, Resolver
    +
    +
    +
    public class MiniPlaceholdersParser +extends Object +implements Resolver
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Field Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        getType

        +
        public String getType()
        +
        +
        Specified by:
        +
        getType in interface Parser
        +
        Returns:
        +
        The type of the parser ParserTypes
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver()
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      • +
        +

        getResolver

        +
        @NotNull +public @NotNull net.kyori.adventure.text.minimessage.tag.resolver.TagResolver getResolver(net.kyori.adventure.audience.Audience audience)
        +
        +
        Specified by:
        +
        getResolver in interface Resolver
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    +
    +
    + + diff --git a/docs/overview-summary.html b/docs/overview-summary.html index d2defb2..d06b107 100644 --- a/docs/overview-summary.html +++ b/docs/overview-summary.html @@ -1,11 +1,11 @@ - + Generated Documentation (Untitled) - + diff --git a/docs/overview-tree.html b/docs/overview-tree.html index 4d368cb..8127fa0 100644 --- a/docs/overview-tree.html +++ b/docs/overview-tree.html @@ -1,11 +1,11 @@ - + Class Hierarchy - + @@ -51,9 +51,12 @@

    Hierarchy For All Packages

    Package Hierarchies:
    @@ -61,20 +64,26 @@

    Class Hierarchy

    @@ -82,9 +91,9 @@

    Class Hierarchy

    Interface Hierarchy

      -
    • org.lushplugins.chatcolorhandler.parsers.Parser +
    • org.lushplugins.chatcolorhandler.common.parser.Parser
        -
      • org.lushplugins.chatcolorhandler.parsers.Resolver
      • +
      • org.lushplugins.chatcolorhandler.paper.resolver.Resolver
    @@ -96,7 +105,7 @@

    Enum Class Hierarchy

    diff --git a/docs/package-search-index.js b/docs/package-search-index.js index 9962c1b..4417c0b 100644 --- a/docs/package-search-index.js +++ b/docs/package-search-index.js @@ -1 +1 @@ -packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"org.lushplugins.chatcolorhandler"},{"l":"org.lushplugins.chatcolorhandler.parsers"},{"l":"org.lushplugins.chatcolorhandler.parsers.custom"}];updateSearchResults(); \ No newline at end of file +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"org.lushplugins.chatcolorhandler.common"},{"l":"org.lushplugins.chatcolorhandler.common.parser"},{"l":"org.lushplugins.chatcolorhandler.common.settings"},{"l":"org.lushplugins.chatcolorhandler.paper"},{"l":"org.lushplugins.chatcolorhandler.paper.parser"},{"l":"org.lushplugins.chatcolorhandler.paper.resolver"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/script-dir/jquery-3.6.1.min.js b/docs/script-dir/jquery-3.6.1.min.js new file mode 100644 index 0000000..2c69bc9 --- /dev/null +++ b/docs/script-dir/jquery-3.6.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.6.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,y=n.hasOwnProperty,a=y.toString,l=a.call(Object),v={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&v(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!y||!y.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ve(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ye(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ve(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],y=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&y.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||y.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||y.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||y.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||y.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||y.push(".#.+[+~]"),e.querySelectorAll("\\\f"),y.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&y.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&y.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&y.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),y.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),y=y.length&&new RegExp(y.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),v=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&v(p,e)?-1:t==C||t.ownerDocument==p&&v(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!y||!y.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),v.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",v.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",v.option=!!ce.lastChild;var ge={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function ye(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ve(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),v.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(v.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return B(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=_e(v.pixelPosition,function(e,t){if(t)return t=Be(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return B(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0("basic") + } + } + + maven { + name = "lushSnapshots" + url = uri("https://repo.lushplugins.org/snapshots") + credentials(PasswordCredentials::class) + authentication { + isAllowInsecureProtocol = true + create("basic") + } + } + } + + publications { + create("maven") { + groupId = rootProject.group.toString() + ".chatcolorhandler" + artifactId = project.name + version = rootProject.version.toString() + from(project.components["java"]) + } + } + } +} \ No newline at end of file diff --git a/platform/paper/build.gradle.kts b/platform/paper/build.gradle.kts new file mode 100644 index 0000000..7d4a8cb --- /dev/null +++ b/platform/paper/build.gradle.kts @@ -0,0 +1,7 @@ +dependencies { + // Dependencies + compileOnly("io.papermc.paper:paper-api:1.21.11-R0.1-SNAPSHOT") + + // Soft Dependencies + compileOnly("io.github.miniplaceholders:miniplaceholders-api:3.1.0") +} \ No newline at end of file diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java new file mode 100644 index 0000000..d2aa153 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java @@ -0,0 +1,157 @@ +package org.lushplugins.chatcolorhandler.paper; + +import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.minimessage.MiniMessage; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; +import net.kyori.adventure.title.Title; +import net.kyori.adventure.title.TitlePart; +import org.bukkit.Bukkit; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; +import org.bukkit.plugin.PluginManager; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.ColorHandler; +import org.lushplugins.chatcolorhandler.common.parser.*; +import org.lushplugins.chatcolorhandler.paper.resolver.*; + +import java.time.Duration; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +public class PaperColor extends ColorHandler { + private static final PaperColor INSTANCE = new PaperColor(); + private static final MiniMessage MINI_MESSAGE = MiniMessage.builder() + .tags(TagResolver.empty()) + .build(); + private static final LegacyComponentSerializer LEGACY_SERIALIZER = LegacyComponentSerializer.builder() + .character('§') + .hexColors() + .useUnusualXRepeatedCharacterHexFormat() + .build(); + + private final ResolverRegistry resolvers = new ResolverRegistry(); + + public PaperColor() { + parsers().register(HexParser.INSTANCE, 80); + parsers().register(LegacyHexParser.INSTANCE, 70); + parsers().register(LegacyAmpersandParser.INSTANCE, 69); + parsers().register(SoundParser.INSTANCE, 60); + parsers().register(ParticleParser.INSTANCE, 59); + + resolvers().register( + MiniMessageColorResolver.INSTANCE, + MiniMessageDefaultsResolver.INSTANCE, + MiniMessageInteractionResolver.INSTANCE, + MiniMessagePlaceholderResolver.INSTANCE, + MiniMessageTextFormattingResolver.INSTANCE, + MiniPlaceholdersResolver.INSTANCE + ); + + PluginManager pluginManager = Bukkit.getServer().getPluginManager(); + if (pluginManager.isPluginEnabled("PlaceholderAPI")) { + parsers().register(PlaceholderAPIParser.INSTANCE, 90); + } + + if (pluginManager.isPluginEnabled("MiniPlaceholders")) { + resolvers().register(MiniPlaceholdersResolver.INSTANCE); + } + + List defaultParsers = new ArrayList<>(parsers().values()); + defaultParsers.addAll(resolvers().values()); + settings().defaultParsers(defaultParsers); + } + + public ResolverRegistry resolvers() { + return resolvers; + } + + @Override + public Component translate(@Nullable String string, @Nullable Player player, Collection parsers) { + if (string == null || string.isBlank()) { + return Component.empty(); + } + + String translated = parsers().parseString(string, player, parsers); + TagResolver resolver = resolvers.asTagResolver(player, parsers.stream() + .filter(parser -> parser instanceof Resolver) + .map(parser -> (Resolver) parser) + .toList()); + + if (player != null) { + return MINI_MESSAGE.deserialize(translated, player, resolver); + } else { + return MINI_MESSAGE.deserialize(translated, resolver); + } + } + + public String translateRaw(@Nullable String string, @Nullable Player player, Collection parsers) { + return LEGACY_SERIALIZER.serialize(translate(string, player, parsers)); + } + + public String translateRaw(@Nullable String string, @Nullable Player player) { + return translateRaw(string, player, settings().defaultParsers()); + } + + public String translateRaw(@Nullable String string, Collection parsers) { + return translateRaw(string, null, parsers); + } + + public String translateRaw(@Nullable String string) { + return translateRaw(string, null, settings().defaultParsers()); + } + + @Override + public void sendMessage(CommandSender recipient, @Nullable String message) { + if (message == null || message.isBlank()) { + return; + } + + Component translated = translate(message, recipient instanceof Player player ? player : null); + recipient.sendMessage(translated); + } + + @Override + public void broadcastMessage(@Nullable String message) { + if (message == null || message.isBlank()) { + return; + } + + Component translated = translate(message); + Bukkit.getServer().sendMessage(translated); + } + + @Override + public void sendActionBarMessage(Player player, @Nullable String message) { + if (message == null || message.isBlank()) { + return; + } + + Component translated = translate(message, player); + player.sendActionBar(translated); + } + + @Override + public void sendTitle(Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { + if ((title == null || title.isBlank()) && (subtitle == null || subtitle.isBlank())) { + return; + } + + Component translatedTitle = translate(title, player); + Component translatedSubtitle = translate(subtitle, player); + Title.Times times = Title.Times.times( + Duration.ofMillis(fadeIn * 50L), + Duration.ofMillis(stay * 50L), + Duration.ofMillis(fadeOut * 50L) + ); + + player.sendTitlePart(TitlePart.TIMES, times); + player.sendTitlePart(TitlePart.SUBTITLE, translatedSubtitle); + player.sendTitlePart(TitlePart.TITLE, translatedTitle); + } + + public static PaperColor handler() { + return INSTANCE; + } +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java new file mode 100644 index 0000000..d5e3d76 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java @@ -0,0 +1,43 @@ +package org.lushplugins.chatcolorhandler.paper.parser; + +import org.lushplugins.chatcolorhandler.common.parser.Parser; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; +import org.lushplugins.chatcolorhandler.paper.PaperColor; + +import java.util.List; +import java.util.Set; + +public class ParserTypes { + + private static List ofType(ParserType type) { + return PaperColor.handler().parsers().ofType(type.id()); + } + + public static List color() { + return ofType(ParserType.COLOR); + } + + public static List sound() { + return ofType(ParserType.SOUND); + } + + public static List particle() { + return ofType(ParserType.PARTICLE); + } + + public static List interaction() { + return ofType(ParserType.INTERACTION); + } + + public static List placeholder() { + return ofType(ParserType.PLACEHOLDER); + } + + public static List textFormatting() { + return ofType(ParserType.TEXT_FORMATTING); + } + + public static Set all() { + return PaperColor.handler().parsers().values(); + } +} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.java similarity index 53% rename from src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.java rename to platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.java index 69ac8fd..7feaaa5 100644 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageColorParser.java +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageColorResolver.java @@ -1,41 +1,27 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; +package org.lushplugins.chatcolorhandler.paper.resolver; +import net.kyori.adventure.audience.Audience; import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; import net.kyori.adventure.text.minimessage.tag.standard.*; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Resolver; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; import java.util.ArrayList; import java.util.List; -public class MiniMessageColorParser implements Resolver { - public static final MiniMessageColorParser INSTANCE = new MiniMessageColorParser(); +public class MiniMessageColorResolver implements Resolver { + public static final MiniMessageColorResolver INSTANCE = new MiniMessageColorResolver(); private static final TagResolver BASIC_COLORS = TagResolver.builder() .resolvers(tagResolvers()) .build(); - private MiniMessageColorParser() {} - - @Override - public String getType() { - return ParserTypes.COLOR; - } - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return switch (outputType) { - case SPIGOT -> { - string = string.replace('§', '&'); - yield MiniMessageMessenger.LEGACY_COMPONENT_SERIALIZER.serialize(MiniMessageMessenger.MINI_MESSAGE.deserialize(string, BASIC_COLORS)); - } - case MINI_MESSAGE -> string; - }; + public ParserType getType() { + return ParserType.COLOR; } @Override - public @NotNull TagResolver getResolver() { + public TagResolver getResolver(@Nullable Audience audience) { return BASIC_COLORS; } diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.java new file mode 100644 index 0000000..0fa4a1a --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageDefaultsResolver.java @@ -0,0 +1,22 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import net.kyori.adventure.text.minimessage.tag.standard.StandardTags; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; + +public class MiniMessageDefaultsResolver implements Resolver { + public static final MiniMessageDefaultsResolver INSTANCE = new MiniMessageDefaultsResolver(); + + @Override + public @Nullable ParserType getType() { + return null; + } + + @Override + public @NotNull TagResolver getResolver(@Nullable Audience audience) { + return StandardTags.defaults(); + } +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.java new file mode 100644 index 0000000..89d80c0 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageInteractionResolver.java @@ -0,0 +1,29 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import net.kyori.adventure.text.minimessage.tag.standard.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; + +public class MiniMessageInteractionResolver implements Resolver { + public static final MiniMessageInteractionResolver INSTANCE = new MiniMessageInteractionResolver(); + private static final TagResolver INTERACTION = TagResolver.builder() + .resolvers( + StandardTags.hoverEvent(), + StandardTags.clickEvent(), + StandardTags.insertion() + ) + .build(); + + @Override + public ParserType getType() { + return ParserType.INTERACTION; + } + + @Override + public @NotNull TagResolver getResolver(@Nullable Audience audience) { + return INTERACTION; + } +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.java new file mode 100644 index 0000000..6712d74 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessagePlaceholderResolver.java @@ -0,0 +1,32 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import net.kyori.adventure.text.minimessage.tag.standard.StandardTags; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; + +public class MiniMessagePlaceholderResolver implements Resolver { + public static final MiniMessagePlaceholderResolver INSTANCE = new MiniMessagePlaceholderResolver(); + private static final TagResolver VANILLA_PLACEHOLDERS = TagResolver.builder() + .resolvers( + StandardTags.keybind(), + StandardTags.translatable(), + StandardTags.translatableFallback(), + StandardTags.selector(), + StandardTags.score(), + StandardTags.nbt() + ) + .build(); + + @Override + public ParserType getType() { + return ParserType.PLACEHOLDER; + } + + @Override + public @NotNull TagResolver getResolver(@Nullable Audience audience) { + return VANILLA_PLACEHOLDERS; + } +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.java new file mode 100644 index 0000000..e0c20da --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniMessageTextFormattingResolver.java @@ -0,0 +1,28 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import net.kyori.adventure.text.minimessage.tag.standard.StandardTags; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; + +public class MiniMessageTextFormattingResolver implements Resolver { + public static final MiniMessageTextFormattingResolver INSTANCE = new MiniMessageTextFormattingResolver(); + private static final TagResolver TEXT_FORMATTING = TagResolver.builder() + .resolvers( + StandardTags.font(), + StandardTags.newline() + ) + .build(); + + @Override + public ParserType getType() { + return ParserType.TEXT_FORMATTING; + } + + @Override + public @NotNull TagResolver getResolver(@Nullable Audience audience) { + return TEXT_FORMATTING; + } +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniPlaceholdersResolver.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniPlaceholdersResolver.java new file mode 100644 index 0000000..92083e3 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/MiniPlaceholdersResolver.java @@ -0,0 +1,26 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import io.github.miniplaceholders.api.MiniPlaceholders; +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; + +public class MiniPlaceholdersResolver implements Resolver { + public static final MiniPlaceholdersResolver INSTANCE = new MiniPlaceholdersResolver(); + + @Override + public ParserType getType() { + return ParserType.PLACEHOLDER; + } + + @Override + public @NotNull TagResolver getResolver(@Nullable Audience audience) { + if (audience != null) { + return MiniPlaceholders.audienceGlobalPlaceholders(); + } else { + return MiniPlaceholders.globalPlaceholders(); + } + } +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.java new file mode 100644 index 0000000..37b4286 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/Resolver.java @@ -0,0 +1,17 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import org.bukkit.entity.Player; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.Parser; + +public interface Resolver extends Parser { + + @Override + default String parseString(String string, @Nullable Player player) { + return string; + } + + TagResolver getResolver(@Nullable Audience audience); +} diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java new file mode 100644 index 0000000..49da701 --- /dev/null +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java @@ -0,0 +1,74 @@ +package org.lushplugins.chatcolorhandler.paper.resolver; + +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; +import org.bukkit.Bukkit; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.lushplugins.chatcolorhandler.common.parser.ParserType; + +import java.util.*; +import java.util.logging.Level; + +public class ResolverRegistry { + private final Set resolvers = new HashSet<>(); + + /** + * @param resolver resolver to register + */ + public void register(Resolver resolver) { + resolvers.add(resolver); + } + + /** + * @param resolvers resolver to register + */ + public void register(Resolver... resolvers) { + for (Resolver resolver : resolvers) { + register(resolver); + } + } + + public TagResolver asTagResolver(@Nullable Audience audience, @NotNull List resolvers) { + return TagResolver.builder() + .resolvers(resolvers.stream() + .map(resolver -> { + try { + return resolver.getResolver(audience); + } catch (Throwable e) { + Bukkit.getLogger().log(Level.WARNING, "[ChatColorHandler] Failed to combine resolver: ", e); + return null; + } + }) + .filter(Objects::nonNull) + .toList()) + .build(); + } + + public Set values() { + return resolvers; + } + + public List ofTypes(@NotNull String... types) { + return values().stream() + .filter(resolver -> { + ParserType resolverType = resolver.getType(); + if (resolverType == null) { + return true; + } + + for (String type : types) { + if (resolver.getType().equals(type)) { + return true; + } + } + + return false; + }) + .toList(); + } + + public List ofType(@NotNull String type) { + return ofTypes(type); + } +} diff --git a/settings.gradle.kts b/settings.gradle.kts index 3e18ab3..f254ad9 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,3 +1,4 @@ rootProject.name = "ChatColorHandler" -include("test:spigot") -include("test:paper") \ No newline at end of file +include(":common") +include(":platform:paper") +include(":test:paper") \ No newline at end of file diff --git a/src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandler.java b/src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandler.java deleted file mode 100644 index 2d97849..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandler.java +++ /dev/null @@ -1,396 +0,0 @@ -package org.lushplugins.chatcolorhandler; - -import org.bukkit.plugin.PluginManager; -import org.lushplugins.chatcolorhandler.messengers.LegacyMessenger; -import org.lushplugins.chatcolorhandler.messengers.Messenger; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Parsers; -import net.md_5.bungee.api.ChatColor; -import org.bukkit.Bukkit; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import org.lushplugins.chatcolorhandler.parsers.custom.*; - -import java.util.Collection; -import java.util.List; - -@SuppressWarnings("unused") -public class ChatColorHandler { - private static boolean initialised = false; - private static Messenger messenger; - private static final Parsers parsers = new Parsers(); - private static final ChatColorHandlerSettings settings = new ChatColorHandlerSettings(); - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - */ - public static String translate(@Nullable String string) { - return translate(string, settings.defaultParsers()); - } - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - * @param parsers Parsers which this message won't be parsed through - */ - public static String translate(@Nullable String string, @NotNull List parsers) { - return translate(string, null, parsers); - } - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - * @param player Player to parse placeholders for - */ - public static String translate(@Nullable String string, Player player) { - return translate(string, player, settings.defaultParsers()); - } - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - * @param player Player to parse placeholders for - * @param parsers Parsers which this message will be parsed through - */ - public static String translate(@Nullable String string, Player player, List parsers) { - ensureInitialised(); - - if (string == null || string.isBlank()) { - return ""; - } - - return ChatColorHandler.parsers.parseString(string, Parser.OutputType.SPIGOT, player, parsers); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - */ - public static List translate(@NotNull Collection strings) { - return translate(strings, settings.defaultParsers()); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - * @param parsers Parsers which this message will be parsed through - */ - public static List translate(@NotNull Collection strings, List parsers) { - return translate(strings, null, parsers); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - * @param player Player to parse placeholders for - */ - public static List translate(@NotNull Collection strings, Player player) { - return translate(strings, player, settings.defaultParsers()); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - * @param player Player to parse placeholders for - * @param parsers Parsers which this message will be parsed through - */ - public static List translate(@NotNull Collection strings, Player player, List parsers) { - return strings.stream().map(string -> translate(string, player, parsers)).toList(); - } - - /** - * Strips colour from string - * - * @param string String to be converted - */ - public static String stripColor(@Nullable String string) { - ensureInitialised(); - - if (string == null || string.isBlank()) { - return ""; - } - - return ChatColor.stripColor(translate(string, ParserTypes.all())); - } - - /** - * Sends a recipient a message - * - * @param recipient Sender to receive this message - * @param message Message to be displayed - */ - public static void sendMessage(@NotNull CommandSender recipient, @Nullable String message) { - messenger().sendMessage(recipient, message); - } - - /** - * Sends a recipient multiple messages - * - * @param recipient Sender to receive message - * @param messages Messages to be displayed - */ - public static void sendMessage(@NotNull CommandSender recipient, @Nullable String... messages) { - messenger().sendMessage(recipient, messages); - } - - /** - * Sends multiple recipients a message - * - * @param recipients Senders to receive message - * @param message Message to be displayed - */ - public static void sendMessage(CommandSender[] recipients, @Nullable String message) { - messenger().sendMessage(recipients, message); - } - - /** - * Sends multiple recipients, multiple messages - * - * @param recipients Senders to receive this message - * @param messages Messages to be displayed - */ - public static void sendMessage(CommandSender[] recipients, @Nullable String... messages) { - messenger().sendMessage(recipients, messages); - } - - /** - * Sends all online players a message - * - * @param message Message to be displayed - */ - public static void broadcastMessage(@Nullable String message) { - messenger().broadcastMessage(message); - } - - /** - * Sends all online players multiple messages - * - * @param messages Messages to be displayed - */ - public static void broadcastMessage(@NotNull String... messages) { - messenger().broadcastMessage(messages); - } - - /** - * Sends a player an ACTION_BAR message - * - * @param player Player to receive this action bar message - * @param message Message to be displayed - */ - public static void sendActionBarMessage(@NotNull Player player, @Nullable String message) { - messenger().sendActionBarMessage(player, message); - } - - /** - * Sends multiple players an ACTION_BAR message - * - * @param players Players to receive this action bar message - * @param message Message to be displayed - */ - public static void sendActionBarMessage(@NotNull Player[] players, @Nullable String message) { - messenger().sendActionBarMessage(players, message); - } - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - */ - public static void sendTitle(@NotNull Player player, @Nullable String title) { - messenger().sendTitle(player, title); - } - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - */ - public static void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle) { - messenger().sendTitle(player, title, subtitle); - } - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param fadeOut Duration for title to fade out - */ - public static void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut) { - messenger().sendTitle(player, title, subtitle, fadeIn, fadeOut); - } - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param stay Duration for title to appear - * @param fadeOut Duration for title to fade out - */ - public static void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { - messenger().sendTitle(player, title, subtitle, fadeIn, stay, fadeOut); - } - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - */ - public static void sendTitle(@NotNull Player[] players, @Nullable String title) { - messenger().sendTitle(players, title); - } - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - */ - public static void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle) { - messenger().sendTitle(players, title, subtitle); - } - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param fadeOut Duration for title to fade out - */ - public static void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut) { - messenger().sendTitle(players, title, subtitle, fadeIn, fadeOut); - } - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param stay Duration for title to appear - * @param fadeOut Duration for title to fade out - */ - public static void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { - messenger().sendTitle(players, title, subtitle, fadeIn, stay, fadeOut); - } - - public static Messenger messenger() { - ensureInitialised(); - return messenger; - } - - /** - * Adjust the ChatColorHandler messenger to be used. This is handled automatically by ChatColorHandler but can be overridden for custom uses. - * @param messenger The messenger to use - */ - public static void messenger(Messenger messenger) { - ChatColorHandler.messenger = messenger; - } - - public static Parsers parsers() { - ChatColorHandler.ensureInitialised(); - return parsers; - } - - public static ChatColorHandlerSettings settings() { - return settings; - } - - protected static void debugLog(String log) { - if (settings.debug()) { - Bukkit.getLogger().info("[ChatColorHandler] " + log); - } - } - - public static synchronized void ensureInitialised() { - if (!initialised) { - init(); - } - } - - private static void init() { - initialised = true; - - parsers.register(HexParser.INSTANCE, 83); - parsers.register(SpigotParser.INSTANCE, 65); - parsers.register(SoundParser.INSTANCE, 60); - parsers.register(ParticleParser.INSTANCE, 59); - - if (isPaper()) { - ChatColorHandler.messenger(new MiniMessageMessenger()); - - parsers.register(MiniMessageResolverParser.INSTANCE, 89); - parsers.register(LegacyHexParser.INSTANCE, 75); - parsers.register(LegacySpigotParser.INSTANCE, 74); - parsers.register(MiniMessageColorParser.INSTANCE, 73); - parsers.register(MiniMessageInteractionParser.INSTANCE, 72); - parsers.register(MiniMessagePlaceholderParser.INSTANCE, 71); - parsers.register(MiniMessageTextFormattingParser.INSTANCE, 70); - ChatColorHandler.debugLog("Found MiniMessage in Server. MiniMessage support enabled."); - } else { - ChatColorHandler.messenger(new LegacyMessenger()); - ChatColorHandler.debugLog("Unable to find MiniMessage. MiniMessage support not enabled."); - } - - PluginManager pluginManager = Bukkit.getServer().getPluginManager(); - if (pluginManager.getPlugin("PlaceholderAPI") != null && pluginManager.isPluginEnabled("PlaceholderAPI")) { - parsers.register(PlaceholderAPIParser.INSTANCE, 90); - ChatColorHandler.debugLog("Found plugin \"PlaceholderAPI\". PlaceholderAPI support enabled."); - } - - if (pluginManager.getPlugin("MiniPlaceholders") != null && pluginManager.isPluginEnabled("MiniPlaceholders")) { - parsers.register(MiniPlaceholdersParser.INSTANCE, -1); - ChatColorHandler.debugLog("Found plugin \"MiniPlaceholders\". MiniPlaceholders support enabled."); - } - - settings().defaultParsers(ParserTypes.all()); - } - - private static boolean hasClass(String className) { - try { - Class.forName(className); - return true; - } catch (ClassNotFoundException e) { - return false; - } - } - - private static boolean isPaper() { - if (hasClass("com.destroystokyo.paper.PaperConfig") || hasClass("io.papermc.paper.configuration.Configuration")) { - try { - Class.forName("net.kyori.adventure.text.minimessage.MiniMessage").getMethod("miniMessage"); - return true; - } catch (ClassNotFoundException | NoSuchMethodException ignored) {} - } - - return false; - } - - private ChatColorHandler() {} -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandlerSettings.java b/src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandlerSettings.java deleted file mode 100644 index d9b009a..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/ChatColorHandlerSettings.java +++ /dev/null @@ -1,38 +0,0 @@ -package org.lushplugins.chatcolorhandler; - -import org.lushplugins.chatcolorhandler.parsers.Parser; - -import java.util.Collections; -import java.util.List; - -@SuppressWarnings({"unused", "UnusedReturnValue"}) -public class ChatColorHandlerSettings { - private List defaultParsers = Collections.emptyList(); - private boolean debug = false; - - public List defaultParsers() { - ChatColorHandler.ensureInitialised(); - return defaultParsers; - } - - /** - * Set the default parsers to use, when not overridden all registered parsers are used - * @param parsers The default parsers to use when none are specified - */ - public ChatColorHandlerSettings defaultParsers(List parsers) { - this.defaultParsers = parsers; - return this; - } - - public boolean debug() { - return debug; - } - - /** - * @param debug Whether to enable debug logs - */ - public ChatColorHandlerSettings debug(boolean debug) { - this.debug = debug; - return this; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/ModernChatColorHandler.java b/src/main/java/org/lushplugins/chatcolorhandler/ModernChatColorHandler.java deleted file mode 100644 index 33a8393..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/ModernChatColorHandler.java +++ /dev/null @@ -1,116 +0,0 @@ -package org.lushplugins.chatcolorhandler; - -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.Resolver; -import net.kyori.adventure.audience.Audience; -import net.kyori.adventure.text.Component; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.Nullable; - -import java.util.Collection; -import java.util.List; -import java.util.Objects; - -@SuppressWarnings("unused") -public class ModernChatColorHandler { - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - */ - public static Component translate(@Nullable String string) { - return translate(string, ChatColorHandler.settings().defaultParsers()); - } - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - * @param parsers Parsers which this message won't be parsed through - */ - public static Component translate(@Nullable String string, @NotNull List parsers) { - return translate(string, null, parsers); - } - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be translated - * @param player Player to parse placeholders for - */ - public static Component translate(@Nullable String string, Player player) { - return translate(string, player, ChatColorHandler.settings().defaultParsers()); - } - - /** - * Translates a string to allow for hex colours and placeholders - * - * @param string String to be converted - * @param player Player to parse placeholders for - * @param parsers Parsers which this message will be parsed through - */ - public static Component translate(@Nullable String string, @Nullable Player player, @NotNull List parsers) { - ChatColorHandler.ensureInitialised(); - - if (string == null || string.isBlank()) { - return Component.empty(); - } - - String legacyParsed = ChatColorHandler.parsers().parseString(string, Parser.OutputType.MINI_MESSAGE, player, parsers); - - TagResolver tagResolver = Resolver.combineResolvers((Audience) player, parsers.stream() - .map(parser -> parser instanceof Resolver resolver ? resolver : null) - .filter(Objects::nonNull) - .toList()); - - return (player == null) - ? MiniMessageMessenger.MINI_MESSAGE.deserialize(legacyParsed, tagResolver) - : MiniMessageMessenger.MINI_MESSAGE.deserialize(legacyParsed, (Audience) player, tagResolver); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - */ - public static List translate(@NotNull Collection strings) { - return translate(strings, ChatColorHandler.settings().defaultParsers()); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - * @param parsers Parsers which this message will be parsed through - */ - public static List translate(@NotNull Collection strings, List parsers) { - return translate(strings, null, parsers); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - * @param player Player to parse placeholders for - */ - public static List translate(@NotNull Collection strings, Player player) { - return translate(strings, player, ChatColorHandler.settings().defaultParsers()); - } - - /** - * Translates a collection of strings to allow for hex colours and placeholders - * - * @param strings Strings to be translated - * @param player Player to parse placeholders for - * @param parsers Parsers which this message will be parsed through - */ - public static List translate(@NotNull Collection strings, Player player, List parsers) { - return strings.stream().map(string -> translate(string, player, parsers)).toList(); - } - - private ModernChatColorHandler() {} -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/messengers/AbstractMessenger.java b/src/main/java/org/lushplugins/chatcolorhandler/messengers/AbstractMessenger.java deleted file mode 100644 index ffb7892..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/messengers/AbstractMessenger.java +++ /dev/null @@ -1,190 +0,0 @@ -package org.lushplugins.chatcolorhandler.messengers; - -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -public abstract class AbstractMessenger implements Messenger { - - /** - * Sends a recipient multiple messages - * - * @param recipient Sender to receive messages - * @param messages Messages to be displayed - */ - @Override - public void sendMessage(@NotNull CommandSender recipient, @Nullable String... messages) { - if (messages == null) { - return; - } - - for (String message : messages) { - sendMessage(recipient, message); - } - } - - /** - * Sends multiple recipients a message - * - * @param recipients Senders to receive message - * @param message Message to be displayed - */ - @Override - public void sendMessage(CommandSender[] recipients, @Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - for (CommandSender recipient : recipients) { - sendMessage(recipient, message); - } - } - - /** - * Sends multiple recipients, multiple messages - * - * @param recipients Senders to receive messages - * @param messages Messages to be displayed - */ - @Override - public void sendMessage(CommandSender[] recipients, @Nullable String... messages) { - if (messages == null) { - return; - } - - for (CommandSender recipient : recipients) { - for (String message : messages) { - sendMessage(recipient, message); - } - } - } - - /** - * Sends all online players multiple messages - * - * @param messages Messages to be displayed - */ - @Override - public void broadcastMessage(@NotNull String... messages) { - if (messages == null) { - return; - } - - for (String message : messages) { - broadcastMessage(message); - } - } - - /** - * Sends multiple players an ACTION_BAR message - * - * @param players Players to receive this action bar message - * @param message Message to be displayed - */ - @Override - public void sendActionBarMessage(@NotNull Player[] players, @Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - for (Player player : players) { - sendActionBarMessage(player, message); - } - } - - /** - * Sends a player a TITLE message - * - * @param player Players to receive this action bar message - * @param title Title to be displayed - */ - @Override - public void sendTitle(@NotNull Player player, @Nullable String title) { - sendTitle(player, title, null); - } - - /** - * Sends a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - */ - @Override - public void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle) { - sendTitle(player, title, subtitle, 10, 20); - } - - /** - * Sends a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param fadeOut Duration for title to fade out - */ - @Override - public void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut) { - sendTitle(player, title, subtitle, fadeIn, 70, fadeOut); - } - - /** - * Sends multiple players a TITLE message - * - * @param players Players to receive this title message - * @param title Title to be displayed - */ - @Override - public void sendTitle(@NotNull Player[] players, @Nullable String title) { - sendTitle(players, title, null); - } - - /** - * Sends multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - */ - @Override - public void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle) { - sendTitle(players, title, subtitle, 10, 20); - } - - /** - * Sends multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param fadeOut Duration for title to fade out - */ - @Override - public void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut) { - sendTitle(players, title, subtitle, fadeIn, 70, fadeOut); - } - - /** - * Sends multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param stay Duration for title to appear - * @param fadeOut Duration for title to fade out - */ - @Override - public void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { - if ((title == null || title.isBlank()) && (subtitle == null || subtitle.isBlank())) { - return; - } - - for (Player player : players) { - sendTitle(player, title, subtitle, fadeIn, stay, fadeOut); - } - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/messengers/LegacyMessenger.java b/src/main/java/org/lushplugins/chatcolorhandler/messengers/LegacyMessenger.java deleted file mode 100644 index 861584f..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/messengers/LegacyMessenger.java +++ /dev/null @@ -1,49 +0,0 @@ -package org.lushplugins.chatcolorhandler.messengers; - -import org.lushplugins.chatcolorhandler.ChatColorHandler; -import net.md_5.bungee.api.ChatMessageType; -import net.md_5.bungee.api.chat.TextComponent; -import org.bukkit.Bukkit; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -public class LegacyMessenger extends AbstractMessenger { - - @Override - public void sendMessage(@NotNull CommandSender recipient, @Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - recipient.sendMessage(ChatColorHandler.translate(message, recipient instanceof Player player ? player : null)); - } - - @Override - public void broadcastMessage(@Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - Bukkit.broadcastMessage(ChatColorHandler.translate(message)); - } - - @Override - public void sendActionBarMessage(@NotNull Player player, @Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - player.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent(ChatColorHandler.translate(message, player))); - } - - @Override - public void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { - if ((title == null || title.isBlank()) && (subtitle == null || subtitle.isBlank())) { - return; - } - - player.sendTitle(ChatColorHandler.translate(title, player), ChatColorHandler.translate(subtitle, player), fadeIn, stay, fadeOut); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/messengers/Messenger.java b/src/main/java/org/lushplugins/chatcolorhandler/messengers/Messenger.java deleted file mode 100644 index 9a2fb3f..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/messengers/Messenger.java +++ /dev/null @@ -1,151 +0,0 @@ -package org.lushplugins.chatcolorhandler.messengers; - -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -public interface Messenger { - - /** - * Sends a recipient a message - * - * @param recipient Sender to receive this message - * @param message Message to be displayed - */ - void sendMessage(@NotNull CommandSender recipient, @Nullable String message); - - /** - * Sends a recipient multiple messages - * - * @param recipient Sender to receive message - * @param messages Messages to be displayed - */ - void sendMessage(@NotNull CommandSender recipient, @Nullable String... messages); - - /** - * Sends multiple recipients a message - * - * @param recipients Senders to receive message - * @param message Message to be displayed - */ - void sendMessage(CommandSender[] recipients, @Nullable String message); - - /** - * Sends multiple recipients, multiple messages - * - * @param recipients Senders to receive this message - * @param messages Messages to be displayed - */ - void sendMessage(CommandSender[] recipients, @Nullable String... messages); - - /** - * Sends all online players a message - * - * @param message Message to be displayed - */ - void broadcastMessage(@Nullable String message); - - /** - * Sends all online players multiple messages - * - * @param messages Messages to be displayed - */ - void broadcastMessage(@NotNull String... messages); - - /** - * Sends a player an ACTION_BAR message - * - * @param player Player to receive this action bar message - * @param message Message to be displayed - */ - void sendActionBarMessage(@NotNull Player player, @Nullable String message); - - /** - * Sends multiple players an ACTION_BAR message - * - * @param players Players to receive this action bar message - * @param message Message to be displayed - */ - void sendActionBarMessage(@NotNull Player[] players, @Nullable String message); - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - */ - void sendTitle(@NotNull Player player, @Nullable String title); - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - */ - void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle); - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param fadeOut Duration for title to fade out - */ - void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut); - - /** - * Send a player a TITLE message - * - * @param player Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param stay Duration for title to appear - * @param fadeOut Duration for title to fade out - */ - void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut); - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - */ - void sendTitle(@NotNull Player[] players, @Nullable String title); - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - */ - void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle); - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param fadeOut Duration for title to fade out - */ - void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle, int fadeIn, int fadeOut); - - /** - * Send multiple players a TITLE message - * - * @param players Player to receive this title - * @param title Title to be displayed - * @param subtitle Subtitle to be displayed - * @param fadeIn Duration for title to fade in - * @param stay Duration for title to appear - * @param fadeOut Duration for title to fade out - */ - void sendTitle(@NotNull Player[] players, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut); -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/messengers/MiniMessageMessenger.java b/src/main/java/org/lushplugins/chatcolorhandler/messengers/MiniMessageMessenger.java deleted file mode 100644 index c495bb4..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/messengers/MiniMessageMessenger.java +++ /dev/null @@ -1,73 +0,0 @@ -package org.lushplugins.chatcolorhandler.messengers; - -import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; -import org.lushplugins.chatcolorhandler.ModernChatColorHandler; -import net.kyori.adventure.audience.Audience; -import net.kyori.adventure.text.Component; -import net.kyori.adventure.text.minimessage.MiniMessage; -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import net.kyori.adventure.title.Title; -import net.kyori.adventure.title.TitlePart; -import org.bukkit.Bukkit; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.time.Duration; - -public class MiniMessageMessenger extends AbstractMessenger { - public static final MiniMessage MINI_MESSAGE = MiniMessage.builder() - .tags(TagResolver.empty()) - .build(); - public static final LegacyComponentSerializer LEGACY_COMPONENT_SERIALIZER = LegacyComponentSerializer.builder() - .character('§') - .hexColors() - .useUnusualXRepeatedCharacterHexFormat() - .build(); - - - @Override - public void sendMessage(@NotNull CommandSender recipient, @Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - Audience audience = Audience.audience((Audience) recipient); - Component parsed = ModernChatColorHandler.translate(message, (recipient instanceof Player player ? player : null)); - audience.sendMessage(parsed); - } - - @Override - public void broadcastMessage(@Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - Audience audience = Audience.audience((Audience) Bukkit.getServer()); - audience.sendMessage(ModernChatColorHandler.translate(message)); - } - - @Override - public void sendActionBarMessage(@NotNull Player player, @Nullable String message) { - if (message == null || message.isBlank()) { - return; - } - - Audience audience = Audience.audience((Audience) player); - audience.sendActionBar(ModernChatColorHandler.translate(message, player)); - } - - @Override - public void sendTitle(@NotNull Player player, @Nullable String title, @Nullable String subtitle, int fadeIn, int stay, int fadeOut) { - if ((title == null || title.isBlank()) && (subtitle == null || subtitle.isBlank())) { - return; - } - - Audience audience = Audience.audience((Audience) player); - Title.Times times = Title.Times.times(Duration.ofMillis(fadeIn * 50L), Duration.ofMillis(stay * 50L), Duration.ofMillis(fadeOut * 50L)); - audience.sendTitlePart(TitlePart.TIMES, times); - audience.sendTitlePart(TitlePart.SUBTITLE, ModernChatColorHandler.translate(subtitle, player)); - audience.sendTitlePart(TitlePart.TITLE, ModernChatColorHandler.translate(title, player)); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/Parser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/Parser.java deleted file mode 100644 index 8d93638..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/Parser.java +++ /dev/null @@ -1,36 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers; - -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; - -public interface Parser { - - /** - * @return The type of the parser {@link ParserTypes} - */ - String getType(); - - /** - * Parse a string - * @param string The string to parse - * @param outputType The output type to parse for - * @return The parsed string - */ - String parseString(@NotNull String string, @NotNull OutputType outputType); - - /** - * Parse a string in relation to a player - * @param string The string to parse - * @param outputType The output type to parse for - * @param player The player to apply whilst parsing - * @return The parsed string - */ - default String parseString(@NotNull String string, @NotNull OutputType outputType, Player player) { - return parseString(string, outputType); - } - - enum OutputType { - SPIGOT, - MINI_MESSAGE - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/ParserTypes.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/ParserTypes.java deleted file mode 100644 index 7391812..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/ParserTypes.java +++ /dev/null @@ -1,64 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers; - -import org.lushplugins.chatcolorhandler.ChatColorHandler; - -import java.util.List; - -public class ParserTypes { - public static final String COLOR = "color"; - public static final String SOUND = "sound"; - public static final String PARTICLE = "particle"; - public static final String INTERACTION = "interaction"; - public static final String PLACEHOLDER = "placeholder"; - public static final String TEXT_FORMATTING = "text-formatting"; - - /** - * @return A list of color and decoration based parsers - */ - public static List color() { - return ChatColorHandler.parsers().ofType(COLOR); - } - - /** - * @return A list of sound based parsers - */ - public static List sound() { - return ChatColorHandler.parsers().ofType(SOUND); - } - - /** - * @return A list of particle based parsers - */ - public static List particle() { - return ChatColorHandler.parsers().ofType(PARTICLE); - } - - /** - * @return A list of interaction based parsers, this includes hover, click and nbt elements - */ - public static List interact() { - return ChatColorHandler.parsers().ofType(INTERACTION); - } - - /** - * @return A list of placeholder based parsers - */ - public static List placeholder() { - return ChatColorHandler.parsers().ofType(PLACEHOLDER); - } - - /** - * @return A list of text formatting based parsers, this includes font and newlines - */ - public static List textFormatting() { - return ChatColorHandler.parsers().ofType(TEXT_FORMATTING); - } - - - /** - * @return A list of all parsers - */ - public static List all() { - return ChatColorHandler.parsers().getRegisteredParsers(); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/Resolver.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/Resolver.java deleted file mode 100644 index 255db84..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/Resolver.java +++ /dev/null @@ -1,37 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers; - -import net.kyori.adventure.audience.Audience; -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import org.bukkit.Bukkit; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.List; -import java.util.logging.Level; - -public interface Resolver extends Parser { - - @Override - default String parseString(@NotNull String string, @NotNull OutputType outputType) { - return string; - } - - @NotNull TagResolver getResolver(); - - default @NotNull TagResolver getResolver(Audience audience) { - return getResolver(); - } - - static TagResolver combineResolvers(@Nullable Audience audience, @NotNull List resolvers) { - TagResolver.Builder tagResolver = TagResolver.builder(); - for (Resolver resolver : resolvers) { - try { - tagResolver.resolver(audience != null ? resolver.getResolver(audience) : resolver.getResolver()); - } catch (Throwable e) { - Bukkit.getLogger().log(Level.WARNING, "[ChatColorHandler] Failed to combine resolver: ", e); - } - } - - return tagResolver.build(); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/HexParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/HexParser.java deleted file mode 100644 index 4d029e9..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/HexParser.java +++ /dev/null @@ -1,31 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import net.md_5.bungee.api.ChatColor; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -// Hex in format "&#rrggbb" or "#rrggbb" -public class HexParser implements Parser { - public static final HexParser INSTANCE = new HexParser(); - private static final Pattern HEX_PATTERN = Pattern.compile("&(#[a-fA-F0-9]{6})"); - - private HexParser() {} - - @Override - public String getType() { - return ParserTypes.COLOR; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - Matcher match = HEX_PATTERN.matcher(string); - return switch (outputType) { - case SPIGOT -> match.replaceAll(result -> ChatColor.of(result.group(1)).toString()); - case MINI_MESSAGE -> match.replaceAll("<$1>"); - }; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.java deleted file mode 100644 index f3d5153..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacyHexParser.java +++ /dev/null @@ -1,32 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -// Hex in format '§x§r§r§g§g§b§b' -public class LegacyHexParser implements Parser { - public static final LegacyHexParser INSTANCE = new LegacyHexParser(); - private static final Pattern HEX_PATTERN = Pattern.compile("[§&]x[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])[§&]([a-fA-F0-9])"); - - private LegacyHexParser() {} - - @Override - public String getType() { - return ParserTypes.COLOR; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return switch (outputType) { - case SPIGOT -> string; - case MINI_MESSAGE -> { - Matcher match = HEX_PATTERN.matcher(string); - yield match.replaceAll("<#$1$2$3$4$5$6>"); - } - }; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.java deleted file mode 100644 index ce4e74d..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/LegacySpigotParser.java +++ /dev/null @@ -1,50 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; - -public class LegacySpigotParser implements Parser { - public static final LegacySpigotParser INSTANCE = new LegacySpigotParser(); - - private LegacySpigotParser() {} - - @Override - public String getType() { - return ParserTypes.COLOR; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return switch (outputType) { - case SPIGOT -> string; - case MINI_MESSAGE -> string - // Legacy Ampersand - .replace("§", "&") - // Colours - .replace("&0", "") - .replace("&1", "") - .replace("&2", "") - .replace("&3", "") - .replace("&4", "") - .replace("&5", "") - .replace("&6", "") - .replace("&7", "") - .replace("&8", "") - .replace("&9", "") - .replace("&a", "") - .replace("&b", "") - .replace("&c", "") - .replace("&d", "") - .replace("&e", "") - .replace("&f", "") - // Decorations - .replace("&m", "") - .replace("&k", "") - .replace("&n", "") - .replace("&o", "") - .replace("&l", "") - .replace("&r", ""); - }; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.java deleted file mode 100644 index b89c74f..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageInteractionParser.java +++ /dev/null @@ -1,42 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import net.kyori.adventure.text.minimessage.tag.standard.*; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Resolver; - -public class MiniMessageInteractionParser implements Resolver { - public static final MiniMessageInteractionParser INSTANCE = new MiniMessageInteractionParser(); - private static final TagResolver INTERACTION = TagResolver.builder() - .resolvers( - StandardTags.hoverEvent(), - StandardTags.clickEvent(), - StandardTags.insertion() - ) - .build(); - - private MiniMessageInteractionParser() {} - - @Override - public String getType() { - return ParserTypes.INTERACTION; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return switch (outputType) { - case SPIGOT -> { - string = string.replace('§', '&'); - yield MiniMessageMessenger.LEGACY_COMPONENT_SERIALIZER.serialize(MiniMessageMessenger.MINI_MESSAGE.deserialize(string, INTERACTION)); - } - case MINI_MESSAGE -> string; - }; - } - - @Override - public @NotNull TagResolver getResolver() { - return INTERACTION; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.java deleted file mode 100644 index dd96a5c..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessagePlaceholderParser.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import net.kyori.adventure.text.minimessage.tag.standard.StandardTags; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Resolver; - -public class MiniMessagePlaceholderParser implements Resolver { - public static final MiniMessagePlaceholderParser INSTANCE = new MiniMessagePlaceholderParser(); - private static final TagResolver VANILLA_PLACEHOLDERS = TagResolver.builder() - .resolvers( - StandardTags.keybind(), - StandardTags.translatable(), - StandardTags.translatableFallback(), - StandardTags.selector(), - StandardTags.score(), - StandardTags.nbt() - ) - .build(); - - private MiniMessagePlaceholderParser() {} - - @Override - public String getType() { - return ParserTypes.PLACEHOLDER; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return switch (outputType) { - case SPIGOT -> { - string = string.replace('§', '&'); - yield MiniMessageMessenger.LEGACY_COMPONENT_SERIALIZER.serialize(MiniMessageMessenger.MINI_MESSAGE.deserialize(string, VANILLA_PLACEHOLDERS)); - } - case MINI_MESSAGE -> string; - }; - } - - @Override - public @NotNull TagResolver getResolver() { - return VANILLA_PLACEHOLDERS; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.java deleted file mode 100644 index 4fe9084..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageResolverParser.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import net.kyori.adventure.audience.Audience; -import net.kyori.adventure.text.Component; -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Resolver; - -import java.util.List; -import java.util.Objects; - -public class MiniMessageResolverParser implements Parser { - public static final MiniMessageResolverParser INSTANCE = new MiniMessageResolverParser(); - - private MiniMessageResolverParser() {} - - @Override - public String getType() { - return ParserTypes.PLACEHOLDER; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return parseString(string, outputType, null); - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType, Player player) { - return switch (outputType) { - case SPIGOT -> { - string = string.replace('§', '&'); - - Audience audience = player instanceof Audience ? (Audience) player : null; - TagResolver resolver = Resolver.combineResolvers(audience, getPlaceholderResolvers()); - - Component parsed; - if (audience != null) { - parsed = MiniMessageMessenger.MINI_MESSAGE.deserialize(string, audience, resolver); - } else { - parsed = MiniMessageMessenger.MINI_MESSAGE.deserialize(string, resolver); - } - - yield MiniMessageMessenger.LEGACY_COMPONENT_SERIALIZER.serialize(parsed); - } - case MINI_MESSAGE -> string; - }; - } - - private static List getPlaceholderResolvers() { - return ParserTypes.placeholder().stream() - .map(parser -> parser instanceof Resolver parserResolver ? parserResolver : null) - .filter(Objects::nonNull) - .toList(); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.java deleted file mode 100644 index 1b4405d..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniMessageTextFormattingParser.java +++ /dev/null @@ -1,41 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import net.kyori.adventure.text.minimessage.tag.standard.StandardTags; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.messengers.MiniMessageMessenger; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Resolver; - -public class MiniMessageTextFormattingParser implements Resolver { - public static final MiniMessageTextFormattingParser INSTANCE = new MiniMessageTextFormattingParser(); - private static final TagResolver TEXT_FORMATTING = TagResolver.builder() - .resolvers( - StandardTags.font(), - StandardTags.newline() - ) - .build(); - - private MiniMessageTextFormattingParser() {} - - @Override - public String getType() { - return ParserTypes.TEXT_FORMATTING; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return switch (outputType) { - case SPIGOT -> { - string = string.replace('§', '&'); - yield MiniMessageMessenger.LEGACY_COMPONENT_SERIALIZER.serialize(MiniMessageMessenger.MINI_MESSAGE.deserialize(string, TEXT_FORMATTING)); - } - case MINI_MESSAGE -> string; - }; - } - - @Override - public @NotNull TagResolver getResolver() { - return TEXT_FORMATTING; - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.java deleted file mode 100644 index 029e1ee..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/MiniPlaceholdersParser.java +++ /dev/null @@ -1,29 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import io.github.miniplaceholders.api.MiniPlaceholders; -import net.kyori.adventure.audience.Audience; -import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; -import org.lushplugins.chatcolorhandler.parsers.Resolver; - -public class MiniPlaceholdersParser implements Resolver { - public static final MiniPlaceholdersParser INSTANCE = new MiniPlaceholdersParser(); - - private MiniPlaceholdersParser() {} - - @Override - public String getType() { - return ParserTypes.PLACEHOLDER; - } - - @Override - public @NotNull TagResolver getResolver() { - return MiniPlaceholders.globalPlaceholders(); - } - - @Override - public @NotNull TagResolver getResolver(Audience audience) { - return MiniPlaceholders.audienceGlobalPlaceholders(); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/PlaceholderAPIParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/PlaceholderAPIParser.java deleted file mode 100644 index 17df4e2..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/PlaceholderAPIParser.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import me.clip.placeholderapi.PlaceholderAPI; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; - -public class PlaceholderAPIParser implements Parser { - public static final PlaceholderAPIParser INSTANCE = new PlaceholderAPIParser(); - - private PlaceholderAPIParser() {} - - @Override - public String getType() { - return ParserTypes.PLACEHOLDER; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return PlaceholderAPI.setPlaceholders(null, string); - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType, Player player) { - return PlaceholderAPI.setPlaceholders(player, string); - } -} diff --git a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/SoundParser.java b/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/SoundParser.java deleted file mode 100644 index cd8026d..0000000 --- a/src/main/java/org/lushplugins/chatcolorhandler/parsers/custom/SoundParser.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.lushplugins.chatcolorhandler.parsers.custom; - -import org.bukkit.Location; -import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; -import org.lushplugins.chatcolorhandler.parsers.Parser; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class SoundParser implements Parser { - - private static final Pattern SOUND_PATTERN = - Pattern.compile(""); - - private static final float DEFAULT_VOLUME = 1.0f; - private static final float DEFAULT_PITCH = 1.0f; - - public static final SoundParser INSTANCE = new SoundParser(); - - private SoundParser() {} - - @Override - public String getType() { - return ParserTypes.SOUND; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType) { - return string; - } - - @Override - public String parseString(@NotNull String string, @NotNull OutputType outputType, Player player) { - if (!string.contains(" ChatColor.translateAlternateColorCodes('&', string); - case MINI_MESSAGE -> string; - }; - } -} diff --git a/test/build.gradle.kts b/test/build.gradle.kts index f18e55d..d4e6f9a 100644 --- a/test/build.gradle.kts +++ b/test/build.gradle.kts @@ -1,14 +1,5 @@ subprojects { - group = "org.lushplugins" - version = "2.0.0-beta" + apply(plugin = "com.gradleup.shadow") - java { - toolchain.languageVersion.set(JavaLanguageVersion.of(21)) - } - - tasks { - shadowJar { - dependsOn(":shadowJar") - } - } + version = "3.0.0" } \ No newline at end of file diff --git a/test/paper/build.gradle.kts b/test/paper/build.gradle.kts index 5d24d82..edb9c80 100644 --- a/test/paper/build.gradle.kts +++ b/test/paper/build.gradle.kts @@ -7,14 +7,14 @@ dependencies { compileOnly("io.papermc.paper:paper-api:1.21.1-R0.1-SNAPSHOT") // Libraries - implementation(project(":")) + implementation(project(":platform:paper")) implementation("io.github.revxrsal:lamp.common:4.0.0-rc.16") implementation("io.github.revxrsal:lamp.bukkit:4.0.0-rc.16") } tasks { shadowJar { - relocate("org.lushplugins.chatcolorhandler.", "org.lushplugins.chatcolorhandlerpapertest.libraries.chatcolor.") + relocate("org.lushplugins.chatcolorhandler.", "org.lushplugins.chatcolorhandlertest.paper.libraries.chatcolor.") } processResources{ diff --git a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/ChatColorHandlerTest.java b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/ChatColorHandlerTest.java index 1bc2ec8..f64d52e 100644 --- a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/ChatColorHandlerTest.java +++ b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/ChatColorHandlerTest.java @@ -13,8 +13,8 @@ public final class ChatColorHandlerTest extends JavaPlugin { public void onEnable() { plugin = this; - Lamp lamp = BukkitLamp.builder(this).build(); - lamp.register(new MainCommand()); + BukkitLamp.builder(this).build() + .register(new MainCommand()); } @Override diff --git a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java index b99fde5..ed0f14e 100644 --- a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java +++ b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java @@ -1,12 +1,11 @@ package org.lushplugins.chatcolorhandlertest.paper.command; +import org.lushplugins.chatcolorhandler.paper.PaperColor; import org.lushplugins.chatcolorhandlertest.paper.ChatColorHandlerTest; import net.kyori.adventure.audience.Audience; import net.kyori.adventure.text.Component; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; -import org.lushplugins.chatcolorhandler.ChatColorHandler; -import org.lushplugins.chatcolorhandler.ModernChatColorHandler; import org.lushplugins.chatcolorhandlertest.paper.test.TestRunner; import revxrsal.commands.annotation.Command; import revxrsal.commands.annotation.Subcommand; @@ -18,25 +17,11 @@ public class MainCommand { @Subcommand("parse") public void parse(CommandSender sender, String content) { - Audience audience = Audience.audience(sender); - Component message; if (sender instanceof Player player) { - message = ModernChatColorHandler.translate(content, player); - } else { - message = ModernChatColorHandler.translate(content); - } - - audience.sendMessage(message); - } - - @Subcommand("parse-legacy") - public void parseLegacy(CommandSender sender, String content) { - String message; - if (sender instanceof Player player) { - message = ChatColorHandler.translate(content, player); + message = PaperColor.handler().translate(content, player); } else { - message = ChatColorHandler.translate(content); + message = PaperColor.handler().translate(content); } sender.sendMessage(message); @@ -49,6 +34,6 @@ public void runTests(BukkitCommandActor actor) { @Subcommand("version") public void version(CommandSender sender) { - ChatColorHandler.sendMessage(sender, "&#a8e1ffYou are currently running ChatColorHandlerTest (paper) version :b1e0" + ChatColorHandlerTest.getInstance().getDescription().getVersion()); + PaperColor.handler().sendMessage(sender, "&#a8e1ffYou are currently running ChatColorHandlerTest (paper) version :b1e0" + ChatColorHandlerTest.getInstance().getDescription().getVersion()); } } diff --git a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java index fea6754..00ce236 100644 --- a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java +++ b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java @@ -5,9 +5,8 @@ import org.bukkit.entity.Player; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import org.lushplugins.chatcolorhandler.ChatColorHandler; -import org.lushplugins.chatcolorhandler.ModernChatColorHandler; -import org.lushplugins.chatcolorhandler.parsers.ParserTypes; +import org.lushplugins.chatcolorhandler.paper.PaperColor; +import org.lushplugins.chatcolorhandler.paper.parser.ParserTypes; import org.lushplugins.chatcolorhandlertest.paper.ChatColorHandlerTest; import java.util.ArrayList; @@ -92,30 +91,30 @@ public static void runTest(CommandSender sender, @Nullable Player player) { .addTest( inputOne, "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: ", - ChatColorHandler::translate) + (input) -> PaperColor.handler().translateRaw(input, null, PaperColor.handler().settings().defaultParsers())) .addTest( inputOne, "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: §x§f§9§c§a§a§4" + (player != null ? player.getName() : "%player_name%"), - (input) -> ChatColorHandler.translate(input, player)) + (input) -> PaperColor.handler().translateRaw(input, player, PaperColor.handler().settings().defaultParsers())) .addTest( inputOne, "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: §x§f§9§c§a§a§4%player_name%", - (input) -> ChatColorHandler.translate(input, ParserTypes.color())) + (input) -> PaperColor.handler().translateRaw(input, null, ParserTypes.color())) .addTest( inputOne, "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: §x§f§9§c§a§a§4%player_name%", - (input) -> ChatColorHandler.translate(input, player, ParserTypes.color())) + (input) -> PaperColor.handler().translateRaw(input, player, ParserTypes.color())) .addTest( inputOne, "&#A4D3F9This is a test string &rusing &lbold, underline&r and shows your name: <#F9CAA4>" + (player != null ? player.getName() : "%player_name%") + "", - (input) -> ChatColorHandler.translate(input, player, ParserTypes.placeholder())) + (input) -> PaperColor.handler().translateRaw(input, player, ParserTypes.placeholder())) .run(); - player.sendMessage(" "); - player.sendMessage(ModernChatColorHandler.translate(inputOne)); - player.sendMessage(ModernChatColorHandler.translate(inputOne, player)); - player.sendMessage(ModernChatColorHandler.translate(inputOne, ParserTypes.color())); - player.sendMessage(ModernChatColorHandler.translate(inputOne, player, ParserTypes.color())); - player.sendMessage(ModernChatColorHandler.translate(inputOne, player, ParserTypes.placeholder())); + sender.sendMessage(" "); + sender.sendMessage(PaperColor.handler().translate(inputOne)); + sender.sendMessage(PaperColor.handler().translate(inputOne, player)); + sender.sendMessage(PaperColor.handler().translate(inputOne, ParserTypes.color())); + sender.sendMessage(PaperColor.handler().translate(inputOne, player, ParserTypes.color())); + sender.sendMessage(PaperColor.handler().translate(inputOne, player, ParserTypes.placeholder())); } } diff --git a/test/spigot/build.gradle.kts b/test/spigot/build.gradle.kts deleted file mode 100644 index fb75b9b..0000000 --- a/test/spigot/build.gradle.kts +++ /dev/null @@ -1,40 +0,0 @@ -plugins { - id("xyz.jpenilla.run-paper") version ("2.2.4") -} - -dependencies { - // Dependencies - compileOnly("org.spigotmc:spigot-api:1.21.11-R0.2-SNAPSHOT") - - // Libraries - implementation(project(":")) - implementation("io.github.revxrsal:lamp.common:4.0.0-rc.16") - implementation("io.github.revxrsal:lamp.bukkit:4.0.0-rc.16") -} - -tasks { - shadowJar { - relocate("org.lushplugins.chatcolorhandler.", "org.lushplugins.chatcolorhandlerpapertest.libraries.chatcolor.") - } - - processResources{ - expand(project.properties) - - inputs.property("version", rootProject.version) - filesMatching("plugin.yml") { - expand("version" to rootProject.version) - } - filesMatching("paper-plugin.yml") { - expand("version" to rootProject.version) - } - } - - runServer { - minecraftVersion("1.21.1") - - downloadPlugins { - hangar("PlaceholderAPI", "2.11.6") - modrinth("miniplaceholders", "wck4v0R0") - } - } -} \ No newline at end of file diff --git a/test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/ChatColorHandlerTest.java b/test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/ChatColorHandlerTest.java deleted file mode 100644 index d6f3953..0000000 --- a/test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/ChatColorHandlerTest.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.lushplugins.chatcolorhandlertest.spigot; - -import org.lushplugins.chatcolorhandlertest.spigot.command.MainCommand; -import org.bukkit.plugin.java.JavaPlugin; -import revxrsal.commands.Lamp; -import revxrsal.commands.bukkit.BukkitLamp; -import revxrsal.commands.bukkit.actor.BukkitCommandActor; - -public final class ChatColorHandlerTest extends JavaPlugin { - private static ChatColorHandlerTest plugin; - - @Override - public void onEnable() { - plugin = this; - - Lamp lamp = BukkitLamp.builder(this).build(); - lamp.register(new MainCommand()); - } - - @Override - public void onDisable() { - plugin = null; - } - - public static ChatColorHandlerTest getInstance() { - return plugin; - } -} diff --git a/test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/command/MainCommand.java b/test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/command/MainCommand.java deleted file mode 100644 index db327f6..0000000 --- a/test/spigot/src/main/java/org/lushplugins/chatcolorhandlertest/spigot/command/MainCommand.java +++ /dev/null @@ -1,30 +0,0 @@ -package org.lushplugins.chatcolorhandlertest.spigot.command; - -import org.lushplugins.chatcolorhandlertest.spigot.ChatColorHandlerTest; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.lushplugins.chatcolorhandler.ChatColorHandler; -import revxrsal.commands.annotation.Command; -import revxrsal.commands.annotation.Subcommand; - -@SuppressWarnings("unused") -@Command("chatcolorhandlerpapertest") -public class MainCommand { - - @Subcommand("parse") - public void parse(CommandSender sender, String content) { - String message; - if (sender instanceof Player player) { - message = ChatColorHandler.translate(content, player); - } else { - message = ChatColorHandler.translate(content); - } - - sender.sendMessage(message); - } - - @Subcommand("version") - public void version(CommandSender sender) { - ChatColorHandler.sendMessage(sender, "&#a8e1ffYou are currently running ChatColorHandlerTest (spigot) version :b1e0" + ChatColorHandlerTest.getInstance().getDescription().getVersion()); - } -} diff --git a/test/spigot/src/main/resources/plugin.yml b/test/spigot/src/main/resources/plugin.yml deleted file mode 100644 index 2787a6d..0000000 --- a/test/spigot/src/main/resources/plugin.yml +++ /dev/null @@ -1,7 +0,0 @@ -name: ChatColorHandlerTest -version: '${version}' -main: org.lushplugins.chatcolorhandlertest.spigot.ChatColorHandlerTest -api-version: '1.20' -depend: - - PlaceholderAPI - - MiniPlaceholders \ No newline at end of file From 7e229f1dccb4fc34522c6442632d97b6e5e49771 Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sat, 14 Mar 2026 16:55:05 +0000 Subject: [PATCH 2/8] Updated test server plugins --- test/paper/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/paper/build.gradle.kts b/test/paper/build.gradle.kts index edb9c80..38a5941 100644 --- a/test/paper/build.gradle.kts +++ b/test/paper/build.gradle.kts @@ -35,8 +35,8 @@ tasks { downloadPlugins { hangar("PlaceholderAPI", "2.11.6") modrinth("miniplaceholders", "wck4v0R0") - modrinth("viaversion", "5.4.0-SNAPSHOT+742") - modrinth("viabackwards", "5.4.0-SNAPSHOT+425") + modrinth("viaversion", "5.7.2") + modrinth("viabackwards", "5.7.2") } } } \ No newline at end of file From 3d626d6a13793e279a779b36e8dd7de3b312511d Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sat, 14 Mar 2026 18:26:33 +0000 Subject: [PATCH 3/8] Fixed parsing issues --- .../common/parser/ParserRegistry.java | 12 ++++------ .../paper/parser/ParserTypes.java | 17 +++++++++---- .../paper/resolver/ResolverRegistry.java | 12 ++++------ test/paper/build.gradle.kts | 10 +++----- .../paper/command/MainCommand.java | 1 - .../paper/test/TestRunner.java | 24 +++++++++---------- 6 files changed, 38 insertions(+), 38 deletions(-) diff --git a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java index 62a73fb..eea1bf8 100644 --- a/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java +++ b/common/src/main/java/org/lushplugins/chatcolorhandler/common/parser/ParserRegistry.java @@ -44,13 +44,11 @@ public List ofTypes(@NotNull String... types) { return values().stream() .filter(parser -> { ParserType parserType = parser.getType(); - if (parserType == null) { - return true; - } - - for (String type : types) { - if (parserType.equals(type)) { - return true; + if (parserType != null) { + for (String type : types) { + if (parserType.equals(type)) { + return true; + } } } diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java index d5e3d76..85d05d4 100644 --- a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/parser/ParserTypes.java @@ -5,12 +5,18 @@ import org.lushplugins.chatcolorhandler.paper.PaperColor; import java.util.List; -import java.util.Set; + +import java.util.stream.Stream; public class ParserTypes { private static List ofType(ParserType type) { - return PaperColor.handler().parsers().ofType(type.id()); + return all().stream() + .filter(parser -> { + ParserType parserType = parser.getType(); + return parserType != null && parserType.equals(type); + }) + .toList(); } public static List color() { @@ -37,7 +43,10 @@ public static List textFormatting() { return ofType(ParserType.TEXT_FORMATTING); } - public static Set all() { - return PaperColor.handler().parsers().values(); + public static List all() { + return Stream.concat( + PaperColor.handler().parsers().values().stream(), + PaperColor.handler().resolvers().values().stream() + ).toList(); } } diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java index 49da701..adf2132 100644 --- a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/resolver/ResolverRegistry.java @@ -53,13 +53,11 @@ public List ofTypes(@NotNull String... types) { return values().stream() .filter(resolver -> { ParserType resolverType = resolver.getType(); - if (resolverType == null) { - return true; - } - - for (String type : types) { - if (resolver.getType().equals(type)) { - return true; + if (resolverType != null) { + for (String type : types) { + if (resolver.getType().equals(type)) { + return true; + } } } diff --git a/test/paper/build.gradle.kts b/test/paper/build.gradle.kts index 38a5941..a8c2fa7 100644 --- a/test/paper/build.gradle.kts +++ b/test/paper/build.gradle.kts @@ -4,7 +4,7 @@ plugins { dependencies { // Dependencies - compileOnly("io.papermc.paper:paper-api:1.21.1-R0.1-SNAPSHOT") + compileOnly("io.papermc.paper:paper-api:1.21.11-R0.1-SNAPSHOT") // Libraries implementation(project(":platform:paper")) @@ -13,10 +13,6 @@ dependencies { } tasks { - shadowJar { - relocate("org.lushplugins.chatcolorhandler.", "org.lushplugins.chatcolorhandlertest.paper.libraries.chatcolor.") - } - processResources{ expand(project.properties) @@ -30,11 +26,11 @@ tasks { } runServer { - minecraftVersion("1.21.4") + minecraftVersion("1.21.11") downloadPlugins { hangar("PlaceholderAPI", "2.11.6") - modrinth("miniplaceholders", "wck4v0R0") + modrinth("miniplaceholders", "4zOT6txC") modrinth("viaversion", "5.7.2") modrinth("viabackwards", "5.7.2") } diff --git a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java index ed0f14e..8d9faed 100644 --- a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java +++ b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/command/MainCommand.java @@ -2,7 +2,6 @@ import org.lushplugins.chatcolorhandler.paper.PaperColor; import org.lushplugins.chatcolorhandlertest.paper.ChatColorHandlerTest; -import net.kyori.adventure.audience.Audience; import net.kyori.adventure.text.Component; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; diff --git a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java index 00ce236..abb3259 100644 --- a/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java +++ b/test/paper/src/main/java/org/lushplugins/chatcolorhandlertest/paper/test/TestRunner.java @@ -3,7 +3,6 @@ import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.lushplugins.chatcolorhandler.paper.PaperColor; import org.lushplugins.chatcolorhandler.paper.parser.ParserTypes; @@ -15,6 +14,7 @@ import java.util.logging.Level; public class TestRunner { + private int testIndex = 0; private boolean ran = false; private final @Nullable Player player; private final List tests = new ArrayList<>(); @@ -27,8 +27,8 @@ public TestRunner(@Nullable Player player) { this.player = player; } - public TestRunner addTest(@NotNull String input, @Nullable String expectedOutput, @NotNull Function translate) { - this.tests.add(new Test(input, expectedOutput, translate)); + public TestRunner addTest(String input, @Nullable String expectedOutput, Function translate) { + this.tests.add(new Test(String.valueOf(++testIndex), input, expectedOutput, translate)); return this; } @@ -43,7 +43,7 @@ public void run() { } } - record Test(@NotNull String input, @Nullable String expectedOutput, @NotNull Function translate) { + record Test(String id, String input, @Nullable String expectedOutput, Function translate) { private String run() { return run(null); @@ -59,21 +59,21 @@ private String run(Player player) { if (expectedOutput == null || expectedOutput.equals(output)) { ChatColorHandlerTest.getInstance().getLogger().info(""" - Test Passed: + Test %s Passed: Input '%s' passed tests. Received: '%s' - """.formatted(input, output)); + """.formatted(id, input, output)); if (player != null) { player.sendMessage("§a✔§r: " + output); } } else { ChatColorHandlerTest.getInstance().getLogger().info(""" - Test Failed: + Test %s Failed: Input '%s' failed tests. Expected: '%s' Received: '%s' - """.formatted(input, expectedOutput, output)); + """.formatted(id, input, expectedOutput, output)); if (player != null) { player.sendMessage("§c✕§r: " + output); @@ -90,19 +90,19 @@ public static void runTest(CommandSender sender, @Nullable Player player) { new TestRunner(player) .addTest( inputOne, - "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: ", + "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r and shows your name: ", (input) -> PaperColor.handler().translateRaw(input, null, PaperColor.handler().settings().defaultParsers())) .addTest( inputOne, - "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: §x§f§9§c§a§a§4" + (player != null ? player.getName() : "%player_name%"), + "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r and shows your name: §x§f§9§c§a§a§4" + (player != null ? player.getName() : "%player_name%"), (input) -> PaperColor.handler().translateRaw(input, player, PaperColor.handler().settings().defaultParsers())) .addTest( inputOne, - "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: §x§f§9§c§a§a§4%player_name%", + "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r and shows your name: §x§f§9§c§a§a§4%player_name%", (input) -> PaperColor.handler().translateRaw(input, null, ParserTypes.color())) .addTest( inputOne, - "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r§r and shows your name: §x§f§9§c§a§a§4%player_name%", + "§x§a§4§d§3§f§9This is a test string §rusing §lbold, §nunderline§r and shows your name: §x§f§9§c§a§a§4%player_name%", (input) -> PaperColor.handler().translateRaw(input, player, ParserTypes.color())) .addTest( inputOne, From 0d47e4edfe40dbcb1a11b1bd1fdbd586295aabd5 Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sat, 14 Mar 2026 22:38:35 +0000 Subject: [PATCH 4/8] Fixed compile issues --- build.gradle.kts | 26 ++++++++++++++++++- common/build.gradle.kts | 11 ++++++++ platform/build.gradle.kts | 26 ++++--------------- .../chatcolorhandler/paper/PaperColor.java | 10 +++---- 4 files changed, 46 insertions(+), 27 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 77905f3..1b78a05 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ allprojects { apply(plugin = "maven-publish") group = "org.lushplugins" - version = "7.0.0" + version = "7.0.0-alpha.3" repositories { mavenLocal() @@ -39,4 +39,28 @@ allprojects { options.encoding = "UTF-8" } } + + publishing { + repositories { + maven { + name = "lushReleases" + url = uri("https://repo.lushplugins.org/releases") + credentials(PasswordCredentials::class) + authentication { + isAllowInsecureProtocol = true + create("basic") + } + } + + maven { + name = "lushSnapshots" + url = uri("https://repo.lushplugins.org/snapshots") + credentials(PasswordCredentials::class) + authentication { + isAllowInsecureProtocol = true + create("basic") + } + } + } + } } diff --git a/common/build.gradle.kts b/common/build.gradle.kts index 94746d1..44ccce2 100644 --- a/common/build.gradle.kts +++ b/common/build.gradle.kts @@ -4,4 +4,15 @@ dependencies { // Soft Dependencies compileOnly("me.clip:placeholderapi:2.12.2") +} + +publishing { + publications { + create("maven") { + groupId = rootProject.group.toString() + ".chatcolorhandler" + artifactId = project.name + version = rootProject.version.toString() + from(project.components["java"]) + } + } } \ No newline at end of file diff --git a/platform/build.gradle.kts b/platform/build.gradle.kts index b96eced..b3c5b05 100644 --- a/platform/build.gradle.kts +++ b/platform/build.gradle.kts @@ -5,29 +5,13 @@ subprojects { api(project(":common")) } - publishing { - repositories { - maven { - name = "lushReleases" - url = uri("https://repo.lushplugins.org/releases") - credentials(PasswordCredentials::class) - authentication { - isAllowInsecureProtocol = true - create("basic") - } - } - - maven { - name = "lushSnapshots" - url = uri("https://repo.lushplugins.org/snapshots") - credentials(PasswordCredentials::class) - authentication { - isAllowInsecureProtocol = true - create("basic") - } - } + tasks { + build { + dependsOn("shadowJar") } + } + publishing { publications { create("maven") { groupId = rootProject.group.toString() + ".chatcolorhandler" diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java index d2aa153..63a29d2 100644 --- a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java @@ -138,17 +138,17 @@ public void sendTitle(Player player, @Nullable String title, @Nullable String su return; } - Component translatedTitle = translate(title, player); - Component translatedSubtitle = translate(subtitle, player); Title.Times times = Title.Times.times( Duration.ofMillis(fadeIn * 50L), Duration.ofMillis(stay * 50L), Duration.ofMillis(fadeOut * 50L) ); - player.sendTitlePart(TitlePart.TIMES, times); - player.sendTitlePart(TitlePart.SUBTITLE, translatedSubtitle); - player.sendTitlePart(TitlePart.TITLE, translatedTitle); + player.showTitle(Title.title( + translate(title, player), + translate(subtitle, player), + times + )); } public static PaperColor handler() { From 172fafe099b1a2bcb5191ee7b52ef7f0351ee4dc Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sat, 14 Mar 2026 22:39:00 +0000 Subject: [PATCH 5/8] Bumped version to 7.0.0-rc.1 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 1b78a05..83beb5b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ allprojects { apply(plugin = "maven-publish") group = "org.lushplugins" - version = "7.0.0-alpha.3" + version = "7.0.0-rc.1" repositories { mavenLocal() From e41628f894124008d84b8e89cd142d49b747f5e6 Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sat, 14 Mar 2026 23:49:17 +0000 Subject: [PATCH 6/8] Removed duplicate loading of MiniPlaceholdersResolver --- build.gradle.kts | 2 +- .../org/lushplugins/chatcolorhandler/paper/PaperColor.java | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 83beb5b..aed6f0a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ allprojects { apply(plugin = "maven-publish") group = "org.lushplugins" - version = "7.0.0-rc.1" + version = "7.0.0-rc.2" repositories { mavenLocal() diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java index 63a29d2..42253d0 100644 --- a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java @@ -45,8 +45,7 @@ public PaperColor() { MiniMessageDefaultsResolver.INSTANCE, MiniMessageInteractionResolver.INSTANCE, MiniMessagePlaceholderResolver.INSTANCE, - MiniMessageTextFormattingResolver.INSTANCE, - MiniPlaceholdersResolver.INSTANCE + MiniMessageTextFormattingResolver.INSTANCE ); PluginManager pluginManager = Bukkit.getServer().getPluginManager(); From 54e48e6548dbe4855968636581c36b27de9e0389 Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sun, 15 Mar 2026 00:32:50 +0000 Subject: [PATCH 7/8] Set lore to false if not specified --- build.gradle.kts | 2 +- .../lushplugins/chatcolorhandler/paper/PaperColor.java | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index aed6f0a..807b86f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ allprojects { apply(plugin = "maven-publish") group = "org.lushplugins" - version = "7.0.0-rc.2" + version = "7.0.0-rc.3" repositories { mavenLocal() diff --git a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java index 42253d0..be57a78 100644 --- a/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java +++ b/platform/paper/src/main/java/org/lushplugins/chatcolorhandler/paper/PaperColor.java @@ -1,11 +1,11 @@ package org.lushplugins.chatcolorhandler.paper; import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.format.TextDecoration; import net.kyori.adventure.text.minimessage.MiniMessage; import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import net.kyori.adventure.title.Title; -import net.kyori.adventure.title.TitlePart; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @@ -79,9 +79,11 @@ public Component translate(@Nullable String string, @Nullable Player player, Col .toList()); if (player != null) { - return MINI_MESSAGE.deserialize(translated, player, resolver); + return MINI_MESSAGE.deserialize(translated, player, resolver) + .decorationIfAbsent(TextDecoration.ITALIC, TextDecoration.State.FALSE); } else { - return MINI_MESSAGE.deserialize(translated, resolver); + return MINI_MESSAGE.deserialize(translated, resolver) + .decorationIfAbsent(TextDecoration.ITALIC, TextDecoration.State.FALSE); } } From 8f2bdc00b40a0c5b5507199a6776c3e149f778b8 Mon Sep 17 00:00:00 2001 From: OakLoaf Date: Sun, 15 Mar 2026 23:27:54 +0000 Subject: [PATCH 8/8] Bumped version to 7.0.0 for release --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 807b86f..46417a7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ allprojects { apply(plugin = "maven-publish") group = "org.lushplugins" - version = "7.0.0-rc.3" + version = "7.0.0" repositories { mavenLocal()