hey,
i am trying to making a simple game, but face a problem. I want to remove MC form Array and stage.
- i create small box on stage. And store every box in boxArr:Array because i want to play with box later.
when we move cursor on box. box color have been changed. and selected box index stored in selectedArr:Array;
when i clicked on red btn. All box should be remove form stage besides of selected box…
Please check below code
package {
import flash.display.*;
import flash.events.*;
import flash.geom.ColorTransform;
public class Main extends MovieClip {
var box:boxMc;
var boxArr:Array;
var selectArr:Array;
var unselectArr:Array;
var myIndex:Number=0;
var btnMc:MovieClip;
var hit:Number=0;
public function Main() {
boxArr =[];
selectArr = [];
unselectArr =[];
for (var i:Number=0; i<= 2500; i++) {
box = new boxMc;
box.myIndex = i;
box.width = 1000/50;
box.height = 700/50;
box.x = box.width*(i%50);
box.y = Math.floor(i/50)* box.height;
box.addEventListener(MouseEvent.MOUSE_MOVE, changeColor);
boxArr.push(box);
addChild(box);
}
btnMc = new btn;
btnMc.x = 50;
btnMc.y = 50;
this.addChild(btnMc);
btnMc.addEventListener(MouseEvent.CLICK, removeBox);
//trace("Start"+boxArr.length);
}
// change color +++++++++++
function changeColor(e:MouseEvent) {
var newColorTransform:ColorTransform = e.currentTarget.transform.colorTransform;
newColorTransform.color = 0x336699;
e.currentTarget.transform.colorTransform = newColorTransform;
hit = e.currentTarget.myIndex;
selectArr.push(boxArr[hit]);
boxArr.splice(hit, 1);
}
function removeBox(e:MouseEvent) {
for (var i:Number=0; i<boxArr.length; i++) {
removeChild(boxArr*);
boxArr.splice(i , 1);
}
}
}
}