From bdfac28b443919e239bd59417f8375f00d64b497 Mon Sep 17 00:00:00 2001 From: nossr50 Date: Thu, 31 Jan 2019 18:44:51 -0800 Subject: [PATCH] Fixed Alchemy XP Gain --- Changelog.txt | 1 + .../nossr50/listeners/InventoryListener.java | 18 ++++++++---------- .../nossr50/skills/alchemy/AlchemyManager.java | 1 + 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Changelog.txt b/Changelog.txt index ccc20bc45..0f25258b0 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -8,6 +8,7 @@ Key: - Removal Version 2.1.4 + Fixed a bug where Alchemy didn't gain XP Temporarily disabled Flux Mining Removed XP from entities that target endermite to prevent easy exploitation (Credits to TheBentoBox for the tip!) [Can be turned off in experience.yml] Fixed a bug where static chance skills like Arcane Salvage were using incorrect calculations for success diff --git a/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java b/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java index df1d37f3a..ea1ab8433 100644 --- a/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java +++ b/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java @@ -178,20 +178,18 @@ public class InventoryListener implements Listener { Inventory inventory = event.getInventory(); - Block furnaceBlock = processInventoryOpenOrCloseEvent(event.getInventory()); - - if (furnaceBlock == null) { - return; - } - if(event.getWhoClicked() instanceof Player) { Player player = ((Player) event.getWhoClicked()).getPlayer(); - - if(furnaceBlock.getMetadata(mcMMO.furnaceMetadataKey).size() > 0) - furnaceBlock.removeMetadata(mcMMO.furnaceMetadataKey, mcMMO.p); + Block furnaceBlock = processInventoryOpenOrCloseEvent(event.getInventory()); - furnaceBlock.setMetadata(mcMMO.furnaceMetadataKey, UserManager.getPlayer(player).getPlayerMetadata()); + if (furnaceBlock != null) + { + if (furnaceBlock.getMetadata(mcMMO.furnaceMetadataKey).size() > 0) + furnaceBlock.removeMetadata(mcMMO.furnaceMetadataKey, mcMMO.p); + + furnaceBlock.setMetadata(mcMMO.furnaceMetadataKey, UserManager.getPlayer(player).getPlayerMetadata()); + } } if (!(inventory instanceof BrewerInventory)) { diff --git a/src/main/java/com/gmail/nossr50/skills/alchemy/AlchemyManager.java b/src/main/java/com/gmail/nossr50/skills/alchemy/AlchemyManager.java index 01c8e7665..b6f08ae75 100644 --- a/src/main/java/com/gmail/nossr50/skills/alchemy/AlchemyManager.java +++ b/src/main/java/com/gmail/nossr50/skills/alchemy/AlchemyManager.java @@ -8,6 +8,7 @@ import com.gmail.nossr50.datatypes.player.McMMOPlayer; import com.gmail.nossr50.datatypes.skills.PrimarySkillType; import com.gmail.nossr50.datatypes.skills.SubSkillType; import com.gmail.nossr50.datatypes.skills.alchemy.PotionStage; +import com.gmail.nossr50.mcMMO; import com.gmail.nossr50.skills.SkillManager; import com.gmail.nossr50.util.StringUtils; import com.gmail.nossr50.util.skills.RankUtils;