* @param direction The direction in which to move.
     */
    private boolean moveHighSeas(Unit unit, Direction direction) {
        // Confirm moving to Europe if told to move to a null tile
        // (TODO: can this still happen?), or if crossing the boundary
        // between coastal and high sea.  Otherwise just move.
        Tile oldTile = unit.getTile();
        Tile newTile = oldTile.getNeighbourOrNull(direction);
        if ((newTile == null
             || (!oldTile.isDirectlyHighSeasConnected() && newTile.isDirectlyHighSeasConnected()))
            && gui.showConfirmDialog(oldTile,
                StringTemplate.template("highseas.text")
                .addAmount("%number%", unit.getSailTurns()),
                "highseas.yes", "highseas.no")) {
            moveTo(unit, unit.getOwner().getEurope());
            nextActiveUnit();
            return false;
        }
        moveMove(unit, direction);
        return true;
    }