cocos creator如何像cocos2d js一样实现一个节点作为整体控制两个Sprite?

我之前一直使用的是cocos2d-js,最近在学习creator。发现变化还是很大的,有一些地方不明白。

我首先描述一下我的需求,我的游戏里面需要生成“食物”对象。食物是由外层Sprite和内层Sprite组成的。外层可以变换颜色,内层也可以变换颜色,并且有几种图案,可以根据参数生成。之前我用cocos2d-js实现的时候,是extend了Node节点,然后addChild把外层和内层都添加到这个节点上。代码大致如下:
var Food = cc.Node.extend({
ctor : function(shapeColor, patternColor, patternType) {
this._super();
this.init(shapeColor, patternColor, patternType);
},
init : function(shapeColor, patternColor, patternType) {
this.mShape = new cc.Sprite(res.food_png);
this.mShape.setColor(shapeColor);

    this.addChild(this.mShape);
    if (patternType == this.TYPE1) {
        this.mPattern = new cc.Sprite(res.pattern1_png);

    } else if (patternType == this.TYPE2) {
        this.mPattern = new cc.Sprite(res.pattern2_png);

    } else if (patternType == this.TYPE3) {
        this.mPattern = new cc.Sprite(res.pattern3_png);

    } else if (patternType == this.TYPE4) {
        this.mPattern = new cc.Sprite(res.pattern4_png);
    }

    this.mType = patternType;
    this.mPattern.setColor(patternColor);
    this.addChild(this.mPattern);

}
外面调用的时候,就是var food = new Food(shapeColor, patternColor, patternType);
如果我想让食物进行动画,就直接操作food对象,就可以实现了。
如:food.runAction(cc.moveBy(100, 0));

我想请教,这种需求在cocos creator里怎么实现?一个节点只能对应一个sprite组件,那么我必须先创建一个节点,然后再以这个节点为父节点,创建两个子节点,然后再对应两个sprite组件到这两个子节点。是这样吗?还是应该用其他方式?

不知道我是否描述清楚了。
期待解答!

经查阅资料,我理解的方法应该是可以的。

http://www.cocos.com/docs/creator/content-workflow/node-tree.html

是的呢

谢谢!另外还想请教一下,cocos-creator的性能对比cocos2d-js来讲,是否有更进一步提升?想用它来开发跑酷游戏。是否仍会存在cocos2d-js资源回收的一些问题?

有提升的,资源回收的问题仍然存在不过用户量这么大会有方法的。cocos2d-js 都几年没维护了吧,这种老引擎你还敢用…… 鬼知道前方有什么在等着你。