Wordsearch — различия между версиями

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
(Таблица и хинты)
(Перемешивание)
Строка 53: Строка 53:
 
=Времена=
 
=Времена=
 
=Перемешивание=
 
=Перемешивание=
 +
Настройки перемешивания ячеек
 +
*'''номер easing-а''' - номер изинга, который берем для красивостей движения ячеек при перемешивании. Мне нравится 6 номер. Какие есть изинги можно найти [[Animation#Easing|тут]].
 +
{| class="article-table mw-collapsible mw-collapsed" "
 +
!Изинги
 +
|-
 +
| 1 || QUAD_IN_EASING
 +
|-
 +
| 2 || QUAD_OUT_EASING
 +
|-
 +
| 3 || QUAD_INOUT_EASING
 +
|-
 +
| 4 || BACK_IN_EASING
 +
|-
 +
| 5 || BACK_OUT_EASING
 +
|-
 +
| 6 || BACK_INOUT_EASING
 +
|-
 +
| 7 || SINE_IN_EASING
 +
|-
 +
| 8 || SINE_OUT_EASING
 +
|-
 +
| 9 || SINE_INOUT_EASING
 +
|-
 +
| 10 || CUBIC_IN_EASING
 +
|-
 +
| 11 || CUBIC_OUT_EASING
 +
|-
 +
| 12 || CUBIC_INOUT_EASING
 +
|-
 +
| 13 || QUART_IN_EASING
 +
|-
 +
| 14 || QUART_OUT_EASING
 +
|-
 +
| 15 || QUART_INOUT_EASING
 +
|-
 +
| 16 || QUINT_IN_EASING
 +
|-
 +
| 17 || QUINT_OUT_EASING
 +
|-
 +
| 18 || QUINT_INOUT_EASING
 +
|-
 +
| 19 || EXPO_IN_EASING
 +
|-
 +
| 20 || EXPO_OUT_EASING
 +
|-
 +
| 21 || EXPO_INOUT_EASING
 +
|-
 +
| 22 || ELASTIC_IN_EASING
 +
|-
 +
| 23 || ELASTIC_OUT_EASING
 +
|-
 +
| 24 || ELASTIC_INOUT_EASING
 +
|-
 +
| 25 || BOUNCE_IN_EASING
 +
|-
 +
| 26 || BOUNCE_OUT_EASING
 +
|-
 +
| 27 || BOUNCE_INOUT_EASING
 +
|-
 +
| 28 || CIRC_IN_EASING
 +
|-
 +
| 29 || CIRC_OUT_EASING
 +
|-
 +
| 30 || CIRC_INOUT_EASING
 +
|}
 +
 +
*'''deltha''' - разброс по времени между стартом перемещения ячеек
 +
 
=Звуки=
 
=Звуки=
 
Для различных игровых действий можно вставлять звуки. Список доступных действий:
 
Для различных игровых действий можно вставлять звуки. Список доступных действий:

Версия 14:27, 26 сентября 2017

Объект Wordsearch дает возможность организовать ряд игр поиска слов на поле в виде сетки. Игра на данный момент имеет два настраиваемых режима: режим разбора поля и режим с досыпанием.

Словарь

  • Ссылка на словарь - ссылка на файл словаря. Словарь должен быть в формате json.
  • Язык - язык слов. На данный момент доступно 5 языков: русский, английский, французский, немецкий, испанский.

Пример словаря:
[["АГА", "АКР", "АКТ", "АРТ"], ["АВВА", "АВТО", "АЖУР", "АЗОТ", "АИСТ"], ["АББАТ", "АБВЕР", "АБЗАЦ", "АБОРТ", "АБРЕК", "АБРИС"]]

Уровни

  • Ссылка на файл уровней - для каждого уровня должен быть свой файл, поэтому в этом поле указывается имя файла (например: lvl/level.txt), к которому в последствии будет прибавлен номер уровня. Т.е. в папке 'lvl' будут лежать файлы level0.txt, level1.txt и т.д. Если это поле не заполнено, то настройки будут браться по умолчанию из полей ниже.

Файлы уровней удобней править в специальной утилите.

  • Номер - номер уровня. Передается параметром перед инициализацией.

Настройка игровой сетки

  • строк - количество строк игрового поля
  • столбцов - количество столбцов игрового поля
  • тип сетки - выбор типов сетки: прямоугольная, шестиугольная
  • отсутствующие ячейки - номера ячеек через запятую, которые должны отсутствовать. В этом случае на их месте будет пустота. Таким образом можно полю придавать различную форму
  • видимость сетки - показывать или нет сетку поля (рамочку)
  • цвет - цвет этой сетки

Ячейка сетки

  • размер ячейки - размер ячейки в пикселях. Размер поля формируется как сумма размеров ячеек и отступов между ними. Поэтому заранее установить фиксированный размер не получится
  • отступ между ячейками - отступ между ячейками
  • размер буквы относительно ячейки - размер буквы, помещаемой в ячейку. Измеряется от 0 до 1
  • графика ячейки - графика ячейки это анимация минимум из 5 кадров. 1 - графика в нормальном состоянии, 2 - графика выделенной ячейки, 3 - правильно отгаданное слово, 4 - неправильно отгаданное слово, 5 - слово выделенное хинтом
    • прямоугольной - ссылка на графический ресурс (анимация) ячейки прямоугольной формы
    • шестиугольной - ссылка на графический ресурс (анимация) ячейки шестиугольной формы
  • графика блока ячейки - ссылка на графический ресурс, которым будет помечена залоченная ячейка. Ячейка может быть залоченной несколько раз. Этот ресурс помещается с левой стороны ячейки и с небольшим интервалом копируется столько раз сколько раз залочена ячейка. Не очень удобная реализация
  • графика опадающей ячейки - ссылка на графический ресурс предмета, который нужно опустить вниз
  • шаблон ячейки - машина, олицетворяющая собой ячейку, которая потом будет расклонирована. Нужна для создания всяких красивостей. Подробнее тут
  • ячейка без графики - в случае отсутствия графики для ячеек этими цветами они заливаются по умолчанию. 1 - графика в нормальном состоянии, 2 - графика выделенной ячейки, 3 - правильно отгаданное слово, 4 - неправильно отгаданное слово, 5 - слово выделенное хинтом

Настройки сложности

  • длины слов - массив чисел через запятую, которые означают процентное соотношение слов разной длины. Например строка 30,35,35 означает, что слов с 3-я буквами будет 30%, слов с 4-я буквами 35% и с 5ю 35%
  • ключевое слово - на поле размещается слово, по буквам которого формируются другие слова (начальные буквы слов)
  • заполненность поля - процент заполненности поля словами. Работает только для досыпания. В режиме Разбора всегда 100% заполнено поле

Таблица и хинты

  • таблица - ссылка на объект таблицы, в которую будут заносится слова
  • доп. таблица - ссылка на дополнительную таблицу в случае если 2 игрока
  • использование таблицы - настройки отображения слов. Такие режимы:
    • Не показывать слова - слова не будут отображаться в таблице
    • Показывать только найденные слова (по нахождению заносить а таблицу) - актуально для режима Аркады. Заносить в таблицу правильно найденные слова
    • Показывать искомые слова в таблице (по нахождению отмечать) - актуально для Разбора. Слова уже находятся в таблице, а по нахождению зачеркиваются
    • Показывать искомые слова в таблице (по нахождению удалять) -актуально для Разбора. Слова уже находятся в таблице, а по нахождению удаляются
  • графика отметки - отмечает графикой найденное слово в таблице

Правила игры

Времена

Перемешивание

Настройки перемешивания ячеек

  • номер easing-а - номер изинга, который берем для красивостей движения ячеек при перемешивании. Мне нравится 6 номер. Какие есть изинги можно найти тут.
Изинги
1 QUAD_IN_EASING
2 QUAD_OUT_EASING
3 QUAD_INOUT_EASING
4 BACK_IN_EASING
5 BACK_OUT_EASING
6 BACK_INOUT_EASING
7 SINE_IN_EASING
8 SINE_OUT_EASING
9 SINE_INOUT_EASING
10 CUBIC_IN_EASING
11 CUBIC_OUT_EASING
12 CUBIC_INOUT_EASING
13 QUART_IN_EASING
14 QUART_OUT_EASING
15 QUART_INOUT_EASING
16 QUINT_IN_EASING
17 QUINT_OUT_EASING
18 QUINT_INOUT_EASING
19 EXPO_IN_EASING
20 EXPO_OUT_EASING
21 EXPO_INOUT_EASING
22 ELASTIC_IN_EASING
23 ELASTIC_OUT_EASING
24 ELASTIC_INOUT_EASING
25 BOUNCE_IN_EASING
26 BOUNCE_OUT_EASING
27 BOUNCE_INOUT_EASING
28 CIRC_IN_EASING
29 CIRC_OUT_EASING
30 CIRC_INOUT_EASING
  • deltha - разброс по времени между стартом перемещения ячеек

Звуки

Для различных игровых действий можно вставлять звуки. Список доступных действий:

  • выбор ячейки
  • неверный выбор слова
  • найдено слово
  • хинт
  • перемешивание
  • swap

Шрифты

Очки

  • очки - ссылка на счетчик, который отображает набранные очки
  • доп. очки - ссылка на счетчик, который отображает очки второго игрока в режиме игры на двоих
  • очков за букву - количество очков за одну букву
  • коэффициент весов - все буквы имеют веса, которые определяются по редкости использования этой буквы в словаре. Этот коэффициент влияет на величину весов для букв. Веса домножаются на количество очков за букву.
  • анимация полета очков - машинка, которая клонируется и помещается при нахождении правильного слова в координаты первой буквы. Машинке вызывается состояние beg. Также в нее параметром score_per_word передается количество очков за найденное слово. Машинка может содержать в себе счетчик, в который сложим эти очки.

Другие параметры

  • таймер - ссылка на объект таймера для отображения оставшегося времени
  • счетчик залоченных - ссылка на счетчик, который отображает текущее количество залоченных ячеек
  • счетчик очков за слово - ссылка на счетчик, который отображает количество очков за последнее найденное слово

Добавляемые свойства

Тут в основном находятся обработчики различных игровых событий

  • игра окончена - закончилось время - в случае игры на время этот обработчик сработает, если время закончилось
  • победа в режиме Разбора - все слова на поле в режиме разбора найдены
  • если хинт не находит слово в режиме Аркада - обработчик сработает, если после нажатия хинта не удалось найти на поле слово. В этом случае есть смысл вызвать состояние 'shuffle'
  • на поле не осталось залоченных ячеек - все залоченные ячейки разлочены
  • на поле не осталось опадающих предметов - в случае если на поле кроме букв есть еще другие предметы (в рамках механики "опусти предмет вниз"), то этот обработчик сработает, когда все ячейки с такими предметами будут опущены вниз и выведены с игрового поля
  • найдено слово - сработает, когда правильно нашли слово
  • хинт успешно сработает - после вызова состояния 'hint' если есть что подсвечивать, то вызовется этот обработчик.
  • хинт невозможен - после вызова состояния 'hint' если нечего подсвечивать, то вызовется этот обработчик.
  • ячейка разлочена - реакция на разлочку ячейки
  • падающий предмет достиг нижней строки - один из предметов опцстился вниз
  • добавить цвет отгаданной ячейки - это дополнительные цвета для окраски правильно отгаданных слов для того, чтобы отгаданные слова не сливались и их можно было различить на поле

Состояния

  • init - объект подтягивает все заданные параметры, но отрисовка поля не происходит
  • start - отрисовка поля, старт таймера
  • game - вызывается механикой после start и в остальных необходимых случаях. Например после успеха вызова состояния hint
  • pause - поле прячется, таймер становится на паузу
  • resume - поле появляется, таймер продолжает время
  • shuffle - перемешивания букв на поле
  • swap - перестановка двух букв местами
  • game_after_lose - доигрывание с добавлением N секунд, где N параметр из вкладки Времена
  • next_level - запуск следующего уровня
  • hint - подсветка правильного слова на поле

Шаблон ячейки

Отдельного описания заслуживает шаблон ячейки.