..:: MX Studio Fóruns ::..: Detectar colisao de imagem - ..:: 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

Detectar colisao de imagem como fazer?

#1 User is offline   Mauredo 

  • Group: Membros
  • Posts: 79
  • Joined: 05-June 06

Posted 01 November 2006 - 02:23 PM

oi!

bem, eu tenho uma animação em flash em que tenho uma imagem que é maior que a tela e que quando eu mexo o meu rato, as imagens mexem também.

o meu problema é que quero que, quando a imagem chegar ao máximo de ser vista, ou seja, quando por exemplo eu mexo prá direita e quando ela acaba eu nao kero que ela ande mais para a direita.

eu fiz um MC à volta do limite da tela e usei qualquer coisa como isto:

if (_root.pirata._width > _root.limite._width){
trace ("limite");
}


usei outra que foi, como o registration point das duas estava em x,y 0,0:

if (_root.pirata._x == 0){
trace ("limite");
}

mas num funciona.

alguma ideia de como pôr a funcionar?
0

#2 User is offline   Kakash 

  • Group: Membros
  • Posts: 255
  • Joined: 31-May 06

Posted 01 November 2006 - 09:20 PM

o camando q ver se um MC encostou em outro é this.hitTest();

tipo, vc faz 2 MC, um quadrado com a instancia square_mc e um circulo com a instancia circle_mc.

ae clica no frame, e coloca o código:

square_mc.onPress = function() {
this.startDrag();
};
square_mc.onRelease = function() {
this.stopDrag();
if (this.hitTest(circle_mc)) {
trace("you hit the circle");
}
};

dúvidas, meu msn é pedrohenrique_rpg9999@hotmail.com
0

#3 User is offline   Natan 

  • Group: Moderador Global
  • Posts: 7350
  • Joined: 28-February 04

Posted 01 November 2006 - 11:23 PM

Se você estiver usando drag você pode delimitar o máximo em que o seu MovieClip pode ir. Exemplo:

ActionScript
var maxWidth = Stage.width;
var maxHeight = Stage.height;
mc.onPress = function() {
      startDrag(this, false, 0, 0, maxWidth-this._width, maxHeight-this._height);
};
mc.onRelease = mc.onReleaseOutside=function () {
      stopDrag();
};


Assim, ele só pode ir no eixo _x de 0 até o a largura do palco menos a largura do MovieClip e no eixo _y de 0 até o comprimento do palco menos o comprimento do MovieClip.

Qualquer coisa é só falar.

Falow
0

#4 User is offline   Mauredo 

  • Group: Membros
  • Posts: 79
  • Joined: 05-June 06

Posted 02 November 2006 - 07:55 AM

oi e desde já obrigado!

ainda não consegui fazer isto funcionar sad.gif

eu realmente consigo fazer o trace funcionar quando ele está entro, mas quando consigo meter o trace a funcionar quando ele está dentro e o lado esquerdo passa fora.

este é o código que estou a usar pra mexer nas imagens atrás

checkX = function (dx, oldVal, newVal) {

if (oldVal<newVal) {
this.botao1_x -= 2;
this.botao2._x-=2
this.botao3._x -=2;
this.imagem._x -= 3;
this.imagem2._x -= 2;
}

else if (oldVal>newVal) {
this.botao1._x += 2;
this.botao2._x += 2
this.botao3._x += 3;
this.imagem._x +=2;
this.imagem2._x += 2;
}

return newVal;
}

this.watch("xdir", checkX);
this.watch("ydir", checkY);


this.onMouseMove = function() {
xdir = _xmouse;
ydir = _ymouse;
}

se quiserem dar uma olhada no fla ( é flash 8):

0

#5 User is offline   ronaldoklais 

  • Group: Membros
  • Posts: 25
  • Joined: 25-June 06

Posted 02 November 2006 - 12:01 PM

Se os 2 MC's forem retângulares, utilize _x, _y, _width, _height para efetuar os cálculos da colisão, é mais rapido do que hitTest.
0

#6 User is offline   Kakash 

  • Group: Membros
  • Posts: 255
  • Joined: 31-May 06

Posted 02 November 2006 - 12:07 PM

me manda o fla pelo msn q eu resoulvo:

pedrohenrique_rpg9999@hotmail.com

quando eu te mandar o resultado, tu posta aqui a resposta ok? laugh.gif
0

#7 User is offline   Mauredo 

  • Group: Membros
  • Posts: 79
  • Joined: 05-June 06

Posted 04 November 2006 - 08:33 AM

já resolvi!!

arranjei uma forma bem melhor e muito boa de fazer smile.gif

http://www.webwasp.co.uk/tutorials/b31-panorama/index.php
0

Share this topic:


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



Publicidade




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