protected override void OnPlayerBulletTriggerEnter2D(Collider2D collision)
        {
            if (CollisionUtil.IsEnemyBullet(collision))
            {
                var enemyBullet = collision.GetComponent <EnemyBullet>();
                if (IsExploding && ShouldEraseBullet)
                {
                    enemyBullet.DeactivateSelf();
                }
                else
                {
                    ManagedEnemyBullets.Add(enemyBullet);
                }
            }
            else if (CollisionUtil.IsPlayerBullet(collision))
            {
                var playerBullet = collision.GetComponent <PlayerBullet>();

                ManagedPlayerBullets.Add(playerBullet);
            }
            else if (CollisionUtil.IsPickup(collision))
            {
                var pickup = collision.GetComponent <Pickup>();

                ManagedPickups.Add(pickup);
            }
            // Enemy is handled in OnCollideWithEnemy()
        }