如何使用字符串和连接访问变量名称

时间:2014-09-11 06:41:45

标签: variables lua

我想做以下事情:

local archetype = "melee"
local meleeNames = { x,y,z }

if itemNumber > # [archetype .. "Names"] then 
    itemNumber = # [archetype .. "Names"] 
end

但是,我不确定如何访问变量,这不是......

[archetype .. "Names"] 

谢谢, Gullie

1 个答案:

答案 0 :(得分:5)

正如@ yu-hao在评论中所说,你可以编写这样的语法。你可以使用讨厌的技巧来产生类似的效果,但不建议这样做。而是做这样的事情:

local archetypes = { meleeNames = { x, y, z },
                     ... others }
local archetype = "melee"

if itemNumber > #archetypes[archetype .. "Names"] then
  itemNumber = #archetypes[archetype .. "Names"]
end