..:: MX Studio Fóruns ::..: Empurrar objeto com o cursor - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Empurrar objeto com o cursor Alguém tem ideias de como fazer?

#1 User is offline   brunorios 

  • Group: Membros
  • Posts: 73
  • Joined: 29-January 05

  Posted 19 April 2008 - 09:17 AM

Galera é o seguinte, gostaria de implementar esse efeito em um projeto que estou trabalhando...

Seria da seguinte forma, no cenário do site, haveriam caixas, ferramentas, objetos em geral... Então eu gostaria que, quando o cursor do mouse "encostasse" no objeto, esse objeto fosse empurrado para o lado oposto, por exemplo, o visitante dá uma "cutucada" no objeto pela direita e ele vai pra esquerda e vice-versa...

Aguardo idéias!

Valew!!
0

#2 User is offline   ubi_rj 

  • Group: Moderador Global
  • Posts: 2920
  • Joined: 29-June 07

Posted 19 April 2008 - 05:46 PM

Cara, por MovieClip.prototype da pra fazer e fica legal, além de poder ser aplicado para diversos ítens, exatamente como você quer.

No primeiro frame do seu projeto coloque assim:

CÓDIGO
MovieClip.prototype.corre = function(distancia, velocidade, aceleracao){
    var meuX = this._parent._xmouse - this._x;
    var meuY = this._parent._ymouse - this._y;
    var dist = Math.sqrt(meuX*meuX + meuY*meuY);
    if (dist < distancia){
        var angulo = Math.atan2(meuY, meuX);
        if (aceleracao) velocidade = Math.min(velocidade, aceleracao*distancia/dist);
        this._x -= Math.cos(angulo)*velocidade;
        this._y -= Math.sin(angulo)*velocidade;
}
    if (this._x >= Stage.width) {
    this._x = Stage.width;
}
    if (this._x <= 0) {
    this._x = 0;
}
    if (this._y >= Stage.height) {
    this._y = Stage.height;
}
    if (this._y <= 0) {
    this._y = 0;
}}


Isso gerou um comando que vai empurar os ítens de acordo com o angulo do mouse, exatamente como você quer.
E baseado em 3 variáveis:

Distancia - É a distancia (em px) em que o ponteiro do mouse começa a empurrar o MovieClip.
Velicidade - É a velocidade em que o MovieClip se desloca pelo palco ao ser empurrado.
Acelecção - É a velocidade que ele tem nas tomadas de movimento.

Agora que tem o comando criado basta aplica-lo ao seu MovieClip.

CÓDIGO
seu_mc.onEnterFrame = function(){
    this.corre(30, 5, 100);
}


30, 5 e 100 são os valores da Distancia, Velocidade e Aceleração respectivamente......

Testa ai e faz as alterações para que fique melhor no seu projeto.

Abraço !
0

#3 User is offline   brunorios 

  • Group: Membros
  • Posts: 73
  • Joined: 29-January 05

  Posted 30 April 2008 - 10:27 PM

MTO OBRIGADO brother...

ainda nao testei, mas vou testar e dou retorno aki!

abração!
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




2 User(s) are reading this topic
0 membro(s), 2 visitante(s) e 0 membros anônimo(s)