npc_bullsquid

From Valve Developer Community
Jump to: navigation, search
English (en)русский (ru)
... Icon-Important.png
Info.png
This entity is not in the FGD by default .
See below for instructions on making it available.

Описание

Несмотря на то что в Half-Life 2 нет физических ресурсов (звуки, модель и т.п.) Булсквида, энтитя npc_bullsquid полностью описана и поддерживается кодом.

Note.pngNote:Some keyvalues, flags, inputs, or outputs might not affect an NPC, based on the functionality and coding of the NPC.

Недостающие модели

  • models/bullsquid.mdl
  • models/spitball_large.mdl
  • models/spitball_medium.mdl
  • models/spitball_small.mdl

Недостающие звуки

  • NPC_Bullsquid.Idle
  • NPC_Bullsquid.Pain
  • NPC_Bullsquid.Death
  • NPC_Bullsquid.Attack1
  • NPC_Bullsquid.Growl
  • NPC_Bullsquid.TailWhip
  • GrenadeSpit.Acid
  • GrenadeSpit.Hit

Использующие игры

Dedicated Console variables

  • sk_bullsquid_health
<целое> Изначальное количество жизни Булсквида
  • sk_bullsquid_dmg_bite
<целое> Повреждения от укуса
  • sk_bullsquid_dmg_whip
<целое> Максимальное количество жизни игрока, при котором булсквид будет пытаться атаковать ударом хвоста. (!!!)

Ключевые параметры

<target_source> Имя, с помощью которого другие энтити ссылаются на эту.
  • angles
<angles> Угловая ориентация этой энтити в пространстве (также используется для энтитей с угловыми эффектами).
  • renderfx
<выбор>
Буквенное значение Описание
0 Нормальный
1 Медленная пульсация
2 Быстрая пульсация
3 Медленная продолжительная пульсация
4 Быстрая продолжительная пульсация
5 Медленное исчезание
6 Быстрое исчезание
7 Медленное появление
8 Быстрое появление
9 Медленное мигание
10 Быстрое мигание
11 Быстрейшее мигание
12 Медленное мерцание
13 Быстрое мерцание
14 Постоянное сияние
15 Искажение
16 Голограмма (Искажение + исчезание)
17 Увеличение масштаба
22 Эффект светового пятна
23 Отбор расстоянием (TEST)
24 Исчезновение продолжительными пульсациями
  • rendermode
<выбор> Используется для нестандартных режимов рендеринга этой энтити. Смотри также 'FX Amount' и 'FX Color'.
Буквенное значение Режим рендера Описание (Здесь дополнительная информация)
0 Normal Отображение по умолчанию.
1 Color Устаревшее.
2 Texture Простой, непрозрачный.
3 Glow Нет проверки Z-буфера. Фиксированный размер на экране.
4 Solid / Alphatest Устаревшее. (Используйте возможности alphatest взамен устаревшего.)
5 Additive Устаревшее. Добавить цвет этой энтити к тому, что сзади неё.
7 Additive Fractional Frame Устаревшее? Смешивание между кадрами анимации.
8 Alpha Add (Not in FGD.)
Blank image.pngTodo: Write description.
9 World Space Glow Нет проверки Z-буфера. Фиксированный размер в пространстве (противоположно "на экране").
10 Dont Render / None Не отображать.
  • renderamt
<целое> FX Amount (0 - 255) - Насколько непрозрачной будет отрисована эта энтитя.(0 - это полностью прозлачный, в то время как 255 - это полностью непрозрачный). Не работает если ключевое значение rendermode установлено в Normal или Dont Render.
  • rendercolor
<color255> FX Color - В каком цвете будет отрисована эта энтитя (в той степени, насколько установлен параметр renderamt).
  • disablereceiveshadows
<boolean> Отключает получение теней этим объектом.
  • damagefilter
<цель назначения> Имя энтити-фильтра, которая контроллирует какие энтити могут наносить повреждения этой.
  • ResponseContext
<строка> Контекст системы ответов для этой энтити. Формат должен быть таким: 'ключ:значение,ключ2:значение2,и т.д.'. Когда эта энтитя говорит, список ключей и значений вставляется в систему правил ответов.
  • disableshadows
<boolean> Используется для отключения отброса динамической тени от этой энтити.
  • target
<цель_назначения> Если установлено, то это имя пути, по которому (к которому) пойдёт этот NPC после появления.
  • squadname
<строка> NPC которые имеют такое же имя отряда будут делится информацией о врагах, и будут сменяться атакуя и прикрывая друг друга.
  • hintgroup
