Ir para conteúdo

POWERED BY:

Arquivado

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

evertinho

[Resolvido] Problemas com scroll de MC

Recommended Posts

Pessoal,

Postei isso já hoje aqui, mas por algum motivo que desconheço meu post sumiu.

Tenho um MC (produtos), o qual quero controlar seu movimento horizontal através de dois botões. vai e vem.

Isso consegui fazer, porém preciso suavizar o movimento, de forma que ele vá parando devagar quando solta o botão.

 

Segue os cógigos que usei:

botão vai:

on (press) {
produtos.onEnterFrame = function() {
if (this._x>-2290) {this._x -= 7;
}};}
on (release) {

produtos.onEnterFrame = null;
}
botão volta:

on (press) {
produtos.onEnterFrame = function() {
if (this._x<-20) {this._x += 7;
}};}
on (release) {
produtos.onEnterFrame = null;
}

Agradeço a colaboração.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo antes de ficar floodando seus tópicos

Leia as regras do forum

Se voltar a floodar será penalizado novamente

 

Você pode fazer o que você quer com alguns if elses

Isso só depende de você... pois você tem que decidir quanto é a distancia que ele começa a diminuir a velocidade etc.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo antes de ficar floodando seus tópicos

Leia as regras do forum

Se voltar a floodar será penalizado novamente

 

Você pode fazer o que você quer com alguns if elses

Isso só depende de você... pois você tem que decidir quanto é a distancia que ele começa a diminuir a velocidade etc.

 

Abraços

 

Desculpe pelo Flood. Não foi na intenção de desrespeitar as regras deste.

Enfim, o que eu queria na verdade amigo, é que ao soltar o botão, o filme pare de forma suave. Eu não conheço muito de programação, então não consigo visualizar a solução do meu problema de maneira fácil.

 

Agradeço suas dicas de qualquer forma, e peço, se possível, que me auxilie de forma mais objetiva.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça mais ifs else dentro do seu proprio if else

 

Só que vai diminuindo o valor.....

 

você tem assim por exemplo:

produtos.onEnterFrame = function() {
if (this._x<-20) {this._x += 7;}
};

Então continue o if else

produtos.onEnterFrame = function() {
if (this._x<-20) { 
    if(this._x <- 40){ 
         this._x += 7;
    }else {
        this._x += 6;
    }
};

 

E assim você vai bricando de if dentro de if como você preferir

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo,

 

Tentei essa solução, mas pelo que pude perceber, isso funcionaria se eu tivesse um momento fixo onde a suavização começaria, o que não é o caso.

O botão de vai e vem aciona o MC pra frente e pra trás conforme o código que postei. Meu problema é, fazer com que no (release) dos botões, a parada do film seja sutil e não brusca como é atualmente, independente do momento. Não sei se me fiz entender.

 

Agradeço,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai você tem que fazer uma regra para isso

 

Pois seu release apenas ta removendo o onEnterFrame......

E por isso que para duro.... pq você para ele...

 

Ai não vai existir mesmo um jeito..... você ou ainda usa o onEnterFrame e da mais um segundo para ele parar...

Ou não faz...

 

Exemplo:

var velocidade:Number = 7;
on (press) {
velocidade = 7;
produtos.onEnterFrame = function() {
if (this._x>-2290) {this._x -= velocidade;
}};}
on (release) {
var tempo = setInterval(intervalo, 100);// 100 = valor em milisegundos menos de 1 segundo
function intervalo(){
  if(velocidade <= 0){
     produtos.onEnterFrame = null;
     clearInterval(tempo);
  }else {
  velocidade--;
  }
}

Algo mais ou menos assim

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo,

 

Era exatamente isso que eu queria. Agradeço muito a sua ajuda!

 

Só uma alteração foi necesária... Mudei a linha da declaração da variável velocidade pra dentro da ação do botão. Estando ela de fora, estava dando erro.

 

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.