3

なぜ機能しないのかわかりません。パーティクルエフェクトは、衝突した部分ではなく、画面左下にあります。

.H ファイル内

    CCParticleExplosion *starsExplosion;

.M ファイル内 衝突下

        if(distance < 30) {
        starsCollected += 100;
        [_stars removeObject:stars];

        //Stars Explosion
        //starsExplosion.position = ccp(stars.contentSize.width, stars.contentSize.height);
        starsExplosion = [[CCParticleExplosion alloc] init];
        starsExplosion.position = ccp(stars.position.y, stars.position.x);
        starsExplosion.texture = [[CCTextureCache sharedTextureCache] addImage:@"star-icon.png"];

        [self addChild:starsExplosion];

        [self removeChild:stars cleanup:YES];
    }

と を使ってみましたが、うまくContentSize.Widthいきheight =ませんでした。使っPosition.xてみてy =、また運も。

4

1 に答える 1

3

x 座標と y 座標を入れ替えました。自分のコードでエラーを確認するのは難しいことはわかっています。おそらく、その時点で明確に考えていなかったのでしょう。

これを変える:

starsExplosion.position = ccp(stars.position.y, stars.position.x);

これに:

starsExplosion.position = ccp(stars.position.x, stars.position.y);
于 2012-12-30T15:16:10.840 に答える