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

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
м
(Основные параметры)
 
(не показано 38 промежуточных версий 8 участников)
Строка 1: Строка 1:
 
{{TOC right}}
 
{{TOC right}}
'''Общие сведения'''
+
== Общие сведения ==
<br>
+
[[Object|объект]] '''Progress''' используют для отображения каких либо ачивментов, например когда игрок проходить уровень он может получить 1,2,3 звезды или бронзовую, серебряную, золотую.
Объект Progress используют для отображения каких либо ачивментов, например когда игрок проходить уровень он может получить 1,2,3 звезды или бронзовую, серебряную, золотую.
 
<br>
 
<br>
 
'''Общие параметры'''
 
(см. описание [[Object|Object]])
 
*'''[[прокликиваемая]]''' - Если 1, то кнопка прозрачна для клика мышкой (пропускает объектам под ней). Если 2, то кнопка сама обрабатывает клик, но и пропускает его дальше
 
*'''память''' - Если 1, то при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана)
 
 
 
  
 
== Основные параметры ==
 
== Основные параметры ==
 
[[Файл:Progress_properties.png|250px|right]]
 
[[Файл:Progress_properties.png|250px|right]]
'''тип''' - Тип прогрессбара. анимационный=0, линейный=1, дугообразный=2
+
*'''тип''' - тип прогрессбара: 0 - анимационный, 1 - линейный, 2 - дугообразный;
 +
* '''имя''' - объекта в дереве проекта. Может быть произвольным
 +
* '''синхронизация''' - синхронизация между лейаутами: нет - нет синхронизации; да - есть синхронизация.
 +
* '''положение'''
 +
** '''x''' - положение объекта по оси х
 +
** '''y''' - положение объекта по оси y
 +
* '''размер'''
 +
** '''w''' - ширина объекта в пикслях
 +
** '''h''' - высота объекта в пикселях
 +
* '''модификаторы'''
 +
** '''alpha''' - прозрачность объекта от 0 (прозрачен) до 1 (не прозрачен)
 +
** '''blending''' - Alpha смешивание: parent=0, blend=1, half=2, add=3, sub=4, none=5
 +
** '''angle''' - угол поворота в градусах. 0 - не повернут. Отсчитывается от оси х вниз. Вверх идут отрицательные углы.
 +
** '''scale x''' - масштаб по оси х: 1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.
 +
** '''scale y''' - масштаб по оси y: 1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.
 +
* '''память''' - если 1 - не обновляет свои параметры при последующем открытии экрана, 0 - обновляет
 +
* '''z''' - параметр порядка рисования объекта. Сначала рисуются объекты с большим z, а под ними с меньшим
 +
* '''тайлинг''' - если да - включить тайлинг
 +
* '''прокликиваемая''' - если 1, то картинка прозрачна для клика мышкой (пропускает объектам под ней). Если 2, то картинка сама обрабатывает клик, но и пропускает его дальше
 +
 
 +
*'''игра''' ''(game)'' - Имя игры (раздела в опциях), который надо вычитать для получения начального значения прогресса (например, для отображения результатов).
 +
 
 +
*'''уровень''' ''(level)'' - Имя уровня (параметра в разделе игра - см.выше), который надо вычитать для получения начального значения прогресса (например, для отображения результатов). Для каждого прогресса разделы равны: [game.]level0, [game.]level1,...
 +
 
 +
*'''сохранять в профиль''' ''(prof)'' - Если = 1, то значение будет сохранено в текущий профиль, если 0 - то глобально.
  
'''сохранять в профиль''' ''(prof)'' - Если = 1, то значение будет сохранено в текущий профиль, если 0 - то глобально.
+
*'''тип изменения''' ''(chType)'' - Тип изменения (увеличение (0), уменьшение (1)).Если параметр меняется то прогрессу нужно передать состояние ('''init''') !
  
'''игра''' ''(game)'' - Имя игры (раздела в опциях), который надо вычитать для получения начального значения прогресса (например, для отображения результатов).
+
*'''изменение''' ''(chVal)'' - Изменение значения прогреса при вызове состояния next
  
'''уровень''' ''(level)'' - Имя уровня (параметра в разделе игра - см.выше), который надо вычитать для получения начального значения прогресса (например, для отображения результатов). Для каждого прогресса разделы равны: [game.]level0, [game.]level1,...
+
*'''значение''' ''(val)'' - Текущее значение прогрессбара
  
'''тип изменения''' ''(chType)'' - Тип изменения (увеличение, уменьшение)
+
*'''мин.зн''' ''(minVal)'' - Минимальное значение прогрессбара
  
'''изменение''' ''(chVal)'' - Изменение значения прогреса при вызове состояния next
+
*'''макс.зн''' ''(maxVal)'' - Максимальное значение прогрессбара
  
'''значение''' ''(val)'' - Текущее значение прогрессбара
+
*'''нахлест заполнителя''' ''(cov)'' - Нахлест текстур заполнителя в пикселях
  
'''мин.зн''' ''(minVal)'' - Минимальное значение прогрессбара
+
*'''скорость''' ''(vel)'' - Скорость анимации изменения прогреса в точках за секунду
  
'''макс.зн''' ''(maxVal)'' - Максимальное значение прогрессбара
+
'''Группа - позиционирование'''
  
'''нахлест заполнителя''' ''(cov)'' - Нахлест текстур заполнителя в пикселях
+
*'''горизонтальное''' - 0 - нет выравнивания; 1 - прижать к левому краю; 2 - центр; 3 - к правому
  
'''скорость''' ''(vel)'' - Скорость анимации изменения прогреса в точках за секунду
+
*'''вертикальное''' - 0 - нет выравнивания; 1 - прижать к верхнему краю; 2 - центр; 3 - к нижнему
  
==Ресурсы==
+
'''Группа - ресурсы'''
  
'''нач.граница''' ''(resBBord)'' - Ресурс, который рисуется в начальной точке прогрессбара
+
*'''нач.граница''' ''(resBBord)'' - Ресурс, который рисуется в начальной точке прогрессбара
  
'''заполнитель''' ''(resTail)'' - Ресурс, который будет тайлиться в зависимости от заполнения прогресса
+
*'''заполнитель''' ''(resTail)'' - Ресурс, который будет тайлиться в зависимости от заполнения прогресса
  
'''указатель''' ''(resCurr)'' - Ресурс, который рисуется в текущей точке прогрессбара
+
*'''указатель''' ''(resCurr)'' - Ресурс, который рисуется в текущей точке прогрессбара
  
==Анимационный==
+
*'''объект указатель''' ''(objCurr)'' - Объект, который рисуется в текущей точке прогрессбара
  
'''res''' ''(res)'' — в качестве графического ресурса исп. анимация с нужным на количеством кадров
+
'''Группа - анимационный'''
  
'''количество''' ''(num)'' — количество прогресс баров
+
*'''res''' ''(res)'' — в качестве графического ресурса используется анимация с нужным на количеством кадров. Перетаскивается мышкой из редактора ресурсов (поле должно находится в состоянии редактирования)
  
'''dx''' ''(dx)'' — расстояние между прогресс барами по X, если их больше 1
+
*'''количество''' ''(num)'' — количество прогресс баров
  
'''dy''' ''(dy)'' — расстояние между прогресс барами по Y, если их больше 1
+
*'''dx''' ''(dx)'' — расстояние между прогресс барами по X, если их больше 1
  
'''вертикальный''' ''(ver)'' если 1, то прогресс бар будет размножен вертикально, 0 - горизонтально
+
*'''dy''' ''(dy)'' — расстояние между прогресс барами по Y, если их больше 1
  