<строка> Группа хинтов используемая этим NPC. Используется для ограничения круга поиска хинт-точек подгруппой из всех хинт-точек на карте. Только хинт-точки, у которых имя группы равно этому параметру, будут видны данному NPC.
  • hintlimiting
<boolean> Ограничевает NPC использовать только указанныую группу хинтов для навигационных запросов. Но не ограничивает локальную навигацию.
  • sleepstate
<выбор> Держит NPC в замершем состоянии до тех пор пока не произойдет указанное событие. Смотри также 'Wake Radius' и 'Wake Squad'.
Буквенное значение Описание
0 Нет
1 Ожидать опасности
2 Ожидать PVS
3 Ожидать ввода (input), игнорировать PVS
(in all games since Half-Life 2: Episode One) Авто PVS
(in all games since Half-Life 2: Episode One) Авто PVS после PVS
  • wakeradius
<float> Автоматически проснуться, если пользователь приблизился на указанное расстояние.
  • wakesquad
<boolean> Пробуждает всех NPC указанного отряда, если этот NPC проснулся.
  • physdamagescale
<float> Значение, на которое умножаются повреждения, полученные этим персонажем от физических объектов. При значении 0, этот NPC не будет получать повреждений от физических объектов.

Флаги

  •  [1] : Ждать пока не заметят
  •  [2] : Кляп
       Не воспроизводить звуков IDLE, пока не рассердится
  •  [4] : Упасть на землю
       Неотмеченное подразумевает *телепортировать* к земле
  •  [8] : Выбросить аптечку
  •  [16] : Эффективный
       Не приобретает врагов и избегает препятствий
  •  [128] : Ждать сценария
  •  [256] : Дальнее видение/стрельба
  •  [512] : Скрыть труп
  •  [1024] : Думать за пределами PVS (Поле возможной видимости игрока)
  •  [2048] : Шаблон NPC
       Эта энтити - шаблон для npc_template_maker. Эта энтити не будет появляться автоматически вместе с загрузкой карты. Появится только после указания через эту энтитю. (Не может появляться через point_template.)
  •  [4096] : Делать альтернативное столкновение для этого NPC (Игрок уступает)
  •  [8192] : Не выбрасывать оружие
  •  [16384] : Игнорировать давление игрока (in all games since Source 2006)
       Не уступать пути игроку

Ввод (Inputs)

  • Kill
Удаляет эту энтити из игрового мира.
  • KillHierarchy
Удаляет эту энтити и всех её потомков из игрового мира.
  • AddOutput <string>
Определяет ключевое значение/вывод для этой энтити. Это может быть очень опасно, используйте осторожно.
Формат: <ключ> <значение>
Формат: <имя вывода> <имя цели>:<имя ввода>:<параметр>:<задержка>:<максимальное количество выполнений (-1 == бесконечно)>
  • FireUser1-4
Выполняется для этой энтити, когда вывод OnUser1-4 был задействован. Смотри User Inputs and Outputs.
Устанавливает цвет отрисовки.
Устанавливает интенсивность отрисовки.
  • SetDamageFilter <цель_назначения>
Устанавливает эту энтитю как фильтр повреждений. Вставьте пустую строку, для очистки фильтра повреждений.
  • AddContext <строка>
Добавляет контекст в список контекстов ответов этой энтити. Формат должен быть 'ключ:значение'.
  • RemoveContext <строка>
Удаляет контекст из списка контекстов ответов этой энтити. Имя должно совпадать с значением 'ключ' до этого добавленного контекста.
  • ClearContext
Удаляет все контексты из списка контекстов ответов этой энтити.
  • DisableShadow
Выключает тень.
  • EnableShadow
Включает тень.
  • SetRelationship <строка>
Изменяет отношение этой энтити к другой энтите или классу. (Действует как энтитя ai_relationship , субьект (поле "Subject") которой этот NPC.)
Формат: <цель> <положение> <rank>
Возможные значения <положение> :
Буквенное значение Описание
D_HT Ненависть (Hate)
D_FR Боязнь (Fear)
D_LI Симпатия (Like)
D_NU Нейтралитет (Neutral)
  • SetHealth <целое>
Устанавливает количество жизни этого NPC.
  • SetBodyGroup <целое>
HACK: Устанавливает группу тел для этого NPC (от 0 - n). Вы должны знать то, что Вы делаете!
  • physdamagescale <float>
Устанавливает величину, на которую умножается энергия повреждений, получаемых персонажем от физических объектов.
Note.pngNote:0 (ноль) подразумевает что эта функция отключена для обратной совместимости.
  • Ignite
Поджигает, охватывает огнём.
  • Break
Разбивает на куски.
  • StartScripting
