From dfa7d25559c28ea6b3a8b6e8a41363532dc756c4 Mon Sep 17 00:00:00 2001 From: Alex Date: Mon, 4 Apr 2022 21:49:51 +0200 Subject: [PATCH] remove player from redis when player left server --- .../proxy/listener/PlayerDisconnectListener.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/main/java/net/krakatoa/proxy/listener/PlayerDisconnectListener.java b/src/main/java/net/krakatoa/proxy/listener/PlayerDisconnectListener.java index c5f57be..c791989 100644 --- a/src/main/java/net/krakatoa/proxy/listener/PlayerDisconnectListener.java +++ b/src/main/java/net/krakatoa/proxy/listener/PlayerDisconnectListener.java @@ -1,9 +1,11 @@ package net.krakatoa.proxy.listener; +import net.krakatoa.proxy.ProxySystem; import net.md_5.bungee.api.connection.ProxiedPlayer; import net.md_5.bungee.api.event.PlayerDisconnectEvent; import net.md_5.bungee.api.plugin.Listener; import net.md_5.bungee.event.EventHandler; +import org.redisson.api.RMap; public class PlayerDisconnectListener implements Listener { @@ -11,6 +13,18 @@ public class PlayerDisconnectListener implements Listener { public void onDisconnect(PlayerDisconnectEvent event) { ProxiedPlayer proxiedPlayer = event.getPlayer(); + String uuid = ProxySystem.getInstance().getFormatter() + .formatUuid(proxiedPlayer.getUniqueId().toString()); + + // redis + RMap map = ProxySystem.getInstance().getRedisManager() + .getRedissonClient() + .getMap("player:" + uuid); + + if (!map.isEmpty()) { + map.delete(); + } + /*Long res = ProxySystem.getInstance().getRedisManager().getRedisKeyCommands() .del("player:" + proxiedPlayer.getUniqueId().toString());