From 71b7aff0dd2014192615ea24fbf4aa1658ebb7f3 Mon Sep 17 00:00:00 2001 From: 4drian3d Date: Fri, 22 Oct 2021 15:26:52 -0500 Subject: [PATCH] Block tab complete if player is not logged --- .../proxy/listener/ProxyListener.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/proxy/src/main/java/com/glyart/authmevelocity/proxy/listener/ProxyListener.java b/proxy/src/main/java/com/glyart/authmevelocity/proxy/listener/ProxyListener.java index cd0eb7d..10eabda 100644 --- a/proxy/src/main/java/com/glyart/authmevelocity/proxy/listener/ProxyListener.java +++ b/proxy/src/main/java/com/glyart/authmevelocity/proxy/listener/ProxyListener.java @@ -5,10 +5,12 @@ import com.glyart.authmevelocity.proxy.event.ProxyLoginEvent; import com.google.common.io.ByteArrayDataInput; import com.velocitypowered.api.event.Subscribe; import com.velocitypowered.api.event.command.CommandExecuteEvent; +import com.velocitypowered.api.event.command.PlayerAvailableCommandsEvent; import com.velocitypowered.api.event.connection.DisconnectEvent; import com.velocitypowered.api.event.connection.PluginMessageEvent; import com.velocitypowered.api.event.player.PlayerChatEvent; import com.velocitypowered.api.event.player.ServerPreConnectEvent; +//import com.velocitypowered.api.event.player.TabCompleteEvent; import com.velocitypowered.api.proxy.Player; import com.velocitypowered.api.proxy.ProxyServer; import com.velocitypowered.api.proxy.ServerConnection; @@ -97,4 +99,25 @@ public class ProxyListener { event.setResult(ServerPreConnectEvent.ServerResult.denied()); } + + /* + "You have the opportunity to modify the response sent to the remote player." + In theory... it could be modified, but the respective methods do not exist. + I hope that the other event works for <1.12 even though this one should work. + */ + + /*@Subscribe + public void onTabComplete(TabCompleteEvent event){ + Player player = event.getPlayer(); + if (plugin.loggedPlayers.contains(player.getUniqueId())) return; + event.setTabComplete();? + }*/ + + @Subscribe + public void onTabComplete(PlayerAvailableCommandsEvent event){ + Player player = event.getPlayer(); + if (!plugin.loggedPlayers.contains(player.getUniqueId())) { + event.getRootNode().getChildren().iterator().remove(); + } + } }