Unable to set slot on craftingoutpot


#1
val craftingGridInventory: Inventory = inventory.query(QueryOperationTypes.INVENTORY_TYPE.of(CraftingInventory::class.java))
val toCompareWithOutputSlots = craftingGridInventory.slots<Slot>().toList()
val toCompareWithOutput = toCompareWithOutputSlots.map { it.peek().orElse(null) }
val craftingOutput = toCompareWithOutputSlots[0]

val result = craftingOutput.slots<Slot>().first().set(stack)

if (result.rejectedItems.isNotEmpty()) {
   println("CraftingOutput slot set was rejected !!!")
}

how do I know why this set transaction is rejected / how do I set the result slot in my workbench? type of TransactioNResult is FAILURE


#2

Ok found this solution. With this you can cut all the crap like get slots then first etc

Just

(player as EntityPlayer).openContainer.inventorySlots[0].putStack(stack as net.minecraft.item.ItemStack)