【问题标题】:How do I make a collison while someone is holding a button有人按住按钮时如何进行碰撞
【发布时间】:2013-12-17 14:07:46
【问题描述】:

所以我有这个立方体,如果玩家点击一个按钮,它就会移动。我也有这个块,如果立方体碰撞,立方体将被送回起始位置。我已经尽力了,但我似乎无法让他们两个一起正常工作。使用我的代码,立方体会出现故障,并在块和起始位置之间的整个屏幕上移动。这是如果按钮仍然被按下。如果它在碰撞的同一时刻释放它确实有效,但显然玩家不会注意这一点。

function touchHandler( event )
if event.phase == "began" then
    display.getCurrentStage():setFocus( event.target )
    event.target.isFocus = true
    Runtime:addEventListener( "enterFrame", enterFrameListener )
    holding = true
elseif event.target.isFocus then
    if event.phase == "moved" then
    elseif event.phase == "ended" then
        holding = false
        Runtime:removeEventListener( "enterFrame", enterFrameListener )
        display.getCurrentStage():setFocus( nil )
        event.target.isFocus = false
    end
end
return true
end
leftbutton:addEventListener( "touch", touchHandler )

这是碰撞的代码:

 function onCollision( event )

if ( event.phase == "began" ) then
  transition.cancel( )
  transition.moveTo( cube, {time = 0, x = 35, y = 35} )

end
return true
end
redblock:addEventListener( "collision", onCollision )

另外:每当立方体落在红块的边缘并开始旋转并被送回开始时。它一直在旋转,并开始自行移动。

希望有人能帮忙! 谢谢。

【问题讨论】:

    标签: lua coronasdk game-physics


    【解决方案1】:

    在碰撞过程中您仍处于“移动”阶段,因此为什么该块会尝试重置,但之后会被拖来拖去。一旦检测到碰撞,您需要从“leftbutton”中删除事件处理程序,以便不再进行触摸事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-25
      • 1970-01-01
      • 2020-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多