main.lua:尝试索引上值“bricks”(函数值)

转换从“主菜单”到游戏屏幕时遇到此错误。 点击“播放”后,主菜单消失,出现第1级。 对于此级别,我使用了displayGroup添加了砖块。 在第bricks:toFront()行出错; 如果我删除此行/在其他地方放置它,则在bricks.insert(bricks,brick)处出错

playButton:addEventListener(“tap”,loadGame);

function loadGame(event)
    if event.target.name ==“playbutton”then
        transition.to(menuScreenGrp,{time = 0,alpha = 0,onComplete = addGameScreen});
        playBtn:removeEventListener(“tap”,loadGame);
    end
end

function addGameScreen()
   -- code for displaying background and other stuff
   loadLevel1();
end

function loadLevel1()

currentLevel = 1;
    bricks:toFront();  -- Got error here

    for row = 0,numOfRows - 1 do
    for column = 0,numOfColumns - 1 do

      --logic to position bricks
      physics.addBody(brick,“static”,{density = 1,friction = 0,bounce = 0})
      bricks.insert(bricks,brick)

    end
  end
end
点赞
用户5598068
用户5598068

快速获得了解决方案。

在参考文档中,group 是作为本地变量进行初始化的:

local bricks = display.newGroup();

因此,在尝试在函数内部访问它时,会出现错误。

解决方案是,我只声明了变量,然后在函数内部进行初始化。

2016-12-07 07:06:20