Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

O Ilusionista

Controlar MCs diferentes

Recommended Posts

Pessoal,estou usando a seguinte action:function decihexa(decimal) { matriz = []; x = decimal; while (x>0) { matriz.push(x%16); x = int(x/16); } matriz.reverse(); for (a=0; a<matriz.length; a++) { if (matriz[a] == 10) { matriz[a] = "A"; } if (matriz[a] == 11) { matriz[a] = "B"; } if (matriz[a] == 12) { matriz[a] = "C"; } if (matriz[a] == 13) { matriz[a] = "D"; } if (matriz[a] == 14) { matriz[a] = "E"; } if (matriz[a] == 15) { matriz[a] = "F"; } } if (String(matriz.join("")).length<2) { return ("0"+matriz.join("")); } else { return (String(matriz.join(""))); }}fundo = new Color("fundo");velocidade = 10;r = 102;g = 102;b = 102;rf = 1;gf = 1;bf = 1;onEnterFrame = function () { r += (rf-r)/velocidade;g += (gf-g)/velocidade;b+=(bf-B)/velocidade;fundo.setRGB("0x"+decihexa(int®)+decihexa(int(g))+decihexa(int(B)));};Funciona normalmente (ela faz o fundo mudar de cor gradualmente). Mas se euquero que dois MCs diferentes use esta funcção, somente um deles muda decor. Já tentei renomear as variáveis r,g,b,rf,gf,bf , mas mesmo assim nãoadiantou. Como posso fazer isso?Tbem tentei colocar esta action (que esta na timeline) no proprio mc, masnao funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seu script é meio comprido, mas vou te dar um caminho mais ou menos pra você ver como dar a mesma função a mais de um movieclip, vou fazer aqui uma função simples pra criar um fade ok?Daí você tenta adaptar aí no seu código.

 

function fade(seumc, pontodepartidadofade, valoradiminuir)

while(seumc._alpha > pontodepartidadofade){

seumc._alpha -= valoradiminuir;

}

}

 

// agora vou aqui dizer qual é o movieclip que vou aplicar, o valor dele atual em alplha e o valor que vai diminuir

 

fade(meumovieclip1, 50, 5);

fade(meumocieclip2, 20, 2);

 

Então eu coloquei o código acima onde estão os dois movieclips instanciados como meumovieclip1 e meumovieclip2, e acima está a função, para executar a função de fade, o que você vai precisar fazer é bem parecido, você vai criar essa função que você fez e aplicar ela ao _root, e aos dois movieclips, deu pra entender a idéia?

 

qquer coisa poste aí novamente.

 

abraço,

 

Carneirinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

hum....legal seu codigo, vou tentar adaptar.Uma coisa que eu nao entendi: ontem o codigo funcionava, e eu estava mexendo em outra coisa (em tamanho de letra). daí salvei e abri o arquivo novamente...e o efeito nao funcia mais!

Compartilhar este post


Link para o post
Compartilhar em outros sites

notei duas coisas:

 

A) tem um erro no seu script-

 

function fade(seumc, pontodepartidadofade, valoradiminuir) {

while (seumc._alpha>pontodepartidadofade) {

seumc._alpha -= valoradiminuir;

}

}

// agora vou aqui dizer qual é o movieclip que vou aplicar, o valor dele atual em alplha e o valor que vai diminuir

fade(meumovieclip1, 50, 5);

fade(meumocieclip2, 20, 2);

 

você tinha esquecido o {

 

b) o movieclip nao faz o alpha de começo ao fim...simplesmente aparece com um alph estático.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Puts, agora eu ví mesmo o erro, é que eu vou respondendo aqui sem o flash aberto e criei esse script de cabeça, ainda bem que você é bom observador e notou isso.

Bom, o alpha ai no caso que você quería, é pra aplicar uma mesma função a 3 objetos não é?Então eu criei uma função qquer, é só pra você ver como fazer pra aplicar a mesma função a objetos diferentes, note que aí você pode até mudar aqueles valores que você tentou mudar e não conseguiu, se lembra?

 

qquer duvida poste aí novamente.

 

abraço,

 

Carneirinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.