Создание светофора

From Valve Developer Community
< Ru
Jump to: navigation, search
English (en)Русский (ru)Translate (Translate)

Все видели в Half-Life 2 светофор в начале игры? Но он не работал. В этом туториале я расскажу все outputы и inputы для создания полноценного работающего светофора


Нужные Entity

  • Модель светофора prop_dynamic
World Model = props_c17\Traffic_Light001a.mdl
Disable Shadows = Yes
Collide with world = Not solid

Один logic_auto(en), два logic_relay(en). Всё ставим как вам надо, меняем настройки. Ну а теперь...


Время.

CBETOFOPkpacHbIu.jpg

Светофор горит по-своему. Каждый по-своему. Всё зависит от страны, и от степени загруженности дороги. На больши́х шоссе зелёный и красный горят дольше, нежели на маленьких дорогах. Ну примерно я опишу, сколько я сделал.

Красный и зелёный - 30 сек
Желтый - 2 сек


Input'ы и output'ы

CBETOFOPredYellow.jpg
CBETOFOPgreen.jpg
CBETOFOPyellow.jpg

1. Назовите свои 3 point_spotlight(en)'а именами: "greenLight" "redLight" "YellowLight" соответственно. Первый logic_relay(en) назовите traffLightRelay1, второй traffLightRelay2.

2. Выделите logic_auto(en)

3. Пропишите в output'ах

  My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnMapSpawn traffLightRelay1 Trigger   0.00 Yes

4. Выделите traffLightRelay1.

5. Пропишите в его outputa'х вот это безобразие:

  My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger yellowLight LightOn   28.00 No Включаем жёлтый по истечении 28 секунд
Io11.png OnTrigger redLight LightOff   30.00 No Выключаем красный
Io11.png OnTrigger greenLight LightOn   30.00 No Включаем зелёный, наш любимый
Io11.png OnTrigger yellowLight LightOff   30.00 No Выключаем жёлтый
Io11.png OnTrigger traffLightRelay2 Trigger   32.00 No
Note.pngПримечание:В данной системе необходимо создание двух logic_relay для придания цикличности. Первый отвечает за переключение красного на зелёный. Второй отвечает за переключение зелёного на красный. Каждый ссылается в конце друг на друга.

6. Выделите traffLightRelay2.

7. Пропишите в Outputa'х следующее:

  My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger greenLight LightOff   28.00 No Начинаем мигание зелёного
Io11.png OnTrigger greenLight LightOn   28.50 No Мигание
Io11.png OnTrigger greenLight LightOff   29.00 No Мигание
Io11.png OnTrigger greenLight LightOn   29.50 No Мигание
Io11.png OnTrigger greenLight LightOff   30.00 No Завершили мигание. Зелёный отключился
Io11.png OnTrigger yellowLight LightOn   30.00 No Включили жёлтый
Io11.png OnTrigger redLight LightOn   32.00 No Включили красный
Io11.png OnTrigger traffLightRelay1 Trigger   32.00 No Включаем первую часть
Io11.png OnTrigger yellowLight LightOff   32.00 No Выключаем желтый.

Вот и вся логическая цепочка светофора. Это всё естественно примерно сделано, т. к светофоры все разные.

Вот и схема

Создан Kostik'ом, вставлено сюда для удобства.

Ссылки

Архив - vmf и bsp + скриншоты (!для Counter-Strike: Source!)