Ai changetarget

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

Оригинальная статья [1]Ai_changetarget

Описание

Объект ai_changetarget изменяет свойство "target" (keyvalue) любого другого объекта на карте. Если у целевого объекта есть такое свойство, то изменения сразу же должны вступить в силу.

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

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

Список всех объектов для CS:S у которых объект ai_changetarget может изменять свойство "target":

  • ai_changetarget
  • env_entity_dissolver
  • env_entity_igniter
  • env_gunfire
  • env_microphone
  • env_texturetoggle
  • func_areaportal
  • func_monitor
  • info_camera_link
  • light_dynamic
  • phys_convert
  • phys_ragdollmagnet
  • point_teleport
  • trigger_teleport

Ошибки:

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

Свойство target:

Чтобы узнать, есть ли у какого-либо объекта свойство (keyvalue) "target", зайдите в свойства объекта и на вкладке "Class Info" отожмите кнопку "SmartEdit". Если в списке "Keyvalues" есть поле "target", то объект использует это поле. Изменить свойство "target" можно не у всех объектов, поэтому ознакомьтесь со списком в пункте "Особенности использования".

Параметры:

'Target Entity' – имя целевого объекта;

'New Target' – на это значение будет изменено свойство "target" у целевого объекта.

Карта:

csssdk_ai_changetarget.vmf

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

- ai_changetarget - func_button - func_detail - info_overlay - info_teleport_destination - env_entity_igniter - logic_case - prop_physics - trigger_teleport

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

На первом пульте слева, от точки появления игрока, размещены 3 кнопки с одинаковым именем. Каждая из этих кнопок вызовом команды "Activate" активизирует свой объект ai_changetarget. Каждый из этих ai_changetarget в свою очередь меняет цель у объекта teleport1 (trigger_teleport), таким образом настраивая точку назначения телепорта на одну из teleport_destination1,2,3 (info_teleport_destination). Войдя в телепорт teleport1, игрок будет телепортирован в выбранную точку. В самом удалённом конце сцены от точки появления игрока находится другой телепорт teleport2. Его точка назначения выбирается случайно при помощи объекта teleport2_case (logic_case). Когда игрок впервые входит в этот телепорт он телепортируется в точку teleport_destination3 и только уже после телепортации срабатывает событие "OnStartTouch" для объекта teleport2. Это событие через объект teleport2_case активизирует один из трёх объектов changetarget4,5,6 (ai_changetarget), выбирая их случайным образом. Когда игрок повторно входит во второй телепорт, он телепортируется в новую точку назначения. На пульте справа от точки появления игрока 2 кнопки, каждая из которых активизирует свой ai_changetarget. После этого кнопки вызывают функцию "Ignite" (поджечь) для объекта entity_igniter1 (env_entity_igniter), и одна из бочек начинает гореть. В большинстве случаев использование ai_changetarget не оправдано. Например, на карте-примере csssdk_ai_changetarget.vmf легче поставить 2 объекта env_entity_igniter и поджигать каждым из них свою бочку, значительно упростив сцену и её "читаемость" для других людей. Однако, для того чтобы сделать телепорт со случайной точкой назначения, этот объект будет очень полезен.