==Дугообразный==
+
*'''вертикальный''' ''(ver)'' – если 1, то прогресс бар будет размножен вертикально, 0 - горизонтально
  
'''нач.угол''' ''(angBeg)'' - Угол, с которого рисуем дугу
+
'''Группа - дугообразный'''
  
'''угол дуги''' ''(angCurv)'' - Угол в котором дуга завершается
+
*'''нач.угол''' ''(angBeg)'' - Угол, с которого рисуем дугу
  
'''направление''' ''(angDir)'' - Направление угла дуги. 0-по часовой стрелке, 1-против часовой стрелки
+
*'''угол дуги''' ''(angCurv)'' - Угол в котором дуга завершается
 +
 
 +
*'''направление''' ''(angDir)'' - Направление угла дуги. 0-по часовой стрелке, 1-против часовой стрелки
  
 
==Добавляемые параметры==
 
==Добавляемые параметры==
 +
Меню выбора ''Добавляемые параметры'' к объектам активируется по нажатию правой кнопки мыши.
  
'''Изменилось значение: изменить параметры объекта''' - после изменения значения прогресбара изменить параметр объекта.
+
[[Файл:+.png]] '''диапазон''' - Диапазон при котором меняется заполнитель.
 +
 
 +
*'''нач.зн''' - Начальное значение прогрессбара
 +
 
 +
*'''кон.зн''' - Конечное значение прогрессбара
 +
 
 +
*'''заполнитель''' - Ресурс, который будет тайлиться когда прогрессбар принимает значение из диапазона
 +
 
 +
*'''нач объект''' - При входе в диапазон перевести объект в состояние из следующего поля
 +
 
 +
*'''нач состояние''' - Новое состояние для объекта из предыдущего поля
 +
 
 +
*'''нач объект''' - При выходе из диапазона перевести объект в состояние из следующего поля
 +
 
 +
*'''нач состояние''' - Новое состояние для объекта из предыдущего поля
 +
 
 +
[[Файл:+.png]] '''Изменилось значение: изменить параметры объекта''' - после изменения значения прогресбара изменить параметр объекта.
  
 
*'''объект''' - объект, состояние которого меняем  
 
*'''объект''' - объект, состояние которого меняем  
Строка 73: Строка 108:
 
*'''значение''' - новое значение параметра
 
*'''значение''' - новое значение параметра
  
'''Изменилось значение: изменить состояние объекта''' - после изменения значения прогресбара перевести объект в новое состояние.
+
[[Файл:+.png]] '''Изменилось значение: изменить состояние объекта''' - после изменения значения прогресбара перевести объект в новое состояние.
  
 
*'''объект''' - объект, состояние которого меняем
 
*'''объект''' - объект, состояние которого меняем
Строка 79: Строка 114:
 
*'''состояние''' - новое состояние для объекта из предыдущего поля
 
*'''состояние''' - новое состояние для объекта из предыдущего поля
  
'''Завершен прогрес: изменить параметры объекта''' - после завершения прогреса изменить параметр объекта.
+
[[Файл:+.png]] '''Завершен прогрес: изменить параметры объекта''' - после завершения прогреса изменить параметр объекта.
  
 
*'''объект''' - объект, состояние которого меняем
 
*'''объект''' - объект, состояние которого меняем
Строка 87: Строка 122:
 
*'''значение''' - новое значение параметра
 
*'''значение''' - новое значение параметра
  
'''Завершен прогрес: изменить состояние объекта''' - после завершения прогресса перевести объект в новое состояние.
+
[[Файл:+.png]] '''Завершен прогрес: изменить состояние объекта''' - после завершения прогресса перевести объект в новое состояние.
  
 
*'''объект''' - объект, состояние которого меняем
 
*'''объект''' - объект, состояние которого меняем
Строка 93: Строка 128:
 
*'''состояние''' - новое состояние для объекта из предыдущего поля
 
*'''состояние''' - новое состояние для объекта из предыдущего поля
  
