Урок Roblox StudioЗанятие 2 / 8

Кнопка-переключатель

Переключать состояние объекта

Кнопка-переключатель
Иллюстрация к теме занятия

Цель урока

По нажатию мышью меняй цвет и материал лампы.

Подготовка в Explorer

Part Switch → ClickDetector → Script; Part Lamp в Workspace

Пошаговая практика

  1. Создай объекты, соблюдая имена из схемы подготовки.
  2. Добавь обычный Script в указанный объект и вставь код.
  3. Нажми Play, открой Output и проверь поведение в одиночной игре.
  4. Проверь повторное взаимодействие и исправь ошибки в именах или структуре.

Пример Luau

local switch = script.Parent
local detector = switch:WaitForChild("ClickDetector")
local lamp = workspace:WaitForChild("Lamp")
local enabled = false

detector.MouseClick:Connect(function(player)
    enabled = not enabled
    lamp.Color = enabled and Color3.fromRGB(255, 235, 80) or Color3.fromRGB(65, 75, 90)
    lamp.Material = enabled and Enum.Material.Neon or Enum.Material.Plastic
end)

Что должно получиться

Нажатие на Switch включает и выключает Lamp для всех игроков.

Если не работает

ClickDetector ожидает щелчка мышью; если его нет в Switch, событие не запустится.

Задание со звёздочкой

Сделай вторую лампу, включающуюся одновременно с первой.

Покажи преподавателю

Продемонстрируй механику в Play, объясни, какая часть кода запускает действие, и покажи Output без ошибок.

Материал перед публикацией нуждается в проверке в Roblox Studio и учебных скриншотах.

Проверь свою работу

Перед тестом убедись, что ты выполнил практику самостоятельно.

Эти отметки — личная памятка, они не влияют на звёзды.

Проверь себя

Ответь на вопросы урока. Успешный тест даёт одну звезду в личном кабинете.

⭐ Проверь свои знания

5 вопросов по теме урока. За 4 правильных ответа получишь звезду. Повторные попытки разрешены.

1. Какое событие подходит для нажатия физической кнопки с ProximityPrompt?
2. Какой тип данных удобен для состояния света вкл/выкл?
3. Как переключить состояние isOn?
4. Если лампа должна менять яркость всем игрокам, где менять PointLight.Enabled?
5. Что защитит от слишком частых нажатий?