diff --git a/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/PlayerData.java b/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/PlayerData.java index 3bb5a1c3..a782dc1c 100644 --- a/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/PlayerData.java +++ b/MMOCore-API/src/main/java/net/Indyuce/mmocore/api/player/PlayerData.java @@ -775,7 +775,9 @@ public class PlayerData extends SynchronizedDataHolder implements OfflinePlayerD getPlayer().sendExperienceChange(0.01f); getPlayer().setLevel(getLevel()); - getPlayer().setExp(Math.max(0, Math.min(1, (float) experience / (float) getLevelUpExperience()))); + // [Safeguard] Avoid division by zero + final var maxExp = Math.max(1, getLevelUpExperience()); + getPlayer().setExp(Math.max(0, Math.min(1, (float) experience / (float) maxExp))); } public void setAttributePoints(int value) {