Раунды
Система раундов — ядро Fazbear's Hunt. С обновлением 3.0.0 создание собственных типов раундов стало значительно проще.
Регистрация типа раунда
fh.RegisterRoundType(name, id, func, [weight], [minPlayers], [maxPlayers]) SERVER
Регистрирует новый тип раунда. Возвращает ID и Техническое имя раунда.
Параметры:
| Имя | Тип | Описание |
|---|---|---|
name | string | Техническое имя раунда на английском |
id | int / string | ID раунда. Если строка — автоматически конвертируется в число |
func | function | Функция, выполняемая при начале раунда |
weight | int (опц.) | Шанс выпадения (0–100) |
minPlayers | int (опц.) | Минимальное число игроков |
maxPlayers | int (опц.) | Максимальное число игроков |
Пример:
local id, name = fh.RegisterRoundType("springtrap_madness", "spring_mad", function()
-- Раздаём всем по Спрингтрапу!
for _, ply in player.Iterator() do
giveKiller(ply, "pill_springtrap", true)
end
end, 5, 4, 16) -- 5% шанс, 4–16 игроков
print(id, name) -- 43700 springtrap_madnessУправление раундами
fh.SetRoundTypeBlocked(id, block) SERVER
Блокирует раунд по ID, и не даёт игре его выбрать.
-- Блокируем раунд со Спрингтрапом
fh.SetRoundTypeBlocked(1, true)Получение информации о раундах
fh.SetRoundType(number) SERVER
Устанавливает тип раунда. Режим вызывает это сам в начале раунда.
Аккуратно
Используйте только если точно знаете, что делаете.
fh.GetRoundType() SERVER
Возвращает текущий тип раунда.
| Значение | Тип раунда |
|---|---|
0 | Обычный |
1 | Со Спрингтрапом |
2 | Бонни-Тег |
3 | Раунд-Заражение с Bear5 |
fh.GetRoundTypes() SERVER
Возвращает таблицу со всеми ID зарегистрированных раундов.
local all = fh.GetRoundTypes()
PrintTable(all)fh.GetRoundTypeByName(name) SERVER
Возвращает ID раунда по его техническому имени.
local id = fh.GetRoundTypeByName("springtrap_madness")
print(id) -- 12345 (например)fh.GetRoundTypeNameByNumber(id) SERVER
Обратная функция — возвращает имя по ID.
local name = fh.GetRoundTypeNameByNumber(1)
print(name) -- "springtrap"Музыка раунда
fh.AddRoundMusic(num, music) SERVER
Добавляет музыкальную тему для начала конкретного типа раунда.
Замена недоступна
Заменить уже зарегистрированную музыку нельзя.
fh.AddRoundMusic(
fh.GetRoundTypeByName("springtrap_madness"),
"music/my_addon/madness_theme.mp3"
)fh.GetRoundMusic(num) SERVER
Возвращает путь к музыке начала раунда. Если для указанного типа музыка не найдена — возвращается музыка обычного раунда.
Связанные хуки
fh_prestartgame— перед выбором раундаfh_startgame— после выбора раундаfh_poststartgame— после разморозки аниматрониковfh_postendgame— после окончания раунда
См. также: Хуки раунда →
