Условия для актера human

Ниже перечислены условия выбора анимации в Animation Selector, специфичные для актеров типа human.

Условие
Описание

human_fsm_semaphore "<name>"

Проверяет, активен ли семафор с указанным именем. Подробнее про семафоры

human_fsm_state "<state_name>"

Проверяет, совпадает ли текущее FSM-состояние с заданным. Зарегистрированные имена FSM-состояний можно посмотреть в описании FSM (блоки state)

human_kill_flags "<kill_flag_name>" [..]

Проверяет, активны ли все перечисленные флаги обстоятельств гибели актера human. См. справку по флагам обстоятельств смерти.

human_fsm_counter

Проверяет значение FSM-счётчика для актера human. См. справку по счётчикам FSM.

human_hold_strap

Проверяет, нужно ли юниту придерживать ремень оружия, висящего за спиной.

human_throw_type

Проверяет, какой способ броска гранаты был выбран. Выбор способа броска гранаты.

human_stuff [holding | mounting | picking] "<item_type[ <item_type>...]>"

Проверяет взаимодействие юнита с указанными предметами в данный момент времени:

  • holding - предмет удерживается в руках;

  • mounting - предмет берется в руки;

  • picking - предмет поднимается с земли.

Тип предмета определяется согласно именам props в .def файле предмета. В проверке может участвовать сразу несколько типов предметов. Справка по типам предметов.

chevron-rightСоответствие props типа предметовhashtag
Тип предмета
Имена props
Описание

nothing

В руках солдата ничего нет

bazooka

weapon, rocketlauncher

Базука, стреляющая с плеча

mgun

weapon, mgun

Пулемёт

smg

weapon, smg

Автомат

rifle

weapon, rifle

Винтовка

pistol

weapon, pistol

Пистолет

flamer

weapon, flame_thrower

Огнемёт

small

smallitemin1hand

Мелкий предмет, например граната

1hand

itemin1hand

Предмет, который юнит держит в одной руке (например, канистра)

2hands

itemin2hands

Предмет, который юнит держит в двух руках (например, ящик)

body

human

Труп

flag

flag

Флаг

chevron-rightСправка по флагам обстоятельств смерти актера humanhashtag

front

Убит спереди

back

Убит сзади

blast

Убит взрывом

piercing

Убит пулей

go

Солдат двигался

run

Солдат бежал

cover_in_trench

Солдат находился в окопе в состоянии snipe

Стандартная проверка linked не сработает, так как в момент смерти юнит уже отлинкован.

Условия проверки FSM-счётчиков

Синтаксис

if human_fsm_counter <name> [inc|get|once] <value> of <loop_number>

где

<name> — название счетчика

Варианты проверки:

  • inc — увеличить счётчик на 1 и сравнить значение с value ;

  • get — проверить текущее значение, не изменяя его;

  • once — если значение счётчика > 0, вернуть истину и сбросить значение в 0;

chevron-rightИмена FSM-счётчиков для актера humanhashtag
  • knife — бросок ножа

  • down — залегание

  • alert — отпрыгивание от гранаты

  • pose — выбор позы

  • forced_smoke — запрос на курение из скрипта

chevron-rightПример проверки FSM-счетчика hashtag

Last updated