JAIMESKT 0 Denunciar post Postado Julho 8, 2010 Boa tarde, pessoal ! é o seguinte, quero ajuda com um seguinte problema ! estou fazendo um site em AS2, aonde tenho 5 links 1 - 2 - 3 - 4 - 5 ------------------------- CONTEUDO ------------------------- aqui no rodapé um SHAPE. ----------------------------------------------------------------- ai tenho a seguinte animação. por Class Tweens ! ------------------------------Animação desce menu 0---------- aparece o fundo que é um foto. --------------- sobe o shape. e fica na tela. -------------- até ai tudo bem ! --------------------------(Animação) O Problema em si ! quero que quando eu clicar no botao. ele abra o a parte de saida do Shape, para mostrar o conteudo do link seguinte. eu consegui fazer isso com o seguinte codigo no botão. on(release){ _root.gotoAndPlay(2) } ai dispara os eventos do 2 link. so que eu tentei fazer assim nas minhas Actions. 2_btn.onRelease = function(){ _root.gotoAndPlay(2) } -- Não funcionou !ai queria ver com vcs um jeito de eu colocar o disparo do botão nas minhas actions, pq quando der rollOver nele, quero que ele dispare um Tween no shape, que vai mexer so um pouco. ai teria que chamar ela dentro do botao né, tentei dar import nas classe Tween e easing dentro do botão, mais da erro tambem, se puderem me ajudar com isso ae, so muito grato. Abraços ! Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Julho 8, 2010 Para colocar a tween dentro do botao é a mesma coisa, porem não pode importar dentro do botao ai da erro mesmo. Um exemplo em as3 import fl.transitions.Tween; // imports necessários import fl.transitions.easing.*; var _tween:Tween; bt.addEventListener("click", go); function go(e:MouseEvent):void{ // aqui seria o seu botao ou mc com comportamento de botao você faria, /* bt.onRelease = function(){_tween = new Tween(barra,"y",Bounce.easeOut,barra.y,e.target.y,2,true);}*/ _tween = new Tween(barra,"y",Bounce.easeOut,barra.y,e.target.y,2,true); } Abs Compartilhar este post Link para o post Compartilhar em outros sites
JAIMESKT 0 Denunciar post Postado Julho 12, 2010 sim, em as3 eu sei que dá pra fazer, so que o site está em as2, ai não sei como fazer. mas mesmo assim, brigado ! Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Julho 12, 2010 sim, em as3 eu sei que dá pra fazer, so que o site está em as2, ai não sei como fazer. mas mesmo assim, brigado ! Abraços É a mesma coisa, man, so que você nao pode dar o import dentro do botao so isso, você faz o include em as 2, e utiliza a classe normalmente, instancia um objeto e determina as propriedades. Abs Compartilhar este post Link para o post Compartilhar em outros sites
JAIMESKT 0 Denunciar post Postado Julho 12, 2010 sim , matheus to resolvendo isso agora, os botoes nao estavam funcionando porque estão dentro de um MC, ai fiz assim: agora ta funcionando botao_mc.linha_btn.onRollOver = function(){ trace('Roll Over'); } botao_mc.linha_btn.onRollOut = function(){ trace('Roll Out'); } ---------------- agora vo tentar por o tween neles :} ------------ o site inteiro está sendo construido em cima de tween, vocês acham que ele pode chegar a travar os Tweens? ai como no as2 não tem Garbage colector, sera que tenho que fazer algo parecido? pra que nao trave esses tween? ai eu so usaria a mesma abordagem ! ----- Ele não está travando isso e só um possibilidade! -- Valeu ajuda! Abraços ! precisar estamos ae :} Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 12, 2010 Se os tweens forem bem formulados e esquematizados, ele não vai travar o computador de ninguem... Agora se eles forem em exagero e com muitas chamadas ao mesmo tempo (dentro de um onEnterFrame por exemplo) ai sim ele pode chegar a travar o computador. De resto não vejo problema algum com a utilização de muitos tweens... eu mesmo uso e nunca tive problemas com isso. Só no caso citado. Abraços Compartilhar este post Link para o post Compartilhar em outros sites
JAIMESKT 0 Denunciar post Postado Julho 12, 2010 aa beleza! mais ocorreu algo aqui"nada haver com os botões", é uma questão de logica, só não estou conseguindo pensar em algo do tipo. como citei acima ! quando eu clico em um botão ele dispara o Tween do shape,seria isso: var Shape_Tween:Tween = new Tween (conteudo_mc,"_y",Strong.easeInOut,0,530,2,true)esse Tween ele cobre o conteudo da pagina atual ! e desce pra exibir o conteudo do link clicado, mais do jeito que eu estou fazendo terá que ser mais ou menos assim ! pra home eu teria que fazer 4 shapes diferentes ! link 1 (para) link 2 || || link 3 || || link 4 || || link 5 é assim sucessivamente para os outros links! isso porque o conteudo dos links são de altura diferentes, ai pra cada um teria que ser um "_y" diferente pra cada link. Não existe uma maneira mais facil de eu fazer isso?? para não ter que fazer dessa maneira? tentei ultilizar fazer assim: mais não dá ! quando o clicasse no link iria : descer o conteudo que o shape irá esconder pra uma coordenada "_y" padrão que eu iria dar pra todos. em seguida subiria o Shape que iria esconder o conteudo pra ir pro link clicado. ai fiz uma função assim! MeuTween.onMotionFinished = function(){ gotoAndPlay("link3") } mais ele não funfa, e nem da erro ! é isso ae, desculpe a minha ignorancia ! mas é que comecei a mexer com flash a pouco tempo, mais preguiça de aprender eu não tenho. e nesse pouco tempo que estou no forum já aprendi demais ! agradeço a todos ! sou muito grato ! abraços! tive uma idéia mais prática ! faço uma função exibeConteudo() com o Tween do shape dentro dela, ai faço outra função onMotionFinished pra que quando acabe aquele Tween ele dê gotoAndPlay("myframe") so que não sei resgatar uma varivel que está dentro de outra função! se puderem me ajudar com este problema ! valeu, Abraços ! Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Julho 13, 2010 Uma dica quando for utilizar muito tween. Eu faço assim, eu declaro uma variavel do tipo tween e instancio ela varias vezes assim eu to sempre usando a mesma variavel. Não é uma boa pratica de programacao, mas no as funciona e nao come memoria desnecessário. Abs Compartilhar este post Link para o post Compartilhar em outros sites
JAIMESKT 0 Denunciar post Postado Julho 13, 2010 beleza, eu fiz assim, declarando elas fora pra tentar chamar na função mais tbm não está dando ! fiz assim ! var conteuNovo_Tween:Tween function exibeConteudo() { var conteuNovo_Tween:Tween = new Tween (conteudo_mc,"_y",Strong.easeInOut,680,300,2,true) } conteuNovo_Tween.onMotionFinished = function () { gotoAndPlay("linha") } botao_mc.linha_btn.onRelease = function(){ exibeConteudo() } botao_mc.linha_btn.onRollOver = function(){ var linha_Tween:Tween = new Tween (botao_mc.linha_btn,"_y",Regular.easeInOut,-1.3,5,0.4,true) } botao_mc.linha_btn.onRollOut = function(){ var linha2_Tween:Tween = new Tween (botao_mc.linha_btn,"_y",Regular.easeInOut,5,-1.3,0.4,true) } Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 13, 2010 Que tal lhe parece isso: var conteuNovo_Tween:Tween = new Tween();function exibeConteudo() { conteuNovo_Tween:Tween = new Tween (conteudo_mc,"_y",Strong.easeInOut,680,300,2,true); conteuNovo_Tween.onMotionfinished = function () { gotoAndPlay("linha") }}botao_mc.linha_btn.onRelease = function(){ exibeConteudo()}botao_mc.linha_btn.onRollOver = function(){ var linha_Tween:Tween = new Tween (botao_mc.linha_btn,"_y",Regular.easeInOut,-1.3,5,0.4,true)}botao_mc.linha_btn.onRollOut = function(){ var linha2_Tween:Tween = new Tween (botao_mc.linha_btn,"_y",Regular.easeInOut,5,-1.3,0.4,true)}Você reparou que você tava re declarando a var dentro da exibeConteudo()? isso tava errado E botei sua função para dentro da outra... uma vez que elas vão estar atreladas e não tem motivos para não ficar uma dentro da outra. Abraços Compartilhar este post Link para o post Compartilhar em outros sites
JAIMESKT 0 Denunciar post Postado Julho 13, 2010 Que tal lhe parece isso: var conteuNovo_Tween:Tween = new Tween();function exibeConteudo() { conteuNovo_Tween:Tween = new Tween (conteudo_mc,"_y",Strong.easeInOut,680,300,2,true); conteuNovo_Tween.onMotionfinished = function () { gotoAndPlay("linha") }}botao_mc.linha_btn.onRelease = function(){ exibeConteudo()}botao_mc.linha_btn.onRollOver = function(){ var linha_Tween:Tween = new Tween (botao_mc.linha_btn,"_y",Regular.easeInOut,-1.3,5,0.4,true)}botao_mc.linha_btn.onRollOut = function(){ var linha2_Tween:Tween = new Tween (botao_mc.linha_btn,"_y",Regular.easeInOut,5,-1.3,0.4,true)}Você reparou que você tava re declarando a var dentro da exibeConteudo()? isso tava errado E botei sua função para dentro da outra... uma vez que elas vão estar atreladas e não tem motivos para não ficar uma dentro da outra. Abraços e eu pensando que não dava pra chama função dentro de função! mais nem tentei fazer tbm ! kkkk funcionou perfeitamente ! daki uns dia vo te que dividi meu sálario com você, kkkk valeu ! Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 13, 2010 Opa dinheiro extra é sempre bem vindo :joia: Que bom que resolveu Abraços Compartilhar este post Link para o post Compartilhar em outros sites
JAIMESKT 0 Denunciar post Postado Julho 13, 2010 mas uma duvida, tem como eu fazer dentro da onMotionFinished. um if else pra tipo assim, pra dar um gotoAndPlay no botao respectivo. Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 13, 2010 Sim você pode fazer quantos if elses você quiser dentro do onMotionFinished Basta você inserir e buscar as informações que quiser perguntar. Abraços Compartilhar este post Link para o post Compartilhar em outros sites