From 9c342f24cd054e0df1c6566ca4286348c7d1cfef Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Wed, 1 Apr 2020 14:40:29 +0100 Subject: [PATCH] Fix NPE from unloaded profiles in HolidayManager --- src/main/java/com/gmail/nossr50/util/HolidayManager.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gmail/nossr50/util/HolidayManager.java b/src/main/java/com/gmail/nossr50/util/HolidayManager.java index e677d449d..c4a1fabfe 100644 --- a/src/main/java/com/gmail/nossr50/util/HolidayManager.java +++ b/src/main/java/com/gmail/nossr50/util/HolidayManager.java @@ -3,6 +3,7 @@ package com.gmail.nossr50.util; import com.gmail.nossr50.commands.skills.AprilCommand; import com.gmail.nossr50.config.Config; import com.gmail.nossr50.datatypes.interactions.NotificationType; +import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.locale.LocaleLoader; import com.gmail.nossr50.mcMMO; @@ -367,7 +368,10 @@ public final class HolidayManager { if(!Config.getInstance().isAprilFoolsAllowed()) return; - int levelTotal = Misc.getRandom().nextInt(1 + UserManager.getPlayer(player).getSkillLevel(PrimarySkillType.MINING)) + 1; + final McMMOPlayer mmoPlayer = UserManager.getPlayer(player); + if (mmoPlayer == null) return; + + int levelTotal = Misc.getRandom().nextInt(1 + mmoPlayer.getSkillLevel(PrimarySkillType.MINING)) + 1; SoundManager.sendSound(player, player.getLocation(), SoundType.LEVEL_UP); NotificationManager.sendPlayerInformation(player, NotificationType.HOLIDAY, "Holiday.AprilFools.Levelup", StringUtils.getCapitalized(fakeSkillType.toString()), String.valueOf(levelTotal)); // ParticleEffectUtils.fireworkParticleShower(player, ALL_COLORS.get(Misc.getRandom().nextInt(ALL_COLORS.size())));