1

我正在构建一个游戏,它的角色应该在多个平台上跳跃。
跳跃功能已经完成,但我想如果角色就在平台(静态身体)下方,当我按下“跳跃”按钮时,角色应该穿过那个平台然后坐在上面。现在它与平台发生碰撞,角色无法跳上它。

您知道如何实现这一目标吗?

现在平台由具有“静态”主体类型的矩形表示:

local platform = display.newRect(  50, 280, 150, 10 )
platform:setFillColor ( 55, 55, 55)
physics.addBody ( platform, "static", {density=1.0, friction=1.0, bounce=0 })

我在想我是否可以改变,或者当角色与平台发生碰撞时移除平台的身体类型,这样他就可以通过平台,但我不知道该怎么做,或者一般来说这是否可行.. .也许有一些内置的技术如何达到我想要的效果?

4

1 回答 1

1

将平台变成传感器(Box2D 术语,表示带有碰撞框的对象,它会触发事件但不会触发“物理”碰撞。

然后检测碰撞的方向,然后处理:)

有很多关于这方面的教程......我现在找不到它们,我稍后可能会使用它们的链接进行编辑。

于 2012-10-14T03:31:09.870 回答