THCB 0 Denunciar post Postado Julho 24, 2010 Alguém sabe me dizer o que essa linha faz? var movimento:Tween = new Tween(alvo, "_y", Back.easeOut, alvo._y, sy-(p*s), 2, true); Eu estou fazendo um scroll e ele está com muito movimento pro meu gosto. Muito tween. Quero um tween pra não ficar seco mas está muito. Quando eu altero os valores dessa linha ele muda, mas eu não entendo nada o que é o que nessa linha. Alguem sabe? O código inteiro do scroll que eu peguei na net, nao sei aonde está aqui: import mx.transitions.Tween; import mx.transitions.easing.*; var mouseListener:Object = new Object(); // coloca no tamanho normal _xscale = _yscale=100; // pode ser um movieclip ou um textfield //aqui mostra qual movieclip ira mexer var alvo = _parent.materiaCompleta; // posição inicial do movieclip em y var sy:Number = alvo._y; // altera o tamanho da barra scrollbar2 = track_height; //poe o pan junto com o track pan._x = track._x=btn_cima._x=btn_baixo._x; // tira a maozinha dos botões btn_baixo.useHandCursor = btn_cima.useHandCursor=pan.useHandCursor=track.useHandCursor=false; // mínimo em _y q o pan pode ir var miny:Number = Math.round(track._y); // máximo em _y q o pan pode ir var maxy:Number = Math.round(track._y+track._height-pan._height); // quando o cara pressionar o botão de cima btn_cima.onPress = function() { _global.parar = 0; mover(); subindo = true; descendo = false; }; // quando tirar o mouse btn_cima.onRelease = btn_cima.onReleaseOutside=function () { subindo = descendo=false; delete _parent.onEnterFrame; }; // quando o cara pressionar o botão de baixo btn_baixo.onPress = function() { _global.parar = 0; mover(); subindo = false; descendo = true; }; // quando tirar o mouse btn_baixo.onRelease = btn_baixo.onReleaseOutside=function () { subindo = descendo=false; delete _parent.onEnterFrame; }; // quando pressionar o pan pan.onPress = function() { // inicia o arrastamento startDrag(this, false, this._x, miny, this._x, maxy); _global.parar = 0; mover(); }; // quando soltar o mouse pan.onRelease = pan.onReleaseOutside=function () { // para o arrastamento stopDrag(); delete _parent.onEnterFrame; }; track.onPress = function() { /* Chamamos a função mover */ _global.parar = 0; mover(); /* Move o pan */ pan._y = _ymouse-pan._height/2; /* Se o pan passar do valor máximo volta para o máximo */ if (pan._y>=maxy) { pan._y = maxy; } /* Se o pan passar do valor mínimo volta para o mínimo */ if (pan._y<=miny) { pan._y = miny; } }; /* Ao girar da bolinha do Mouse */ mouseListener.onMouseWheel = function(delta) { /* Verificamos se o Mouse está em cima das frases ou do ScrollBar */ if (_parent.mascara.hitTest(_parent._xmouse, _parent._ymouse) || _parent.scrollBar.hitTest(_parent._xmouse, _parent._ymouse)) { /* Chamamos a função mover */ _global.parar = 0; mover(); /* Se delta for igual a 3 sobe, senão desce*/ if (delta == 3) { /* Se não estiver a ponto de ir além do que pode */ if (pan._y-1>miny) { pan._y -= 50; } else { pan._y = miny; /* Deletamos o onEnterFrame */ delete _parent.onEnterFrame; } } else { /* Se não estiver a ponto de ir além do que pode */ if (pan._y+1<maxy) { pan._y += 50; } else { pan._y = maxy; /* Deletamos o onEnterFrame */ delete _parent.onEnterFrame; } } } }; /* Função mover */ function mover() { /* Cria o onEnterFrame */ _parent.onEnterFrame = function() { /* Se estiver subindo */ if (subindo) { /* Se não estiver a ponto de ir além do que pode */ if (pan._y-1>miny) { pan._y -= 5; } else { pan._y = miny; /* Deletamos o onEnterFrame */ delete _parent.onEnterFrame; } } /* Se estiver descendo */ if (descendo) { /* Se não estiver a ponto de ir além do que pode */ if (pan._y+1<maxy) { pan._y += 5; } else { pan._y = maxy; /* Deletamos o onEnterFrame */ delete _parent.onEnterFrame; } } /* Calcula */ var s:Number = ((pan._y-miny)/(maxy-miny))*100; var p:Number = (alvo._height-mascara)/95; if (_global.parar == 1) { _parent.materiaCompleta._y = 350; } /* Movemos o alvo */ var movimento:Tween = new Tween(alvo, "_y", Back.easeOut, alvo._y, sy-(p*s), 2, true); }; } /* Adicionamos o listener ao Mouse */ Mouse.addListener(mouseListener); Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Julho 24, 2010 THBC, eu uso AS3, fica por sua conta procurar no Help da Adobe (em português) sobre os parâmetros da Tween para AS2. Ou usar o tradutor do Google. http://help.adobe.com/pt_BR/AS3LCR/Flash_10.0/fl/transitions/Tween.html Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Brito 12 Denunciar post Postado Julho 24, 2010 A linha em questao movimenta o mc chamado alvo, em funcao de y, comeca de onde o movieclip esta e vai ate o resultado do calculo de sy-(p*s), em 2 segundos usando um tween do tipo Back.easeOut. Abs Compartilhar este post Link para o post Compartilhar em outros sites
THCB 0 Denunciar post Postado Julho 24, 2010 e o que eu poderia fazer pra diminuir o tween? deixa um pouco mais seco... Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Julho 24, 2010 Um dos parâmetros é o tempo, basta reduzir. Além da 'Back.easeOut' existem outras opções (easing), teste a que mais lhe agrada. Abs Compartilhar este post Link para o post Compartilhar em outros sites
Thiago de Oliveira Cruz 21 Denunciar post Postado Julho 26, 2010 Fora que se estiver achando que o tempo é d+ coloque 0.2 ou 0.3 e assim... vai no penultimo parametro antes do true Até achar quanto tempo fica ideial Abraços Compartilhar este post Link para o post Compartilhar em outros sites