This article relates to the game "Portal 2". Click here for more information.
Эта статья документации для всего, что использует платформу Source. Нажмите для получения дополнительной информации.

Ru/Coop Door (Portal 2): Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
No edit summary
m (obsolete language category)
 
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{otherlang2
{{Underlinked|date=January 2024}}
|title=Дверь (кооператив Portal 2)
{{lang|title=Дверь (кооператив ''Portal 2'')|Coop Door (Portal 2)}}{{source topicon|suf=:ru}}{{p2 topicon|suf=:ru}}
|en=Coop_Door_(Portal_2)
{{portal2|suf=:ru}} '''Кооперативные двери''' это два триггера, через которые должны пройти оба робота, чтобы дверь открылась, для каждого робота загорается свой индикатор.
|fr=Coop_Door_(Portal_2):fr
[[File:Portal2CoopDoorFromMp_Coop_Doors.jpg|thumb|right|300px|Дверь из <tt>mp_coop_doors</tt>.]]
}}
'''Кооперативные двери''' - это два триггера, чрез которые проходят оба робота, чтобы открыть дверь, для каждого робота загорается свой индикатор.
[[Image:Portal2CoopDoorFromMp_Coop_Doors.jpg|thumb|right|300px|Дверь из mp_coop_doors.]]
==Экземпляр==
==Экземпляр==
1. Создайте [[func_instance]] со следующими настройками:
1. Создайте {{ent:ru|func_instance}} со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 15: Line 12:
| VMF Filename || instances/coop/coop_team_double_exit_door.vmf
| VMF Filename || instances/coop/coop_team_double_exit_door.vmf
|}  
|}  
2. Создайте блок браша с trigger-текстурой, преобразуйте браш в [[trigger_playerteam]] со следующими выходами:
2. Создайте блок браша с trigger-текстурой, преобразуйте браш в {{ent:ru|trigger_playerteam}} со следующими выходами:
::{| class=standard-table
::{| class=standard-table
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnStartTouchBluePlayer || coop_exit_door || instance:relay_blue_in;Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnStartTouchBluePlayer || coop_exit_door || instance:relay_blue_in;Trigger || <none> || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnEndTouchBluePlayer || coop_exit_door || instance:relay_blue_out;Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnEndTouchBluePlayer || coop_exit_door || instance:relay_blue_out;Trigger || <none> || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnStartTouchOrangePlayer || coop_exit_door || instance:relay_orange_in;Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnStartTouchOrangePlayer || coop_exit_door || instance:relay_orange_in;Trigger || <none> || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnEndTouchOrangePlayer || coop_exit_door || instance:relay_orange_out;Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnEndTouchOrangePlayer || coop_exit_door || instance:relay_orange_out;Trigger || <none> || 0.00 || No
|}
|}


==Создание вручную==
==Создание вручную==
===Дверь===
===Дверь===
1. Добавьте [[prop_testchamber_door]]. Со следующими настройками:
1. Добавьте {{ent:ru|prop_testchamber_door}}. Со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 38: Line 34:
|}
|}


2. Добавьте [[logic_coop_manager]] со следующими настройками:
2. Добавьте {{ent:ru|logic_coop_manager}} со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 48: Line 44:
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnChangeToAllTrue || door_01 || Open || <none> || 0.00 || No
| [[File:Io11.png]] || OnChangeToAllTrue || door_01 || Open || <none> || 0.00 || No
|}
|}


===Триггеры===
===Триггеры===
1. Добавьте [[Logic_relay]] со следующими настройками:
1. Добавьте {{ent:ru|logic_relay}} со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 63: Line 58:
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateATrue || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateATrue || <none> || 0.00 || No
|}
|}


2. Добавьте [[Logic_relay]] со следующими настройками:
2. Добавьте <tt>logic_relay</tt> со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 76: Line 71:
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateAFalse || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateAFalse || <none> || 0.00 || No
|}
|}


Line 89: Line 84:
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateBTrue || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateBTrue || <none> || 0.00 || No
|}
|}
Добавьте [[Logic_relay]] со следующими настройками:
Добавьте <tt>logic_relay</tt> со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 101: Line 96:
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || coop_man || SetStateBFalse || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateBFalse || <none> || 0.00 || No
|}
|}


