1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Transiciones o pasos graduales.

Tema en 'Imagen Digital y Video' iniciado por qwerty, 10 Ene 2007.

  1. qwerty

    qwerty Nuevo usuario

    Antes que nada decirles que no sé mucho de programación, pero estoy aprendiendo y ya empiezo a enterarme de cosas (lo mío es más lo gráfico, pregúntenme sobre illustrator :D ).

    Ahora mismo estoy probando con unos botones dentro de un MC.

    Imagínense. Un Mc con un botón dentro. EL MC presenta de inicio un alpha=70.

    Entonces tengo en el archivo el MC dos veces.
    Uno se llama Buno, y el otro Bdos.

    Cuando paso por encima de Buno, los dos cogen alpha=100 y scale=150, y cuando dejo de pasar, vuelven al estado incial. Y con Bdos lo mismo.

    <!--quoteo--><div class='quotetop'>CITA</div><div class='quotemain'><!--quotec-->on (rollOver) {
    _root.Buno._alpha = 100;
    _root.Bdos._alpha = 100;
    _root.Buno._xscale = 150;
    _root.Buno._yscale = 150;
    _root.Bdos._xscale = 150;
    _root.Bdos._yscale = 150;
    }
    on (rollOut) {
    _root.Buno._alpha = 70;
    _root.Bdos._alpha = 70;
    _root.Buno._xscale = 100;
    _root.Buno._yscale = 100;
    _root.Bdos._xscale = 100;
    _root.Bdos._yscale = 100;
    }<!--QuoteEnd--></div><!--QuoteEEnd-->

    ¿Cómo puedo hacer para que la transición del alpha y la escala no sea de golpe, brusca y si de forma suave, como en degradado?
     
  2.  
  3. igraim

    igraim Nuevo usuario

    Se puede adaptar el código del post:
    <a href="http://www.forocreativo.net/ipb/index.php?showtopic=18772" target="_blank">http://www.forocreativo.net/ipb/index.php?showtopic=18772</a>

    Lo he modificado para la propiedad _alpha, para la escala es solo cuestión de añadir lineas:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    //iniciamos el boton (para poder verlo)
    mc_boton._alpha=100;

    // función rollover
    mc_boton.onRollOver = function() {
    &nbsp;&nbsp;&nbsp;&nbsp;// eliminamos el intervalo que llama a la función desaparecer
    &nbsp;&nbsp;&nbsp;&nbsp;clearInterval(intDesaparecer);
    &nbsp;&nbsp;&nbsp;&nbsp;// llamamos a la función crecer cada 10 milisegundo
    &nbsp;&nbsp;&nbsp;&nbsp;intAparecer = setInterval(aparecer, 10, this);
    &nbsp;&nbsp;&nbsp;&nbsp;
    };
    // función rollover
    mc_boton.onRollOut = function() {
    &nbsp;&nbsp;&nbsp;&nbsp;// eliminamos el intervalo que llama a la función aparecer
    &nbsp;&nbsp;&nbsp;&nbsp;clearInterval(intAparecer);
    &nbsp;&nbsp;&nbsp;&nbsp;// llamamos a la función aparecer cada 10 milisegundo
    &nbsp;&nbsp;&nbsp;&nbsp;intDesaparecer = setInterval(desaparecer, 10, this);
    &nbsp;&nbsp;&nbsp;&nbsp;};
    // función crecer
    function aparecer(mc) {
    &nbsp;&nbsp;&nbsp;&nbsp;var control:Number = mc._alpha;
    &nbsp;&nbsp;&nbsp;&nbsp;// mientras _alpha es inferior al 100% crece 1 uds
    &nbsp;&nbsp;&nbsp;&nbsp;if (control<100) {
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mc._alpha++;
    &nbsp;&nbsp;&nbsp;&nbsp;} else {
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearInterval(intAparecer);
    &nbsp;&nbsp;&nbsp;&nbsp;}
    }
    function desaparecer(mc) {
    &nbsp;&nbsp;&nbsp;&nbsp;var control:Number = mc._alpha;
    &nbsp;&nbsp;&nbsp;&nbsp;// mientras _lpha sea mayor al 0% decrece 1 uds
    &nbsp;&nbsp;&nbsp;&nbsp;if (control>0) {
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mc._alpha--;
    &nbsp;&nbsp;&nbsp;&nbsp;} else {
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearInterval(intDesaparecer);
    &nbsp;&nbsp;&nbsp;&nbsp;}
    }<!--c2--></div><!--ec2-->
     
  4. Scriptmaster

    Scriptmaster Guest

    asi mismo es con un if sale super rapido!!!

    Salu2!!
     
  5. qwerty

    qwerty Nuevo usuario

    Muchas gracias a los dos!

    Igraim, he probado lo que me dices. Me ha costado (he tenido que empezarlo todo siguiendo el comienzo del otro hilo) pero lo he conseguido para un elemento. Hace las transiciones graduales, al menos con el alpha (ya probaré con la escala).

    Pero cuando copio ese elemento y lo pego, sólo lo sigue haciendo al elemento original. El elemento copiado no responde a nada.

    El problema es que a mí me interesa que lo haga para varios elementos al mismo tiempo.
    Es decir. Imaginémonos en pantalla 5 elementos. Pues cuando pase por encima de uno de ellos, todos a la vez aumentan su alpha, o color, o escala, y cuando dejo de pasar por encima, también todos a la vez vuelven a la posición original.

    Scriptmaster, ¿cómo se haría con un if?, si te apetece ponerlo. Es para ir aprendiendo programación.

    Gracias a los dos.

    Un saludo.
     
  6. Humber

    Humber Nuevo usuario

    Otra forma como prodrias lograr esto es creando un mc vacio y en crear varios fotogramas claves y colocar por decir algo:

    _root.Buno._alpha = 100;
    stop()

    y en el siguiente fotograma con una disminucion asi sucesivamente hasta llegar a:

    _root.Buno._alpha = 70;
    stop()

    luego le pones un nombre de instancia(alfa) y por ultimo en rollOver le dices que se reproduca el mc alfa y para el rollOut haces otro mc solo que lo contrario que comienze el alpha en 70 y que termine en 100...
     
  7. qwerty

    qwerty Nuevo usuario

    <!--quoteo(post=182208:date=Jan 11 2007, 01:12 PM:name=HumRu)--><div class='quotetop'>CITA(HumRu @ Jan 11 2007, 01:12 PM) [snapback]182208[/snapback]</div><div class='quotemain'><!--quotec-->
    Otra forma como prodrias lograr esto es creando un mc vacio y en crear varios fotogramas claves y colocar por decir algo:

    _root.Buno._alpha = 100;
    stop()

    y en el siguiente fotograma con una disminucion asi sucesivamente hasta llegar a:

    _root.Buno._alpha = 70;
    stop()

    luego le pones un nombre de instancia(alfa) y por ultimo en rollOver le dices que se reproduca el mc alfa y para el rollOut haces otro mc solo que lo contrario que comienze el alpha en 70 y que termine en 100...
    <!--QuoteEnd--></div><!--QuoteEEnd-->

    Muchas gracias HumRu, pero todavia no domino lo suficente flash. Es decir, entiendo lo que dices, pero me faltan conocimientos de programación para lograr hacerlo, y me surgen mil dudas. Si pudieses ser más preciso.

    En lo que ha dicho igraim lo he entendido perfectamente y el único pero es que sólo me lo aplica al orginal, no al resto.

    A ver si alguien sabe como hacerlo.

    edito: con esto me sale.

    <!--quoteo--><div class='quotetop'>CITA</div><div class='quotemain'><!--quotec-->Buno.onRollOver=function() {
    alfa.gotoAndPlay("on");
    }
    Buno.onRollOut=function() {
    alfa.gotoAndPlay("off");
    }
    stop();<!--QuoteEnd--></div><!--QuoteEEnd-->

    Pero sigo con el problema de antes, que solo me lo aplica un elemento.
     
  8. Humber

    Humber Nuevo usuario

    Voy a intentar hacerlo y luego te subo el codigo...
     
  9. elQuique

    elQuique Usuario activo

    o el fla mejor :p ya que aunque a los codigueros nos parezca lo mismo, a los que solo diseñan en flash a veces les cuesta entender donde pegar o escribir ese codigo ;)
     
  10. Humber

    Humber Nuevo usuario

    ok...
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·