Ru/Elevator (Portal 2)

Лифты используются в Portal 2 для перехода игрока между уровнями. Не путайте лифт с , который используется для перехода между уровнями в кооперативном режиме.
==Добавление лифтов на карту==
===Входной лифт===
1) Выберите инструмент entity tool и создайте . В поле Fix Up Name введите - "Arrival_Elevator", а в поле VMF file name укажите путь к лифту "instances/turbine_elevator/arrival_elevator_a4_base.vmf"
2) Чтобы сделать проще, и не создавать два func_instance и потом не искать второй экземпляр среди всей этой путаницы, просто дублируйте "Arrival_Elevator" с помощью и перетащите копию так, чтобы она оказалась точно над оригиналом.
3) Дважды любой из двух экземпляров и переименуйте его на "Arrival_Logic" с VMF file name "instances/turbine_elevator/arrival_elevator_a4_logic.vmf".
Вы можете использовать другие лифты для разных тем; только проверьте, что у вас есть экземпляры и лифта, и логики.
===Управление переходами===
4) Создайте где-нибудь ещё одну энтити func_instance; подходящее место - прямо за моделью лифта (но не внутри входного лифта!). Назовите энтити "Arrival_Departure_Trans" с VMF file name "". Этот экземпляр отвечает за переходы во входном И выходном лифтах, но не отвечает за vmf'ы выходного лифта (см. ниже).
Вы можете выбирать видеоклипы в лифтовых комнатах установкой значений переменных в этом экземпляре; например, попробуйте установить значение переменной $arrival_video равным media/animalking.bik. Полный список видеороликов см. на 
P.S. Обновление редактора сломало видео. Для восстановления работы скопируйте video_splitter.nut в "<Ваша папка Steam> \ SteamApps \ common \ portal 2 \ portal2_dlc2 \ scripts \ vscripts \ video" из "<Ваша папка Steam> \ SteamApps \ common \ portal 2 \ portal2 \ scripts \ vscripts \ video"
===Выходной лифт===
5) Для создания выходного лифта просто повторите шаги 1-3, но вместо "arrival_elevator" выберите "instances/turbine_elevator/departure_elevator_a4_logic.vmf" и "instances/turbine_elevator/departure_elevator_a4_base.vmf", оба находятся в одной папке. Назовите их "Departure_Elevator" и "Departure_Logic" соответственно.
===Соединение с картой===
6) Выпирающее в середине лифта боковое ответвление выглядит как коридорный переход. Именно этот переход вы должны соединить со своей картой. Для этого хорошо подойдёт .
Ваш лифт готов, поздравляем!
==Появление без картофелины==
1. Повторите шаги 1 и 2 выше.
2. На шаге 3 замените "instances/turbine_elevator/arrival_elevator_a4_base.vmf" экземпляром "instances/turbine_elevator/arrival_elevator_base.vmf".
3. Щёлкните экземпляр дважды и нажмите Edit Instance. Сразу же сохраните его под новым именем ("my_arrival_elevator_base.vmf", к примеру), так как мы изменим его. Также не забудьте потом изменить Vmf Filename экземпляра в своей карте.
4. Дважды щёлкните trigger_once с именем "elevator_1_interior_start_trigger", что охватывает модель лифта.
5. Перейдите на вкладку Outputs и скопируйте строку: 
::
	My Output 	Target Entity	Target Input 	Parameter 	Delay	Only Once
	OnStartTouch	elevator_1 	MoveToPathNode	@elevator_1_bottom_path_1	0.10 	No
6. Удалите строку этого выхода и рядом с моделью лифта поместите энтити func_instance_io_proxy с именем "proxy".
7. Перейдите на вкладку Outputs и вставьте строку, которую мы скопировали ранее.
8. Измените выход "OnStartTouch" на "OnProxyRelay". Сохраните изменения в экземпляре.
9. Вернитесь в свою карту и создайте энтити info_player_start и weapon_portalgun в лифте (проверьте, что игрок не застрянет в лифте).
10. Создайте энтити trigger_once, покрывающую всю модель лифта вместе с info_player_start.
11. Добавьте этот выход:
::
	My Output 	Target Entity	Target Input 	Parameter	Delay	Only Once
	OnStartTouch	Arrival_logic	instance:elevator_1;MoveToPathNode	0 	0.00 	No
12. Сохраните свою карту, скомпилируйте её и проверьте. Всё должно работать.
==Появление без картофелины (простой способ)==
1. Создайте logic_playerproxy под именем player_settings. 
2. Где-нибудь в карте поместите logic_auto, лучше рядом с logic_playerproxy, чтобы их вместе было легче найти.
3. На вкладке Output в свойствах logic_auto добавьте этот выход:
::
	My Output 	Target Entity 	Target Input 	Parameter	Delay	Only Once
	OnMapSpawn	player_settings	RemovePotatosFromPortalgun	 	1.00 	No
4. Наконец, сохраните свою карту, скомпилируйте и проверьте.
==Появление без картофелины (простой способ 2)==
1. Создайте trigger_weaponstrip внизу входного лифта.
2. Поместите портальную пушку над триггером.
3. В свойствах портальной пушки настройте её по своим предпочтениям (без картофелины или только с синим порталом).
==Создание старого лифта==
1. Следуйте инструкциям выше, но для Arrival_Elevator используйте instances/underground/test_dome_entrance_lift_01.vmf и не создавайте Arrival_Logic.
2. Внутри лифта создайте info_player_start. Если это не удалось сделать в трехмерном виде, создайте эту энтити в двухмерном виде и поместите её так, чтобы она касалась ногами пола лифта. (НЕ шахты лифта, а самого лифта.)
3. Создайте энтити logic_auto (или, если такая уже есть, используйте её). На вкладке Outputs добавьте вход:
::
	My Output 	Target Entity 	Target Input	Parameter	Delay	Only Once
	OnMapSpawn	Arrival_Elevator-entrance_lift_train	StartForward	 	0.00 	No
Он будет указан, как ошибочный. Но он всё равно работает. Здесь также работает "простой способ", как убрать картофелину с пушки.
== Создание старого лифта (простой способ) ==
Откройте vmf-файл maps\instances\underground\test_dome_entrance_lift_01.vmf и найдите энтити point_teleport под именем @test_dome_lift_entry_teleport, смените её имя на @arrival_teleport и сохраните экземпляр под другим именем.
== Свой вход и выход ==
Чтобы игрок появлялся в другом месте, создайте и назовите её @arrival_teleport, задайте Entity to Teleport на "!player".
Чтобы создать конец уровня в другом месте, добавьте следующий выход к триггеру или другой энтити, которая оканчивает ваш уровень:
::
	My Output 	Target Entity 	Target Input	Parameter	Delay	Only Once
	"insert output"	@exit_teleport	teleport 	 	0.00 	No
Если выход отмечен как ошибочный, игнорируйте это.
==См. также==
*