package eu.univento.lobby.listeners; import eu.univento.core.api.player.CustomPlayer; import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.entity.Entity; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.player.PlayerInteractEntityEvent; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.inventory.meta.SkullMeta; /** * @author joethei * @version 1.0 */ public class PlayerInteract implements Listener{ @EventHandler public void onInteractPlayer(PlayerInteractEntityEvent e) { CustomPlayer p = CustomPlayer.getPlayer(e.getPlayer()); Entity entity = e.getRightClicked(); if(entity instanceof Player) { CustomPlayer clicked = CustomPlayer.getPlayer(e.getRightClicked().getName()); openInventory(p, clicked); } } private void openInventory(CustomPlayer p, CustomPlayer clicked) { Inventory inv = Bukkit.createInventory(p, 9, clicked.getDatabasePlayer().getRank().getColor() + clicked.getName() + "'s " + "Player Menu"); ItemStack friend = new ItemStack(Material.PUMPKIN); ItemMeta friendMeta = friend.getItemMeta(); //friendMeta.setDisplayName(p.getMessages().LobbyItems_PLAYER_FRIEND()); friend.setItemMeta(friendMeta); ItemStack party = new ItemStack(Material.FIREWORK); ItemMeta partyMeta = party.getItemMeta(); //partyMeta.setDisplayName(p.getMessages().LobbyItems_PLAYER_PARTY()); party.setItemMeta(partyMeta); ItemStack skull = new ItemStack(Material.SKULL_ITEM, 1, (short) 3); SkullMeta meta = (SkullMeta) skull.getItemMeta(); meta.setOwner(clicked.getName()); //meta.setDisplayName(p.getMessages().LobbyItems_PLAYER_PROFILE()); skull.setItemMeta(meta); ItemStack stats = new ItemStack(Material.GOLD_SWORD); ItemMeta statsMeta = stats.getItemMeta(); //statsMeta.setDisplayName(p.getMessages().LobbyItems_PLAYER_STATS()); stats.setItemMeta(statsMeta); inv.setItem(0, friend); inv.setItem(1, party); inv.setItem(4, skull); inv.setItem(5, stats); p.openInventory(inv); } @EventHandler public void onInventoryClick(InventoryClickEvent e) { CustomPlayer p = CustomPlayer.getPlayer(e.getWhoClicked().getName()); //TODO: add functionality here } }