✨ First time join
This commit is contained in:
		@@ -1,6 +1,7 @@
 | 
			
		||||
package dev.solsynth.snConnect.listeners
 | 
			
		||||
 | 
			
		||||
import dev.solsynth.snConnect.services.SnMessageService
 | 
			
		||||
import org.bukkit.Bukkit
 | 
			
		||||
import org.bukkit.entity.Player
 | 
			
		||||
import org.bukkit.event.EventHandler
 | 
			
		||||
import org.bukkit.event.EventPriority
 | 
			
		||||
@@ -16,16 +17,16 @@ class SnChatListener(
 | 
			
		||||
    private val destinationChatId: String,
 | 
			
		||||
    private val messages: Map<String, String>
 | 
			
		||||
) : Listener {
 | 
			
		||||
 | 
			
		||||
    @EventHandler(priority = EventPriority.MONITOR)
 | 
			
		||||
    fun onPlayerChat(event: AsyncPlayerChatEvent) {
 | 
			
		||||
        val message = "${event.player.name}: ${event.message}"
 | 
			
		||||
        messageService.sendMessage(destinationChatId, message)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @EventHandler(priority = EventPriority.MONITOR)
 | 
			
		||||
    @Suppress("SENSELESS_COMPARISON")
 | 
			
		||||
    @EventHandler()
 | 
			
		||||
    fun onPlayerJoin(event: PlayerJoinEvent) {
 | 
			
		||||
        val firstTime = event.player.hasPlayedBefore();
 | 
			
		||||
        val firstTime = Bukkit.getOfflinePlayer(event.player.uniqueId) == null;
 | 
			
		||||
        val templateKey = if (!firstTime) "join" else "joinFirst";
 | 
			
		||||
        val template = messages[templateKey]
 | 
			
		||||
            ?: if (!firstTime) "➡️ {player} joined the game." else "➡️ {player} first time joined the game."
 | 
			
		||||
@@ -33,14 +34,14 @@ class SnChatListener(
 | 
			
		||||
        messageService.sendMessage(destinationChatId, message)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @EventHandler(priority = EventPriority.MONITOR)
 | 
			
		||||
    @EventHandler()
 | 
			
		||||
    fun onPlayerQuit(event: PlayerQuitEvent) {
 | 
			
		||||
        val template = messages["quit"] ?: "⬅️ {player} left the game."
 | 
			
		||||
        val message = template.replace("{player}", event.player.name)
 | 
			
		||||
        messageService.sendMessage(destinationChatId, message)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @EventHandler(priority = EventPriority.MONITOR)
 | 
			
		||||
    @EventHandler()
 | 
			
		||||
    fun onPlayerDeath(event: PlayerDeathEvent) {
 | 
			
		||||
        val template = messages["death"] ?: "💀 {player} {message}"
 | 
			
		||||
        val message = template.replace("{player}", event.entity.name).replace("{message}", event.deathMessage ?: "")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user