Buenas
este juego lo hice hace 2 o 3 años. Te puede servir de pista.
Lo primero que hacía era crear un tablero con recuadros en blanco, usando la siguiente clase:
Código AS3:
Ver originalpackage {
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.display.Sprite;
import flash.geom.ColorTransform;
public class creaTablero extends MovieClip {
private var marco:Sprite;
private var mc:MovieClip;
public var color:int;
public function creaTablero():void {
// constructor code
for (var i:int = 0; i<4; i++) {
for (var j:int = 0; j<9; j++) {
mc = new MovieClip();
marco = new Sprite();
marco.graphics.lineStyle(1,0x000000);
marco.graphics.beginFill(0xFFFFFF,1);
marco.graphics.drawRoundRect(0, 0, 60, 60, 0);
mc.addChild(marco);
marco.addEventListener(MouseEvent.MOUSE_UP,Colorear)
mc.x = (62*j);
mc.y = (62*i);
if (i<3 || j<8) {
addChild(mc);
}
}
}
}
private function Colorear(evt:MouseEvent) {
var miColor:ColorTransform=evt.target.transform.colorTransform;
miColor.color=color;
evt.target.transform.colorTransform=miColor;
}
public function SetColor(c:int) {
color = c;
}
} // end class
} // end pack
Como podrás ver, contiene un setter para decir el color que lleva el pincel, que capturaba desde la main class:
Código AS3:
Ver original// AS3 code
import flash.geom.ColorTransform;
var tablero:creaTablero = new creaTablero();
cont.addChild(tablero);
rojo.addEventListener(MouseEvent.MOUSE_UP,SetRojo)
verde.addEventListener(MouseEvent.MOUSE_UP,SetVerde)
azul.addEventListener(MouseEvent.MOUSE_UP,SetAzul)
//addEventListener(MouseEvent.MOUSE_OVER,Puntero)
//function Puntero(evt:MouseEvent) {
puntero.startDrag();
Mouse.hide();
//}
puntero.x = mouseX+1;
puntero.y = mouseY+1;
function SetRojo(evt:MouseEvent) {
tablero.SetColor(0xFF0000);
var miColor:ColorTransform=puntero.transform.colorTransform;
miColor.color=0xFF0000;
puntero.transform.colorTransform=miColor;
}
function SetVerde(evt:MouseEvent) {
tablero.SetColor(0x00FF00)
var miColor:ColorTransform=puntero.transform.colorTransform;
miColor.color=0x00FF00;
puntero.transform.colorTransform=miColor;
}
function SetAzul(evt:MouseEvent) {
tablero.SetColor(0x0000FF)
var miColor:ColorTransform=puntero.transform.colorTransform;
miColor.color=0x0000FF;
puntero.transform.colorTransform=miColor;
}
Con esto tienes todo lo que necesitas para entender como colorear en AS3.
Saludos