Ir para conteúdo

POWERED BY:

Arquivado

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

Ítalo Santos

[Resolvido] Problema com Tween

Recommended Posts

Olá,

Desde que comecei a usar o as3 tive alguns problemas com a classe tween...

As vezes eu crio uma animação complexa, usando várias instancias da classe ao mesmo tempo, e as vezes a animação simplesmente trava! como se já tivesse chegado ao final mas não chegou!

Já tive esse problema várias vezes nos ultimos meses, e das outras vezes eu procurei uma forma diferente de fazer a animação, seja a mão ou com enterFrame, mas dessa vez eu preciso descobrir o que está havendo de errado...

o engraçado é que esse problema só estou tendo no as3.... Eu já usava a classe tween no as2 há muito tempo e nunca tive esse problema!

Eu não sei mais o que posso fazer, tenho certeza que o problema não está no meu código, pq já revisei 3 vezes e às vezes funciona!

Creio que seja algum bug da classe ou do flash...

Será que alguém pode me dar uma luz?!

 

Att,

Ítalo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

As vezes quando você usa o mesmo nome do tween para fazer varias coisas buga....

 

Principalmente se você declara a função e já a usa...

 

O ideal seja que você declare todos os tweens fora e ai use assim como exemplo:

import fl.transitions.Tween;
var moverPara:Tween = new Tween();

bt.addEventListesner(MouseEvent.CLICK, onClick);

function onClick(m:MouseEvent){
   moverPara = Tween(bt, 'x', Linear.easeIn, 100, 200, 1, true);
}

MOVENDO de Flash & ActionScript http://forum.imasters.com.br/public/style_emoticons/default/seta.gif ActionScript 3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso que você passou não funciona! oO

 

Line 9 - 1137: Incorrect number of arguments. Expected no more than 1.

Line 9 - 1120: Access of undefined property Linear.

Line 4 - 1136: Incorrect number of arguments. Expected 6.

O código que eu usei foi:

 

import fl.transitions.Tween;
import fl.transitions.easing.*;

var moverPara:Tween = new Tween();

bt.addEventListesner(MouseEvent.CLICK, onClick);

function onClick(m:MouseEvent){
   moverPara = Tween(bt, 'x', Linear.easeIn, 100, 200, 1, true);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teste assim...

 

import fl.transitions.Tween;
import fl.transitions.easing.*;

var moverPara:Tween;

bt.addEventListener(MouseEvent.CLICK, onClick);

function onClick(m:MouseEvent){
   moverPara = new Tween(bt, "x", Regular.easeIn, bt.x, bt.x + 30, 1, true);
}

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é, eu tentei isso também, acho que tentei todas as possibilidades possíveis com tween.

O problema é que a animação exige um pouco mais do computador, e quando acontece isso por algum motivo classe tween simplesmente para de funcionar!

Creio que não deva ser um bug da classe e não deve ter como mudar isso =/

 

obs.: O código que você mandou funciona perfeitamente! O problema acontece quando eu uso muitos tweens ao mesmo tempo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom qualquer site com muitas animações ao mesmo tempo vai exigir do processador... da placa de video... e da memoria do computador...

 

Por isso nunca é recomendado que se faça muitas animações com varias coisas ao mesmo tempo... que pode fazer com que o usuario fique com o computador lento... as vezes até mesmo travar!!!

 

Lembrando sempre que o usuario normalmente não tem um computador com mile e uma utilidades... eles normalmente são comuns com placa de video onboard etc...

 

Então nunca é recomendado que se faça nada que exija d+ de um computador... a não ser que seu publico alvo seja de Heavy users

 

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.