我有一个函数可以检测物体何时发生碰撞,但我如何删除其中一个呢?
private function fruitToFloorCollision(collision:InteractionCallback):void
{
// TODO Auto Generated method stub
trace('fruit hits floor');
}当我追踪碰撞的时候
Cb:BEGIN:(dynamic)#11/(static)#1 : [CollisionArbiter(Polygon#2|Circle#12)[SD]<-ACCEPT] : listener: InteractionListener{BEGIN#COLLISION::@{[CbType#5] excluding []}:@{[CbType#6] excluding []}} precedence=0发布于 2014-02-03 06:41:42
Nape从模拟中移除身体的首选习惯用法似乎是:
ball.space = null;尽管它像您一样在内部调用space.bodies.remove(),但它也会执行一些额外的检查。
发布于 2013-05-01 22:02:28
my answer.....如果有人有更好的选择想听的话...
private function fruitToFloorCollision(collision:InteractionCallback):void
{
var ball:Body = collision.int1 as Body;
removeChild(ball.userData.graphic);
space.bodies.remove(ball);
}发布于 2014-06-02 13:46:24
据我所知,考虑到你有两个对象水果和地板,interactionListener按这个顺序添加。
private function fruitToFloorCollision(collision:InteractionCallback):void
{
// CBTypes are added to Shapes not Bodies. So collision.int1 is a shape.
var fruit:Body = collision.int1.castShape.body as Body;
removeChild(fruit.userData.graphic);
space.bodies.remove(fruit);
}https://stackoverflow.com/questions/16319268
复制相似问题