= Как работает =
+
= Использование объекта =
  
 
Для отображения нужного кадра анимации прогресс бар вычитывает данные из [[Options]] в зависимости от значения 0,1,2.... показывает определенный  фрейм анимации<br>
 
Для отображения нужного кадра анимации прогресс бар вычитывает данные из [[Options]] в зависимости от значения 0,1,2.... показывает определенный  фрейм анимации<br>
 
Чтение значений из опций осуществляется с помощью полей '''''игра''''' и '''''уровень'''''<br>
 
Чтение значений из опций осуществляется с помощью полей '''''игра''''' и '''''уровень'''''<br>
Эти параметры можно менять с помощью машин, тогда прогресс будит вычитывать разные значения.<br>
+
Эти параметры можно менять с помощью машин, тогда прогресс будет вычитывать разные значения.<br>
  
 
Ниже приведена запись из опций с которых прогресс вычитает значения:
 
Ниже приведена запись из опций с которых прогресс вычитает значения:
Строка 107: Строка 142:
 
У нас есть два значения lv0="2" и lv1="1"
 
У нас есть два значения lv0="2" и lv1="1"
  
Напомню что у нас есть такое поле как '''количество''' и мы может одним progress`ом вычитать эти два значения и отобразить если поставим кол-во = 2.<br>
+
Напоминаем, что у нас есть такое поле как '''количество''' и мы может одним progress`ом вычитать эти два значения и отобразить если поставим кол-во = 2.<br>
 
Для этого в поле игра мы пишем "pk1.pz01", а в уровень пишем просто "lv". Запись в опциях lv0 и lv1 означает что это значения для прогресс бара с кол-ом  = 2 и в первую свою копию он считает значение lv0 во вторую lv1 и отобразит две к примеру звезды и каждую со своим фреймом.<br>
 
Для этого в поле игра мы пишем "pk1.pz01", а в уровень пишем просто "lv". Запись в опциях lv0 и lv1 означает что это значения для прогресс бара с кол-ом  = 2 и в первую свою копию он считает значение lv0 во вторую lv1 и отобразит две к примеру звезды и каждую со своим фреймом.<br>
 
pk01, pz01, lv0, lv1 и т.д. это просто ключи по которым прогресс вычитывает нужные значение, по-этому они могут быть произвольными.<br>
 
pk01, pz01, lv0, lv1 и т.д. это просто ключи по которым прогресс вычитывает нужные значение, по-этому они могут быть произвольными.<br>
  
 
'''Одно только правило:''' Если у нас указано кол-во. То в  опции параметр уровень мы должны записывать с числовой приставкой (например lv0,lv1,lv2) и т.д. Если у нас кол = 1, то прогресс будет вычитывать значение из lv0.
 
'''Одно только правило:''' Если у нас указано кол-во. То в  опции параметр уровень мы должны записывать с числовой приставкой (например lv0,lv1,lv2) и т.д. Если у нас кол = 1, то прогресс будет вычитывать значение из lv0.
 
  
 
При работе с '''дуговым''' прогрессом важно знать:
 
При работе с '''дуговым''' прогрессом важно знать:
  
 
  Радиус дуги = высота прогресса / 2 . Центр окружности в точке пересечений диагоналей объекта прогресс.
 
  Радиус дуги = высота прогресса / 2 . Центр окружности в точке пересечений диагоналей объекта прогресс.
 +
 +
= Передаваемые состояния =
 +
 +
:'''next'''  - добавит к текущему значению ''chVal''(''изменение'') и визуально c скоростью "vel" (''скорость'') сменит своё состояние ("при увеличении" - станет более заполненным);
 +
 +
= Пример=
 +
Пример использования объекта, типа Progress в хидденах:
 +
 +
[[Файл:Progress1_1.jpg|700px]] [[Файл:Progress2_1.jpg|205px]]
 +
 +
