- Oct 19, 2008
- 892
[EP2]Таймер обратного отсчета
В этом туторе я расскажу, как создать таймер обратного отсчета, похожий на тот, что мы видели в конце Эпизода 2 при запуске ракеты. Начнем.
Для начала поставим на карту 3 prop_dynamic. Настраиваем их.
Первый:
Name: timer.4
World Model: models/props_silo/launch_seq04.mdl
Второй:
Name: timer.3
World Model: models/props_silo/launch_seq03.mdl
Третий:
Name: timer.2
World Model: models/props_silo/launch_seq02.mdl
Расположите их, как показано на рисунке:
Теперь создадим 3 material_modify_control и настроим их.
Первый:
Parent: timer.4
Name: mmc.panel.countdown.4
Material to modify: Models/props_silo/rocket_countdown_4
Material variable to modify: $frame
Второй:
Parent: timer.3
Name: mmc.panel.countdown.3
Material to modify: Models/props_silo/rocket_countdown_3
Material variable to modify: $frame
Третий:
Parent: timer.2
Name: mmc.panel.countdown.2
Material to modify: Models/props_silo/rocket_countdown_2
Material variable to modify: $frame
Идем далее. Ставим на карту 3 logic_relay.
Первый:
Name: relay.countdown.init
Аутпуты:
Ontrigger/mmc.panel.countdown.2/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.3/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.4/StartAnimSequence/9 9 0 0
Второй, при активации которого начнется отсчет:
Name: relay.countdown.start
Аутпуты:
Ontrigger/mmc.panel.countdown.2/StartAnimSequence/0 9 1 1
Ontrigger/mmc.panel.countdown.3/StartAnimSequence/0 9 10 1
Ontrigger/mmc.panel.countdown.4/StartAnimSequence/0 9 100 1
Примечание:Формат инпута "StartAnimSequence/0 9 100 1": <Frame Start> <Frame End> <Frame Rate> <Loop>
Третий, который сработает в конце и не даст отсчету начаться заного:
Name: relay.countdown.0
Аутпуты:
Ontrigger/mmc.panel.countdown.2/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.3/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.4/StartAnimSequence/9 9 0 0
Ставим logic_auto с одним аутпутом:
OnMapSpawn/relay.countdown.init/Trigger
Для красоты ставим logic_relay, при активации которого начнется отсчет:
Name: relay_begin_countdown
Аутпуты:
OnTrigger/relay.countdown.start/Trigger/0.00
OnTrigger/relay.countdown.0/Trigger/10.00 (10 секунд в только данном примере!)
Все. При активации relay_begin_countdown любым способом (в примере-исходнике это кнопка) начнется обратный отсчет. В примере отсчет ведется от 10 секунд, но вы можете сделать другое время - по своему усмотрению (Формат инпута "StartAnimSequence/0 9 100 1": <Frame Start> <Frame End> <Frame Rate> <Loop>, помнете?).
Исходник: http://mapper720.ru/vmf/Countdown_timer.vmf
Думаю, кому нибудь пригодится
В этом туторе я расскажу, как создать таймер обратного отсчета, похожий на тот, что мы видели в конце Эпизода 2 при запуске ракеты. Начнем.
Для начала поставим на карту 3 prop_dynamic. Настраиваем их.
Первый:
Name: timer.4
World Model: models/props_silo/launch_seq04.mdl
Второй:
Name: timer.3
World Model: models/props_silo/launch_seq03.mdl
Третий:
Name: timer.2
World Model: models/props_silo/launch_seq02.mdl
Расположите их, как показано на рисунке:
Теперь создадим 3 material_modify_control и настроим их.
Первый:
Parent: timer.4
Name: mmc.panel.countdown.4
Material to modify: Models/props_silo/rocket_countdown_4
Material variable to modify: $frame
Второй:
Parent: timer.3
Name: mmc.panel.countdown.3
Material to modify: Models/props_silo/rocket_countdown_3
Material variable to modify: $frame
Третий:
Parent: timer.2
Name: mmc.panel.countdown.2
Material to modify: Models/props_silo/rocket_countdown_2
Material variable to modify: $frame
Идем далее. Ставим на карту 3 logic_relay.
Первый:
Name: relay.countdown.init
Аутпуты:
Ontrigger/mmc.panel.countdown.2/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.3/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.4/StartAnimSequence/9 9 0 0
Второй, при активации которого начнется отсчет:
Name: relay.countdown.start
Аутпуты:
Ontrigger/mmc.panel.countdown.2/StartAnimSequence/0 9 1 1
Ontrigger/mmc.panel.countdown.3/StartAnimSequence/0 9 10 1
Ontrigger/mmc.panel.countdown.4/StartAnimSequence/0 9 100 1
Примечание:Формат инпута "StartAnimSequence/0 9 100 1": <Frame Start> <Frame End> <Frame Rate> <Loop>
Третий, который сработает в конце и не даст отсчету начаться заного:
Name: relay.countdown.0
Аутпуты:
Ontrigger/mmc.panel.countdown.2/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.3/StartAnimSequence/9 9 0 0
Ontrigger/mmc.panel.countdown.4/StartAnimSequence/9 9 0 0
Ставим logic_auto с одним аутпутом:
OnMapSpawn/relay.countdown.init/Trigger
Для красоты ставим logic_relay, при активации которого начнется отсчет:
Name: relay_begin_countdown
Аутпуты:
OnTrigger/relay.countdown.start/Trigger/0.00
OnTrigger/relay.countdown.0/Trigger/10.00 (10 секунд в только данном примере!)
Все. При активации relay_begin_countdown любым способом (в примере-исходнике это кнопка) начнется обратный отсчет. В примере отсчет ведется от 10 секунд, но вы можете сделать другое время - по своему усмотрению (Формат инпута "StartAnimSequence/0 9 100 1": <Frame Start> <Frame End> <Frame Rate> <Loop>, помнете?).
Исходник: http://mapper720.ru/vmf/Countdown_timer.vmf
Post automatically merged:
Думаю, кому нибудь пригодится