Skip to content

Аниматроники

Краткий справочник по работе с аниматрониками в Fazbear's Hunt.

Как устроены аниматроники

Каждый аниматроник в FH — это Пилл-Пак (Pill Pack) с определённым техническим именем (например, pill_wfreddy2).

Гейммод определяет:

  • Играбельные — могут быть выбраны как основной аниматроник раунда
  • Вторичные — могут появляться как дополнительные

Базовые операции

Добавить аниматроника в режим

lua
pill_makePreferable("pill_wfreddy2", true)

Сделать вторичным

lua
pill_makeSecondary("pill_wbonnie2", true)

Получить модель аниматроника игрока

lua
local ent = pk_pills.getMappedEnt(ply)
if IsValid(ent) then
    print("Модель:", ent:GetModel())
end

Реакция на способности

Используйте хуки для реакции на действия аниматроников:

АниматроникХукОписание
ФреддиFH_BlindRageStartСлепая Ярость началась
БонниFH_YoursMineStartЧужой Взгляд начался
ЧикаFH_MinePlantedКекс установлен
Шедоу ФреддиFH_SFreddySubmergeInУход в невидимость
Золотой ФреддиFH_OutworldStartЗагранное Измерение

См. полный список: Способности аниматроников →

Скримеры

Скример — кульминационное действие аниматроника. Перехват скримеров идёт через:

Создание собственного скримера

lua
hook.Add("KeyPress", "MyJumpscare", function(ply, key)
    if not ply:IsAnimatronic() then return end
    if key ~= IN_ATTACK then return end

    local ent = pk_pills.getMappedEnt(ply)
    if not IsValid(ent) then return end

    local target = FindNearestPlayer(ply:GetPos(), 80, ply, 90)
    if not IsValid(target) or not target:IsSurvivor() then return end

    -- 1. Проиграть свою анимацию...
    -- 2. Запустить скример FH
    jumpscareEvent(ply, ent, target, ply:GetPos():Distance(target:GetPos()))
end)