Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.turt2live.bukkit.testing.endersignal;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.EnderSignalLaunchEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- public class EnderSignalPlugin extends JavaPlugin implements Listener{
- /*
- * To test the cancelled state of the EnderSignalLaunchEvent do the following:
- * 1) Give yourself at least 2 Eye of Ender items
- * 2) While pointing into open space, right click once.
- * 3) The plugin should broadcast information and a big green "NOT CANCELLED" message
- * 4) While still pointing into open space, right click once.
- * 5) The plugin should broadcast information and a big RED "CANCELLED" message. The signal should not fire.
- */
- private boolean cancelNext = false;
- @Override
- public void onEnable(){
- getServer().getPluginManager().registerEvents(this, this);
- }
- @EventHandler
- public void onEnderSignal(EnderSignalLaunchEvent event){
- // Null checks
- if(event == null){
- Bukkit.broadcastMessage("null event");
- return;
- }else if(event.getLauncher() == null){
- Bukkit.broadcastMessage("null launcher");
- return;
- }else if(event.getEntity() == null){
- Bukkit.broadcastMessage("null signal");
- return;
- }
- // Broadcast information
- Bukkit.broadcastMessage(ChatColor.GOLD + "Launcher: " + event.getLauncher().getName());
- Bukkit.broadcastMessage(ChatColor.YELLOW + "Signal: " + event.getEntity().toString());
- if(cancelNext){
- Bukkit.broadcastMessage(ChatColor.DARK_RED + "CANCELLING");
- event.setCancelled(true);
- }else{
- Bukkit.broadcastMessage(ChatColor.DARK_GREEN + "NOT CANCELLING");
- }
- // Cancel (or not) the next fired event
- cancelNext = !cancelNext;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment