UNPKG

pixi-fusion

Version:

This module offers a set of common components needed for playing games.

55 lines (54 loc) 1.56 kB
import { useLayerContext } from "./useLayerContext"; import { useEffect } from "react"; export const useObject = ({ object, anchor, position, skew, scale, width, angle, alpha, visible = true }) => { const { addObject, removeObject } = useLayerContext(); useEffect(() => { if (!object) { return; } addObject(object); return () => { removeObject(object); }; }, [object, addObject, removeObject]); useEffect(() => { if (anchor !== undefined && object) { object.anchor = anchor; } }, [anchor, object]); useEffect(() => { if (angle !== undefined && object) { object.angle = angle; } }, [angle, object]); useEffect(() => { if (object && position !== undefined) { object.position = position; } }, [position, object]); useEffect(() => { if (object && skew !== undefined) { object.skew = skew; } }, [skew, object]); useEffect(() => { if (object && alpha !== undefined) { object.alpha = alpha; } }, [alpha, object]); useEffect(() => { if (object && scale !== undefined) { object.scale = scale; } }, [scale, object]); useEffect(() => { if (object) { object.visible = visible; } }, [visible, object]); useEffect(() => { if (object && width !== undefined) { object.width = width; } }, [width, object]); };