creator笔记

一个最简单的单例模式。

var AssertManager = cc. Class({
statics: {
instance: null
},

properties: {
},

// update (dt) {},
});

AssertManager.instance = new AssertManager();
module. exports = AssertManager;


开启碰撞检测,第三行为是否显示碰撞区域,默认为false,需要的话可以打开。

let manager = cc.director. getCollisionManager();
manager.enabled = true;
// manager.enabledDebugDraw = true;

在项目设置里勾选碰撞,勾选之后才能检测到碰撞


这里我勾选的是bubbleItem可以和bubbleItem碰撞,因为我每一个项目都是克隆的,所以这里都叫同一个名字。

添加监听有两个方法,一个是只会在开始碰撞的瞬间进入onCollisionEnter.

还有一个碰撞的过程中会不断触发 onCollisionStay,两个参数分别是自己和被碰到的物体(other,self).

设置颜色,cc.Color,有一些常用的宏,比如BLACK,RED(cc.Color.BLACK)

creator中用来本地存储的方法,有getItem和setItem两种,需要注意的是读出来的数据都是字符串,就像今天我遇到的我存的是1,读出来直接使用拿到的数据加1,结果得到了11,所以如果要对拿到的数据做加法处理,最好使用praseInt()方法先转为数字,然后再去加。减法不需要的,可以直接减,不过处理一下养成良好的习惯也是很好的。区别于lua,js中只有toString()方法,没有toNumber()方法。

cc.sys.localStorage. getItem( "GameLv");


生成随机数:

let offsetX = Math. floor( Math. random() * 100);
let offsety = Math. floor( 100 - Math. random() * 100);

Math.random()生成的是0-1之间的随机数,有很多位小数。配合floor使用很方便。

js同样有ceil,floor,round方法,分别是向上取整,向下取整,四舍五入。

我要做一个列表,图片都不一样,所以想用循环去动态加载不同的的图片,看文档提供的加载plist文件方法,然后总是报错,最后找了个折中的办法,就是做一个SpriteFrame的列表,然后放一张图片,根据Id改变图片的Frame。下边是列表,在列表中将图片一个个拖进去。

skinNodeList:{
default:[],
type:cc.SpriteFrame
},


在载入的过程中去改变图片的SpriteFrame属性,就实现了动态加载。

self.skin. getComponent(cc.Sprite).spriteFrame = self.skinNodeList[data.lv - 1];

vsCode隐藏掉.meta文件,"**/*.meta":true



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值