CCLayer一直在改变立场

时间:2012-03-07 00:31:47

标签: objective-c cocos2d-iphone

我正在使用cocos2d并使用以下代码根据触摸屏幕的播放器移动我的图层。出于某种原因,每次调用代码时,层的位置在一个方向或另一个方向上移位32。我无法理解为什么会发生这种情况。程序中的任何地方都没有其他代码可以操纵这些CCNode(或任何其他节点)的位置。

-(void) animateStructure:(int)index And:(CCSprite*)aSprite At:(CGPoint)aPoint {
    CGPoint point1 = self.position;
    CGPoint point2 = playerSprite.position;

    id move = [CCMoveBy actionWithDuration:0.1 position:ccp(32*tempx,32*tempy)];
    [self runAction:move];    
    id move2 = [CCMoveBy actionWithDuration:0.1 position:ccp(-32*tempx,-32*tempy)];
    [playerSprite runAction:move2];

    self.position = point1;
    playerSprite.position = point2;
}

1 个答案:

答案 0 :(得分:1)

如果您在行动进行过程中设置位置,则不确定移动操作将如何播出,就像这里的情况一样。