Wordsearch — различия между версиями
Avereskun (обсуждение | вклад) (→Состояния) |
Avereskun (обсуждение | вклад) (→Состояния) |
||
Строка 58: | Строка 58: | ||
*'''добавить цвет отгаданной ячейки''' - это дополнительные цвета для окраски правильно отгаданных слов для того, чтобы отгаданные слова не сливались и их можно было различить на поле | *'''добавить цвет отгаданной ячейки''' - это дополнительные цвета для окраски правильно отгаданных слов для того, чтобы отгаданные слова не сливались и их можно было различить на поле | ||
=Состояния= | =Состояния= | ||
− | *'init' - объект подтягивает все заданные параметры, но отрисовка поля не происходит | + | *''init'' - объект подтягивает все заданные параметры, но отрисовка поля не происходит |
− | *'start' - отрисовка поля, старт таймера | + | *''start'' - отрисовка поля, старт таймера |
− | *'game' - вызывается механикой после start и в остальных необходимых случаях. Например после успеха вызова состояния 'hint' | + | *''game'' - вызывается механикой после start и в остальных необходимых случаях. Например после успеха вызова состояния ''hint'' |
− | *'pause' - поле прячется, таймер становится на паузу | + | *''pause'' - поле прячется, таймер становится на паузу |
− | *'resume' - поле появляется, таймер продолжает время | + | *''resume'' - поле появляется, таймер продолжает время |
− | *'shuffle' - перемешивания букв на поле | + | *''shuffle'' - перемешивания букв на поле |
− | *'swap' - перестановка двух букв местами | + | *''swap'' - перестановка двух букв местами |
− | *'game_after_lose' - доигрывание с добавлением N секунд, где N параметр из вкладки Времена | + | *''game_after_lose'' - доигрывание с добавлением N секунд, где N параметр из вкладки Времена |
− | *'next_level' - запуск следующего уровня | + | *''next_level'' - запуск следующего уровня |
− | *'hint' - подсветка правильного слова на поле | + | *''hint'' - подсветка правильного слова на поле |
=Шаблон ячейки= | =Шаблон ячейки= | ||
Отдельного описания заслуживает шаблон ячейки. | Отдельного описания заслуживает шаблон ячейки. |
Версия 12:22, 26 сентября 2017
Объект Wordsearch дает возможность организовать ряд игр поиска слов на поле в виде сетки. Игра на данный момент имеет два настраиваемых режима: режим разбора поля и режим с досыпанием.
Словарь
- Ссылка на словарь - ссылка на файл словаря. Словарь должен быть в формате json.
- Язык - язык слов. На данный момент доступно 5 языков: русский, английский, французский, немецкий, испанский.
Пример словаря:
[["АГА", "АКР", "АКТ", "АРТ"], ["АВВА", "АВТО", "АЖУР", "АЗОТ", "АИСТ"], ["АББАТ", "АБВЕР", "АБЗАЦ", "АБОРТ", "АБРЕК", "АБРИС"]]
Уровни
- Ссылка на файл уровней - для каждого уровня должен быть свой файл, поэтому в этом поле указывается имя файла (например: lvl/level.txt), к которому в последствии будет прибавлен номер уровня. Т.е. в папке 'lvl' будут лежать файлы level0.txt, level1.txt и т.д. Если это поле не заполнено, то настройки будут браться по умолчанию из полей ниже.
Файлы уровней удобней править в специальной утилите.
- Номер - номер уровня. Передается параметром перед инициализацией.
Настройка игровой сетки
Ячейка сетки
Настройки сложности
Таблица и хинты
Правила игры
Времена
Перемешивание
Звуки
Для различных игровых действий можно вставлять звуки. Список доступных действий:
- выбор ячейки
- неверный выбор слова
- найдено слово
- хинт
- перемешивание
- 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 - подсветка правильного слова на поле
Шаблон ячейки
Отдельного описания заслуживает шаблон ячейки.