Hi guys, i am working on a coloring game here. i really dont know how to code to link my brush (i hide the mouse and use brush) to pick color from color boxes upon mouse click and then use the color to paint a cartoon character. I use sprite on the character so that i can paint the body parts using different colors. i use flash cs3 . Please help me.. i'm really clueless and desperately need your help . thank you
[flash=]
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.MouseEvent;
//Mouse.hide();
const RED:uint = 0xFF0000;
const BLUE:uint = 0x0000FF;
const GREEN:uint = 0x00FF00;
//var brush:MovieClip;
var colorRing:MovieClip = brush.colorRing;
/*var b1:MovieClip;
var b2:MovieClip;
var b3:MovieClip;
*/
//var c:MovieClip;
var curr:MovieClip;
var ct:ColorTransform;
var array:Array = [{button:b1, color:GREEN},
{button:b2, color:RED},
{button:b3, color:BLUE}];
for each (var obj in array)
{
var b:MovieClip = obj.button as MovieClip;
b.color = obj.color;
ct = b.transform.colorTransform;
ct.color = b.color;
b.transform.colorTransform = ct;
b.buttonMode = true;
b.mouseChildren = true;
b.addEventListener(MouseEvent.CLICK, chooseColour);
trace("efgh");
}
var c:Sprite = new Sprite();
addChild(c);
c.addEventListener(MouseEvent.CLICK, pickColor);
addChild(brush);
brush.stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseBrush);
function chooseColour(event:MouseEvent):void
{
curr = event.target as MovieClip;
ct = curr.transform.colorTransform;
ct.color = curr.color;
brush.colorRing.transform.colorTransform = ct;
trace("abcd");
}
function pickColor(event:MouseEvent):void
{ for (var i:int = 0; i < c.numChildren; i++) {
if (curr)
{
ct = c.getChildAt(i).transform.colorTransform ;
ct.color = curr.color;
c.getChildAt(i).transform.colorTransform = ct;
trace("hall0");
}
else
{
trace("choose a color first!");
}
}
}
function mouseBrush(event:MouseEvent):void
{
brush.x = mouseX;
brush.y = mouseY;
event.updateAfterEvent();
}
[/flash]