Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите сделать скрипт чтобы раз в 3 секунды можно было делать подкат с анимацией в роблокс студио

сааш завьялов Знаток (252), открыт 17 часов назад
3 ответа
lol 3425 Ученик (151) 17 часов назад
нет
сааш завьяловЗнаток (252) 17 часов назад
спс
FitokПрофи (769) 17 часов назад
Подтверждаю нет
сааш завьяловЗнаток (252) 17 часов назад
да почему
Егор Виленский Гуру (2621) 17 часов назад
Ниже приведён пример скрипта для роблокс-студии, который даёт возможность выполнять подкат с анимацией с кулдауном в 3 секунды (то есть, игрок сможет выполнять слайд, если с момента предыдущего прошло ≥ 3 секунд). Скрипт запускается в локальном скрипте (LocalScript) и подсоединяется к персонажу. Не забудьте заменить `INSERT_ANIMATION_ID_HERE` на реальный ID вашей анимации.

```lua
local Players = game:GetService("Players")
local ContextActionService = game:GetService("ContextActionService")
local player = Players.LocalPlayer

-- Функция, которая вызывается, когда персонаж игрока появляется или перерождается
local function onCharacterAdded(character)
local humanoid = character:WaitForChild("Humanoid")

-- Создание объекта анимации и загрузка её в Humanoid
local slideAnimation = Instance.new ("Animation")
slideAnimation.AnimationId = "rbxassetid://INSERT_ANIMATION_ID_HERE"
local slideTrack = humanoid:LoadAnimation(slideAnimation)

local canSlide = true
local cooldown = 3 -- кулдаун в секундах

-- Функция обработки действия слайда, например по нажатию клавиши F
local function doSlide(actionName, inputState, inputObject)
if inputState == Enum.UserInputState.Begin and canSlide then
canSlide = false
slideTrack:Play()
-- Здесь можно добавить дополнительную логику для слайда (перемещение персонажа и т.д.)
wait(cooldown)
canSlide = true
end
end

-- Привязываем действие к клавише F. При желании можно заменить на другую.
ContextActionService:BindAction("SlideAction", doSlide, false, Enum.KeyCode.F)
end

player.CharacterAdded:Connect(onCharacterAdded)
if player.Character then
onCharacterAdded(player.Character)
end
```

**Объяснение:**

- Скрипт ждёт появления персонажа игрока, получает его `Humanoid`, создаёт экземпляр анимации и загружает её.
- При нажатии клавиши F проверяется, прошёл ли кулдаун (переменная `canSlide`). Если да, то запускается анимация для подката.
- После запуска анимации скрипт ждёт 3 секунды, прежде чем игрок сможет снова инициировать подкат.

Если вы хотите, чтобы слайд выполнялся автоматически каждые 3 секунды без участия игрока, можно использовать бесконечный цикл, но обычно для таких механик удобнее давать игроку контроль над моментом запуска.
сааш завьяловЗнаток (252) 17 часов назад
спасибо огромное
Похожие вопросы