Fun with kuler

I would like to see what other people can do with this code.
I’m not a good code writer and I’m kinda at the end of my abilities until I learn some more.

any how feel free to play with this kuler app I made.
all drawing is from the api so paste in to a blank file. no library needed

example
http://gfxcomplex.com/labs/kulerApp2.html


var myXML:XML = new XML();
var XML_URL:String = "http://kuler.adobe.com/kuler/services/search/get.cfm?searchQuery=joshchernoff";
var myXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(myXMLURL);
myLoader.addEventListener("complete", xmlLoaded);
import flash.events.TextEvent;

var rgbHex:Array = new Array();
var holder:Array = new Array();

var time:Timer = new Timer(5000);
var countDown:Timer = new Timer(50, 100);

time.addEventListener(TimerEvent.TIMER, changeColor);
countDown.addEventListener(TimerEvent.TIMER, alphaTo);

var nodes1:uint = 0;
var node:uint = 0;



function numRoundTo(n:Number, p:Number):Number {
    return Math.round(Math.pow(10,p) * n) / Math.pow(10,p);
}

function xmlLoaded(event:Event):void {
    myXML = XML(myLoader.data);
    for (var theme in myXML.themeList.theme) {

        var red1 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[0].c1 * 255, 0);
        var green1 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[0].c2 * 255, 0);
        var blue1 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[0].c3 * 255, 0);
        var rgb1 = hexColor(red1,green1,blue1);

        var red2 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[1].c1 * 255, 0);
        var green2 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[1].c2 * 255, 0);
        var blue2 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[1].c3 * 255, 0);
        var rgb2 = hexColor(red2,green2,blue2);

        var red3 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[2].c1 * 255, 0);
        var green3 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[2].c2 * 255, 0);
        var blue3 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[2].c3 * 255, 0);
        var rgb3 = hexColor(red3,green3,blue3);

        var red4 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[3].c1 * 255, 0);
        var green4 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[3].c2 * 255, 0);
        var blue4 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[3].c3 * 255, 0);
        var rgb4 = hexColor(red4,green4,blue4);

        var red5 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[4].c1 * 255, 0);
        var green5 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[4].c2 * 255, 0);
        var blue5 = numRoundTo(myXML.themeList.theme[theme].swatches.swatch[4].c3 * 255, 0);
        var rgb5 = hexColor(red5,green5,blue5);


        //trace (hexColor(red,green,blue));
        rgbHex[theme] = rgb1;
        rgbHex[theme] = rgb2;
        rgbHex[theme] = rgb3;
        rgbHex[theme] = rgb4;
        rgbHex[theme] = rgb5;


        holder[theme] = new Sprite();
        addChild(holder[theme]);

        var square1:Sprite = new Sprite();
        square1.graphics.beginFill(rgb1);
        square1.graphics.drawRoundRect(0, 0, 75, 150, 10, 0);
        square1.graphics.endFill();
        holder[theme].addChild(square1);

        var square2:Sprite = new Sprite();
        square2.graphics.beginFill(rgb2);
        square2.graphics.drawRoundRect(75, 0, 75, 150, 10, 0);
        square2.graphics.endFill();
        holder[theme].addChild(square2);

        var square3:Sprite = new Sprite();
        square3.graphics.beginFill(rgb3);
        square3.graphics.drawRoundRect(150, 0, 75, 150, 10, 0);
        square3.graphics.endFill();
        holder[theme].addChild(square3);

        var square4:Sprite = new Sprite();
        square4.graphics.beginFill(rgb4);
        square4.graphics.drawRoundRect(225, 0, 75, 150, 10, 0);
        square4.graphics.endFill();
        holder[theme].addChild(square4);

        var square5:Sprite = new Sprite();
        square5.graphics.beginFill(rgb5);
        square5.graphics.drawRoundRect(300, 0, 75, 150, 10, 0);
        square5.graphics.endFill();
        holder[theme].addChild(square5);
        nodes1 = theme;
        node = theme+1;

/*        var c1:TextField = new TextField();
        c1.x = 0;
        holder[theme].addChild(c1);
        c1.text = "#"+rgb1.toString(16);
        c1.autoSize = TextFieldAutoSize.LEFT;

        var c2:TextField = new TextField();
        c2.x = 75;
        holder[theme].addChild(c2);
        c2.text = "#"+rgb2.toString(16);
        c2.autoSize = TextFieldAutoSize.LEFT;

        var c3:TextField = new TextField();
        c3.x = 150;
        holder[theme].addChild(c3);
        c3.text = "#"+rgb3.toString(16);
        c3.autoSize = TextFieldAutoSize.LEFT;

        var c4:TextField = new TextField();
        c4.x = 225;
        holder[theme].addChild(c4);
        c4.text = "#"+rgb4.toString(16);
        c4.autoSize = TextFieldAutoSize.LEFT;

        var c5:TextField = new TextField();
        c5.x = 300;
        holder[theme].addChild(c5);
        c5.text = "#"+rgb5.toString(16);
        c5.autoSize = TextFieldAutoSize.LEFT;

        var test:TextField = new TextField();
        test.y = 55;
        test.x = 30;

        test.htmlText = "<font size='16' >By: "+myXML.themeList.theme.author.label[theme]+"
Title: <a href=\"http://kuler.adobe.com/index.cfm#themeID/"+myXML.themeList.theme.id[theme]+"\" target=\"_self\">"+myXML.themeList.theme.label[theme]+"</a>
<a href=\"http://kuler.adobe.com/kuler/services/ase/get.cfm?themeId="+myXML.themeList.theme.id[theme]+"\">DownLoad ACE file</a></font>";
        test.autoSize = TextFieldAutoSize.LEFT;
        test.multiline = true;*/
        
        
    }
    time.start();
    
}
function alphaTo(event:TimerEvent) {
    holder[nodes1].alpha -= .1;
/*    holder[nodes1].c1.alpha -= .0;
    holder[nodes1].c2.alpha -= .0;
    holder[nodes1].c3.alpha -= .0;
    holder[nodes1].c4.alpha -= .0;
    holder[nodes1].c5.alpha -= .0;*/
    
    if (holder[nodes1].alpha < .0) {
        countDown.stop();
        nodes1--;
    }
}
    

function changeColor(event:TimerEvent) {
    trace(nodes1);
    trace(holder[nodes1]);
    countDown.start();
    if (nodes1 == 0) {
        for(var i:uint = 1; i<node; i++){
            holder*.alpha = 1;
              /*holder*.c1.alpha = 1;
                holder*.c2.alpha = 1;
                holder*.c3.alpha = 1;
                holder*.c4.alpha = 1;
                holder*.c5.alpha = 1;*/
        }
        nodes1 = node;
    }
}


function hexColor(r:uint,g:uint,b:uint):uint {
    return  r << 16 ^ g << 8 ^ b;
}