Skip to content

Commit 8b1875b

Browse files
committed
Fixed bugs.
1 parent 6df92d5 commit 8b1875b

File tree

6 files changed

+40
-24
lines changed

6 files changed

+40
-24
lines changed

common/src/main/kotlin/me/scoretwo/fastscript/FastScript.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ class FastScript(val plugin: ScriptPlugin) {
6363
plugin.dataFolder.mkdirs()
6464
}
6565
val startTime = System.currentTimeMillis()
66+
assist = Assist()
6667
settings = SettingConfig()
6768
languages = LanguageManager()
6869
plugin.server.console.sendMessage(FormatHeader.TREE, "Loaded config and language system.§8(${System.currentTimeMillis() - startTime}ms)")
@@ -80,7 +81,8 @@ class FastScript(val plugin: ScriptPlugin) {
8081
throw Throwable(languages["DOWNLOAD-LIBS-FAILED"])
8182
}
8283
if (processResult.type == ProcessResultType.SUCCESS) {
83-
plugin.server.console.sendMessage(FormatHeader.INFO, languages["DOWNLOADED-LIB"].setPlaceholder(mapOf(
84+
val format = if (stats == ScriptPluginState.RUNNING) FormatHeader.INFO else FormatHeader.TREE
85+
plugin.server.console.sendMessage(format, languages["DOWNLOADED-LIB"].setPlaceholder(mapOf(
8486
"lib_name" to "${artifact.artifactId}-${artifact.version}.jar",
8587
"millisecond" to "${System.currentTimeMillis() - start}"
8688
)))
@@ -102,7 +104,6 @@ class FastScript(val plugin: ScriptPlugin) {
102104
ExecUtils.execPeriod(ExecType.Initialized, "CommandNexus") {
103105
commandNexus = FSCommandNexus()
104106
}
105-
assist = Assist()
106107
}
107108

108109
fun reloadLanguage() {

common/src/main/kotlin/me/scoretwo/fastscript/api/utils/maven/MavenArtifact.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ class MavenArtifact {
6161
try {
6262
val url = toURL(repository)
6363
val folder = File(plugin.dataFolder, "lib")
64-
val target = File(folder, url.substringAfterLast("/"))
65-
if (target.exists()) {
64+
val file = File(folder, url.substringAfterLast("/"))
65+
if (file.exists()) {
6666
return ProcessResult(ProcessResultType.OTHER, "exists")
6767
}
6868

@@ -78,14 +78,14 @@ class MavenArtifact {
7878
folder.mkdir()
7979
}
8080

81-
val fileOutputStream = FileOutputStream(target)
81+
val fileOutputStream = FileOutputStream(file)
8282
fileOutputStream.write(bytes)
8383
fileOutputStream.close()
8484
inputStream.close()
8585

8686
val method = URLClassLoader::class.java.getDeclaredMethod("addURL", URL::class.java)
8787
method.isAccessible = true
88-
method.invoke(plugin.pluginClassLoader, target.toURI().toURL())
88+
method.invoke(plugin.pluginClassLoader, file.toURI().toURL())
8989
return ProcessResult(ProcessResultType.SUCCESS)
9090
} catch (e: Throwable) {
9191
e.printStackTrace()

common/src/main/kotlin/me/scoretwo/fastscript/command/FSCommandNexus.kt

Lines changed: 25 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,15 @@ package me.scoretwo.fastscript.command
33
import me.scoretwo.fastscript.FastScript
44
import me.scoretwo.fastscript.command.commands.*
55
import me.scoretwo.fastscript.languages
6+
import me.scoretwo.fastscript.plugin
67
import me.scoretwo.fastscript.setPlaceholder
8+
import me.scoretwo.fastscript.utils.assist
79
import me.scoretwo.utils.command.CommandBuilder
810
import me.scoretwo.utils.command.CommandNexus
11+
import me.scoretwo.utils.command.SendLimit
912
import me.scoretwo.utils.command.SubCommand
1013
import me.scoretwo.utils.command.executor.Executors
14+
import me.scoretwo.utils.command.helper.DefaultHelpGenerator
1115
import me.scoretwo.utils.command.helper.HelpGenerator
1216
import me.scoretwo.utils.command.language.CommandLanguage
1317
import me.scoretwo.utils.sender.GlobalSender
@@ -16,7 +20,23 @@ import net.md_5.bungee.api.chat.HoverEvent
1620
import net.md_5.bungee.api.chat.TextComponent
1721
import net.md_5.bungee.api.chat.hover.content.Text
1822

19-
class FSCommandNexus: CommandNexus(FastScript.instance.plugin, arrayOf("FastScript", "script", "fs")) {
23+
class FSCommandNexus: CommandNexus(
24+
FastScript.instance.plugin,
25+
arrayOf("FastScript", "script", "fs"),
26+
SendLimit.ALL,
27+
object : CommandLanguage {
28+
override val COMMAND_NO_PERMISSION = languages["COMMAND-NEXUS.TIPS.NO-PERMISSION"]
29+
override val COMMAND_ONLY_CONSOLE = languages["COMMAND-NEXUS.TIPS.ONLY-CONSOLE"]
30+
override val COMMAND_ONLY_PLAYER = languages["COMMAND-NEXUS.TIPS.ONLY-PLAYER"]
31+
override val COMMAND_UNKNOWN_USAGE = languages["COMMAND-NEXUS.TIPS.UNKNOWN-USAGE"]
32+
},
33+
try {
34+
helpGenerator
35+
} catch (t: Throwable) {
36+
safeMode = true
37+
DefaultHelpGenerator(plugin)
38+
}
39+
) {
2040

2141
init {
2242
register(ScriptCommand())
@@ -27,17 +47,11 @@ class FSCommandNexus: CommandNexus(FastScript.instance.plugin, arrayOf("FastScri
2747
register(DebugCommand())
2848
}
2949

30-
var safeMode = false
3150

32-
override var language = object : CommandLanguage {
33-
override val COMMAND_NO_PERMISSION = languages["COMMAND-NEXUS.TIPS.NO-PERMISSION"]
34-
override val COMMAND_ONLY_CONSOLE = languages["COMMAND-NEXUS.TIPS.ONLY-CONSOLE"]
35-
override val COMMAND_ONLY_PLAYER = languages["COMMAND-NEXUS.TIPS.ONLY-PLAYER"]
36-
override val COMMAND_UNKNOWN_USAGE = languages["COMMAND-NEXUS.TIPS.UNKNOWN-USAGE"]
37-
}
38-
// copy from commons-command DefaultHelpgeneration
39-
override var helpGenerator = let { nexus ->
40-
try {
51+
companion object {
52+
var safeMode = false
53+
54+
val helpGenerator =
4155
object : HelpGenerator {
4256
override fun translateTexts(command: SubCommand, parents: MutableList<String>, args: MutableList<String>): MutableList<MutableList<Array<TextComponent>>> {
4357
val texts = mutableListOf<Array<TextComponent>>()
@@ -106,10 +120,6 @@ class FSCommandNexus: CommandNexus(FastScript.instance.plugin, arrayOf("FastScri
106120
)
107121

108122
}
109-
} catch (t: Throwable) {
110-
safeMode = true
111-
super.helpGenerator
112-
}
113123
}
114124

115125
}

common/src/main/kotlin/me/scoretwo/fastscript/command/SimpleCommand.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
package me.scoretwo.fastscript.command
22

3+
import me.scoretwo.fastscript.FastScript
34
import me.scoretwo.fastscript.plugin
5+
import me.scoretwo.utils.command.CommandBuilder
46
import me.scoretwo.utils.command.SendLimit
57
import me.scoretwo.utils.command.SubCommand
8+
import me.scoretwo.utils.command.helper.HelpGenerator
69

710
/**
811
* @author Score2
@@ -12,6 +15,6 @@ import me.scoretwo.utils.command.SubCommand
1215
*/
1316
abstract class SimpleCommand(alias: Array<String>, limit: SendLimit = SendLimit.ALL): SubCommand(plugin, alias, limit) {
1417

15-
18+
override var helpGenerator = FSCommandNexus.helpGenerator
1619

1720
}

common/src/main/kotlin/me/scoretwo/fastscript/command/commands/ExpansionCommand.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package me.scoretwo.fastscript.command.commands
33
import me.scoretwo.fastscript.FastScript
44
import me.scoretwo.fastscript.api.format.FormatHeader
55
import me.scoretwo.fastscript.api.script.custom.CustomScript
6+
import me.scoretwo.fastscript.command.FSCommandNexus
67
import me.scoretwo.fastscript.command.SimpleCommand
78
import me.scoretwo.fastscript.languages
89
import me.scoretwo.fastscript.sendMessage
@@ -98,7 +99,7 @@ class ExpansionCommand: SimpleCommand(arrayOf("expansion")) {
9899
)))
99100
}
100101
sender.sendMessage(TextComponent(" "), TextComponent("§7/$displayParents §fhelp").also {
101-
if (FastScript.instance.commandNexus.safeMode) return@also
102+
if (FSCommandNexus.safeMode) return@also
102103
it.hoverEvent = HoverEvent(HoverEvent.Action.SHOW_TEXT, Text(languages["COMMAND-NEXUS.HELPER.CLICK-INSERT-COMMAND"].setPlaceholder(
103104
mapOf("command" to "$displayParents help")
104105
)))

common/src/main/kotlin/me/scoretwo/fastscript/command/commands/ScriptCommand.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package me.scoretwo.fastscript.command.commands
22

33
import me.scoretwo.fastscript.FastScript
44
import me.scoretwo.fastscript.api.format.FormatHeader
5+
import me.scoretwo.fastscript.command.FSCommandNexus
56
import me.scoretwo.fastscript.command.SimpleCommand
67
import me.scoretwo.fastscript.languages
78
import me.scoretwo.fastscript.sendMessage
@@ -193,7 +194,7 @@ class ScriptCommand: SimpleCommand(arrayOf("script")) {
193194
}
194195

195196
sender.sendMessage(TextComponent(" "), TextComponent("§7/$displayParents §fhelp").also {
196-
if (FastScript.instance.commandNexus.safeMode) return@also
197+
if (FSCommandNexus.safeMode) return@also
197198
it.hoverEvent = HoverEvent(HoverEvent.Action.SHOW_TEXT, Text(languages["COMMAND-NEXUS.HELPER.CLICK-INSERT-COMMAND"].setPlaceholder(
198199
mapOf("command" to "$displayParents help")
199200
)))

0 commit comments

Comments
 (0)