From 0e7b4c5d8b6d2786a696918fa108d85bb33ed800 Mon Sep 17 00:00:00 2001 From: Famous Longwing Date: Fri, 28 Mar 2025 09:46:30 -0400 Subject: [PATCH] Bug fix, Could not pass event AsyncPlayerChatEvent to EnderBank v1.20.1.a.1 java.lang.NullPointerException: Cannot invoke "org.bukkit.inventory.ItemStack.hasItemMeta()" because "item" is null --- .classpath | 89 ++++++++++--------- .../TheTealViper/enderbank/BankStorage.java | 5 ++ src/me/TheTealViper/enderbank/EnderBank.java | 16 ++-- 3 files changed, 62 insertions(+), 48 deletions(-) diff --git a/.classpath b/.classpath index 43a0b04..3364bf6 100644 --- a/.classpath +++ b/.classpath @@ -1,40 +1,49 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/me/TheTealViper/enderbank/BankStorage.java b/src/me/TheTealViper/enderbank/BankStorage.java index b1326af..911631f 100644 --- a/src/me/TheTealViper/enderbank/BankStorage.java +++ b/src/me/TheTealViper/enderbank/BankStorage.java @@ -336,6 +336,11 @@ public class BankStorage { public void openSearch(String search, Player opener) { //Load up inventory this.itemIdentifiers = new ArrayList(); + if (items == null) + { + items=BankStorage.getBank(opener.getUniqueId()).items; + + } for(int i = 0;i < items.size();i++) { ItemStack item = items.get(i); diff --git a/src/me/TheTealViper/enderbank/EnderBank.java b/src/me/TheTealViper/enderbank/EnderBank.java index a766acd..232c440 100644 --- a/src/me/TheTealViper/enderbank/EnderBank.java +++ b/src/me/TheTealViper/enderbank/EnderBank.java @@ -416,15 +416,15 @@ public class EnderBank extends JavaPlugin implements Listener { if(handler.equals("banksearch")) { queue.remove(queue.size() - 1); e.setCancelled(true); - Block b = p.getTargetBlock(null, 10); - if(!pf.getBoolean("Must_Look_At_Chest_To_Search") || b.getType().equals(Material.ENDER_CHEST)) { - String search = e.getMessage(); - BankStorage bank = BankStorage.searchDatabase.get(p); - bank.openSearch(search, p); - }else { - p.sendMessage(ViperStringUtils.makeColors(formatString(messages.getString("Open_Inventory_Not_Looking_At_Ender"), p.getUniqueId()))); +// Block b = p.getTargetBlock(null, 10); +// if(!pf.getBoolean("Must_Look_At_Chest_To_Search") || b.getType().equals(Material.ENDER_CHEST)) { + String search = e.getMessage(); + BankStorage bank = BankStorage.searchDatabase.get(p); + bank.openSearch(search, p); +// }else { +// p.sendMessage(ViperStringUtils.makeColors(formatString(messages.getString("Open_Inventory_Not_Looking_At_Ender"), p.getUniqueId()))); // p.sendMessage(EnderBank.notificationString + " You must be looking at an ender chest!"); - } +// } BankStorage.searchDatabase.remove(p); } }