Roblox · Анимации

Своя анимация прыжка и падения

Как со своим бегом, только для прыжка и падения: сервер подменяет их у каждого персонажа в стандартном Animate.

Структура

Синим — что нужно создать.

ServerScriptService
└─ JumpFallAnimation (Script)

Шаги

  1. Сделать анимацию: Avatar → Rig Builder → R15 (или R6 — как у персонажей в игре: Game Settings → Avatar). Выдели риг → Avatar → Animation Editor → имя анимации → Create.
  2. Прыжок — короткая (0,3–0,5 с), без Loop; падение — с Loop (играет, пока летишь вниз). Приоритет Movement.
  3. Готово — «⋯» → Publish to Roblox → Submit → скопируй ID. Публикуй с того же аккаунта (или группы), что и игру: чужая анимация в твоей игре не проиграется.
  4. ServerScriptService → Script «JumpFallAnimation», в первые строки — ID прыжка и падения.
  5. Стандартные для сравнения: прыжок 507765000, падение 507767968.

Скрипты

JumpFallAnimation

Где: ServerScriptService · Script
Зачем: Подменяет анимации прыжка и падения.

-- твоя анимация прыжка — вставь ID вместо 0
local JUMP_ID = "rbxassetid://0"
-- твоя анимация падения
local FALL_ID = "rbxassetid://0"

-- заменить одну анимацию в Animate
local function SetAnimation(animate, name, id)
    -- папка jump или fall внутри Animate
    local folder = animate:WaitForChild(name, 5)
    -- нет — пропускаем
    if not folder then return end
    -- анимация в папке
    local anim = folder:FindFirstChildOfClass("Animation")
    -- есть и ID вписан
    if anim and id ~= "rbxassetid://0" then
        -- меняем — Animate сразу подхватит
        anim.AnimationId = id
    -- конец проверки
    end
-- конец функции
end

-- игрок зашёл
game.Players.PlayerAdded:Connect(function(player)
    -- каждый его персонаж
    player.CharacterAdded:Connect(function(character)
        -- стандартный скрипт анимаций
        local animate = character:WaitForChild("Animate")
        -- прыжок
        SetAnimation(animate, "jump", JUMP_ID)
        -- падение
        SetAnimation(animate, "fall", FALL_ID)
    -- конец обработчика
    end)
-- конец обработчика
end)

Проверка

Запусти Play (или Run) и убедись:

Собрать скрипт одной командой