Ir para conteúdo

POWERED BY:

Arquivado

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

xShacka

Problemas com tween

Recommended Posts

Salve povo do imasters !!!

Seguinte deem uma olhada no site q estou fazendo ( www.rovale.com.br/novo ) seguinte estou fazendo os botoes e quando passo o mouse sobre ele e tiro rapido sem esperar terminar a animação na proxima vez q passo o mouse ele some alguns elementos ou faz a ação contrario no caso "rollOut", e nao sei como resolver esse problema segue abaixo as actions do meu botao.

 

barHome._alpha = 0;
barEmpresa._alpha = 0;
barProdutos._alpha = 0;
barRepresentantes._alpha = 0;
barContato._alpha = 0;

///////////////////////////////

cinHome._alpha = 0;
cinEmpresa._alpha = 0;
cinProdutos._alpha = 0;
cinRepresentantes._alpha = 0;
cinContato._alpha = 0;

///////////////////////////////

var bra = ""
var cin = ""
var bar = ""

function vai(bra,cin,bar)
{
	new mx.transitions.Tween(bra, "_y", mx.transitions.easing.Strong.easeOut, 82, 30, 1, true);
	new mx.transitions.Tween(bra, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1, true);

	new mx.transitions.Tween(cin, "_y", mx.transitions.easing.Strong.easeInOut, 82, 55, 1, true);
	new mx.transitions.Tween(cin, "_alpha", mx.transitions.easing.Strong.easeOut, 0, 100, 2, true);

	new mx.transitions.Tween(bar, "_alpha", mx.transitions.easing.Strong.easeOut, 0, 100, 1, true);
}

function volta(bra,cin,bar)
{
	new mx.transitions.Tween(bra, "_y", mx.transitions.easing.Strong.easeInOut, 30, 82, 1, true);
	new mx.transitions.Tween(bra, "_alpha", mx.transitions.easing.Strong.easeOut, 0, 100, 2, true);

	new mx.transitions.Tween(cin, "_y", mx.transitions.easing.Strong.easeOut, 55, 82, 1, true);
	new mx.transitions.Tween(cin, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1, true);

	new mx.transitions.Tween(bar, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 4, true);
}

btHome.onRollOver = function()
{
	vai(braHome,cinHome,barHome);
};
btHome.onRollOut = function()
{
	volta(braHome,cinHome,barHome);
};

Compartilhar este post


Link para o post
Compartilhar em outros sites

é o tween do flash? se for, sempre da uns bugs chatos (e me aconselharam a não usar) outro dia tive problema com ele.

 

tenta usar outro:

PARA AS2 - mc tween - http://hosted.zeh.com.br/mctween/index.html

para AS3 - twenner (caurina), lite (max) - depende de como alguns conhecem.

basica é mesma coisa na hora de escrever só que menos texto e mais simples.

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tira o RollOver e o RollOut

 

E faz com hitTest

 

Porque RollOver e RollOut se você mexer o mouse rapidamente ele se perde...

Ai o que você pode fazer é usar a mesma variavel de Tween sem criar um novo e obrigar ele a executar a ação.

 

Isso vai te dar muita dor de cabeça é um bug velho que existe tanto no Javascript como no ActionScript

O que você tem que fazer é bolar um jeito de ele executar toda a sua ação até o fim e ai você libera para poder fazer denovo ou não

Ou seja vai ter que por um if else relacionado com um onMotionFinish

 

Abraços

 

PS:Se ninguem respondeu é porque não sabem, não tiveram tempo de responder, ou pq não deu... ninguem aqui é help desk!!!! não se esqueça disso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Berseck, como uso hitTeste ao invez de rollover rollout nunca usei isso, se tiver como so me da um exemplo de rollover e rollout com hitTest fico grato.

 

Eu sei q nao é help desk simplesmente pidi uma ajuda ou algum ponto de vista caso solbessem, nao desrespeitando, c nao quisesse ter respondido ou fez de raiva sei la pelo fato de ser moderador nao fizesse.

 

obs: Nao estou desrespeitando simplesmente axei chato ter dito nao e help desk, tenho conciencia diso e q é um forum troca de informações e tirar duvidas com qm pode ajudar.

 

obrigado e disculpe o encomodo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem problemas

 

Eu me referi o help desk ao seu up

 

Quando ao hitTest você faz assim:

menu.onMouseMove = function(){
if(my_mc.hitTest(_root._xmouse, _root._ymouse))
{
 	trace("RollOver") 
}else if(menu.hitTest(_root._xmouse, _root._ymouse)){
 	trace("RollOut")
}
}

Ou seja esse evento ai vai disparar em qualquer lugar que você esteja longe do MC de teste

 

Eu normalmente uso 2 testes o sobre o objeto do menu desejado, e sobre o menu para dizer que foi rollOut

Mas ai você pode fazer do jeito que lhe melhor caber

 

Ou tentar fazer da primeira maneira, que expliquei, faz com o rollOver mesmo só que só permite que o usuário faça alguma outra ação quando iniciar o rollOut quando ele terminar a animação

Usando o onMotionFinish

 

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.