bentobox/src/main/java/us/tastybento/bskyblock/listeners/flags/PhysicalInteractionListener...

52 lines
1.3 KiB
Java

/**
*
*/
package us.tastybento.bskyblock.listeners.flags;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
import us.tastybento.bskyblock.BSkyBlock;
import us.tastybento.bskyblock.lists.Flags;
/**
* @author ben
*
*/
public class PhysicalInteractionListener extends AbstractFlagListener {
public PhysicalInteractionListener(BSkyBlock plugin) {
super(plugin);
}
/**
* Handle physical interaction with blocks
* Crop trample, pressure plates, triggering redstone, tripwires
* @param e
*/
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
public void onPlayerInteract(final PlayerInteractEvent e) {
if (!e.getAction().equals(Action.PHYSICAL)) {
return;
}
switch (e.getClickedBlock().getType()) {
case SOIL:
// Crop trample
checkIsland(e, e.getPlayer().getLocation(), Flags.CROP_TRAMPLE);
break;
case WOOD_PLATE:
case STONE_PLATE:
case GOLD_PLATE:
case IRON_PLATE:
// Pressure plates
checkIsland(e, e.getPlayer().getLocation(), Flags.PRESSURE_PLATE);
break;
default:
break;
}
}
}