OK, so I have an array that’s pulling movieclips from my libraray using Linkage IDs. How do I change this so that it’s pulling the images from an xml file instead in order to reduce file size?
XML file:
<?xml version="1.0" encoding="utf-8"?>
<gallery>
<item>
<image>images/a2.jpg</image>
<thumbnail>images/a2big.jpg</thumbnail>
</item>
<item>
<image>images/al.jpg</image>
<thumbnail>images/albig.jpg</thumbnail>
</item>
<item>
<image>images/at.jpg</image>
<thumbnail>images/atbig.jpg</thumbnail>
</item>
<item>
<image>images/bc.jpg</image>
<thumbnail>images/bcbig.jpg</thumbnail>
</item>
etc...
</gallery>
Actionscript for my array:
import com.greensock.TweenMax;
import com.greensock.easing.*;
var linkageID_array:Array = new Array();
var numRows:Number = 6;
var numColumns:Number = 8;
var counter:Number = 0;
//put linkage string references in array
for (m=1; m<49; m++) {
linkageID_array.push("pic"+m);
}
// shuffle function
shuffle = function (targetArray) {
for (i=0; i<targetArray.length; i++) {
var tmp = targetArray*;
var randomNum = random(targetArray.length);
targetArray* = targetArray[randomNum];
targetArray[randomNum] = tmp;
}
};
// shuffle linkage array
shuffle(linkageID_array);
// attach mc in grid
var _MAIN = this;
var maxAmt = ((Stage.width>Stage.height) ? Stage.width : Stage.height)+100;
var minAmt = -100;
for (k=0; k<numColumns; k++) {
for (i=0; i<numRows; i++) {
var mc:MovieClip = _MAIN.attachMovie(linkageID_array[counter], linkageID_array[counter], _MAIN.getNextHighestDepth());
counter++;
mc._x = 199*i;
mc._y = 199*k;
mc.onRollOver = function() {
TweenMax.from(this.pc.ovr,0.4,{colorMatrixFilter:{contrast:2, brightness:1.7}});
};
mc.onRollOut = function() {
TweenMax.to(this.pc.ovr,0.2,{colorMatrixFilter:{amount:0}});
};
mc.onRelease = function() {
TweenMax.to(_root.mgrid,1.5,{_y:-2000, delay:.3, ease:Quad.easeOut});
attachMovie(this+"big", this+"new", this.getNextHighestDepth);
};
}
}