Thanks Petro. It's interesting that if I set the this line _sprite.graphics.beginFill(0xFFFFFF); it doesn't work but if I set it like _sprite.graphics.beginFill(0xAABBCC); it works. Does anyone has any idea why?
On 4/10/07, Petro Bochan <[EMAIL PROTECTED]> wrote:
ilteris kaplan > Hello flashcoders, > > Once again, And after this I am not going to bother you for a while, > I am trying to do basic colorTransform in as3. I am following docs > from different places and the way I set i up is below: Unfortunately, > I am missing something here. I would appreciate any advices regarding > that. > > best, > ilteris > > > package { > import flash.display.Sprite; > import flash.events.MouseEvent; > import flash.events.Event; > > import flash.geom.*; > > public class ColorTransforma extends Sprite > { > > > var _sprite:Sprite; > var color:ColorTransform; > > > > > > public function ColorTransforma() { > _sprite = new Sprite(); > > color = _sprite.transform.colorTransform; > _sprite.transform.colorTransform = color; > > _sprite.graphics.lineStyle( ); > _sprite.graphics.beginFill(0xFFFFFF); > _sprite.graphics.drawRect(0, 0, 100, 100); > _sprite.graphics.endFill( ); > addChild(_sprite); > > _sprite.addEventListener(MouseEvent.MOUSE_DOWN, > onMouseDown); > > > } > > public function changeColor() { > color.redOffset = 0; > color.greenOffset = 0; > color.blueOffset = 0; > _sprite.transform.colorTransform = color; > > } > > private function onMouseDown(event:MouseEvent):void { > changeColor(); > trace("yay"); > > } > > > > } > > } Hi ilteris, Not completely sure what you want to do but assuming you want to change the colour of the sprite upon mouse click you'd have to set the offsets to something greater than zero. Say you want to change the colour of the shape to blue, than your code would look something like below (mind the value of the .blueOffset property): package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.events.Event; import flash.geom.ColorTransform; public class ColorTransforma extends Sprite { var _sprite:Sprite; var color:ColorTransform; public function ColorTransforma() { _sprite = new Sprite(); _sprite.graphics.lineStyle( ); _sprite.graphics.beginFill(0xAABBCC); _sprite.graphics.drawRect(0, 0, 100, 100); _sprite.graphics.endFill( ); addChild(_sprite); _sprite.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); color = _sprite.transform.colorTransform; _sprite.transform.colorTransform = color; } public function changeColor() { color.redOffset = 0; color.greenOffset = 0; color.blueOffset = 255; _sprite.transform.colorTransform = color; } private function onMouseDown(event:MouseEvent):void { changeColor(); trace("yay"); } } } Cheers, Petro _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
_______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com