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

Discussione: Fade out-in clip

  1. #1
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169

    Fade out-in clip

    Nello stage ho cinque fotogrammi e in ognuno di essi ho inserito un clip (Clip1, Clip2, ecc.), mi sposto da un fotogramma all'altro tramite pulsanti. Il mio intendo saperebbe quello di passare da un fotogramma quindi da un clip all'altro con un effetto fade-out e fade-in. Ho fatto molte ricerche sul forum ed ho fatto diverse prove ma non ci sono riuscito.
    Avevo provato con una prototipo da inserire nel 1° frame della timeline principale, cioè questa:

    MovieClip.prototype.fade = function (fadein, q) {
    this.onEnterFrame = function () {
    if (fadein) {
    if (this._alpha >= 100) {
    delete this.onEnterFrame;
    } else {
    this._alpha +=q;
    }
    } else {
    if (this._alpha <= 0) {
    delete this.onEnterFrame;
    } else {
    this._alpha -=q;
    }
    }
    }
    }

    poi sul pulsante inserivo:

    on (press) {
    _root.Clip1.fade(false, 5);
    _root.gotoAndPlay(2);
    }

    Ma ovviamente non succedeva nulla in quanto passava direttamente al secondo fotogramma (clip).
    Quindi dovrei prima fare il fade-out del clip visualizzato e dopo far apparire con il fade-in il nuovo clip.

    Spero di essere stato abbastanza chiaro.
    Grazie

  2. #2
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    Ho l'impressione di aver sbagliato titolo


    Up

  3. #3
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    metti il "_root.gotoAndPlay(2);" subito dopo il "delete this.onEnterFrame;"

  4. #4
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    Originariamente inviato da and80
    metti il "_root.gotoAndPlay(2);" subito dopo il "delete this.onEnterFrame;"
    Grazie
    Più tardi proverò...

  5. #5
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    Diciamo che non ho risolto

    Vi allego un piccolo file di esempio così capite meglio il mio problema: esempio



  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    se è un .fla non lo posso aprire...

    cosa significa che non hai risolto? non va bene il codice? succede qualcosa di diverso da prima ora?

  7. #7
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    Originariamente inviato da and80
    se è un .fla non lo posso aprire...

    cosa significa che non hai risolto? non va bene il codice? succede qualcosa di diverso da prima ora?
    Si è un .fla!

    Mi spiego meglio: mettendo il "_root.gotoAndPlay(2);" dove mi hai detto, succede che parte il fade-out del clip1 ma subito dopo mi appare il clip2 senza nessun fade-in, infatti non ho capito dove dovrei mettere il codice x il fade-in:

    codice:
     _root.Clip2.fade(true, 5);
    Cmq nell'esempio che ho allegato si capisce meglio cosa voglio dire.


  8. #8
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    And80 visto che non puoi aprire il .fla ecco il link x vedere quantomeno .swf


  9. #9
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da Giubass
    And80 visto che non puoi aprire il .fla ecco il link x vedere quantomeno .swf

    allora, innanzi tutto, per vedere il fadein, i clip successivi al primo devono avere alpha=0
    comunque penso di aver capito cosa vuoi fare, si potrebbe fare anche tutto sullo stesso frame, oppure se vuoi usare i frame devi passare un ulteriore parametro alla proto, che sarà il numero di frame a cui il pulsante successivo dovrà andare, a 'sto punto la proto dovrebbe assomigliare a questa
    codice:
    MovieClip.prototype.fade = function (fadein, q, fr) {
    	this.onEnterFrame = function () {
    		if (fadein) {
    			if (this._alpha >= 100) {
    				delete this.onEnterFrame;
    			} else {
    				this._alpha +=q;
    			}
    		} else {
    			if (this._alpha <= 0) {
    				delete this.onEnterFrame;
    				_root.gotoAndPlay(fr);
    				_root["Clip"+fr]._alpha = 0;
    			} else {
    				this._alpha -=q;
    			}
    		}
    	}
    }
    così nel primo pulsante avrai
    codice:
    on (press) {
    	_root.Clip1.fade(false, 5, 2);
    }
    nel secondo
    codice:
    on (press) {
    	_root.Clip2.fade(false, 5, 3);
    }
    e così via...

  10. #10
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    Penso di aver capito, adesso provo...

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.