leila•trupe 1 Denunciar post Postado Março 22, 2006 Olá PessoALL!Tenho um MC criado na biblioteca. É uma bolinha com vários efeitos e botão transparente dentro, etc. Quero colocar 5 instâncias dela no stage, com tamanhos e posições diferentes. Preciso criar via action para que cada uma apareça num certo intervalo de tempo.Como faço isso?Crio um emptyMovieClip e depois dou loadMovie dentro dele??? Tem outro jeito de fazer?Agradeço antecipadamente todos que responderem...hugs leila Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 22, 2006 Então, se você ja tem o movieclip na biblioteca, você vai abrir a biblioteca (ja teve gente no fórum que chamou isso de livraria) e clicar com o botão direito do mouse encima do nome do mc na biblioteca, no menu que vai aparecer tem o Linkage, clicando nele aparece outra janela onde você vai ativar o "export for action script" ai ele vai abrir um campo Identifier, la você coloca um id pro seu movieclip, por exemplo "mc". Depois disso é só você usar o attachMovie para puxar o mc da biblioteca pro palco, se quiser que aparece com intervalos de tempo, depois de conseguir inserir o mc no palco faça uma busca no fórum por setInterval ja postei bastante sobre isso no fórum. abraço, Carneirinho Compartilhar este post Link para o post Compartilhar em outros sites
leila•trupe 1 Denunciar post Postado Março 22, 2006 Valeu muito!!! Tá "fununciando"!Grata, leila Compartilhar este post Link para o post Compartilhar em outros sites
leila•trupe 1 Denunciar post Postado Março 22, 2006 Só mais uma coisa... Não tem como dar attach nas instâncias no mesmo level né?? Só mudando de level elas ficam todas visíveis no mesmo plano?(eu coloquei o mesmo level e quando ele cria - attachMovie - a próxima instância ele apaga a anterior... - estou usando setInterval)hugs leila Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 22, 2006 Só usar a variavel pra aumentar o nível, por exemplo: i = 1; _root.attachMovie("mc", "mc" + i, i); i++; ai ele vai trocando sozinho o nome dos movies e os níveis tb. abraço, Carneirinho Compartilhar este post Link para o post Compartilhar em outros sites
leila•trupe 1 Denunciar post Postado Março 22, 2006 Então, foi isso mesmo que eu fiz. Só que agora pra referenciar os MCs eu tenho que indicar os levels deles né?? Eu acho que eu estruturei errado o início... Dá uma olhada: stop();import mx.transitions.Tween; import mx.transitions.easing.*;var numeroMC:Number = 0; //contador para referenciar as 8 instâncias da bolavar diametroMC:Number = 53;//a bola inicial tem 60px de diametro e todas as outras têm um acréscimo de 7px no tamanho, //por isso o valor inicial é 53 (60 - 7)//abaixo as posições x,y de cada bolavar pos_x:Array = new Array(123, 64.5, 37, 48.5, 109, 209.5, 338, 456.5);var pos_y:Array = new Array(30, 97.5, 188, 290.5, 381, 442.5, 446, 378.5);bolas = setInterval(function() { numeroMC += 1; i = numeroMC - 1; mc_name = String("bola"+numeroMC+"_mcbt"); diametroMC += 7; if (numeroMC >= 8){ clearInterval(bolas); } attachMovie("bola_mcbt", mc_name, i); setProperty(mc_name, _x, pos_x[i]); setProperty(mc_name, _y, pos_y[i]); new Tween(eval(mc_name), "_xScale", Elastic.easeOut, 10, diametroMC, 1, true); new Tween(eval(mc_name), "_yScale", Elastic.easeOut, 10, diametroMC, 1, true); eval(mc_name).gotoAndPlay("ficacinza");}, 120); --> Dá pra ver o flash funcionando aqui. --> E baixar o fla aqui. Agora eu quero fazer mais 2 coisas: 1. Acionar o tween quando o mouse dá rollOut no MC (o MC tem um botão transparente dentro que faz ele ficar azul no rollOver e esmaecer no rollOut, agora eu queria acrescentar o tween elástico, mas não sei como fazer) 2. Girar a cena toda. Quando clicar em uma bolinha ela gira a cena toda até que a bola selecionada fique no topo e depois caia dentro da bola branca grande. Compliquei né?? Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 23, 2006 Não achei as ações no seu movieclip no palco, em qual layer esta? O que visualmente esta errado é o seguinte, você ta aplicando a ação numa string, e isso é errado, pra provar isso você pode colocar a ação nesse lugar: if (numeroMC >= 8){ clearInterval(bolas); } trace(typeof(mc_name)); você vai ver que ele vai retornar como string, pois foi a string que você retornou la encima, o certo seria você usar: stop(); import mx.transitions.Tween; import mx.transitions.easing.*; var numeroMC:Number = 0; //contador para referenciar as 8 instâncias da bola var diametroMC:Number = 53; //a bola inicial tem 60px de diametro e todas as outras têm um acréscimo de 7px no tamanho, //por isso o valor inicial é 53 (60 - 7) //abaixo as posições x,y de cada bola var pos_x:Array = new Array(123, 64.5, 37, 48.5, 109, 209.5, 338, 456.5); var pos_y:Array = new Array(30, 97.5, 188, 290.5, 381, 442.5, 446, 378.5); bolas = setInterval(function() { numeroMC += 1; i = numeroMC - 1; diametroMC += 7; if (numeroMC >= 8){ clearInterval(bolas); } attachMovie("bola_mcbt", "bola"+numeroMC+"_mcbt", i); mc_name = eval("bola"+numeroMC+"_mcbt"); trace(typeof(mc_name)); setProperty(mc_name, _x, pos_x[i]); setProperty(mc_name, _y, pos_y[i]); new Tween(eval(mc_name), "_xScale", Elastic.easeOut, 10, diametroMC, 1, true); new Tween(eval(mc_name), "_yScale", Elastic.easeOut, 10, diametroMC, 1, true); eval(mc_name).gotoAndPlay("ficacinza"); }, 120); Assim ele deve retornar como movieclip. abraço, Carneirinho Compartilhar este post Link para o post Compartilhar em outros sites
leila•trupe 1 Denunciar post Postado Março 23, 2006 Nossa... eu to enchendo o saco né?....Bem, depois de criados os MCs por actions (cada um ficou num level) eu preciso que aconteça uma coisa diferente (mostrar um "texto") passando o mouse por cima de cada um e depois preciso movimentá-los na tela. Como eu referencio o MC criado? _level1.nome_mc ??? Compartilhar este post Link para o post Compartilhar em outros sites
carneirinho 7 Denunciar post Postado Março 23, 2006 Enquanto suas atitudes não tiverem ligações com a tabela de preços, você não estará enchendo o saco, o que me irrita é nego pedindo coisa pronta e não tirando dúvidas e querendo aprender, rs. Bom, você esta usando isso: mc_name = eval("bola"+numeroMC+"_mcbt"); trace(typeof(mc_name)); setProperty(mc_name, _x, pos_x[i]); setProperty(mc_name, _y, pos_y[i]); o uso de setProperty é trabalhoso, você pode usar o with, ai se tiver um campo de texto dentro do seu mc, é só instanciar e atribuir textos a ele através da propriedade text, veja se não acha mais fácil trabalhar assim: mc_name = eval("bola"+numeroMC+"_mcbt"); with(mc_name){ _x = valor; _y = valor; texto.text = "texto"; } ou pode usar tb: mc_name = eval("bola"+numeroMC+"_mcbt"); mc_name._x = valor; mc_name.i = i; mc_name.texto.text = i; mc_name.onRelease = function(){ trace(this.i); } testa ai e ve como você acha mais fácil abraço, Carneirinho Compartilhar este post Link para o post Compartilhar em outros sites
leila•trupe 1 Denunciar post Postado Março 23, 2006 Valeu cara!!! Se estivesse aqui perto tinha ganho um beijo na testa!! rssobrigadaça!leila Compartilhar este post Link para o post Compartilhar em outros sites