Cocos Creator 创建和销毁节点(官方文档摘录)

创建新节点

除了通过场景编辑器创建节点外,我们也可以在脚本中动态创建节点。通过new cc.Node()并将它加入 到场景中,可以实现整个创建过程。

以下是一个简单的例子:

cc.Class({
  extends: cc.Component,properties: {
    sprite: {
      default: null,type: cc.SpriteFrame,},start: function () {
    var node = new cc.Node('sprite ' + this.count);
    var sp = node.addComponent(cc.Sprite);

    sp.spriteFrame = this.sprite;
    node.parent = this.node;
    node.setPosition(0,0);
  },});

克隆已有节点有时我们希望动态的克隆场景中的已有节点,我们可以通过cc.instantiate方法完成。使用方法如下:

var scene = cc.director.getScene();
    var node = cc.instantiate(this.target);

    node.parent = scene;
    node.setPosition(创建预置节点和克隆已有节点相似,你也设置你的预置(prefab)节点并通过cc.instantiate生成。使用方法如下:

销毁节点通过node.destroy()函数,可以销毁节点。值得一提的是,销毁节点并不会立刻发生,而是在当前 帧逻辑更新结束后,统一执行。当一个节点销毁后,该节点就处于无效状态,可以通过cc.isValid判断 当前节点是否已经被销毁。

使用方法如下:

function () {
    setTimeout(function () {
      this.target.destroy();
    }.bind(this),128);">5000);
  },update: function (dt) {
    if ( !cc.isValid(this.target) ) {
      this.enabled = false;
      return;
    }

    this.target.rotation += dt * 10.0;
  },});

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...