openWithFreeSlots

fun openWithFreeSlots(whoOpen: Player, contents: List<ItemStack?>)

Opens the menu for whoOpen with contents pre-loaded into the free slots (in getFreeSlots order): the i-th non-null entry is placed into the i-th free slot; extras beyond the free-slot count are ignored.

This is the load-side counterpart to onClose: use it for persistent containers to restore the saved contents on open. It only touches free slots — pattern (button/decoration) slots keep the items from getSymbolsToItems. A no-op on the free slots if the menu has none.