如何创建一个表格,其中包含一个" for"的输出定义的值。在LUA循环?

时间:2017-06-30 21:45:57

标签: lua

我目前正在为魔兽世界编写一个插件,但我已经运行了一些基本的lua问题。它的要点是,我想将此for循环中的以下元素减少为一行。

目前,我正在使用WoW&#{1}}的api命令(它只是隐藏游戏中的帧)在一个共享相同名称的帧列表中,除了最后的数字。 "SetAlpha(0)"

我还必须对其他四个列表做同样的事情,每个列表也有12个不同版本的自己ActionButton1Name, ActionButton2Name, ActionButton3Name, etc

基本上,我想采取我现有的东西:

MultiBarBottomRightButton1Name, MultiBarBottomRightButton2Name, etc

SetAlpha特定于“魔兽世界”的API,因此请根据需要忽略它。

并将其转换为我在其他地方拥有自己的表中所有[]元素的东西,然后再使用该索引

for i=1, 12 do
    ["ActionButton"..i.."Name"]:SetAlpha(0)
    ["MultiBarBottomRightButton"..i.."Name"]:SetAlpha(0)
    ["MultiBarBottomLeftButton"..i.."Name"]:SetAlpha(0)
    ["MultiBarRightButton"..i.."Name"]:SetAlpha(0)
    ["MultiBarLeftButton"..i.."Name"]:SetAlpha(0)
end

然而,上述功能似乎不起作用,因为终端在第二行的local buttonNameIndex = function() for i=1, 12 do ["ActionButton"..i.."Name"] ["MultiBarBottomRightButton"..i.."Name"] ["MultiBarBottomLeftButton"..i.."Name"] ["MultiBarRightButton"..i.."Name"] ["MultiBarLeftButton"..i.."Name"] end end for i,v in ipairs(buttonNameIndex) do v:SetAlpha(0) end 附近吐出了一个意外符号的错误。

至于为什么我要这样做:我以后会用这个框架列表做更多的事情,所以将它们全部组合成一个框架会很好表

1 个答案:

答案 0 :(得分:0)

如果这些是全局变量,请使用如下表达式:

_G["ActionButton"..i.."Name"]:SetAlpha(0)

从动态创建的名称访问全局变量。