Pentamino — различия между версиями
Bmor (обсуждение | вклад) |
(→Пример) |
||
(не показаны 4 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
− | |||
'''Pentamino''' - [[Object|объект]] для реализации механики игры в [https://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D0%BD%D1%82%D0%B0%D0%BC%D0%B8%D0%BD%D0%BE пентамино]. | '''Pentamino''' - [[Object|объект]] для реализации механики игры в [https://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D0%BD%D1%82%D0%B0%D0%BC%D0%B8%D0%BD%D0%BE пентамино]. | ||
Строка 8: | Строка 7: | ||
'''Игровое поле''' - разметка области внутри объекта, в которой будет располагаться игровое поле | '''Игровое поле''' - разметка области внутри объекта, в которой будет располагаться игровое поле | ||
− | *'''Положение поля''' - координаты верхнего левого угла поля (точкой отсчета является положение самого pentamino (т.е. левая верхняя точка объекта) | + | *'''Положение поля''' ( xf , yf ) - координаты верхнего левого угла поля (точкой отсчета является положение самого pentamino (т.е. левая верхняя точка объекта) |
− | *'''Размер поля''' - размер игрового поля, считается вправо-вниз от его положения | + | *'''Размер поля''' ( wf , hf ) - размер игрового поля, считается вправо-вниз от его положения |
'''Инвентарь''' - разметка области внутри объекта, в которой будет располагаться инвентарь, в котором будут находиться "детали" головоломки | '''Инвентарь''' - разметка области внутри объекта, в которой будет располагаться инвентарь, в котором будут находиться "детали" головоломки | ||
− | *'''Положение | + | *'''Положение инвентаря''' ( xPF , yPF ) - координаты верхнего левого угла поля (точкой отсчета является положение самого pentamino (т.е. левая верхняя точка объекта) |
− | *'''Размер | + | *'''Размер инвентаря''' ( wPF , hPF ) - размер иинвентаря, считается вправо-вниз от его положения |
'''Графика''' | '''Графика''' | ||
− | *'''Подложка''' - графика подложки ячеек | + | *'''Подложка''' ( background ) - графика подложки ячеек |
*'''Рамки''' | *'''Рамки''' | ||
− | **'''поля''' - ресурс для рамки клетки поля | + | **'''поля''' ( fld_res ) - ресурс для рамки клетки поля |
− | **'''особая''' - специальная рамочка, которая подсвечивает место, куда ляжет пентамино | + | **'''особая''' ( fldal_res ) - специальная рамочка, которая подсвечивает место, куда ляжет пентамино |
− | **'''пентамино''' - ресурс для рамки клетки пентамино | + | **'''пентамино''' ( frm_res ) - ресурс для рамки клетки пентамино |
− | *'''пентамино''' - ресурс(ы) для тайлинга фигур (клипами анимации) | + | *'''пентамино''' ( pent_res ) - ресурс(ы) для тайлинга фигур (клипами анимации) |
− | *'''пустая ячейка''' - ресурс для ячейки в которой не могут размещаться фигуры | + | *'''пустая ячейка''' ( emp_res ) - ресурс для ячейки в которой не могут размещаться фигуры |
− | *'''прозрачность рамки''' - с заданной прозрачностью будут отображаться выделенные в файле уровней рамка поля | + | *'''прозрачность рамки''' ( alpha_cell ) - с заданной прозрачностью будут отображаться выделенные в файле уровней рамка поля |
'''Машины состояний и анимации''' | '''Машины состояний и анимации''' | ||
− | *'''установка фигуры''' - Анимация, которая будет переходить в состояние beg при установки фигуры | + | *'''установка фигуры''' ( aDrop ) - Анимация, которая будет переходить в состояние beg при установки фигуры |
− | *'''таскание фигуры''' - Анимация, которая будет переходить в состояние beg при таскание фигуры | + | *'''таскание фигуры''' ( aFly ) - Анимация, которая будет переходить в состояние beg при таскание фигуры |
− | *'''неправильная установка фигуры''' - Анимация, которая будет переходить в состояние beg, если фигура установлена неправильно и будет возвращена в инвентарь | + | *'''неправильная установка фигуры''' ( objid ) - Анимация, которая будет переходить в состояние beg, если фигура установлена неправильно и будет возвращена в инвентарь |
'''Звуки''' | '''Звуки''' | ||
− | *'''поднял фигуру''' - звук, который воспроизводится при поднятии фигуры | + | *'''поднял фигуру''' ( snd_take ) - звук, который воспроизводится при поднятии фигуры |
− | *'''бросил правильно''' - звук, который воспроизводится при правильном броске фигуры | + | *'''бросил правильно''' ( snd_drop ) - звук, который воспроизводится при правильном броске фигуры |
− | *'''бросил мимо поля''' - звук, который воспроизводится при броске фигуры мимо поля | + | *'''бросил мимо поля''' ( snd_miss_drop ) - звук, который воспроизводится при броске фигуры мимо поля |
− | *'''возврат в инвентарь''' - звук, который воспроизводится при возврате фигуры в инвентарь | + | *'''возврат в инвентарь''' ( snd_inv ) - звук, который воспроизводится при возврате фигуры в инвентарь |
'''Уровни''' | '''Уровни''' | ||
− | *'''файл уровня''' - Имя файла с уровнями | + | *'''файл уровня''' ( levelFile ) - Имя файла с уровнями |
− | *'''номер уровня''' - Номер загружаемого уровня из файла уровней | + | *'''номер уровня''' ( levelNum ) - Номер загружаемого уровня из файла уровней |
'''Хинт''' | '''Хинт''' | ||
− | *'''альфа хинта''' - с заданной прозрачностью будет отображаться хинт | + | *'''альфа хинта''' ( alpha_hint ) - с заданной прозрачностью будет отображаться хинт |
− | *'''время хинта''' - за данное время хинт от непрозрачного дойдет до заданной прозрачности | + | *'''время хинта''' ( tm_hint ) - за данное время хинт от непрозрачного дойдет до заданной прозрачности |
== Добавляемые параметры == | == Добавляемые параметры == | ||
Строка 82: | Строка 81: | ||
<pre> | <pre> | ||
− | <nowiki> | + | <nowiki><levels> |
− | <levels> | ||
<level id="0" col="4" row="4" len="111"> | <level id="0" col="4" row="4" len="111"> | ||
<field> | <field> | ||
Строка 92: | Строка 90: | ||
</field> | </field> | ||
</level> | </level> | ||
− | </levels> | + | </levels></nowiki> |
− | </nowiki> | ||
</pre> | </pre> | ||
'''levels''' - основной тег, must have | '''levels''' - основной тег, must have | ||
Строка 105: | Строка 102: | ||
== Пример == | == Пример == | ||
− | + | S:\!MOBILE\!!!EditorGames\Wiki_sample\Pentamino.rar | |
[[Category:Game mechanic]] | [[Category:Game mechanic]] | ||
− |
Текущая версия на 11:40, 3 апреля 2017
Pentamino - объект для реализации механики игры в пентамино.
Содержание
Дополнительные параметры
Положение - координата верхнего левого угла объекта на сцене
Игровое поле - разметка области внутри объекта, в которой будет располагаться игровое поле
- Положение поля ( xf , yf ) - координаты верхнего левого угла поля (точкой отсчета является положение самого pentamino (т.е. левая верхняя точка объекта)
- Размер поля ( wf , hf ) - размер игрового поля, считается вправо-вниз от его положения
Инвентарь - разметка области внутри объекта, в которой будет располагаться инвентарь, в котором будут находиться "детали" головоломки
- Положение инвентаря ( xPF , yPF ) - координаты верхнего левого угла поля (точкой отсчета является положение самого pentamino (т.е. левая верхняя точка объекта)
- Размер инвентаря ( wPF , hPF ) - размер иинвентаря, считается вправо-вниз от его положения
Графика
- Подложка ( background ) - графика подложки ячеек
- Рамки
- поля ( fld_res ) - ресурс для рамки клетки поля
- особая ( fldal_res ) - специальная рамочка, которая подсвечивает место, куда ляжет пентамино
- пентамино ( frm_res ) - ресурс для рамки клетки пентамино
- пентамино ( pent_res ) - ресурс(ы) для тайлинга фигур (клипами анимации)
- пустая ячейка ( emp_res ) - ресурс для ячейки в которой не могут размещаться фигуры
- прозрачность рамки ( alpha_cell ) - с заданной прозрачностью будут отображаться выделенные в файле уровней рамка поля
Машины состояний и анимации
- установка фигуры ( aDrop ) - Анимация, которая будет переходить в состояние beg при установки фигуры
- таскание фигуры ( aFly ) - Анимация, которая будет переходить в состояние beg при таскание фигуры
- неправильная установка фигуры ( objid ) - Анимация, которая будет переходить в состояние beg, если фигура установлена неправильно и будет возвращена в инвентарь
Звуки
- поднял фигуру ( snd_take ) - звук, который воспроизводится при поднятии фигуры
- бросил правильно ( snd_drop ) - звук, который воспроизводится при правильном броске фигуры
- бросил мимо поля ( snd_miss_drop ) - звук, который воспроизводится при броске фигуры мимо поля
- возврат в инвентарь ( snd_inv ) - звук, который воспроизводится при возврате фигуры в инвентарь
Уровни
- файл уровня ( levelFile ) - Имя файла с уровнями
- номер уровня ( levelNum ) - Номер загружаемого уровня из файла уровней
Хинт
- альфа хинта ( alpha_hint ) - с заданной прозрачностью будет отображаться хинт
- время хинта ( tm_hint ) - за данное время хинт от непрозрачного дойдет до заданной прозрачности
Добавляемые параметры
подняли фишку - при изъятии фигуры из инвентаря или игрового поля:
- машина - Машина, реагирующая на подьем фигуры
- состояние - Переводим машину в указанное состояние
- параметр - Изменяем указанный параметр машины
- значение параметра - Изменяем параметр на указанное значение
опустили фишку - при отпускании фишки:
- машина - Машина, реагирующая на опускание фигуры
- состояние - Переводим машину в указанное состояние
- параметр - Изменяем указанный параметр машины
- значение параметра - Изменяем параметр на указанное значение
победа - если поле полностью собрано (на поле нет пустых ячеек):
- машина - Машина, реагирующая на собранное поле (победа)
- состояние - Переводим машину в указанное состояние
- параметр - Изменяем указанный параметр машины
- значение параметра - Изменяем параметр на указанное значение
Состояния
(TODO)
- nextlevel - загружает следующий уровень. Если текущий уровень последний, то запускается первый.
Примечания
- Координаты игрового поля и инвентаря отсчитываются от левого верхнего угла объекта pentamino.
Уровни пентамино
Уровни для пентамино хранятся в xml файле со следующей структурой:
<levels> <level id="0" col="4" row="4" len="111"> <field> 0000 00*0 0*00 0000 </field> </level> </levels>
levels - основной тег, must have level - параметры и структура уровня
- id - идентификатор уровня, используется в поле Уровни - номер уровня
- col - кол-во столбцов, считываемых из поля field
- row - кол-во строк, считываемых из поля field
- len - (?) средний\предпочитаемый размер фигуры (кол-во элементов в одной фигуре)
field - хранилище игрового поля; возможна запись одной строкой. 0 - свободная ячейка, * - недоступная ячейка
Пример
S:\!MOBILE\!!!EditorGames\Wiki_sample\Pentamino.rar