Ir para conteúdo

Arquivado

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

SJack

Duplicando MC´s e instanciando como BT

Recommended Posts

Bom dia pessoal.

 

Eu to com uma dúvida meio Cruel

 

Este código abaixo duplica um MC que chama uma foto do XML, até ai, tudo bem ele esta rodando normalmente!

 

xpos = grupo._x;dist = grupo._width;for (n=0; n<bemArray.length; n++) {	duplicateMovieClip("grupo3", "grupo3"+n, n);		nome = eval("integrantes.grupo"+n);	nome.grupo3.loadMovie(bemArray[n].foto);		trace(bemArray[n].foto);		this["grupo3"+n]._x = (xpos+dist)*n;	this["grupo3"+n].loadMovie(bemArray[n].foto);	this["grupo3"+n].id = bemArray[n].id;	calc = (n - 2 ) * 12;}

queria saber se já aqui eu posso instanciar como um BT o MC que esta sendo suplicado.

 

Eu tentei fazer

 

for (n=0; n<bemArray.length; n++) {	duplicateMovieClip("grupo3", "grupo3"+n, n);		nome = eval("integrantes.grupo"+n);	nome.grupo3.loadMovie(bemArray[n].foto);		trace(bemArray[n].foto);		this["grupo3"+n]._x = (xpos+dist)*n;	this["grupo3"+n].loadMovie(bemArray[n].foto);	this["grupo3"+n].id = bemArray[n].id;	calc = (n - 2 ) * 12;		this["grupo3"+n].onRelease = function() {	_root.inicio = bemArray[n].id;		_root.gotoAndPlay("reload");}}

Porém não funcionou. Algém pode me falar quam foi o meu pecado?

 

Desde já... vlw pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro você pode aproveitar o comando duplicateMovieClip e já instanciar o mc. Depois, você usa o id de cada mc:

 

ACTIONSCRIPT
for (n=0; n<bemArray.length; n++) {

 

 

 

    var mc = duplicateMovieClip("grupo3", "grupo3"+n, n);

 

   

 

    nome = eval("integrantes.grupo"+n);

 

    nome.grupo3.loadMovie(bemArray[n].foto);

 

   

 

    trace(bemArray[n].foto);

 

   

 

    mc._x = (xpos+dist)*n;

 

    mc.loadMovie(bemArray[n].foto);

 

    mc.id = bemArray[n].id;

 

 

 

    calc = (n - 2 ) * 12;

 

 

 

    mc.onRelease = function() {

 

        _root.inicio = this.id;

 

        _root.gotoAndPlay("reload");

 

    }

 

 

 

}

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro você pode aproveitar o comando duplicateMovieClip e já instanciar o mc. Depois, você usa o id de cada mc:

 

ACTIONSCRIPT
for (n=0; n<bemArray.length; n++) {

    var mc = duplicateMovieClip("grupo3", "grupo3"+n, n);

   

    nome = eval("integrantes.grupo"+n);

    nome.grupo3.loadMovie(bemArray[n].foto);

   

    trace(bemArray[n].foto);

   

    mc._x = (xpos+dist)*n;

    mc.loadMovie(bemArray[n].foto);

    mc.id = bemArray[n].id;

    calc = (n - 2 ) * 12;

    mc.onRelease = function() {

        _root.inicio = this.id;

        _root.gotoAndPlay("reload");

    }

}

 

Abraço

Mesmo assim ainda não funcionou. nem mesmo eu fazendo o um bt no grupo 3.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem pessoal, como está difico resolver isso e não consegui nem por decreto, eu vou postar os arquivos aqui pra ver se alguém me dá uma luz.

 

ARQUIVO

 

que está com o XML e com as imagens.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem pessoal, como está difico resolver isso e não consegui nem por decreto, eu vou postar os arquivos aqui pra ver se alguém me dá uma luz.

 

ARQUIVO

 

que está com o XML e com as imagens.

eu cheguei ao seguinte ponto que

 

