From 016756391cce0f641e256ca1f9ac85c710fc6244 Mon Sep 17 00:00:00 2001 From: Bella Date: Thu, 7 May 2020 13:45:57 -0400 Subject: [PATCH] Added an option to send a chat message when a module is toggled --- .../kami/command/commands/ToggleCommand.java | 5 ++++- .../java/me/zeroeightsix/kami/module/Module.java | 10 +++++++++- .../kami/module/modules/client/CommandConfig.kt | 12 ++++++++++-- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/src/main/java/me/zeroeightsix/kami/command/commands/ToggleCommand.java b/src/main/java/me/zeroeightsix/kami/command/commands/ToggleCommand.java index 2dc7a5e59..bce8cfb42 100644 --- a/src/main/java/me/zeroeightsix/kami/command/commands/ToggleCommand.java +++ b/src/main/java/me/zeroeightsix/kami/command/commands/ToggleCommand.java @@ -5,6 +5,7 @@ import me.zeroeightsix.kami.command.syntax.ChunkBuilder; import me.zeroeightsix.kami.command.syntax.parsers.ModuleParser; import me.zeroeightsix.kami.module.Module; import me.zeroeightsix.kami.module.ModuleManager; +import me.zeroeightsix.kami.module.modules.client.CommandConfig; import static me.zeroeightsix.kami.KamiMod.MODULE_MANAGER; import static me.zeroeightsix.kami.util.MessageSendHelper.sendChatMessage; @@ -30,7 +31,9 @@ public class ToggleCommand extends Command { try { Module m = MODULE_MANAGER.getModule(args[0]); m.toggle(); - sendChatMessage(m.getName() + (m.isEnabled() ? " &aenabled" : " &cdisabled")); + if (!MODULE_MANAGER.getModuleT(CommandConfig.class).toggleMessages.getValue()) { + sendChatMessage(m.getName() + (m.isEnabled() ? " &aenabled" : " &cdisabled")); + } } catch (ModuleManager.ModuleNotFoundException x) { sendChatMessage("Unknown module '" + args[0] + "'"); } diff --git a/src/main/java/me/zeroeightsix/kami/module/Module.java b/src/main/java/me/zeroeightsix/kami/module/Module.java index 9c625738c..e224dc281 100644 --- a/src/main/java/me/zeroeightsix/kami/module/Module.java +++ b/src/main/java/me/zeroeightsix/kami/module/Module.java @@ -7,6 +7,7 @@ import me.zeroeightsix.kami.KamiMod; import me.zeroeightsix.kami.event.events.RenderEvent; import me.zeroeightsix.kami.gui.kami.component.SettingsPanel; import me.zeroeightsix.kami.gui.rgui.util.ContainerHelper; +import me.zeroeightsix.kami.module.modules.client.CommandConfig; import me.zeroeightsix.kami.setting.Setting; import me.zeroeightsix.kami.setting.Settings; import me.zeroeightsix.kami.setting.builder.SettingBuilder; @@ -19,6 +20,9 @@ import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.List; +import static me.zeroeightsix.kami.KamiMod.MODULE_MANAGER; +import static me.zeroeightsix.kami.util.MessageSendHelper.sendChatMessage; + /** * Created by 086 on 23/08/2017. * Updated by dominikaaaa on 15/04/20 @@ -146,7 +150,11 @@ public class Module { protected void onDisable() {} - protected void onToggle() {} + protected void onToggle() { + if (!name.getValue().equals("clickGUI") && MODULE_MANAGER.getModuleT(CommandConfig.class).toggleMessages.getValue()) { + sendChatMessage(name.getValue() + (enabled.getValue() ? " &aenabled" : " &cdisabled")); + } + } public void toggle() { setEnabled(!isEnabled()); } diff --git a/src/main/java/me/zeroeightsix/kami/module/modules/client/CommandConfig.kt b/src/main/java/me/zeroeightsix/kami/module/modules/client/CommandConfig.kt index f8178a967..dfa7656dc 100644 --- a/src/main/java/me/zeroeightsix/kami/module/modules/client/CommandConfig.kt +++ b/src/main/java/me/zeroeightsix/kami/module/modules/client/CommandConfig.kt @@ -12,17 +12,25 @@ import me.zeroeightsix.kami.util.MessageSendHelper @Module.Info( name = "CommandConfig", category = Module.Category.CLIENT, - description = "Configures PrefixChat and Alias options", + description = "Configures client chat related stuff", showOnArray = Module.ShowOnArray.OFF ) class CommandConfig : Module() { @JvmField var aliasInfo: Setting = register(Settings.b("Alias Info", true)) @JvmField - var prefixChat: Setting = register(Settings.b("PrefixChat", true)) + var prefixChat: Setting = register(Settings.b("Prefix Chat", true)) + @JvmField + var toggleMessages: Setting = register(Settings.b("Toggle Messages", false)) + @JvmField + var logLevel: Setting = register(Settings.e("Log Level", LogLevel.ALL)) @JvmField var customTitle: Setting = register(Settings.b("Window Title", true)) + enum class LogLevel { + NONE, ERROR, WARN, ALL + } + public override fun onDisable() { sendDisableMessage() }