pixi-fusion
Version:
This module offers a set of common components needed for playing games.
16 lines (15 loc) • 545 B
JavaScript
import { useEffect, useContext } from "react";
import { Events } from "matter-js";
import { MatterPhysicsContext } from "./MatterPhysics.context";
export const useCollisionEventHandler = ({ isEnabled = true, event, callback }) => {
const { engine } = useContext(MatterPhysicsContext);
useEffect(() => {
if (!isEnabled) {
return () => { };
}
Events.on(engine, event, callback);
return () => {
Events.off(engine, event, callback);
};
}, [isEnabled, callback, event]);
};