4. Создайте блок браша с trigger-текстурой. Преобразуйте браш в [[trigger_playerteam]] со следующими выходами:
4. Создайте блок браша с trigger-текстурой. Преобразуйте браш в {{ent:ru|trigger_playerteam}} со следующими выходами:
::{| class=standard-table
::{| class=standard-table
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnStartTouchBluePlayer || relay_b_in || Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnStartTouchBluePlayer || relay_b_in || Trigger || <none> || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnEndTouchBluePlayer || relay_b_out || Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnEndTouchBluePlayer || relay_b_out || Trigger || <none> || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnStartTouchOrangePlayer || relay_o_in || Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnStartTouchOrangePlayer || relay_o_in || Trigger || <none> || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnEndTouchOrangePlayer || relay_o_out || Trigger || <none> || 0.00 || No
| [[File:Io11.png]] || OnEndTouchOrangePlayer || relay_o_out || Trigger || <none> || 0.00 || No
|}
|}
===Индикаторы для роботов===
===Индикаторы для роботов===
1. Добавьте Prop_static со следующими настройками:
1. Добавьте {{ent:ru|prop_static}} со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 124: Line 119:
|}
|}


2. Создайте [[func_brush]] размером <code>32Lx4Wx32H</code> с текстурой signage/signage_coop_teamdoor_orange
2. Создайте {{ent:ru|func_brush}} размером 32L×4W×32H с текстурой <tt>signage/signage_coop_teamdoor_orange</tt>.
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 131: Line 126:
|}
|}


Выровняйте его слева, внутри рамки.
Поместите его внутри рамки слева.


3. Повторите шаг 2, но с другой текстурой: signage/signage_coop_teamdoor_blue
3. Повторите шаг 2, но с другой текстурой: <tt>signage/signage_coop_teamdoor_blue</tt>. Поместите его внутри рамки справа.


 
4. Добавьте две {{ent:ru|env_texturetoggle}} со следующими настройками:
Выровняйте его справа, внутри рамки.
 
 
4. Добавьте две [[env_texturetoggle]] со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 155: Line 146:
|}
|}


5. Добавьте две [[ambient_generic]] со следующими настройками:
5. Добавьте две {{ent:ru|ambient_generic}} со следующими настройками:
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 163: Line 154:
| Sound Name || portal.button_down
| Sound Name || portal.button_down
|}
|}
::{| class=standard-table
::{| class=standard-table
!  Свойство || Значение
!  Свойство || Значение
Line 172: Line 162:
|}
|}


 
6. Добавьте следующие выходы к <tt>relay_o_in</tt>:
6. Добавьте следующие выходы к <code>relay_o_in</code>:
::{| class=standard-table
::{| class=standard-table
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || textog_o || SetTextureIndex || 1 || 0.00 || No
| [[File:Io11.png]] || OnTrigger || textog_o || SetTextureIndex || 1 || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnTrigger || sound_in || PlaySound || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || sound_in || PlaySound || <none> || 0.00 || No
|}
|}


И эти выходы к <code>relay_o_out</code>:
И эти выходы к <tt>relay_o_out</tt>:
 
::{| class=standard-table
::{| class=standard-table
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || textog_o || SetTextureIndex || 0 || 0.00 || No
| [[File:Io11.png]] || OnTrigger || textog_o || SetTextureIndex || 0 || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnTrigger || sound_out || PlaySound || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || sound_out || PlaySound || <none> || 0.00 || No
|}
|}


Добавьте следующие выходы к <code>relay_b_in</code>:
Добавьте следующие выходы к <tt>relay_b_in</tt>:
::{| class=standard-table
::{| class=standard-table
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || textog_b || SetTextureIndex || 1 || 0.00 || No
| [[File:Io11.png]] || OnTrigger || textog_b || SetTextureIndex || 1 || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnTrigger || sound_in || PlaySound || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || sound_in || PlaySound || <none> || 0.00 || No
|}
|}


И эти выходы к <code>relay_b_out</code>:
И эти выходы к <tt>relay_b_out</tt>:
 
::{| class=standard-table
::{| class=standard-table
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
!  || My Output || Target Entity || Target Input || Parameter || Delay || Only Once
|-
|-
| [[Image:Io11.png]] || OnTrigger || textog_b || SetTextureIndex || 0 || 0.00 || No
| [[File:Io11.png]] || OnTrigger || textog_b || SetTextureIndex || 0 || 0.00 || No
|-
|-
| [[Image:Io11.png]] || OnTrigger || sound_out || PlaySound || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || sound_out || PlaySound || <none> || 0.00 || No
|}
|}


Вы создали дверь, которая откроется, как только оба игрока окажутся в зоне {{en}} [[trigger|триггеров]].
Вы создали дверь, которая откроется, как только оба игрока окажутся в зоне {{L|triggers|триггеров}}.


[[Category:Portal 2 Level Design:ru]]
{{ACategory|Portal 2 Level Design}}
[[Category:Portal 2 Tutorials:ru]]
{{ACategory|Portal 2 Tutorials}}

