lendadomato 1 Denunciar post Postado Fevereiro 11, 2011 Olá pessoal, tenho um componente ColorPicker que colore um mc retangular e tenho um botão de gotoAndStop que instrui para o frame 2, no caso quando o estou no frame 1 faço a transformação de cor e envio para o frame 2 tudo ocorre naturalmente certo, embora quando eu mascaro o mc que recebe a cor o sistema volta à cor inicial e não mantém a cor que foi definida no frame 1. Eu preciso que o efeito percorra todos frames e a cada frame tenho um vetor diferente para mascarar o mc. aqui o codigo. import flash.display.MovieClip; import fl.events.ColorPickerEvent; import flash.geom.ColorTransform; import flash.events.MouseEvent; colorPicker_vies.selectedColor = 0xcccc00; colorPicker_vies.showTextField = true; colorPicker_vies.addEventListener(ColorPickerEvent.CHANGE,changeColorShape); function changeColorShape(evt:ColorPickerEvent):void { var newColorTransform:ColorTransform = vies_mc.transform.colorTransform; newColorTransform.color = evt.color; vies_mc.transform.colorTransform = newColorTransform; } stop(); btn.addEventListener(MouseEvent.CLICK, redonda) function redonda (e:MouseEvent):void { gotoAndStop(2) } espero ter sido claro, e desde já agradeço! para ficar mais claro abaixo o teste, a bolinha deveria ficar da mesma cor do retangulo pois ela esta mascarando o retângulo. Teste aqui aqui o fla: Arquivo fla aqui Compartilhar este post Link para o post Compartilhar em outros sites
Pedro Bartulihe 0 Denunciar post Postado Fevereiro 12, 2011 Boa noite, Isso que você ta tentando faze pode ser feito de muitas outras maneiras até mais adequadas. Mas ae já é outro porém ne... Usa esse codigo que vai funciona. Ta comentado. import flash.display.MovieClip; import fl.events.ColorPickerEvent; import flash.geom.ColorTransform; import flash.events.MouseEvent; //crio uma instancia que pode ser visualizada por todo o codigo var newColorTransform:ColorTransform = new ColorTransform; //carrego a cor inicial do mc, para que nao tenha um valor nulo vies_mc.transform.colorTransform = newColorTransform; colorPicker_vies.selectedColor = 0xcccc00; colorPicker_vies.showTextField = true; colorPicker_vies.addEventListener(ColorPickerEvent.CHANGE,changeColorShape); function changeColorShape(evt:ColorPickerEvent):void { //carrego a cor selecionada newColorTransform.color = evt.color; //altera a cor do mc vies_mc.transform.colorTransform = newColorTransform; } btn.addEventListener(MouseEvent.CLICK, redonda); function redonda (e:MouseEvent):void { //envia para o segundo frame e atribui novamente a cor no mc mascarado; gotoAndStop(2); vies_mc.transform.colorTransform = newColorTransform; } stop(); Espero que ajude, Abs Compartilhar este post Link para o post Compartilhar em outros sites
lendadomato 1 Denunciar post Postado Fevereiro 12, 2011 Obrigado Pedro, salvou meu final de semana! Que Deus te ajude! Compartilhar este post Link para o post Compartilhar em outros sites
lendadomato 1 Denunciar post Postado Fevereiro 12, 2011 Amigo Pedro, só mais uma dúvida caso fosse mascarar uma imagem carregada localmente com loader e alterando as mascaras nessa imagem? pois sei que no segundo frame ela irá desparecer como no colorPicker. Compartilhar este post Link para o post Compartilhar em outros sites