Func door (Source)

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

Оригинал Func_door

Описание

Объект func_door используется для создания дверей из брашей. Такие двери могут открываются, только путём отодвигания в какую-либо сторону.

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

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

Ошибки

Если в свойстве "Loop Moving Sound" выбрать зацикленный звук (loop), то этот звук не будет остановлен когда дверь откроется полностью. Остановить этот звук вообще будет нельзя до смены раунда.

Флажок "Non-solid to Player" работает не корректно. При установке этого флажка игрок может застрять в дверях.

Параметры

  • Master – имя объекта multisource, который будет ограничивать работу данного объекта кнопки; если объект multisource будет "включен" то этот объект работать точно так же, как и обычно; если объект multisource будет "выключен" то этот объект будет считаться заблокированным или просто не будет работать. Однако, функции "Press" или "Use" будут работать (если они есть), а значит и будут выполняться соответствующие события при вызове этой функций;
  • Team Num – команда к которой принадлежит этот объект (Нет/Террористы/Контр-Террористы); если игрок и этот объект находятся в одной команде, то игрок не сможет наносить визуальный урон объекту если на сервере mp_friendlyfire равно 0; (см. фильтр filter_activator_team);
  • Pitch Yaw Roll (Y Z X) – ориентация объекта на карте (направление распространения); углы на которые будет повёрнут объект в начале каждого раунда;
  • Move Direction (Pitch Yaw Roll) – направление движения объекта при активации (нажатии); не используется если установлен флажок "Don’t move";
  • Move Speed – скорость движения объекта; не используется если установлен флажок "Don’t move";
  • Lip – на сколько объект будет торчать из стены после активации; не используется если установлен флажок "Don’t move";
  • Delay Before Reset (-1 stay) – время, в течение которого объект остаётся активированым; спустя это время объект автоматически будет деактивирован; значение -1 заставляет объект оставаться всегда активированым; не используется если установлен флажок "Toggle";
  • Block Damage – урон наносимый этим объектом тому объекту или игроку, что ему мешает открыться или закрыться;
  • Force Closed – принудительно открывать/закрывать объект даже если ему что-то мешает открыться или закрыться (Нет/Да);
  • Ignore Debris – не контактировать с физическими объектами, отмеченными как "Debris" (Нет/Да); если установлен флажок "Non-solid to Player" и значение этого свойства равно "Yes", то в консоли красным цветом в начале каждого раунда будет выводиться предупреждение: Door <имя> with conflicting collision settings, removing ignoredebris; однако никаких действий при этом произведено не будет;
  • Start Sound – звук, который воспроизводится в начале процесса открытия объекта (выбирается в Sound Resource Browser);
  • Stop Sound – звук, который воспроизводится в конце процесса открытия объекта (выбирается в Sound Resource Browser);
  • Locked Sound – звук, который воспроизводится, когда происходит попытка активировать заблокированный объект;
  • Unlocked Sound – звук, который воспроизводится, когда активируется разблокированный объект; этот звук воспроизводится одновременно со звуком "Sounds", если тот установлен;
  • Loop Moving Sound – повторять звук "Start Sound" пока объект открывается или закрывается (Нет/Да); на самом деле звук будет повторяться только до тех пор, пока объект не достиг середины пути, после чего звук перестаёт повторяться; (у этого свойства есть баг, см. пункт "Ошибки");
  • Render Mode – режим рендеринга объекта;
  • FX Color (R G B) – цвет объекта;
  • FX Alpha (0-255) – прозрачность объекта; 255 – полностью не прозрачен; 0 - полностью прозрачен; не используется если свойство "Render Mode" равно "Normal" или "Don’t Render";
  • Render FX – эффект рендеринга объекта; например: мигание, плавное появление/исчезновение и т.п.;
  • Disable Receiving Shadows – отключить динамические тени от других объектов на этом объекте;
  • Minimum Light Level – минимальный уровень освещённости этого объекта; высокое значение этого свойства приведёт к тому, что объект станет очень ярким, будет хорошо заметен в темноте и на нём не будут различаться Lightmap-тени от других объектов; используется только в процессе компиляции карты;
  • Origin (X Y Z) – точка опоры объекта (указывается при помощи Helper’а).

