从Unity到Cocos

Cocos 一些常用 API

2021-04-29  本文已影响0人  zitaoye

新手容易出问题的地方:

将回调函数直接调用的结果传入,应该传入函数名。

忘记加this

通过自己的代码来实现按钮的isPressed的操作

this.leftMoveButton.node.on(cc.Node.EventType.TOUCH_START,function(){ this.inputParameter = -1;},this);
this.rightMoveButton.node.on(cc.Node.EventType.TOUCH_START,function(){ this.inputParameter = 1;},this);
this.leftMoveButton.node.on(cc.Node.EventType.TOUCH_END,this.stopMove,this);
this.rightMoveButton.node.on(cc.Node.EventType.TOUCH_END,this.stopMove,this);
this.leftMoveButton.node.on(cc.Node.EventType.TOUCH_CANCEL,this.stopMove,this);
this.rightMoveButton.node.on(cc.Node.EventType.TOUCH_CANCEL,this.stopMove,this);

1 爆破点点

【Cocos Creator教程】100行代码制作一款小游戏《爆破点点》| 休闲小游戏开发教程-001

cc.winSize.height

particle.resetSystem()

component.schedule(function() {this.doSomething(); }, 5); 使用 计时器

Math.random()

通过距离判断相撞

if(this,playerNode.position.sub(this,enemyNode.position).mag()<this.playerNode.width/2+this.enemyNode.width/2){}

使用 缓动系统 来代替Action动作系统

2 消消乐

【Cocos Creator教程】100行代码制作一款小游戏《同色消消乐》| 休闲小游戏开发教程-002

一整张的精灵图集SpriteAtlas的使用与切换

let frames = this.ballAtlas.getSpriteFrames();
let sprite = this.node.getComponent(cc.Sprite);
let index = + sprite.spriteFrame.name;
//通过加号转换成整数形式
let nextIndex = index+1;
sprite.spriteFrame = frames[nextIndex % frames.length];

Layout的格子Grid方式来处理
cc.Instantiate() 并且调用 node.addChild() 进行添加

数组的使用方式

this.ballNodeArr = [];
this.ballNodeArr.push(ballNode);

在JavaScript里似乎是可以通过
this.ballCount = 4; 直接创建变量进行定义

整数随机方法
let randIndex = parseInt(Math.random()*typeCnt)

全局变量
window.game = this

建议通过模块化的方式进行引用 | 访问节点和其他组件

模版字符串,使用反引号以及 ${}

上一篇 下一篇

猜你喜欢

热点阅读