This article relates to the game "Portal 2". Click here for more information.
This article's documentation is for anything that uses the Source engine. Click here for more information.

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

From Valve Developer Community
< Fr
Jump to navigation Jump to search
(Rewrite Template:Lang to Template:LanguageBar. This action was performed by a bot.)
 
(10 intermediate revisions by 6 users not shown)
Line 1: Line 1:
''NdT: Coop Door représente les portes présentes dans les cartes jouables en coopération où les deux joueurs doivent se trouver dans la zone pour ouvrir la porte. Pour une facilitation de la traduction et de l'écriture, le terme "porte" désigne ici l'ensemble du mécanisme (porte en elle-même + triggers + etc...)''
{{Underlinked|date=January 2024}}
{{LanguageBar|title=Portes de Coopération|Coop Door (Portal 2)}}{{P2 topicon|suf=:fr}}{{source topicon|suf=:fr}}
{{Note|Coop Door représente les portes présentes dans les cartes jouables en coopération où les deux joueurs doivent se trouver dans la zone pour ouvrir la porte. Pour une facilitation de la traduction et de l'écriture, le terme «&#x202F;porte&#x202F;» désigne ici l'ensemble du mécanisme (porte en elle-même + triggers + etc…).}}


Les '''portes de Coopération''' sont constituées de deux triggers sur lesquelles devront être les robots pour les ouvrir. Pour chaque trigger activé, un panneau indicateur représentant une personne sera allumé.
{{portal2|suf=:fr}} Les '''portes de Coopération''' sont constituées de deux triggers sur lesquelles devront être les robots pour les ouvrir. Pour chaque trigger activé, un panneau indicateur représentant une personne sera allumé.
[[Image:Portal2CoopDoorFromMp_Coop_Doors.jpg|thumb|right|300px|La porte de mp_coop_doors.]]
[[File:Portal2CoopDoorFromMp_Coop_Doors.jpg|thumb|right|300px|La porte de <tt>mp_coop_doors</tt>.]]
==Instance==
==Instance==
1.)  
1.) Créez un {{ent:fr|func_instance}} avec les paramètres suivant :
Créez un [[func_instance]] avec les paramètres suivant :
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 13: Line 14:
| VMF Filename || instances/coop/coop_team_double_exit_door.vmf
| VMF Filename || instances/coop/coop_team_double_exit_door.vmf
|}  
|}  
2.)
2.) Créez un bloc avec la texture Trigger, transformez-le en {{ent:fr|trigger_playerteam}} avec les outputs suivants :  
Créez un bloc avec la texture trigger, transformez-le en [[trigger_playerteam]] avec les outputs suivants :  
::{| 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
|}
|}


==Création manuelle ==
==Création manuelle ==
===La porte===
===La porte===
1.)
1.) Ajoutez un {{ent:fr|prop_testchamber_door}} avec le paramètre suivant :  
Ajoutez un [[prop_testchamber_door]] avec le paramètre suivant :  
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 38: Line 36:
|}
|}


2.)
2.) Ajoutez un {{ent:fr|logic_coop_manager}} avec le paramètre suivant :  
Ajoutez un [[logic_coop_manager]] avec le paramètre suivant :  
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 45: Line 42:
| Name || coop_man
| Name || coop_man
|}
|}
et l'output :
et l'output :
::{| 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]] || OnChangeToAllTrue || door_01 || Open || <none> || 0.00 || No
| [[File:Io11.png]] || OnChangeToAllTrue || door_01 || Open || <none> || 0.00 || No
|}
|}


===Déclenchement===
===Déclenchement===
1.)
1.) Ajoutez un {{ent:fr|logic_relay}} avec le paramètre suivant :  
Ajoutez un [[logic_relay]] avec le paramètre suivant :  
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 60: Line 56:
| Name || relay_b_in
| Name || relay_b_in
|}
|}
et l'output :  
et l'output :  
::{| 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 || coop_man || SetStateATrue || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateATrue || <none> || 0.00 || No
|}
|}
2.)
2.) Ajoutez un <tt>logic_relay</tt> avec le paramètre suivant :
Ajoutez un [[logic_relay]] avec le paramètre suivant :
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 73: Line 68:
| Name || relay_b_out
| Name || relay_b_out
|}
|}
et l'output :  
et l'output :  
::{| 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 || coop_man || SetStateAFalse || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateAFalse || <none> || 0.00 || No
|}
|}
3.)
3.) Répétez les étapes 1 et 2 en changeant ce qui suit :  
Répétez les étapes 1 et 2 en changeant ce qui suit :  
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 86: Line 80:
| Name || relay_o_in
| Name || relay_o_in
|}
|}
output:
output :
::{| 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 || coop_man || SetStateBTrue || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateBTrue || <none> || 0.00 || No
|}
|}
Ajoutez un [[logic_relay]] avec le paramètre suivant :
Ajoutez un <tt>logic_relay</tt> avec le paramètre suivant :
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 98: Line 92:
| Name || relay_o_out
| Name || relay_o_out
|}
|}
output:
output :
::{| 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 || coop_man || SetStateBFalse || <none> || 0.00 || No
| [[File:Io11.png]] || OnTrigger || coop_man || SetStateBFalse || <none> || 0.00 || No
|}
|}


4.)
4.) Créez un bloc avec la texture trigger. Transformez ce bloc en {{ent:fr|trigger_playerteam}} avec les outputs suivants :
Créez un bloc avec la texture trigger. Transformez ce bloc en [[trigger_playerteam]] avec les outputs suivants :
::{| 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
|}
|}


