From 0ead2f23eb0a0652e44064b0b7450cc0932f944c Mon Sep 17 00:00:00 2001 From: Xiaro <62033805+Xiaro@users.noreply.github.com> Date: Sun, 29 Nov 2020 15:11:14 -0500 Subject: [PATCH] [enhancement] Disable AutoMine on Baritone cancel command --- .../kami/module/modules/misc/AutoMine.kt | 31 ++++++++++++------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/misc/AutoMine.kt b/src/main/java/me/zeroeightsix/kami/module/modules/misc/AutoMine.kt index aed26cbf7..ac5b19372 100644 --- a/src/main/java/me/zeroeightsix/kami/module/modules/misc/AutoMine.kt +++ b/src/main/java/me/zeroeightsix/kami/module/modules/misc/AutoMine.kt @@ -1,6 +1,7 @@ package me.zeroeightsix.kami.module.modules.misc import me.zeroeightsix.kami.command.Command +import me.zeroeightsix.kami.event.events.BaritoneCommandEvent import me.zeroeightsix.kami.event.events.ConnectionEvent import me.zeroeightsix.kami.event.events.SafeTickEvent import me.zeroeightsix.kami.mixin.extension.sendClickBlockToController @@ -33,6 +34,10 @@ object AutoMine : Module() { } } + override fun onDisable() { + BaritoneUtils.cancelEverything() + } + private fun run() { if (mc.player == null || isDisabled || manual.value) return @@ -56,19 +61,7 @@ object AutoMine : Module() { MessageSendHelper.sendBaritoneCommand("mine", *blocks.toTypedArray()) } - override fun onDisable() { - BaritoneUtils.cancelEverything() - } - init { - with(Setting.SettingListeners { run() }) { - iron.settingListener = this - diamond.settingListener = this - gold.settingListener = this - coal.settingListener = this - log.settingListener = this - } - listener { if (manual.value) { mc.sendClickBlockToController(true) @@ -78,5 +71,19 @@ object AutoMine : Module() { listener { disable() } + + listener { event -> + if (event.command.names.any { it.contains("cancel") }) { + disable() + } + } + + with(Setting.SettingListeners { run() }) { + iron.settingListener = this + diamond.settingListener = this + gold.settingListener = this + coal.settingListener = this + log.settingListener = this + } } }