cocos creator小白摸索之路(3)

本文记录了使用cocos creator开发微信飞机大战的过程,主要分享了获取节点和组件的方法、对象池的应用、分数实时更新的实现、schedule函数的理解以及let与var的区别。在开发中注意到在callFunc中不应停止自身动作,以避免潜在的遍历问题和bug。
摘要由CSDN通过智能技术生成

微信飞机大战,只为熟悉cocos creator的属性方法,做了个简单的雏形
1.取节点的子节点用【getChillByName()】,也可以用【cc.find()】,取节点上的组件用【getComponent()】
2.用对象池可以减少性能损耗,比如在hero.js定义一个子弹的对象池

createBulletPool: function() {
        this.bulletPool = new cc.NodePool();
        let initCount = 7;
        for (let i = 0; i < initCount; i++) {
            let bullet = cc.instantiate(this.bulletPrefab);
            this.bulletPool.put(bullet);
        }
    },

这样在bullet.js中如果要讲不用的子弹放回对象池,记得要停止子弹的行为

removeSelf: function() {
        this.node.stopAllActions();
        this.node.getParent().getChildByName("hero").getComponent('hero').bulletPool.put(this.node);
    },

由于子弹会动,所以放回对象池的子弹位置什么的属性会变化,所以在制造子弹的时候要初始化子弹

hero.js:
createBullet: function() {
        let bullet = null;
        if (this.bulletPool.size() > 0) {
            bullet = 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值