Animation Cocos2d-对象似乎正在重置其位置

Animation Cocos2d-对象似乎正在重置其位置,animation,cocos2d-iphone,Animation,Cocos2d Iphone,我有一个敌人职业,它是在游戏玩家指定的位置上创建的。当我繁殖敌人,然后返回它在日志中的当前位置时,它将返回它正确创建的位置。现在,我正在尝试向敌人类的更新方法添加一些移动。然而,当我这样做时,它会将敌人传送到位置0,0,然后对其应用移动。当我从更新方法中返回敌人的位置时,它报告0,0,而不是它产生的位置 现在,我用一个动画来表现屏幕上的敌人。我可以像使用精灵一样访问动画的位置吗,或者我完全错过了什么 在游戏层生成敌人: CCLOG(@"Creating Enemy"); Enemy *enemy

我有一个敌人职业,它是在游戏玩家指定的位置上创建的。当我繁殖敌人,然后返回它在日志中的当前位置时,它将返回它正确创建的位置。现在,我正在尝试向敌人类的更新方法添加一些移动。然而,当我这样做时,它会将敌人传送到位置0,0,然后对其应用移动。当我从更新方法中返回敌人的位置时,它报告0,0,而不是它产生的位置

现在,我用一个动画来表现屏幕上的敌人。我可以像使用精灵一样访问动画的位置吗,或者我完全错过了什么

在游戏层生成敌人:

CCLOG(@"Creating Enemy");
Enemy *enemy = [[Enemy alloc] initWithSpriteFrame:[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"node-red-1.png"]];
[enemy setPosition:spawnLocation];
[sceneSpriteBatchNode addChild:enemy z:ZValue tag:kEnemySpriteTagValue];
[enemies addObject:enemy];
敌军行动:

CCLOG(@"Enemy->Starting the Traveling Animation");
action = [CCRepeatForever actionWithAction: [CCAnimate actionWithAnimation:skullRedAnim restoreOriginalFrame:NO]];
self.moveAction = [CCMoveBy actionWithDuration:(screenSize.height/200) position:ccp(self.position.x, screenSize.height + 100)];
[self runAction:moveAction];
break;

问题最终出现在我的init方法中,特别是我做一些事情的顺序