В данном примере используется 2 объекта типа Progress, тип которых - линейный: 1 - combo_progress для отображения комбо прогресса в очковой системе хидденлиста,<br /> 2 - cnt_prgss для отображения количества найденных объектов.
 +
 +
Параметры объектов типа Progress следующие:
 +
 +
[[Файл:Progress3_1.jpg|250px]]  [[Файл:Progress4_1.jpg|250px]]
 +
 +
[[Category:Main objects]]

Текущая версия на 13:17, 18 июня 2018

Общие сведения

объект Progress используют для отображения каких либо ачивментов, например когда игрок проходить уровень он может получить 1,2,3 звезды или бронзовую, серебряную, золотую.

Основные параметры

Progress properties.png
  • тип - тип прогрессбара: 0 - анимационный, 1 - линейный, 2 - дугообразный;
  • имя - объекта в дереве проекта. Может быть произвольным
  • синхронизация - синхронизация между лейаутами: нет - нет синхронизации; да - есть синхронизация.
  • положение
    • x - положение объекта по оси х
    • y - положение объекта по оси y
  • размер
    • w - ширина объекта в пикслях
    • h - высота объекта в пикселях
  • модификаторы
    • alpha - прозрачность объекта от 0 (прозрачен) до 1 (не прозрачен)
    • blending - Alpha смешивание: parent=0, blend=1, half=2, add=3, sub=4, none=5
    • angle - угол поворота в градусах. 0 - не повернут. Отсчитывается от оси х вниз. Вверх идут отрицательные углы.
    • scale x - масштаб по оси х: 1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.
    • scale y - масштаб по оси y: 1 - не изменен, 1.5 - увеличен в полтора раза, и т.д.
  • память - если 1 - не обновляет свои параметры при последующем открытии экрана, 0 - обновляет
  • z - параметр порядка рисования объекта. Сначала рисуются объекты с большим z, а под ними с меньшим
  • тайлинг - если да - включить тайлинг
  • прокликиваемая - если 1, то картинка прозрачна для клика мышкой (пропускает объектам под ней). Если 2, то картинка сама обрабатывает клик, но и пропускает его дальше
  • игра (game) - Имя игры (раздела в опциях), который надо вычитать для получения начального значения прогресса (например, для отображения результатов).
  • уровень (level) - Имя уровня (параметра в разделе игра - см.выше), который надо вычитать для получения начального значения прогресса (например, для отображения результатов). Для каждого прогресса разделы равны: [game.]level0, [game.]level1,...
  • сохранять в профиль (prof) - Если = 1, то значение будет сохранено в текущий профиль, если 0 - то глобально.
  • тип изменения (chType) - Тип изменения (увеличение (0), уменьшение (1)).Если параметр меняется то прогрессу нужно передать состояние (init) !
  • изменение (chVal) - Изменение значения прогреса при вызове состояния next
  • значение (val) - Текущее значение прогрессбара
  • мин.зн (minVal) - Минимальное значение прогрессбара
  • макс.зн (maxVal) - Максимальное значение прогрессбара
  • нахлест заполнителя (cov) - Нахлест текстур заполнителя в пикселях
  • скорость (vel) - Скорость анимации изменения прогреса в точках за секунду

Группа - позиционирование

  • горизонтальное - 0 - нет выравнивания; 1 - прижать к левому краю; 2 - центр; 3 - к правому
  • вертикальное - 0 - нет выравнивания; 1 - прижать к верхнему краю; 2 - центр; 3 - к нижнему

Группа - ресурсы

  • нач.граница (resBBord) - Ресурс, который рисуется в начальной точке прогрессбара
  • заполнитель (resTail) - Ресурс, который будет тайлиться в зависимости от заполнения прогресса
  • указатель (resCurr) - Ресурс, который рисуется в текущей точке прогрессбара
  • объект указатель (objCurr) - Объект, который рисуется в текущей точке прогрессбара

