@EventHandler(priority = EventPriority.HIGH)
    public void useRedstone(PlayerInteractEvent event) {
        Material[] blockedInteracts = {Material.WOOD_BUTTON, Material.STONE_BUTTON, Material.LEVER, Material.GOLD_PLATE,
                Material.IRON_PLATE, Material.STONE_PLATE, Material.WOOD_PLATE, Material.TRIPWIRE};
        //System.out.println("Type Clicked: "+event.getClickedBlock().getType());
        //System.out.println("Action: "+event.getAction());
        //System.out.println("Item Used: "+event.getItem());
        if (event.getPlayer() == null) {
            //System.out.println("OUTT");
            return;
        }
        Player p = event.getPlayer();
        if (event.getAction().equals(Action.RIGHT_CLICK_BLOCK) && Arrays.asList(blockedInteracts).contains(event.getClickedBlock().getType())) {
            //System.out.println("left click");
            OwnedLand land = OwnedLand.getApplicableLand(event.getClickedBlock().getLocation());
            if (land == null) {
                return;
            }
            if (!land.hasPermTo(p, this)) {
                p.sendMessage(ChatColor.RED + getPlugin().getMessageConfig().getString("event.useRedstone.interact"));
                event.setCancelled(true);
                return;
            }
        }
        if (event.getAction().equals(Action.PHYSICAL) && Arrays.asList(blockedInteracts).contains(event.getClickedBlock().getType())) {
            //System.out.println("physical");
            OwnedLand land = OwnedLand.getApplicableLand(event.getClickedBlock().getLocation());
            if (land == null) {
                return;
            }
            if (!land.hasPermTo(p, this)) {
                event.setCancelled(true);
            }
        }

    }