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 定义的 properties 字段中,填写属性名字和属性参数即可,在属性检查器中方便查看修改。

编写这些脚本的用处:这些代码就是编写一个组件(脚本)所需的结构。具有这样结构的脚本就是 Cocos Creator 中的 组件(Component),他们能够挂载到场景中的节点上,提供控制节点的各种功能。例如:例子中的Player控制小怪物弹跳,Game产生星星。

完整声明:

properties: {
    score: {
        default: 0,
        displayName: "Score (player)",
        tooltip: "The score of player",
    }
}

以上代码为 score 属性设置了三个参数 default, displayNametooltip。这几个参数分别指定了 score 的默认值为 0,在 属性检查器 里,其属性名将显示为:“Score (player)”,并且当鼠标移到参数上时,显示对应的 Tooltip。

下面是type,displayName等的属性参数:http://docs.cocos.com/creator/manual/zh/scripting/reference/attributes.html

这些参数控制了属性在 属性检查器 中的显示方式,以及属性在场景序列化过程中的行为。

type 参数

default 不能提供足够详细的类型信息时,为了能在 属性检查器 显示正确的输入控件,就要用 type 显式声明具体的类型:

  • 当默认值为 null 时,将 type 设置为指定类型的构造函数,这样 属性检查器 才知道应该显示一个 Node 控件。

      enemy: {
          default: null,
          type: cc.Node
      }
    
  • 当默认值为数值(number)类型时,将 type 设置为 cc.Integer,用来表示这是一个整数,这样属性在 属性检查器 里就不能输入小数点。

      score: {
          default: 0,
          type: cc.Integer
      }
    
  • 当默认值是一个枚举(cc.Enum)时,由于枚举值本身其实也是一个数字(number),所以要将 type 设置为枚举类型,才能在 属性检查器 中显示为枚举下拉框。

      wrap: {
          default: Texture.WrapMode.Clamp,
          type: Texture.WrapMode
      }
    
发布了2 篇原创文章 · 获赞 3 · 访问量 147

猜你喜欢

转载自blog.csdn.net/wb_it_man/article/details/105184432