- 7 Май 2016
- 75
- 0
Итак, мы знаем что триггер можно создать непосредственно из Hammer'a (область которая бы реагировала на что-нибудь), но что если ты не знаешь какая именно область тебе нужна. Типа она все время меняется, как отследить такое? Нашел в доках валве функцию CreateTrigger, которая возвращает некий AABB trigger.
Как я понял это и есть то что мне нужно, ибо можно создать триггер через юнита, взяв его AbsOrigin и некий радиус, но доступно всего 3 функции для работы с ним:
Первые 2 как мы видим отвечают за включение/выключение триггера, а вот 3-я , как я понял, возвращает true/false если данный entity "дотронулся" триггера.
Перепробовал все, никак не получается. IsTouching() всегда возвращает false, даже если дать entity, на котором создаешь сам триггер, hundle триггера через DebugPrintTable() возвращает userdata в который никак не заглянуть. Может быть есть еще что то, что я упустил. Идеи?
На данный момент использую обычный триггер из хамера, и переношу его через SetAbsOrigin() туда куда мне нужно. Но хотелось бы автоматизировать это полностью(без создания ентити в хамере)
Код:
CreateTriggerRadiusApproximate handle CreateTriggerRadiusApproximate(Vector Vector_1, float float_2)
Код:
Disable void Disable() Disable the trigger
Enable void Enable() Enable the trigger
IsTouching bool IsTouching(handle hEnt) Checks whether the passed entity is touching the trigger.
Перепробовал все, никак не получается. IsTouching() всегда возвращает false, даже если дать entity, на котором создаешь сам триггер, hundle триггера через DebugPrintTable() возвращает userdata в который никак не заглянуть. Может быть есть еще что то, что я упустил. Идеи?
На данный момент использую обычный триггер из хамера, и переношу его через SetAbsOrigin() туда куда мне нужно. Но хотелось бы автоматизировать это полностью(без создания ентити в хамере)
Последнее редактирование модератором: