diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/compat/jei/Panel2ClickableIngredient.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/compat/jei/Panel2ClickableIngredient.kt index 5188eabc8..61c1a4f18 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/compat/jei/Panel2ClickableIngredient.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/compat/jei/Panel2ClickableIngredient.kt @@ -21,9 +21,10 @@ class Panel2ClickableIngredient

, T>(val panel: P, val ingre inline fun , T : Any> find(mouseX: Double, mouseY: Double, type: IIngredientType, source: Collection>, noinline provider: (P) -> T): Optional> { return source .stream() - .map { it.panelOfTypeUnderCursor

(mouseX.toFloat(), mouseY.toFloat(), ignoreMouseInputLock = true).panel } - .filterNotNull() - .findAny() + .map { it.panelOfTypeUnderCursor

(mouseX.toFloat(), mouseY.toFloat(), ignoreMouseInputLock = true) } + .filter { it.interrupt } + .findFirst() + .flatMap { Optional.ofNullable(it.panel) } .flatMap { a -> JEIPlugin.helpers.ingredientManager.createTypedIngredient(type, provider(a)).map { a to it } } .map { Panel2ClickableIngredient(it.first!!, it.second) } }