Roblox Studio - 工作区.(我在roblox里的昵称).Name:8:尝试使用'DisplayName'索引空值
2020-8-23 13:59:45
收藏:0
阅读:122
评论:1
所以我正试图从列表中选择一个名称,并将玩家的DisplayName设置为该名称。 这是一个位于starterCharacterScripts中的LocalScript。
local player = game.Players.LocalPlayer
print("获取玩家名称 ".. player.Name)
local Names = {<我自己的名称不用担心>}
local ChosenName = Names[math.random(1, #Names)]
print("得到名称: " .. ChosenName)
local name = player.Name
game.Workspace.name.Humanoid.DisplayName = Names[math.random(1, #Names)]```
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 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 代码?

为什么在最后一行中没有使用
ChosenName,而是使用了Names[math.random(1, #Names)]?这只是第二次随机选择名称,可能与打印出来的名称“Got name:”不匹配。但是,问题在于,
game.Workspace.name.Humanoid.DisplayName引用的是什么表格?错误似乎表明没有DisplayName字段,因此我怀疑表格中还没有添加Humanoid字段。> Names = {'Trillian', 'Ford', 'Arthur', 'Zaphod', 'Marvin'} > ChosenName = Names[math.random(1, #Names)]如果 OP 的代码处理的表格已有一个
name字段,则:> game.Workspace.name.Humanoid = { DisplayName = ChosenName }将起作用。 如果该表尚未有
name字段,则:> game.Workspace.name = { Humanoid = { DisplayName = ChosenName }}无论哪种方式,现在都应该有:
> game.Workspace.name.Humanoid.DisplayName Marvin除非
game表尚未有Workspace字段。 这里的一般原则是,game.Workspace.name.Humanoid.DisplayName是game ["Workspace"] ["name"] ["Humanoid"] ["DisplayName"]的语法糖。 如果Workspace字段是一个表格,则尝试访问name字段;如果name字段是一个表格,则尝试访问Humanoid字段。 如果尚未创建Humanoid字段,则返回nil,并且["DisplayName"]尝试索引nil,导致错误。例如,对于一个如下所示的表:
t = {}您可以使用
t.something = something在单级创建新字段,但无法使用此方法创建嵌套的表字段,例如t.something.else = something_else,因为第一个字段something尚不存在。