CCMoveTo不会将CCSprite移动到cocos2d-x-2.1.5中的正确位置

时间:2013-08-29 05:58:11

标签: c++ cocos2d-x

使用CCMoveTo将Sprite A移动到Sprite B的位置时,我有一些奇怪的行为 Sprite A和B是Sprite C的子节点,它是Sprite D的子节点 所有的anchorpoints都是(0,0)。

我在代码中有什么:

D->addChild(C,1);
C->addChild(A,1);
C->addChild(A,1);
CCPoint BOriginalPos = B->getPosition();  //this is the sprite where i want to move sprite A to  , which is : x160.000000 ,y:81.000000
CCMoveTo* AMoveToB = CCMoveTo::create(0.3f,BOriginalPos );
CCSequence* AMovesToBSequence = CCSequence::create(AMoveToB , NULL);
A->runAction(AMovesToBSequence);

但是当我记录A位置时,我得到: x187.925095,y:81.000000
我希望它是: x160.000000,y:81.000000 为B
看起来动画动作在世界空间X和Y中移动A而不是移动到相对于Sprite C的位置的节点空间。

但我该如何解决这个问题呢?我在这里做错了吗?

0 个答案:

没有答案