diff options
| author | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2024-11-22 19:55:54 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-22 19:55:54 -0500 |
| commit | 7e98ed55b6ef7921ceaf5094c60f188cc08fb541 (patch) | |
| tree | d18ae5c755c73079f6553a876bf9058090924673 /src/main/java | |
| parent | cc7554fc198d1f2248635040f5b6b0c059d19c64 (diff) | |
| download | Skyblocker-7e98ed55b6ef7921ceaf5094c60f188cc08fb541.tar.gz Skyblocker-7e98ed55b6ef7921ceaf5094c60f188cc08fb541.tar.bz2 Skyblocker-7e98ed55b6ef7921ceaf5094c60f188cc08fb541.zip | |
Fix NPE with irregular inventory data (#1053)
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/InventoryPage.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/InventoryPage.java b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/InventoryPage.java index 6aa92ef6..b07a02a6 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/InventoryPage.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/InventoryPage.java @@ -47,11 +47,11 @@ public class InventoryPage implements ProfileViewerPage { JsonObject inventoryData = pProfile.getAsJsonObject("inventory"); if (inventoryData == null) return; inventorySubPages[0] = new PlayerInventory(inventoryData); - inventorySubPages[1] = new Inventory(INVENTORY_PAGES[1], IntIntPair.of(5, 9), inventoryData.getAsJsonObject("ender_chest_contents")); - inventorySubPages[2] = new Inventory(INVENTORY_PAGES[2], IntIntPair.of(5, 9), inventoryData.getAsJsonObject("backpack_contents"), new BackpackItemLoader()); - inventorySubPages[3] = new Inventory(INVENTORY_PAGES[3], IntIntPair.of(4, 9), inventoryData.getAsJsonObject("wardrobe_contents"), new WardrobeInventoryItemLoader(inventoryData)); + if (inventoryData.has("ender_chest_contents")) inventorySubPages[1] = new Inventory(INVENTORY_PAGES[1], IntIntPair.of(5, 9), inventoryData.getAsJsonObject("ender_chest_contents")); + if (inventoryData.has("backpack_contents")) inventorySubPages[2] = new Inventory(INVENTORY_PAGES[2], IntIntPair.of(5, 9), inventoryData.getAsJsonObject("backpack_contents"), new BackpackItemLoader()); + if (inventoryData.has("wardrobe_contents")) inventorySubPages[3] = new Inventory(INVENTORY_PAGES[3], IntIntPair.of(4, 9), inventoryData.getAsJsonObject("wardrobe_contents"), new WardrobeInventoryItemLoader(inventoryData)); inventorySubPages[4] = new Inventory(INVENTORY_PAGES[4], IntIntPair.of(4, 9), pProfile, new PetsInventoryItemLoader()); - inventorySubPages[5] = new Inventory(INVENTORY_PAGES[5], IntIntPair.of(5, 9), inventoryData.getAsJsonObject("bag_contents").getAsJsonObject("talisman_bag")); + if (inventoryData.has("bag_contents") && inventoryData.getAsJsonObject("bag_contents").has("talisman_bag")) inventorySubPages[5] = new Inventory(INVENTORY_PAGES[5], IntIntPair.of(5, 9), inventoryData.getAsJsonObject("bag_contents").getAsJsonObject("talisman_bag")); } catch (Exception e) { ProfileViewerScreen.LOGGER.error("[Skyblocker Profile Viewer] Error while loading inventory data: ", e); } |
