package dev.plex.menu.impl; import dev.plex.Plex; import dev.plex.menu.AbstractMenu; import dev.plex.menu.pagination.PageableMenu; import dev.plex.player.PlexPlayer; import dev.plex.punishment.Punishment; import dev.plex.util.TimeUtils; import dev.plex.util.item.ItemBuilder; import java.util.List; import org.bukkit.Material; import org.bukkit.inventory.ItemStack; public class PunishedPlayerMenu extends PageableMenu { private final PlexPlayer punishedPlayer; public PunishedPlayerMenu(PlexPlayer player) { super("Punishments - " + player.getName(), AbstractMenu.Rows.SIX); this.punishedPlayer = player; onClick((inventoryView, itemStacks, player1, itemStack) -> true); this.init(); } @Override protected ItemStack toItem(Punishment object) { return new ItemBuilder(Material.PAPER).displayName("" + object.getType().name()).lore("By: " + (object.getPunisher() == null ? "CONSOLE" : Plex.get().getSqlPlayerData().getNameByUUID(object.getPunisher())), "Issued: " + TimeUtils.useTimezone(object.getIssueDate()), "Expire(d/s): " + TimeUtils.useTimezone(object.getEndDate()), "Reason: " + object.getReason()).build(); } @Override protected List list() { return this.punishedPlayer.getPunishments(); } }