Fixed NullPointerExceptions in some super pickaxe modes, made arm swing handler get called on item usage.

This commit is contained in:
sk89q
2011-01-19 02:27:12 -08:00
parent e9e6f894b3
commit b7c620bc2f
7 changed files with 216 additions and 6 deletions

View File

@ -22,6 +22,7 @@ package com.sk89q.worldedit.bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerChatEvent;
import org.bukkit.event.player.PlayerEvent;
import org.bukkit.event.player.PlayerItemEvent;
import org.bukkit.event.player.PlayerListener;
/**
@ -81,6 +82,17 @@ public class WorldEditPlayerListener extends PlayerListener {
}
}
/**
* Called when a player uses an item
*
* @param event Relevant event details
*/
public void onPlayerItem(PlayerItemEvent event) {
if (plugin.controller.handleArmSwing(wrapPlayer(event.getPlayer()))) {
event.setCancelled(true);
}
}
private BukkitPlayer wrapPlayer(Player player) {
return new BukkitPlayer(plugin, plugin.server, player);
}

View File

@ -91,12 +91,12 @@ public class WorldEditPlugin extends JavaPlugin {
playerListener, Priority.Normal, this);
getServer().getPluginManager().registerEvent(Event.Type.PLAYER_COMMAND,
playerListener, Priority.Normal, this);
getServer().getPluginManager().registerEvent(Event.Type.PLAYER_ITEM,
playerListener, Priority.Normal, this);
getServer().getPluginManager().registerEvent(Event.Type.BLOCK_DAMAGED,
blockListener, Priority.Normal, this);
getServer().getPluginManager().registerEvent(Event.Type.BLOCK_RIGHTCLICKED,
blockListener, Priority.Normal, this);
getServer().getPluginManager().registerEvent(Event.Type.BLOCK_RIGHTCLICKED,
blockListener, Priority.Normal, this);
permsListener.register(this);
}