From 81ab56786aeb360e23f2f864c64101cc026c8277 Mon Sep 17 00:00:00 2001 From: Vixid <52578495+VixidDev@users.noreply.github.com> Date: Tue, 31 Jan 2023 08:26:45 +0000 Subject: Equipment overlay pet item crash fix (#572) Co-authored-by: Vixid <52578495+vixid1@users.noreply.github.com> Fixes https://github.com/NotEnoughUpdates/NotEnoughUpdates/issues/471 --- .../moulberry/notenoughupdates/util/ItemUtils.java | 24 +++++++++++++--------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'src/main') diff --git a/src/main/java/io/github/moulberry/notenoughupdates/util/ItemUtils.java b/src/main/java/io/github/moulberry/notenoughupdates/util/ItemUtils.java index bc44f656..f8f42b80 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/util/ItemUtils.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/util/ItemUtils.java @@ -287,16 +287,20 @@ public class ItemUtils { if (secondLastBlankLine != -1) { List petItemLore = new ArrayList<>(); if (heldItem != null) { - petItemLore.add(EnumChatFormatting.GOLD + "Held Item: " + heldItemJson.get("displayname").getAsString()); - List heldItemLore = JsonUtils.getJsonArrayOrEmpty(heldItemJson, "lore", JsonElement::getAsString); - int blanks = 0; - for (String heldItemLoreLine : heldItemLore) { - if (heldItemLoreLine.trim().isEmpty()) { - blanks++; - } else if (blanks == 2) { - petItemLore.add(heldItemLoreLine); - } else if (blanks > 2) { - break; + if (heldItemJson == null) { + petItemLore.add(EnumChatFormatting.RED + "Could not find held item in repo!"); + } else { + petItemLore.add(EnumChatFormatting.GOLD + "Held Item: " + heldItemJson.get("displayname").getAsString()); + List heldItemLore = JsonUtils.getJsonArrayOrEmpty(heldItemJson, "lore", JsonElement::getAsString); + int blanks = 0; + for (String heldItemLoreLine : heldItemLore) { + if (heldItemLoreLine.trim().isEmpty()) { + blanks++; + } else if (blanks == 2) { + petItemLore.add(heldItemLoreLine); + } else if (blanks > 2) { + break; + } } } } -- cgit