В Roblox Studio можно добавлять источники света, такие как SpotLight, PointLight и SurfaceLight, чтобы сделать игру атмосферной. Управлять светом можно через скрипт — например, чтобы он включался при входе в комнату или по нажатию на кнопку.
В этом уроке ты узнаешь, как с помощью Lua-скрипта включать и выключать свет.
Что нужно подготовить:
- Создай Part (например, лампу или фонарь).
- Внутри этого Part добавь объект PointLight или SpotLight:
- Правый клик по Part → Insert Object → PointLight.
- Убедись, что Enabled у света включён (true) — скрипт будет его менять.
Как управлять светом с помощью скрипта
Пример: включение и выключение света при нажатии на кнопку
- Добавь ClickDetector в тот же Part (лампу).
- В этот Part вставь Script и добавь код:
local light = script.Parent:FindFirstChildOfClass("PointLight") or script.Parent:FindFirstChildOfClass("SpotLight")
local clickDetector = script.Parent:FindFirstChild("ClickDetector")
clickDetector.MouseClick:Connect(function()
if light then
light.Enabled = not light.Enabled
end
end)
local clickDetector = script.Parent:FindFirstChild("ClickDetector")
clickDetector.MouseClick:Connect(function()
if light then
light.Enabled = not light.Enabled
end
end)
Как это работает?
FindFirstChildOfClass ищет источник света внутри объекта.
ClickDetector.MouseClick запускает событие, когда игрок кликает по объекту.
light.Enabled = not light.Enabled — переключает состояние света (вкл/выкл).
ClickDetector.MouseClick запускает событие, когда игрок кликает по объекту.
light.Enabled = not light.Enabled — переключает состояние света (вкл/выкл).
Идеи для использования:
- Свет в тёмной комнате, который можно включить.
- Фонарик, который загорается, если взять в руку.
- Автоматическое включение света при приближении игрока (с Touched).