Вводит в состояние выполнения сценария. В этом сотстоянии NPC игнорируют различные стимулы, которые могут их вывести из сценария: Они игнорируют опасные звуки, игнорируют +USE, не произносят "речь простоя" (idle speech), и не отвечают на "речь простоя" других NPC, и т.п.
  • StopScripting
Выводит из состояния сценария.
  • Assault <цель_назначения>
Start an assault. Parameter passed in should be the name of the rally point.
  • SetSquad <строка>
Устанавливает имя отряда ("Squad") для этого NPC. Последний также будет автоматически удалён из любого ранее назначенного отряда. Если оставить этот параметр пустым, то NPC будет удалён из любого ранее назначенного отряда.
  • Wake
Пробуждает NPC, если он спит.
  • ForgetEntity <цель_назначения>
Очищает память NPC об указанной энтите.
  • GagEnable
Включает флаг "кляп". NPC не будет говорить за пределами хореографических сцен.
  • GagDisable
Отключает флаг "кляп".
  • IgnoreDangerSounds <float>
Игнорирует опасные звуки указанное количество секунд.
  • HolsterWeapon (in all games since Half-Life 2: Episode One)
Заставляет NPC убрать его оружие в кобуру. Игнорируется если NPC выполняет сценарий, если оружие NPC уже в кобуре, или если NPC не использует оружие.
  • HolsterAndDestroyWeapon (in all games since Half-Life 2: Episode One)
Идентично HolsterWeapon, только оружие уничтожается после того как было убрано и скрыто. (except the weapon is destroyed once it has been holstered and concealed.)
  • UnholsterWeapon (in all games since Half-Life 2: Episode One)
Заставляет NPC достать его оружие. Игнорируется если NPC выполняет сценарий, если оружие NPC уже достано, или если NPC не использует оружие.
  • ForceInteractionWithNPC <строка> (in all games since Half-Life 2: Episode One)
Заставляет NPC использовать динамическое взаимодействие (dynamic interaction) с другим NPC.
Формат параметров: <имя целевой NPC> <имя динамического взаимодействия>
  • UpdateEnemyMemory <цель_назначения> (in all games since Half-Life 2: Episode One)
Обновляет (или создаёт) память этого NPC о враге и его местоположении.

Вывод (Outputs)


  • BaseNPC:
OnDamaged
Выполняется, когда этот NPC получает повреждения. (!activator is the наносящий повреждения.)
OnDeath
Выполняется, когда этот NPC убит. (!activator is the убийца.)
OnHalfHealth
Выполняется, когда у этого NPC остается половина от его возможной максимальной жизни.
OnHearWorld
Выполняется, когда этот NPC слышит звук (Кроме звуков битвы и игрока).
OnHearPlayer
Выполняется, когда NPC слышит игрока.
OnHearCombat
Выполняется, когда NPC слышит звуки боя.
OnFoundEnemy  <конечное имя>
Выполняется, когда этот NPC установил прямую видимость с врагом (указанной энтитей).
OnLostEnemyLOS
Выполняется, когда этот NPC потерял прямую видимость с врагом.
OnLostEnemy
Выполняется, когда этот NPC потерял врага. Обычно это происходит, когда враг был убит/убран, или потому что NPC выбрал новую, более опасную цель.
OnFoundPlayer  <конечное имя>
Выполняется, когда этот NPC установил прямую видимость с врагом, и этот враг - игрок.
OnLostPlayerLOS
Выполняется, когда этот NPC потерял прямую видимость с врагом, и этот враг - игрок.
OnLostPlayer
Выполняется, когда этот NPC потерял врага, и этот враг был игрок. Обычно это происходит, когда враг был убит/убран, или потому что NPC выбрал новую, более опасную цель.
OnDamagedByPlayer
Выполняется, когда этот NPC ранен игроком. (!activator is the атакующий или водитель транспорта (если активен friendly fire)).
OnDamagedByPlayerSquad
Выполняется, когда этот NPC ранен игроком ИЛИ одним из участников отряда игрока. (!activator is the атакующий или водитель транспорта (если активен friendly fire)).
OnDenyCommanderUse
Выполняется, когда этот NPC не был принят в отряд игрока.
OnWake
Выполняется, когда этот NPC выходит из состояния сна.

Base:

OnUser1 до OnUser4
Каждый из этих выходов срабатывает в ответ на срабатывание пронумерованных входов от FireUser1 до FireUser4; см. Входы и выходы пользователя.
OnKilled  (только в Left 4 Dead series)
Этот вывод срабатывает, когда объект убит и удален из игры.

Model:

OnIgnite  !FGD
Fired when the entity catches fire, such as from an env_entity_igniter or the Ignite inputs.