@@ -3,8 +3,9 @@ package io.github.grassproject.framework.commands
33import io.github.grassproject.framework.GPFrameworkPlugin
44import io.github.grassproject.framework.core.GPFrameworkEngine
55import io.github.grassproject.framework.command.GPCommand
6+ import io.github.grassproject.framework.message.GPFTranslate
7+ import io.github.grassproject.framework.util.McLogsUtil
68import io.github.grassproject.framework.util.component.toMiniMessage
7- import io.github.grassproject.framework.utils.translate
89import org.bukkit.command.CommandSender
910
1011class GPFCommand : GPCommand <GPFrameworkPlugin >(
@@ -14,34 +15,70 @@ class GPFCommand: GPCommand<GPFrameworkPlugin>(
1415) {
1516 private val prefix = " <#96f19c>GPF</#96f19c><#989c99> | </#989c99>" .toMiniMessage()
1617 override fun execute (sender : CommandSender , args : Array <out String >): Boolean {
17- if (args.size == 1 ) {
18- if (args[0 ]== " info" ) {
19- translate.fromList(
20- " command.gpf.info" , mapOf (
21- " server" to sender.server.name,
22- " version" to sender.server.version,
23- " nms" to sender.server.bukkitVersion,
24- " name" to plugin.name,
25- " ver" to plugin.version,
26- " list" to GPFrameworkEngine .listPlugins().joinToString(" , " )
27- )
28- ).forEach { sender.sendMessage(prefix.append { it.toMiniMessage() }) }
29- }
30-
31- if (args[0 ]== " " ) {
32-
33- }
18+ if (args.isEmpty()) return true
19+
20+ when (args[0 ].lowercase()) {
21+ " info" -> info(sender)
22+ " dump" -> dump(sender)
3423 }
24+
25+ // if (args.size == 1) {
26+ // if (args[0]=="info") {
27+ // GPFTranslate.fromList(
28+ // "command.gpf.info", mapOf(
29+ // "server" to sender.server.name,
30+ // "version" to sender.server.version,
31+ // "nms" to sender.server.bukkitVersion,
32+ // "name" to plugin.name,
33+ // "ver" to plugin.version,
34+ // "list" to GPFrameworkEngine.listPlugins().joinToString(", ")
35+ // )
36+ // ).forEach { sender.sendMessage(prefix.append { it.toMiniMessage() }) }
37+ // }
38+ //
39+ // if (args[0]=="dump") {
40+ // val logFile = File("logs/latest.log")
41+ // if (!logFile.exists()) {
42+ // sender.sendMessage(prefix.append { "<red>로그 파일을 찾을 수 없습니다.</red>".toMiniMessage() })
43+ // return true
44+ // }
45+ // }
46+ //
47+ // if (args[0]=="") {}
48+ // }
3549 return true
3650 }
3751
3852 override fun tabComplete (sender : CommandSender , args : Array <out String >): List <String > {
3953 val tab = mutableListOf<String >()
40- if (args.size== 1 ) {
41- tab.addAll(arrayOf(" info" ))
54+ if (args.size == 1 ) {
55+ tab.addAll(arrayOf(" info" , " dump " ))
4256 }
4357 return tab
4458 }
59+
60+ private fun info (sender : CommandSender ) {
61+ GPFTranslate .fromList(
62+ " command.gpf.info" ,
63+ mapOf (
64+ " server" to sender.server.name,
65+ " version" to sender.server.version,
66+ " nms" to sender.server.bukkitVersion,
67+ " name" to plugin.name,
68+ " ver" to plugin.version,
69+ " list" to GPFrameworkEngine .listPlugins().joinToString(" , " )
70+ )
71+ ).forEach { sender.sendMessage(prefix.append { it.toMiniMessage() }) }
72+ }
73+
74+ private fun dump (sender : CommandSender ) {
75+ val link = McLogsUtil .uploadLogs()
76+ val message = if (link != null )
77+ " <green>Log dump successful</green> <gray>$link </gray>"
78+ else " <red>Log dump failed</red>"
79+
80+ sender.sendMessage(prefix.append { message.toMiniMessage() })
81+ }
4582//
4683// sorted()
4784// fun listPluginsColored(): List<String> {
0 commit comments