现在基本的游戏场景已经搭建起来了,主角小猫也添加到场景中了

  1. 要让场景“活”了,小猫能跳跃,还需要编写脚本,才能实现
  2. 在资源管理器assets目录下新建script目录
  3. 在script下新建JavaScript脚本,命名为Player
  4. 双击脚本,打开代码编辑器

注意

Cocos Creator中脚本名称就是组件的名称,这个命名是大小写敏感的!
如果组件名称的大小写不正确,将无法正确通过名称使用组件!

打开的Player脚本里已经有预先设置好的一些代码块,如下所示

  1. cc.Class({
  2. extends: cc.Component,
  3. properties: {
  4. // foo: {
  5. // default: null, // 只有当组件作为节点触发时默认值才会被使用
  6. // type: cc.SpriteFrame,
  7. // serializable: true,
  8. // },
  9. // bar: {
  10. // get () {
  11. // return this._bar;
  12. // },
  13. // set (value) {
  14. // this._bar = value;
  15. // }
  16. // },
  17. },
  18. // 生命周期回调
  19. // onLoad () {},
  20. start () {
  21. },
  22. // update (dt) {},
  23. });

首先可以看到一个全局的cc.Class()方法,这个方法用于声明CocosCreator中的类

Class()方法的参数是一个原型对象

在原型对象中以键值对的形式设定所需的类型参数,就能创建出需要的类

➢extends属性的值是cc.Component

表明当前脚本是一个组件

➢脚本中的所有属性都定义在properties里

如foo属性
默认值是null
类型是cc.SpriteFrame
serializable为true
表示可以序列化

➢start是组件的生命周期函数

会在组件第一次激活前,也就是第一次执行update之前触发

start通常用于初始化一些中间状态的数据

➢update函数会在每一帧渲染前调用

用于在渲染前更新物体的行为、状态和方位

下面给主角小猫添加属性,找到Player脚本里的properties部分,将其改为以下内容并保存

  1. properties: {
  2. // 主角跳跃高度
  3. jumpHeight: 0,
  4. // 主角跳跃持续时间
  5. jumpDuration: 0,
  6. // 最大移动速度
  7. maxMoveSpeed: 0,
  8. // 加速度
  9. accel: 0,
  10. },

接下来把Player组件添加到主角节点上

在层级管理器中选中Player节点

然后在属性检查器中单击“添加组件”按钮

选择添加用户脚本组件-> Player

为主角节点添加Player组件,如图8.33所示。

image.png

之后在属性检查器中(需要选中Player节点)就看到了刚添加的Player组件

按照图8.34将主角跳跃和移动的相关属性设置好

image.png