Advertisement
Guest User

Untitled

a guest
Feb 27th, 2014
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package me.benLewis.bukkitPluginEight;
  2.  
  3. import java.util.logging.Logger;
  4. import org.bukkit.Bukkit;
  5. import org.bukkit.ChatColor;
  6. import org.bukkit.Effect;
  7. import org.bukkit.Material;
  8. import org.bukkit.command.Command;
  9. import org.bukkit.command.CommandSender;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.event.EventHandler;
  12. import org.bukkit.event.Listener;
  13. import org.bukkit.event.player.PlayerInteractEvent;
  14. import org.bukkit.inventory.Inventory;
  15. import org.bukkit.inventory.ItemStack;
  16. import org.bukkit.inventory.meta.ItemMeta;
  17. import org.bukkit.plugin.java.JavaPlugin;
  18.  
  19. public class walrus extends JavaPlugin implements Listener {
  20.    
  21.     // #### This is how I am getting the itemstack and its meta data ####
  22.    
  23.     ItemStack fireCharge = new ItemStack(Material.ENCHANTED_BOOK);
  24.     ItemMeta swordMeta = fireCharge.getItemMeta();
  25.    
  26.     //logger logs messages/actions to the Console
  27.     Logger myPluginLogger = Bukkit.getLogger();
  28.  
  29.     //Will activate on server startup
  30.     public void onEnable(){
  31.  
  32.         Bukkit.getServer().getPluginManager().registerEvents(this, this);
  33.         myPluginLogger.info(ChatColor.DARK_RED + "Bukkit Plugin EIGHT has been statted");
  34.  
  35.     }
  36.  
  37.     //Will activate on server shutdown
  38.     public void onDisable(){
  39.  
  40.         myPluginLogger.info(ChatColor.DARK_RED + "Bukkit Plugin EIGHT has been disabled!");
  41.         myPluginLogger.severe(ChatColor.DARK_RED + "SHUTTING DOWN");
  42.     }
  43.  
  44.     public boolean onCommand(CommandSender theSender, Command cmd, String commandLabel, String[] args){
  45.  
  46.         if(theSender instanceof Player){
  47.             Player player = (Player) theSender;
  48.  
  49.             if(commandLabel.equalsIgnoreCase("gem")){
  50.                 ItemStack Gem = new ItemStack(Material.EMERALD);
  51.                 Inventory gemInv = Bukkit.createInventory(null, 9, ChatColor.GOLD + "The Gem of Seregon");
  52.                 gemInv.addItem(Gem);
  53.                 player.openInventory(gemInv);
  54.                
  55.                 // #### This is how I assign it the new metadata and put it in the inv ####
  56.                 swordMeta.setDisplayName(ChatColor.AQUA + "Spell: " + ChatColor.DARK_RED + "Fire Charge");
  57.                 fireCharge.setItemMeta(swordMeta);
  58.                 gemInv.addItem(fireCharge);
  59.                
  60.                
  61.             }
  62.            
  63.             if(commandLabel.equalsIgnoreCase("rename")){
  64.                
  65.                 if(args.length == 1){
  66.                    
  67.                     ItemStack hand = player.getItemInHand();
  68.                     ItemMeta handMeta = hand.getItemMeta();
  69.                     handMeta.setDisplayName(ChatColor.WHITE + args[0]);
  70.                     hand.setItemMeta(handMeta);
  71.  
  72.                    
  73.                 }else player.sendMessage(ChatColor.DARK_AQUA + "[" + ChatColor.GOLD + "SeregonNation" + ChatColor.DARK_AQUA + "] " + ChatColor.GOLD + "Try using" + ChatColor.DARK_AQUA + " /rename <new name>");
  74.                
  75.                
  76.             }
  77.         }
  78.  
  79.         return false;
  80.  
  81.     }
  82.     // ###############################
  83.     // THIS IS THE BIT I AM WORKING ON
  84.     // ###############################
  85.    
  86.     //Calls the event handler, and uses the onClick listener
  87.     @SuppressWarnings("deprecation")
  88.     @EventHandler
  89.     public void onClickEvent(PlayerInteractEvent event){
  90.        
  91.         //this gets a player through the event, not a command
  92.         final Player player = event.getPlayer();
  93.        
  94.         // #### And this is where I am trying to execute the code if they click with the item in their hand ####
  95.        
  96.         if(player.getItemInHand().getItemMeta() == swordMeta){
  97.             player.playEffect(player.getLocation(), Effect.MOBSPAWNER_FLAMES, 1);
  98.             player.sendMessage(ChatColor.DARK_AQUA + "[" + ChatColor.GOLD + "SeregonNation" + ChatColor.DARK_AQUA + "] " + ChatColor.GOLD + "" + ChatColor.BOLD + "Your fiery fury has been unleashed!");
  99.             this.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  100.                 public void run() {
  101.                     player.playEffect(player.getLocation(), Effect.MOBSPAWNER_FLAMES, 1);
  102.                 }
  103.             }, 2L);    
  104.         }  
  105.     }
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement