Es importante nombrar a cada uno de los clips con nombres diferentes. Por lo general necesitamos hacer "grupos" de varios pedazos del dibujo, por ejemplo las manos, el cuello y la cara van del mismo color. También necesitaremos botoncitos que representen los diferentes botones para que el usuario seleccione el color. Por lo general utilizamos un cursor personalizado, ya sea un pincel o una brocha.
Para poder cambiar el movie clip, necesitamos un objeto intermedio donde almacenaremos el color, en este caso necesitamos un objeto ColorTransform. Dicha clase se encuentra en el paquete geom, y este a su ves en el paquete flash. Recuerda que si codificas en la línea de tiempo, no es necesario importar las clases del paquete flash, pero si trabajas en clases, tienes que importarla:
Código ActionScript :
import flash.geom.ColorTransform;
Así que crea un objeto de tranformación de color, donde almacenaremos el color que haya seleccionado el usuario:
Código ActionScript :
var colorInfo:ColorTransform;
Aqui almacenamos el color (en formato hexadecimal, de preferencia). Supongamos que desamos cambiar el color a amarillo:
Código ActionScript :
colorInfo = new ColorTransform(); colorInfo.color = 0xffff00;
Ahora aplicamos este cambio al movie clip (digamos que se llama dibujo) con la siguiente asignación:
Código ActionScript :
dibujo.transform.colorTransform = colorInfo;
Listo, el movie clip cambiará de color. Hay que remarcar que si el movie clip tiene un degradado o diferentes colores que los aplicamos en tiempo de autor ed decir, con el EDI, los colores se remplazarán por el color que aplicamos.
El siguiente ejemplo muestra la aplicación de estos sencillos principios:
Si desea bajar el archivo fuente de este ejemplo, pulsa aqui.