org.bukkit.event.block.BlockFromToEvent Maven / Gradle / Ivy
Show all versions of chest-server Show documentation
package org.bukkit.event.block;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.event.Cancellable;
import org.bukkit.event.HandlerList;
/**
* Represents events with a source block and a destination block, currently
* only applies to liquid (lava and water) and teleporting dragon eggs.
*
* If a Block From To event is cancelled, the block will not move (the liquid
* will not flow).
*/
public class BlockFromToEvent extends BlockEvent implements Cancellable {
private static final HandlerList handlers = new HandlerList();
protected Block to;
protected BlockFace face;
protected boolean cancel;
public BlockFromToEvent(final Block block, final BlockFace face) {
super(block);
this.face = face;
this.cancel = false;
}
public BlockFromToEvent(final Block block, final Block toBlock) {
super(block);
this.to = toBlock;
this.face = BlockFace.SELF;
this.cancel = false;
}
public static HandlerList getHandlerList() {
return handlers;
}
/**
* Gets the BlockFace that the block is moving to.
*
* @return The BlockFace that the block is moving to
*/
public BlockFace getFace() {
return face;
}
/**
* Convenience method for getting the faced Block.
*
* @return The faced Block
*/
public Block getToBlock() {
if (to == null) {
to = block.getRelative(face);
}
return to;
}
public boolean isCancelled() {
return cancel;
}
public void setCancelled(boolean cancel) {
this.cancel = cancel;
}
@Override
public HandlerList getHandlers() {
return handlers;
}
}