import {Container, Graphics} from '@pixi/react'; import {memo, useCallback} from 'react'; import {useDebug} from '@/context/debug.js'; import Emitter from './emitter.jsx'; import Sprite from './sprite.jsx'; function Crosshair({x, y}) { const draw = useCallback((g) => { g.clear(); g.lineStyle(1, 0x000000); g.moveTo(-5, 0); g.lineTo(5, 0); g.moveTo(0, -5); g.lineTo(0, 5); g.lineStyle(0.5, 0xffffff); g.moveTo(-5, 0); g.lineTo(5, 0); g.moveTo(0, -5); g.lineTo(0, 5); g.lineStyle(1, 0x000000); g.drawCircle(0, 0, 3); g.lineStyle(0.5, 0xffffff); g.drawCircle(0, 0, 3); }, []); return ( ); } function Entities({entity}) { const [debug] = useDebug(); if (!entity) { return false; } return ( {entity.Sprite && ( )} {entity.Emitter && ( )} {debug && entity.Position && ( )} ); } export default memo(Entities);