===Check Boxes===
===Check Boxes===
1.)
1.) Ajoutez un {{ent:fr|prop_static}} avec le paramètre suivant :
Ajoutez un Prop_static avec les paramètres suivants :
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 127: Line 119:
| World Model || models/props/sign_frame02/sign_frame02.mdl
| World Model || models/props/sign_frame02/sign_frame02.mdl
|}
|}
2.)
2.) Créez un {{ent:fr|func_brush}} de 32L×4W×32H avec la texture <tt>signage/coop/teamdoor/orange</tt>.
Créez un [[func_brush]] de <code>32Lx4Wx32H</code> avec la texture :
[[signage/coop/teamdoor|signage/coop/teamdoor/orange]]
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 138: Line 128:
Alignez-le à gauche, à l'intérieur du cadre.
Alignez-le à gauche, à l'intérieur du cadre.


3.)
3.) Répétez l'étape 2 en changeant ce qui suit <tt>signage/coop/teamdoor/blue</tt>.
Répétez l'étape 2 en changeant ce qui suit :
[[signage/coop/teamdoor|signage/coop/teamdoor/blue]]
 


Alignez-le à droite, à l'intérieur du cadre.
Alignez-le à droite, à l'intérieur du cadre.


 
4.) Ajoutez deux {{ent:fr|env_texturetoggle}} avec les paramètres suivants :
4.)
Ajoutez deux [[env_texturetoggle]] avec les paramètres suivants :
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 163: Line 148:
|}
|}


5.)
5.) Ajoutez deux {{ent:fr|ambient_generic}} avec les paramètres suivants :
Ajoutez deux [[ambient_generic]] avec les paramètres suivants :
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 172: Line 156:
| Sound Name || portal.button_down
| Sound Name || portal.button_down
|}
|}
::{| class=standard-table
::{| class=standard-table
!  Property Name || Value
!  Property Name || Value
Line 181: Line 164:
|}
|}


 
6.) Ajoutez les outputs suivants au <tt>relay_o_in</tt>:
6.)
Ajoutez les outputs suivants au <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
|}
|}


Et les outputs suivants au <code>relay_o_out</code>:
Et les outputs suivants au <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
|}
|}


Ajoutez les outputs suivants au <code>relay_b_in</code> :
Ajoutez les outputs suivants au <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
|}
|}


Et les outputs suivants au <code>relay_b_out</code>:
Et les outputs suivants au <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
|}
|}


Vous avez maintenant créé une porte qui s'ouvrira si les deux partenaires de co-op sont dans le [[trigger|triggers]].
Vous avez maintenant créé une porte qui s'ouvrira si les deux partenaires de co-op sont dans le {{L|trigger|triggers}}.


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

Latest revision as of 17:52, 18 July 2025

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)
Note.pngNote:Coop Door représente les portes présentes dans les cartes jouables en coopération où les deux joueurs doivent se trouver dans la zone pour ouvrir la porte. Pour une facilitation de la traduction et de l'écriture, le terme « porte » désigne ici l'ensemble du mécanisme (porte en elle-même + triggers + etc…).

Portal 2 Les portes de Coopération sont constituées de deux triggers sur lesquelles devront être les robots pour les ouvrir. Pour chaque trigger activé, un panneau indicateur représentant une personne sera allumé.

La porte de mp_coop_doors.

Instance

1.) Créez un func_instance avec les paramètres suivant :

Property Name Value
Name coop_exit_door
VMF Filename instances/coop/coop_team_double_exit_door.vmf

2.) Créez un bloc avec la texture Trigger, transformez-le en trigger_playerteam avec les outputs suivants :

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

Création manuelle

La porte

1.) Ajoutez un prop_testchamber_door avec le paramètre suivant :

Property Name Value
Name door_01

2.) Ajoutez un logic_coop_manager avec le paramètre suivant :

Property Name Value
Name coop_man

et l'output :

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

Déclenchement

1.) Ajoutez un logic_relay avec le paramètre suivant :

Property Name Value
Name relay_b_in

et l'output :

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

2.) Ajoutez un logic_relay avec le paramètre suivant :

Property Name Value
Name relay_b_out

et l'output :

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

3.) Répétez les étapes 1 et 2 en changeant ce qui suit :

Property Name Value
Name relay_o_in

output :

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

Ajoutez un logic_relay avec le paramètre suivant :

Property Name Value
Name relay_o_out

output :

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

4.) Créez un bloc avec la texture trigger. Transformez ce bloc en trigger_playerteam avec les outputs suivants :

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

Check Boxes

1.) Ajoutez un prop_static avec le paramètre suivant :

Property Name Value
World Model models/props/sign_frame02/sign_frame02.mdl

2.) Créez un func_brush de 32L×4W×32H avec la texture signage/coop/teamdoor/orange.

Property Name Value
Name checkbox_o

Alignez-le à gauche, à l'intérieur du cadre.

3.) Répétez l'étape 2 en changeant ce qui suit signage/coop/teamdoor/blue.

Alignez-le à droite, à l'intérieur du cadre.

4.) Ajoutez deux env_texturetoggle avec les paramètres suivants :

Property Name Value
Name textog_o
Target Brush(es). checkbox_o
Property Name Value
Name textog_b
Target Brush(es). checkbox_b

5.) Ajoutez deux ambient_generic avec les paramètres suivants :

Property Name Value
Name sound_out
Sound Name portal.button_down
Property Name Value
Name sound_in
Sound Name portal.button_up

6.) Ajoutez les outputs suivants au 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

Et les outputs suivants au 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

Ajoutez les outputs suivants au 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

Et les outputs suivants au 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

Vous avez maintenant créé une porte qui s'ouvrira si les deux partenaires de co-op sont dans le triggers(en).