Блог школы Роблоппа — Роблокс Студио, обучение, познавательные статьи и новости школы

Скрипты для GUI в Роблокс Студио: таймер, здоровье, очки и деньги

Туториалы
GUI (Graphical User Interface) в Роблокс Студио — это элементы интерфейса, которые помогают игрокам взаимодействовать с игрой: кнопки, панели, текст, индикаторы. Сегодня мы рассмотрим простые скрипты для GUI, которые добавят в вашу игру таймер, счётчик здоровья, очки и деньги.

1. Таймер обратного отсчёта

Таймер можно использовать для мини-игр, гонок или испытаний.
Инструкция:

  • Перейди в StarterPlayer → StarterPlayerScripts.
  • Создай LocalScript.
  • Вставь код.
  • При запуске игры у игрока сверху на экране появится таймер.

local ScreenGui = Instance.new("ScreenGui", game.Players.LocalPlayer.PlayerGui)
local TimerLabel = Instance.new("TextLabel", ScreenGui)

TimerLabel.Size = UDim2.new(0, 200, 0, 50)
TimerLabel.Position = UDim2.new(0.5, -100, 0, 20)
TimerLabel.TextScaled = true

local timeLeft = 30 -- секунд
while timeLeft > 0 do
TimerLabel.Text = "Время: " .. timeLeft
wait(1)
timeLeft -= 1
end

TimerLabel.Text = "Время вышло!"

2. Отображение здоровья

Индикатор здоровья можно сделать с помощью TextLabel или прогресс-бара.
Инструкция:

  • Перейди в StarterPlayer → StarterPlayerScripts.
  • Создай LocalScript.
  • Вставь код.
  • Теперь игрок всегда будет видеть свой уровень здоровья.

local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")

local ScreenGui = Instance.new("ScreenGui", Player.PlayerGui)
local HealthLabel = Instance.new("TextLabel", ScreenGui)

HealthLabel.Size = UDim2.new(0, 200, 0, 50)
HealthLabel.Position = UDim2.new(0.5, -100, 0, 80)
HealthLabel.TextScaled = true

Humanoid.HealthChanged:Connect(function()
HealthLabel.Text = "Здоровье: " .. math.floor(Humanoid.Health)
end)

3. Счётчик очков

Пример для отображения очков, которые начисляются игроку.
Инструкция:

  • Перейди в StarterPlayer → StarterPlayerScripts.
  • Создай LocalScript.
  • Вставь код.
  • Очки будут появляться в интерфейсе и автоматически увеличиваться.

local Player = game.Players.LocalPlayer
local leaderstats = Instance.new("Folder", Player)
leaderstats.Name = "leaderstats"

local Points = Instance.new("IntValue", leaderstats)
Points.Name = "Очки"
Points.Value = 0

local ScreenGui = Instance.new("ScreenGui", Player.PlayerGui)
local PointsLabel = Instance.new("TextLabel", ScreenGui)

PointsLabel.Size = UDim2.new(0, 200, 0, 50)
PointsLabel.Position = UDim2.new(0.5, -100, 0, 140)
PointsLabel.TextScaled = true

Points:GetPropertyChangedSignal("Value"):Connect(function()
PointsLabel.Text = "Очки: " .. Points.Value
end)

-- пример начисления очков
while true do
wait(5)
Points.Value += 10
end

4. Деньги игрока

Игровая валюта часто нужна в симуляторах и RPG.
Инструкция:

  • Перейди в StarterPlayer → StarterPlayerScripts.
  • Создай LocalScript.
  • Вставь код.
  • Теперь игроки будут видеть количество монет в интерфейсе.

local Player = game.Players.LocalPlayer
local leaderstats = Player:FindFirstChild("leaderstats") or Instance.new("Folder", Player)
leaderstats.Name = "leaderstats"

local Coins = Instance.new("IntValue", leaderstats)
Coins.Name = "Монеты"
Coins.Value = 100

local ScreenGui = Instance.new("ScreenGui", Player.PlayerGui)
local CoinsLabel = Instance.new("TextLabel", ScreenGui)

CoinsLabel.Size = UDim2.new(0, 200, 0, 50)
CoinsLabel.Position = UDim2.new(0.5, -100, 0, 200)
CoinsLabel.TextScaled = true

Coins:GetPropertyChangedSignal("Value"):Connect(function()
CoinsLabel.Text = "Монеты: " .. Coins.Value
end)

-- пример начисления монет
while true do
wait(10)
Coins.Value += 5
end

Полезные ссылки

Итоги

С помощью GUI можно сделать игру в Роблокс Студио более удобной и интересной. Попробуйте реализовать таймер, индикатор здоровья, счётчик очков и денег — это базовые, но очень важные элементы.
Хотите научиться создавать полноценные интерфейсы и игры? 🚀
Записывайтесь на занятия в онлайн-школу Robloppa Studio!
Made on
Tilda