summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/core/CommandContext.kt16
-rw-r--r--platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/handler/DirectMessageHandler.kt5
2 files changed, 20 insertions, 1 deletions
diff --git a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/core/CommandContext.kt b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/core/CommandContext.kt
index a880443..7f1bb15 100644
--- a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/core/CommandContext.kt
+++ b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/core/CommandContext.kt
@@ -2,6 +2,7 @@ package dev.m1sk9.lunaticChat.paper.command.core
import io.papermc.paper.command.brigadier.CommandSourceStack
import net.kyori.adventure.text.Component
+import net.kyori.adventure.text.event.ClickEvent
import org.bukkit.command.CommandSender
import org.bukkit.entity.Player
@@ -42,6 +43,21 @@ class CommandContext(
}
/**
+ * Sends a message with a click event to the command sender.
+ *
+ * @param message The message component to send
+ * @param event The click event to attach to the message
+ */
+ fun replyWithEvent(
+ message: Component,
+ event: ClickEvent,
+ ) {
+ message
+ .clickEvent(event)
+ .let { sender.sendMessage(it) }
+ }
+
+ /**
* Sends a plain text message to the command sender.
*
* @param message The plain text message to send
diff --git a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/handler/DirectMessageHandler.kt b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/handler/DirectMessageHandler.kt
index dfa1096..0a28a2d 100644
--- a/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/handler/DirectMessageHandler.kt
+++ b/platform-paper/src/main/kotlin/dev/m1sk9/lunaticChat/paper/command/handler/DirectMessageHandler.kt
@@ -3,6 +3,7 @@ package dev.m1sk9.lunaticChat.paper.command.handler
import dev.m1sk9.lunaticChat.paper.common.SpyPermissionManager
import dev.m1sk9.lunaticChat.paper.config.ConfigManager
import net.kyori.adventure.text.Component
+import net.kyori.adventure.text.event.ClickEvent
import org.bukkit.Bukkit
import org.bukkit.entity.Player
import java.util.UUID
@@ -95,6 +96,8 @@ class DirectMessageHandler {
.replace("{recipient}", recipientName)
.replace("{message}", message)
- return Component.text(text)
+ return Component
+ .text(text)
+ .clickEvent(ClickEvent.suggestCommand("/tell $senderName "))
}
}