Ускорение при касании
Сделайте блок, который ускоряет персонажа на несколько секунд.
Персонаж ускорится на 5 секунд, затем вернётся к своей прежней скорости.
1. Подготовьте объект
Где разместить: Script внутри Part (блока ускорения)
Создайте Part SpeedPad и установите Anchored = true, CanTouch = true. Добавьте внутрь обычный Script и вставьте код.
В Play коснитесь платформы: скорость временно станет 32, затем вернётся к предыдущему значению.
Важно: это учебный локальный эффект на Humanoid. Если объединяете несколько ускорений, спринт и замедление, сделайте единый контроллер скорости, иначе эффекты могут перекрывать друг друга.
2. Вставьте код
-- Script внутри SpeedPad (Part)
local pad = script.Parent
local BOOST_SPEED = 32
local DURATION = 5
local active = {}
pad.Touched:Connect(function(hit)
local character = hit:FindFirstAncestorOfClass("Model")
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or humanoid.Health <= 0 or active[humanoid] then return end
active[humanoid] = true
local previous = humanoid.WalkSpeed
humanoid.WalkSpeed = BOOST_SPEED
task.delay(DURATION, function()
-- Не отменяем скорость, которую уже установила другая механика.
if humanoid.Parent and math.abs(humanoid.WalkSpeed - BOOST_SPEED) < 0.01 then
humanoid.WalkSpeed = previous
end
active[humanoid] = nil
end)
end)3. Проверьте в игре
Нажмите Play в Roblox Studio и проверьте действие механики. Если механика не работает, откройте окно Output и проверьте тип скрипта, его расположение и названия объектов.
Когда проверите механику в Roblox Studio, отметьте практику как выполненную. Отметка хранится только в этом браузере, не в личном кабинете.
Добавляйте механики по одной и проверяйте окно Output. Не создавайте несколько одинаковых систем монет или интерфейсов; скрипты, меняющие WalkSpeed, прыжок или освещение, могут влиять друг на друга.
Измените BOOST_SPEED с 32 на 50 и DURATION с 5 на 10.
Измените внешний вид игрового объекта и добавьте рядом второй экземпляр с другими настройками.
Придумайте мини-уровень, в котором эта механика помогает игроку достичь цели.
4. Проверьте себя
Какое свойство Humanoid меняет скорость ходьбы персонажа?
Проверьте CanTouch у платформы, обычный Script внутри Part и наличие Humanoid у персонажа. Если скорость не восстанавливается, другой скрипт мог изменить WalkSpeed во время ускорения — это ожидаемая защита от перезаписи чужого эффекта.