Цель урока
Разделить фазы ожидания, раунда и завершения; изучить серверные атрибуты.
Подготовка
ServerScriptService → Script RoundStates. В этом уроке не включай другие скрипты управления раундами.
Пошаговая работа
- Создай Script RoundStates в ServerScriptService.
- Запусти Play; открой Output и проверь порядок смены фаз.
- Измени длительность раунда и повтори тест.
Код Luau
В примерах с двумя скриптами помести части кода в указанные разные объекты.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local state = Instance.new("StringValue")
state.Name = "RoundState"
state.Value = "Waiting"
state.Parent = ReplicatedStorage
while true do
state.Value = "Waiting"
task.wait(10)
state.Value = "Running"
task.wait(60)
state.Value = "Finished"
task.wait(5)
endПроверяем результат
Состояние последовательно меняется Waiting → Running → Finished; объект RoundState доступен клиенту.
Типичная ошибка
Не создавай несколько скриптов RoundStates: они начнут конкурировать за одно значение.
Дополнительное задание
Выведи текущую фазу в TextLabel через LocalScript, отслеживая Changed.
Перед публикацией: протестируй код в Roblox Studio с двумя игроками и добавь собственные скриншоты редактора.
