gpt4 book ai didi

lua - 我可以根据函数输入从表中选择值吗?

转载 作者:行者123 更新时间:2023-12-05 00:00:39 25 4
gpt4 key购买 nike

我想知道是否可以根据函数的参数从表中选择一个值。

我试过静态设置值,然后返回值。我只想使用函数参数来做到这一点。


function CheckWeapon(ped, attachment)
for k,v in pairs(weapons)do
if GetHashKey(k) == GetSelectedPedWeapon(ped) then
print(v.attachment)
return v.attachment -- This needs to be based on the
-- argument "attachment"
end
end
return false
end

我希望如果我向这个函数提供参数“silencer”,我会在表中收到相应的 silencer 值。相反它是零。如果我手动输入 return v.silencer,它仍然有效。

最佳答案

在 Lua 中,您可以通过 2 种方式对表进行索引。

正如您所做的那样,您可以使用 . 例如 sometable.key但这只是另一种索引方法的语法糖,sometable["key"]这两个都使用字符串 key 来索引表。

您的代码可能如下所示:

function CheckWeapon(ped, key)-- where key is a string ie: "attachment"
for k,v in pairs(weapons)do
if GetHashKey(k) == GetSelectedPedWeapon(ped) then
print(v[key])
return v[key]
end
end
return false
end

使用 sometable["key"] 选项还允许使用 . 无法访问的键,例如

sometable["my key"] -- note the space
sometable["1st_key"] -- note it begins with a number

关于lua - 我可以根据函数输入从表中选择值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56568202/

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