Cronoa Composer

我刚刚被介绍了Composer,所以我还不太明白它的工作原理。我试图将一个已经运作良好的游戏转移到Composer,但我已经花了好几个小时搞这段代码,仍然无法使其正常工作——物理效果和事件监听器都不能正常工作。如果有人愿意帮助我,我将不胜感激。 以下是代码https://github.com/DFrogBinder/Coursera-cource/blob/gh-pages/Game/Play.lua

点赞
用户2735929
用户2735929

你有一些错别字可能会导致一些物理问题,但我不确定你遇到了什么问题。

--> 墙和天花板 
   local left_Wall = display.newRect(0, 500 , 1, display.contentHeight)
   local Right_Wall = display.newRect(display.contentWidth, 500, 1, display.contentHeight)
   local Celling = display.newRect(300, 0, display.contentWidth, 1)

   physics.addBody(left_Wall, "static", {bounce = 0.3})
   physics.addBody(Right_Wall, "static", {bounce = 0.3})
   -- 此处应该是 "Celling" 而不是你上面定义的 "Ceiling" 
   physics.addBody(Ceiling, "static", {bounce = 0.8})
   sceneGroup:insert(left_Wall)
   sceneGroup:insert(Right_Wall)
   sceneGroup:insert(Celling)

在这里,你似乎使用了 event.x 和 event.y,但我确定你应该使用 event.target.x 和 event.target.y

local function moveCrate (event)
  local Crate = event.target
  Crate:applyLinearImpulse( 0, -20, event.x, event.y )
end

如果你在切换到 “游戏结束” 场景时遇到了 composer 的问题,可能是因为你在这个场景的结束时没有删除你的显示对象。

2016-04-11 14:42:54