Раздатчик (Portal 2)
Раздатчик - элемент головоломок в Portal 2. Из него могут появляться такие объекты, как гели и кубы. Его можно подключить к кнопке.
Создание раздатчика с использованием экземпляра
1. Создайте энтити func_instance со следующими свойствами:
 Примечание: Если нужно создать несколько раздатчиков, используйте instances/gameplay/cube_dropper_multiple_normal.vmf.
Примечание: Если нужно создать несколько раздатчиков, используйте instances/gameplay/cube_dropper_multiple_normal.vmf.- Имя свойства - Значение - Fix up Name - box_dropper - VMF Filename - instances/gameplay/cube_dropper_normal.vmf 
 
Если раздатчик не отобразился, сохраните изменения и перезагрузите Hammer.
2. Выровняйте верхнюю квадратную часть раздатчика (над цилиндром) по уровню потолка.
Квадрат начнёт мигать, сообщая о проблеме с выравниванием по z-координате. Затем инструментом Clipping tool вырежьте область из потолка, где мигает квадрат. Это позволит кубу упасть из раздатчика. После того, как вы изолировали квадратный кусок потолка, удалите его. Не делайте дыру слишком большой, чтобы не возникло утечек.
3. Создайте энтити, которая активирует раздатчик (т.е. trigger_once на входе в комнату) и дайте ей следующие выходы:
 Примечание: Если вы создаёте несколько раздатчиков с помощью экземпляра instances/gameplay/cube_dropper_multiple_normal.vmf, удалите символ @ из каждого входа.
Примечание: Если вы создаёте несколько раздатчиков с помощью экземпляра instances/gameplay/cube_dropper_multiple_normal.vmf, удалите символ @ из каждого входа.4. Hammer может сигнализировать об их ошибочности, игнорируйте ошибки.
Список экземпляров
Для каждого вида раздатчика есть свой экземпляр, и они выглядят по-разному. Просто замените параметр для имени файла VMF Filename на нужный тип.
- Выдаваемый предмет, параметры - Вид раздатчика - Имя файла VMF - prop_weighted_cube, Standard - Небольшой, современный - instances/gameplay/cube_dropper_dropontrigger_normal.vmf - prop_weighted_cube, Standard - Небольшой, современный - instances/gameplay/cube_dropper_multiple_normal.vmf - prop_weighted_cube, standard - Небольшой, современный - instances/gameplay/cube_dropper_normal.vmf - prop_weighted_cube, Standard - С длинной трубой - instances/gameplay/cube_dropper_large.vmf - prop_weighted_cube, Standard - С длинной трубой, грязный - instances/gameplay/cube_dropper_large_dirty.vmf - prop_weighted_cube, Reflector - Небольшой, современный - instances/gameplay/reflectocube_dropper_dropontrigger_normal.vmf - prop_weighted_cube, Reflector - Небольшой, современный - instances/gameplay/reflectocube_dropper_multiple_normal.vmf - prop_weighted_cube, Reflector - С длинной трубой - instances/gameplay/reflectocube_dropper_large.vmf - prop_weighted_cube, Reflector - С длинной трубой, грязный - instances/gameplay/reflectocube_dropper_large_dirty.vmf - prop_weighted_cube, Sphere - Небольшой, современный - instances/gameplay/sphere_dropper_dropontrigger_normal.vmf - prop_weighted_cube, Sphere - Небольшой, современный - instances/gameplay/sphere_dropper_multiple_normal.vmf - prop_weighted_cube, Sphere - С длинной трубой - instances/gameplay/sphere_dropper_large.vmf - prop_weighted_cube, Sphere - С длинной трубой, грязный - instances/gameplay/sphere_dropper_large_dirty.vmf - prop_weighted_cube, $item_type, $cube_type, $rusted, $paint_power, $use_new_skin_method - Небольшой, современный - instances/gameplay/item_dropper.vmf - Gel, Water - Небольшой, современный - instances/gameplay/paint_dropper_erase.vmf - Gel, Bounce - Небольшой, современный - instances/gameplay/paint_dropper_bounce.vmf - Gel, Speed - Небольшой, современный - instances/gameplay/paint_dropper_speed.vmf - Gel, Stick - Небольшой, с открытой трубой - instances/gameplay/paint_dropper_stick.vmf - Gel, $paint_type - Небольшой, современный - instances/gameplay/paint_dropper.vmf - prop_monster_box, walking - Обычный с музыкой - instances/gameplay/cube_dropper_a4.vmf - prop_monster_box, hiding - Обычный с музыкой - instances/gameplay/cube_dropper_a4_box.vmf - prop_monster_box, walking - Обычный без трубы - instances/gameplay/cube_dropper_monster.vmf - prop_monster_box, hiding - Обычный без трубы - instances/gameplay/cube_dropper_monster_box.vmf - То, что вы туда поместите - Большая открывающаяся коробка - instances/gameplay/cube_dropper_pendleton.vmf - prop_weighted_cube, $paint_type, Wet - Небольшой, современный - instances/gameplay/paint_bomb_dropper_modern.vmf - prop_weighted_cube, Bounce, Dry - Небольшой, пустая труба - instances/gameplay/paint_bomb_dropper_bounce.vmf - prop_weighted_cube, Speed, Dry - Небольшой, пустая труба - instances/gameplay/paint_bomb_dropper_speed.vmf - prop_paint_bomb, $paint_type, $bomb_type - В стиле Portal 1 - instances/gameplay/paint_bomb_dropper.vmf - prop_paint_bomb, $paint_type, $bomb_type - Грязный - instances/gameplay/paint_bomb_dropper_auto.vmf - People, alive - Большая открывающаяся коробка - instances/gameplay/cube_dropper_player.vmf 
 
