Logic branch listener

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

Оригинал Logic_branch_listener

Описание

Объект logic_branch_listener используется для слежения за изменениями сразу нескольких объектов logic_branch.

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

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

Ошибки

Не обнаружены.

Параметры

  • Logic Branch 01-16 – имя объекта(-ов) logic_branch; допускается использование символов-джокеров * (Wildcard), например: "my_branch_*".

Inputs

  • Test – проверить булево значение всех объектов logic_branch, указанных в свойствах "Logic Branch 01-16"; если значение всех объектов logic_branch равно 0, то сразу же будет выполнено событие "OnAllFalse"; если значение всех объектов logic_branch равно 1, то сразу же будет выполнено событие "OnAllTrue"; если значение хотя бы одного объекта logic_branch будет отличаться от значений других объектов logic_branch, то сразу же будет выполнено событие "OnMixed".

Outputs

  • OnAllTrue – выполняется тогда, когда все контролируемые объекты "Logic Branch 01-16" имеют значение 1; выполняется автоматически при изменении значения хотя бы одного объекта logic_branch, указанного в свойствах "Logic Branch 01-16";
  • OnAllFalse - выполняется тогда, когда все контролируемые объекты "Logic Branch 01-16" имеют значение 0; выполняется автоматически при изменении значения хотя бы одного объекта logic_branch, указанного в свойствах "Logic Branch 01-16";
  • OnMixed - выполняется тогда, когда значение хотя бы одного контролируемого объекта "Logic Branch 01-16" отличается от значений остальных; выполняется автоматически при изменении значения хотя бы одного объекта logic_branch, указанного в свойствах "Logic Branch 01-16".

Карта

csssdk_logic_branch_listener.vmf

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

  • logic_branch_listener
  • logic_branch
  • func_button
  • func_detail
  • func_wall
  • func_brush
  • logic_auto

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

На карте установлен пульт с двумя кнопками. Эти кнопки изменяют значения двух объектов logic_branch. Верхняя кнопка пульта отвечает за верхний logic_branch, а нижняя кнопка пульта – за нижний. При нажатии на эти кнопки, для соответствующего объекта logic_branch присваивается значение 0 или 1 и отображается цифра "0" или "1", указывающая какое значение было присвоено. После этого выполняется функция "Test" для соответствующего объекта logic_branch. В зависимости то того какое значение имеет logic_branch, вызываются события "OnTrue" или "OnFalse", отображающие слово "TRUE" или "FALSE".

При изменении любого из объектов logic_branch автоматически срабатывает объект logic_branch_listener. Обратите внимание, что для этого объекта функция "Test" явно вызывается только один раз - в начале каждого раунда, чтобы отобразить нужное слово на стене. В зависимости от того какие значения принимают объекты logic_branch во время нажатий на кнопки пульта, объект logic_branch_listener вызывается свои события "OnAllTrue", "OnAllFalse" и "OnMixed", отображающие соответствующие слова "ALL TRUE", "ALL FALSE" и "MIX".

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