Таймер раунда на экране
Покажите всем игрокам общий таймер в простом интерфейсе.
Игроки видят одинаковый таймер: 15 секунд ожидания и 60 секунд раунда. Интерфейс создаётся автоматически для новых игроков.
1. Подготовьте объект
Где разместить: Обычный Script в ServerScriptService
Создайте обычный Script в ServerScriptService и вставьте код. Ничего дополнительно в StarterGui создавать не надо.
Нажмите Play. В верхней части экрана появится таймер.
Для проверки с двумя игроками используйте вкладку Test → Start (2 Players).
2. Вставьте код
local Players = game:GetService("Players")
local WAIT_TIME, ROUND_TIME = 15, 60
local currentText = "Подготовка..."
local labels = {}
local function makeGui(player)
local gui = Instance.new("ScreenGui")
gui.Name = "IgroRoundTimer"
gui.ResetOnSpawn = false
local label = Instance.new("TextLabel")
label.Size = UDim2.fromOffset(320, 52)
label.Position = UDim2.new(0.5, -160, 0, 20)
label.BackgroundColor3 = Color3.fromRGB(25, 30, 58)
label.BackgroundTransparency = 0.1
label.TextColor3 = Color3.new(1, 1, 1)
label.TextScaled = true
label.Font = Enum.Font.GothamBold
label.Text = currentText
label.Parent = gui
gui.Parent = player:WaitForChild("PlayerGui")
labels[player] = label
end
Players.PlayerAdded:Connect(makeGui)
Players.PlayerRemoving:Connect(function(player) labels[player] = nil end)
local function display(text)
currentText = text
for player, label in pairs(labels) do
if label.Parent then label.Text = text end
end
end
while true do
for t = WAIT_TIME, 0, -1 do
display("Начало через: " .. t .. " с")
task.wait(1)
end
for t = ROUND_TIME, 0, -1 do
display("Раунд: " .. t .. " с")
task.wait(1)
end
display("Раунд завершён!")
task.wait(3)
end
3. Проверьте в игре
Нажмите Play в Roblox Studio и проверьте действие механики. Если механика не работает, откройте окно Output и проверьте тип скрипта, его расположение и названия объектов.
Когда проверите механику в Roblox Studio, отметьте практику как выполненную. Отметка хранится только в этом браузере, не в личном кабинете.
Добавляйте механики по одной и проверяйте окно Output. Не создавайте несколько одинаковых систем монет или интерфейсов; скрипты, меняющие WalkSpeed, прыжок или освещение, могут влиять друг на друга.
Измените WAIT_TIME на 10 секунд.
Измените цвет фона TextLabel и расположение таймера.
Соедините таймер с поднимающейся лавой и придумайте правила победы.
4. Проверьте себя
Зачем таймеру передавать обновления на экран игрока?
Это демонстрационный таймер: он показывает время, но сам не телепортирует игроков и не определяет победителя. Удалите другие тестовые таймеры, если интерфейс дублируется.