so im trying to make a grid of randomly colored squares that change colors every frame, I can’t seem to find whats wrong with my code.
ps just copy and paste, everything is dynamically created.
import flash.display.Graphics;
import flash.display.Sprite;
import flash.geom.ColorTransform;
import flash.events.Event;
//some settings
var boxHeight:Number = 50;
var boxWidth:Number = 50;
var numRows:Number = stage.stageWidth/boxWidth;
var numCols:Number = stage.stageHeight/boxHeight;
var cols:Array = new Array();
//
//the for loop that builds our color boxes
for (var i:Number = 0; i<numCols; i++) {
for (var j:Number = 0; j<numRows; j++) {
cols* = new Array();
cols*[j] = new Sprite();
cols*[j].graphics.beginFill(randomColor());
cols*[j].graphics.drawRect(boxWidth*j, boxHeight*i, boxWidth, boxHeight);
cols*[j].graphics.endFill();
addChild(cols*[j]);
}
}
//
//the onenterframe that changes our boxes colors useing color transform
var myColor:ColorTransform = new ColorTransform();
stage.addEventListener(Event.ENTER_FRAME, changeColors);
function changeColors(E:Event) {
for (var i:Number = 0; i<numCols; i++) {
for (var j:Number = 0; j<numRows; j++) {
myColor.color = new uint(0x66ff00);
cols*[j].transform.colorTransform = myColor;
//trace(randomColor());
}
}
}
//
//old code
/*var myColor:ColorTransform = new ColorTransform();
myColor.color = randomColor();
cols*.transform.colorTransform = myColor;*/
//
//some functions the above code uses
function randomColor():uint {
var colorArray:Array = new Array("0x");
for (var i:Number = 1; i<=3; i++) {
colorArray* = Math.floor(Math.random() * (255 - 0 + 1)) + 0;
colorArray* = colorArray*.toString(16);
}
var unitNum:uint = new uint(colorArray.join(""));
return unitNum;
}
function randRange(min:Number, max:Number):Number {
var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;
return randomNum;
}