From 10a057bab522cdc89284763fa14d6883b751347d Mon Sep 17 00:00:00 2001 From: Len <40720638+destro174@users.noreply.github.com> Date: Sun, 11 Feb 2024 16:18:56 +0100 Subject: [PATCH] Tweak IslandLevel upgrades --- .../com/alttd/cometskyblock/island/gui/UpgradesGUI.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/plugin/src/main/java/com/alttd/cometskyblock/island/gui/UpgradesGUI.java b/plugin/src/main/java/com/alttd/cometskyblock/island/gui/UpgradesGUI.java index 12121a3..97d43c4 100644 --- a/plugin/src/main/java/com/alttd/cometskyblock/island/gui/UpgradesGUI.java +++ b/plugin/src/main/java/com/alttd/cometskyblock/island/gui/UpgradesGUI.java @@ -53,6 +53,7 @@ public class UpgradesGUI extends GUIInventory { } island.cobblegenLevel(island.cobblegenLevel() + 1); player.sendRichMessage(islandMessages.cobbeGen().upgraded(), Placeholder.parsed("level", "" + island.cobblegenLevel() + "")); + player.closeInventory(); decorate(player); })); // Level @@ -62,11 +63,13 @@ public class UpgradesGUI extends GUIInventory { "" + Experience.getExpToNextIslandLevel(island.level()) + " experience required to level up!" ),event -> { int xp = Experience.getExpToNextIslandLevel(island.level()); - if (player.getTotalExperience() < xp) { + if (player.getLevel() >= 0 && player.getTotalExperience() < xp) { player.sendRichMessage(islandMessages.level().requiredXp(), Placeholder.parsed("requiredxp", "" + xp + "")); return; } - Experience.changeExp(player, - xp); + int totalExperience = player.getTotalExperience(); + player.setTotalExperience(totalExperience - xp); + player.setExperienceLevelAndProgress(totalExperience - xp); island.level(island.level() + 1); player.sendRichMessage(islandMessages.level().upgraded()); decorate(player);