Env physexplosion

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

Оригинал Env_physexplosion

Описание

Объект env_physexplosion используется для создания невидимого взрыва, действующего не только на физические объекты, но и на игроков. Объект env_physexplosion может не причинять никаких повреждения окружающим физическим объектам, просто толкая объекты от точки взрыва в разные стороны. Взаимодействие взрыва с окружающими физическими объектами и игроками может проходить без учёта препятствий на пути взрыва. То есть, если между объектом env_physexplosion и другими физическими объектами находится жирная стена, то взрыв всё равно будет действовать на физические объекты, игнорируя присутствие стены.

Тип наносимых взрывом повреждений: BLAST (см. filter_damage_type)

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

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

Ошибки

Если поставить высокое значение свойства "Magnitude" (например 500), то это может привести к дезориентации игрока даже без включенного флажка "Disorient Player if pushed".

Заметки

Если вы не заметили, то дезориентация игроков при взрыве всегда направляет взгляд игроков в направлении, соответствующем углам (0 0 0). Вы можете сами выбрать направление дезориентации, если добавите к любому объекту env_physexplosion, размещенному на вашей карте, новое свойство (keyvalue) "angles". Это можно сделать в свойствах объекта при отжатой кнопке "SmartEdit". Однако, этот угол будет применён для всех (!) других объектов env_physexplosion, поэтому вы не сможете указать для разных env_physexplosion разное направление дезориентации. У всех будет одинаковое. Эта функция явно не была учтена при разработке игры, поэтому используйте её на свой страх и риск, потому что это может привести к каким-нибудь побочным явлениям, которые на данный момент ещё не выявлены.

Если поставить флажок "No Damage - Only Force" и поставить флажок "Push players", то это приведёт к существенному снижению воздействия силы взрыва на игроков.

Параметры

  • Magnitude – максимальный урон от взрыва; если это значение равно 0, то взрыв никак не взаимодействует с окружающими объектами;
  • Radius Override – радиус вокруг объекта env_physexplosion, в котором другие объекты получают урон от взрыва; если значение этого свойства равно 0, то радиус взрыва рассчитывается исходя из значения свойства "Magnitude";
  • Inner Radius – расстояние от объекта env_physexplosion с которого начинается расчёт "видимости" объектов для применения к ним сил взрыва; все объекты, находящиеся ближе этого расстояния, будут подвержены силам взрыва; используется только при включенном флажке "Test LOS before pushing";
  • Limit to Entity – имя объекта(-ов) на карте, на которые будет действовать взрыв; при этом другие объекты затронуты взрывом не будут.

Флаги

  • No Damage - Only Force – не причинять урон, а только применять силу взрыва к физическим объектам, заставляя объекты двигаться;
  • Push Players – применять взрыв не только к физическим объектам, но и к игрокам;
  • Push Radially – использовать радиальный взрыв; сила, прикладываемая к физическим объектам в момент взрыва, рассчитывается на основе бесконечно высокого вертикально расположенного цилиндра, а не сферы, как это делается при обычном взрыве;
  • Test LOS before pushing – перед взрывом использовать проверку на "видимость" физических объектов, к которым будет приложена сила; например, физические объекты, находящиеся за стеной, не будут подвержены силам взрыва, если включить этот флажок; расстояние, с которого начинается определение "видимости" объектов, регулируется свойством "Inner Radius";
  • Disorient Players if pushed – дезориентировать игроков, изменяя направление взгляда игроков во время взрыва; используется только если включен флажок "Push Players".

Inputs

  • Explode – произвести взрыв.

Outputs

  • OnPushedPlayer – вызывается, когда взрыв толкает одного или нескольких игроков; работает только если включен флажок "Push Players".

Карта

csssdk_env_physexplosion.vmf

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

  • env_physexplosion
  • func_button
  • func_detail
  • prop_physics

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

Кнопки на первом, втором, третьем и четвёртом пультах используются для активации соответствующих взрывов, имеющих в качестве цели свои физические объекты. Для первого объекта env_physexplosion нет ограничений на количество физических объектов, которые он может толкать, однако стены изолируют его от других физических объектов и не позволяют взаимодействовать с ними. Второй объект env_physexplosion толкает свою бочку через стену, демонстрируя особенность этого объекта игнорировать стены при взрыве. Третий объект env_physexplosion демонстрирует применение радиального взрыва. Можете попробовать поднять объект physexplosion3 (env_physexplosion) на любую высоту над поверхностью земли и всё равно он будет толкать свою бочку в том же направлении как и прежде. Четвёртая пара объектов env_physexplosion толкают ящик вверх, демонстрируя зависимость направления движения объектов после взрыва от выбора точки взрыва. Можете попробовать поймать ящик на приземлении, и придать ему очередную порцию вертикальной силы.

Кнопки на пятом и шестом пультах используются для активации взрывов, действующих на все объекты в радиусе их действия (даже на игроков). Пятый объект env_physexplosion толкает игроков а так же все бочки и ящики, находящиеся на карте. Шестой объект не просто толкает все физические объекты и игроков на карте, но ещё и дезориентирует игроков.

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