Added PlayerBucket events

This commit is contained in:
Erik Broes 2011-03-21 00:48:34 +01:00
parent 8cf7b9e371
commit f0544a90fc
5 changed files with 146 additions and 0 deletions

View File

@ -250,6 +250,20 @@ public abstract class Event implements Serializable {
*/
PLAYER_PICKUP_ITEM (Category.PLAYER),
/**
* Called when a player empties a bucket
*
* @see org.bukkit.event.player.PlayerBucketEmptyEvent
*/
PLAYER_BUCKET_EMPTY(Category.PLAYER),
/**
* Called when a player fills a bucket
*
* @see org.bukkit.event.player.PlayerBucketFillEvent
*/
PLAYER_BUCKET_FILL(Category.PLAYER),
/**
* BLOCK EVENTS
*/

View File

@ -0,0 +1,53 @@
package org.bukkit.event.player;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event.Type;
import org.bukkit.inventory.ItemStack;
public class PlayerBucketEmptyEvent extends PlayerEvent implements Cancellable {
ItemStack itemStack;
boolean cancelled = false;
Block blockClicked;
BlockFace blockFace;
Material bucket;
public PlayerBucketEmptyEvent(Player who, Block blockClicked, BlockFace blockFace, Material bucket, ItemStack itemInHand) {
super(Type.PLAYER_BUCKET_EMPTY, who);
this.blockClicked = blockClicked;
this.blockFace = blockFace;
this.itemStack = itemInHand;
this.bucket = bucket;
}
public Material getBucket() {
return bucket;
}
public ItemStack getItemStack() {
return itemStack;
}
public Block getBlockClicked() {
return blockClicked;
}
public BlockFace getBlockFace() {
return blockFace;
}
public void setItemStack(ItemStack itemStack) {
this.itemStack = itemStack;
}
public boolean isCancelled() {
return cancelled;
}
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}

View File

@ -0,0 +1,51 @@
package org.bukkit.event.player;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
public class PlayerBucketFillEvent extends PlayerEvent {
ItemStack itemStack;
boolean cancelled = false;
Block blockClicked;
BlockFace blockFace;
Material bucket;
public PlayerBucketFillEvent(Player who, Block blockClicked, BlockFace blockFace, Material bucket, ItemStack itemInHand) {
super(Type.PLAYER_BUCKET_FILL, who);
this.blockClicked = blockClicked;
this.blockFace = blockFace;
this.itemStack = itemInHand;
this.bucket = bucket;
}
public Material getBucket() {
return bucket;
}
public ItemStack getItemStack() {
return itemStack;
}
public Block getBlockClicked() {
return blockClicked;
}
public BlockFace getBlockFace() {
return blockFace;
}
public void setItemStack(ItemStack itemStack) {
this.itemStack = itemStack;
}
public boolean isCancelled() {
return cancelled;
}
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}

View File

@ -146,4 +146,20 @@ public class PlayerListener implements Listener {
*/
public void onPlayerToggleSneak(PlayerToggleSneakEvent event) {
}
/**
* Called when a player fills a bucket
*
* @param event Relevant event details
*/
public void onPlayerBucketFill(PlayerBucketFillEvent event) {
}
/**
* Called when a player empties a bucket
*
* @param event Relevant event details
*/
public void onPlayerBucketEmpty(PlayerBucketEmptyEvent event) {
}
}

View File

@ -243,6 +243,18 @@ public final class JavaPluginLoader implements PluginLoader {
}
};
case PLAYER_BUCKET_EMPTY:
return new EventExecutor() { public void execute( Listener listener, Event event) {
((PlayerListener) listener).onPlayerBucketEmpty((PlayerBucketEmptyEvent) event);
}
};
case PLAYER_BUCKET_FILL:
return new EventExecutor() { public void execute( Listener listener, Event event) {
((PlayerListener) listener).onPlayerBucketFill((PlayerBucketFillEvent) event);
}
};
// Block Events
case BLOCK_PHYSICS:
return new EventExecutor() { public void execute( Listener listener, Event event ) {