Skip to content

Commit

Permalink
Add null check to XP gain handler, fixes #4663 (#4677)
Browse files Browse the repository at this point in the history
* Add null check to XP gain handler, fixes #4663

Co-authored-by: Robert Alan Chapton <nossr50@gmail.com>
  • Loading branch information
PikaMug and nossr50 committed Dec 8, 2021
1 parent cf67e35 commit 519d469
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions src/main/java/com/gmail/nossr50/util/EventUtils.java
Expand Up @@ -379,14 +379,18 @@ public static boolean handlePartyLevelChangeEvent(Party party, int levelsChanged
}

public static boolean handleXpGainEvent(Player player, PrimarySkillType skill, float xpGained, XPGainReason xpGainReason) {
McMMOPlayer mmoPlayer = UserManager.getPlayer(player);
if(mmoPlayer == null)
return true;

McMMOPlayerXpGainEvent event = new McMMOPlayerXpGainEvent(player, skill, xpGained, xpGainReason);
mcMMO.p.getServer().getPluginManager().callEvent(event);

boolean isCancelled = event.isCancelled();

if (!isCancelled) {
UserManager.getPlayer(player).addXp(skill, event.getRawXpGained());
UserManager.getPlayer(player).getProfile().registerXpGain(skill, event.getRawXpGained());
mmoPlayer.addXp(skill, event.getRawXpGained());
mmoPlayer.getProfile().registerXpGain(skill, event.getRawXpGained());
}

return !isCancelled;
Expand Down

0 comments on commit 519d469

Please sign in to comment.