turt2live

Untitled

Jul 16th, 2013
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.79 KB | None | 0 0
  1. package com.turt2live.bukkit.testing.endersignal;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.event.EventHandler;
  6. import org.bukkit.event.Listener;
  7. import org.bukkit.event.entity.EnderSignalLaunchEvent;
  8. import org.bukkit.plugin.java.JavaPlugin;
  9.  
  10. public class EnderSignalPlugin extends JavaPlugin implements Listener{
  11.  
  12.     /*
  13.      * To test the cancelled state of the EnderSignalLaunchEvent do the following:
  14.      * 1) Give yourself at least 2 Eye of Ender items
  15.      * 2) While pointing into open space, right click once.
  16.      * 3) The plugin should broadcast information and a big green "NOT CANCELLED" message
  17.      * 4) While still pointing into open space, right click once.
  18.      * 5) The plugin should broadcast information and a big RED "CANCELLED" message. The signal should not fire.
  19.      */
  20.  
  21.     private boolean cancelNext = false;
  22.  
  23.     @Override
  24.     public void onEnable(){
  25.         getServer().getPluginManager().registerEvents(this, this);
  26.     }
  27.  
  28.     @EventHandler
  29.     public void onEnderSignal(EnderSignalLaunchEvent event){
  30.         // Null checks
  31.         if(event == null){
  32.             Bukkit.broadcastMessage("null event");
  33.             return;
  34.         }else if(event.getLauncher() == null){
  35.             Bukkit.broadcastMessage("null launcher");
  36.             return;
  37.         }else if(event.getEntity() == null){
  38.             Bukkit.broadcastMessage("null signal");
  39.             return;
  40.         }
  41.  
  42.         // Broadcast information
  43.         Bukkit.broadcastMessage(ChatColor.GOLD + "Launcher: " + event.getLauncher().getName());
  44.         Bukkit.broadcastMessage(ChatColor.YELLOW + "Signal: " + event.getEntity().toString());
  45.         if(cancelNext){
  46.             Bukkit.broadcastMessage(ChatColor.DARK_RED + "CANCELLING");
  47.             event.setCancelled(true);
  48.         }else{
  49.             Bukkit.broadcastMessage(ChatColor.DARK_GREEN + "NOT CANCELLING");
  50.         }
  51.  
  52.         // Cancel (or not) the next fired event
  53.         cancelNext = !cancelNext;
  54.     }
  55.  
  56. }
Advertisement
Add Comment
Please, Sign In to add comment