Ver Mensaje Individual
  #3 (permalink)  
Antiguo 18/03/2010, 10:43
Avatar de loncho_rojas
loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 3 meses
Puntos: 175
Respuesta: Problema con hitTest

bien.. no se como mueves a tu circulo o muñeco dentro del laberinto.. pero solo debes indicarle con un elemento enterFrame que detecte los bordes de un MC.. en este caso las paredes.. esto lo use con un laberinto.. usaras la funcion getBounds

en decir... seleccionas tu MC correspondiente al muñeco o lo que se que no deba pasar y le dices.
Código actionscript:
Ver original
  1. onClipEvent(enterFrame)
  2. {
  3. bordeMonigote = this.getBounds(_root);//posicion del borde de este clip
  4.  
  5. if(_root.pared.hitTest(bordeMonigote.xMin, _y, true))
  6. {
  7. _x+=3; // lo repelemos a 3px de la pared en este sentido
  8. }
  9.  
  10. if(_root.pared.hitTest(bordeMonigote.xMax, _y, true)){
  11. _x-=3;// lo repelemos a 3px de la pared en este sentido
  12. }
  13.  
  14. if(_root.pared.hitTest(_x, bordeMonigote.yMin, true)){
  15. _y+=3; // lo repelemos a 3px de la pared en este sentido
  16. }
  17.  
  18. if(_root.pared.hitTest(_x, bordeMonigote.yMax, true)){
  19. _y-=3;// lo repelemos a 3px de la pared en este sentido
  20. }
  21.  
  22. }//fin enterFrame

cabe destacar que.. si ya tienes un enterframe dentro del monigote o muñeco, puedes agregarle solo los if..

bordeMonigote es solo una variable local que detectara los bordes de este clip

y dentro de los IF, pared, es la instancia del obstaculo MC

espero te sirva
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...