我有一个飞机精灵(考虑一个纸飞机,指向正确的方向),当点击屏幕时它会向上旋转一点,然后再向下旋转与向上旋转相同的度数。我通过使用以下代码实现了这一点:
-(void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
//Plane move up on touch
UITouch *touch = [touches anyObject];
[plane stopAllActions];
[plane runAction:[CCSequence actions:[CCRotateBy actionWithDuration:0.15 angle:-20],
[CCMoveBy actionWithDuration:1 position:ccp(0,location.y)],
[CCRotateBy actionWithDuration:0.15 angle:20],
[CCCallBlock actionWithBlock:
^{
[self startDownMovement];
}],nil]];}
接着
-(void)startDownMovement {
[plane runAction:[CCSequence actions:[CCMoveBy actionWithDuration:2 position:ccp(0,-plane.position.y)],nil]];
}
问题是:例如,如果我点击 2 次,飞机会向上移动 20 度两次,但只会向下旋转 20 度一次。我只希望飞机向上旋转20度,无论屏幕被点击多少次,它都应该保持20度然后回到0度。
请帮忙。
感谢期待。