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

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
(Основные параметры)
(Настройка теней (Пока только в бете))
 
(не показана 21 промежуточная версия 8 участников)
Строка 1: Строка 1:
HiddenObject - поисковый объект на сцене в хидден-игре.
+
HiddenObject - поисковый [[Object|объект]] на сцене в хидден-игре.
 
Добавив из редактора ресурсов на сцену картинку поискового предмета, мы изменяем его тип на hiddenObject.<br>
 
Добавив из редактора ресурсов на сцену картинку поискового предмета, мы изменяем его тип на hiddenObject.<br>
Можно применить групповое изменение типа, выделив с помощью "Shift" или "Ctrl" группу картинок.<br>
+
Можно применить групповое изменение типа, выделив с помощью "Shift" или "Ctrl" группу картинок.
Все хидден-объекты должны быть подключены к объекту с типом [[HiddenList]].
+
Все хидден-объекты должны быть подключены к объекту с типом [[HiddenList]].
  
 
== Общие параметры ==
 
== Общие параметры ==
  
 
(см. описание [[Object|Object]])
 
(см. описание [[Object|Object]])
*'''имя''' - Имя объекта HiddenObject в дереве проекта. Может быт произвольным.
+
*'''имя''' ('' nm '') - Имя объекта HiddenObject в дереве проекта. Может быт произвольным.
 
*'''id-объекта''' - Уникальный номер объекта HiddenObject, который можно увидеть в строке "имя" либо при наведении курсора на неё.
 
*'''id-объекта''' - Уникальный номер объекта HiddenObject, который можно увидеть в строке "имя" либо при наведении курсора на неё.
*'''синхронизация''' - Применяется для синхронизации между лейаутами. Если указан параметр "нет", то объект будет активен только на текущем лейауте. По умолчанию указан параметр "да".  
+
*'''синхронизация''' ('' sync '') - Применяется для синхронизации между лейаутами. Если указан параметр "нет", то объект будет активен только на текущем лейауте. По умолчанию указан параметр "да".  
*'''сохранение параметров''' -  Настройка этого параметра актуальна, если приложение в дальнейшем будет сворачиваться в системную панель («трей»). Выбирается значение этого параметра из выпадающего списка. Возможны следующие варианты: "нет", "только объект", "объект с подобъектами", "только подобъекты". При выходе из трэя будут восстановлены ранее измененные/установленные (при переходе с одного экрана на другой)параметры объектов или подобъектов в зависимости от выбранного варианта для этого параметра. По умолчанию указан параметр "нет". Следует помнить, что если выбирается для объекта некоторой сцены значения этого параметра отличное от "нет", то должно и предусматриваться соответствующее значение этого параметра и для этой сцены, и для экрана, содержащего эту сцену.
+
*'''сохранение параметров''' ('' sv '') -  Настройка этого параметра актуальна, если приложение в дальнейшем будет сворачиваться в системную панель («трей»). Выбирается значение этого параметра из выпадающего списка. Возможны следующие варианты: "нет", "только объект", "объект с подобъектами", "только подобъекты". При выходе из трэя будут восстановлены ранее измененные/установленные (при переходе с одного экрана на другой)параметры объектов или подобъектов в зависимости от выбранного варианта для этого параметра. По умолчанию указан параметр "нет". Следует помнить, что если выбирается для объекта некоторой сцены значения этого параметра отличное от "нет", то должно и предусматриваться соответствующее значение этого параметра и для этой сцены, и для экрана, содержащего эту сцену.
*'''z''' - Параметр порядка рисования объекта. Сначала рисуются объекты с большим z, затем, поверх них - с меньшим.
+
*'''z''' ('' z '') - Параметр порядка рисования объекта. Сначала рисуются объекты с большим z, затем, поверх них - с меньшим.
*'''память''' - Если 1, то при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана). По умолчанию значение этого параметра 0.
+
*'''память''' ('' memo ''):
 +
:'''1''' - при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана);
 +
:'''0''' - обновит свои параметры, при повторном открытии экрана.
  
 
== Основные параметры ==
 
