【问题标题】:Why do my Animations on Roblox Studio not work?为什么我在 Roblox Studio 上的动画不起作用?
【发布时间】:2023-02-18 22:04:49
【问题描述】:

我的 Roblox 战斗系统有问题。问题是我的动画在播放时不播放。以下是脚本:

客户端脚本

local player = game.Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local UserInputService = game:GetService("UserInputService")

local Debounce = 0.5
local Keybind = Enum.KeyCode.F
local CanPunch = true

local count = 1
local Animations = 
    {
        script:WaitForChild("PunchAnim"),
        script:WaitForChild("PunchAnim2")
    }

UserInputService.InputBegan:Connect(function(Input, busy)
    if Input.KeyCode == Keybind and not busy then
        print("Keybind Check")
        if CanPunch == true then
            print("CanPunch Check")
            CanPunch = false
            
            local Anim = char.Humanoid.Animator:LoadAnimation(Animations[count])
            Anim:Play()
            Anim.Looped = false
            count = (count%#Animations) + 1
            print("Anim Played")
            
            game.ReplicatedStorage.remotes.Punch:FireServer(player, char)
            print("Fired Event")
            
            wait(Debounce)
            CanPunch = true
        end
    end
    
end)

服务器脚本

game.Players.PlayerAdded:Connect(function(player)
    player.CharacterAdded:Connect(function(char)
        
        hitbox = Instance.new("Part", workspace)
        hitbox.Size = Vector3.new(4,4,4)
        hitbox.CanCollide = false
        hitbox.Transparency = 1

        local weld = Instance.new("Weld", hitbox)
        weld.Part0 = char.HumanoidRootPart
        weld.Part1 = hitbox
        weld.C1 = CFrame.new(0,0,4)
    end)
        
end)

game.ReplicatedStorage.remotes.Punch.OnServerEvent:Connect(function(player, char)
    
    for i, v in pairs(workspace:GetPartsInPart(hitbox)) do
        if v.Parent:FindFirstChild("Humanoid") and v.Parent ~= char and v.Parent:FindFirstChild("Hit"..player.Name) == nil then
            
            local Debounce = Instance.new("IntValue", v.Parent)
            Debounce.Name = "Hit"..player.Name
            game.Debris:AddItem(Debounce, 0.25)
            
            v.Parent:FindFirstChild("Humanoid"):TakeDamage(7.5)
        end
    end
    
    
end)

在脚本中,我告诉动画在按下 F 后播放,但是当我在游戏中按下它时,它不播放动画。

我通过观看各种教程制作了这个脚本来制作我自己的战斗系统。我尝试通过重新观看教程和阅读 roblox 文档来修复代码以找到解决方案,但我找不到。 我是 Lua 的新手,如果这是一个非常简单和基本的问题,我会提前道歉,但感谢所有帮助。另外,请指出我脚本中的任何其他错误。谢谢。

如果你看到这个问题,请尽可能回答。

【问题讨论】:

    标签: lua roblox roblox-studio


    【解决方案1】:

    我的问题的答案是,动画是 R6,但我的角色是 R15。我去更改了游戏设置,使游戏只支持 R6。

    【讨论】:

      猜你喜欢
      • 2021-11-24
      • 1970-01-01
      • 2017-08-29
      • 1970-01-01
      • 2013-03-29
      • 2019-07-09
      • 1970-01-01
      • 2023-03-12
      相关资源
      最近更新 更多