From dda2b85236f33874e4806d4b9b8f27653e1e5cf7 Mon Sep 17 00:00:00 2001 From: ruViolence <78062896+ruviolence@users.noreply.github.com> Date: Fri, 26 Jan 2024 20:27:19 +0800 Subject: [PATCH] Do not unregister "/2fa" command of other plugins --- src/main/java/net/elytrium/limboauth/LimboAuth.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/elytrium/limboauth/LimboAuth.java b/src/main/java/net/elytrium/limboauth/LimboAuth.java index 1e214aa3..6986a2e6 100644 --- a/src/main/java/net/elytrium/limboauth/LimboAuth.java +++ b/src/main/java/net/elytrium/limboauth/LimboAuth.java @@ -34,6 +34,7 @@ import com.j256.ormlite.table.TableInfo; import com.j256.ormlite.table.TableUtils; import com.velocitypowered.api.command.CommandManager; +import com.velocitypowered.api.command.CommandMeta; import com.velocitypowered.api.event.EventManager; import com.velocitypowered.api.event.Subscribe; import com.velocitypowered.api.event.proxy.ProxyInitializeEvent; @@ -343,7 +344,6 @@ public void reload() { manager.unregister("changepassword"); manager.unregister("forcechangepassword"); manager.unregister("destroysession"); - manager.unregister("2fa"); manager.unregister("limboauth"); manager.register("unregister", new UnregisterCommand(this, this.playerDao), "unreg"); @@ -354,7 +354,13 @@ public void reload() { manager.register("forcechangepassword", new ForceChangePasswordCommand(this, this.server, this.playerDao), "forcechangepass", "fcp"); manager.register("destroysession", new DestroySessionCommand(this), "logout"); if (Settings.IMP.MAIN.ENABLE_TOTP) { - manager.register("2fa", new TotpCommand(this.playerDao), "totp"); + CommandMeta meta = manager.metaBuilder("2fa").aliases("totp").plugin(this).build(); + manager.register(meta, new TotpCommand(this.playerDao)); + } else { + CommandMeta meta = manager.getCommandMeta("2fa"); + if (meta != null && this.equals(meta.getPlugin())) { + manager.unregister("2fa"); + } } manager.register("limboauth", new LimboAuthCommand(this), "la", "auth", "lauth");