== Основные параметры ==
Строка 18: Строка 20:
 
[[Файл:hid_ob1.jpg|right]]
 
[[Файл:hid_ob1.jpg|right]]
  
*'''картинка''' - Графический ресурс хидден-объекта. Перетаскивается мышкой из редактора ресурсов (поле должно быть в состоянии редактирования).  
+
*'''картинка''' ('' res '') - Графический ресурс хидден-объекта. Перетаскивается мышкой из редактора ресурсов (поле должно быть в состоянии редактирования).  
*'''текстID '''- Название хидден-объекта, которое будет отображаться в таблице. Перетаскивается мышкой из текстового редактора (поле должно быть в состоянии редактирования).
+
*'''текстID ''' ('' txtID '') - Название хидден-объекта, которое будет отображаться в таблице. Перетаскивается мышкой из текстового редактора (поле должно быть в состоянии редактирования).
*'''текст'''- При отсутствии ТекстID в таблице будет отображаться этот текст.
+
*'''связанный предмет экономики ''' ('' economicsID '') - Связанный предмет экономики, участвует в тасках и т.п. Указываем txtID предмета из экономики. Он будет виден на сцене, как хидден-объект.
*'''list'''- Ссылка на [[HiddenList]], к которому будет подключен объект.
+
*'''использовать текстID для связи ''' ('' economicsMain '') - использовать текстID для связи
*''' actor'''- Анимация (машина состояний), которая запустится после нахождения объекта. В этой машине состояний должно быть обязательно состояние show, в котором будет описана, например, анимация полёта актёра.
+
*'''текст''' ('' txt '') - При отсутствии ТекстID в таблице будет отображаться этот текст.
*''' flayer''' - Объект типа flyers, который запустится при клике на спрятанный объект. Можно указывать машину с состоянием "beg".
+
*'''list''' ('' lst '') - Ссылка на [[HiddenList]], к которому будет подключен объект.
*'''тип''' - Номер типа объекта. Используется при выставленном ограничении в [[HiddenList]] (поле [одного типа]).
+
*''' actor''' ('' actor '') - Анимация (машина состояний), которая запустится после нахождения объекта. В этой машине состояний должно быть обязательно состояние show, в котором будет описана, например, анимация полёта актёра.
*'''обязательный''' - Принимает два значения: "0" и "1". Если "1",  то объект всегда будет в списке на поиск.
+
*''' flayer''' ('' fl '') - Объект типа flyers, который запустится при клике на спрятанный объект. Можно указывать машину с состоянием "beg".
*'''выделение цветом''' - Принимает два значения: "0" и "1". Если "1", то на объект будут распространяться выделения цветом (цвет указывается в HiddenList).
+
*'''тип''' ('' kind '') - Номер типа объекта. Используется при выставленном ограничении в [[HiddenList]] (поле [одного типа]).
*'''предпочитаемый''' - Принимает два значения: "да" и "нет". Если "да", то объект является предпочитаемым (используется при исключении объектов с одинаковыми textID).
+
*'''обязательный''' ('' forced ''):
*'''сессия''' - Сессия, в которой должен появиться объект. По умолчанию этот параметр принимает значения "-1".
+
:'''1''' - объект всегда будет в списке на поиск;
*'''набор''' - Набор, к которому принадлежит объект.
+
:'''0''' - обычный объект ( может попасть в список, а может и не попасть).  
*'''collection''' - Объект типа [[Collection]], к которому относится данный объект. Если объект не коллекционный - просто не задавать.
+
*'''выделение цветом''' ('' colored ''):
*'''прокликиваемость''' - Если "0", то объект сам обрабатывает клик и не пропускает его дальше. Если "1", то объект прозрачен для клика мышкой (пропускает объектам под ним). Если "2", то объект сам обрабатывает клик, но и пропускает его дальше".
+
:'''1''' - на объект будут распространяться выделения цветом (цвет указывается в HiddenList);
 +
:'''0''' - не будет распространяться.
 +
