Hi all,
i am facing some trouble using cocos2d AtlasAnimation problem. I want to start some death player death animation and perform some actions when this animation is finished. Problem is, that isDone func never returns TRUE, even after animation is finished.
I initialize it like this:
// BALL ANIMATION
AtlasAnimation *anim_ball_glow = [AtlasAnimation animationWithName:@"glow" delay:0.1f];
//// here is adding of frames.......
id action_ball_glow = [Animate actionWithAnimation: anim_ball_glow];
[action_ball_glow setTag:8];
[ball runAction:action_ball_glow];
now, somewhere else in the code, i,m doing this:
// animation finish controls
if([[ball getActionByTag:8] isDone])
{
// do something
}
but this is never performed. isDone always returns FALSE. If I call something like this:
[[ball getActionByTag:8] stop]
it works. So I think that there is not problem with obtaining action. So, why isDone is always false?
Thanks a lot
i am facing some trouble using cocos2d AtlasAnimation problem. I want to start some death player death animation and perform some actions when this animation is finished. Problem is, that isDone func never returns TRUE, even after animation is finished.
I initialize it like this:
// BALL ANIMATION
AtlasAnimation *anim_ball_glow = [AtlasAnimation animationWithName:@"glow" delay:0.1f];
//// here is adding of frames.......
id action_ball_glow = [Animate actionWithAnimation: anim_ball_glow];
[action_ball_glow setTag:8];
[ball runAction:action_ball_glow];
now, somewhere else in the code, i,m doing this:
// animation finish controls
if([[ball getActionByTag:8] isDone])
{
// do something
}
but this is never performed. isDone always returns FALSE. If I call something like this:
[[ball getActionByTag:8] stop]
it works. So I think that there is not problem with obtaining action. So, why isDone is always false?
Thanks a lot
No comments:
Post a Comment