Bukkit/src/main/java/org/bukkit/event/block/BlockPistonEvent.java

47 lines
1.4 KiB
Java

package org.bukkit.event.block;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.event.Cancellable;
import org.bukkit.material.PistonBaseMaterial;
public abstract class BlockPistonEvent extends BlockEvent implements Cancellable {
private boolean cancelled;
private BlockFace direction;
public BlockPistonEvent(Type type, Block block, BlockFace direction) {
super(type, block);
this.direction = direction;
}
public boolean isCancelled() {
return this.cancelled;
}
public void setCancelled(boolean cancelled) {
this.cancelled = cancelled;
}
/**
* Returns true if the Piston in the event is sticky.
*
* @return stickiness of the piston
*/
public boolean isSticky() {
return block.getType() == Material.PISTON_STICKY_BASE;
}
/**
* Return the direction in which the piston will operate.
*
* @return direction of the piston
*/
public BlockFace getDirection() {
// Both are meh!
// return ((PistonBaseMaterial) block.getType().getNewData(block.getData())).getFacing();
// return ((PistonBaseMaterial) block.getState().getData()).getFacing();
return direction;
}
}