001 package org.bukkit.event.player;
002
003 import org.bukkit.entity.Player;
004 import org.bukkit.event.Cancellable;
005 import org.bukkit.event.HandlerList;
006
007 /**
008 * Fired when a player changes their currently held item
009 */
010 public class PlayerItemHeldEvent extends PlayerEvent implements Cancellable {
011 private static final HandlerList handlers = new HandlerList();
012 private boolean cancel = false;
013 private final int previous;
014 private final int current;
015
016 public PlayerItemHeldEvent(final Player player, final int previous, final int current) {
017 super(player);
018 this.previous = previous;
019 this.current = current;
020 }
021
022 /**
023 * Gets the previous held slot index
024 *
025 * @return Previous slot index
026 */
027 public int getPreviousSlot() {
028 return previous;
029 }
030
031 /**
032 * Gets the new held slot index
033 *
034 * @return New slot index
035 */
036 public int getNewSlot() {
037 return current;
038 }
039
040 public boolean isCancelled() {
041 return cancel;
042 }
043
044 public void setCancelled(boolean cancel) {
045 this.cancel = cancel;
046 }
047
048 @Override
049 public HandlerList getHandlers() {
050 return handlers;
051 }
052
053 public static HandlerList getHandlerList() {
054 return handlers;
055 }
056 }