При создании игр в Роблокс Студио важно уметь проверять условия: например, «если игрок касается ловушки — нанести урон», или «если кнопка нажата — открыть дверь».
Для этого в языке Lua используются условные операторы — if, then, else, elseif и end.
Они позволяют программе принимать решения.
🧩 Что делает оператор if
Оператор if проверяет условие.
Если оно истинно (true) — выполняется код внутри блока.
Если ложно (false) — этот код пропускается.
Пример:
local health = 50
if health < 100 then
print("Игрок ранен!")
end💡 В Output появится сообщение «Игрок ранен!», потому что условие health < 100 — верно.
🔹 Добавляем else
Иногда нужно выполнить другое действие, если условие не выполнено.
Для этого используется else:
local health = 100
if health < 100 then
print("Игрок ранен!")
else
print("Игрок здоров!")
end🧠 Пояснение:
- Если health < 100, срабатывает первая строка.
- Если нет — выполняется то, что находится после else.
🔹 Несколько условий: elseif
Можно проверить несколько разных случаев подряд с помощью elseif.
local health = 70
if health <= 0 then
print("Игрок проиграл!")
elseif health < 100 then
print("Игрок ранен!")
else
print("Игрок здоров!")
end🔍 В этом примере программа проверяет все условия по порядку, пока не найдёт подходящее.
💡 Применение в Роблокс Студио
Вот несколько реальных примеров, где if-else используется в играх:
1️⃣ Проверка касания ловушки
script.Parent.Touched:Connect(function(hit)
local humanoid = hit.Parent:FindFirstChild("Humanoid")
if humanoid then
humanoid:TakeDamage(20)
print("Игрок получил урон!")
else
print("Касание не игроком")
end
end)✅ Если объект касается ловушки и у него есть Humanoid, скрипт наносит урон.
2️⃣ Проверка очков игрока
local points = 50
if points >= 100 then
print("Переход на следующий уровень!")
else
print("Нужно больше очков!")
end3️⃣ Проверка состояния кнопки
local button = script.Parent
local door = workspace.Door
button.ClickDetector.MouseClick:Connect(function()
if door.CanCollide == false then
door.CanCollide = true
door.Transparency = 0
else
door.CanCollide = false
door.Transparency = 0.5
end
end)💡 При каждом клике дверь открывается или закрывается — в зависимости от состояния.
📚 Итог
Операторы if, elseif и else — это основа логики в скриптах Роблокс Студио.
Они позволяют управлять поведением объектов, проверять состояния и создавать интерактивные события.
📦 Полезные ссылки
🚀 Хочешь научиться писать свои скрипты с нуля?
Запишись на обучение по Роблокс Студио на сайте roblo.ru
Ты узнаешь, как создавать игры, интерфейсы и программировать события — шаг за шагом!