*''' подсвечиваемый''' ('' can_highlight '') - Может ли объект подсвечиваться хинтом
 +
:'''1''' - да;
 +
:'''0''' - нет.
 +
*'''предпочитаемый''' ('' preferred ''):
 +
:'''да''' - объект является предпочитаемым (используется при исключении объектов с одинаковыми textID);
 +
:'''нет''' - не является.
 +
*'''сессия''' ('' ses '') - Сессия, в которой должен появиться объект ( по умолчанию = "-1").
 +
*'''набор''' ('' kit '') - Набор, к которому принадлежит объект. Принимает значения 1, 2, 3 и т.д. Указывается в HiddenList.
 +
*'''приоритет''' ('' prior '') - Приоритет объект, определит его положение в списке. У хидден-листа должна быть включена сортировка по приоритету
 +
*'''collection''' ('' col '') - Объект типа [[Collection]], к которому относится данный объект. Если объект не коллекционный - просто не задавать.
 +
*'''сохранять клики''' ('' saveclk '') - Сохранять клики по предметам в опции (по умолчанию они хранятся в рамках сессии)
 +
*'''сложность''' ('' diffic '') - Параметр, определяющий сложность объекта, 0 - самый простой, чем больше параметр, тем сложнее. Если есть 4 раскладки объекта мяч (общий txtID), каждому объекту мячу задается сложность. Перед началом игры у хидден листа есть рандомный набор текстовых айди объектов. Если в хидден листе включена сложность, хидден лист выберет наиболее простые объекты для выбранных txtID.
 +
*'''прокликиваемость''' ('' passClk ''):
 +
:'''0''' - объект сам обрабатывает клик и не пропускает его дальше;
 +
:'''1''' - объект прозрачен для клика мышкой (пропускает объектам под ним);
 +
:'''2''' - объект сам обрабатывает клик, но и пропускает его дальше".
 +
*'''economicsMain''' - если да, то в поле '''economicsID''' будет взят id из поля '''txtID''' (коллекционный предмет и HO - один объект);
  
 
Выделив более 2-х хидден объектов у нас будут параметры группового изменения.
 
Выделив более 2-х хидден объектов у нас будут параметры группового изменения.
Таким образом мы легко можем выставить прокликиваемость или один [[HiddenList]] всем нашим объекам сразу!
+
Таким образом мы легко можем выставить прокликиваемость или один [[HiddenList]] всем нашим объектам сразу!
 +
 
 +
== Настройка морф-объектов ==
 +
[[Файл:морф.jpg|right|320px]]
 +
Обязательно в редакторе ресурсов нужно обвести 4-мя шейпами изображение (см. скрин)
 +
*'''включить''' - Сделать объект морфом;
 +
*'''картинка''' - Графический ресурс изображения спрятанного объекта. Перетаскивается мышкой из редактора ресурсов (поле должно находится в состоянии редактирования);
 +
*'''время трансформации''' - Время трансформации морфа;
 +
*'''время смены состояния''' - Время смены состояния морфа (значение меньше transform_time == переключение отключено);
 +
*'''время запуска смены''' - Время запуска цикла смены состояний морфа (значение меньше transform_time == переключение отключено);
 +
*'''начальное состояние''' - Начальное состояние морфа;
 +
*'''остановка морфинга''' - Останавливать морфинг после нахождения хинтом;
  
 
== Состояния объекта ==
 
== Состояния объекта ==
Строка 40: Строка 71:
 
У хидден объекта есть состояния, которыми можно управлять с помощью машин. Также можно отслеживать, в каком сейчас состоянии находится хидден-объект. Доступны следующие состояния которые можем использовать:
 
У хидден объекта есть состояния, которыми можно управлять с помощью машин. Также можно отслеживать, в каком сейчас состоянии находится хидден-объект. Доступны следующие состояния которые можем использовать:
  
