Код ::Как остановить анимацию после некоторого интервала в cocos2d-iphone?
if (CGRectIntersectsRect(food.sprite.boundingBox, playerRect)) {
[food.sprite stopAllActions];
[walkAnimFrames addObject: [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:
[NSString stringWithFormat:@"newpackman2.png", 0]]];
[walkAnimFrames addObject: [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:
[NSString stringWithFormat:@"newpackman3.png", 1]]];
walkAnim = [CCAnimation animationWithFrames:walkAnimFrames delay:0.2f];
self.walkAction = [CCRepeatForever actionWithAction: [CCAnimate actionWithAnimation:walkAnim restoreOriginalFrame:NO]];
self.walkAction.tag = 1;
[chef runAction:_walkAction];
}
Он отлично работает, он начинает анимацию, когда объект столкнулся с шеф-поваром, но работает непрерывно.
Я хочу остановить анимацию через 3-4 секунды.
Я использовал [sprite stopActionByTag:1]
но, он не работает для меня, как только он начинается, он не останавливается.
Wow ,, это работает как шарм но он останавливает мое другое действие, например [chef runAction: [CCRepeatForever actionWithAction: [Действия CCSequence: [CCMoveBy actionWit hDuration: 1.0 позиция: ccp (0,240)], [CCMoveBy actionWithDuration: 1.0 позиция: ccp (0, -240)], nil]]]; Я хочу продолжить это действие после остановки анимации. –
Помню, у меня были проблемы с остановкой. Чем вам не нужно останавливать все действия. Попробуйте установить теги для всех ваших анимаций CCMoveBy, CCMoveBy, CCSequence, CCRepeatForever. И в этом блоке остановить их с помощью тега. –
Ahhh, он отлично работает ... Спасибо! Я хочу проголосовать, но не имеет достаточной репутации. –