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

Дверь: открыть и закрыть по кнопке E

У двери появляется подсказка и управление.

Иллюстрация: Дверь: открыть и закрыть по кнопке E
🎯 Что получится

Первое нажатие открывает дверь, следующее закрывает её.

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

Где разместить: Script внутри Part Door

Создайте Part с именем Door и установите Anchored = true.
Добавьте в Door объект ProximityPrompt и обычный Script.
Вставьте код, подойдите к двери и нажмите E.

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

Script
local door = script.Parent
local prompt = door:WaitForChild("ProximityPrompt")
local TweenService = game:GetService("TweenService")
local closed = door.CFrame
local opened = closed * CFrame.new(0, door.Size.Y + 1, 0)
local open = false
local moving = false
prompt.ActionText = "Открыть"
prompt.ObjectText = "Дверь"
prompt.Triggered:Connect(function(player)
    if moving then return end
    moving = true
    open = not open
    prompt.Enabled = false
    local tween = TweenService:Create(door, TweenInfo.new(1), {CFrame = open and opened or closed})
    tween:Play()
    tween.Completed:Wait()
    prompt.ActionText = open and "Закрыть" or "Открыть"
    prompt.Enabled = true
    moving = false
end)

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

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

Ваш прогресс

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

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

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

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

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

2. Улучшите

Добавьте звук или цветной индикатор над дверью.

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

Постройте секретный вход в базу.

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

Как игрок управляет дверью в этом уроке?

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

Проверьте названия объектов в Explorer и сообщения в Output.