Падающая платформа с восстановлением
Платформа падает через секунду после касания и возвращается на место.
Платформа сначала держит игрока, затем падает и через несколько секунд восстанавливается.
1. Подготовьте объект
Где разместить: Соберите объекты по схеме Explorer ниже.
Workspace
FallingPlatform (Part)
PlatformScript (Script)- Создайте высоко над полом Anchored Part и назовите FallingPlatform.
- Поместите внутрь обычный Script.
- Нажмите Play и наступите на платформу.
2. Вставьте код
local Players = game:GetService("Players")
local platform = script.Parent
local startCFrame = platform.CFrame
local DROP_DELAY = 1
local RESET_DELAY = 3
local busy = false
platform.Anchored = true
platform.Touched:Connect(function(hit)
if busy then return end
local character = hit:FindFirstAncestorOfClass("Model")
local player = character and Players:GetPlayerFromCharacter(character)
if not player then return end
busy = true
task.wait(DROP_DELAY)
platform.Anchored = false
task.wait(RESET_DELAY)
platform.Anchored = true
platform.AssemblyLinearVelocity = Vector3.zero
platform.AssemblyAngularVelocity = Vector3.zero
platform.CFrame = startCFrame
busy = false
end)3. Проверьте в игре
Нажмите Play в Roblox Studio и проверьте действие механики. Если механика не работает, откройте окно Output и проверьте тип скрипта, его расположение и названия объектов.
Когда проверите механику в Roblox Studio, отметьте практику как выполненную. Отметка хранится только в этом браузере, не в личном кабинете.
Добавляйте механики по одной и проверяйте окно Output. Не создавайте несколько одинаковых систем монет или интерфейсов; скрипты, меняющие WalkSpeed, прыжок или освещение, могут влиять друг на друга.
Увеличьте DROP_DELAY до 2 секунд.
Поставьте пять падающих платформ подряд.
Придумайте Obby, где платформы падают всё быстрее.
4. Проверьте себя
Как вернуть упавшую платформу в исходное место?
У платформы должно быть свободное место для падения. Не ставьте на неё жёсткие WeldConstraint к неподвижным объектам.