Создание раздатчика с нуля
1.Создание собственных раздатчиков кубов на самом деле проще, чем вы могли бы подумать. По сравнению со стандартными экземплярами, этот метод создания раздатчика имеет гораздо меньше энтити в целом. Вам понадобится:
- env_entity_maker чтобы постоянно создавать кубы каждый раз, когда они пропадают
- filter_activator_class
- func_brush чтобы закрывать отверстие дроппера (используйте раздел tools/toolsinvisible texture для этой брашевой энтити)
- logic_auto
- point_template
- prop_dynamic, который будет моделью раздатчика
- prop_weighted_cube или prop_monster_box,
- trigger_multiple, расположенный внутри модели дроппера и слегка выступающий за отверстие капельницы
Чтобы иметь представление о точном размещении, ознакомьтесь с экземпляром VMF "instances/gameplay/cube_dropper_shared.vmf".
Для env_entity_maker установите следующие значения:
- Имя свойства - Значение - Name - cube_dropper_spawner - Point_template To Spawn - cube_dropper_template 
 
Для filter_activator_class установите следующие значения:
- Имя свойства - Значение - Name - filter_weighted_cube - Filter Classname - prop_weighted_cube или prop_monster_box 
 
Для func_brush установите эти значения:
- Имя свойства - Значение - Name - cube_dropper_clip - Disable shadows - Yes 
 
Для logic_auto установите такие выходы:
Для point_template установите такие значения:
- Имя свойства - Значение - Name - cube_dropper_template - Template 1 - cube_dropper_box 
 
Для prop_dynamic установите эти параметры:
- Имя свойства - Значение - Name - cube_dropper_prop - World Model - models/props_backstage/item_dropper.mdl 
 
Если вы используете prop_monster_box установите такие значения:
- Имя свойства - Значение - Name - cube_dropper_box - Start as Box - Yes 
 
В противном случае, если вы используете prop_weighted_cube, установите только name.
Если вы хотите, чтобы раздатчик автоматически создавал куб, добавьте для куба такой выход:
И наконец, для trigger_multiple установите эти значения, флаги и выходы:
- Имя свойства - Значение - Name - cube_dropper_trigger - Filter Name - filter_weighted_cube 
 
- Флаг - Включен? - Clients - No - Physics Objects - Yes 
 
 Совет:Здесь можно добавить выходы для других декоративных деталей, таких как освещение
Совет:Здесь можно добавить выходы для других декоративных деталей, таких как освещениеЕсли вы используете prop_monster_box, вы также должны добавить ещё один выход:
Наконец, на активаторе, таком как prop_button, добавьте следующие выходы:
 Примечание:Если вы хотите отключить авто-появление, поставьте значение второго выхода на бесконечный цикл (т.е. "Only Once" если поставлено "No" вместо "Yes").
Примечание:Если вы хотите отключить авто-появление, поставьте значение второго выхода на бесконечный цикл (т.е. "Only Once" если поставлено "No" вместо "Yes").Если вы хотите сделать авто-падение первого куба, переместите второй выход в trigger_once.
Раздатчик с предварительно размещенным кубом
Для этого, вам понадобится куб и раздатчик кубов одного типа. Если у вас нет авто-появления и есть кнопка для раздатчика:
- Создайте свой куб и дайте ему имя.
- Создайте свою кнопку и установите падение куба, когда она нажата.
- Настройте дополнительный выход для кнопки, чтобы уничтожить ваш предварительно помещенный куб при нажатии.
Если у вас есть авто-появление и нет кнопки для раздатчика:
- Создайте свой куб и установите падение куба, когда он распадается.
- Это всё!
Преимущество этого заключается в том, что теперь вы можете (например) поместить куб высоко на выступ, а раздатчик поставить в середине комнаты, чтобы игроку не пришлось вновь проходить через скучный процесс получения куба. Вы также можете использовать его, чтобы поднести куб немного ближе к игрокам.




























