2009-05-19 12 views

答えて

0

標準的なUIKitクラスを使用して、ゲームの上に目に見えないタッチサーフェスを重ねる必要があります。

これらのオブジェクトのタッチを検出して解釈し、コントロールをゲームに渡します。

もっと具体的な問題がある場合は、詳細情報を提供するか、別の質問をすることができます。

0

この投稿は、あなたのレイヤークラス内ccTouchesBegan /エンド移動/メソッドを実装し、次にに対するタッチ位置を確認してくださいあなたのiPhoneのためのcocos2Dと答え 問題とタッチ検出 Problem with cocos2D for iPhone and touch detection

2

を与えますあなたが触れたいノードのコンテナ。今

-(BOOL)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    UITouch touch = [touches anyObject]; 
    CGPoint location = [[Director sharedDirector] convertCoordinate: [touch locationInView: [touch view]]]; 

    CGRect mySurface = CGRectMake(100, 100, 50, 50); 
    if(CGRectContainsPoint(mySurface)) { 
    // do something 
    return kEventHandled; 
    } 
    return kEventIgnored; 
} 

、「タッチデリゲート」および例を用いて(現在アクティブベータである)Cocos2D 0.8で、このすべての変更が表示される(「試験触る」に見ることができる:例えば

私はちょうど見渡したソースからのポンゲームになる)。

Cocos2DにはUIKitコントロールを使用してタッチを検出する理由がわかりません.Cocos2Dにはハンドリング方法があります。

レイヤーだけがタッチを受け取ることができます。タッチ可能な「ゲームオブジェクト」(つまり、プレイヤーやオブジェクト)ごとにレイヤーを使用することはお勧めできません。