PRodion, так там символов гораздо больше чем ячеек ... на это я как бы и рассчитывал.
Записываем кучу слов, слова сортируются и вписываются те которые поместились в поле.
Длина символов, сколько поместилось = кол-ву ячеек
В начале скрипта, если isEditor == true, то будет редактор змейки, для создания пути.
Пользоваться так:
Кликаем по ячейкам как вам нужно по правилам формирования слов
Ниже таблицы будут выводиться координаты ячеек. Что то такое:
1,4 , 1,5 , 2,5 , 2,4 , 3,4 , 3,5 ,
Копируем эту строку с координатами и вставляем в переменную массив "path"
Всё новый путь для формирования слов готов.
Меняем isEditor на false, смотрим результат, поидее должно работать.
Единственное есть недочёт, как проверка конца пути, если больше чем осталось ячеек, то слово впишется не полностью, но это уже мелочи ...
Можно ещё рандомно сами слова переворачивать для усложнения, чтобы путь запутать и т.д.
PRodion, ещё как идея, если алгоритм никак не поддаётся, попробуйте упростить:
Есть массив слов ["один","два,"три","сто", "100500"] и т.д.
Вручную нарисуйте 10-20 разных извилистых "змеек" на разные размеры полей
Запоминаем порядок (индексы) ячеек в поле, где прошла змейка.
сортируете рандомно массив со словами и расставляете символы слов линейно по индексам ...
PRodion, ссылка в моём комментарии, чем не пример?
Выдёргиваем с миру по нитке ...
Разброс и кол-во слов на поле
Проверки доступного места для слова
Проверки на соседние слова, от пересечений слов
Угловые смещения позиций символов (но это не надо, но интересно)
Breeze1, Самая точная версия - это версия только клиента.
если у клиента модифицированная версия, то вы нигде не найдёте с полной уверенностью точную копию правок. Офф.версии
Vadim Shorin, уточню, я имел ввиду не совсем скрипты.
Как вариант вызывать из самой программы баш команды. (если опять же - разрешается)
Но это только идея, - может быть быстро, а может быть медленно это уже по факту сравнивать надо.
Шарится по файловой системе пользователя браузер тебе не даст.
Пользователь сам должен выбрать файл, перед тем как браузер даст добро обработать этот файл.
Этот же input[type=file].
Вещаете обработчик на изменение, при срабатывании событии в этот обработчик будут падать файлы, которые выбрал пользователь. Это и будет линк\идентификатор на выбранный файл.
Дальше работаешь с этим идентификатором
Записываем кучу слов, слова сортируются и вписываются те которые поместились в поле.
Длина символов, сколько поместилось = кол-ву ячеек