Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    13

    Codice da niubbo e problema...

    Lo so che sembro proprio un niubbone, ma vi prego che non ne posso più. il
    problema è stato seguire un tutorial in FlashMx 2004 e usare Flash 8 che
    forse ha una semantica diversa.

    Allora ho due scene, la prima "preloader" , la seconda "intro". In preloader
    ho messo sulla timeline principale una clip animata di 1 secondo, la quale
    ha al frame 30 un semplice gotoandplay (1) per loopare senza saltelli. C'è
    anche un livello sound con un suono di 1 secondo con metodo Avvio. Nel 1
    frame del livello dove c'è la clip animata, invece ho messo lo script
    seguente per ottenere l'effetto preloader.

    if (_root.Intro._framesloaded>=_root.Intro._totalfram es) {
    gotoAndPlay("Intro", 1);
    }

    Nella scena intro, c'è solo 3 secondi di immagine statica per provare.

    Risultato? Ottengo solo che loopa all'infinito il preloader senza mai
    passare alla scena "Intro".

    Dove sbaglio?


  2. #2
    mamma mia ...
    e che tutorial stai seguendo???

    mai vista una cosa simile ...
    manco quando usavo flash -1 ...

    ora devo scappare ...
    stasera ti posto un codice pulito per fare un preload che funzioni a dovere ...

    PS: prova intanto a fare una ricrca sul sito.
    ho visto un miliardo di post simili al tuo e ai quali avranno gia risposto in tanti ...
    altrimenti a stasera ...
    Non è bello ciò che e bello ...
    Ma che bello che bello che bello ...

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    13
    Grazie salsero, comunque ricerco, ma attendo comunque un tuo codice che mi sarà sicuramente utile. Ma tra FLMX2004 e FL8 ci sono differenze nella semantica? E il tuo codice andrebbe bene anche con l'8?

    Ora temo di esagerare, ma mi posteresti anche un codice che prevederebbe l'aumento percentuale, oppure di bytes scaricati che personalmente mi piace molto?

  4. #4
    Originariamente inviato da gauss
    Grazie salsero, comunque ricerco, ma attendo comunque un tuo codice che mi sarà sicuramente utile. Ma tra FLMX2004 e FL8 ci sono differenze nella semantica? E il tuo codice andrebbe bene anche con l'8?

    Ora temo di esagerare, ma mi posteresti anche un codice che prevederebbe l'aumento percentuale, oppure di bytes scaricati che personalmente mi piace molto?
    ok fai cmq due scene nella prima ci mettiamo il preload

    crei due fotogrammi nel primo ci metti questo

    // Assegno i valori
    car = _root.getBytesLoaded();
    tot = _root.getBytesTotal();
    larghezza = 100;
    perc = Math.ceil((car*100)/tot);
    //Inserisco nella casella il totale percentuale
    progres = perc + "%";

    // Allungo la barra e la posiziono in modo fisso sull'asse X
    setProperty("barra", _xscale, (perc*larghezza)/100);
    setProperty("barra", _x,416);
    // Controllo lo stato di avanzamento
    if (car == tot) {
    gotoAndstop("Filmato", "inizio-filmato");
    }

    nel secondo
    gotoAndPlay(1);


    poi metti un'etichetta nel primo frame della scena principale

    poi
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  5. #5
    ops ancora nn ho finito
    dato che quel codice prevede l'utilizzo di una barra di avanzamento e di una casella di testo con i byte caricati

    cmq quindi a questo punto ti basta creare una barra la trsformi in movieclip e poi ci metti nome istanza barra e la metti nello stage
    poi vicino alla barra metti una casetta di testo dinamica come var
    progres

    a questo punto dovrebbe fungere

    ciao
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    13
    Scusami ti chiedo solo due precisazioni, non mi ammazzare...

    >poi metti un'etichetta nel primo frame della scena principale

    cosa intendi per mettere un'etichetta?

    >ok fai cmq due scene nella prima ci mettiamo il preload
    >crei due fotogrammi nel primo ci metti questo

    I due fotogrammi da creare intenddi nel primo livello dello stage principale della scena dove c'è il preload (suppongo come clip animata) vero?

    Ogni parola sprecata in più adesso, sarà un desiderio in più che potrai chiedere al mio fantasma quando morirò

  7. #7
    cosa intendi per mettere un'etichetta?
    Le etichette servono per rendere più "elastica" l'identificazione del punto della timeline dove andare.
    Se il primo frame della tua scena ha un'etichetta "inizio" scrivere gotoAndPlay("inizio") oppure gotoAndPlay(1) è la stessa cosa.
    Il vantaggio di usare le etichette è che se, per caso, hai necessità di spostare l'inizio della tua animazione al frame 3, basta che sposti anche l'etichetta a quel frame ... lasciando il codice uguale.
    Senza etichetta dovresti andare a correggere il codice in gotoAndPlay(3) ... mentre usando un'etichetta il codice non lo devi può toccare dato che gotoAndPlay("inizio") farà sempre riferimento al frame etichettato con "inizio" indipendentemente che sia il 1 o il 345esimo.
    Come si mette un etichetta?
    Seleziona con il mouse un frame, ti accorgerai che nella palette properties è presente una scritta Frame con un campo di testo sotto ... semplicemente dentro quel campo di testo scrivi il nome dell'etichetta.

    I due fotogrammi da creare intenddi nel primo livello dello stage principale della scena dove c'è il preload (suppongo come clip animata) vero?
    Esatto i 2 frame li devi creare nella scena dov'è presente il preload, questo perchè ti serviranno per creare un loop fra i due frame della prima scena finchè la condizione di caricamento non è verificata ... una volta verificata passi al frame dove inizia la tua animazione.
    Ci sono cmq tanti metodi per fare un preload, puoi per esempio associarlo ad un movieclip sfruttando così l'evento enterFrame degli mc per fare un controllo continuo oppure creandoti una funzione preloader che vai a chiamare ad intervalli di tempo predefiniti.
    Esempio stupido di preload con il setInterval:
    Crei 2 frame, nel primo piazzi nello stage un campo di testo dinamico al cui associ la variabile progres ... nel secondo ci metti la tua animazione.
    Al primo frame associa il seguente codice:
    codice:
    stop();
    function preloader() {
    	car = _root.getBytesLoaded();
    	tot = _root.getBytesTotal();
    	perc = Math.ceil((car*100)/tot);
    	progres = "Caricamento in corso "+perc+"%";
    	if (car == tot) {
    		_root.play();
    		clearInterval(a);
    	}
    }
    a = setInterval(preloader, 10);
    Praticamente non fai altro che richiamare la funzione preloader una volta ogni 10 millisecondi, ogni volta incrementando la variabile perc.
    Quando la condizione dell'if è verificata (ovvero quando il totale dei bytes totali corrisponde a quelli caricati) fa ripartire la root (che quindi andrà al secondo frame dove ci sarà la tua animazione) ed elimina la chiamata ciclica alla funziona di preload.
    Ovviamente puoi metterci dentro tutte le cose che ti pare per "abbellire" il preloader (barra di caricamento ecc).

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    13
    Ti ringrazio, sei stato veramente esaustivi, un'ultima cosa:

    >Ovviamente puoi metterci dentro tutte le cose che ti pare per "abbellire" il preloader (barra di caricamento ecc).

    fermo restando che sono in grado di creare graficamente ciò che mi serve, cosa intendi per "metterci dentro"?

    Se ad esempio (vediamo una cosa strana che mi viene in testa) il preloader è dato da una sfera che si muove secondo un percorso guida, e che magari alcuni punti di tale guida corrispondono ad una percentuale (magari 4 punti ovvero 25% , 50%, 75% e 100%) e la guida ovviamente per creare più casino possibile sia una linea spezzatissima, come posso:

    a) adeguare ai bytes caricati e dunque ad una percentuale raggiunta che la sfera debba muoversi dal punto iniziale al punto 25%

    b) sempre riguardo al "metterci dentro", tutto quel popò di roba del punto a) dovrebbe essere una clip animata? E dove la metterei dentro in tal caso?

    Ehm, ho chiesto una cosa troppo strana?

  9. #9
    uhm ..
    non hai detto una cosa impossibile...
    ma difficile sicuramente.
    per fare una cosa del genere dovresti avere una conosceza abbastanza approondita dell'action script ed eventualmente una buona dimistichezza con le funzioni ...
    Non è bello ciò che e bello ...
    Ma che bello che bello che bello ...

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    13
    Nessuno che magari si sperimenta, mettendo un commento ogni rigo o quasi per capire la logica? Magari potrebbe non essere utile solo a me, se qualche guru riesce, ben venga a favore della comunità e mia

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.