Love2D如果在表中有i,v的#

所以我想在Love2D中创建一个按钮系统,我已经写好了代码。问题是它不让我测试我的表中的i,v数量。我的代码是这样的:

function love.load()
 colorA={"blue", "yellow"}
 colorB={"blue"}
 colorC={"blue"}
end
function love.update(dt)
 --我写的更新内容
end
function love.draw()
 for i,v in pairs(colorA) do
  if i,v == 2 then
   love.graphics.setColor(255, 255, 0)
  else
   love.graphics.setColor(0, 0, 255)
  end
 end
 love.graphics.rectangle(My button data)
 --其他两个按钮的相同操作
end

它读到:

"语法错误:main.lua:57:'then' 附近应该是 ','"。

(我有更多的代码,所以不要因为“main.lua:57”就认为是其他问题,那是我的实际代码中的行号。)求助!

点赞
用户501459
用户501459

你不能同时进行两个比较。每个比较都是一个单独的表达式,你可以使用布尔运算符来组合它们。例如:

如果 i == 2 and v == 2 then

但是,看看你代码的其他部分,好像你只是想比较 i 或者 v ,所以你应该只比较其中一个。


根据数组中硬编码的位置来引用颜色是一种非常糟糕的方法。你还在循环遍历一个颜色列表并调用 setColor,但只有最后一个调用会真正发挥作用,所以这样做没有任何意义。

2015-10-18 20:42:59