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!!!!!
