diff --git a/nms/nms-common/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/gui/ExternGuiTester.kt b/nms/nms-common/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/gui/ExternGuiTester.kt index 3e11a43..9cb481e 100644 --- a/nms/nms-common/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/gui/ExternGuiTester.kt +++ b/nms/nms-common/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/gui/ExternGuiTester.kt @@ -9,15 +9,32 @@ interface ExternGuiTester { fun getContainerClass(inventory: InventoryView): Class? fun testIfGui(inventory: InventoryView): Boolean { - val clazz = getContainerClass(inventory) - if(clazz == null) return false + // this mean we are on test + if(inventory.javaClass.name.endsWith("AnvilViewMock")) return false - val expectedWesjdGuiPath = "anvilgui.version.$wesjdAnvilGuiName" + val clazz = getContainerClass(inventory) ?: return false val clazzName = clazz.name - val isWejdsGui = clazzName.contains(expectedWesjdGuiPath) + if (expectWesjd(clazzName)) return true + if (expectXenondevUI(clazzName)) return true - return isWejdsGui + return false + } + + fun expectWesjd(name: String): Boolean { + val expectedWesjdGuiPath = "anvilgui.version.$wesjdAnvilGuiName" + + return name.contains(expectedWesjdGuiPath) + } + + private val XenondevUIPrefix: String + get() = "xyz.xenondevs.inventoryaccess." + private val XenondevUISufix: String + get() = ".AnvilInventoryImpl" + + fun expectXenondevUI(name: String): Boolean { + return name.startsWith(XenondevUIPrefix) + && name.endsWith(XenondevUISufix) }