What you will need to do is to loop through all the MoveiClips you have and randomly select some to be set to be invisible.
To make the MovieClips invisible we will set their visible property to false which will hide them.
Since you have no supplied us with any of your current code, I will attempt to create some to fit your needs.
function icon_rollOver(e:MouseEvent):void {
for (var i:uint = 0; i < holderMC.numChildren; i++) {
if (holderMC.getChildAt(i) != e.target) {
holderMC.getChildAt(i).visible = Math.random() > 0.5;
}
}
}
function icon_rollOut(e:MouseEvent):void {
for (var i:uint = 0; i < holderMC.numChildren; i++) {
holderMC.getChildAt(i).visible = true;
}
}
// Add icon_rollOver and icon_rollOut as events to each of your MovieClips
That code should do the trick. I'm not currently in a position where I can test the code however, so there may be an error or two; however that is the basic principle.
holderMC is the MovieClip where each of the icons is stored. If there are other MovieClips inside this holderMC that are not icons, then some slightly more complex code would be needed, or for these non-icons to be moved into another container.
When the icon_rollOver function is called, it will loop over every MovieClip inside holderMC and then check to see if it is the same as e.target where e is the event. The target property refers to the object that dispatched the event, so in this case should be the MovieClip that was rolled over. If the current child is NOT the one where have rolled over, then set it's visibility to a conditional equating to whether a random number (between 0 and 1) is greater than .5. I.E. there is a 50% chance the MovieClip will be made invisible.
When the icon_rollOut function is called, we again loop over every MovieClip inside holderMC but then just set the visibility to be true no matter what. This will make EVERY MovieClip in holderMC visible.
I hope that is enough to help you with your project. Good luck!