如何在Corona sdk中发生碰撞时重新开始关卡

我正在尝试在检测到玩家与某个物体碰撞时重新加载等级。玩家被列为“动态”物理体,其相互作用的对象标记为“运动学”。如何在检测到玩家与任何物体发生碰撞时使关卡重置自身?以下是我的代码:

local function onGlobalCollision( event )
    if ( event.phase == "began" ) then
        composer.gotoScene("level1")
    end

    player.collision = onGlobalCollision
    player:addEventListener ("collision", player)
end

谢谢

点赞
用户5442278
用户5442278

请确保在你的 scene:hide 方法中移除所有事件监听器、场景组、停止物理并移除场景。重新启动时,应该重启全部。另外,我认为你不需要 if(event.phase...)

你的代码应该是:

local function onGlobalCollision( event )
    composer.gotoScene("level1")
    player.collision = onGlobalCollision
    player:addEventListener ("collision", player)
end

希望对你有用。

2015-12-18 11:57:07