如何获得脊柱当前动画

时间:2013-07-04 07:13:55

标签: objective-c cocos2d-iphone

我在cocos2d中有一个简单的脊椎项目,我想知道正在播放的当前动画(字符串名称),但我找不到任何函数来在CCSkeletonAnimation类中获取它,

你知道是否有办法实现这个目标吗?

由于

编辑 - 解决方案

嘿,我找到了怎么做到

AnimationState *a = [mAnimationNode getAnimationState:0];   
NSLog(@"Layer touched: %s",a->animation->name);

其中mAnimationNode是CCSkeletonAnimation,

完美无缺!!

2 个答案:

答案 0 :(得分:1)

嘿,我找到了怎么做到

AnimationState *a = [mAnimationNode getAnimationState:0];   
NSLog(@"Layer touched: %s",a->animation->name);

其中mAnimationNode是CCSkeletonAnimation,

完美无缺!!

答案 1 :(得分:0)

如果Spine不支持一种明确的方法,那么当您启动动画名称时,最好将动画名称存储在场景的属性中。

另一方面,由于动画通常是通过动作在cocos2d中实现的,因此您可以检查CCActionManager的{​​{1}}方法实现,以检查如何访问正在运行的动作列表。给定的目标节点。

这是针对cocos2d 1.1:

numberOfRunningActionsInTarget:

tHashElement *element = NULL; HASH_FIND_INT(targets, &target, element); 是包含所有正在运行的操作的ccArray。