Есть цикл создания блоков:

Код AS3:
for (var i:int = 0; i < 10; i++) {
for (var j: int = 0; j < 22; j++) {
if (lvlArray[ij] == 0) {
block = new StBlock ();
block.graphics.beginBitmapFill(bg);
block.graphics.drawRect(0,0,25,25);
block.graphics.endFill();
block.x= j*25;
block.y = i*25 + 75;
addChild(block);
block.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver);
block.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut);
}
ij ++;
}
}
Весь ужас начинается при попытке сделать эффект "при наведении мыши" при помощи следующих функций:

Код AS3:
function OnMouseOut (e: MouseEvent) : void {
this.graphics.beginBitmapFill(bg);
this.graphics.drawRect(0,0,25,25);
this.graphics.endFill();
}
function OnMouseOver (e: MouseEvent) : void {
this.graphics.beginFill(0x006600);
this.graphics.drawRect(0,0,25,25);
this.graphics.endFill();
}
Функции рисуют квадраты не на месте блоков, а вообще где-то рандомно.