From 7d0ef99925a1d78cbf07e48780d2fa6d9626b06e Mon Sep 17 00:00:00 2001 From: Richard Poole <rp@guests.deus.net> Date: Thu, 27 Jun 2019 16:04:30 +0100 Subject: [PATCH] make Query.collides aware of collision filters fixes #732 --- src/collision/Query.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/collision/Query.js b/src/collision/Query.js index 7166478..2ac454a 100644 --- a/src/collision/Query.js +++ b/src/collision/Query.js @@ -14,6 +14,7 @@ var Vector = require('../geometry/Vector'); var SAT = require('./SAT'); var Bounds = require('../geometry/Bounds'); var Bodies = require('../factory/Bodies'); +var Detector = require('../collision/Detector'); var Vertices = require('../geometry/Vertices'); (function() { @@ -30,7 +31,11 @@ var Vertices = require('../geometry/Vertices'); for (var i = 0; i < bodies.length; i++) { var bodyA = bodies[i]; - + + if(!Detector.canCollide(body.collisionFilter, bodyA.collisionFilter)) { + continue; + } + if (Bounds.overlaps(bodyA.bounds, body.bounds)) { for (var j = bodyA.parts.length === 1 ? 0 : 1; j < bodyA.parts.length; j++) { var part = bodyA.parts[j];