pixi-fusion
Version:
This module offers a set of common components needed for playing games.
26 lines (21 loc) • 572 B
text/typescript
import { useEffect } from "react";
import { TickerCallback } from "pixi.js";
import { useWorld } from ".";
export const useTickerCallback = <T = unknown>({
isEnabled = true,
callback
}: {
isEnabled?: boolean;
callback: TickerCallback<T>;
}) => {
const { application } = useWorld();
useEffect(() => {
if (!application || !isEnabled) {
return;
}
application.ticker.add(callback);
return () => {
application.ticker.remove(callback);
};
}, [isEnabled, application, callback]);
};