Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.List;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.enchantments.Enchantment;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.PlayerInventory;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.java.JavaPlugin;
- public class Kits extends JavaPlugin implements Listener {
- public void onEnable() {
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- Bukkit.getServer().getLogger().info("Kits v1.0 has been enabled!");
- }
- public void onDisable() {
- Bukkit.getServer().getLogger().info("Kits v1.0 has been disabled.");
- }
- public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
- if(!(sender instanceof Player)) {
- sender.sendMessage(ChatColor.RED + " The console cannot use this command!");
- }
- //Player player = (Player) sender;
- return true;
- }
- private void onGUI(Player player) {
- Inventory inv = Bukkit.createInventory(null, 9, ChatColor.GOLD + "Class chooser");
- ItemStack miner = new ItemStack(Material.DIAMOND_PICKAXE);
- ItemMeta minermeta = miner.getItemMeta();
- minermeta.setDisplayName(ChatColor.DARK_GREEN + "The Miner class!");
- miner.setItemMeta(minermeta);
- inv.setItem(5, miner);
- player.openInventory(inv);
- }
- @EventHandler
- public void onPlayerJoin(PlayerJoinEvent e) {
- //see if they're new
- PlayerInventory pi = e.getPlayer().getInventory();
- if(getConfig().getConfigurationSection(getName()) == null) {
- //add the kit cause they're new
- ItemStack ironpick = new ItemStack(Material.IRON_PICKAXE, 1);
- ironpick.addEnchantment(Enchantment.DURABILITY, 3);
- ItemMeta ironpickmeta = ironpick.getItemMeta();
- ironpickmeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Miner's Pickaxe");
- List<String> lore = new ArrayList<String>();
- lore.add(ChatColor.BLUE + "This pickaxe will take");
- lore.add(ChatColor.BLUE + "you through the");
- lore.add(ChatColor.GOLD + "deepest " + ChatColor.BLUE + "of caves!");
- ironpickmeta.setLore(lore);
- ironpick.setItemMeta(ironpickmeta);
- pi.addItem(ironpick);
- getConfig().createSection(getName());
- saveConfig();
- pi.addItem(new ItemStack(Material.WORKBENCH, 1));
- }
- }
- @EventHandler
- public void onPlayerInteract(PlayerInteractEvent e) {
- Action a = e.getAction();
- ItemStack is = e.getItem();
- if(a == Action.PHYSICAL || is == null || is.getType() == Material.AIR)
- return;
- if(is.getType() == Material.WORKBENCH) {
- onGUI(e.getPlayer());
- }
- }
- @EventHandler
- public void onInventoryClick(InventoryClickEvent e) {
- if(e.getInventory().getName()
- .equalsIgnoreCase("Class Chooser")) {
- Player player = (Player) e.getWhoClicked();
- e.setCancelled(true);
- if(e.getCurrentItem() == null || e.getCurrentItem().getType() == Material.AIR || !e.getCurrentItem().hasItemMeta()) {
- player.closeInventory();
- return;
- }
- switch(e.getCurrentItem().getType()) {
- case WORKBENCH:
- //add kit
- player.sendMessage(ChatColor.BLUE + "You got your kit!");
- e.setCancelled(true);
- break;
- default:
- player.closeInventory();
- break;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement