@EventHandler
	public void onPlayerInteract (PlayerInteractEvent event) {
		Player player = event.getPlayer();
		Block block = event.getClickedBlock();

		if (event.getAction() == Action.LEFT_CLICK_BLOCK && player.getItemInHand().getType() == Material.BLAZE_ROD) {
			player.setMetadata("x1", new FixedMetadataValue(plugin, block.getX()));
			player.setMetadata("y1", new FixedMetadataValue(plugin, block.getY()));
			player.setMetadata("z1", new FixedMetadataValue(plugin, block.getZ()));
			player.sendMessage(ChatColor.GOLD + "Selected first point.");
			event.setCancelled(true);
			return;
		}

		if (event.getAction() == Action.RIGHT_CLICK_BLOCK && player.getItemInHand().getType() == Material.BLAZE_ROD) {
			player.setMetadata("x2", new FixedMetadataValue(plugin, block.getX()));
			player.setMetadata("y2", new FixedMetadataValue(plugin, block.getY()));
			player.setMetadata("z2", new FixedMetadataValue(plugin, block.getZ()));
			player.sendMessage(ChatColor.GOLD + "Selected second point.");
			event.setCancelled(true);
			return;
		}

		if (event.getAction() == Action.RIGHT_CLICK_BLOCK && (block.getTypeId() == 63 || block.getTypeId() == 68)) {
			Sign sign = (Sign) block.getState();
			String[] lines = sign.getLines();

			if (lines.length > 2) {
				if (!sign.getLine(0).equalsIgnoreCase("[replace]")) return;

				String name = sign.getLine(1);

				prRegion pr = new prRegion();
				pr.place(name, block.getWorld());
				event.setCancelled(true);
				player.sendMessage(ChatColor.GREEN + "Done!");
				return;
			}
		}
	}