LadyAra 0 Denunciar post Postado Janeiro 7, 2011 Boa tarde Sou iniciante em Flash..na realidade só sei fazer animações "bobinhas" mas me foi solicitado(meu primeiro emprego) a construir um menu igual ao do link Menu Circular em 3D Eu criei o documento(com tamanho e largura que eu precisava) criei os botões..converti pra moviclip tudo como explicado mas surgiu a dúvida em onde colocar o action script É na layer 1 de cada movieclip criado ou na layer da Scene1? Dos dois jeitos não funcionou apareceu os seguintes erros 1137: Incorrect number of arguments. Expected no more than 1. 1119: Access of possibly undefined property width through a reference with static type Class. 1119: Access of possibly undefined property height through a reference with static type Class. 1120: Access of undefined property velocidade. 1120: Access of undefined property velocidade. 1120: Access of undefined property velocidade. 1120: Access of undefined property _root. 1120: Access of undefined property i. Warning: 1112: Array(x) behaves the same as new Array(x). To cast a value to type Array use the expression x as Array instead of Array(x). Warning: 1090: Migration issue: The onEnterFrame is not triggered automatically by Flash Player at run time in ActionScript 3.0. You must first register this handler for the event using addEventListener ( 'enterFrame', callback_handler). Warning: 1058: Migration issue: The property _root is no longer supported. This property has been removed. The closest equivalent is the Stage, which serves as the root of the ActionScript 3.0 display list.. Warning: 1058: Migration issue: The property _root is no longer supported. This property has been removed. The closest equivalent is the Stage, which serves as the root of the ActionScript 3.0 display list.. Será que alguém poderia me ajudar com esse tutorial?? Desde já agradeço Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Janeiro 7, 2011 Você ta usando ActionScript 2 em um arquivo salvo como ActionScript 3 Abraços Compartilhar este post Link para o post Compartilhar em outros sites
LadyAra 0 Denunciar post Postado Janeiro 7, 2011 Você ta usando ActionScript 2 em um arquivo salvo como ActionScript 3 Abraços :P ops.....tens razão!! obrigada... estou conseguindo agora....tá rodando..tudo desalinhado mas tá hehe =) Obrigadaaa Compartilhar este post Link para o post Compartilhar em outros sites
LadyAra 0 Denunciar post Postado Janeiro 10, 2011 Você ta usando ActionScript 2 em um arquivo salvo como ActionScript 3 Abraços :P ops.....tens razão!! obrigada... estou conseguindo agora....tá rodando..tudo desalinhado mas tá hehe =) Obrigadaaa Thiago grata pela ajuda...mas se não for pedir muito como faço para pegar a posição do menu central..sabe o que está no meio? pois preciso que somente o central tenha alpha 100...os outros não. e no exemplo do tutorial..somente o mais afastado fica com alpha minimo. por favor..me ajude..como pego a posição central... já tentei isso if(ptr._xscale == ptr._x){ ptr._alpha = alphaMaior; } só que ai todo mundo fica com alpha 100% Me ajude fazendo favor, meu prazo de entrega acaba hoje e só falta isso pra aprovarem. Desculpa reviver o post,mas creio que não faz sentido criar outro com o mesmo nome :!: function posCircular(angulo, raio) { var pos = new Object(); var rad = angulo*conversao; pos.x = Math.sin(rad)*raio; pos.y = Math.cos(rad)*raio; return pos; } // funcao para ser chamada na mesma frequencia da animacao // e que eh responsavel por girar o menu this.onEnterFrame = rodar; function rodar () { // calculamos se o mouse esta fora da area central // e com que velocidade o menu ira girar velocidade = (this._xmouse-xIni); if (Math.abs(velocidade)<=mouseSeguro) { velocidade = 0; } else { velocidade *= aceleracao; } // giramos o menu todo angulo += velocidade; // reposicionamos cada item do menu for (i=0; i<clips.length; i++) { // criar alias para o clipe de filme atual var ptr = this[clips[i]]; // calcular a diferenca angular desse menu // em relacao a origem da roda ptr.difAngular = difAngular*i; var centro = difAngular*i; // buscar as posicoes X (profundidade) e Y (altura) do menu var pos = posCircular(angulo+ptr.difAngular, raio); ptr._x = xIni+pos.x; // calcular percentual de afastamento do menu // para alterar seu tamanho e transparencia var perc = (pos.y+raio)/dobroRaio; [b]if(pos = centro){ ptr._alpha = perc*difAlpha+alphaMinimo; }else{ ptr._alpha = alphaMaior; }[/b] ptr._xscale = ptr._yscale=perc*difEscala+escalaMinima; // colocar o menu acima dos que estao mais afastados ptr.swapDepths(pos.y+dobroRaio); // alterar posicao vertical do menu var pctPos = (ptr._xscale-escalaMinima)/(difEscala/100); var posAlt = (pctPos*(diffAltura/100))+alturaMinima; ptr._y = posAlt; trace(posAlt) } }; Mudei o que está em negrito e consegui deixar alpha 100 em um e minimo nos outros..o problema é que só uma imagem fica com alphamaximo o tempo todo...tipo é como se eu estivesse definindo que a image1 = alphaMaior. acho que quase consegui pegar a posição central.. Mas eu queria que todo mundo que estive no centro...ficasse com alphaMaior = 100; Alguma idéia..por favor :( Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Janeiro 10, 2011 Stage.width/2 largura Stage.height/2 Altura Você pega o meio do arquivo SWF Abraços Compartilhar este post Link para o post Compartilhar em outros sites
LadyAra 0 Denunciar post Postado Janeiro 10, 2011 Fiz como tu ensinou // posicao central do menu em X e Y var xIni = Stage.width / 2; var yIni = Stage.height / 2; var centro = xIni + yIni; //[b]e lá em baixo[/b] ptr._xscale = ptr._yscale=perc*difEscala+escalaMinima; // colocar o menu acima dos que estao mais afastados ptr.swapDepths(pos.y+dobroRaio); var vale = ptr.getDepth(); // alterar posicao vertical do menu var pctPos = (ptr._xscale-escalaMinima)/(difEscala/100); var posAlt = (pctPos*(diffAltura/100))+alturaMinima; ptr._y = posAlt; if(ptr.getDepth() == centro){ ptr._alpha = alphaMaior; } trace(posAlt) } Ainda não deu :ermm: Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Janeiro 11, 2011 Depth nunca vai ser == centro... Depth = profundidade do MC você quer a posição dele... if(ptr._x == xIni && ptr._y == yIni) Isso que você quer fazer. Abraços Compartilhar este post Link para o post Compartilhar em outros sites