Hi list,

I am facing a problem I can´t solve, and since now, thanks a lot for any
help.


I am loading images and preloading them...ok, nothing new.
For this, I am using loadClip and onLoadProgress to update their
bytesLoaded and bytesTotal, so I can preload them perfectly.
The amount of images to load, vary according to the clicked item.
When I try this local, works perfectly, the bytes amount are updated as it
should, but when I try it online,
it just doesn´t work.

When I load images and they are not cached:
getBytesLoaded returns: undefined
getBytesTotal returns: undefined

But when they finish to load, and when they start to load when already
cached:
getBytesLoaded returns: correct size
getBytesTotal returns: always 0

Here is the code:

var mcl:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
mcl.addListener(listener);

var totalLoaded = 0;
var loaderTime = 0;

function loadImagesToHolders() {
    var totalToLoad = txtImagensServicosXML[dataID1][dataID2].length;
    //totalImgsToLoad doubles cause it loads both mini and big images
    var totalImgsToLoad = totalToLoad*2;
    totalLoaded = 0;
    listener.onLoadComplete = function(mc:MovieClip):Void  {
        totalLoaded++;

        var id1 = mc._name.slice(5, 6);
        var id2 = mc._name.slice(7, 8);
        if (totalLoaded == totalImgsToLoad) {

            clientes.onEnterFrame = function() {
                if (barFullandLoaded == true) {
                    this.onEnterFrame = null;
                    barFullandLoaded = false;
                    if (processStopped == false) {
                        loader.bar.gotoAndStop(1);
                        clientesLoaded();
                    }
                }
            };
        }
    };

    //waste of code, temp used cause of old problems
    mcTotalLoaded = null;
    mcTotalSize = null;
    totalL = null;
    totalS = null;
    //end of waste of code
    var mcTotalLoaded:Array = new Array(totalToLoad);
    var mcTotalSize:Array = new Array(totalToLoad);
    var thePercent = 0;
    var barFullandLoaded = false;
    listener.onLoadProgress = function(mc:MovieClip):Void  {
        var mcID = mc._name.slice(-1);
        mcTotalLoaded[mcID] = mc.getBytesLoaded ();
        mcTotalSize[mcID] = mc.getBytesTotal();
    };
    loaderTimer = getTimer();
    loader.onEnterFrame = function() {
        totalL = 0;
        totalS = 0;
        for (var i:Number = 0; i<totalToLoad; i++) {
            totalL += mcTotalLoaded[i];
            totalS += mcTotalSize[i];
        }
        thePercent = Math.ceil((totalL/totalS)*100);
        if (thePercent>(loader.bar._currentframe*2) &&
loader.bar._currentframe<50) {
            loader.bar.play();
        } else {
            loader.bar.stop();
        }
        if (loader._visible == true) {
            if (thePercent>=100 && loader.bar._currentframe == 50) {
                barFullandLoaded = true;
                loader.onEnterFrame = null;
            }
        } else {
            if (thePercent>=100 && getTimer()>=Number(loaderTimer+1000)) {

                barFullandLoaded = true;
                loader.onEnterFrame = null;
            }
        }
        if (getTimer()>=Number(loaderTimer+2000) &&
loader.bar._currentframe<=45) {
            loader._visible = true;
        }
    };

    for (var i:Number = 0; i<totalToLoad; i++) {
        clientes.createEmptyMovieClip("img_p"+dataID1+"_"+dataID2+"_"+i,
clientes.getNextHighestDepth());
        clientes["img_p"+dataID1+"_"+dataID2+"_"+i]._x = 2000;
        clientes.createEmptyMovieClip("img_g"+dataID1+"_"+dataID2+"_"+i,
clientes.getNextHighestDepth());
        clientes["img_g"+dataID1+"_"+dataID2+"_"+i]._x = 2000;
        
mcl.loadClip(txtImagensServicosXML[dataID1][dataID2][i][0],clientes["img_p"+dataID1+"_"+dataID2+"_"+i]);

        mcl.loadClip
(txtImagensServicosXML[dataID1][dataID2][i][1],clientes["img_g"+dataID1+"_"+dataID2+"_"+i]);
    }
}



Thanks a lot for any help!
Helios

_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com

Reply via email to