diff --git a/CHANGELOG.md b/CHANGELOG.md index e21f084e3..d957bc2a0 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### 1.5.7 - Exposed pattern inventory for Pattern Grid (raoulvdberge) +- Fixed crashes relating to scrollbar in GUIs (raoulvdberge) - Added advancements (raoulvdberge) ### 1.5.6 diff --git a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiController.java b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiController.java index 70c42f905..25886a07a 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiController.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiController.java @@ -57,7 +57,7 @@ public class GuiController extends GuiBase { int x = 33; int y = 26; - int slot = scrollbar.getOffset() * 2; + int slot = scrollbar != null ? (scrollbar.getOffset() * 2) : 0; RenderHelper.enableGUIStandardItemLighting(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingMonitor.java b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingMonitor.java index a86fdaca1..da1c60b49 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingMonitor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingMonitor.java @@ -113,7 +113,7 @@ public class GuiCraftingMonitor extends GuiBase { drawString(7, 7, t(craftingMonitor.getGuiTitle())); drawString(7, 137, t("container.inventory")); - int item = scrollbar.getOffset(); + int item = scrollbar != null ? scrollbar.getOffset() : 0; RenderHelper.enableGUIStandardItemLighting(); @@ -176,7 +176,7 @@ public class GuiCraftingMonitor extends GuiBase { itemSelected = -1; if (mouseButton == 0 && inBounds(8, 20, 144, 90, mouseX - guiLeft, mouseY - guiTop)) { - int item = scrollbar.getOffset(); + int item = scrollbar != null ? scrollbar.getOffset() : 0; for (int i = 0; i < VISIBLE_ROWS; ++i) { int ix = 8; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingPreview.java b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingPreview.java index ee38a7093..785e9ff5f 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingPreview.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiCraftingPreview.java @@ -113,7 +113,7 @@ public class GuiCraftingPreview extends GuiBase { GlStateManager.popMatrix(); } else { - int slot = scrollbar.getOffset() * 2; + int slot = scrollbar != null ? (scrollbar.getOffset() * 2) : 0; RenderHelper.enableGUIStandardItemLighting(); GlStateManager.enableDepth(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiReaderWriter.java b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiReaderWriter.java index e96d016dd..f59f561bd 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiReaderWriter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/gui/GuiReaderWriter.java @@ -95,7 +95,7 @@ public class GuiReaderWriter extends GuiBase { int x = 8; int y = 39; - int item = scrollbar.getOffset(); + int item = scrollbar != null ? scrollbar.getOffset() : 0; for (int i = 0; i < VISIBLE_ROWS; ++i) { if (item < getChannels().size()) { @@ -128,7 +128,7 @@ public class GuiReaderWriter extends GuiBase { if (inBounds(8, 39, 144, 73, mouseX - guiLeft, mouseY - guiTop)) { if (mouseButton == 0) { - int item = scrollbar.getOffset(); + int item = scrollbar != null ? scrollbar.getOffset() : 0; for (int i = 0; i < VISIBLE_ROWS; ++i) { int ix = 8; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/gui/grid/GuiGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/gui/grid/GuiGrid.java index 07d16969f..ba48cd511 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/gui/grid/GuiGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/gui/grid/GuiGrid.java @@ -459,7 +459,7 @@ public class GuiGrid extends GuiBase implements IGridDisplay { this.slotNumber = -1; - int slot = scrollbar.getOffset() * 9; + int slot = scrollbar != null ? (scrollbar.getOffset() * 9) : 0; RenderHelper.enableGUIStandardItemLighting(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/integration/jei/GuiHandlerGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/integration/jei/GuiHandlerGrid.java index a655af726..dc8d64df8 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/integration/jei/GuiHandlerGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/integration/jei/GuiHandlerGrid.java @@ -25,7 +25,7 @@ public class GuiHandlerGrid implements IAdvancedGuiHandler { mouseX -= gui.getGuiLeft(); mouseY -= gui.getGuiTop(); - if (!gui.getSearchField().isFocused() && gui.isOverSlotArea(mouseX, mouseY)) { + if (gui.getScrollbar() != null && !gui.getSearchField().isFocused() && gui.isOverSlotArea(mouseX, mouseY)) { mouseX -= 7; mouseY -= 19;