Added first join messages

This commit is contained in:
2023-06-20 00:35:46 +02:00
parent d8f064e7ca
commit f3c7a312c0
4 changed files with 20 additions and 1 deletions
@@ -41,7 +41,7 @@ public class ChatPlugin extends JavaPlugin {
chatHandler = new ChatHandler();
DatabaseConnection.initialize();
serverConfig = new ServerConfig(Bukkit.getServerName());
registerListener(new PlayerListener(), new ChatListener(), new BookListener());
registerListener(new PlayerListener(serverConfig), new ChatListener(), new BookListener());
if(serverConfig.GLOBALCHAT) {
registerCommand("globalchat", new GlobalChat());
registerCommand("toggleglobalchat", new ToggleGlobalChat());
@@ -1,5 +1,7 @@
package com.alttd.chat.listeners;
import com.alttd.chat.config.Config;
import com.alttd.chat.config.ServerConfig;
import com.alttd.chat.database.Queries;
import com.alttd.chat.managers.ChatUserManager;
import com.alttd.chat.managers.RegexManager;
@@ -9,11 +11,14 @@ import com.alttd.chat.objects.Toggleable;
import com.alttd.chat.util.GalaxyUtility;
import com.alttd.chat.util.Utility;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.SignChangeEvent;
import org.bukkit.event.player.AsyncPlayerPreLoginEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
@@ -21,6 +26,12 @@ import java.util.UUID;
public class PlayerListener implements Listener {
private final ServerConfig serverConfig;
public PlayerListener(ServerConfig serverConfig) {
this.serverConfig = serverConfig;
}
@EventHandler
private void onPlayerLogin(PlayerJoinEvent event) {
Player player = event.getPlayer();
@@ -30,6 +41,10 @@ public class PlayerListener implements Listener {
ChatUser user = ChatUserManager.getChatUser(uuid);
if(user != null) return;
if (serverConfig.FIRST_JOIN_MESSAGES && !player.hasPlayedBefore()) {
player.getServer().sendMessage(MiniMessage.miniMessage().deserialize(Config.FIRST_JOIN, Placeholder.parsed("player", player.getName())));
}
// user failed to load - create a new one
ChatUser chatUser = new ChatUser(uuid, -1, null);
ChatUserManager.addUser(chatUser);