package fr.azur.tcoww.ui import fr.azur.tcoww.Tcoww import net.kyori.adventure.text.Component import net.kyori.adventure.text.format.NamedTextColor import org.bukkit.Material import org.bukkit.entity.Player import org.bukkit.event.inventory.InventoryClickEvent import org.bukkit.event.inventory.InventoryCloseEvent import org.bukkit.inventory.Inventory import org.bukkit.inventory.ItemStack import org.bukkit.inventory.meta.SkullMeta import java.util.concurrent.CompletableFuture class PlayerSelectMenu( val players: Iterable, ) : CustomUI { val size = (players.count() / 9 + 1) * 9 val future = CompletableFuture() private val inventory = Tcoww.instance.server.createInventory(this, size, Component.text("Select a player.", NamedTextColor.GREEN)).apply { players.forEachIndexed { index, player -> val item = ItemStack.of(Material.PLAYER_HEAD).apply { itemMeta = (itemMeta as SkullMeta).apply { playerProfile = player.playerProfile } } setItem(index, item) } } override fun getInventory(): Inventory = inventory override fun onClick(event: InventoryClickEvent) { val index = event.slot if (index !in 0..