* '''wait''' - находиться на сцене и ожидает события
+
*'''wait''' - находиться на сцене и ожидает события;
* '''raise''' - после клика объект поднимается вверх и увеличивается
+
*'''raise''' - после клика объект поднимается вверх и увеличивается;
* '''fly''' - объект летит к цели, вращаясь и уменьшаясь
+
*'''fly''' - объект летит к цели, вращаясь и уменьшаясь;
* '''find''' - можно передавать с помощью разных объектов, сообщает хиддену что он найден (имитировать клик на объекте)<br>
+
*'''find''' - можно передавать с помощью разных объектов, сообщает хиддену что он найден (имитировать клик на объекте).<br>
 +
 
 +
== Настройка теней (Пока только в бете) ==
 +
 
 +
1) Выбираем объект/сцену, в котором есть хиддены со съехавшими тенями.<br>
 +
2) Закрываем базу ресурсов.<br>
 +
3) Дальше выбрать пункт в меню - Tools(инструменты) -> special -> recalculate hidden objects pivots.<br>
 +
 
 +
== Примечания ==
 +
 
 +
* Актёры нужны тогда, когда отличается графика объекта, который непосредственно находится на сцене и который летит к таблице. Это может быть случай, когда на сцене лежит часть объекта, а летит целый. Или же на сцене - с тенью, а летит - без.<br>
 +
 
 +
* Заполнение таблицы "обязательными" объектами происходит построчно слева направо случайным образом. Если такой "обязательный" объект для хидден-листа один, то он всегда будет находиться в левом верхнем углу.<br>
 +
 
 +
* Для минимализации действий и затрачиваемого времени желательно применять к хидден-объектам групповое изменение параметров (клавишами crl или shift). Т.е. добавили из базы ресурсов хидден-картинки => Все их выделили => И один раз задали им тип "HiddenObject", хидден-лист, флаер нахождения, добавляемые параметры и т.д.<br>
 +
 
 +
* Зачастую необходимо знать есть ли хидден-объект на сцене. Проверить это можно по параметру "vis".
 +
 
 +
* Пусть у Ваших хидден-объектов один общий актер. В момент нахождение хидден-объекта он передает актёру состояние '''show'''. И пусть в этом состоянии вы считываете координаты гостя (т.е. хидден-объекта), чтобы с того места, к примеру, запустить флаер, машину или что-то еще. '''Так вот этого делать нельзя!''' В результате при следующем посещении экрана Вы увидите, что у хидден-объектов изменились координаты. Дело в некоторой архитектурной проблеме. Выход есть. Перед запуском актёра нужно ставить ему параметры  '''hox''' и '''hoy''', обозначающие координаты объекта его запустившего. Т.е. актёр вместо вычитки координат гостя (хидден-объекта)будет сам у себя читать вышеупомянутые параметры. Например, <br>
 +
 
 +
[[Файл:Hid_ob_act.jpg]]
 +
 
 +
* Также в хидден-сценах можно осуществлять поиск логических пар, например мышь-мышеловка, лук-стрела и т. д. Важно чтобы два предмета, составляющие пару, находились на сцене вдвоем (пара считается найденной если игрок тапнул на один предмет пары и след. тапом тапнул второй предмет этой же пары). Также при использовании хинта  подсвечиваются два предмета, составляющие одну пару.
 +
Настройки:
 +
1) в парных объектах hiddenObject поле Тип (kind) должно быть одинаково;
 +
2) в объекте hiddenList в группе Внешний вид включить настройку  “поиск пар”;
 +
3) актер помимо стандартных состояний fly и fly_end должен иметь состояние highlight - подсветка первого предмета в паре.
 +
4) для хинтования пары в объекте Hint  в хинте (искра) необходимо задать второй хвост и второй указатель (причем отличный от первого).
  
 
== Добавляемые параметры ==
 
== Добавляемые параметры ==
Строка 49: Строка 107:
 
[[Файл:hid_ob_2.jpg|right]]
 
[[Файл:hid_ob_2.jpg|right]]
  
