Функции FH
Глобальные функции гейммода. Используйте для модификации поведения раундов, аниматроников и подарков.
Управление аниматрониками
giveKiller(ply, killer, [force]) SERVER
Назначает игрока аниматроником.
| Параметр | Тип | Описание |
|---|---|---|
ply | Player | Кому выдать |
killer | string | Техническое имя (например, "pill_wfreddy2") |
force | bool (опц.) | Если true — выдаст даже если такой же уже есть |
giveKiller(ply, "pill_wspringtrap2", true)TaseAnimatronic(ply) SERVER
Если игрок — аниматроник, бьёт его током (как Шокер).
TaseAnimatronic(ply)restoreAnimatronics() SERVER
Снимает роль аниматроника со всех текущих аниматроников.
Подарки
doGiftSpawning() SERVER
Включает появление подарков на карте.
disableGiftSpawning() SERVER
Отключает появление подарков.
Информация о раунде
fh.GetRoundCount() SHARED
Возвращает номер текущего раунда (целое число).
fh.GetEarnedKillers(players) SERVER
Возвращает таблицу игроков, "заслуживших" быть аниматроником в этом раунде. Также запоминает их на несколько раундов.
Внимание
Если вы вызвали эту функцию — ОБЯЗАТЕЛЬНО выдайте этим игрокам аниматроника. Иначе они «застрянут» в запоминании, и в следующие раунды их не выберут.
local candidates = fh.GetEarnedKillers(player.GetAll())
for _, ply in ipairs(candidates) do
giveKiller(ply, "pill_wfreddy2")
endfh.SetRoundType(number) SERVER
Устанавливает тип раунда. Режим вызывает это сам в начале раунда.
Аккуратно
Используйте только если точно знаете, что делаете.
fh.GetRoundType() SHARED
Возвращает текущий тип раунда.
| Значение | Тип раунда |
|---|---|
0 | Обычный |
1 | Со Спрингтрапом |
fh.GetActiveUsedKiller(killer) SHARED
Возвращает true, если указанный аниматроник присутствует на карте сейчас.
if fh.GetActiveUsedKiller("pill_wbonnie2") then
print("Бонни уже в игре!")
endСпособности аниматроников
Где использовать
Эти функции предназначены для использования внутри пилл-паков аниматроников или своих хуков, расширяющих их.
jumpscareEvent(ply, ent, target, [dist]) SERVER
Замораживает игрока-жертву в скримере. Вызывайте после проигрывания анимации.
| Параметр | Тип | Описание |
|---|---|---|
ply | Player | Аниматроник |
ent | Entity | Модель аниматроника (см. pk_pills.getMappedEnt(ply)) |
target | Player | Жертва |
dist | float (опц.) | Дистанция между аниматроником и жертвой |
HighlightPlayers(ply, ent) SERVER
Используется всеми аниматрониками (кроме Плюштрапа) на бинд +reload. Просвечивает игроков в радиусе halo_radius.
takePlayer(ply, ent) SERVER
Используется Эндоскелетом для захвата игрока. Автоматически ищет цель поблизости.
endoRelease(ply) SERVER
Заставляет аниматроника отпустить ранее схваченного игрока.
Поиск целей
FindNearestPlayer(origin, radius, ignorePlayer, fov) SERVER
Ищет ближайшего игрока в радиусе.
| Параметр | Тип | Описание |
|---|---|---|
origin | Vector | Точка поиска |
radius | number | Радиус |
ignorePlayer | Player | Кого игнорировать |
fov | number | Если указано вместе с ignorePlayer — поиск только в конусе обзора |
Идеально подходит для выбора цели атаки.
fh_get_nearest_players(origin, radius, ignorePlayer) SERVER
Возвращает таблицу игроков в радиусе. Используется Клоуном при ударе молотом.
fh_get_nearest_props(origin, radius) SERVER
Возвращает таблицу пропов в радиусе.
Управление списками аниматроников
killers.getAllSolos() SHARED
Аниматроники без вторичности. ⚠ Не проверяет играбельность.
killers.getAllPreferables(secondaries) SHARED
Все играбельные аниматроники. Если secondaries = true — включает и вторичных.
killers.getAllNonPreferables() SHARED
Все неиграбельные аниматроники.
killers.getAllSecondaries() SHARED
Все вторичные аниматроники.
killers.getAll() SHARED
Все зарегистрированные аниматроники.
pill_makePreferable(anim, bool) SHARED
Делает аниматроника играбельным или убирает из списка играбельных.
pill_makePreferable("pill_wfreddy2", true)pill_makeSecondary(anim, bool) SHARED
Добавляет/убирает аниматроника из списка вторичных.
pill_makeSecondary("pill_wbonnie2", true)