您的位置:首页 > 移动开发 > Cocos引擎

Cocos Creator脚本开发(一)

2016-07-25 14:52 483 查看
创建组件脚本:在 Cocos Creator 中,脚本也是资源的一部分。你可以在资源编辑器中通过点击”创建”按钮来添加并选择 JavaScript 或者 CoffeeScript 来创建一份组件脚本。

脚本创建好之后,就可以自己选择自己喜好的编译器去对脚本进行编译,当编辑完脚本并保存,Cocos Creator 会自动检测到脚本的改动,并迅速编译。脚本的慨念就是为节点添加一个组件。

一分简单的脚本如下:

cc.Class({
extends: cc.Component,

properties: {
},

// use this for initialization
onLoad: function () {
},

// called every frame, uncomment this function to activate update callback
update: function (dt) {
},
});


cc.Class 是一个很常用的 API,用于声明 Cocos Creator 中的类,为了方便区分,我们把使用 cc.Class 声明的类叫做 CCClass。

调用 cc.Class,传入一个原型对象,在原型对象中以键值对的形式设定所需的类型参数,就能创建出所需要的类。

//用 cc.Class 创建了一个类型,并且赋给了 Sprite 变量。
var Sprite = cc.Class({
name: "sprite"
});


//Sprite 变量保存的是一个 JavaScript 构造函数,可以直接 new 出一个对象
var obj = new Sprite();


需要做类型判断时,可以用 JavaScript 原生的 instanceof。

//使用 ctor 声明构造函数
var Sprite = cc.Class({
ctor: function () {
cc.log(this instanceof Sprite);    // true
}
});
//Component 是特殊的 CCClass,不能定义构造函数,它的构造职能可由 onLoad 方法代替。


继承:分为子类和父类,使用 extends 实现继承

// 父类
var Shape = cc.Class();

// 子类
var Rect = cc.Class({
extends: Shape
});


继承后,CCClass 会统一自动调用父构造函数,你不需要显式调用。

var Shape = cc.Class({
ctor: function () {
cc.log("Shape");    // 实例化时,父构造函数会自动调用,
}
});

var Rect = cc.Class({
extends: Shape
});

var Square = cc.Class({
extends: Rect,
ctor: function () {
cc.log("Square");   // 再调用子构造函数
}
});

var square = new Square();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: