对多个精灵使用相同的动作?

Ste*_*eve 8 action cocos2d-iphone

我想创建一次动作,然后将其添加到多个精灵中.例如,我有一个"怪物",它会在身体上添加一堆腿.这些腿中的每一条都是身体的孩子,我希望它们来回旋转.我制作了CCRepeatForever两个CCRotateBy动作的序列,效果很好.我可以将动作添加到腿部,但是如果我将其添加到不同的腿部,则第一条腿不会旋转.

我不想为每条腿做出新的序列 - 多么痛苦!必须有一个简单的方法!

编辑:

根据gixdev和Lukman的回答,我按照这样实现了它(感谢AGAIN Lukman!)

[leg1 runAction:action]; // for the first time using the action
[leg2 runAction:[[action copy] autorelease]]; // for all subsequent uses
Run Code Online (Sandbox Code Playgroud)

gix*_*dev 10

如果复制您曾经创建的操作,它会帮助您

[leg1 runAction:[action copy]];
[leg2 runAction:[action copy]];
...
Run Code Online (Sandbox Code Playgroud)

  • 你需要'释放'你复制的东西,因此我建议`[leg1 runAction:[[action copy] autorelease]];`而不是;) (3认同)