2012-01-27 5 views
1

Как мне оптимизировать этот код?Есть ли более простой способ, чем «мавритан« ифиф »?

variable = 1 

moveLine = function() 

    if variable == 1 then 

     first = color_1.color 
     second = color_2.color 

    elseif variable == 2 then 

     first = color_2.color 
     second = color_3.color 
    end 

variable = variable + 1 

end 

Функция много больше, и именно поэтому я мог бы использовать более простой способ :)

+2

Так ... много цветов? Я думаю, Lua поддерживает массивы. – Ryan

+0

@ user1173675 Вы можете сохранить 'color_' в массиве и затем назначить их 'first' и' second', используя функцию 'variable' для вычисления индекса. – 0605002

ответ

5

Вы должны хранить ваши цвета в массиве:

colors = { all your colors } 

moveLine = function() 
    first = colors[variable] 
    second = colors[variable + 1] 
    variable = variable + 1 
end 
+0

Вся идея использования массивов для сохранения значения цвета работает лучше во многих направлениях :) – d00dle

+1

@ sp0ck: Если да, то вы должны принять этот ответ. –

Смежные вопросы