Env entity maker

Материал из CSM Wiki
Перейти к навигации Перейти к поиску

Оригинал Env_entity_maker


Описание

Объект env_entity_maker в группе с объектом point_template используется для клонирования любого объекта или группы объектов. При помощи объекта env_entity_maker можно автоматизировать процесс клонирования объектов. Например: можно сделать так, чтобы объекты появлялись в нужном месте только тогда, когда игрок не может их видеть. Или сделать так, чтобы нельзя было иметь две копии объекта одновременно. То есть, до тех пор, пока клонируемый объект не будет разрушен, не будет создана его новая копия.


Особенности использования

  • Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
  • Объект должен быть установлен там, где будет использоваться.
  • На карте может быть установлено множество этих объектов


  • Для работы этого объекта нужен объект Point template.

Ошибки

Смотрите объект Point template. Он имеет несколько важных особенностей, которые могут привести к краху игры.


Если установить флажки "Enable AutoSpawn" и "AutoSpawn: Wait for entity destruction", то по идее, новое клонирование объектов не должно будет произойти пока не будут уничтожены все объекты-клоны. Однако, среди всех клонируемых объектов в point_template выбирается один - опорный, уничтожение которого и приведёт к старту нового клонирования. На карте-примере таким объектом является бочка. Этот объект выбирается игрой очень просто. Если в point_template выбран всего один объект, то этот объект и будут опорным. Если в point_template выбрано два и более объектов, то всегда в качестве опорного будет выбираться второй объект.


  Warning.png Внимание:  Если установить флажок "Enable AutoSpawn" и НЕ установить флажок "AutoSpawn: Wait for entity destruction", то это приведёт к бесконечному и безостановочному клонированию новых объектов, что в итоге приведёт к переполнению буфера имён объектов, что в свою очередь приведёт к краху игры.


Заметки

С помощь этого объекта можно создавать какие-нибудь незамысловатые детекторы опасности зоны. Например: если кто-то видит этот объект, то загорается красная лампочка, извещающая о том, что эта точка кем-то простреливается и идти туда опасно. Но это только как вариант.


Параметры

  • Pitch Yaw Roll (Y Z X) – ориентация объекта на карте (направление распространения);
  • Point_template To Spawn – имя объекта point_template для использования;
  • PostSpawn Movement Speed – скорость, которая придаётся клонируемым объектам, сразу после процесса клонирования;
  • PostSpawn Movement Direction – направление в котором будет приложена скорость, указанная в свойстве "PostSpawn Movement Speed";
  • PostSpawn Movement Variance – максимально отклонение от заданного направления, указанного в свойстве "PostSpawn Movement Direction".


Флаги

  • Enable AutoSpawn – включить автоматическое клонирование; ВНИМАНИЕ! если установить этот флажок и не установить флажок "AutoSpawn: Wait for entity destruction", то объекты начнут клонироваться автоматически, не переставая;
  • AutoSpawn: Wait for entity destruction – разрешить создание новых клонов только если все предыдущие объекты-клоны будут уничтожены; работает только при включенном флажке "Enable AutoSpawn"; (у этого флажка есть баг, см. пункт "Ошибки");
  • AutoSpawn: Even if the player is looking – клонировать объекты даже если игрок смотрит на этот объект env_entity_maker; работает только при включенном флажке "Enable AutoSpawn"; отключите это флажок если хотите чтобы создание объектов проходило незаметно для игроков;
  • ForceSpawn: Only if there’s room – разрешить клонирование новых объектов только тогда, когда игрок находится в этой комнате (виден BSP-лист); используется только при вызове функции "ForceSpawn";
  • ForceSpawn: Only if player isn’t looking – разрешить клонирование новых объектов только если игрок не видит объект env_entity_maker; используется только при вызове функции "ForceSpawn".

Inputs

  • ForceSpawn – принудительно клонировать объекты.

Outputs

  • OnEntitySpawned – выполняется тогда, когда клонируются новые объекты;
  • OnEntityFailedSpawn – выполняется сразу же после вызова функции "ForceSpawn" и только в том случае, если не получается выполнить клонирование из-за установленных флажков "Only if there’s room" или "Only if player isn’t looking", запрещающих клонирование при некоторых условиях.

Карта

csssdk_env_entity_maker.vmf

Используются объекты

  • env_entity_maker
  • point_template
  • func_button
  • func_detail
  • prop_physics
  • weapon_hegrenade

Описание карты

На карте наглядно, с помощью стрелок, демонстрируется, какие объекты и где будут появляться. В оранжевом квадрате стоят объекты, клонирование которых и выполняется на карте. Это: ящик, бочка, бутылка и граната. Красная стрелка указывает на ящик, жёлтая – на бочку, зелёная - на бутылку.

При старте нового раунда сразу же происходит первое клонирование объектом env_entity_maker, который ближе всего находится к точке появления игрока. Бутылка, упав с такой высоты и коснувшись земли сразу же разбивается. Этот объект настроен так, чтобы новые клоны не создавались до тех пор пока все предыдущие клоны не будут уничтожены. Однако, из-за бага, описанного в пункте "Ошибки", достаточно уничтожить всего один клонируемый объект, чтобы начали создавать новые. В нашем случае, достаточно уничтожить только бочку-клон, чтобы произошло новое клонирование объектов. А представьте, что если бы вместо бочки оказалась бутылка, то при падении с большой высоты она бы сразу разбивалась и это бы запускало процесс клонирования снова и снова без остановок! К сожалению это может привести к появлению нежелательных новых объектов, которые в итоге засорят всю карту. Воспользуйтесь гранатами, если почувствуете, что уже не можете шевелиться... ведь для того они тут и даны...

С помощью кнопки на пульте, вы можете вручную клонировать те же самые объекты в неограниченных количествах.

Смотрите также