Comunidad de diseño web y desarrollo en internet online

Duda sobre hitTestObject

Citar            
MensajeEscrito el 09 Nov 2009 09:34 pm
Hola,

Tengo una duda a ver si me pueden ayudar:

Existe una forma de identificar el objeto sobre el cual se ubica otro objeto para registrar un hitTestObject? Es decir, quisiera saber el nombre de "movieclip":

Código ActionScript :

evento.target.hitTestObject(movieclip)


En otras palabras: cuando muevo un movieclip sobre otros elementos, necesito saber cuál de éstos elementos activan el hitTestObject

Gracias,

Por adobexpert

Claber

2018 de clabLevel

4 tutoriales
15 articulos

Genero:Masculino  

Bogotá - Colombia

firefox
Citar            
MensajeEscrito el 10 Nov 2009 08:35 pm
Haver si es lo que ocupas, un sencilo ejemplo supongamos que tengo un Sprite (ball) que hare uso de su startDrag() para colisionarlo con varios objetos sobre el stage lo que quieres saber es con que objeto se hizo la colision , para eso puedes darle un name a tus objetos , introducirlos dentro de Array para saber con cual se hizo hitest, bueno te dejo un ejemplo sencillo:

Código ActionScript :

//objeto a dragear
var ball:Sprite = new Sprite();
ball.graphics.beginFill(0xcccccc);
ball.graphics.drawCircle(0,0,20);
ball.graphics.endFill();
addChild(ball);
ball.startDrag(true);

var b:Sprite;
var objects:Array = new Array();
addEventListener(Event.ENTER_FRAME,loop);

for (var i:uint=0; i<10; i++) {
   b = makeItem(0xff0000,15);
   b.name = "Circle" + i; //le doy un nombre a mis objetos Sprite
   objects.push(b);
   b.x = Math.random() * stage.stageWidth-(b.width/2);
   b.y = Math.random() * stage.stageHeight-(b.height/2);
}

function loop(e:Event):void
{
   for(var i:uint=0; i<objects.length; i++)
   {
      if(ball.hitTestObject(objects[i]))
      {
         trace("hit", objects[i].name);
      }
   }
}


function makeItem(c:uint, r:Number):Sprite
{
   var item:Sprite = new Sprite();
   item.graphics.beginFill(c);
   item.graphics.drawCircle(0,0,r);
   item.graphics.endFill();
   addChild(item);
   return item;
}


espero te sirva, Saludos.

Jonathan

Por maneuver

243 de clabLevel



Genero:Masculino  

Mexico City

firefox
Citar            
MensajeEscrito el 19 Nov 2009 10:19 pm
Muchas gracias jn_Flash, tu ejemplo me sirvió bastante.

Por adobexpert

Claber

2018 de clabLevel

4 tutoriales
15 articulos

Genero:Masculino  

Bogotá - Colombia

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.