Switch

From Valve Developer Community
< Fr
Jump to navigation Jump to search
English (en)Français (fr)Translate (Translate)
[[::Category:Portal level design/fr | ← :Category:Portal level design/fr ]]

Ce guide va vous montrer comment créer un bouton switch. Quand il est pressé, il déclenche un compte à rebours, puis revient à l'état initial.

Création de l'entité

1. Sélectionnez l'Entity Tool(en), placez une prop_dynamic(en) où vous voulez voir le model de votre bouton switch. Mettre les paramètres suivants:

Property Name Value
World Model models/props/switch001.mdl
Name switch_model
Comment aligner le func_button.

2. Créer un block de 16x16x16 avec la brush(en) et appliquez sur toutes les faces la texture tools/toolsinvisible. Appliquez-lui la fonction func_button(en) avec Tie to entity. Dans l'onglet Flags, cochez bienDon't move et Use Activates. Dans l'onglet Class info modifiez Delay before Reset sur le nombre de secondes que vous voulez pour empêcher de réactiver trop rapidement le bouton.

Note.pngNote :Pour les portes, assurez-vous de mettre assez de temps pour que la porte s'ouvre, reste ouverte et se ferme.

3. Créer 3 entités ambient_generic(en) à côté du bouton switch. Elles vont définir quels sons seront joués quand le bouton sera pressé, relaché, le clic du compte à rebours. Donnez leurs les propriétés suivantes :

Property Name Value
Name switch_sound_up
Sound Name Portal.button_up
SourceEntityName switch_model
Property Name Value
Name switch_sound_down
Sound Name Portal.button_down
SourceEntityName switch_model
Property Name Value
Name switch_sound_tick
Sound Name Portal.room1_TickTock
SourceEntityName switch_model

Pour l'entité switch_sound_tick, décochez dans l'onglet Flags, le paramètres Starts Silent (seul Is NOT Looped est coché).

4. Ensuite, créez une entité logic_timer(en) à côté du bouton switch. Mettez les paramètres suivants:

Property Name Value
Name switch_sound_tickloop
Starts Disabled Yes
Refire Interval 1

Et dans l'onget Output:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTimer switch_sound_tick PlaySound <none> 0.00 No
Dans le jeu

5. Sélectionnez l'entité func_button(en) et allez dans l'onglet Output:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnOut switch_model SetAnimation up 0.00 No
Io11.png OnOut switch_sound_tickloop Disable <none> 0.00 No
Io11.png OnOut switch_sound_up PlaySound <none> 0.00 No
Io11.png OnPressed switch_model SetAnimation down 0.00 No
Io11.png OnPressed switch_sound_tickloop Enable <none> 0.00 No
Io11.png OnPressed switch_sound_down PlaySound <none> 0.00 No
Note.pngNote :The time you have for Delay before Reset will be how long it takes for the OnOut outputs to trigger. Make sure you have it timed accordingly!

Reliez à votre bouton invisible votre porte (dans Flags, une entrée OnPressed pour le Trigger ouvert, et OnOut pour le trigger fermé). Vous pouvez aussi rajouter des indicator lights(en).

Voir aussi


|}