0

spritebuilder プロジェクトで問題が発生しましたが、回避策が見つかりません。私は、flappyfly チュートリアルを使用してゲームを作成しています。チュートリアルでは、spritebuilder に Obstacle.ccb があり、xcode にobstacle.h/m があります。このコードを使用すると、障害物がメイン シーンに生成されます。

- (void)spawnNewObstacle {
  CCNode *previousObstacle = [_obstacles lastObject];
  CGFloat previousObstacleXPosition = previousObstacle.position.x;

  if (!previousObstacle) {
    // this is the first obstacle
    previousObstacleXPosition = firstObstaclePosition;
  }

  Obstacle *obstacle = (Obstacle *)[CCBReader load:@"Obstacle"];
  obstacle.position = ccp(previousObstacleXPosition + distanceBetweenObstacles, 0);
  [obstacle setupRandomPosition];
  obstacle.zOrder = DrawingOrderPipes;
  [_physicsNode addChild:obstacle];
  [_obstacles addObject:obstacle];
}

私が達成したいのは、これらの障害物がランダムに生成されるようにすることです。ヒーローを障害物と衝突させたくありません。代わりに、障害物を物理体として機能させて、ジャンプできるようにしたいのですが、問題は、ヒーローと障害物の衝突を無効にすると、メインシーンがまだ障害物をインポートすることです.m障害物.ccb で物理がオンになっていても、物理は適用されておらず、ヒーローは障害物を通り抜けることができます。これを実際の物理体にする唯一の方法は、物理ノードの下の mainscene.ccb に障害物.ccb を追加することです。これは機能しますが、もちろん障害物はランダムに出現しません。回避策はありますか?

4

1 に答える 1

0

それらがスポーンし続け、ヒーローがゲームオーバーにならずにジャンプできるようにしたい場合は、それらに衝突グループを設定することをお勧めします

于 2014-08-26T19:56:12.857 に答える