Trigger impact: различия между версиями
Kogemyaka (обсуждение | вклад) |
Kogemyaka (обсуждение | вклад) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
− | {{sdk beginsrc}} [http://developer.valvesoftware.com/wiki/Trigger_impact ] | + | {{sdk beginsrc}} [http://developer.valvesoftware.com/wiki/Trigger_impact Trigger_impact] |
== Описание == | == Описание == | ||
Объект trigger_impact используется для толкания в указанном направлении всех физических объектов, которые задевают его. | Объект trigger_impact используется для толкания в указанном направлении всех физических объектов, которые задевают его. | ||
Строка 16: | Строка 16: | ||
Используйте этот объект на ваших картах только в крайней необходимости, потому что множество недоработок не позволяют применять этот объект правильно и легко. | Используйте этот объект на ваших картах только в крайней необходимости, потому что множество недоработок не позволяют применять этот объект правильно и легко. | ||
+ | |||
{{sdk showtriggers 1 trigger}} | {{sdk showtriggers 1 trigger}} | ||
Строка 21: | Строка 22: | ||
{{sdk param p y r}} а так же это направление в котором будут толкаться физические объекты; (см. пункт "Заметки"); | {{sdk param p y r}} а так же это направление в котором будут толкаться физические объекты; (см. пункт "Заметки"); | ||
*'''Magnitude''' – сила с которой будут толкаться физические объекты внутри этого триггера в направлении "Pitch Yaw Roll"; отрицательное значение будет толкать физически объекты в обратном направлении; | *'''Magnitude''' – сила с которой будут толкаться физические объекты внутри этого триггера в направлении "Pitch Yaw Roll"; отрицательное значение будет толкать физически объекты в обратном направлении; | ||
− | + | *'''Noise''' – отклонение от направления "Pitch Yaw Roll" в котором могут толкаться физические объекты внутри этого триггера; 0 – строго в направлении "Pitch Yaw Roll"; 1.0 – в любом направлении; 0.5 – отклонение в 90 градусов от направления "Pitch Yaw Roll"; | |
{{sdk param origin}} | {{sdk param origin}} | ||
− | + | ||
== Inputs == | == Inputs == | ||
{{sdk inp enable}} | {{sdk inp enable}} |
Текущая версия на 07:38, 25 октября 2009
Оригинал Trigger_impact
Содержание
Описание
Объект trigger_impact используется для толкания в указанном направлении всех физических объектов, которые задевают его.
Особенности использования
- Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
- Объект должен быть установлен там, где будет использоваться. Смотрите пункт "Ошибки".
- На карте может быть установлено множество этих объектов
- Объект для удобства может быть покрыт материалом tools/toolstrigger.
- Объект в начале каждого раунда всегда выключен.
Ошибки
Не обнаружены.
Заметки
Гранаты, брошенные игроком, являются физическими объектами, поэтому могут контактировать с триггерами. Все виды оружия, которое можно подобрать, не контактируют с триггерами.
Направление "Pitch Yaw Roll" указывает направление полёта объектов, после приложения к ним силы, но так же это угол поворота для всех Brush-объектов. На этот угол автоматически поворачиваются Brush-объекты при своём появлении на карте, поэтому этот объект будет работать как задумано только при "Pitch Yaw Roll" = "0 0 0". Если же указать другой угол, например "30 -45 15", то придётся вручную поворачивать весь триггер на углы соответственно "30 -45 15". Выполнить это можно при помощи утилиты поворота, масштабирования и перемещения "Transform [Ctrl+M]". Правильность постановки этого объекта на карте можно проверить при помощи консольной команды "showtriggers_toggle", которая позволяет отображать триггеры в игре.
Используйте этот объект на ваших картах только в крайней необходимости, потому что множество недоработок не позволяют применять этот объект правильно и легко.
Консольная переменная "showtriggers 1" позволяет включить отображение материала tools/toolstrigger в игре, точно так же как он отображается в редакторе Hammer. Для переключения отображения этого материала (Показать/Скрыть) используется консольная команда "showtriggers_toggle".
Параметры
- Pitch Yaw Roll (Y Z X) – ориентация объекта на карте (направление распространения); а так же это направление в котором будут толкаться физические объекты; (см. пункт "Заметки");
- Magnitude – сила с которой будут толкаться физические объекты внутри этого триггера в направлении "Pitch Yaw Roll"; отрицательное значение будет толкать физически объекты в обратном направлении;
- Noise – отклонение от направления "Pitch Yaw Roll" в котором могут толкаться физические объекты внутри этого триггера; 0 – строго в направлении "Pitch Yaw Roll"; 1.0 – в любом направлении; 0.5 – отклонение в 90 градусов от направления "Pitch Yaw Roll";
- Origin (X Y Z) – точка опоры объекта (указывается при помощи Helper’а).
Inputs
- Enable – включить объект;
- Disable – выключить объект;
- Toggle – переключить состояние объекта (Включен/Выключен);
- Impact – применить силу для физических объектов только один раз;
- SetMagnitude <float> – установить новое значение свойства "Magnitude";
- StartTouch – сымитировать прикосновение к объекту другого объекта, который выполняет эту функцию (!caller); вызов этой функции позволяет выполнять только событие "OnStartTouch"; после вызова этой функции будет считаться что объект (!caller) продолжает контактировать с этим объектом; использование этой функции может привести к тому, что событие "OnEndTouchAll" может вообще не быть выполненным;
Outputs
- ImpactForce <vector> - возвращает вектор равный "Magnitude" * "Pitch Yaw Roll" в момент срабатывания этого триггера; выходной вектор этого события может быть использован в следующих функциях:
- объект func_breakable_surf, функция "Shatter";
- объект keyframe_rope, функция "SetForce";
- объект move_rope, функция "SetForce";
- объект shadow_control, функция "Direction".
Карта
csssdk_trigger_impact.vmf
Используются объекты
- trigger_impact
- func_detail
- prop_door_rotating
- prop_physics
- logic_timer
Описание карты
На карте для наглядности при помощи двух таймеров постоянно выполняется функция "Impact" для двух объектов trigger_impact. Зайдите в дверь и вы увидите как эти объекты толкают друг другу разноцветные бочки. Бочки летают по карте достаточно быстро и могут пришибить игрока, так что будьте осторожны. Обратите внимание, что сила прикладывается к бочкам не постоянно, а моментально примерно 1 раз в секунду.
Обратите внимание как в редакторе Hammer повёрнуты объекты trigger_impact. Это сделано для предотвращения ошибки описанной в пункте "Заметки".