From 13ca5ebc21f57929fca2c4113dc7ccdacd972a63 Mon Sep 17 00:00:00 2001 From: Kam Date: Fri, 16 Jun 2023 11:52:35 -0400 Subject: [PATCH] Fix Cache not clearing on PlayerDataRemove request --- src/main/java/noppes/npcs/NoppesUtilServer.java | 10 ++++++---- .../noppes/npcs/controllers/PlayerDataController.java | 6 ++++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/noppes/npcs/NoppesUtilServer.java b/src/main/java/noppes/npcs/NoppesUtilServer.java index 55c97d0fd..4bd3f9361 100644 --- a/src/main/java/noppes/npcs/NoppesUtilServer.java +++ b/src/main/java/noppes/npcs/NoppesUtilServer.java @@ -501,15 +501,17 @@ public class NoppesUtilServer { if(file.exists()) file.delete(); if(pl != null){ + PlayerDataController.Instance.removePlayerDataCache(pl.getUniqueID().toString()); + + PlayerDataController.Instance.nameUUIDs.remove(name); + PlayerDataController.Instance.savePlayerDataMap(); + playerdata.setNBT(new NBTTagCompound()); sendPlayerData(type, player, name); playerdata.save(); + return; } - else { - PlayerDataController.Instance.nameUUIDs.remove(name); - PlayerDataController.Instance.savePlayerDataMap(); - } } if(type == EnumPlayerData.Quest){ PlayerQuestData data = playerdata.questData; diff --git a/src/main/java/noppes/npcs/controllers/PlayerDataController.java b/src/main/java/noppes/npcs/controllers/PlayerDataController.java index abce869f1..b43a33e91 100644 --- a/src/main/java/noppes/npcs/controllers/PlayerDataController.java +++ b/src/main/java/noppes/npcs/controllers/PlayerDataController.java @@ -260,6 +260,12 @@ public class PlayerDataController { } } + public void removePlayerDataCache(final String uuid) { + synchronized (playerDataCache) { + playerDataCache.remove(uuid); + } + } + public void clearCache() { synchronized (playerDataCache) { playerDataCache.clear();