Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di ca-j
    Registrato dal
    Jun 2004
    Messaggi
    208

    sfumare il colore gradualmente

    Salve
    vorrei sfumare gradualmente un movieclip con AS, ma l'effetto
    č una scomparsa netta e non graduale del MC.
    Che sbaglio

    Sul frame ho:

    sfuma = function(ogg)
    {
    while(ogg._alpha > 0 ) {
    ogg._alpha -= 5
    }
    }

    mentre sul pulsante ho:

    on (release) {
    sfuma(nomeclip);
    }

    mi sa che non ho molto chiare le funzioni
    Salud y pesetas... y lo demás son puņetas!

  2. #2
    Utente di HTML.it L'avatar di ca-j
    Registrato dal
    Jun 2004
    Messaggi
    208
    qualcuno mi da un aiutino? sicuro che per molti č semplicissimo...
    Salud y pesetas... y lo demás son puņetas!

  3. #3
    secondo me lo devi fare temporizzato altrimenti te lo sfuma tutto in un botto (ovvero ci mette qualche micron di secondo ad elaborare il ciclo while)

  4. #4
    questo sul primo frame
    codice:
    MovieClip.prototype.alpha = function(aarrivo, a, b, t) { 
    /////////// 
    if ((aarrivo != "goto")&&(a != '' && a != "" && a != 0)&&(b != '' && b != "" && b != 0)) {this.k = (1/b)/a;} 
    else {if ((aarrivo != "goto")&&(a != '' && a != "" && a != 0)&&(b == '' || b == "" || b == 0)) {this.k = 1/a;} 
    else {this.k = 0.1;}} 
    if (aarrivo == "goto") {this._alpha = a;this.aarrivo = b;} 
    else {this.aarrivo = aarrivo;} 
    /////////// 
    this.da = 0; 
    this._visible=true; 
    this.t = t; 
    this.t1 = getTimer()/100; 
    this.onEnterFrame = function() { 
    this.t2 = getTimer()/100; 
    if ((this.t2 >= this.t1 + this.t) || (this.t == '' || this.t == "" || this.t == 0)) { 
    this.da = (this.aarrivo-this._alpha)*this.k; 
    if (Math.abs(this.da)>0.1) { 
    this._alpha += this.da; 
    } else { 
    this._alpha = this.aarrivo; 
    if (this._alpha == 0) {this._visible=false;} 
    delete this.onEnterFrame; 
    } 
    } 
    }; 
    };
    al pulsante fade in
    codice:
    on(release){
    mc.alpha("goto",0,100,1);
    
    }
    al pulsante fade out
    codice:
    on(release){
    mc.alpha("goto",100,0,1);
    
    }
    Consulenza aziendale a 360° http://www.gruppodg.it http://www.gruppodg.it/3d
    Realizzazione siti internet, Siti Flash, Ricerca Location per bar negozi , esercizi commerciali, sviluppo pratiche e allestimento

  5. #5
    Utente di HTML.it L'avatar di ca-j
    Registrato dal
    Jun 2004
    Messaggi
    208
    Caspita come si compica il codice!
    Pensavo fosse piú semplice.
    Ora me lo studio.
    Grazie
    Salud y pesetas... y lo demás son puņetas!

  6. #6
    puō essere pių semplice solo che cosė lo richiami quando vuoi da dove vuoi semplicemente

    con

    nomemcchevuoi.alpha("goto",100,0 ,1);
    da 100 a 0 o viversa invertendo i valori in rosso

    lo usi per quello che vuoi una volta creatyo in pratica senza riscrivere niente

    Consulenza aziendale a 360° http://www.gruppodg.it http://www.gruppodg.it/3d
    Realizzazione siti internet, Siti Flash, Ricerca Location per bar negozi , esercizi commerciali, sviluppo pratiche e allestimento

  7. #7
    Utente di HTML.it L'avatar di ca-j
    Registrato dal
    Jun 2004
    Messaggi
    208
    Vuoi dire che posso usarlo anche con un'altra proprietá?
    Ad esempio, per muovere oggetti sullo schermo, nel tuo script cambio alpha con _x e via...
    Salud y pesetas... y lo demás son puņetas!

  8. #8
    no. quella č relativa all'alpha ma la sui per tutti iclip cambiando il nome per il moviemnto potresti usare una cosa come questa
    sul primo frame questo codice
    codice:
    MovieClip.prototype.tweenTo= function (x,y,steps) {
    
    
    	this._xstep=(Number(x)-this._x)/Number(steps);
    
    
    	this._ystep=(Number(y)-this._y)/Number(steps);
    	
    
    	this._steps=steps;
    
    	this.onEnterFrame=function () { 
    
    
    		if (this._steps) {
    		
    			this._x+=this._xstep;
    			this._y+=this._ystep;
    			
    		
    			this._steps--;
    		}
    		else {
    		
    			delete this._xstep;
    			delete this._ystep;
    			delete this._steps;
    		
    		
    			this.onEnterFrame=function () {}
    		
    		}
    	}
    }
    poi richiami la cosa

    codice:
    istanzaclip.tweenTo(0,400,30);
    0 e 400 sono le coordinate _x e _y che il clip deve raggiungere da dove si trova e 30 rappresenta in quanti step quindi la velocitā;

    minore č il numero + veloce sarā l'animazione della transazione
    Consulenza aziendale a 360° http://www.gruppodg.it http://www.gruppodg.it/3d
    Realizzazione siti internet, Siti Flash, Ricerca Location per bar negozi , esercizi commerciali, sviluppo pratiche e allestimento

  9. #9
    Utente di HTML.it L'avatar di ca-j
    Registrato dal
    Jun 2004
    Messaggi
    208
    Originariamente inviato da enigma_79
    no. quella č relativa all'alpha ma la sui per tutti iclip cambiando il nome per il moviemnto potresti usare una cosa come questa
    sul primo frame questo codice
    [code]
    MovieClip.prototype.tweenTo= function (x,y,steps) {
    ...

    Ora sto cercando di implementare un moto accelerato e decelerato
    ai clip richiamati dalla funzione che hai scritto. dentro
    alla funzione ci ho messo

    this.onEnterFrame=function () {
    //---------funzione decelera-----------
    inizio=this._x;
    fine=x;
    sposta = (fine-inizio)/steps;

    //---------------------------------
    if (this._steps) {
    this._x+=sposta;
    this._y+=sposta;
    this._steps--;
    }
    else {
    delete this._xstep;
    delete this._ystep;
    delete this._steps;
    this.onEnterFrame=function () {}
    }
    }

    ma mi fa una roba strana e mi sballa le coordinate.
    Salud y pesetas... y lo demás son puņetas!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.