Скорость: ускорение, замедление, сброс
Три платформы управляют скоростью бега.
Блок FastPad ускоряет, SlowPad замедляет, NormalSpeedPad возвращает исходную скорость игрока.
1. Подготовьте объект
Где разместить: Script в ServerScriptService
Создайте в Workspace три Part с именами FastPad, SlowPad, NormalSpeedPad.
Включите Anchored у всех трёх.
В ServerScriptService вставьте обычный Script.
2. Вставьте код
local speeds = { FastPad = 36, SlowPad = 8 }
local busy = {}
local function change(name, speed)
workspace:WaitForChild(name).Touched:Connect(function(hit)
local character = hit:FindFirstAncestorOfClass("Model")
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or humanoid.Health <= 0 or busy[humanoid] then return end
busy[humanoid] = true
if humanoid:GetAttribute("IgroOriginalSpeed") == nil then
humanoid:SetAttribute("IgroOriginalSpeed", humanoid.WalkSpeed)
end
humanoid.WalkSpeed = speed or humanoid:GetAttribute("IgroOriginalSpeed")
task.delay(0.6, function() busy[humanoid] = nil end)
end)
end
for name, speed in pairs(speeds) do change(name, speed) end
change("NormalSpeedPad", nil)
3. Проверьте в игре
Нажмите Play в Roblox Studio и проверьте действие механики. Если механика не работает, откройте окно Output и проверьте тип скрипта, его расположение и названия объектов.
Когда проверите механику в Roblox Studio, отметьте практику как выполненную. Отметка хранится только в этом браузере, не в личном кабинете.
Добавляйте механики по одной и проверяйте окно Output. Не создавайте несколько одинаковых систем монет или интерфейсов; скрипты, меняющие WalkSpeed, прыжок или освещение, могут влиять друг на друга.
Поменяйте скорость на 50 и 5.
Добавьте цветовые обозначения на площадках.
Постройте гонку с зонами ускорения и замедления.
4. Проверьте себя
Для чего нужна площадка NormalSpeedPad?
Проверьте названия объектов в Explorer и сообщения в Output.