Флаги

  • Starts Open – объект будет открыт в начале каждого раунда;
  • Non-solid to Player – объект не контактирует с игроком; игрок не может заблокировать этот объект; (у этого флажка есть баг, см. пункт "Ошибки");
  • Passable – полностью отключить модель столкновений объекта; через объект свободно смогут проходить игроки, пролетать физически объекты и пули;
  • Toggle – игрок может сам деактивировать объект; если установлен этот флажок, то свойство "Delay Before Reset" не используется;
  • Use Opens – объект может быть открыт при помощи клавиши "Использовать";
  • Touch Opens – объект можно открыть просто прикоснувшись к нему;
  • Starts Locked – блокировать объект в начале каждого раунда;
  • Door Silent – объект не издаёт никаких звуков.

Inputs

  • SetTeam <integer> - установить новое значение свойства "Team Num"; 2 – Террористы; 3 – Контр-Террористы;
  • Open – открыть объект; эта функция не будет работать, если объект будет заблокирован при помощи функции "Lock" или флажка "Starts Locked", однако будет работать, если объект "Master" будет "выключен";
  • Close – закрыть объект; эта функция не будет работать, если объект будет заблокирован при помощи функции "Lock" или флажка "Starts Locked", однако будет работать, если объект "Master" будет "выключен";
  • Toggle – переключить состояние объекта (Включен/Выключен);
  • Lock – заблокировать объект;
  • Unlock – разблокировать объект;
  • SetSpeed <float> - установить новое значение свойства "Move Speed" или "Rotation Speed"; у некоторых объектов скорость может не изменяться во время движения;
  • SetToggleState <float> - открывает объект на некоторое время не изменяя её состояния Открыт/Закрыт; объект func_areaportal, использующий этот объект, не сработает; продолжительность времени, в течение которого объект остаётся открыт, зависит от значения свойства "Delay Before Reset";
  • Color <R G B> - установить новое значение свойства "FX Color";
  • Alpha <integer> – (от 0 до 255) установить новое значение свойства "FX Alpha";

Outputs

  • OnBlockedOpening – выполняется в тот момент, когда объект блокируют в процессе его открытия;
  • OnBlockedClosing – выполняется в тот момент, когда объект блокируют в процессе его закрытия;
  • OnOpen – выполняется в тот момент, когда объект начинает открываться;
  • OnClose – выполняется в тот момент, когда объект начинает закрываться;
  • OnFullyOpen – выполняется в тот момент, когда объект полностью открыт;
  • OnFullyClosed – выполняется в тот момент, когда объект полностью закрыт;
  • OnUnblockedOpening – выполняется в тот момент, когда объект продолжает своё открытие после блокировки;
  • OnUnblockedClosing – выполняется в тот момент, когда объект продолжает своё закрытие после блокировки.

Карта

csssdk_func_door.vmf

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

  • func_door
  • func_button
  • func_detail
  • func_areaportal
  • trigger_multiple
  • prop_physics
  • logic_auto
  • point_servercommand

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

Побегайте по карте, открывайте и закрывайте двери, чтобы разобраться в принципе действия тех или иных свойств дверей.

Предпоследняя дверь создана из двух створок, которые разъезжаются в верх и вниз при открытии одной из них. Чтобы открыть парную дверь, используется вызов функции "Open" для всех частей двери. Таким образом можно создать дверь из любого количества маленьких частей, каждая из которых будет открываться в свою сторону.

Последняя дверь используется для открытия/закрытия портала созданного при помощи объекта func_areaportal. Портал контролирует видимость частей карты. Находясь на улице мы не видим что находится за закрытой дверью, но стоит открыть дверь, как сразу же становится видно бочку стоящую за ней. Зайдя в внутрь маленького помещения и закрыв за собой дверь изнутри, можно увидеть, что улица не отображается, когда закрыта дверь. Так работает объект func_areaportal.

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