[[Файл:+.png]]'''Дополнительная коллекция''' - используется в случае, если объекту нужно относиться более чем к одной.
+
[[Файл:+.png]]'''Дополнительная коллекция''' ('' add_col '') - используется в случае, если объекту нужно относиться более чем к одной:
:Объект типа коллекция, к которому относится данный объект.
+
:'''id''' ('' col '') - Объект типа коллекция, к которому относится данный объект.
 +
 
 +
 
 +
[[Файл:+.png]]'''связанный объект''' ('' addLnkObj '') - Связанный объект на противоположном фоне при поиске различий:
 +
:'''связанный объект''' ('' lnkObj '') - Связанный объект на противоположном фоне при поиске различий.
 +
 
 +
 
 +
[[Файл:+.png]]'''изменить параметр объекта''' ('' chg '') - При нахождении объекта изменить параметр объекта:
 +
:'''объект''' ('' obj '') - При нахождении объекта этот объект меняет свой параметр;
 +
:'''свойство''' ('' par '') - Параметр, который мы изменяем;
 +
:'''значение''' ('' val '') - Новое значение параметра.
 +
 
 +
 
 +
[[Файл:+.png]]'''изменить состояние объекта''' ('' nst '') - При нахождении объекта перевести объект в новое состояние:
 +
:'''объект''' ('' obj '') - При нахождении объекта перевести объект в состояние из следующего поля;
 +
:'''состояние''' ('' st '') - Новое состояние для объекта из предыдущего поля.
 +
 
 +
 
 +
[[Файл:+.png]]'''клик на найденный хидден:''' ('' chgComp '') изменить параметр объекта:
 +
:'''объект''' ('' obj '') - Объект, параметр которого нужно изменить;
 +
:'''параметр''' ('' par '') - Параметр, которое нужно изменить;
 +
:'''значение''' ('' val '') - Новое значение параметра.
 +
 
 +
 
 +
[[Файл:+.png]]'''клик на найденный хидден:''' ('' nstComp '') изменить состояние объекта:
 +
:'''объект''' ('' obj '') - Объект, состояние которого нужно изменить;
 +
:'''состояние''' ('' st '') - Новое состояние объекта.
 +
 
  
[[Файл:+.png]]'''связанный объект''' - Связанный объект на противоположном фоне при поиске различий.
+
[[Файл:+.png]]'''объект вернулся на место через putback:''' ('' chgPb '') изменить параметр объекта:
 +
:'''объект''' ('' obj '') - Объект, параметр которого нужно изменить;
 +
:'''параметр''' ('' par '') - Параметр, которое нужно изменить;
 +
:'''значение''' ('' val '') - Новое значение параметра.
  
[[Файл:+.png]]'''изменить параметр объекта''' - При нахождении объекта изменить параметр объекта.
 
:'''объект''' - При нахождении объекта этот объект меняет свой параметр.
 
:'''свойство''' - Параметр, который мы изменяем.
 
:'''значение''' - Новое значение параметра.
 
  
[[Файл:+.png]]'''изменить состояние объекта''' - При нахождении объекта перевести объект в новое состояние.
+
[[Файл:+.png]]'''объект вернулся на место через putback:''' ('' nstPb '') изменить состояние объекта:
:'''объект''' - При нахождении объекта перевести объект в состояние из следующего поля.
+
:'''объект''' ('' obj '') - Объект, состояние которого нужно изменить;
:'''состояние''' - Новое состояние для объекта из предыдущего поля.
+
:'''состояние''' ('' st '') - Новое состояние объекта.
  
[[Файл:+.png]]'''клик на найденный хидден:''' изменить параметр объекта
 
:'''объект''' - Объект, параметр которого нужно изменить
 
:'''параметр''' - Параметр, которое нужно изменить
 
:'''значение''' - Новое значение параметра
 
  
[[Файл:+.png]]'''клик на найденный хидден:''' изменить состояние объекта
+
[[Файл:+.png]]'''объект появился как новый объект:''' изменить состояние объекта (''  ''):
:'''объект''' - Объект, состояние которого нужно изменить
+
:'''объект''' ('' obj '') - Объект, состояние которого нужно изменить;
:'''состояние''' - Новое состояние объекта
+
:'''состояние''' ('' st '') - Новое состояние объекта.
  
