@EventHandler
	public void onSignDestroy(BlockBreakEvent e) {
		if(e.isCancelled())
			return;
		Player p = e.getPlayer();
		for(ServerSign rs : ServerSigns.getInstance().getSigns()) {
			if(rs.getSignLocation().getBlockX() == e.getBlock().getLocation().getBlockX()) {
				if(rs.getSignLocation().getBlockY() == e.getBlock().getLocation().getBlockY()) {
					if(rs.getSignLocation().getBlockZ() == e.getBlock().getLocation().getBlockZ()) {
						if(!p.isOp() && !p.hasPermission("serversigns.destroy")) {
							e.setCancelled(true);
							p.sendMessage(ChatColor.GREEN + "[ServerSigns] " + ChatColor.GOLD + ServerSigns.getLangManager().getLocaleMessage("lang.global.nopermission"));
							return;
						}
						List<ServerSign> signs = DataStore.getInstance().getSigns();
						int index = 0;
						for(int i = 0; i < signs.size(); i++) {
							ServerSign sign = signs.get(i);
							if(sign.equals(rs)) {
								index = i;
								break;
							}
						}
						signs.remove(index);
						DataStore.getInstance().setSigns(signs);
						ServerSigns.getInstance().reloadSigns();
						p.sendMessage(ChatColor.GREEN + "[ServerSigns] " + ChatColor.GOLD + ServerSigns.getLangManager().getLocaleMessage("lang.creation.destroyed"));
						break;
					}
				}
			}
		}
	}