diff options
author | Erik Broes <erikbroes@grum.nl> | 2011-03-21 00:48:34 +0100 |
---|---|---|
committer | Erik Broes <erikbroes@grum.nl> | 2011-03-23 16:58:43 +0100 |
commit | f0544a90fcf8cdb72d9b48974a5df5cffeb86a58 (patch) | |
tree | 1cefc81482be741b3dc27a72fce6ffd4d69a02d2 | |
parent | 8cf7b9e371cfe9e30b0ab9912463abf2601266c9 (diff) | |
download | bukkit-f0544a90fcf8cdb72d9b48974a5df5cffeb86a58.tar bukkit-f0544a90fcf8cdb72d9b48974a5df5cffeb86a58.tar.gz bukkit-f0544a90fcf8cdb72d9b48974a5df5cffeb86a58.tar.lz bukkit-f0544a90fcf8cdb72d9b48974a5df5cffeb86a58.tar.xz bukkit-f0544a90fcf8cdb72d9b48974a5df5cffeb86a58.zip |
Added PlayerBucket events
5 files changed, 146 insertions, 0 deletions
diff --git a/src/main/java/org/bukkit/event/Event.java b/src/main/java/org/bukkit/event/Event.java index 6404a542..ea703032 100644 --- a/src/main/java/org/bukkit/event/Event.java +++ b/src/main/java/org/bukkit/event/Event.java @@ -251,6 +251,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 */ diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java new file mode 100644 index 00000000..38f315dc --- /dev/null +++ b/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java @@ -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;
+ }
+}
diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java new file mode 100644 index 00000000..a1424452 --- /dev/null +++ b/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java @@ -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;
+ }
+}
diff --git a/src/main/java/org/bukkit/event/player/PlayerListener.java b/src/main/java/org/bukkit/event/player/PlayerListener.java index 3d00bd34..bc18d131 100644 --- a/src/main/java/org/bukkit/event/player/PlayerListener.java +++ b/src/main/java/org/bukkit/event/player/PlayerListener.java @@ -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) { + } } diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java index f712452d..d0170bbb 100644 --- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java +++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java @@ -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 ) { |