做的消消乐消除特效 复用的比较多 所以使用了对象池
let particle = cc.loader.getRes(“res/particle/particle_Piece_” + color, cc.ParticleAsset)
let node = null//
let script = brick.getComponent(fangkuai)
for (let i = 0; i < script.mark; i++) {
if (this.pool.size() > 0) {
node = this.pool.get();
console.log(“取出一个节点”)
} else {
node = new cc.Node();
node.addComponent(cc.ParticleSystem)
console.log(“创建一个粒子”)
this.node.addChild(node);
}
node.getComponent(cc.ParticleSystem).file = particle;
let point = this.node.convertToNodeSpaceAR(this.fangkuai.convertToWorldSpaceAR(cc.v2(brick.x + 65 * (i + 1 / 2), brick.y)));
node.x = point.x;
node.y = point.y;
node.getComponent(cc.ParticleSystem).resetSystem();
node.getComponent(cc.ParticleSystem).scheduleOnce(function () {
node.getComponent(cc.ParticleSystem).stopSystem();
this.pool.put(node);
console.log("放进一个")
}.bind(this), 4)
}
往后玩的时候取出来的数量没问题 但是播放的特效很少 每次消除取出来的粒子节点最少是8个 播放的却只有两三个 ,求请教 什么问题 手动狗头!!!