Pagina 1 di 6 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 59
  1. #1

    [mx 04] Preloader al 100% con attesa?

    Ciao a tutti,
    nel mio filmato, ho inserito un paio di preloader, nel primo frame perchè mi deve caricare una foto di 30 kb ho scritto:

    onClipEvent (enterFrame) {
    caricati = _root.getBytesLoaded();
    totali = _root.getBytesTotal();
    perc = Math.round((caricati/totali)*100);
    barra._xscale = perc;
    if (caricati == totali) {
    _root.gotoAndStop(3);
    }
    }


    poi al 6° frame lo scaricamento si fa + consistente perchè deve scaricare 334 kb e il codice è lo stesso, l'unica cosa che ilpreloader come tutte le immagini si trovano in un altro file caricato con loadMovieNum

    Il problema è che una volta che la barra avanza ed arriva al 100%,
    le immagini non vengono caricate subito ma ho un ulteriore tempo di attesa..
    Sapreste dirmi cosa devo fare per eliminare l'attesa cha va dalla fine del preloader 100% a caricamento immagini?
    Grazie un Casinò!!

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182

    Re: [mx 04] Preloader al 100% con attesa?

    prova mettendo al posto di caricati == totali --> caricati >= totali

  3. #3
    Ciao And80,
    ho provato ed il risultato è che l'attesa è praticamente la stessa, quando finisce il preloader bisona aspettare ulteriromente che carichi..
    ad ogni modo ho trovato sulla guida una cosa inqietante e cioè:


    "getBytesTotal()

    Metodo; restituisce il numero di byte caricati (ovvero sottoposti a streaming) per l'oggetto Sound specificato. Il confronto tra il valore restituito da getBytesLoaded() e il valore restituito da getBytesTotal() fornisce la percentuale caricata di un suono."



    Ciò significa che sto cercando di fare unpreloader in streaming un suono ed a me non serve, quale altra proprietà posso usare per fargli leggere i byte totali?

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    no, nella guida pesca una solo "spiegazione" controlla che ci sono anche le altre

    vediamo di usare un preloader un pochino più "attuale"
    dammi un paio di notizie in più, a te serve un preload che carichi filmati esterni richiamati con quale funzione?
    hai una barra, un testo ecc? se è così dimmi il percorso assoluto di questi elementi

  5. #5
    cominciamo dalle cose più difficili,
    Nel mio filmato principale, ad un certo punto carico (per ora) un solo file tramite loadMovieNum("finalmente1.swf",2) [l'azione si trova in un frame vuoto a cui accedo tramite un gotoAnd Play(7)]



    In questo file che vado a caricare si trovano nel primo frame una barra di avanzamento ed una casella di testo con nome variabile "perc", sulla barra ho applicato il codice che ti ho già citato nel primo post. Bene, come parte il filmato vengono eseguite le azioni e va al secondo frame dove carico le immagini con il seguente:
    for(i=0;i<16;i++){
    _root["mc"+i].loadMovie("immagini/0"+i+"big.jpg");
    _root["mc"+i]._xscale=_root["mc"+i]._yscale=20

    }


    troppo incasinato?

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    ok ho visto che usi una barra, questo preloader dovrebbe andare senza problemi, attenzione al percorso che metti nel richiamo (se carichi sul clip pippo che sta sulla root, metti _root.pippo se carichi sul livello1 allora metti _level1)

    codice:
    //da mettere nel primo frame del filmato principale
    preload = function(path){
    	caricati = path.getBytesLoaded();
    	totali = path.getBytesTotal();
    	perc = Math.round((caricati/totali)*100);
    	barra._xscale = perc;
    	if(caricati >= totali && caricati > 1024){
    		clearInterval(intv);
    		//altre azioni
    	}
    }
    
    //utilizzo
    intv = setInterval(preload, 100, //clip_o_livello_che_vuoi);

  7. #7
    Ho messo lo script cosi come è nel primo frame e ho tolto quello che si trovava nella barra di avanzamento, purtroppo non mi va e

    mi da questo errore:

    **Errore** Scena=Scena 1, livello=Livello 18, fotogramma=1:Linea 15: L'operatore '=' deve essere seguito da un operando

    Totale errori ActionScript: 1 Errori segnalati: 1


    ho provato ad inserire sia _root che level1 ma..

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da eddydesigner
    cominciamo dalle cose più difficili,
    [...]
    troppo incasinato?
    un po'
    puoi mettere la barra che ti serve nella libreria del filmato principale, concatenarla e "attaccarla" quando ti serve e staccarla quando non è più necessaria, quindi la definizione della funzione la metti al primo frame del filmato principale mentre il richiamo lo metti subito dopo il loadMovieNum nel fotogramma in cui ti serve, con questa nuova situazione, ponendo che il clip che usi come barra di avanzamento sia concatenata con il nome "barra" il mio script diventa così
    codice:
    //da mettere nel primo frame del filmato principale
    preload = function(path){
    	caricati = path.getBytesLoaded();
    	totali = path.getBytesTotal();
    	perc = Math.round((caricati/totali)*100);
    	barra._xscale = perc;
    	if(caricati >= totali && caricati > 1024){
    		clearInterval(intv);
    		removeMovieClip(barra);
    	}
    }
    
    //utilizzo
    loadMovieNum("finalmente1.swf",2)
    attachMovie("barra","barra", 50);
    intv = setInterval(preload, 100, _level2);

  9. #9
    l'unica cosa che ora non vedo + la barra, parte direttamente a scaricare, ovviamente ho esportato per action script il clip con la barra è l'ho chiamato barra(nel filmato principale)

    Lo scrip l'ho messo sul primo frame e il richiamo:
    //utilizzo
    loadMovieNum("finalmente1.swf",2)
    attachMovie("barra","barra", 50);
    intv = setInterval(preload, 100, _level2);

    dove andavo a caricare con loadMovieNum(2)

  10. #10
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    forse non lo vedi perchè è spostato, dopo che lo attacchi gli devi dare anche le coordinate x e y
    codice:
    loadMovieNum("finalmente1.swf",2)
    attachMovie("barra","barra", 50);
    barra._x = 200;
    barra._x = 200;
    intv = setInterval(preload, 100, _level2);

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.