@enable3d/ammo-physics
Version:
Physics Plugin for three.js
26 lines • 1.11 kB
JavaScript
/**
* @author Yannick Deubel (https://github.com/yandeu)
* @copyright Copyright (c) 2020 Yannick Deubel; Project Url: https://github.com/enable3d/enable3d
* @license {@link https://github.com/enable3d/enable3d/blob/master/LICENSE|LGPL-3.0}
*/
import { Events } from '@yandeu/events';
export class CollisionEvents extends Events {
worldTransform;
physicsWorld;
addCollider(object1, object2, eventCallback) {
if (!object1.body || !object2.body)
return;
object1.body.checkCollisions = true;
object2.body.checkCollisions = true;
this.on('collision', (data) => {
const { bodies, event } = data;
if (bodies[0]?.name && bodies[1]?.name && object1?.name && object2?.name) {
if (bodies[0].name === object1.name && bodies[1].name === object2.name)
eventCallback(event);
else if (bodies[1].name === object1.name && bodies[0].name === object2.name)
eventCallback(event);
}
});
}
}
//# sourceMappingURL=collisionEvents.js.map