2.Создайте браш 128 на 128 и толщиной 8 юнитов. Этот браш будет подставкой для нашей кнопки. Советую для оптимизации покрасить нижнюю часть браша текстурой NODRAW.
3.Откройте браузер текстур и найдите текстуру signage/overlay_button_accent. Теперь нажмите на кнопку "Оверлей" и разместите его в углу браша.
4.С помощью копирования, перетаскивания и вращения (CTRL+M) создайте копии оверлея в трех оставшихся углах браша (окончательное расположение смотрите на скриншоте).
5.Покрасте верхнюю часть подставки текстурой concrete/concrete_modular_floor001a, а боковые signage/hazard_orange_03b
6.Создайте энтити prop_static и разместите его над подставкой посередине. Теперь откройте свойства этой энтити (ALT+Enter) и измените параметр World Model на models/props/button_base_reference.mdl. После изменения параметра еще раз проверьте положение энтити.
7.Создайте энтити prop_dynamic и разместите в центре базы для кнопки. Теперь откройте свойства это энтити и измените следующие параметры:
Parent button (эту func_door мы сделаем позже)
World Model models/props/button_top_reference.mdl
Name topbutton
8.Выберите "Block Tool" (инструмент создания блоков) и под Objects выберите Cylinder.
9.Создайте браш покрашеный текстурой NODRAW 56 на 56 и толщиной 9 юнитов. Разместите его над подставкой посередине. Нажмите CTRL+T и превратите в браш-энтити func_door.
10.Откройте свойства и измените следующие параметры:
Name button
Speed 100
Delay before reset -1
Spawn position Closed
Move Direction 90 0 0 (или выберете down в раскрывающемся списке)
11.Откройте вкладку Outputs
и нажмите на кнопку Add. Измените содержимое полей для ввода на следующее:
Проигрывание прочих звуков
12.Создайте браш покрытый текстурой Trigger размера 48 на 48 и толщиной 2 юнита и разместите его над кнопкой (браш должен "впиваться" в кнопку на пол юнита).
13.Нажмите CTRL+T и превратите в браш энтити Trigger_multiple. Откройте свойства и измените следующие параметры:
Name trig1
Start Disabled No
Delay before reset 1
14.Откройте вкладку Flags и пометьте флаг Clients.
15.Создайте другой браш покрытый текстурой Trigger размера 12 на 12 и толщиной 2 юнита. Он должен быть расположен посередине и на один юнит "впиваться" в другой триггер.
16.Откройте свойства и измените следующие параметры:
Name trig2
Filter Name filter_boxes
Start Disabled No
Delay before reset 1
17.Откройте вкладку Flags и пометьте флаги Pushables Physics Objects и Everything.
18.Выделите энтити trig2, откройте свойства, откройте вкладку Outputs и нажмите кнопку Add. Измените содержимое полей для ввода на следующее:
19.Выделите trig1, откройте свойства, откройте вкладку Outputs и нажмите кнопку Add. Измените содержимое полей для ввода на следующее:
20.Создайте энтити filter_activator_name. Месторасположение не имеет значение. Откройте свойства и измените следующие параметры:
Name filter_boxes
Filter Mode Allow entities that match criteria
Filter Name box
22.Создайте энтити prop_physics где-нибудь на полу. Эта энтити будет кубиком. Откройте свойства и измените следующие параметры:
Name box
World Model models/props/metal_box.mdl
23.Создайте энтити Ambient_generic. Откройте свойства и измените следующие параметры:
Name buttup
Sound Name Portal.button_up
24.Откройте вкладку Flags и пометьте флаг Start silent и Is not looped.
25.Создайте еще одну энтити Ambient_generic. Откройте свойства и измените следующие параметры:
Name buttdown
Sound Name Portal.button_down
26.Откройте вкладку Flags и пометьте флаг Start silent и Is not looped.
27.Для украшения создайте энтити light посередине кнопки. В настройках цвет измените на оранджевый.
28.Компилируем, запускаем и радуемся!!!!! :Bravo: :Yahoo!: :Yahoo!: :Yahoo!:
Перевод Proplayer96. Оригинал http://www.halfwit-2.com/?page=tutorials&id=159. Исходник здесь. Продолжение следует.