获取表中索引的值

时间:2015-05-15 11:09:08

标签: lua lua-table

我是否可以异步循环此表而不真正检查状态?我希望能够做colors[count % 6]或类似的事情,我不需要明确检查我所处的状态(计数)。

colors = {
        red = {max.R,0,0},
        green = {0,max.G,0},
        blue = {0,0,max.B},
        purple = {max.R,0,max.B},
        pink = {max.R,0.1*max.G,0.8*max.B},
        yellow = {max.R*0.95,max.G*0.64,0.5*max.B}
        }

我有一个计时器回调,我希望一次一张颜色通过表格,但目前我必须这样做if count == 0 then setColor(colors.red) ...

1 个答案:

答案 0 :(得分:3)

一种方法是使用另一个索引表:

local index = {"red", "green", "blue", "purple", "pink", "yellow"}

然后您可以使用colors[index[count % 6 + 1]]。缺点是,如果colors的密钥被修改,index需要手动更新。