From 0c4632c427fa22f4186d11571b24527df4791f86 Mon Sep 17 00:00:00 2001 From: Indyuce Date: Tue, 29 Nov 2022 23:47:47 +0100 Subject: [PATCH] Fixed NPE --- .../attribute/MMOCoreAttributeStatHandler.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/attribute/MMOCoreAttributeStatHandler.java b/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/attribute/MMOCoreAttributeStatHandler.java index 83bc2253..9822148b 100644 --- a/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/attribute/MMOCoreAttributeStatHandler.java +++ b/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/attribute/MMOCoreAttributeStatHandler.java @@ -26,10 +26,18 @@ public class MMOCoreAttributeStatHandler implements StatHandler { return statName; } + /** + * This method is called on login but the MMOCore playerData + * is not loaded yet, hence the try/catch clause + */ @Override public void runUpdate(StatMap statMap) { - final PlayerData playerData = MMOCore.plugin.dataProvider.getDataManager().get(statMap.getPlayerData().getUniqueId()); - playerData.getAttributes().getInstance(attr).updateStats(); + try { + final PlayerData playerData = MMOCore.plugin.dataProvider.getDataManager().get(statMap.getPlayerData().getUniqueId()); + playerData.getAttributes().getInstance(attr).updateStats(); + } catch (NullPointerException exception) { + // Player data is not loaded yet so there's nothing to update. + } } @Override