Привет, всем! 👋
Сегодня разберём, как добавить классную механику — анимацию ползания , чтобы игрок мог проползать под препятствиями ! Это отлично подойдёт для паркур-игр, скрытных способностей или просто интересной игровой механики. 💡
▶️ 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