[[Файл:+.png]]'''объект вернулся на место через putback:''' изменить параметр объекта
+
== Пример ==
:'''объект''' - Объект, параметр которого нужно изменить
 
:'''параметр''' - Параметр, которое нужно изменить
 
:'''значение''' - Новое значение параметра
 
  
[[Файл:+.png]]'''объект вернулся на место через putback:''' изменить состояние объекта
+
[[Category:Game mechanic]]
:'''объект''' - Объект, состояние которого нужно изменить
 
:'''состояние''' - Новое состояние объекта
 

Текущая версия на 12:40, 25 марта 2019

HiddenObject - поисковый объект на сцене в хидден-игре. Добавив из редактора ресурсов на сцену картинку поискового предмета, мы изменяем его тип на hiddenObject.
Можно применить групповое изменение типа, выделив с помощью "Shift" или "Ctrl" группу картинок.

Все хидден-объекты должны быть подключены к объекту с типом HiddenList.

Общие параметры

(см. описание Object)

  • имя ( nm ) - Имя объекта HiddenObject в дереве проекта. Может быт произвольным.
  • id-объекта - Уникальный номер объекта HiddenObject, который можно увидеть в строке "имя" либо при наведении курсора на неё.
  • синхронизация ( sync ) - Применяется для синхронизации между лейаутами. Если указан параметр "нет", то объект будет активен только на текущем лейауте. По умолчанию указан параметр "да".
  • сохранение параметров ( sv ) - Настройка этого параметра актуальна, если приложение в дальнейшем будет сворачиваться в системную панель («трей»). Выбирается значение этого параметра из выпадающего списка. Возможны следующие варианты: "нет", "только объект", "объект с подобъектами", "только подобъекты". При выходе из трэя будут восстановлены ранее измененные/установленные (при переходе с одного экрана на другой)параметры объектов или подобъектов в зависимости от выбранного варианта для этого параметра. По умолчанию указан параметр "нет". Следует помнить, что если выбирается для объекта некоторой сцены значения этого параметра отличное от "нет", то должно и предусматриваться соответствующее значение этого параметра и для этой сцены, и для экрана, содержащего эту сцену.
  • z ( z ) - Параметр порядка рисования объекта. Сначала рисуются объекты с большим z, затем, поверх них - с меньшим.
  • память ( memo ):
1 - при повторном открытии экрана объект не обновляет свои параметры (помнит текущие параметры, оставшиеся от предыдущего посещения экрана);
0 - обновит свои параметры, при повторном открытии экрана.

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

Hid ob1.jpg
  • картинка ( res ) - Графический ресурс хидден-объекта. Перетаскивается мышкой из редактора ресурсов (поле должно быть в состоянии редактирования).
  • текстID ( txtID ) - Название хидден-объекта, которое будет отображаться в таблице. Перетаскивается мышкой из текстового редактора (поле должно быть в состоянии редактирования).
  • связанный предмет экономики ( economicsID ) - Связанный предмет экономики, участвует в тасках и т.п. Указываем txtID предмета из экономики. Он будет виден на сцене, как хидден-объект.
  • использовать текстID для связи ( economicsMain ) - использовать текстID для связи
  • текст ( txt ) - При отсутствии ТекстID в таблице будет отображаться этот текст.
  • list ( lst ) - Ссылка на HiddenList, к которому будет подключен объект.
  • actor ( actor ) - Анимация (машина состояний), которая запустится после нахождения объекта. В этой машине состояний должно быть обязательно состояние show, в котором будет описана, например, анимация полёта актёра.
  • flayer ( fl ) - Объект типа flyers, который запустится при клике на спрятанный объект. Можно указывать машину с состоянием "beg".
  • тип ( kind ) - Номер типа объекта. Используется при выставленном ограничении в HiddenList (поле [одного типа]).
  • обязательный ( forced ):
1 - объект всегда будет в списке на поиск;
0 - обычный объект ( может попасть в список, а может и не попасть).
  • выделение цветом ( colored ):
