Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

maicon_m

Easing não funciona no retorno

Recommended Posts

Ae pessoal.

 

Estou criando um efeito no menu com o easing. Ele esta funcionando, mas no retorno do efeito, quando tira o mouse e ele retorna ao tamanho normal, ele não cria o bounce.

 

Os passos: passa o mouse sobre ele ocorre aumento de 0.2 no tamanho e um efeito no final da expansão. Quando tira o mouse ele retorna ao tamanho normal, mas não acontece o efeito. Mas se no retorno, ao invés de eu colocar o 1 eu coloco 0.8 ele funciona normal.

 

Vejam o código

 


menu_mc.inst_bt.addEventListener(MouseEvent.MOUSE_OVER, institucional);
menu_mc.inst_bt.addEventListener(MouseEvent.MOUSE_OUT, institucional_out);

function institucional(event:MouseEvent):void{
var tweenInst:Tween = new Tween(menu_mc.institucional_mc,"scaleX", Back.easeOut, scaleY, 1.2, 1, true);	
var tweenInst1:Tween = new Tween(menu_mc.institucional_mc,"scaleY", Back.easeOut, scaleY, 1.2, 1, true);	
}

function institucional_out(event:MouseEvent):void{
var tweenInst:Tween = new Tween(menu_mc.institucional_mc,"scaleX", Back.easeOut, scaleY, 1, 1, true);	
var tweenInst1:Tween = new Tween(menu_mc.institucional_mc,"scaleY", Back.easeOut, scaleY, 1, 1, true);	
}

Estou me embrenhando meio cego no AS3, não tenho experiência, mas preciso fazer.

 

O que vocês me sugerem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não repita o nome das variaveis

 

Crie elas fora das funções como var tweenInst:Tween = new Tween()

E dentro da função faça tweenInst = new Tween e suas propriedades.

 

Mas se eu fosse você eu só faria um tweenInst.yoyo() na function de out

Pois ai ele vai repetir o efeito de ida só que contrario.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo berseck fiz como você disse e funcionou. Já tinha visto algo sobre yoyo()..

 

Da primeira vez que passo e tiro o mouse faz o tween corretamente, mas nas seguintes a animação ocorre somente quando eu tiro o mouse de sobre a imagem. Quando passo o mouse sobre ela não funciona.

 

O código esta assim:

 


var tweenImgX:Tween = new Tween(img01_mc,"scaleX", Back.easeOut, scaleX, 1.1, 1, true);
var tweenImgY:Tween = new Tween(img01_mc,"scaleY", Back.easeOut, scaleY, 1.1, 1, true);	

tweenImgX.stop();
tweenImgY.stop();

function amplia01(event:MouseEvent):void{
tweenImgX.resume();	
tweenImgY.resume();	
}

function recolhe01(event:MouseEvent):void{
tweenImgX.yoyo();	
tweenImgY.yoyo();	
}

Fiz alguns testes e pesquisei, mas não encontrei solução...

 

E aproveitando o post, como posso fazer este código mais genérico para utilizar com outros movieclips? Tentei com this e e.target, mas não tive sucesso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça assim:


var tweenImgX:Tween = new Tween();
var tweenImgY:Tween = new Tween();

function amplia01(event:MouseEvent):void{
tweenImgX = new Tween(img01_mc,"scaleX", Back.easeOut, scaleX, 1.1, 1, true);
tweenImgY = new Tween(img01_mc,"scaleY", Back.easeOut, scaleY, 1.1, 1, true);  
}

function recolhe01(event:MouseEvent):void{
tweenImgX.yoyo(); 
tweenImgY.yoyo(); 
}

Assim deve funcionar ;)

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.