← Все вопросы
Как двигать деталь в Roblox циклом — меняю Position, но она не движется?
6
Хочу, чтобы платформа ездила туда-сюда. Поставил цикл, в нём меняю Position, но деталь либо стоит на месте, либо игра зависает. Что я делаю не так?
2 ответа
9
✓ Принятый ответ — помог автору
Две классические ошибки: либо деталь не Anchored (и падает), либо в цикле нет паузы.
Вот рабочий вариант — платформа едет вверх-вниз:
local platform = workspace.Platform
platform.Anchored = true
while true do
platform.Position = platform.Position + Vector3.new(0, 0.2, 0)
task.wait(0.05) -- ОБЯЗАТЕЛЬНО пауза!
end
Главное — task.wait(0.05) внутри цикла. Без паузы while true do крутится миллионы раз в секунду, не давая игре нарисовать кадр — отсюда зависание. Пауза отдаёт управление обратно движку.
4
Чтобы платформа ездила туда-обратно, а не улетала в космос, добавь проверку границ:
local dir = 0.2
while true do
local y = platform.Position.Y
if y > 20 or y < 5 then dir = -dir end
platform.Position = platform.Position + Vector3.new(0, dir, 0)
task.wait(0.05)
end
Ваш ответ
Войдите, чтобы ответить на вопрос.