1 - на объект будут распространяться выделения цветом (цвет указывается в HiddenList);
0 - не будет распространяться.
  • подсвечиваемый ( can_highlight ) - Может ли объект подсвечиваться хинтом
1 - да;
0 - нет.
  • предпочитаемый ( preferred ):
да - объект является предпочитаемым (используется при исключении объектов с одинаковыми textID);
нет - не является.
  • сессия ( ses ) - Сессия, в которой должен появиться объект ( по умолчанию = "-1").
  • набор ( kit ) - Набор, к которому принадлежит объект. Принимает значения 1, 2, 3 и т.д. Указывается в HiddenList.
  • приоритет ( prior ) - Приоритет объект, определит его положение в списке. У хидден-листа должна быть включена сортировка по приоритету
  • collection ( col ) - Объект типа Collection, к которому относится данный объект. Если объект не коллекционный - просто не задавать.
  • сохранять клики ( saveclk ) - Сохранять клики по предметам в опции (по умолчанию они хранятся в рамках сессии)
  • сложность ( diffic ) - Параметр, определяющий сложность объекта, 0 - самый простой, чем больше параметр, тем сложнее. Если есть 4 раскладки объекта мяч (общий txtID), каждому объекту мячу задается сложность. Перед началом игры у хидден листа есть рандомный набор текстовых айди объектов. Если в хидден листе включена сложность, хидден лист выберет наиболее простые объекты для выбранных txtID.
  • прокликиваемость ( passClk ):
0 - объект сам обрабатывает клик и не пропускает его дальше;
1 - объект прозрачен для клика мышкой (пропускает объектам под ним);
2 - объект сам обрабатывает клик, но и пропускает его дальше".
  • economicsMain - если да, то в поле economicsID будет взят id из поля txtID (коллекционный предмет и HO - один объект);

Выделив более 2-х хидден объектов у нас будут параметры группового изменения. Таким образом мы легко можем выставить прокликиваемость или один HiddenList всем нашим объектам сразу!

Настройка морф-объектов

Морф.jpg

Обязательно в редакторе ресурсов нужно обвести 4-мя шейпами изображение (см. скрин)

  • включить - Сделать объект морфом;
  • картинка - Графический ресурс изображения спрятанного объекта. Перетаскивается мышкой из редактора ресурсов (поле должно находится в состоянии редактирования);
  • время трансформации - Время трансформации морфа;
  • время смены состояния - Время смены состояния морфа (значение меньше transform_time == переключение отключено);
  • время запуска смены - Время запуска цикла смены состояний морфа (значение меньше transform_time == переключение отключено);
  • начальное состояние - Начальное состояние морфа;
  • остановка морфинга - Останавливать морфинг после нахождения хинтом;

Состояния объекта

У хидден объекта есть состояния, которыми можно управлять с помощью машин. Также можно отслеживать, в каком сейчас состоянии находится хидден-объект. Доступны следующие состояния которые можем использовать:

  • wait - находиться на сцене и ожидает события;
  • raise - после клика объект поднимается вверх и увеличивается;
  • fly - объект летит к цели, вращаясь и уменьшаясь;
  • find - можно передавать с помощью разных объектов, сообщает хиддену что он найден (имитировать клик на объекте).

Настройка теней (Пока только в бете)

1) Выбираем объект/сцену, в котором есть хиддены со съехавшими тенями.
2) Закрываем базу ресурсов.
3) Дальше выбрать пункт в меню - Tools(инструменты) -> special -> recalculate hidden objects pivots.