Latest revision as of 03:43, 22 August 2024

Underlinked - Logo.png
This article needs more Wikipedia icon links to other articles to help Wikipedia icon integrate it into the encyclopedia. Please help improve this article by adding links Wikipedia icon that are relevant to the context within the existing text.
January 2024
English (en)Français (fr)Русский (ru)Translate (Translate)

Portal 2 Кооперативные двери — это два триггера, через которые должны пройти оба робота, чтобы дверь открылась, для каждого робота загорается свой индикатор.

Дверь из mp_coop_doors.

Экземпляр

1. Создайте func_instance со следующими настройками:

Свойство Значение
Name coop_exit_door
VMF Filename instances/coop/coop_team_double_exit_door.vmf

2. Создайте блок браша с trigger-текстурой, преобразуйте браш в trigger_playerteam со следующими выходами:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnStartTouchBluePlayer coop_exit_door instance:relay_blue_in;Trigger <none> 0.00 No
Io11.png OnEndTouchBluePlayer coop_exit_door instance:relay_blue_out;Trigger <none> 0.00 No
Io11.png OnStartTouchOrangePlayer coop_exit_door instance:relay_orange_in;Trigger <none> 0.00 No
Io11.png OnEndTouchOrangePlayer coop_exit_door instance:relay_orange_out;Trigger <none> 0.00 No

Создание вручную

Дверь

1. Добавьте prop_testchamber_door. Со следующими настройками:

Свойство Значение
Name door_01

2. Добавьте logic_coop_manager со следующими настройками:

Свойство Значение
Name coop_man

и выходами:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnChangeToAllTrue door_01 Open <none> 0.00 No

Триггеры

1. Добавьте logic_relay со следующими настройками:

Свойство Значение
Name relay_b_in

и выходами:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger coop_man SetStateATrue <none> 0.00 No

2. Добавьте logic_relay со следующими настройками:

Свойство Значение
Name relay_b_out

и выходами:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger coop_man SetStateAFalse <none> 0.00 No

3. Повторите шаги 1-2, но измените следующее:

Свойство Значение
Name relay_o_in

выходы:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger coop_man SetStateBTrue <none> 0.00 No

Добавьте logic_relay со следующими настройками:

Свойство Значение
Name relay_o_out

выходы:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger coop_man SetStateBFalse <none> 0.00 No

4. Создайте блок браша с trigger-текстурой. Преобразуйте браш в trigger_playerteam со следующими выходами:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnStartTouchBluePlayer relay_b_in Trigger <none> 0.00 No
Io11.png OnEndTouchBluePlayer relay_b_out Trigger <none> 0.00 No
Io11.png OnStartTouchOrangePlayer relay_o_in Trigger <none> 0.00 No
Io11.png OnEndTouchOrangePlayer relay_o_out Trigger <none> 0.00 No

Индикаторы для роботов

1. Добавьте prop_static со следующими настройками:

Свойство Значение
World Model models/props/sign_frame02/sign_frame02.mdl

2. Создайте func_brush размером 32L×4W×32H с текстурой signage/signage_coop_teamdoor_orange.

Свойство Значение
Name checkbox_o

Поместите его внутри рамки слева.

3. Повторите шаг 2, но с другой текстурой: signage/signage_coop_teamdoor_blue. Поместите его внутри рамки справа.

4. Добавьте две env_texturetoggle со следующими настройками:

Свойство Значение
Name textog_o
Target Brush(es). checkbox_o
Свойство Значение
Name textog_b
Target Brush(es). checkbox_b

5. Добавьте две ambient_generic со следующими настройками:

Свойство Значение
Name sound_out
Sound Name portal.button_down
Свойство Значение
Name sound_in
Sound Name portal.button_up

6. Добавьте следующие выходы к relay_o_in:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger textog_o SetTextureIndex 1 0.00 No
Io11.png OnTrigger sound_in PlaySound <none> 0.00 No

И эти выходы к relay_o_out:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger textog_o SetTextureIndex 0 0.00 No
Io11.png OnTrigger sound_out PlaySound <none> 0.00 No

Добавьте следующие выходы к relay_b_in:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger textog_b SetTextureIndex 1 0.00 No
Io11.png OnTrigger sound_in PlaySound <none> 0.00 No

И эти выходы к relay_b_out:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTrigger textog_b SetTextureIndex 0 0.00 No
Io11.png OnTrigger sound_out PlaySound <none> 0.00 No

Вы создали дверь, которая откроется, как только оба игрока окажутся в зоне триггеров(en).