ACTIONSCRIPT
for (n=0; n<bemArray.length; n++) {

        var mc = duplicateMovieClip("mcs", "mcs"+n, n);

        trace(mc);

        nome = eval("integrantes.grupo"+n);

       

        pegn = bemArray[n].id;

       

        nome.mcs.loadMovie(bemArray[n].foto);

        nome.onRelease = function() {

                _root.inicio = pegn;

                trace(_root.inicio);

                _root.gotoAndPlay("reload");

        };

 

mas até ai ele intancia apenas o grupo e não o MCS que seria cara MC duplicado, alguém ai pode dar uma luz?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi direito o que você quer fazer, e o problematem como postar o .FLA de novo o link esta quebrado[]´s

tem sim.... está ai ---> Arquivosé o seguinte eu tenho uma listagem de produtos que o cliente quis que ela ficasse passando por uma mascara... pra isso eu tive que fazer um scroll panel... Dentro do MC integrantes tem o Grupo que é um MC que é duplicado para a ação da rotação, e dentro de GRUPO tem o MC que é duplicado no CASO o GRUPO3, porém não to conseguindo intânciar o GRUPO 3 como BT usando MC.onRelease... eu consegui apenas fazer com que todo o grupo fosse instanciar apenas com uma ID do Array que eu puxo do XML.

Compartilhar este post


Link para o post
Compartilhar em outros sites

migo, não tem como colocar em .zip?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha eu enchendo de novo..rssr.. eu uso o Flash 8, qual a sua versão, aqui está dando Unexpected File Format...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha eu enchendo de novo..rssr.. eu uso o Flash 8, qual a sua versão, aqui está dando Unexpected File Format...

Que isso enchendo de forma alguma, só a sua intenção vale ouro.Já esta OK ... os links continuam os mesmos acima.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo.. na hora que você instanciou o mc,ele não estava pegando o mc corretamente, tente assim:

 

 

 

ACTIONSCRIPT
var mc =_root.integrantes.grupo.grupo3.duplicateMovieClip("grupo3"+n, n);

 

Assim ele consegue funcionar, pq pode testar o trace(mc) que você vai ver que do jeito antigo está saindo undefined, e desse jeito que eu postei ele ja mostra o caminho do mc. Agora o onRelease não funcionou tbm.. mas acho que é pq eu não estou entendendo muito bem a estrutura do teu código.. dae você pode saber melhor..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo.. na hora que você instanciou o mc,ele não estava pegando o mc corretamente, tente assim:

 

 

 

ACTIONSCRIPT
var mc =_root.integrantes.grupo.grupo3.duplicateMovieClip("grupo3"+n, n);

 

Assim ele consegue funcionar, pq pode testar o trace(mc) que você vai ver que do jeito antigo está saindo undefined, e desse jeito que eu postei ele ja mostra o caminho do mc. Agora o onRelease não funcionou tbm.. mas acho que é pq eu não estou entendendo muito bem a estrutura do teu código.. dae você pode saber melhor..

então a instância que é o bixo que ta pegando... daqui a pouco apelo pros orixas.

 

mas vamos lá... eu mudei grupo3 para MCS.

 

ACTIONSCRIPT
for (n=0; n<bemArray.length; n++) {

    // até aqui tudo bem!

    var mc = _root.integrantes.grupo.mcs.duplicateMovieClip("mcs", "mcs"+n, n);

       

    nome = eval("_root.integrantes.grupo");

    nome.mcs.loadMovie(bemArray[n].foto);

   // carregou as fotos direitinho  

    mc.onRelease = function() {

        _root.inicio = mc.id;

        _root.gotoAndPlay("reload");

    }

}

 

Eu acho que esta rolando é que ele não está instanciando o novo MC, eu acho! Tentei fazer algo parecido com:

 

ACTIONSCRIPT
duplica = "mcs"+n;

nome.duplica.loadMovie(bemArray[n].foto);

 

mas também não rodou.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, do jeito que eu postei ae ele pegou a instancia corretamente.. do jeito que tava antes não tava pegando.. a variável mc estava como undefined.. agora eu so não fiz o resto pq não entendi bem a estrutura do teu projeto ae...rsrrs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, do jeito que eu postei ae ele pegou a instancia corretamente.. do jeito que tava antes não tava pegando.. a variável mc estava como undefined.. agora eu so não fiz o resto pq não entendi bem a estrutura do teu projeto ae...rsrrs

É que infelizmente eu tenho que fazer a rotação destes itens ai. por isso o embaraço dentro dos Movies.

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.