Примечания

  • Актёры нужны тогда, когда отличается графика объекта, который непосредственно находится на сцене и который летит к таблице. Это может быть случай, когда на сцене лежит часть объекта, а летит целый. Или же на сцене - с тенью, а летит - без.
  • Заполнение таблицы "обязательными" объектами происходит построчно слева направо случайным образом. Если такой "обязательный" объект для хидден-листа один, то он всегда будет находиться в левом верхнем углу.
  • Для минимализации действий и затрачиваемого времени желательно применять к хидден-объектам групповое изменение параметров (клавишами crl или shift). Т.е. добавили из базы ресурсов хидден-картинки => Все их выделили => И один раз задали им тип "HiddenObject", хидден-лист, флаер нахождения, добавляемые параметры и т.д.
  • Зачастую необходимо знать есть ли хидден-объект на сцене. Проверить это можно по параметру "vis".
  • Пусть у Ваших хидден-объектов один общий актер. В момент нахождение хидден-объекта он передает актёру состояние show. И пусть в этом состоянии вы считываете координаты гостя (т.е. хидден-объекта), чтобы с того места, к примеру, запустить флаер, машину или что-то еще. Так вот этого делать нельзя! В результате при следующем посещении экрана Вы увидите, что у хидден-объектов изменились координаты. Дело в некоторой архитектурной проблеме. Выход есть. Перед запуском актёра нужно ставить ему параметры hox и hoy, обозначающие координаты объекта его запустившего. Т.е. актёр вместо вычитки координат гостя (хидден-объекта)будет сам у себя читать вышеупомянутые параметры. Например,

Hid ob act.jpg

  • Также в хидден-сценах можно осуществлять поиск логических пар, например мышь-мышеловка, лук-стрела и т. д. Важно чтобы два предмета, составляющие пару, находились на сцене вдвоем (пара считается найденной если игрок тапнул на один предмет пары и след. тапом тапнул второй предмет этой же пары). Также при использовании хинта подсвечиваются два предмета, составляющие одну пару.
Настройки: 
1) в парных объектах hiddenObject поле Тип (kind) должно быть одинаково;
2) в объекте hiddenList в группе Внешний вид включить настройку  “поиск пар”; 
3) актер помимо стандартных состояний fly и fly_end должен иметь состояние highlight - подсветка первого предмета в паре. 
4) для хинтования пары в объекте Hint  в хинте (искра) необходимо задать второй хвост и второй указатель (причем отличный от первого).

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

Hid ob 2.jpg

+.pngДополнительная коллекция ( add_col ) - используется в случае, если объекту нужно относиться более чем к одной:

id ( col ) - Объект типа коллекция, к которому относится данный объект.


+.pngсвязанный объект ( addLnkObj ) - Связанный объект на противоположном фоне при поиске различий:

связанный объект ( lnkObj ) - Связанный объект на противоположном фоне при поиске различий.


+.pngизменить параметр объекта ( chg ) - При нахождении объекта изменить параметр объекта:

объект ( obj ) - При нахождении объекта этот объект меняет свой параметр;
свойство ( par ) - Параметр, который мы изменяем;
значение ( val ) - Новое значение параметра.


+.pngизменить состояние объекта ( nst ) - При нахождении объекта перевести объект в новое состояние:

объект ( obj ) - При нахождении объекта перевести объект в состояние из следующего поля;
состояние ( st ) - Новое состояние для объекта из предыдущего поля.


+.pngклик на найденный хидден: ( chgComp ) изменить параметр объекта:

объект ( obj ) - Объект, параметр которого нужно изменить;
параметр ( par ) - Параметр, которое нужно изменить;
значение ( val ) - Новое значение параметра.


+.pngклик на найденный хидден: ( nstComp ) изменить состояние объекта:

объект ( obj ) - Объект, состояние которого нужно изменить;
состояние ( st ) - Новое состояние объекта.


+.pngобъект вернулся на место через putback: ( chgPb ) изменить параметр объекта:

объект ( obj ) - Объект, параметр которого нужно изменить;
параметр ( par ) - Параметр, которое нужно изменить;
значение ( val ) - Новое значение параметра.


+.pngобъект вернулся на место через putback: ( nstPb ) изменить состояние объекта:

объект ( obj ) - Объект, состояние которого нужно изменить;
состояние ( st ) - Новое состояние объекта.


+.pngобъект появился как новый объект: изменить состояние объекта ( ):

объект ( obj ) - Объект, состояние которого нужно изменить;
состояние ( st ) - Новое состояние объекта.

Пример