for (var kk:uint=0; kk<sameqiuTotal.length; kk++) { music.disapearSound.play(); var pointBurst:wenben = new wenben(sameqiuTotal[kk].parent,"+1",sameqiuTotal[kk].x,sameqiuTotal[kk].y); removeChild(sameqiuTotal[kk]); bubbleArray[getRow(sameqiuTotal[kk])][getCol(sameqiuTotal[kk])] = null; sameqiuTotal[kk] = null; }
时间: 2023-12-30 22:04:45 浏览: 132
这段代码是在消除同色气泡时,遍历sameqiuTotal数组中的元素,播放消除音效,产生加分效果,然后从显示列表中移除元素,将对应的bubbleArray中的位置设置为null,表示该位置已经没有元素了,最后将sameqiuTotal数组中的元素也设置为null。这样做的目的是为了释放内存,避免可能的内存泄漏问题。
相关问题
if (sameqiuTotal.length>2) { checkNum =0; addEventListener(Event.ENTER_FRAME,startEff); //下面是消除时的效果 var ay:Number = 0.2; var vy:Number =0; function startEff(e:Event):void { for (var k:uint=0; k<sameqiuTotal.length; k++) { vy += ay; sameqiuTotal[k].y += vy; sameqiuTotal[k].alpha *=0.7; if (sameqiuTotal[0].alpha <0.1) { //trace("IS"); for (var kk:uint=0; kk<sameqiuTotal.length; kk++) { music.disapearSound.play(); var pointBurst:wenben = new wenben(sameqiuTotal[kk].parent,"+1",sameqiuTotal[kk].x,sameqiuTotal[kk].y); //trace(sameqiuTotal[kk].parent); removeChild(sameqiuTotal[kk]); bubbleArray[getRow(sameqiuTotal[kk])][getCol(sameqiuTotal[kk])] = null; sameqiuTotal[kk] = null; }
这段代码看起来是某个消除游戏的消除动画效果实现,sameqiuTotal是一个数组,里面存储的是被消除的元素,addEventListner用于监听帧事件,startEff函数是回调函数。在startEff函数中,对数组中的元素进行了逐个下落的效果,并且透明度逐渐降低,直到透明度小于0.1时,将元素从数组和显示列表中移除,并将对应的bubbleArray中的位置设置为null,表示该位置已经没有元素了。在移除元素时,还播放了音效,并且产生了加分效果。
阅读全文