В общем идея такая, есть много статических и пару динамических тел, мне нужно отследить событие, когда сенсор пересекается с этими телами, пока в роли сенсора создаю круг, который привязан к мышке(просто каждый раз присваиваю координаты мышки, координатам круга).
Пока пытаюсь отследить так(цикл находится с функции, которая срабатывает на событие QuickContacts.PERSIST):

Код AS3:
for (var i:int = 0; i < allPhysicsObject_arr.length; i++)
{
if ( contacts.isCurrentContact( _moovingActiveObject, allPhysicsObject_arr[i]))
{
_moovingActiveObject.userData.alpha = .5;
}
}
allPhysicsObject_arr - это массив со всеми телами, их пока 49
_moovingActiveObject - это круг-сенсор
Аналогичный цикл находится в функции, которая срабатывает на событие QuickContacts.REMOVE(меняет альфу на 1), однако работает не корректно, иногда срабатывает иногда нет... В чем дело не знаю, пробовал ставить isBullet: true, не помогло.
Если у кого есть мысли, как это исправить или как отловить событие, когда одно определенное тело соприкасается с другим/другими, то буду рад выслушать.
p.s QuickBox2D это оболочка для Box2D 2.0.2
upd Проблему вроде решил, перед тем как менять положение круга, надо было "обнулять" данные:

Код AS3:
_moovingActiveObject.body.SetAngularVelocity(0);
_moovingActiveObject.body.SetLinearVelocity(new b2Vec2());
_moovingActiveObject.bodyDef.angle = 0;
_moovingActiveObject.bodyDef.angularDamping = 0;
_moovingActiveObject.bodyDef.linearDamping = 0;
_moovingActiveObject.x = container.mouseX / SCALE;
_moovingActiveObject.y = container.mouseY / SCALE;