Группа - анимационный

  • res (res) — в качестве графического ресурса используется анимация с нужным на количеством кадров. Перетаскивается мышкой из редактора ресурсов (поле должно находится в состоянии редактирования)
  • количество (num) — количество прогресс баров
  • dx (dx) — расстояние между прогресс барами по X, если их больше 1
  • dy (dy) — расстояние между прогресс барами по Y, если их больше 1
  • вертикальный (ver) – если 1, то прогресс бар будет размножен вертикально, 0 - горизонтально

Группа - дугообразный

  • нач.угол (angBeg) - Угол, с которого рисуем дугу
  • угол дуги (angCurv) - Угол в котором дуга завершается
  • направление (angDir) - Направление угла дуги. 0-по часовой стрелке, 1-против часовой стрелки

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

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

+.png диапазон - Диапазон при котором меняется заполнитель.

  • нач.зн - Начальное значение прогрессбара
  • кон.зн - Конечное значение прогрессбара
  • заполнитель - Ресурс, который будет тайлиться когда прогрессбар принимает значение из диапазона
  • нач объект - При входе в диапазон перевести объект в состояние из следующего поля
  • нач состояние - Новое состояние для объекта из предыдущего поля
  • нач объект - При выходе из диапазона перевести объект в состояние из следующего поля
  • нач состояние - Новое состояние для объекта из предыдущего поля

+.png Изменилось значение: изменить параметры объекта - после изменения значения прогресбара изменить параметр объекта.

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

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

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

+.png Завершен прогрес: изменить параметры объекта - после завершения прогреса изменить параметр объекта.

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

+.png Завершен прогрес: изменить состояние объекта - после завершения прогресса перевести объект в новое состояние.

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

Использование объекта

Для отображения нужного кадра анимации прогресс бар вычитывает данные из Options в зависимости от значения 0,1,2.... показывает определенный фрейм анимации
Чтение значений из опций осуществляется с помощью полей игра и уровень
Эти параметры можно менять с помощью машин, тогда прогресс будет вычитывать разные значения.

Ниже приведена запись из опций с которых прогресс вычитает значения:

  <pk1>
     <pz01 lv0="2" lv1="1"/>
  </pk1>

У нас есть два значения lv0="2" и lv1="1"

Напоминаем, что у нас есть такое поле как количество и мы может одним progress`ом вычитать эти два значения и отобразить если поставим кол-во = 2.
Для этого в поле игра мы пишем "pk1.pz01", а в уровень пишем просто "lv". Запись в опциях lv0 и lv1 означает что это значения для прогресс бара с кол-ом = 2 и в первую свою копию он считает значение lv0 во вторую lv1 и отобразит две к примеру звезды и каждую со своим фреймом.
pk01, pz01, lv0, lv1 и т.д. это просто ключи по которым прогресс вычитывает нужные значение, по-этому они могут быть произвольными.

Одно только правило: Если у нас указано кол-во. То в опции параметр уровень мы должны записывать с числовой приставкой (например lv0,lv1,lv2) и т.д. Если у нас кол = 1, то прогресс будет вычитывать значение из lv0.

При работе с дуговым прогрессом важно знать:

Радиус дуги = высота прогресса / 2 . Центр окружности в точке пересечений диагоналей объекта прогресс.

Передаваемые состояния

next - добавит к текущему значению chVal(изменение) и визуально c скоростью "vel" (скорость) сменит своё состояние ("при увеличении" - станет более заполненным);

Пример

Пример использования объекта, типа Progress в хидденах:

Progress1 1.jpg Progress2 1.jpg

В данном примере используется 2 объекта типа Progress, тип которых - линейный: 1 - combo_progress для отображения комбо прогресса в очковой системе хидденлиста,
2 - cnt_prgss для отображения количества найденных объектов.

Параметры объектов типа Progress следующие:

Progress3 1.jpg Progress4 1.jpg