From e446002567b816267a80fadf65cfd4085ee65f6e Mon Sep 17 00:00:00 2001 From: Taah Date: Mon, 21 Feb 2022 17:26:50 -0800 Subject: [PATCH] - Add samples to config for motd --- .../plex/listener/impl/ServerListener.java | 23 ++++++++++++++----- src/main/resources/config.yml | 2 ++ 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/src/main/java/dev/plex/listener/impl/ServerListener.java b/src/main/java/dev/plex/listener/impl/ServerListener.java index d5a3c4e..4be0b13 100644 --- a/src/main/java/dev/plex/listener/impl/ServerListener.java +++ b/src/main/java/dev/plex/listener/impl/ServerListener.java @@ -1,15 +1,19 @@ package dev.plex.listener.impl; +import com.destroystokyo.paper.event.server.PaperServerListPingEvent; import dev.plex.listener.PlexListener; import dev.plex.util.PlexUtils; +import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.bukkit.Bukkit; import org.bukkit.event.EventHandler; -import org.bukkit.event.server.ServerListPingEvent; + +import java.util.List; +import java.util.stream.Collectors; public class ServerListener extends PlexListener { @EventHandler - public void onServerPing(ServerListPingEvent event) + public void onServerPing(PaperServerListPingEvent event) { String baseMotd = plugin.config.getString("server.motd"); baseMotd = baseMotd.replace("\\n", "\n"); @@ -22,11 +26,18 @@ public class ServerListener extends PlexListener { motd.append(PlexUtils.randomChatColor()).append(word).append(" "); } - event.setMotd(motd.toString().trim()); - } - else + event.motd(LegacyComponentSerializer.legacyAmpersand().deserialize(motd.toString().trim())); + } else { - event.setMotd(baseMotd.trim()); + event.motd(LegacyComponentSerializer.legacyAmpersand().deserialize(baseMotd.trim())); + } + if (plugin.config.contains("server.sample")) + { + List samples = plugin.config.getStringList("server.sample"); + if (!samples.isEmpty()) + { + event.getPlayerSample().addAll(samples.stream().map(string -> string.replace("&", "ยง")).map(Bukkit::createProfile).collect(Collectors.toList())); + } } } } diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 448ead5..051ec74 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -5,6 +5,8 @@ server: name: "Plexus" motd: "%servername% - Minecraft %mcversion%" colorize_motd: true + sample: + - "&cForums: https://forum.plex.us.org" # Ban message is customized in the messages.yml file. The URL to appeal at is below. banning: