に3つのレイヤーがありますCCScene
。とMainLayer
を含みます。これは今のように見えます:GameLayer
HUDLayer
[ z-Order ] | [ Layer ]
==============================
3 ( Top Most ) | HUDLayer
2 ( Middle ) | GameLayer
1 ( Bottom ) | MainLayer
そのレイヤーでタッチされたオブジェクトを返すのメソッドを呼び出すタッチリスナー(、、、および)を追加ccTouchBegan
しccTouchMoved
ましccTouchEnded
た。MainLayer
GameLayer
getTouchedObject( CCPoint p_Loc )
これで、内の特定のオブジェクトに正常に「タッチ」できるようになりましたMainLayer
。さて、私がやりたいのは、触れたオブジェクトをドラッグして、に入れることHUDLayer
です。1つのレイヤーだけで作業していたときは、さまざまなオブジェクトを問題なくドラッグアンドドロップできましたが、を実装する必要が生じたCCLayer
ため、メインレイヤーを3つの異なるレイヤーに分割しました。
回答はcocos2d-xである必要はありません。私はObj-Cを少し理解しており、Obj-CをC ++に変換できるので、cocos2dの回答を歓迎します。前もって感謝します。