gpt4 book ai didi

Lua 尝试调用 nil

转载 作者:行者123 更新时间:2023-12-01 22:57:54 25 4
gpt4 key购买 nike

所以我有这个 Lua 脚本:

function dispTanks()
mon.setCursorPos(offsetPos, 1)
mon2.setCursorPos(offsetPos,1)

for i=1, #machines do -- RC Tanks
--------------------------------------------
if string.find(machines[i], "rcirontankvalvetile")
or
string.find(machines[i], "rcsteeltankvalvetile") then
if peripheral.isPresent(machines[i]) then
periph = peripheral.wrap(machines[i])

fluidRaw, fluidName, fluidAmount, fluidCapacity, fluidID = marik.getTank(periph)

if fluidName == nil then
-- does not display empty tanks
elseif fluidName ~= nil then
mon2.setTextColor(tc)
x,y = mon2.getCursorPos()
mon2.setCursorPos(offsetPos, (y+1))
mon2.clearLine()
-- marik.cString(offsetPos,(y+1), tc, right, " ")
nameFL = split(marik.comma(fluidName), " ")
nameFL = nameFL[0]
mon2.write("Tank (" .. nameFL .. ") : " .. marik.getBuckets(fluidAmount) .. " buckets")
end
end
end
end
end

现在它在这一行给出错误:

nameFL = split(marik.comma(fluidName), " ")

错误是:attempt to call nil

现在,我是 Lua 的初学者,这不是我的脚本,而是一个免费使用的脚本,我不知道如何解决这个问题。

编辑

所以在我添加拆分部分之前,这是脚本应该给出的结果:

enter image description here

问题是我想将名称 (ardite.molten) 更改为 Ardite,一位 friend 说我需要使用 split,所以我添加了以下内容:

function firstToUpper(str)
return (str:gsub("^%l", string.upper))
end

nameFL = split(fluidName, " ")
nameFL = nameFL[0]

并更改:mon2.write("Tank (".. marik.comma(fluidName) .. ") : ".. marik.comma(fluidAmount) .. "/".. marik.comma( fluidCapacity) .. "mb (".. marik.getBuckets(fluidAmount) .. "buckets)")to : mon2.write("Tank (".. nameFL .. ") : ".. marik.getBuckets(fluidAmount) .. "buckets")

这给了我错误:http://puu.sh/a51QI/a848facf1b.png

最佳答案

要么split函数不存在,要么marikcomma函数存在

编辑:

我认为您尝试做的是在点之前获取所有内容而不是全名,对吗?

在这种情况下,您可以这样做:

替换这些行

nameFL = split(marik.comma(fluidName), " ")
nameFL = nameFL[0]

用这个:

nameFL = marik.comma(fluidName):match("[^.]*")

您不需要拆分。它所做的是模式匹配,在这种情况下,它匹配所有内容,直到第一个点

关于Lua 尝试调用 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24675570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com