项目说明:多个小球碰到sep4(横向激光道具),会触发碰撞逻辑,同时在障碍物数组( this.barrierManager.barriers)遍历和sep4坐标Y(this.moveNum)相同的障碍物,当坐标Y相同,则障碍物执行addLaserScore();
问题:假设是3个小球(A,B,C)碰撞,有4个障碍物坐标Y相同。断点的时候发现:在for循环里面,可能前面两个A,B小球的碰撞逻辑都对,但是最后一个小球C碰撞时,for循环只会遍历到1~3个障碍物。不知道是哪里出了问题?
这个碰撞逻辑写在sep4上的
onCollisionEnter: function (other, self) {
if(self.node.name == “sep4”){
for(var i =0;i<this.barrierManager.barriers.length;i++){
if(this.moveNum == this.barrierManager.barriers[i].moveNum){
console.log(“查找到一个相同,调用横向激光”+i);
this.barrierManager.barriers[i].addLaserScore();
}
}
}