diff --git a/build.gradle.kts b/build.gradle.kts index 41f983a8..e3c2a0d7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -72,7 +72,7 @@ subprojects { disableOnSkippedVersion = false } version { - taboolib = "6.2.4-5902762" + taboolib = "6.2.4-8d51195" coroutines = null } } diff --git a/gradle.properties b/gradle.properties index 7f7869f0..cd196cc0 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,2 +1,2 @@ group=me.arasple.mc.trmenu -version=3.9.16 \ No newline at end of file +version=3.9.17 \ No newline at end of file diff --git a/plugin/src/main/kotlin/trplugins/menu/api/action/impl/send/CommandOp.kt b/plugin/src/main/kotlin/trplugins/menu/api/action/impl/send/CommandOp.kt index 78d85060..b96328c0 100644 --- a/plugin/src/main/kotlin/trplugins/menu/api/action/impl/send/CommandOp.kt +++ b/plugin/src/main/kotlin/trplugins/menu/api/action/impl/send/CommandOp.kt @@ -4,6 +4,7 @@ import org.bukkit.entity.Player import taboolib.common.platform.ProxyPlayer import taboolib.common.platform.function.submit import taboolib.expansion.dispatchCommandAsOp +import taboolib.platform.util.runTask import trplugins.menu.api.action.ActionHandle import trplugins.menu.api.action.base.ActionBase import trplugins.menu.api.action.base.ActionContents @@ -22,15 +23,16 @@ class CommandOp(handle: ActionHandle) : ActionBase(handle) { override fun onExecute(contents: ActionContents, player: ProxyPlayer, placeholderPlayer: ProxyPlayer) { val fakeOp = player.session().menu?.settings?.commandFakeOp ?: true + val bukkitPlayer = player.cast() contents.stringContent().parseContentSplited(placeholderPlayer, ";").forEach { - submit(async = false) { + bukkitPlayer.location.runTask( { if (fakeOp) { - player.cast().dispatchCommandAsOp(it) + bukkitPlayer.dispatchCommandAsOp(it) } else { player.isOp.let { isOp -> player.isOp = true try { - player.performCommand(it) + bukkitPlayer.performCommand(it) } catch (e: Throwable) { e.printStackTrace() } finally { @@ -38,7 +40,7 @@ class CommandOp(handle: ActionHandle) : ActionBase(handle) { } } } - } + }) } } diff --git a/plugin/src/main/kotlin/trplugins/menu/module/internal/script/js/NashornAgent.kt b/plugin/src/main/kotlin/trplugins/menu/module/internal/script/js/NashornAgent.kt index d57bd07a..e66fed49 100644 --- a/plugin/src/main/kotlin/trplugins/menu/module/internal/script/js/NashornAgent.kt +++ b/plugin/src/main/kotlin/trplugins/menu/module/internal/script/js/NashornAgent.kt @@ -1,11 +1,36 @@ package trplugins.menu.module.internal.script.js import com.google.common.collect.Maps +import taboolib.common.env.RuntimeDependencies +import taboolib.common.env.RuntimeDependency import taboolib.common5.compileJS import trplugins.menu.util.EvalResult import javax.script.CompiledScript import javax.script.SimpleScriptContext +@RuntimeDependencies( + RuntimeDependency( + "!org.ow2.asm:asm:9.7.1", + test = "!jdk.nashorn.api.scripting.NashornScriptEngineFactory" + ), + RuntimeDependency( + "!org.ow2.asm:asm-commons:9.7.1", + test = "!jdk.nashorn.api.scripting.NashornScriptEngineFactory" + ), + RuntimeDependency( + "!org.ow2.asm:asm-tree:9.7.1", + test = "!jdk.nashorn.api.scripting.NashornScriptEngineFactory" + ), + RuntimeDependency( + "!org.ow2.asm:asm-util:9.7.1", + test = "!jdk.nashorn.api.scripting.NashornScriptEngineFactory" + ), + RuntimeDependency( + "!org.ow2.asm:asm-analysis:9.7.1", + test = "!jdk.nashorn.api.scripting.NashornScriptEngineFactory" + ) +) + object NashornAgent { private val compiledScripts = Maps.newConcurrentMap(); fun preCompile(script: String): CompiledScript {