Ritz 0 Denunciar post Postado Março 4, 2009 Oi Pessoal, Tenho uma variável definida como icone1, quero que dependendo do resultado dessa variável que vem de um txt o flash faça uma ação de ir a um determinado frame dentro de um movie clip, isso em action 2, alguém ai sabe como? Poderia me ajudar? Estou tentando isso: coloquei no em um movie clip que participa da animação e contém as variáveis (o movie onde eu quero que ele mude de frame de acordo com o resultado é outro, não é esse, este só contem as variáveis): código onClipEvent(load){ var icone1; if(icone1 == "cc" ){ _root.mc.icones.gotoAndStop("2") trace("1"); }; if(icone1 == "ccn"){ _root.mc.icones.gotoAndStop("3") trace("2"); }; if(icone1 == "ch"){ _root.mc.icones.gotoAndStop("4") trace("3"); }; if(icone1 == "chn"){ _root.mc.icones.gotoAndStop("5") trace("4"); }; if(icone1 == "cv"){ _root.mc.icones.gotoAndStop("6") trace("5"); }; } a variável já esta sendo carregada no palco, como: var intervalo:Number; var contaTxt:Number = 0; var arrTextos:Array = new Array(); function inicia():Void { chamaIntervalo(); cadastraTextos(); leTexto(); } function chamaIntervalo():Void { intervalo = setInterval(leTexto, 32000); } function leTexto():Void { var lv:LoadVars = new LoadVars(); trace("lendo"); lv.load(arrTextos[contaTxt]); trace("contando"); contaTextos(4); lv.onLoad = function(ok) { if(ok) { _root.icone1 = this.icone1; } else { trace("erro"); } } } function cadastraTextos():Void { arrTextos.push("SaoPaulo-SP.txt", "RiodeJaneiro-RJ.txt", "BeloHorizonte-MG.txt", "Brasilia-DF.txt","Goias-GO.txt"); } function contaTextos():Void { if( contaTxt < arrTextos.length ) { contaTxt++; } if( contaTxt == arrTextos.length ) { contaTxt = 0; } } inicia(); Tb quero aproveitar e agradecer a ajuda dos colegas aqui do forum, com as actions feitas e funcionando no palco, desde flash. OBRIGADA! \o/ Estou fazendo esse flash em pedacinhos, como vcs podem perceber..rss...não sei praticamente nada de actions, to sofrendo, mas um dia a coisa sai..kkk...ta quase chegando no fim....agradeço toda a ajuda que vier e se possível explicada, pois sou meio burra nesse setor. abraços Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Março 4, 2009 Olá Tentei não mudar muito o seu código, apenas tirei a função cadastraTextos pois seria mais fácil fazer isso já na declaração da Array. Se quiser podemos ver depois mais coisas que podem ser simplificadas nesse código. Outra coisa foi esquecer esse código dentro do movieclip. Além de não ser recomendado colocar actions direto no mc, elas estavam sendo executadas na hora errada, ou seja, antes de saber quem era icone1. Veja agora: var intervalo:Number; var contaTxt:Number = 0; var arrTextos:Array = new Array("SaoPaulo-SP.txt", "RiodeJaneiro-RJ.txt", "BeloHorizonte-MG.txt", "Brasilia-DF.txt", "Goias-GO.txt"); function inicia():Void { chamaIntervalo(); leTexto(); } function chamaIntervalo():Void { intervalo = setInterval(leTexto, 32000); } function leTexto():Void { var lv:LoadVars = new LoadVars(); trace("lendo"); lv.load(arrTextos[contaTxt]); trace("contando"); contaTextos(); lv.onLoad = function(ok) { if(ok) { _root.icone1 = this.icone1; mudaIcone(); } else { trace("erro"); } } } function contaTextos():Void { if( contaTxt < arrTextos.length ) { contaTxt++; } if( contaTxt == arrTextos.length ) { contaTxt = 0; } } function mudaIcone():Void { if(_root.icone1 == "cc" ){ _root.mc.icones.gotoAndStop("2") trace("1"); } if(_root.icone1 == "ccn"){ _root.mc.icones.gotoAndStop("3") trace("2"); } if(_root.icone1 == "ch"){ _root.mc.icones.gotoAndStop("4") trace("3"); } if(_root.icone1 == "chn"){ _root.mc.icones.gotoAndStop("5") trace("4"); } if(_root.icone1 == "cv"){ _root.mc.icones.gotoAndStop("6") trace("5"); } } inicia(); Com a função mudaIcone() dentro do onLoad, você sempre mudará o ícone na hora certa, depois de receber os dados do txt. Veja se está tudo ok aí! http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 4, 2009 Oi Antonio, Bem testei aqui, melhorou o código e agora ele lê na janela de saida na ordem correta, porem continua aparecendo aleatoriamente os icones lidos, como se ele lesse do txt e simplesmente jogasse na tela, sendo que a cada animação ele chama uma das variáveis icone, na janela aparece 1,2,1 pois esta retornando "cc", "ccn", "cc"...ele deveria aparecer o ícone "cc", a variável icone1 é a primeira e esta com ="cc", então ele deveria aparecer o icone "cc", primeiro, depois quando aparecesse o icone2 que esta = "ccn", mudasse para o icone "ccn" e no final da animação, quando aparece icone3 que esta ="cc", voltasse a aparecer o icone "cc", mas ele lê os traces na ordem, porem não espera aparecer o resultado da variável, ele simplesmente joga o último ou o primeiro ícone na tela. coloquei assim: var intervalo:Number; var contaTxt:Number = 0; var arrTextos:Array = new Array("SaoPaulo-SP.txt", "RiodeJaneiro-RJ.txt", "BeloHorizonte-MG.txt", "Brasilia-DF.txt", "Goias-GO.txt"); function inicia():Void { chamaIntervalo(); leTexto(); } function chamaIntervalo():Void { intervalo = setInterval(leTexto, 32000); } function leTexto():Void { var lv:LoadVars = new LoadVars(); trace("lendo"); lv.load(arrTextos[contaTxt]); trace("contando"); contaTextos(); lv.onLoad = function(ok) { if(ok) { _root.cidade = this.cidade; _root.dia1 = this.dia1; _root.chuva1 = this.chuva1; _root.max1 = this.max1; _root.min1 = this.min1; _root.dia2 = this.dia2; _root.chuva2 = this.chuva1; _root.max2 = this.max2; _root.min2 = this.min2; _root.dia3 = this.dia2; _root.chuva3 = this.chuva3; _root.max3 = this.max3; _root.min3 = this.min3; _root.icone1 = this.icone1; mudaIcone1(); _root.icone2 = this.icone2; mudaIcone2(); _root.icone3 = this.icone3; mudaIcone3(); } else { trace("erro"); } } } function contaTextos():Void { if( contaTxt < arrTextos.length ) { contaTxt++; } if( contaTxt == arrTextos.length ) { contaTxt = 0; } } function mudaIcone1():Void { if(_root.icone1 == "cc"){ _root.mc.icones.gotoAndStop("2") trace("1"); } else if(_root.icone1 == "ccn"){ _root.mc.icones.gotoAndStop("3") trace("2"); } else if(_root.icone1 == "ch"){ _root.mc.icones.gotoAndStop("4") trace("3"); } else if(_root.icone1 == "chn"){ _root.mc.icones.gotoAndStop("5") trace("4"); } else if(_root.icone1 == "cv"){ _root.mc.icones.gotoAndStop("6") trace("5"); } } function mudaIcone2():Void { if(_root.icone2 == "cc"){ _root.mc.icones.gotoAndStop("2") trace("1"); } else if(_root.icone2 == "ccn"){ _root.mc.icones.gotoAndStop("3") trace("2"); } else if(_root.icone2 == "ch"){ _root.mc.icones.gotoAndStop("4") trace("3"); } else if(_root.icone2 == "chn"){ _root.mc.icones.gotoAndStop("5") trace("4"); } else if(_root.icone2 == "cv"){ _root.mc.icones.gotoAndStop("6") trace("5"); } } function mudaIcone3():Void { if(_root.icone3 == "cc"){ _root.mc.icones.gotoAndStop("2") trace("1"); } else if(_root.icone3 == "ccn"){ _root.mc.icones.gotoAndStop("3") trace("2"); } else if(_root.icone3 == "ch"){ _root.mc.icones.gotoAndStop("4") trace("3"); } else if(_root.icone3 == "chn"){ _root.mc.icones.gotoAndStop("5") trace("4"); } else if(_root.icone3 == "cv"){ _root.mc.icones.gotoAndStop("6") trace("5"); } } inicia(); Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Março 4, 2009 Hum.. Ritz, tem como você postar um link para o fla? Pois pra mim parece que a lógica está certa.. Se der mande o txt também, aí vai dar pra analisar melhor. Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 4, 2009 Oi Antonio, Segue o link dos arquivos zipados: www.tatutoca.com/tatutoca/selo_2009_testando.rar muito muito muito obrigada!!!!!! Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Março 5, 2009 Olá Agora eu entendi porque você estava tentando colocar as actions direto no mc antes... mas acabei resolvendo de um modo diferente. link Veja que criei uma função que troca os ícones e eu a chamo no tempo certo de dentro do mc. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 5, 2009 OI Antonio, você pode colocar o link de novo? Esta dando erro. VALEU! Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Março 5, 2009 Hum.. tentei aqui e foi normal.. deve ser o rapidshare q estava ruim. De qq jeito aqui vai outro: http://rapidshare.com/files/205831502/selo...9_sacocheio.zip Compartilhar este post Link para o post Compartilhar em outros sites
Ritz 0 Denunciar post Postado Março 6, 2009 Antoniooooooo!!! Valeuzão!!!!!! Muito, muito obrigada!!!!!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif abraços Rita Compartilhar este post Link para o post Compartilhar em outros sites