Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: cancellare GetTimer()

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    cancellare GetTimer()

    Ciao,

    come mai questo script non mi funziona?

    codice:
    /////
    // 10 frame
    getTimer () == 0;
    getTimer();
    // 11 frame
    vuoto
    // 12 frame
    ifFrameLoaded (20) {
        if (getTimer()>4000) {
            play ();
        } else {
            gotoAndPlay (11);
        }
    }
    come mai getTimer() == 0;
    non mi cancella il Timer ?
    questo mi serve in quanto devo cancellare un timer precedente


    grazie

  2. #2
    getTimer() è una FUNZIONE che fornisce un valore NON qualcosa che puoi modificare.
    Per fare quello che vuoi devi utilizzare una variabile dove memorizzare il valore restituito da getTimer().

    Il tuo codice va quindi cambiato così:
    codice:
    // 10 frame
    tempo = getTimer ();
    //
    ifFrameLoaded (20) {
        if ((getTimer()-tempo)>4000) {
            play ();
        } else {
            gotoAndPlay (11);
        }
    }
    A dire il vero c'è qualcos'altro in questo script che NON va, ma per adesso mi sono focalizzato sul getTimer().

    Spiega meglio cosa vorresti fare...

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    grazie

    Grazie per l'aiuto....

    Lo so..lo so...come sviluppatore flash non valgo una cicca

    La mia intenzione sarebbe quella di fare una carrellata di foto e queste cambiano dopo un tot di secondi sempre se prima il frame in cui sono contenute è stato caricato..ecco perchè ifFrameLoaded()
    Il codice è errato a parte il GetTimer?
    ciao

  4. #4
    una possibile soluzione:
    che le foto siano al frame 20, 30, 40 ecc. ...
    codice:
    // in un frame qualsiasi prima del frame 20
    stop();
    _root.onEnterFrame = function () {
       ifFrameLoaded (20) {
          delete this.onEnterFrame;
          play ();
       }
    }
    // 20 frame
    tempo = getTimer ();
    stop();
    _root.onEnterFrame = function () {
       ifFrameLoaded (30) {
           if ((getTimer()-tempo)>4000) {
               delete this.onEnterFrame;
               play ();
           }
        }
    }
    // 30 frame
    tempo = getTimer ();
    stop();
    _root.onEnterFrame = function () {
       ifFrameLoaded (40) {
           if ((getTimer()-tempo)>4000) {
               delete this.onEnterFrame;
               play ();
           }
        }
    }
    e così via...

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    grazie

    grazie mille


  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    ops

    forse manca qualcosa perchè il codice

    codice:
    stop();
    _root.onEnterFrame = function () {
       ifFrameLoaded (20) {
          delete this.onEnterFrame;
          play ();
       }
    }
    non manda avanti il filmato e resta fermo

  7. #7
    Come ti ho già detto, ho cercato di rispondere ad un problema specifico (il codice che ti ho suggerito NON è neanche testato) con una soluzione che non stravolgesse la tua impostazione.

    Però sarebbe meglio rivedere l'impostazione di tutto il filmato.

    Se il tuo filmato è formato da una serie di immagini distribuite sulla timeline e tu vuoi che vengano visualizzate per "tot" secondi ognuna direi che:
    1) conviene fare un unico preload all'inizio
    2) gestire poi il "timing" con la funzione che ti ho già scritto

    Spiega comunque un po' meglio la struttura del tuo movie, che poi vediamo di impostare del codice + "mirato".

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    ok

    allora il mio movie è composto così:

    al caricamento di flash nessun preload in quanto vorrei che le immagini vengano caricate una alla volta.
    Quando si è caricata la prima, c'è una attesa di 4 secondi per passare alla prossima (sempre se prima dei 4 secondi è stata ricaricata l'immagine sucessiva) e così via fino alla fine delle immagini.

    spero di essere stato un pò più chiaro

    ciaoo

  9. #9
    prova così:
    codice:
    //
    stop();			// fermo la timeline
    tempo = getTimer ();	// imposto il tempo
    // ad ogni e per ogni frame...
    _root.onEnterFrame = function () {
       // se è stato caricato il frame successivo...
       if (_framesloaded >= _currentframe+1) {
    	// se sono trascorsi almeno 4 secondi...
           if ((getTimer()-tempo)>4000) {
    	   // re-imposto il tempo
    	   tempo = getTimer (); 
    	   // passo al frame successivo
               nextFrame();
           }
        }
    }
    e... fammi sapere

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251
    con un mix ci sono riuscito


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.