public void CreateBullet(BulletID id, Transform parent, Action <BulletController> onCreate)
        {
            BulletMaster master = SearchBulletMaster(id);

            EntityContainer <BulletController> container = _pooledBullets.GetContainer(id);
            BulletController bullet = TryGetPooledBullet(container);

            if (bullet == null)
            {
                var go = Instantiate(_bulletPrefab, parent);
                bullet = go.GetComponent <BulletController>();
            }

            bullet.SetMaster(master);
            container.Set(bullet);

            onCreate.SafeCall(bullet);
        }
        public void Shot(BulletController bullet, Vector2 moveDir)
        {
            var startPos = transform.position;

            bullet.Move(startPos, moveDir);
        }