2012-04-23 7 views
1

私はコロナで力ベクトルを使って特定の方向にボールを打つというゲームを作ろうとしています。ボールが止まったときにイベントをトリガーしようとしています。私はボールに触れ、それを解放する方向を設定すると、何度もタッチイベントが呼び出されるので、「タッチ」イベントを使用することはできません。コロナsdkで動いているボールを止めるときにイベントをトリガーする方法

答えて

0

touch eventphaseプロパティを使用し、「開始」フェーズでのみ反応します。

4

コロナのカスタムイベントを使用して、何かが発生した場合、ボールが停止したときにイベントを送信できます。以下のコードはイベントをRuntimeオブジェクトにディスパッチします。

local event = { name = "ballHasStoppedMoving", target = Runtime } 
Runtime:dispatchEvent(event) 

次のコードでは、「ballHasStoppedMoving」イベントをリッスンしたときにイベントが発生「ballStoppedMoving」あなたの関数を呼び出すために使用されます。

local function ballStoppedMoving(event) 

    print("The ball has stopped moving") 

end 

Runtime:addEventListener("ballHasStoppedMoving", ballStoppedMoving) 
0

enterFrameイベントでは、ball.getLinearVelocityを使用してボールの速度を確認します。それらが等しくなければ(0,0)、メソッド/イベントを実行します。この時点でカスタムイベントを実行する場合は、Michaelの答えに従ってください。

関連する問題