0

これらは私の最初のCocos2Dプロジェクトであり、タッチしたときに同じ場所でスプライトをジャンプさせようとしていますが、スプライトにタッチアクションを設定する方法がわからないため、応答できません。コードは次のとおりです。

-(void) spriteEffect
{
    CCSprite *actionEffect = avatar;
    id jump = [CCJumpBy actionWithDuration:1 position: ccp(0, 0) height:50 jumps:2];
    id sequence = [CCSequence actions: jump, nil];
    [actionEffect runAction:sequence];

    return yes
}

使用する必要があります

- (BOOL) ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event

ありがとう!

4

1 に答える 1

0

スプライトの配列であるコメントavatarは、効果が表示されない理由を明確にするのに役立ちます。次のようなことを試してください。

-(void) spriteEffect
{
 CCSprite *actionEffect = <get a sprite from avatar array>;
 id jump = [CCJumpBy actionWithDuration:1 position: ccp(0, 0) height:50 jumps:2];
 [actionEffect runAction:jump];

}

配列の種類がわからないavatarので、その要素にアクセスするための構文を提供できません。の場合avatarNSArray次を使用してすべてのスプライトをジャンプさせることができます。

-(void) spriteEffect
{
   foreach (CCSprite* actionEffect in avatar) {
     id jump = [CCJumpBy actionWithDuration:1 position: ccp(0, 0) height:50 jumps:2];
     [actionEffect runAction:jump];
   }

}

于 2013-01-22T18:09:04.983 に答える