protected override void Awake()
    {
        base.Awake();

        _player = GameObject.FindGameObjectWithTag("Player");

        if (!_player)
        {
            throw new Exception("No player found in this scene!");
        }

        var bossLifeBarHolder = GameObject.FindGameObjectWithTag("BossLifeBarHolder");

        _bossLifeBar = Instantiate(_bossLifeBarPrefab, bossLifeBarHolder.transform);
        _bossLifeBar.Initialize(this);

        _bulletManager = GameManager.BulletManager;

        foreach (var bulletEmitter in _bulletEmitters)
        {
            bulletEmitter.BulletManager = _bulletManager;
        }
    }