Menu
CoddyTech

Дверь с кнопкой

Часть раздела Скриптинг игр в Roblox путешествия по Lua на Coddy. Урок 20 из 24.

У красной кнопки, как и у лампы, есть ClickDetector. Изменение Position мгновенно перемещает деталь. Чтобы она скользила, используй TweenService: ты указываешь, где должна оказаться деталь и сколько времени займёт перемещение, а Roblox анимирует его.

local TweenService = game:GetService("TweenService")
local info = TweenInfo.new(2)
local goal = { Transparency = 1 }
local fade = TweenService:Create(workspace.Ghost, info, goal)
fade:Play()

TweenInfo.new(2) означает 2 секунды. Цель — это таблица с именами свойств и значениями, которые они должны получить в конце. Create создаёт анимацию, и ничего не движется, пока ты не вызовешь Play. Анимация может изменять числа, значения Vector3, например Position и Size, а также цвета Color3.

challenge icon

Задание

Средне

Деревянная дверь закрывает проём в стене, а красный блок — это кнопка с ClickDetector. Этот скрипт находится внутри двери.

Когда на кнопку нажмут, сдвинь дверь вверх на 10 студов за 1 секунду. info и goal уже готовы: создай анимацию и запусти её при MouseClick. Дверь не должна двигаться до нажатия.

Нажми Play, подойди к кнопке, нажми на неё и пройди через проём. Затем нажми Check.

Попробуйте сами

local TweenService = game:GetService("TweenService")
local door = script.Parent
local button = workspace.Button

local info = TweenInfo.new(1)
local goal = { Position = door.Position + Vector3.new(0, 10, 0) }

-- Создай анимацию двери с помощью info и goal

-- Запусти её, когда нажмут на ClickDetector кнопки
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Скриптинг игр в Roblox

Потренируйтесь самостоятельно: Онлайн-компилятор Lua