如何添加CCProgressTimer作为CCBatchNode的子代?

时间:2012-09-02 13:32:03

标签: objective-c ios cocos2d-iphone

我正在使用cocos2d 2.0为iOS开发太空游戏。 我需要为场景中涉及的每个“游戏对象”添加一个“健康栏”, 所以我决定使用CCProgressTimer。 通常,使用Sprite表是个不错的选择,所以我有一个CCBatchNode。 问题与ProgressTimer与Sprites和BatchNode之间的关系有关。 如果我将每个健康栏添加为其特定精灵的子项(添加到BatchNode),我的应用程序崩溃。 我已经读过这个问题了,这个“操作”似乎不允许, 也有人谈论类扩展,因为cocos2d没有这个功能。 这是真的吗?或者我误解了?

我们如何妥善处理?

谢谢, MP

2 个答案:

答案 0 :(得分:0)

CCSpriteBatchNode仅接受CCSprite作为子级。您需要在节点层次结构中的其他位置添加CCProgressTimer。

答案 1 :(得分:0)

感谢您的建议。

我通过向GameObject类发送Game Layer的引用来解决这个问题,这样你就可以定义你的healthBar并将它添加到图层上。