Comunidad de diseño web y desarrollo en internet online

Un conflicto!?!?!?!?

Citar            
MensajeEscrito el 25 Jun 2007 02:15 pm
Hola, como estan?????
Bueno, les comento mi problema, ojala alguien me pueda dara una mano.
Quiero hacer lo siguiente: un movieclip, la cual le quiero controlar, a travez de AS (ya que todo esto tendra que variar según las variables que me de una base de datos...... que ya vere como lo hago a eso). Necesito controlar basicamente el color del MovieClip, pero este efecto easing para rollIn y RollOut (en realidad tambien son botones estos MC).
Entonces hice el tutorial "Uso de la clase Color de Flash" que me vino super bien!! Pero esto no me da el efecto de bisel que necesito en el MC...y si el efecto de bisel se lo agrego al MC como se hace tradicionalmente (sin AS), apenas paso el mouse por arriba este cambia de color pero me desaparece el efecto.
Entonces hice el tutorial "Filtros de Flash 8 en imagenes y Movieclips con Actionscript" y quedo maravilloso todo!!! Estube revisandolo un poco al codigo y lo logre controlar y todo.
Ahora el problema: El primer efecto (controlar el color + el easing de rollIn-rollOut) pues dejo de funcionar!!!!!!!!!!!
Ahora la pregunta: se pueen conbinar??????
Aqui les dejo el codigo:

Código :

///////////////CONTROL DEL COLOR + ROLLIN ROLL OUT

/*creamos la funcion *color* indicando las propiedades para cada 
instancia, asi creara un nuevo color con la propiedad *mycolor*,
un nuevo objeto con la propiedad *obj* y lo mas importante la 
propiedad de color azul que sera *bb*/
function color(mc, mycolor, obj, bb, bf) {
   //Creamos el constructor para la clase color
   mycolor = new Color (mc);
   //creamos el objeto para cada instancia
   obj = new Object();
   //establecemos el valor incial del azul en 0
   bb = 0;
   //establecemos la velocidad usada para el easing in y out
   vel = 50;
   //establecemos el valor final que queremos dar al azul
   bf = 255;
   /*creamos un controlador de evento que evaluara el valor del color
   y le asignara el valor de la velocidad por cada frame hasta que llegue
   al valor final del azul que queremos*/
   mc.onEnterFrame = function() {
      if (bb<bf) {
         bb += vel;
         obj = {ra:ra, rb:50, ga:ga, gb:40, ba:ba, bb:bb, aa:aa, ab:255};
         mycolor.setTransform(obj);
         //cortamos el evento cuando se llegue al valor final  
      } else if (bb == bf) {
         delete mc.onEnterFrame;
      }
   };
   //y creamos otro controlador de eventos para cuando se haga el rollout
   mc.onRollOut = function() {
      mc.onEnterFrame = function() {
         if (bb>0) {
            bb -= vel;
            obj = {ra:ra, rb:50, ga:ga, gb:40, ba:ba, bb:bb, aa:aa, ab:255};
            mycolor.setTransform(obj);
         } else if  (bb == 0) {
            delete mc.onEnterFrame;
         }
      };
   };
}

///////////////FILTRO BISEL

import flash.filters.*;
var distancia:Number = 3;//Distancia de la sombra
var angulo:Number = 45;// angulo de la sombra
var color = 0x000000;// color de la sombra
var alpha:Number = 0.9;//ALPHA pero valor maximo 1
var blurX:Number = 3;//blur del eje X maximo 255
var blurY:Number = 3;//igual q blurX
var fuerza:Number = 1;//la fuerza de impresion de la sombra MAX 255
var calidad:Number = 3;//calidad de la sombra, valores validos: 1-2-3
var sombra_interior:Boolean = false;//obvio
var fondo_transparente:Boolean = false;//obvio
var ocultar_mc:Boolean = false; //obvio

color1 = 0x000000;
color2 = 0xFFFFFF;
alpha1 = 0.8;
alpha2 = 0.8;
bisel = "inner";//Tipo de bisel. Los valores válidos son "inner", "outer" y "full"

var r = new BevelFilter(          distancia,
                                         angulo,
                                         color1,
                                         alpha1,
                                         color2,
                                         alpha1,
                                         blurX,
                                         blurY,
                                         fuerza,
                                         calidad,
                                         bisel,
                                         ocultar_mc);

var array2:Array = new Array();
array2.push(r);
mc.filters = array2;

Ojala alguien me pueda dar una mano!!!
Gracias!!!!!

Por pabletein

86 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 25 Jun 2007 06:20 pm
Mi consejo es que si no entiendes cómo funciona el código, lo mejor es que diseñes un botón al estilo tradicional, con 3 gráficos modificados para cada estado. Lo demás será complicarte en exceso. :)

Por Sisco

BOFH

3700 de clabLevel

12 tutoriales
4 articulos

Genero:Masculino   Bastard Operators From Hell

Catalunya

firefox
Citar            
MensajeEscrito el 25 Jun 2007 06:33 pm
Gracias por el concejo Sisco!!!!
Es muy probable que termine haciendo eso.. o algo intermedio.
Gracias!!!

Por pabletein

86 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.