Sebenarnya ini bisa diakali pake Class Timer (karena mas michaeltang pake AS 3 jadi pake timer saja lebih mudah) ...
ini script xmlnya :
Code:
<?xml version="1.0" encoding="utf-8" ?>
<data>
<image width="100" height="75">img1.jpg</image>
<image width="100" height="75">img2.jpg</image>
<image width="100" height="75">img3.jpg</image>
</data>
dan ini script untuk load dengan delaynya :
Code:
var _loader:Loader; //loader untuk load gambar
var _XMLLoader:URLLoader = new URLLoader(); //untuk load file xml
var _timer:Timer = new Timer(5000); //untuk memberi delay
var _xml:XML;
var _i:uint = 0; //dibutuhkan untuk perulangan
_timer.addEventListener(TimerEvent.TIMER, onTimer);
_XMLLoader.addEventListener(Event.COMPLETE, onLoadComplete);
_XMLLoader.load(new URLRequest("listImage.xml"));
//handler untuk XMLLoader
function onLoadComplete(event:Event):void {
_xml = new XML(event.target.data);
_timer.start(); //jalankan timer
}
//handler untuk timer
function onTimer(event:Event):void {
//jika nilai _i masih dibawah panjang _xml.image maka tetap load
if (_i <= _xml.image.length() - 1) {
_loader = new Loader();
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoad);
_loader.load(new URLRequest(_xml.image[_i]));
}
else {
_timer.stop();
}
}
//handler untuk loader
function onImageLoad(event:Event):void {
//ini kalo mau image bener" dianggap sebagai image/bitmap, kalo ga dikasih y gpp
var _bitmap:Bitmap = Bitmap(_loader.content);
//tambahkan ke stage
stage.addChild(_bitmap);
//code tambahan untuk penempatan dari bitmap ^_^
if (_i == 0) {
_bitmap.x = 0;
_bitmap.y = 0;
}
else {
_bitmap.x = _i * uint(_xml.image[_i].@width);
_bitmap.y = _i * uint(_xml.image[_i].@height);
}
_i++; //tambahkan nilai _i disini
//flush _loader yang lama (biar memory jadi free)
_loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, onImageLoad);
} lalu ini file yang lengkap ^_^ (disini saia pake Adobe Flash CS4, kalo adanya CS3 ya silahkan copy saja script AS 3 diatas ke frame 1):
Semoga Membantu ^^
Bookmarks