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

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
м (Игровые механики и режимы пазла)
м (Параметры пазла)
Строка 43: Строка 43:
 
:'''Маска''' ''(msk)'' — графический ресурс (изображение), которое накладывается на картинку (например текстура для придания изображению рельефности);
 
:'''Маска''' ''(msk)'' — графический ресурс (изображение), которое накладывается на картинку (например текстура для придания изображению рельефности);
 
:'''Рамка''' ''(fr)'' — графический ресурс для рамки по краям ячейки;
 
:'''Рамка''' ''(fr)'' — графический ресурс для рамки по краям ячейки;
:'''Рамка активной''' ''(fr)'' — графический ресурс для рамки вокруг активной ячейки;
+
:'''Рамка активной''' ''(fra)'' — графический ресурс для рамки вокруг активной ячейки;
:'''Рамка соседей''' ''(fr)'' — графический ресурс для рамок вокруг соседних ячеек;
+
:'''Рамка соседей''' ''(frn)'' — графический ресурс для рамок вокруг соседних ячеек;
 
:'''Флаер''' ''(fly)'' — флаер (подробнее см. объект редактора [http://ge.absolutist.com/index.php/Flyer «флаер»]), изображающий удачный ход. Он будет запущен над ячейкой которая встала на свое место.
 
:'''Флаер''' ''(fly)'' — флаер (подробнее см. объект редактора [http://ge.absolutist.com/index.php/Flyer «флаер»]), изображающий удачный ход. Он будет запущен над ячейкой которая встала на свое место.
  
Строка 58: Строка 58:
 
*'''Правила'''
 
*'''Правила'''
 
:'''Вращений''' ''(rot)'' — число возможных поворотов каждой ячейки пазла (0 — ячейки повернуть нельзя; 2 —  два варианта положения ячейки, или поворот на 180°; 4 — четыре варианта положения ячейки, или поворот на 90°);
 
:'''Вращений''' ''(rot)'' — число возможных поворотов каждой ячейки пазла (0 — ячейки повернуть нельзя; 2 —  два варианта положения ячейки, или поворот на 180°; 4 — четыре варианта положения ячейки, или поворот на 90°);
:'''Переставлять?''' ''(sw)'' — если 0 — ячейки нельзя переставлять местами путем поочередного выбора их мышью, 1 — можно;
+
:'''Переставлять?''' ''(swp)'' — если 0 — ячейки нельзя переставлять местами путем поочередного выбора их мышью, 1 — можно;
 
:'''Пятнашки''' ''(fif)'' — если 0 — обычная механика игры, 1 — играем в пятнашки (см. игровые механики и режимы пазла).
 
:'''Пятнашки''' ''(fif)'' — если 0 — обычная механика игры, 1 — играем в пятнашки (см. игровые механики и режимы пазла).
:'''Соседи''' ''(fif)'' — если 1 — переставлять можно только соседние элементы.
+
:'''Соседи''' ''(nei)'' — если 1 — переставлять можно только соседние элементы.
  
 
*'''Времена этапов'''
 
*'''Времена этапов'''
Строка 71: Строка 71:
  
 
*'''Счетчики'''
 
*'''Счетчики'''
:'''Таймер''' ''(time)'' — объект редактора [http://ge.absolutist.com/index.php/Timer «timer»] привязывается к пазлу и дает возможность собирать пазл определенное время, или использовать его для спортивного интереса, фиксирую время, за которое игрок соберет пазл. Таким образом игрок сможет с гордостью заявить своим друзьям, что он собрал пазл за такое-то время;
+
:'''Таймер''' ''(timer)'' — объект редактора [http://ge.absolutist.com/index.php/Timer «timer»] привязывается к пазлу и дает возможность собирать пазл определенное время, или использовать его для спортивного интереса, фиксирую время, за которое игрок соберет пазл. Таким образом игрок сможет с гордостью заявить своим друзьям, что он собрал пазл за такое-то время;
 
:'''Лучшее время''' ''(tmBest)'' — самое короткое время, за которое игрок собрал пазл. Оно считается лучшим и фиксируется в опциях для использования в прогрессе (см. объект редактора «progress»);
 
:'''Лучшее время''' ''(tmBest)'' — самое короткое время, за которое игрок собрал пазл. Оно считается лучшим и фиксируется в опциях для использования в прогрессе (см. объект редактора «progress»);
 
:'''Счетчик''' ''(count)'' — объект редактора [http://ge.absolutist.com/index.php/Counter «counter»] привязывается к пазлу и фиксирует количество ходов;
 
:'''Счетчик''' ''(count)'' — объект редактора [http://ge.absolutist.com/index.php/Counter «counter»] привязывается к пазлу и фиксирует количество ходов;

Версия 13:51, 11 августа 2014

Puzzle1.png

Пазл (puzzle) — встроенный объект редактора, имеющий определенную игровую механику, которая заключается в том, чтобы собрать необходимое изображение из прямоугольных ячеек (частей) за минимальное количество шагов (перемещений частей пазла).

Немного о графике

Для придания ячейкам объема служит графический ресурс рамка (собственный бордюр ячейки). Он может быть квадратной картинкой, прозрачной в центре и с серой полупрозрачной маской на краях. Её размер особой роли не играет. Например, 128x128:

Border.png

Общая ширина и высота картинки пазла задает игровое поле. Кроме этого есть поля ширина пазла и высота пазла, которые определяют размер центральной области картинки, которая разбивается на ячейки. Если эта область меньше размеров картинки, появится внешний бордюр, помогающий при сборке.

Игровые механики и режимы пазла

  • Ячейки пазла можно переставлять и вращать. По мере сбора пазла ячейки, оказывающиеся на своем месте, лишаются собственного бордюра и пазл постепенно проявляется
  • У пазла может быть внешний бордюр (часть исходного изображения), который не разрезается на части и помогает при сборке.
  • Пазл может быть увеличен и снова уменьшен

Возможны две игровые механики пазла:

  • обычная - все ячейки есть на игровом поле
  • пятнашки - одной ячейки нет (аналог обычных пятнашек).

Существует три уровня сложности сбора пазла с обычной механикой :

  • Легкий
  • Эксперт
  • Мастер

Режим «Эксперт» отличается от режима «Легкий» количеством ячеек, на которые разбивается исходное изображение (в режиме «Эксперт» их больше).
В режиме мастер столько же ячеек, сколько и в режиме эксперт, лишь добавлена возможность поворота ячеек по часовой стрелке вокруг своих центров (подробнее см. описание поворота в разделе параметры). Ячейка пазла поворачивается при повторном клике на нее мышью.

Важное замечание

В процессе сбора пазла на устройство сохраняются файлы, в которые записывается информация о ходе игры (какие пазлики на месте, а какие - нет). Структура имени файла, сохраняемого на устройство p<id_картинки>_<rows>_<cols>.puz (например p107_6_8.puz) .
При повторном сборе пазла или повторном открытии загружается информация из этих файлов , т.е .мы увидим тоже состояние пазла, что и перед выходом с этого экрана. Рекомендуется создать кнопку, дающую пользователю возможность начать игру с начала. .

Параметры пазла

(Курсивом в скобках указан id параметра, или состояния)

  • Внешний вид
Картинка (res) — это исходное изображение (графический ресурс) которое нужно собрать;
Колонок (cols) — количество колонок, на которые разбивается картинка;
Строчек (rows) — количество строчек (рядов), на которые разбивается картинка;
Сетка? (g) — если 1 — отображается сетка после разделения картинки на ячейки. Если 0 — сетка не отображается;
Пометка (alChk) — прозрачность выбранной ячейки пазла в диапазоне от нуля (полностью прозрачна, или невидима) до единицы (полностью не прозрачна, или видима);
Фон (alBkg) — прозрачность (от нуля до единицы) исходной картинки, отображаемой под пазлом в игровом поле;
Ширина пазла (vW) — размер ширины игрового поля в пикселях;
Высота пазла (vH) — размер высоты игрового поля в пикселях;
Маска (msk) — графический ресурс (изображение), которое накладывается на картинку (например текстура для придания изображению рельефности);
Рамка (fr) — графический ресурс для рамки по краям ячейки;
Рамка активной (fra) — графический ресурс для рамки вокруг активной ячейки;
Рамка соседей (frn) — графический ресурс для рамок вокруг соседних ячеек;
Флаер (fly) — флаер (подробнее см. объект редактора «флаер»), изображающий удачный ход. Он будет запущен над ячейкой которая встала на свое место.
  • Звуки (Звуковые ресурсы перетаскивается мышью из редактора ресурсов в поле параметра, которое должно находится в состоянии редактирования))
Выбор (sDn) — звук при выборе ячейки;
Перестановка (sSh) — звук при перестановке ячеек;
На месте (sOk) — звук при становлении ячейки на нужное место.
  • Смешивать
Перестановку (alSwp) — при поочередном выборе ячеек кликом мыши для перестановки, возможны два варианта визуализации этого процесса: первый (значение параметра 1) — ячейки остаются неподвижными, изменяются лишь их изображения по прозрачности (от нуля до единицы); второй (значение параметра 0) — происходит перемещение ячеек (ячейки меняются местами);
Вращение (alRot) — визуализацию поворот ячейки в режиме «мастер» возможно осуществить двумя способами: первый (значение параметра 1) — ячейка остается неподвижной, изменяется лишь ее изображение по прозрачности (от нуля до единицы); второй (значение параметра 0) — происходит поворот ячейки.
  • Правила
Вращений (rot) — число возможных поворотов каждой ячейки пазла (0 — ячейки повернуть нельзя; 2 — два варианта положения ячейки, или поворот на 180°; 4 — четыре варианта положения ячейки, или поворот на 90°);
Переставлять? (swp) — если 0 — ячейки нельзя переставлять местами путем поочередного выбора их мышью, 1 — можно;
Пятнашки (fif) — если 0 — обычная механика игры, 1 — играем в пятнашки (см. игровые механики и режимы пазла).
Соседи (nei) — если 1 — переставлять можно только соседние элементы.
  • Времена этапов
Невидимости (tmBeg) — время паузы перед открытием пазла;
Открытия (tmOpn) — время открытия картинки;
Показа (tmStt) — время отображения картинки перед тем, как она разделится на ячейки и перемешается. Это необходимо для того, чтобы игрок успел ознакомиться с изображением, которое ему необходимо собрать;
Перемешивания (tmMix) — время визуализации процесса перемешивания ячеек пазла;
Финала (tmFin) — время показа картнки когла она собрана. Это необходимо для того, чтобы игрок смог насладиться результатом своих стараний, а также смог повнимательнее разглядеть картинку;
Закрытия (tmCls) — время закрытия пазла (переход в состояние (close) по прозрачности (alpha) от единицы до нуля).
  • Счетчики
Таймер (timer) — объект редактора «timer» привязывается к пазлу и дает возможность собирать пазл определенное время, или использовать его для спортивного интереса, фиксирую время, за которое игрок соберет пазл. Таким образом игрок сможет с гордостью заявить своим друзьям, что он собрал пазл за такое-то время;
Лучшее время (tmBest) — самое короткое время, за которое игрок собрал пазл. Оно считается лучшим и фиксируется в опциях для использования в прогрессе (см. объект редактора «progress»);
Счетчик (count) — объект редактора «counter» привязывается к пазлу и фиксирует количество ходов;
Лучший счетчик (ctBest) — наименьшее количество ходов за которое пазл собран. Оно считается лучшим и фиксируется в опциях для использования в прогрессе;
Показов хинт счетчик (cntShw) — объект редактора «counter» привязывается к пазлу и фиксирует количество оставшихся подсказок-отображения (hint), тип подсказки когда картинка отображается на некоторое время;
Перест. хинт счетчик (cntSwp) — объект редактора «counter» привязывается к пазлу и фиксирует количество оставшихся подсказок-перестановки (swap), тип подсказки когда выделенная, или произвольная ячейка становится на свое место;
Игра (game) — имя игры, раздел в опциях, который надо вычитать для получения начального значения прогресса (например, для отображения результатов);
Уровень (level) — имя уровня, параметра в разделе игра (см. выше), который надо вычитать для получения начального значения прогресса (например, для отображения результатов). В опциях записывается как «имя игры».«имя уровня» (game.level);
Сохранять в профиль (prof) — если 1, то все значения будут сохранены в текущий профиль, 0 — глобально.
Хозяйке на заметку:
таким образом, с пазлом может быть связан таймер и три счетчика (числа ходов, и числа использования двух видов
подсказок). Если, например, счетчик числа ходов определен, в опциях (файл options.xml) сохраняются данные подобного вида:

<obj nm="options" >
   <pk1>
      <pz01 lv0="2" lv0ct="7" />
   </pk1>
</obj>
В этом примере параметр «игра» записывается как «pk1.pz01», а параметр «уровень» —  «lv0». Эти параметры могут быть заданы как в
свойствах пазла, так и внешними объектами. Наличие точки в параметре «игра» разбивает раздел опций на подразделы.


  • Времена игры
Перестановки (tmSwp) — время перестановки двух ячеек местами;
Поворота (tmRot) — время поворота ячейки;
Паузы (tmShw) — время паузы перед началом перестановки или поворота;
Подсказки1 (tmHnt1) — время за которое проявляется исходная картинка в состоянии (hint);
Подсказки2 (tmHnt2) — время в течении которого показывается исходная картинка в состоянии (hint) после проявления;
Подсказки3 (tmHnt3) — время в течении которого закрывается исходная картинка в состоянии (hint) после проявления.
  • Рейтинг (raiting) — если 1 — после того как пазл собран, отображается рейтинг.

Подсказки

В игре есть два вида подсказок: (hint) и (swap). Первый проявляет исходную картинку, второй переставляет две ячейки местами, из которых, по крайней мере одна, окажется на своем месте. Если кнопкой или машиной состояний перевести пазл в состояние (hint), то он исчезнет по прозрачности (за время tmHnt1), а исходная картинка проявится. Затем, в течении (tmHnt2), будет демонстрироваться исходная картинка, и за время (tmHnt3), она по прозрачности исчезнет, а пазл снова перейдет в стадию игры. Состояние (swap) ставит одну из ячеек (выделенную игроком, или произвольную) на свое место. Кроме этого пазл можно перевести в состояние (scale). В этом состоянии он увеличивается в размерах и его можно таскать по экрану. Повторение состояния (scale) уменьшает возвращает пазлу исходные размеры.

Добавляемые параметры

Pazzzzl.png

Меню выбора Добавляемые параметры к объектам активируется по правой кнопки мыши.

+.png Изменить состояние объекта - После разбора перевести объект в новое состояние.

  • объект- после разбора перевести объект в состояние из следующего поля.
  • состояние - новое состояние для объекта из предыдущего поля.

+.png Изменить параметр объекта - После разбора изменить параметр объекта.

  • объект- после разбора этот объект меняет свой параметр.
  • свойство - парамет, который мы изменяем.
  • значение - новое значение параметра.

Возможные состояния объекта

(beg) — пауза перед состоянием (open);
(open) — картинка появлятся по прозрачности от нуля до единицы;
(start) — начальный показ картинки;
(mix) — перемещать ячейки;
(scale) — масштабирование (изменение размера) пазла;
(wait) — ожидание первого клика на ячейку;
(check) — проверка собранности пазла, если собран — переход в состояние (final);
(hint) — временное отображение картинки;
(swap) — выделенная, или произвольная ячейка становится на свое место;
(final) — показ картинки в конце игры;
(close) — закрытие пазла по прозрачности;
(end) — конец игры, пазл недоступен;
(init) — повторная инициализация картинки, переход в состояние (beg).

Пример

Объект «Пазл» в редакоре выглядит так:

01.JPG


Картинку пазла можно задать, перетянув изображение из редактора ресурсов в поле «картинка»:

02.JPG


либо с помощью другого объекта (например кнопкой, или машиной):

6.2.JPG


Выбор сложности игры делается отдельным экраном, на котором есть кнопки которые меняют параметры пазла:

6.3.JPG


Выбор сложности на устройстве:

6.3.1.JPG


И, наконец, пазл на устройстве выглядит примерно так:

6.4.JPG

Пример

Download