Handle KickedFromServerEvent with redirect and empty component

This commit is contained in:
2025-07-06 14:06:07 +02:00
parent 8c23bf5bd4
commit c1eca74dd0
@@ -23,6 +23,7 @@ import com.velocitypowered.api.event.Subscribe;
import com.velocitypowered.api.event.connection.DisconnectEvent; import com.velocitypowered.api.event.connection.DisconnectEvent;
import com.velocitypowered.api.event.connection.PostLoginEvent; import com.velocitypowered.api.event.connection.PostLoginEvent;
import com.velocitypowered.api.event.permission.PermissionsSetupEvent; import com.velocitypowered.api.event.permission.PermissionsSetupEvent;
import com.velocitypowered.api.event.player.KickedFromServerEvent;
import com.velocitypowered.api.network.ProtocolVersion; import com.velocitypowered.api.network.ProtocolVersion;
import com.velocitypowered.api.permission.Tristate; import com.velocitypowered.api.permission.Tristate;
import com.velocitypowered.api.proxy.Player; import com.velocitypowered.api.proxy.Player;
@@ -38,6 +39,7 @@ import de.steamwar.velocitycore.commands.*;
import de.steamwar.velocitycore.discord.DiscordBot; import de.steamwar.velocitycore.discord.DiscordBot;
import de.steamwar.velocitycore.discord.util.DiscordRanks; import de.steamwar.velocitycore.discord.util.DiscordRanks;
import de.steamwar.velocitycore.mods.ModUtils; import de.steamwar.velocitycore.mods.ModUtils;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.event.ClickEvent; import net.kyori.adventure.text.event.ClickEvent;
import java.util.HashSet; import java.util.HashSet;
@@ -110,6 +112,13 @@ public class ConnectionListener extends BasicListener {
} }
} }
@Subscribe
public void kickEvent(KickedFromServerEvent event) {
if (event.getResult() instanceof KickedFromServerEvent.RedirectPlayer red) {
event.setResult(KickedFromServerEvent.RedirectPlayer.create(red.getServer(), Component.empty()));
}
}
@Subscribe @Subscribe
public void onDisconnect(DisconnectEvent e){ public void onDisconnect(DisconnectEvent e){
ChallengeCommand.remove(e.getPlayer()); ChallengeCommand.remove(e.getPlayer());