22 Сентября 2024, 14:32:10
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Навигация по форуму







guest3d
Quest3D - Русскоязычное сообщество > Quest3D > Логика > [Логика ] Trigger
[Логика ] Trigger
(Прочитано 9008 раз)
  [1]
Печать
Ruslan | ***** | Ветеран | Сообщений: 664 | « 14 Августа 2009, 12:01:40 »
[Логика ] Trigger |
0
Кто знает, распишите пожалуйста, что за что отвечает?

* Trigger.jpg (43.04 Кб, 273x253 - просмотрено 2560 раз.)
→|๖ۣۜDen|← | ***** | Администратор | Ветеран | Сообщений: 570 | «Ответ #1 14 Августа 2009, 14:22:41 »
Re: [Логика ] Trigger |
1
·Triger on value change
В этой позиции подключённые потомки будут вызываться каждый раз, как только тригируемая величина будет меняться (не важно, меняться - расти, или меняться падать).
·Triger on value increase
В этой позиции потомки вызываются при увеличении тригируемой величины (если величина будет падать, вызова не будет).
·Triger on value decrease
В этой позиции потомки вызываются при уменьшении тригируемой величины (если величина будет расти, вызова не будет).
·Triger by direction (low to high)
Задание вызова с маленького к высокому, проще говоря - вызов потомков, когда тригируемая величина сначала меньше, чем triger at, а потом стала той, что triger at. Пример: величина была 0, она меняется на 1, triger at=1, вызов будет.
·Triger by direction (high to low)
Вызов потомков, когда тригируемая величина сначала больше чем triger at, а затем стала равной triger at. В этом случае будет вызов: было 2, становится 1 => вызов.
·Triger by direction (both)
Вызывает потомков не зависимо high to low или low to high.
·Triger with value as delay in ms
В тригируемой величине задаётся время, в милисекундах, по истчесении которого потомки будут вызываться единожды, и время пойдёт заново. В цикле.

Насчёт Triger on timestamp change (при изменении времени) даже нет информации, да и ,походу, в этой позиции вызова вообще не будет Улыбающийся недоработка квестостроевцев.
→|๖ۣۜDen|← | ***** | Администратор | Ветеран | Сообщений: 570 | «Ответ #2 14 Августа 2009, 15:43:32 »
Re: [Логика ] Trigger |
2
Кажется, получилось приручить Time stamp Веселый
Вот, видимо, как это работает:
Если потомки вызываются после того, как изменяется время (timestamp change), то нужно получить само нынешнее время, или дату (смотря что берётся в рассчёт для изменения) через textOperator - Time/date to string (format text). Но текст не понятен тригеру, надо перевести текст в целое число. Идём к ValueOperator. У оператора можно выбрать простой преобразователь текста в число (Text to integer value(text)), который просто покажет выбранного формата цифру, или же выбрать специальный оператор (Time stamp (any channel), который смотрит на потомка, и реагирует на все изменения во времени. Так вот Time stamp оператор нам и нужен, его подключаем к тригеру, а к оператору само время/дату (Time/date to string format). Если сделать всё как написано выше, тригер будет срабатывать каждую секунду, т.к. мы не задали формат вывода даты/времени. Он по умолчанию идёт как месяц/день/год час/минута/секунда. Time stamp замечает, что меняется постоянно секунда, и делает вызов каждую секунду. Хотим мы сделать чтоб тригер работал по изменению минут? дня или месяца? может года? Улыбающийся Не вопрос Подмигивающий
К самому Time/date to string (format text), можно подключить...правильно - текст Улыбающийся в котором и указывается формат вывода даты времени.
Цитировать
Time/date to string

The text of this channel will be set to the current time or date. When a Text channel is linked as a child, the text of that child will be used as the format for the time and. You are able to use the following to format the time:

▪ %a - Abbreviated weekday name
▪ %A - Full weekday name
▪ %b - Abbreviated month name
▪ %B - Full month name
▪ %c - Date and time representation appropriate for locale
▪ %d - Day of month as decimal number (01 – 31)
▪ %H - Hour in 24-hour format (00 – 23)
▪ %I - Hour in 12-hour format (01 – 12)
▪ %j - Day of year as decimal number (001 – 366)
▪ %m - Month as decimal number (01 – 12)
▪ %M - Minute as decimal number (00 – 59)
▪ %p - Current locale’s A.M./P.M. indicator for 12-hour clock
▪ %S - Second as decimal number (00 – 59)
▪ %U - Week of year as decimal number, with Sunday as first day of week (00 – 53)
▪ %w - Weekday as decimal number (0 – 6; Sunday is 0)
▪ %W - Week of year as decimal number, with Monday as first day of week (00 – 53)
▪ %x - Date representation for current locale
▪ %X - Time representation for current locale
▪ %y - Year without century, as decimal number (00 – 99)
▪ %Y - Year with century, as decimal number
▪ %z, %Z - Time-zone name or abbreviation; no characters if time zone is unknown
▪ %% - Percent sign
Подключаем к Time/date to string ещё Text в котором, скажем, задаим ключ вывода текста в минутах (%M). Теперь для Time stamp будет видно только изменение минут и соответсвенно тригер будет реагировать на изменение каждую минуту, тем самым вызывая потомков ежеменутно.

* Time stamp.JPG (165.63 Кб, 1280x908 - просмотрено 2528 раз.)
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #3 14 Августа 2009, 15:55:16 »
Re: [Логика ] Trigger |
3
Спасибо →|Den|← за подробное описание!
 
  [1]
Печать
 
Quest3D - Русскоязычное сообщество > Quest3D > Логика > [Логика ] Trigger
Перейти в: