0

少し混乱しています。ある CCSprite を別の CCSprite の位置に移動しようとしています。簡単だと思ったのですが、CCSprite が正しく配置されていません。私は2つのCCSpritesを持っています:

//Get Position of EMPTY SPRITE
CCSprite *sprite = (CCSprite*)[self getChildByName:[NSString stringWithFormat:@"%d", kEMPTY] recursively:NO];

 //GET DRAGGED SQUARE
 CCSprite *spriteMove = (CCSprite*)[self getChildByName:[NSString stringWithFormat:@"%d", DragStartSquare] recursively:NO];

次に、EMPTY SPRITE (実際には空ではない) の位置を取得しようとしています。

CGPoint worldCoord = [sprite convertToWorldSpace: sprite.position];

私はそれをアニメーション化しています:

id action1 = [CCActionMoveTo actionWithDuration:duration position:worldCoord];

これにより、スプライトが画面の外に出ます。私は何を間違っていますか?

4

1 に答える 1

0

ターゲット スプライトのノード スペースに戻す必要があります。

CGPoint targetNodeCoord = [spriteMove convertToNodeSpace: [sprite convertToWorldSpace: sprite.position]];
CCAction *action1 = [CCActionMoveTo actionWithDuration:duration position:targetNodeCoord];
于 2014-09-01T16:26:46.330 に答える