Advertisement
maxthelinkfan

Untitled

Sep 29th, 2013
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.86 KB | None | 0 0
  1. package me.maxtheorange.Signs;
  2.  
  3. import org.bukkit.event.block.Action;
  4. import org.bukkit.Bukkit;
  5. import org.bukkit.Material;
  6. import org.bukkit.entity.Player;
  7. import org.bukkit.event.EventHandler;
  8. import org.bukkit.event.Listener;
  9. import org.bukkit.event.player.PlayerInteractEvent;
  10. import org.bukkit.inventory.ItemStack;
  11. import org.bukkit.inventory.PlayerInventory;
  12. import org.bukkit.inventory.meta.BookMeta;
  13. import org.bukkit.scheduler.BukkitRunnable;
  14. import org.bukkit.block.Sign;
  15.  
  16. public class Books implements Listener{
  17.  
  18.        
  19.     private Main plugin;
  20.     public Books(Main plugin) {
  21.         this.plugin = plugin;
  22.         }
  23.         @EventHandler
  24.         public void onPlayerInteract(PlayerInteractEvent e){
  25.         final Player p = e.getPlayer();
  26.         if(e.getAction() == Action.RIGHT_CLICK_BLOCK){
  27.             if(e.getClickedBlock().getType() == Material.WALL_SIGN || e.getClickedBlock().getType() == Material.SIGN_POST){
  28.             Sign sign = (Sign) e.getClickedBlock().getState();
  29.             if(sign.getLine(0).equals("[Book]")){
  30.             PlayerInventory inventory = p.getInventory();
  31.             final ItemStack book = new ItemStack(Material.WRITTEN_BOOK, 1);
  32.             final BookMeta bm = (BookMeta) book.getItemMeta();
  33.             bm.addPage("Hello THIS IS MY BOOK! GO AWAY I LIKE BOOKS!", "THIS IS STILL MY BOOK");
  34.             bm.setAuthor("SonicPvP");
  35.             bm.setTitle("The Awesome Book");
  36.             book.setItemMeta(bm);
  37.             inventory.addItem(book);
  38.            
  39.           //player receives book
  40.            
  41.             plugin.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
  42.                 public void run() {
  43.                 //Make sure your p variable is then changed to final
  44.                 p.getInventory().remove(book);
  45.                 } }, 100L);
  46.  
  47. }
  48.             }
  49.         }
  50.         }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement