From a9f0acb56ef9b2e327eb6edcd9c6516596d29138 Mon Sep 17 00:00:00 2001 From: Sam Jakob Mearns Date: Mon, 18 Dec 2017 12:12:13 +0000 Subject: [PATCH] Fixed a bug where #setButton(Integer, GUIButton) would cause a NullPointerException --- com/cloutteam/samjakob/gui/types/PaginatedGUI.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/com/cloutteam/samjakob/gui/types/PaginatedGUI.java b/com/cloutteam/samjakob/gui/types/PaginatedGUI.java index 365e8b5..3215d18 100644 --- a/com/cloutteam/samjakob/gui/types/PaginatedGUI.java +++ b/com/cloutteam/samjakob/gui/types/PaginatedGUI.java @@ -3,13 +3,14 @@ import com.cloutteam.samjakob.gui.ItemBuilder; import com.cloutteam.samjakob.gui.buttons.GUIButton; import com.cloutteam.samjakob.gui.buttons.InventoryListenerGUI; +import net.md_5.bungee.api.ChatColor; import org.bukkit.Bukkit; -import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.InventoryHolder; import org.bukkit.plugin.java.JavaPlugin; +import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -68,10 +69,14 @@ public Inventory getInventory() { // Add all items int counter = 0; - for(int key = (currentPage * 45); key < items.keySet().size(); key++){ + for(int key = (currentPage * 45); key <= Collections.max(items.keySet()); key++){ if(counter >= 45) break; - inventory.setItem(counter, items.get(key).getItem()); + + if(items.containsKey(key)) { + inventory.setItem(counter, items.get(key).getItem()); + } + counter++; }