rafa440 0 Denunciar post Postado Outubro 19, 2010 Ola amigos... Seguinte, pesquisei na net e achei um .FLA muito interessante, open source e tudo mais... O que ele faz, assim que abre o SWF, ele aparece uma palavra que você queira e, ao clicar em uma das letras, aparecem outras "palavras",só que, são letras aleatórias... http://www.levitated.net/daily/levRunes.html Se puderem baixar para ver os codigos, é que há muitos códigos pelo FLA... O que eu queria mudar e não consegui foi que eu queria que, ao invez de palavras aleatorias, aparecessem palavras pré selecionadas, por exemplo, colocando a palavra "Teste", se clicar em "T" aparece "Tecnologia", no "E" aparece "Educação", no "S"... E isso em todas as letras que possam aparecer... Queria que explicassem, mostrassem o caminho, me falando qual função eu deveria trocar e por qual e não que dessem o codigo pronto já pq eu queria aprender e não acabar logo... De qualquer forma, eu vou continuar olhando o codigo pra ver se consigo, se conseguir, aviso aqui. Agadeço desde já. Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Outubro 20, 2010 Coloca todas as palavras num XML que você quer... relacionado as letras Puxa esse XML criando um Array com elas E quando a pessoa clicar na letra T você faz uma busca no array referente a aquela letra e mostra um valor randomico pré selecionado que você colocou que vai vir do XML Abraços Compartilhar este post Link para o post Compartilhar em outros sites
rafa440 0 Denunciar post Postado Outubro 20, 2010 Então, tipo, eu coloco só a palavra, por exemplo, só teste, ou coloco algo ligando o T ao teste? E como, ali, nesse codigo, eu consigo identificar que a pessoa clicou na letra T? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Outubro 20, 2010 Cada letra ali no caso é um MC separado ;) Você teria que fazer 1... faz 1 MC que contem um campo de texto e duplica ele eternamente... só mudando o conteúdo. E sim teria que ser relacionado ao T,A, Z etc... E ai você usaria essas letras como index para procurar na array que contém a informação que você deseja informar. Abraços Compartilhar este post Link para o post Compartilhar em outros sites
rafa440 0 Denunciar post Postado Outubro 21, 2010 beleza, só pra eu ver se eu entendi, quando ele faz as letras aleatorias, está criando varios MCs, cada uma sendo um... Eu tenho que fazer um MC com um campo de texto dinamico(?) dentro... Ai, no xml, eu colocaria algo como T = Tecnologia... (não entendo nada de XML, ainda vou pesquisar) é isso? Desculpa se estou sendo burro. Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Outubro 22, 2010 É exatamente isso você cria um movieclip q contem um campo de texto dentro dele E duplica ;) Bem fácil de fazer com AS 3 ou com AS 2 E ai tudo q você tem q fazer é um loop duplicando e colocando as letras para formar a palavra desejada. dando um split na palavra e pegando letra por letra e colocando 1 em cada movieclip E pegar o conteúdo do XML Tem varios tutoriais de XML na net Um q eu gosto bem é do Kirupa Abraços Compartilhar este post Link para o post Compartilhar em outros sites
rafa440 0 Denunciar post Postado Outubro 22, 2010 beleza, vamos lah, daki a pouco você vai me chingar, antes de tudo vlw pela paciencia cara eu criei um movieclip e coloquei um dinamic text com a letra a dentro pra ele duplicar usarei isso: var i = 0; function duplica(){ var i = _root.i; _root.mc.duplicateMovieClip("novo" + i, i); _root.i++; } var loop = setInterval(duplica, 100); até aqui tudo certo... Mas, você estava querendo dizer que, na hora de duplicar, eu coloco outra letra no lugar do A? ou não? e Split? Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Outubro 25, 2010 Sim exatamente isso Você vai fazer algo que loope com uma array de letras Exemplo var letras = split("","Telhado"); var duplicate:MovieClip; var mc:MovieClip = setUpContainer(); trace(letras); //output T,e,l,h,a,d,o for (i = 0; i < letras.length; i++) { duplicate = mc.duplicateMovieClip("clip-" + i, i); campo = duplicate.createTextField("letra", i + 1000, 0, 0, 20, 20); //(instancia, depth, x, y, width, height) são os campos do createTextField campo.text = letra[i]; } function setUpContainer():MovieClip { //crio o mc que vai se repetir var mc:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth()); //Do o tamanho dele var w:Number = 20; //Do a altura dele var h:Number = 20; //Cor que ele vai ser preenchido mc.beginFill(0xFFFFFF); //Crio as linhas do mc mc.lineTo(w, 0); mc.lineTo(w, h); mc.lineTo(0, h); mc.lineTo(0, 0); mc.endFill(); //Retorno o clip return mc; } Deve ser algo assim :) Como eu to de mudança e o computador não é meu, eu não testei para ver se funciona... mas o caminho é esse ai Se quiser saber como fazer duplicateMovie Veja aqui o meu exemplo: http://berseck.wordpress.com/2009/06/24/botoes-com-texto-dinamico/ Abraços Compartilhar este post Link para o post Compartilhar em outros sites
rafa440 0 Denunciar post Postado Outubro 26, 2010 cara, eu até consegui entender umas coisas no codigo... tipo, que o Split separa letra por letra a palavra que eu quero, certo? ou seja, voce criou a variavel letras que é igual a cada letra da palavra telhado separadamente certo? eu consegui alterar algumas coisas como a cor do mc que cria e o tamanho, mas, só fiquei nisso, ele cria um quadrado preto sem nada preto... e no output vem um "undefined" Tipo, pelo que entendi tenho que colocar esse codigo dentro do MC que eu vou duplicar depois... só que ele só cria o mc dentro do movieclipe contendo apenas uma caixa preta... não sei se fiz algo errado, mudei essa parte só: function setUpContainer():MovieClip { //crio o mc que vai se repetir var mc:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth()); //Do o tamanho dele var w:Number = 20; //Do a altura dele var h:Number = 20; //Cor que ele vai ser preenchido mc.beginFill(0xFFFFFF); //Crio as linhas do mc mc.lineTo(w, 0); mc.lineTo(w, h); mc.lineTo(0, h); mc.lineTo(0, 0); mc.endFill(); //Retorno o clip return mc; } sendo a cor e a altura e largura... eu tentei colocar a instancia do texto denimaco igual algumas palavras que parecem ser nomes de instâncias, mas, não deu certo e nem fora do MC e dando a instância pra ele tbm... Não sei o que to deixando passar... Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Outubro 31, 2010 Esse código passado faz exatamente isso ele cria um MovieClip preto no beginFill é a cor que ele vai preencher o MovieClip O que você pode fazer é não preencher com fundo nenhum. Ou uma cor de acordo com sua necessidade em hexadecimal. Quanto ao resto você tem que criar um código seu eu não tenho esse código pronto. Para lhe dar como exemplo. abraços Compartilhar este post Link para o post Compartilhar em outros sites