CleanroomMC / BetterQuesting

Forked BetterQuesting with many new features and optimizations
MIT License
9 stars 19 forks source link

Crash when clicking blank box in choice reward #65

Closed Caedis closed 1 year ago

Caedis commented 1 year ago

Based off: https://github.com/tracer4b/nomi-ceu/issues/87

Description:

Clicking the blank box in a choice reward quest's claiming section causes a client crash.

Expected Behavior:

The box either shouldn't be there or should do nothing.

Steps To Reproduce:

Open choice reward quest
Complete said quest
Click the blank box before selecting a reward
The client will crash and display the crash screen.

Crashlog:

---- Minecraft Crash Report ----
// Lolis deobfuscated this stacktrace using MCP's stable-39 mappings.
// Don't do that.

Time: 2022-08-31 16:34:43 EDT
Description: Updating screen events

java.lang.NullPointerException
    at betterquesting.api2.client.gui.panels.content.PanelItemSlot.onButtonClick(PanelItemSlot.java:134)
    at betterquesting.api2.client.gui.controls.PanelButton.onMouseRelease(PanelButton.java:228)
    at betterquesting.api2.client.gui.panels.CanvasMinimum.onMouseRelease(CanvasMinimum.java:122)
    at betterquesting.api2.client.gui.panels.CanvasEmpty.onMouseRelease(CanvasEmpty.java:82)
    at betterquesting.api2.client.gui.panels.lists.CanvasScrolling.onMouseRelease(CanvasScrolling.java:322)
    at betterquesting.api2.client.gui.panels.CanvasEmpty.onMouseRelease(CanvasEmpty.java:82)
    at betterquesting.api2.client.gui.panels.CanvasEmpty.onMouseRelease(CanvasEmpty.java:82)
    at betterquesting.api2.client.gui.panels.CanvasEmpty.onMouseRelease(CanvasEmpty.java:82)
    at betterquesting.api2.client.gui.GuiScreenCanvas.onMouseRelease(GuiScreenCanvas.java:278)
    at betterquesting.client.gui2.GuiQuest.onMouseRelease(GuiQuest.java:228)
    at betterquesting.api2.client.gui.GuiScreenCanvas.handleMouseInput(GuiScreenCanvas.java:185)
    at net.minecraft.client.gui.GuiScreen.handleInput(GuiScreen.java:501)
    at net.minecraft.client.Minecraft.runTick(Minecraft.java:1759)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1098)
    at net.minecraft.client.Minecraft.run(Minecraft.java:3611)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.polymc.impl.OneSixLauncher.invokeMain(OneSixLauncher.java:104)
    at org.polymc.impl.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:175)
    at org.polymc.impl.OneSixLauncher.launch(OneSixLauncher.java:185)
    at org.polymc.EntryPoint.listen(EntryPoint.java:144)
    at org.polymc.EntryPoint.main(EntryPoint.java:74)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Affected screen --
  Screen name: betterquesting.client.gui2.GuiQuest