0

Cocos2d を使用して iPhone アプリを作成しようとしています。そして、タッチを使って、固定位置から別の固定位置に画像を設定したいと思います(速い、またはゆっくり)。いくつかのコードを取得しましたが、正しく動作しません。

友達なので、何か解決策があればもっと助かります。

4

1 に答える 1

1

質問は少しあいまいですが、CocosNode の位置を設定したい場合は、次のようにします。

[myNode setPosition:cpv(x,y)];

ノードをタッチ位置からオフセットしたい場合は、ccTouchesBegan:withEvent を実装することでこれを行うことができます

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

  [myNode setPosition: cpv(convertedLocation.x - 100, convertedLocation.y - 100)];
  return kEventHandled;
}

これにより、CocosNode が -100、-100 だけタッチが発生した場所にオフセットされます。

レイヤーに ccTouchesBegan:withEvent: を実装し、タッチを有効にするには isTouchesEnabled を YES に設定する必要があります。

于 2009-04-11T18:23:50.487 に答える