From 8fc01883de82a32234c3d12af202b74c1aec43b4 Mon Sep 17 00:00:00 2001 From: MioArchive Date: Wed, 28 Jan 2026 21:44:51 +0100 Subject: [PATCH 1/5] Refactor messaging system to use Adventure components and remove deprecated API usage. --- src/main/java/me/david/EventCore.java | 10 +-- .../me/david/command/AnnouncementCommand.java | 26 +++---- .../me/david/command/EventCoreCommand.java | 1 - .../david/listener/PlayerDeathListener.java | 13 ++-- .../me/david/listener/PlayerJoinListener.java | 10 +-- .../me/david/listener/PlayerQuitListener.java | 7 +- .../java/me/david/manager/GameManager.java | 69 +++++++++++++------ .../java/me/david/util/AutoBroadcast.java | 9 +-- src/main/java/me/david/util/MessageUtil.java | 36 ++++++++-- 9 files changed, 120 insertions(+), 61 deletions(-) diff --git a/src/main/java/me/david/EventCore.java b/src/main/java/me/david/EventCore.java index be47b5d..36072f3 100644 --- a/src/main/java/me/david/EventCore.java +++ b/src/main/java/me/david/EventCore.java @@ -96,15 +96,15 @@ public void onEnable() { if (getConfig().getBoolean("Messages.Actionbar.Enabled")) { Scheduler.timerAsync(() -> { for (Player player : Bukkit.getOnlinePlayers()) { - String message = MessageUtil.get("Messages.Actionbar.Message"); - message = PlaceholderAPI.setPlaceholders(player, message); - player.sendActionBar(message); + String raw = getConfig().getString("Messages.Actionbar.Message", "&aYou are playing the best Event!"); + String parsed = PlaceholderAPI.setPlaceholders(player, raw); + + player.sendActionBar(MessageUtil.translateColorCodes(parsed)); } }, 0, 20); } - int id = 28277; - new Metrics(this, id); + new Metrics(this, 28277); } @Override diff --git a/src/main/java/me/david/command/AnnouncementCommand.java b/src/main/java/me/david/command/AnnouncementCommand.java index 9ac3884..d3df587 100644 --- a/src/main/java/me/david/command/AnnouncementCommand.java +++ b/src/main/java/me/david/command/AnnouncementCommand.java @@ -5,10 +5,13 @@ import dev.jorel.commandapi.executors.CommandArguments; import me.david.EventCore; import me.david.util.MessageUtil; +import net.kyori.adventure.text.Component; +import net.kyori.adventure.title.Title; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; +import java.util.Map; import java.util.Objects; public class AnnouncementCommand { @@ -27,24 +30,23 @@ public CommandAPICommand init() { .executes(this::onCommand); } - @SuppressWarnings("deprecation") private void onCommand(CommandSender sender, CommandArguments args) { String message = Objects.requireNonNull(args.get("message")).toString(); + var replacements = Map.of( + "%prefix%", MessageUtil.getPrefix(), + "%message%", MessageUtil.translateColorCodes(message) + ); + for (Player player : Bukkit.getOnlinePlayers()) { - player.sendMessage(MessageUtil.get("Messages.AnnoucementCommand.MessageFormat") - .replace("%prefix%", MessageUtil.getPrefix()) - .replace("%message%", message)); + player.sendMessage(MessageUtil.format("Messages.AnnoucementCommand.MessageFormat", replacements)); if (plugin.getConfig().getBoolean("Messages.AnnoucementCommand.Title.Enabled")) { - player.sendTitle( - MessageUtil.get("Messages.AnnoucementCommand.Title.Title") - .replace("%prefix%", MessageUtil.getPrefix()) - .replace("%message%", message), - MessageUtil.get("Messages.AnnoucementCommand.Title.SubTitle") - .replace("%prefix%", MessageUtil.getPrefix()) - .replace("%message%", message) - ); + Component titleComponent = MessageUtil.format("Messages.AnnoucementCommand.Title.Title", replacements); + Component subTitleComponent = MessageUtil.format("Messages.AnnoucementCommand.Title.SubTitle", replacements); + + Title title = Title.title(titleComponent, subTitleComponent); + player.showTitle(title); } } } diff --git a/src/main/java/me/david/command/EventCoreCommand.java b/src/main/java/me/david/command/EventCoreCommand.java index c542ed3..d54ed19 100644 --- a/src/main/java/me/david/command/EventCoreCommand.java +++ b/src/main/java/me/david/command/EventCoreCommand.java @@ -15,7 +15,6 @@ public EventCoreCommand(EventCore plugin) { init(); } - @SuppressWarnings("deprecation") private void init() { new CommandAPICommand("event") .withAliases("eventcore", "e") diff --git a/src/main/java/me/david/listener/PlayerDeathListener.java b/src/main/java/me/david/listener/PlayerDeathListener.java index dc18ec1..83495b4 100644 --- a/src/main/java/me/david/listener/PlayerDeathListener.java +++ b/src/main/java/me/david/listener/PlayerDeathListener.java @@ -10,9 +10,9 @@ import org.bukkit.event.Listener; import org.bukkit.event.entity.PlayerDeathEvent; -public class PlayerDeathListener implements Listener { +import java.util.Map; - //todo - refactor death messages to use components +public class PlayerDeathListener implements Listener { @EventHandler public void onPlayerDeath(PlayerDeathEvent event) { @@ -25,9 +25,14 @@ public void onPlayerDeath(PlayerDeathEvent event) { if (EventCore.getInstance().getConfig().getBoolean("Messages.PlayerDeath.Enabled")) { if (player.getKiller() != null) { - event.setDeathMessage(MessageUtil.get("Messages.PlayerDeath.Message1").replaceAll("%player%", player.getName()).replaceAll("%killer%", player.getKiller().getName())); + event.deathMessage(MessageUtil.format("Messages.PlayerDeath.Message1", Map.of( + "%player%", Component.text(player.getName()), + "%killer%", Component.text(player.getKiller().getName())) + )); } else { - event.setDeathMessage(MessageUtil.get("Messages.PlayerDeath.Message2").replaceAll("%player%", player.getName())); + event.deathMessage(MessageUtil.format( + "Messages.PlayerDeath.Message2", Map.of("%player%", Component.text(player.getName())) + )); } } else { event.deathMessage(Component.empty()); diff --git a/src/main/java/me/david/listener/PlayerJoinListener.java b/src/main/java/me/david/listener/PlayerJoinListener.java index 53078e7..acf2687 100644 --- a/src/main/java/me/david/listener/PlayerJoinListener.java +++ b/src/main/java/me/david/listener/PlayerJoinListener.java @@ -10,7 +10,7 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; -import java.util.Objects; +import java.util.Map; public class PlayerJoinListener implements Listener { @@ -21,9 +21,10 @@ public void onPlayerJoin(PlayerJoinEvent event) { HostUtil.giveHost(player); if (EventCore.getInstance().getConfig().getBoolean("Messages.PlayerJoin.Enabled")) { - event.setJoinMessage(MessageUtil.getPrefix() + MessageUtil.get("Messages.PlayerJoin.Message").replaceAll("%player%", player.getName())); + Component message = MessageUtil.getPrefix().append(MessageUtil.format("Messages.PlayerJoin.Message", Map.of("%player%", Component.text(player.getName())))); + event.joinMessage(message); } else { - event.setJoinMessage(""); + event.joinMessage(Component.empty()); } player.teleportAsync(EventCore.getInstance().getMapManager().getSpawnLocation()); @@ -47,13 +48,12 @@ public void onPlayerJoin(PlayerJoinEvent event) { Bukkit.getScheduler().runTaskLater(EventCore.getInstance(), () -> { if (updateChecker.isHasUpdate()) { player.sendMessage(Component.empty()); - player.sendMessage(MessageUtil.getPrefix() + MessageUtil.translateColorCodes("You're running an outdated version of EventCore. Please update to the latest version:")); + player.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("You're running an outdated version of EventCore. Please update to the latest version:"))); player.sendMessage(updateChecker.getUpdateComponent()); player.sendMessage(Component.empty()); } }, 20L); } - } } diff --git a/src/main/java/me/david/listener/PlayerQuitListener.java b/src/main/java/me/david/listener/PlayerQuitListener.java index ae4b84b..1ebb090 100644 --- a/src/main/java/me/david/listener/PlayerQuitListener.java +++ b/src/main/java/me/david/listener/PlayerQuitListener.java @@ -4,12 +4,14 @@ import me.david.util.HostUtil; import me.david.util.MessageUtil; import me.david.util.Scheduler; +import net.kyori.adventure.text.Component; import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerQuitEvent; +import java.util.Map; import java.util.Objects; public class PlayerQuitListener implements Listener { @@ -21,9 +23,10 @@ public void onPlayerQuit(PlayerQuitEvent event) { HostUtil.removeHost(player); if (EventCore.getInstance().getConfig().getBoolean("Messages.PlayerQuit.Enabled")) { - event.setQuitMessage(MessageUtil.getPrefix() + MessageUtil.get("Messages.PlayerQuit.Message").replaceAll("%player%", player.getName())); + Component message = MessageUtil.format("Messages.PlayerQuit.Message", Map.of("%player%", Component.text(player.getName()))); + event.quitMessage(message); } else { - event.setQuitMessage(""); + event.quitMessage(Component.empty()); } } diff --git a/src/main/java/me/david/manager/GameManager.java b/src/main/java/me/david/manager/GameManager.java index 3bcb33d..d653789 100644 --- a/src/main/java/me/david/manager/GameManager.java +++ b/src/main/java/me/david/manager/GameManager.java @@ -10,9 +10,12 @@ import me.david.util.MessageUtil; import me.david.util.PlayerUtil; import me.david.util.Scheduler; +import net.kyori.adventure.title.Title; import org.bukkit.*; import org.bukkit.entity.Player; +import java.util.Map; +import java.util.Objects; import java.util.concurrent.atomic.AtomicInteger; @Getter @@ -30,7 +33,6 @@ public class GameManager { private long inGameTimer; private boolean autoDropped = false; - @SuppressWarnings("deprecation") public void start() { stopAllTimers(); if (timerRunning) return; @@ -58,22 +60,38 @@ public void start() { for (Player player : Bukkit.getOnlinePlayers()) { if (current > 0) { - String color = MessageUtil.get("Messages.StartTimer.Colors." + current + "sec"); + String color = EventCore.getInstance().getConfig().getString("Messages.StartTimer.Colors." + current + "sec"); String timerText = color + current + "§7"; - player.sendMessage(MessageUtil.getPrefix() - + MessageUtil.get("Messages.StartTimer.Message").replaceAll("%timer%", timerText)); - player.sendTitle( - MessageUtil.get("Messages.StartTimer.Title").replaceAll("%timer%", timerText), - MessageUtil.get("Messages.StartTimer.SubTitle").replaceAll("%timer%", timerText) + var replacements = Map.of( + "%timer%", MessageUtil.translateColorCodes(timerText), + "%prefix%", MessageUtil.getPrefix() ); + + player.sendMessage( + MessageUtil.getPrefix().append( + MessageUtil.format("Messages.StartTimer.Message", replacements) + ) + ); + + Title title = Title.title( + MessageUtil.format("Messages.StartTimer.Title", replacements), + MessageUtil.format("Messages.StartTimer.SubTitle", replacements) + ); + player.showTitle(title); + player.playSound(player.getLocation(), Sound.ENTITY_CHICKEN_EGG, 5, 5); } else { - player.sendMessage(MessageUtil.getPrefix() + MessageUtil.get("Messages.Start.Message")); - player.sendTitle( + player.sendMessage( + MessageUtil.getPrefix().append(MessageUtil.get("Messages.Start.Message")) + ); + + Title title = Title.title( MessageUtil.get("Messages.Start.Title"), MessageUtil.get("Messages.Start.SubTitle") ); + player.showTitle(title); + player.playSound(player.getLocation(), Sound.ENTITY_PLAYER_LEVELUP, 5, 5); } } @@ -130,7 +148,6 @@ public void start() { } } - @SuppressWarnings("deprecation") public void stop(final String winner) { GameStopEvent gameStopEvent = new GameStopEvent(winner); Bukkit.getPluginManager().callEvent(gameStopEvent); @@ -146,13 +163,24 @@ public void stop(final String winner) { stopInGameTimer(); stopAllTimers(); + var replacements = Map.of( + "%winner%", MessageUtil.translateColorCodes(winner), + "%prefix%", MessageUtil.getPrefix() + ); + for (Player player : Bukkit.getOnlinePlayers()) { - player.sendMessage(MessageUtil.getPrefix() - + MessageUtil.get("Messages.Stop.Message").replaceAll("%winner%", winner)); - player.sendTitle( - MessageUtil.get("Messages.Stop.Title").replaceAll("%winner%", winner), - MessageUtil.get("Messages.Stop.SubTitle").replaceAll("%winner%", winner) + player.sendMessage( + MessageUtil.getPrefix().append( + MessageUtil.format("Messages.Stop.Message", replacements) + ) ); + + Title title = Title.title( + MessageUtil.format("Messages.Stop.Title", replacements), + MessageUtil.format("Messages.Stop.SubTitle", replacements) + ); + player.showTitle(title); + player.playSound(player.getLocation(), Sound.ENTITY_PLAYER_LEVELUP, 5, 5); PlayerUtil.cleanPlayer(player); } @@ -172,7 +200,6 @@ public void stop(final String winner) { } } - @SuppressWarnings("deprecation") public void startInGameTimer() { inGameTimer = 0; @@ -186,13 +213,13 @@ public void startInGameTimer() { Bukkit.getPluginManager().callEvent(new InGameTimerTickEvent(inGameTimer)); - String message = MessageUtil.get("Settings.IngameTimer.Format") - .replaceAll("hh", String.format("%02d", (inGameTimer / 3600))) - .replaceAll("mm", String.format("%02d", ((inGameTimer % 3600) / 60))) - .replaceAll("ss", String.format("%02d", (inGameTimer % 60))); + String raw = Objects.requireNonNull(EventCore.getInstance().getConfig().getString("Settings.IngameTimer.Format")) + .replace("hh", String.format("%02d", (inGameTimer / 3600))) + .replace("mm", String.format("%02d", ((inGameTimer % 3600) / 60))) + .replace("ss", String.format("%02d", (inGameTimer % 60))); for (Player player : Bukkit.getOnlinePlayers()) { - player.sendActionBar(message); + player.sendActionBar(MessageUtil.translateColorCodes(raw)); } }, 0, 20); } diff --git a/src/main/java/me/david/util/AutoBroadcast.java b/src/main/java/me/david/util/AutoBroadcast.java index d4418a0..0894e82 100644 --- a/src/main/java/me/david/util/AutoBroadcast.java +++ b/src/main/java/me/david/util/AutoBroadcast.java @@ -1,6 +1,7 @@ package me.david.util; import me.david.EventCore; +import net.kyori.adventure.text.Component; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -30,11 +31,11 @@ public void run() { Bukkit.dispatchCommand(Bukkit.getConsoleSender(), EventCore.getInstance().getConfig().getString("AutoBroadcast.BroadcastCommand", "").replaceAll("%message%", message)); } else { for (Player player : Bukkit.getOnlinePlayers()) { - player.sendMessage(" "); - player.sendMessage(" "); + player.sendMessage(Component.empty()); + player.sendMessage(Component.empty()); player.sendMessage(MessageUtil.translateColorCodes(message)); - player.sendMessage(" "); - player.sendMessage(" "); + player.sendMessage(Component.empty()); + player.sendMessage(Component.empty()); } } diff --git a/src/main/java/me/david/util/MessageUtil.java b/src/main/java/me/david/util/MessageUtil.java index b0bbf57..f40c461 100644 --- a/src/main/java/me/david/util/MessageUtil.java +++ b/src/main/java/me/david/util/MessageUtil.java @@ -2,33 +2,55 @@ import lombok.experimental.UtilityClass; import me.david.EventCore; -import net.md_5.bungee.api.ChatColor; +import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.ComponentLike; +import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.jetbrains.annotations.NotNull; +import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; @UtilityClass public class MessageUtil { - public String get(@NotNull String key) { + public Component get(@NotNull String key) { return translateColorCodes(EventCore.getInstance().getConfig().getString(key, "")); } - public String getPrefix() { + public Component getPrefix() { return translateColorCodes(EventCore.getInstance().getConfig().getString("Messages.Prefix", "")); } - @SuppressWarnings("deprecation") - public String translateColorCodes(@NotNull String message) { + public @NotNull Component format(@NotNull String key, @NotNull Map replacements) { + Component component = get(key); + for (var entry : replacements.entrySet()) { + component = component.replaceText(builder -> builder + .matchLiteral(entry.getKey()) + .replacement(entry.getValue()) + ); + } + return component; + } + + @NotNull + public Component translateColorCodes(@NotNull String message) { + message = message.replaceAll("&([0-9a-fk-or])", "§$1"); Pattern pattern = Pattern.compile("&#([A-Fa-f0-9]{6})"); Matcher matcher = pattern.matcher(message); StringBuilder buffer = new StringBuilder(); + while (matcher.find()) { - matcher.appendReplacement(buffer, ChatColor.of("#" + matcher.group(1)).toString()); + matcher.appendReplacement(buffer, "§x" + + "§" + matcher.group(1).charAt(0) + + "§" + matcher.group(1).charAt(1) + + "§" + matcher.group(1).charAt(2) + + "§" + matcher.group(1).charAt(3) + + "§" + matcher.group(1).charAt(4) + + "§" + matcher.group(1).charAt(5)); } matcher.appendTail(buffer); - return ChatColor.translateAlternateColorCodes('&', buffer.toString()); + return LegacyComponentSerializer.legacySection().deserialize(buffer.toString()); } } From fe621d42c3086e33045e8bfdf25356eaf085c993 Mon Sep 17 00:00:00 2001 From: MioArchive Date: Wed, 28 Jan 2026 21:45:05 +0100 Subject: [PATCH 2/5] Organize imports and refactor unused or redundant declarations across multiple classes. --- src/main/java/me/david/command/KitCommand.java | 5 ++++- src/main/java/me/david/command/ReviveCommand.java | 2 +- src/main/java/me/david/listener/PlayerQuitListener.java | 3 --- src/main/java/me/david/util/Metrics.java | 6 +----- src/main/java/me/david/util/Scheduler.java | 4 ++-- src/main/java/me/david/util/UpdateChecker.java | 2 -- 6 files changed, 8 insertions(+), 14 deletions(-) diff --git a/src/main/java/me/david/command/KitCommand.java b/src/main/java/me/david/command/KitCommand.java index 50303fe..b50b50b 100644 --- a/src/main/java/me/david/command/KitCommand.java +++ b/src/main/java/me/david/command/KitCommand.java @@ -2,7 +2,10 @@ import dev.jorel.commandapi.CommandAPICommand; import me.david.EventCore; -import me.david.command.impl.kit.*; +import me.david.command.impl.kit.KitDeleteCommand; +import me.david.command.impl.kit.KitEnableCommand; +import me.david.command.impl.kit.KitGiveCommand; +import me.david.command.impl.kit.KitSaveCommand; import me.david.util.MessageUtil; public class KitCommand { diff --git a/src/main/java/me/david/command/ReviveCommand.java b/src/main/java/me/david/command/ReviveCommand.java index 7031682..e9efe5a 100644 --- a/src/main/java/me/david/command/ReviveCommand.java +++ b/src/main/java/me/david/command/ReviveCommand.java @@ -1,9 +1,9 @@ package me.david.command; +import dev.jorel.commandapi.CommandAPICommand; import dev.jorel.commandapi.arguments.ArgumentSuggestions; import dev.jorel.commandapi.arguments.StringArgument; import dev.jorel.commandapi.executors.CommandArguments; -import dev.jorel.commandapi.CommandAPICommand; import me.david.EventCore; import me.david.util.MessageUtil; import me.david.util.PlayerUtil; diff --git a/src/main/java/me/david/listener/PlayerQuitListener.java b/src/main/java/me/david/listener/PlayerQuitListener.java index 1ebb090..abfbf8e 100644 --- a/src/main/java/me/david/listener/PlayerQuitListener.java +++ b/src/main/java/me/david/listener/PlayerQuitListener.java @@ -3,16 +3,13 @@ import me.david.EventCore; import me.david.util.HostUtil; import me.david.util.MessageUtil; -import me.david.util.Scheduler; import net.kyori.adventure.text.Component; -import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerQuitEvent; import java.util.Map; -import java.util.Objects; public class PlayerQuitListener implements Listener { diff --git a/src/main/java/me/david/util/Metrics.java b/src/main/java/me/david/util/Metrics.java index 0534b3f..e8d84c8 100644 --- a/src/main/java/me/david/util/Metrics.java +++ b/src/main/java/me/david/util/Metrics.java @@ -18,11 +18,7 @@ import java.net.URL; import java.nio.charset.StandardCharsets; import java.util.*; -import java.util.concurrent.Callable; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.concurrent.ThreadFactory; -import java.util.concurrent.TimeUnit; +import java.util.concurrent.*; import java.util.logging.Level; import java.util.zip.GZIPOutputStream; diff --git a/src/main/java/me/david/util/Scheduler.java b/src/main/java/me/david/util/Scheduler.java index 8fe31c0..1778c70 100644 --- a/src/main/java/me/david/util/Scheduler.java +++ b/src/main/java/me/david/util/Scheduler.java @@ -3,10 +3,10 @@ import com.google.errorprone.annotations.CanIgnoreReturnValue; import lombok.Getter; import me.david.EventCore; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import org.bukkit.Bukkit; import org.bukkit.scheduler.BukkitTask; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.util.concurrent.TimeUnit; diff --git a/src/main/java/me/david/util/UpdateChecker.java b/src/main/java/me/david/util/UpdateChecker.java index 98e5654..4c5809e 100644 --- a/src/main/java/me/david/util/UpdateChecker.java +++ b/src/main/java/me/david/util/UpdateChecker.java @@ -1,14 +1,12 @@ package me.david.util; import com.google.gson.JsonParser; -import jdk.jfr.Event; import lombok.Getter; import me.david.EventCore; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.event.ClickEvent; import net.kyori.adventure.text.event.HoverEvent; import net.kyori.adventure.text.format.NamedTextColor; -import net.kyori.adventure.text.format.TextColor; import net.kyori.adventure.text.format.TextDecoration; import org.bukkit.Bukkit; import org.bukkit.plugin.java.JavaPlugin; From 08e46603bd7578accd44ea768c9db783d2e2b962 Mon Sep 17 00:00:00 2001 From: MioArchive Date: Wed, 28 Jan 2026 22:19:56 +0100 Subject: [PATCH 3/5] Refactoring messages to use Adventure Components - Second part. --- src/main/java/me/david/EventCore.java | 1 - src/main/java/me/david/command/EventCoreCommand.java | 7 ++++--- .../java/me/david/command/impl/core/AutoBorderCommand.java | 6 +++--- .../java/me/david/command/impl/core/ClearAllCommand.java | 5 ++++- .../java/me/david/command/impl/core/KickAllCommand.java | 3 ++- .../java/me/david/command/impl/core/KickSpecCommand.java | 3 ++- .../java/me/david/command/impl/core/ReloadCommand.java | 4 ++-- .../java/me/david/command/impl/core/SetSpawnCommand.java | 4 +++- src/main/java/me/david/util/UpdateChecker.java | 6 +++--- 9 files changed, 23 insertions(+), 16 deletions(-) diff --git a/src/main/java/me/david/EventCore.java b/src/main/java/me/david/EventCore.java index 36072f3..b808b48 100644 --- a/src/main/java/me/david/EventCore.java +++ b/src/main/java/me/david/EventCore.java @@ -43,7 +43,6 @@ public void onLoad() { } @Override - @SuppressWarnings("deprecation") public void onEnable() { saveDefaultConfig(); instance = this; diff --git a/src/main/java/me/david/command/EventCoreCommand.java b/src/main/java/me/david/command/EventCoreCommand.java index d54ed19..7153f34 100644 --- a/src/main/java/me/david/command/EventCoreCommand.java +++ b/src/main/java/me/david/command/EventCoreCommand.java @@ -5,6 +5,7 @@ import me.david.command.impl.core.*; import me.david.util.MessageUtil; import me.david.util.Scheduler; +import net.kyori.adventure.text.Component; public class EventCoreCommand { @@ -31,10 +32,10 @@ private void init() { new AutoBorderCommand(plugin).init() ) .executesPlayer((player, args) -> { - player.sendMessage(" "); + player.sendMessage(Component.empty()); player.sendMessage(MessageUtil.getPrefix() + "§7Running §aEventCore §7v" + EventCore.getInstance().getDescription().getVersion() + " §7on §a" + getSoftware()); player.sendMessage(MessageUtil.getPrefix() + "§7Download at §ahttps://github.com/VertrauterDavid"); - player.sendMessage(" "); + player.sendMessage(Component.empty()); player.sendMessage(MessageUtil.getPrefix() + "Usage: §c/event start"); player.sendMessage(MessageUtil.getPrefix() + "Usage: §c/event stop "); player.sendMessage(MessageUtil.getPrefix() + "Usage: §c/event drop"); @@ -45,7 +46,7 @@ private void init() { player.sendMessage(MessageUtil.getPrefix() + "Usage: §c/event kickspec"); player.sendMessage(MessageUtil.getPrefix() + "Usage: §c/event kickall"); player.sendMessage(MessageUtil.getPrefix() + "Usage: §c/event clearall"); - player.sendMessage(" "); + player.sendMessage(Component.empty()); }) .register(); } diff --git a/src/main/java/me/david/command/impl/core/AutoBorderCommand.java b/src/main/java/me/david/command/impl/core/AutoBorderCommand.java index 8c6191d..a56bf73 100644 --- a/src/main/java/me/david/command/impl/core/AutoBorderCommand.java +++ b/src/main/java/me/david/command/impl/core/AutoBorderCommand.java @@ -29,10 +29,10 @@ private void onCommand(Player player, CommandArguments args) { if (!state) { BorderUtil.lastOptimal = BorderUtil.borderDefault; - player.sendMessage(MessageUtil.getPrefix() + "AutoBorder has been §cdeactivated!"); + player.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("AutoBorder has been §cdeactivated!"))); } else { - player.sendMessage(MessageUtil.getPrefix() + "AutoBorder has been §aactivated!"); + player.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("AutoBorder has been §aactivated!"))); } } -} +} \ No newline at end of file diff --git a/src/main/java/me/david/command/impl/core/ClearAllCommand.java b/src/main/java/me/david/command/impl/core/ClearAllCommand.java index c63a782..fe6886b 100644 --- a/src/main/java/me/david/command/impl/core/ClearAllCommand.java +++ b/src/main/java/me/david/command/impl/core/ClearAllCommand.java @@ -5,6 +5,7 @@ import me.david.EventCore; import me.david.util.MessageUtil; import me.david.util.PlayerUtil; +import net.kyori.adventure.text.Component; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @@ -30,6 +31,8 @@ private void onCommand(CommandSender sender, CommandArguments args) { amount++; } - sender.sendMessage(MessageUtil.getPrefix() + "You successfully cleared %amount% players!".replaceAll("%amount%", String.valueOf(amount))); + int result = amount; + + sender.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("You successfully cleared %amount% players!").replaceText(b -> b.matchLiteral("%amount%").replacement(Component.text(String.valueOf(result)))))); } } \ No newline at end of file diff --git a/src/main/java/me/david/command/impl/core/KickAllCommand.java b/src/main/java/me/david/command/impl/core/KickAllCommand.java index bf0ba64..a2106b3 100644 --- a/src/main/java/me/david/command/impl/core/KickAllCommand.java +++ b/src/main/java/me/david/command/impl/core/KickAllCommand.java @@ -32,6 +32,7 @@ private void onCommand(CommandSender sender, CommandArguments args) { } } - sender.sendMessage(MessageUtil.getPrefix() + "You successfully kicked %amount% players!".replaceAll("%amount%", String.valueOf(amount))); + int result = amount; + sender.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("You successfully kicked %amount% players!").replaceText(b -> b.matchLiteral("%amount%").replacement(Component.text(String.valueOf(result)))))); } } \ No newline at end of file diff --git a/src/main/java/me/david/command/impl/core/KickSpecCommand.java b/src/main/java/me/david/command/impl/core/KickSpecCommand.java index 79d6348..2d69065 100644 --- a/src/main/java/me/david/command/impl/core/KickSpecCommand.java +++ b/src/main/java/me/david/command/impl/core/KickSpecCommand.java @@ -33,6 +33,7 @@ private void onCommand(CommandSender sender, CommandArguments args) { } } - sender.sendMessage(MessageUtil.getPrefix() + "You successfully kicked %amount% players!".replaceAll("%amount%", String.valueOf(amount))); + int result = amount; + sender.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("You successfully kicked %amount% players!").replaceText(b -> b.matchLiteral("%amount%").replacement(Component.text(String.valueOf(result)))))); } } \ No newline at end of file diff --git a/src/main/java/me/david/command/impl/core/ReloadCommand.java b/src/main/java/me/david/command/impl/core/ReloadCommand.java index fe1a8cf..9f5db7a 100644 --- a/src/main/java/me/david/command/impl/core/ReloadCommand.java +++ b/src/main/java/me/david/command/impl/core/ReloadCommand.java @@ -4,6 +4,7 @@ import dev.jorel.commandapi.executors.CommandArguments; import me.david.EventCore; import me.david.util.MessageUtil; +import net.kyori.adventure.text.Component; import org.bukkit.command.CommandSender; public class ReloadCommand { @@ -24,7 +25,6 @@ private void onCommand(CommandSender sender, CommandArguments args) { EventCore.getInstance().reloadConfig(); final double reloadMS = System.currentTimeMillis() - currentMS; - sender.sendMessage(MessageUtil.getPrefix() + "§aYou successfully reloaded the config within " + reloadMS + "ms!"); - + sender.sendMessage(MessageUtil.getPrefix().append(MessageUtil.translateColorCodes("§aYou successfully reloaded the config within %ms%ms!").replaceText(b -> b.matchLiteral("%ms%").replacement(Component.text(String.valueOf(reloadMS)))))); } } \ No newline at end of file diff --git a/src/main/java/me/david/command/impl/core/SetSpawnCommand.java b/src/main/java/me/david/command/impl/core/SetSpawnCommand.java index 4e4b1bb..fc0a408 100644 --- a/src/main/java/me/david/command/impl/core/SetSpawnCommand.java +++ b/src/main/java/me/david/command/impl/core/SetSpawnCommand.java @@ -4,6 +4,8 @@ import dev.jorel.commandapi.executors.CommandArguments; import me.david.EventCore; import me.david.util.MessageUtil; +import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.format.NamedTextColor; import org.bukkit.Sound; import org.bukkit.entity.Player; @@ -23,7 +25,7 @@ public CommandAPICommand init() { private void onCommand(Player sender, CommandArguments args) { plugin.getMapManager().saveSpawnLocation(sender); - sender.sendMessage(MessageUtil.getPrefix() + "§aLocation saved!"); + sender.sendMessage(MessageUtil.getPrefix().append(Component.text("Location saved!").color(NamedTextColor.GREEN))); sender.playSound(sender.getLocation(), Sound.ENTITY_PLAYER_LEVELUP, 5, 5); } } \ No newline at end of file diff --git a/src/main/java/me/david/util/UpdateChecker.java b/src/main/java/me/david/util/UpdateChecker.java index 4c5809e..7145a19 100644 --- a/src/main/java/me/david/util/UpdateChecker.java +++ b/src/main/java/me/david/util/UpdateChecker.java @@ -71,9 +71,9 @@ private void log() { if (hasUpdate) { EventCore.LOGGER.info(" "); EventCore.LOGGER.info("New version available for EventCore!"); - EventCore.LOGGER.info("Current: " + currentVer); - EventCore.LOGGER.info("Latest: " + latestVer); - EventCore.LOGGER.info("Download: " + downloadUrl); + EventCore.LOGGER.info("Current: {}", currentVer); + EventCore.LOGGER.info("Latest: {}", latestVer); + EventCore.LOGGER.info("Download: {}", downloadUrl); EventCore.LOGGER.info(" "); } else { EventCore.LOGGER.info("No updates available for EventCore"); From 4409a531ef5167f053336e2d2ede64f436c5cb34 Mon Sep 17 00:00:00 2001 From: MioArchive Date: Wed, 28 Jan 2026 22:20:03 +0100 Subject: [PATCH 4/5] Bump version to 2.3 in plugin.yml and build.gradle.kts --- build.gradle.kts | 2 +- src/main/resources/plugin.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index e878f30..e592971 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,7 +6,7 @@ plugins { } group = "me.david" -version = "2.2" +version = "2.3" description = "Event Server System with tons of useful commands and features" repositories { diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index abb4a54..7ea80ee 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,5 +1,5 @@ name: EventCore -version: 2.2 +version: 2.3 api-version: 1.21 main: me.david.EventCore author: VertrauterDavid, JavaMio From 29a1c5e945b56f42660edfbf0797c40b30838626 Mon Sep 17 00:00:00 2001 From: MioArchive Date: Sat, 31 Jan 2026 22:25:21 +0100 Subject: [PATCH 5/5] Revert "Bump version to 2.3 in plugin.yml and build.gradle.kts" This reverts commit 4409a531ef5167f053336e2d2ede64f436c5cb34. --- build.gradle.kts | 2 +- src/main/resources/plugin.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index e592971..e878f30 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,7 +6,7 @@ plugins { } group = "me.david" -version = "2.3" +version = "2.2" description = "Event Server System with tons of useful commands and features" repositories { diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 7ea80ee..abb4a54 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,5 +1,5 @@ name: EventCore -version: 2.3 +version: 2.2 api-version: 1.21 main: me.david.EventCore author: VertrauterDavid, JavaMio