我喜欢用 Roblox 制作游戏,并用 lua 编写代码。在编写游戏时,我发现自己经常问一个值是否等于另一个值,这可能会产生很长的代码行,并且可能非常重复。
例如:
如果 x.ClassName == '衬衫' 或
x.ClassName == '附件' 或
x.ClassName == '裤子' 或
x.ClassName == 'CharacterMesh' 然后
——做事
end
这样做不仅会非常混乱,而且只是一遍又一遍地询问同样的事情,稍作修改。
我想知道lua中是否有一种方法可以询问一个值是否等于多个不同的单独值
例如:
if x.ClassName == ( '衬衫' 或 '配饰' 或 '裤子' 或 'CharacterMesh' ) then
——做事
end
Lua 中没有本地方法可以做到这一点,但您可以实现一个辅助函数set
为了实现这一点。
function set(...)
local ret = {}
for _,k in ipairs({...}) do ret[k] = true end
return ret
end
local classname = 'Shirt'
if set('Shirt', 'Accessory', 'Pants', 'CharacterMesh')[classname] then
print('true')
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)