From 4ec8597ca28ce30101bc3bcc8e6b4c38d83a46ab Mon Sep 17 00:00:00 2001 From: alexcrea <42614139+alexcrea@users.noreply.github.com> Date: Sat, 14 Jun 2025 14:00:47 +0200 Subject: [PATCH] check nullability of item before getting its token (toolstat) --- .../cuanvil/dependency/plugins/ToolStatsDependency.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/plugins/ToolStatsDependency.kt b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/plugins/ToolStatsDependency.kt index 28e029b..513038b 100644 --- a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/plugins/ToolStatsDependency.kt +++ b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/plugins/ToolStatsDependency.kt @@ -23,6 +23,11 @@ class ToolStatsDependency(plugin: Plugin) : GenericPluginDependency(plugin) { return listOf() } + private fun ItemChecker.getTokenSafe(item: ItemStack?): Array { + if (item == null) return arrayOf() + return getTokenMethod.invoke(this, item) as Array + } + override fun testAnvilResult(event: InventoryClickEvent): Boolean { // Check if token changes from left with result val left = event.inventory.getItem(PrepareAnvilListener.ANVIL_INPUT_LEFT) @@ -30,8 +35,8 @@ class ToolStatsDependency(plugin: Plugin) : GenericPluginDependency(plugin) { val itemChecker = (plugin as ToolStats).itemChecker - val leftTokens = getTokenMethod.invoke(itemChecker, left) as Array - val resultToken = getTokenMethod.invoke(itemChecker, result) as Array + val leftTokens = itemChecker.getTokenSafe(left) + val resultToken = itemChecker.getTokenSafe(result) return !leftTokens.contentDeepEquals(resultToken); }