Пользовательские Инпуты и Аутпуты: различия между версиями
DoBeRMaN (обсуждение | вклад) (Создана новая страница размером Категория:Маппинг_Source http://developer.valvesoftware.com/wiki/User_Inputs_and_Outputs) |
Stfbee (обсуждение | вклад) (написана статья) |
||
Строка 1: | Строка 1: | ||
− | + | http://developer.valvesoftware.com/wiki/User_Inputs_and_Outputs | |
− | http://developer.valvesoftware.com/wiki/User_Inputs_and_Outputs | + | |
+ | ==== <br>'''<br>''' ==== | ||
+ | |||
+ | == Пользовательские инпуты и аутпуты == | ||
+ | |||
+ | <br>Инпуты FireUser1-4 и аутпуты OnUser1-4 доступны на каждом объекте, в котором могут настраиваться аутпуты. Этот управления особенно связаны между собой. Хотя они используются очень не обычно, с ихней помощью выполнять определенные задачи намного проще, чем без них. | ||
+ | |||
+ | Вывод OnUserN просто сохраняет действие, которое не выполнено, пока он не активизирован соответствующим вводом FireUserN. Они полезны для отправления сообщений через объект, где желательная цель известна посылаемому объекту, но не объекту отправления. | ||
+ | |||
+ | Пример может быть найден в карте VALV<sup>e</sup> "sdk_d3_citadel_01.vmf", который находится в папке "sourcesdk_content\hl2\mapsrc". func_tracktrain (zapperpod1_train) с func_door_rotating (zapperpod1_rotator) припарентен к path_track (pod_bay_zapper_track). | ||
+ | |||
+ | <br>В позиции табуляции Outputs "func_tracktrain" объекта есть 2 параметра настройки: | ||
+ | |||
+ | <br> | ||
+ | |||
+ | : | ||
+ | |||
+ | {| cellspacing="1" cellpadding="2" border="1" style="width: 501px; height: 71px;" | ||
+ | |- align="left" style="background: rgb(220, 220, 220) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;" | ||
+ | ! <br> | ||
+ | ! My Output > | ||
+ | ! Target Entity | ||
+ | ! Target Input | ||
+ | ! Parameter | ||
+ | ! Delay | ||
+ | ! Only Once | ||
+ | |- | ||
+ | | [[Image:Io11.png]] | ||
+ | | OnUser1 | ||
+ | | zapperpod1_rotator | ||
+ | | Open | ||
+ | | | ||
+ | | 0.00 | ||
+ | | No | ||
+ | |- | ||
+ | | [[Image:Io11.png]] | ||
+ | | OnUser1 | ||
+ | | zapperpod1_rotator | ||
+ | | Close | ||
+ | | | ||
+ | | 5.00 | ||
+ | | No | ||
+ | |} | ||
+ | |||
+ | <br> | ||
+ | |||
+ | : | ||
+ | |||
+ | Так в основном, когда User1 запущен, "func_door_rotating" откроется и, после 5--секундной задержки, закроется. Чтобы запустить этот аутпут, у одного из "объектов" path_track'a, "pod_bay_zapper_track4", есть аут: | ||
+ | |||
+ | : | ||
+ | |||
+ | {| cellspacing="1" cellpadding="2" border="1" | ||
+ | |- align="left" style="background: rgb(220, 220, 220) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;" | ||
+ | ! <br> | ||
+ | ! My Output > | ||
+ | ! Target Entity | ||
+ | ! Target Input | ||
+ | ! Parameter | ||
+ | ! Delay | ||
+ | ! Only Once | ||
+ | |- | ||
+ | | [[Image:Io12.png]] | ||
+ | | OnPass | ||
+ | | !activator | ||
+ | | FireUser1 | ||
+ | | | ||
+ | | 0.10 | ||
+ | | No | ||
+ | |} | ||
+ | |||
+ | <br> Когда "func_tracktrain" пройдёт "path track", вернётся к '''!activator''' и аут '''User1''' будет запущен. | ||
+ | |||
+ | == Другие примеры == | ||
+ | |||
+ | Вот другой пример, с карты из Half-Life 2-"d2_coast_08": | ||
+ | |||
+ | <code><span style="text-decoration: underline;" /><span style="text-decoration: underline;"> </span></code>Logic_auto используется, чтобы заставить 3 НПЦ-чаек улеть с небольшой задержкой времени. Большинство мапперов назначили бы каждый аут отдельно, но использование сабжа, картопостроитель здесь был в состоянии сделать все это с единственным выводом FireUser1, как показано ниже: | ||
+ | |||
+ | : | ||
+ | :"origin" "3349.73 -2612.79 1033" | ||
+ | :"spawnflags" "1" | ||
+ | :"classname" "logic_auto" | ||
+ | |||
+ | : | ||
+ | |||
+ | {| cellspacing="1" cellpadding="2" border="1" | ||
+ | |- align="left" style="background: rgb(220, 220, 220) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;" | ||
+ | ! <br> | ||
+ | ! My Output > | ||
+ | ! Target Entity | ||
+ | ! Target Input | ||
+ | ! Parameter | ||
+ | ! Delay | ||
+ | ! Only Once | ||
+ | |- | ||
+ | | [[Image:Io11.png]] | ||
+ | | OnMapSpawn | ||
+ | | seagull | ||
+ | | FireUser1 | ||
+ | | | ||
+ | | 0 | ||
+ | | No | ||
+ | |} | ||
+ | |||
+ | <br> | ||
+ | |||
+ | : | ||
+ | :"origin" "3328 -2688 2177" | ||
+ | :"targetname" "seagull" | ||
+ | :"spawnflags" "4" | ||
+ | :"classname" "npc_seagull" | ||
+ | |||
+ | : | ||
+ | |||
+ | {| cellspacing="1" cellpadding="2" border="1" | ||
+ | |- align="left" style="background: rgb(220, 220, 220) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;" | ||
+ | ! <br> | ||
+ | ! My Output > | ||
+ | ! Target Entity | ||
+ | ! Target Input | ||
+ | ! Parameter | ||
+ | ! Delay | ||
+ | ! Only Once | ||
+ | |- | ||
+ | | [[Image:Io12.png]] | ||
+ | | OnUser1 | ||
+ | | !self | ||
+ | | FlyAway | ||
+ | | bird_flightpath_a_48 | ||
+ | | 0 | ||
+ | | No | ||
+ | |} | ||
+ | |||
+ | <br> | ||
+ | |||
+ | : | ||
+ | :"origin" "3319.87 -2531.21 2177" | ||
+ | :"targetname" "seagull" | ||
+ | :"spawnflags" "4" | ||
+ | :"classname" "npc_seagull" | ||
+ | |||
+ | : | ||
+ | |||
+ | {| cellspacing="1" cellpadding="2" border="1" | ||
+ | |- align="left" style="background: rgb(220, 220, 220) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;" | ||
+ | ! <br> | ||
+ | ! My Output > | ||
+ | ! Target Entity | ||
+ | ! Target Input | ||
+ | ! Parameter | ||
+ | ! Delay | ||
+ | ! Only Once | ||
+ | |- | ||
+ | | [[Image:Io12.png]] | ||
+ | | OnUser1 | ||
+ | | !self | ||
+ | | FlyAway | ||
+ | | bird_flightpath_a_48 | ||
+ | | 12 | ||
+ | | No | ||
+ | |} | ||
+ | |||
+ | <br> | ||
+ | |||
+ | : | ||
+ | :"origin" "3191.87 -2531.21 2177" | ||
+ | :"targetname" "seagull" | ||
+ | :"spawnflags" "4" | ||
+ | :"classname" "npc_seagull" | ||
+ | |||
+ | : | ||
+ | |||
+ | {| cellspacing="1" cellpadding="2" border="1" | ||
+ | |- align="left" style="background: rgb(220, 220, 220) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;" | ||
+ | ! <br> | ||
+ | ! My Output > | ||
+ | ! Target Entity | ||
+ | ! Target Input | ||
+ | ! Parameter | ||
+ | ! Delay | ||
+ | ! Only Once | ||
+ | |- | ||
+ | | [[Image:Io12.png]] | ||
+ | | OnUser1 | ||
+ | | !self | ||
+ | | FlyAway | ||
+ | | bird_flightpath_a_10 | ||
+ | | 12 | ||
+ | | No | ||
+ | |} | ||
+ | |||
+ | <br> | ||
+ | |||
+ | : | ||
+ | |||
+ | В этом случае FireUser1/Onuser1 не требовался, но он действительно упрощал задачу под рукой. Гений системы - то, что Вы можете сказать каждой чайке делать кое-что отдельно. Первая чайка летит к bird_flightpath_a_48 без задержки. Вторая чайка летит в тот же самый путь, но ждет 12 секунд. Последняя также ждет 12 секунд, но летит по другому пути: bird_flightpath_a_10. Все это достигнуто, используя один вывод и один targetname для 3 объектов. | ||
+ | |||
+ | [[Category:Level_Design|Level_Design]] |
Версия 18:09, 1 декабря 2009
http://developer.valvesoftware.com/wiki/User_Inputs_and_Outputs
Пользовательские инпуты и аутпуты
Инпуты FireUser1-4 и аутпуты OnUser1-4 доступны на каждом объекте, в котором могут настраиваться аутпуты. Этот управления особенно связаны между собой. Хотя они используются очень не обычно, с ихней помощью выполнять определенные задачи намного проще, чем без них.
Вывод OnUserN просто сохраняет действие, которое не выполнено, пока он не активизирован соответствующим вводом FireUserN. Они полезны для отправления сообщений через объект, где желательная цель известна посылаемому объекту, но не объекту отправления.
Пример может быть найден в карте VALVe "sdk_d3_citadel_01.vmf", который находится в папке "sourcesdk_content\hl2\mapsrc". func_tracktrain (zapperpod1_train) с func_door_rotating (zapperpod1_rotator) припарентен к path_track (pod_bay_zapper_track).
В позиции табуляции Outputs "func_tracktrain" объекта есть 2 параметра настройки:
My Output > | Target Entity | Target Input | Parameter | Delay | Only Once | |
---|---|---|---|---|---|---|
![]() |
OnUser1 | zapperpod1_rotator | Open | 0.00 | No | |
![]() |
OnUser1 | zapperpod1_rotator | Close | 5.00 | No |
Так в основном, когда User1 запущен, "func_door_rotating" откроется и, после 5--секундной задержки, закроется. Чтобы запустить этот аутпут, у одного из "объектов" path_track'a, "pod_bay_zapper_track4", есть аут:
My Output > | Target Entity | Target Input | Parameter | Delay | Only Once | |
---|---|---|---|---|---|---|
![]() |
OnPass | !activator | FireUser1 | 0.10 | No |
Когда "func_tracktrain" пройдёт "path track", вернётся к !activator и аут User1 будет запущен.
Другие примеры
Вот другой пример, с карты из Half-Life 2-"d2_coast_08":
<span style="text-decoration: underline;" />
Logic_auto используется, чтобы заставить 3 НПЦ-чаек улеть с небольшой задержкой времени. Большинство мапперов назначили бы каждый аут отдельно, но использование сабжа, картопостроитель здесь был в состоянии сделать все это с единственным выводом FireUser1, как показано ниже:
- "origin" "3349.73 -2612.79 1033"
- "spawnflags" "1"
- "classname" "logic_auto"
My Output > | Target Entity | Target Input | Parameter | Delay | Only Once | |
---|---|---|---|---|---|---|
![]() |
OnMapSpawn | seagull | FireUser1 | 0 | No |
- "origin" "3328 -2688 2177"
- "targetname" "seagull"
- "spawnflags" "4"
- "classname" "npc_seagull"
My Output > | Target Entity | Target Input | Parameter | Delay | Only Once | |
---|---|---|---|---|---|---|
![]() |
OnUser1 | !self | FlyAway | bird_flightpath_a_48 | 0 | No |
- "origin" "3319.87 -2531.21 2177"
- "targetname" "seagull"
- "spawnflags" "4"
- "classname" "npc_seagull"
My Output > | Target Entity | Target Input | Parameter | Delay | Only Once | |
---|---|---|---|---|---|---|
![]() |
OnUser1 | !self | FlyAway | bird_flightpath_a_48 | 12 | No |
- "origin" "3191.87 -2531.21 2177"
- "targetname" "seagull"
- "spawnflags" "4"
- "classname" "npc_seagull"
My Output > | Target Entity | Target Input | Parameter | Delay | Only Once | |
---|---|---|---|---|---|---|
![]() |
OnUser1 | !self | FlyAway | bird_flightpath_a_10 | 12 | No |
В этом случае FireUser1/Onuser1 не требовался, но он действительно упрощал задачу под рукой. Гений системы - то, что Вы можете сказать каждой чайке делать кое-что отдельно. Первая чайка летит к bird_flightpath_a_48 без задержки. Вторая чайка летит в тот же самый путь, но ждет 12 секунд. Последняя также ждет 12 секунд, но летит по другому пути: bird_flightpath_a_10. Все это достигнуто, используя один вывод и один targetname для 3 объектов.