从 Roblox 教程中得到的 Punch 动画出现错误
我正在试图从教程中获取 Punch 动画,但是每当我按下指定的绑定键时它从未起作用。
我已经尝试将教程中的值从 1 更改为动画长度,甚至是超过动画长度和随机数字。我还尝试更改了脚本的一些措辞。
math.randomseed(tick())
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local punchEvent = Instance.new("RemoteEvent", ReplicatedStorage)
punchEvent.Name = "PunchEvent"
local animation = (03910055905)
local function onPunchFired(plr)
local char = game.Workspace:FindFirstChild(plr.Name)
local humanoid = char.Humanoid
local animation = Instance.new("Animation")
animation.AnimationId = "http://roblox.com/asset/?id="..animations[math.random(1, #animations)]
local animTrack = humanoid:LoadAnimation(animation)
animTrack:Play()
end
punchEvent.OnServerEvent:Connect(onPunchFired)
我期望脚本能够平稳运行并且打出拳,但是它显示了以下内容:
20:46:29.496 - ServerScriptService.ExtremePunch:13: attempt to get length of global 'animations' (a nil value)
这是它在错误输出中显示的所有内容。我已经再次检查了复制,但它仍然失败了。我该如何解决?
`animations` 列表在你给我们展示的代码中并不存在。因此,将你的其他拳击动画添加到我添加的 `animations` 列表中,你就可以开始使用了。我没有测试过,如果有问题请和我联系。
local replicatedStorage = game:GetService("ReplicatedStorage") local punchEvent = Instance.new("RemoteEvent") punchEvent.Name = "PunchEvent" punchEvent.Parent = replicatedStorage
local animations = [03910055905, ...]
local function onPunchFired(plr) local char = game.Workspace:FindFirstChild(plr.Name) local humanoid = char.Humanoid local animation = Instance.new("Animation") animation.AnimationId = "rbxassetid://" .. tostring(animations[math.random(1, #animations)])
local animTrack = humanoid:LoadAnimation(animation)
animTrack:Play()
end
punchEvent.OnServerEvent:Connect(onPunchFired) ```
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

你的错误指向了这一行:
animation.AnimationId = "http://roblox.com/asset/?id="..animations[math.random(1, #animations)]这是因为在这个脚本的范围内,没有名为
animations的本地变量或数组。要修复你的代码,你只需要修正
animation.AnimationId的网址中的数字。你可能遇到的一个问题是,你有两个名为animation的变量,因此它在正确构建网址时失败了。local ReplicatedStorage = game:GetService("ReplicatedStorage") local punchEvent = Instance.new("RemoteEvent", ReplicatedStorage) punchEvent.Name = "PunchEvent" local function onPunchFired(plr) local char = game.Workspace:FindFirstChild(plr.Name) local humanoid = char.Humanoid local animation = Instance.new("Animation") animation.AnimationId = "rbxassetid://3910055905" local animTrack = humanoid:LoadAnimation(animation) animTrack:Play() end punchEvent.OnServerEvent:Connect(onPunchFired)如果你不确定你的资产id是否正确,你也可以将其放入Roblox目录的网址中进行检查:https://www.roblox.com/catalog/YOUR_ASSET_ID_NUMBER。如果它重定向到你的动画,你就知道你选对了。