← Все практические скрипты
Двери и переключатели · Начинающий · 25 мин

Кнопка открывает дверь на 5 секунд

Кнопка E открывает дверь, затем дверь сама закрывается.

Иллюстрация: Кнопка открывает дверь на 5 секунд
🎯 Что получится

Кнопка открывает проход для всех игроков на пять секунд.

1. Подготовьте объект

Где разместить: Соберите объекты по схеме Explorer ниже.

Структура в Explorer
Workspace
  DoorButton (Part)
    DoorButtonScript (Script)
  TimedDoor (Part)
  1. Создайте Anchored Part DoorButton и TimedDoor.
  2. Поместите Script в DoorButton.
  3. Подойдите к кнопке и нажмите E.

2. Вставьте код

Script
local button = script.Parent
local door = workspace:WaitForChild("TimedDoor")
local prompt = button:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.ActionText = "Открыть"
prompt.ObjectText = "Временная дверь"
prompt.Parent = button
local busy = false
local originalTransparency = door.Transparency

prompt.Triggered:Connect(function()
    if busy then return end
    busy = true
    prompt.Enabled = false
    door.CanCollide = false
    door.Transparency = 0.8
    task.wait(5)
    door.CanCollide = true
    door.Transparency = originalTransparency
    prompt.Enabled = true
    busy = false
end)

3. Проверьте в игре

Нажмите Play в Roblox Studio и проверьте действие механики. Если механика не работает, откройте окно Output и проверьте тип скрипта, его расположение и названия объектов.

Ваш прогресс

Когда проверите механику в Roblox Studio, отметьте практику как выполненную. Отметка хранится только в этом браузере, не в личном кабинете.

Если объединяете несколько скриптов

Добавляйте механики по одной и проверяйте окно Output. Не создавайте несколько одинаковых систем монет или интерфейсов; скрипты, меняющие WalkSpeed, прыжок или освещение, могут влиять друг на друга.

⭐ Три шага к собственной игре
1. Повторите и измените

Поменяйте ожидание на 10 секунд.

2. Улучшите

Добавьте цветовой сигнал, пока дверь открыта.

3. Придумайте своё

Создайте командную головоломку с двумя временными дверями.

4. Проверьте себя

Зачем нужен флаг busy?

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

Убедитесь, что у TimedDoor Anchored=true и она не управляется другим скриптом.