Найти в Дзене
IT Step by step

🐍 Как научить персонажа проползать под блоками в Roblox

🐍 Как научить персонажа проползать под блоками в Roblox? Привет, всем! 👋 Сегодня разберём, как добавить классную механику — анимацию ползания , чтобы игрок мог проползать под препятствиями ! Это отлично подойдёт для паркур-игр, скрытных способностей или просто интересной игровой механики. 💡 ▶️ YouTube: Ссылка на видео 📺 Rutube: Ссылка на видео 🔧 Что делает этот код? Этот скрипт: ✨Запускает анимацию при нажатии клавиши (например, F), ✨Отключает коллизию у персонажа, чтобы он мог "проскользнуть" под объектом, ✨После окончания анимации всё возвращается в исходное состояние. 💻 Код с пояснениями: -- Получаем персонажа игрока local char = game.Players.LocalPlayer.Character -- Получаем компонент Humanoid для работы с анимациями local human = game.Players.LocalPlayer.Character.Humanoid -- Сервис ввода — отслеживает нажатия клавиш local uis = game:GetService("UserInputService") -- ID анимации (ее можно заменить на свою) local animation_ID = "rbxassetid://133965842091574" -- Защи

🐍 Как научить персонажа проползать под блоками в Roblox?

Привет, всем! 👋

Сегодня разберём, как добавить классную механику — анимацию ползания , чтобы игрок мог проползать под препятствиями ! Это отлично подойдёт для паркур-игр, скрытных способностей или просто интересной игровой механики. 💡

▶️ YouTube: Ссылка на видео

📺 Rutube: Ссылка на видео

🔧 Что делает этот код?

Этот скрипт:

✨Запускает анимацию при нажатии клавиши (например, F),

✨Отключает коллизию у персонажа, чтобы он мог "проскользнуть" под объектом,

✨После окончания анимации всё возвращается в исходное состояние.

💻 Код с пояснениями:

-- Получаем персонажа игрока

local char = game.Players.LocalPlayer.Character

-- Получаем компонент Humanoid для работы с анимациями

local human = game.Players.LocalPlayer.Character.Humanoid

-- Сервис ввода — отслеживает нажатия клавиш

local uis = game:GetService("UserInputService")

-- ID анимации (ее можно заменить на свою)

local animation_ID = "rbxassetid://133965842091574"

-- Защита от повторного запуска анимации

local debounce = true

-- Клавиша активации анимации

local key = "F"

-- Подписываемся на событие начала ввода

uis.InputBegan:Connect(function(Input, IsTyping)

-- Если пользователь печатает в чате — выходим из функции

if IsTyping then return end

-- Проверяем, была ли нажата нужная клавиша и можно ли запустить анимацию

if Input.KeyCode == Enum.KeyCode[key] and debounce == true then

-- Блокируем повторный запуск

debounce = false

-- Отключаем взаимодействие с физикой, чтобы персонаж мог проползти под блоком

char.HumanoidRootPart.CanCollide = false

-- Создаём временный объект анимации

local animation = Instance.new("Animation")

animation.AnimationId = animation_ID -- Привязываем нашу анимацию

-- Загружаем и запускаем анимацию

local loadanimation = human:LoadAnimation(animation)

loadanimation:Play()

-- Ждём 2 секунды — это примерное время длительности анимации

wait(2)

-- Включаем обратно взаимодействие с миром

char.HumanoidRootPart.CanCollide = true

-- Удаляем временную анимацию, чтобы не засорять память

animation:Destroy()

-- Разрешаем снова запускать анимацию

debounce = true

end

end)

📌 Как использовать?

✨Вставь этот код в LocalScript внутри StarterPlayerScripts.

✨Убедись, что ты используешь LocalScript, потому что здесь используется LocalPlayer.

✨Можешь изменить key на любую другую кнопку.

✨Нажми F в игре и наслаждайся эффектом!

💬 Давайте вместе создавать крутые проекты!

Если у тебя уже есть идеи, как использовать эту механику — пиши в комментариях!

Хочешь, чтобы я разобрала ещё какие-то анимации или механики? Пиши — будем делать новые игры!👇

#Roblox #GameDev #Lua