If statement 忽略Lua第二个嵌套if语句
我正在为我的作业编写一个tic-tac-toe游戏,我一直在使用嵌套的if语句。我的代码的附件部分如下:If statement 忽略Lua第二个嵌套if语句,if-statement,lua,If Statement,Lua,我正在为我的作业编写一个tic-tac-toe游戏,我一直在使用嵌套的if语句。我的代码的附件部分如下: if name[1] == "AI" then print("test string") playerId = 1 if level == 1 or level == 2 then print("AI lvl 1/2") easy() elseif level == 3 then print("AI l
if name[1] == "AI" then
print("test string")
playerId = 1
if level == 1 or level == 2 then
print("AI lvl 1/2")
easy()
elseif level == 3 then
print("AI lvl 3")
hard()
end
elseif name[1] == "player" then
print("test string2")
Runtime:addEventListener("touch", fill)
end
执行此操作时,测试字符串打印在控制台上,playerId=1,但在第二个if语句中被完全忽略。甚至不能在控制台上打印。
有人能帮我解决吗?或者告诉我我的代码有什么问题。
谢谢添加类似于
打印(级别,键入(级别))
的内容,查看级别是什么。请记住,当您想进行一些算术运算或字符串连接时,lua可以将像'123'
这样的字符串转换为数字,反之亦然,但您不能将字符串与那样的数字进行比较:123=='123'
将返回false
因此,如果level
是一个字符串,可以将代码中的1
、2
和3
替换为'1'
、'2'
和'3'
,或者将level
转换为一个数字:level=tonumber(level)
,测试字符串2是在name[1]=“player”时打印的检查级别的值是多少。听起来好像不是1、2或3。你从哪里得到的?如果您在定义了level
的地方发布代码,我们可能会给您一些更具体的帮助。在这个场景中:local-level=composer.getVariable(“level”),在难度级别场景中,composer.setVariable(“level”,“1”),level表示难度级别,仅在添加打印(“level”。.level)后1,2,3在上面代码的playerId=1下面,当我选择相关级别时,它会打印级别1/2/3。类似于