0
我有CCNode *parentNode
,它有CCNode *childNode1
和CCNode *childNode2
。我试图用CCMoveTo
动作移动parentNode,但是请留下childNode2
哦同样的位置。cocos2d:在父节点和子节点上运行不同的操作
下面的代码
[parentNode runAction:[CCMoveTo actionWithDuration:0.5f position:ccp(x, y)]];
[childNode2 runAction:[CCMoveTo actionWithDuration:0.5f position:ccp(-x, -y]];
并不能帮助我实现我的目标。
它甚至可以解决我的问题吗?
哦,我用坐标转换。错误我没有帮助。其实,'''[childNode2 runAction:[CCMoveTo actionWithDuration:0.5f position:[parent convertToNodeSpace:CGPointZero]];'''不移动孩子到{0; 0}。无法弄清楚,为什么如此。 – d12frosted
你的意思是它不会将孩子移动到父母坐标系中的{0,0}? –
是的,父母的{0,0}。哦,我想我看到了这个问题。它计算新位置,但不计算偏移量。所以在时间= 0时,PointZero是一个,在动画结束时,PointZero实际上并不是父代的{0,0}。 – d12frosted