如何在 cocos2d 中一个接一个地排列精灵的动画?
Posted
技术标签:
【中文标题】如何在 cocos2d 中一个接一个地排列精灵的动画?【英文标题】:How do you order the animation of a sprite one after the other in cocos2d? 【发布时间】:2010-03-18 06:00:21 【问题描述】:我有两个精灵。两者都应该有动画。但是 sprite1 应该先动画,在 sprite1 动画完成后, sprite2 动画应该开始。我可以对精灵说从某个时间开始运行并在某个时间结束吗?这是我的问题。请解释我该怎么做。 谢谢。
【问题讨论】:
【参考方案1】:最简单的方法之一是通过 CCActions,特别是让 CCCallFunc 动作在您的代码中调用一个方法,以便在 sprite1 动画完成后立即启动 sprite2 动画。然后,您使用 CCSequence 创建 CCAnimate 然后 CCCallFunc 的动作序列。
// Lets say you have this as the CCAnimation for Sprite1
CCAnimation *sprite1Animation = [CCAnimation …]…
// then you setup the animate action:
// Suppose you have a method called -(void)startSprite2Animation which starts the sprite2 animation :-)
id animateAction = [CCAnimate actionWithAnimation:sprite1Animation restoreOriginalFrame:NO];
id callSprite2Animation = [CCCallFunc ctionWithTarget:self selector:@selector(startSprite2Animation)];
id animateAndActionSequence = [CCSequence actions: animateAction, callSprite2Animation,nil];
[sprite1 stopAllActions]; // If you have actions running
[sprite1 runAction:animateAndActionSequence];
// See more on Cocos2D actions here: http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:actions
【讨论】:
谢谢你。我终于得到了一个答案。我将在我的程序中使用,如果有任何问题我会发布给你。 嗨,非常感谢。它按我的需要工作。我想你从今天开始就是会员。在这里过得愉快。再次感谢您。以上是关于如何在 cocos2d 中一个接一个地排列精灵的动画?的主要内容,如果未能解决你的问题,请参考以下文章