private async UniTaskVoid RoundStartTask(GamePlaySettingData gamePlaySettingData)
        {
            Debug.Log("なんかいっぱい準備する");
            // なんかスタートする
            var players     = _playerProvider.GetCurrentPlayers();
            var spawnPoints = new Queue <Transform>();

            _stageMapSetting.GetPlayerSpawnPoints().ForEach(x => spawnPoints.Enqueue(x));

            players.ForEach(x => _stageScoreManager.AddPlayer(x));
            players.ForEach(x =>
            {
                var player                = _playerFactory.Create(x);
                var spawnPoint            = spawnPoints.Dequeue();
                player.transform.position = spawnPoint.position;
                player.transform.rotation = spawnPoint.rotation;
                var basket                = _basketFactory.Create();
                player.SetBasket(basket);
                basket.transform.localPosition = Vector3.zero;
            });

            // debug用
            var gameObject = new GameObject();
            var scoreView  = gameObject.AddComponent <DebugPlayerScoreView>();

            scoreView.Setup(_scoreManager);

            var correctedCount = 0;

            while (correctedCount < _currentGamePlaySetting.CorrectCount)
            {
                correctedCount++;

                // 次の便まで待つ
                await UniTask.Delay(TimeSpan.FromSeconds(_currentGamePlaySetting.CorrectInterval));

                // 便がくる

                // 回収装置が満タンになるまで待つ

                // 回収装置が退場する

                // ポイントが精算される。
            }


            if (_cancellationTokenSource.IsCancellationRequested)
            {
                return;
            }

            // 終了~~~~~

            SceneManager.LoadScene("ResultScene");
        }
 public void Setup(GamePlaySettingData gamePlaySettingData)
 {
     _currentGamePlaySetting = gamePlaySettingData;
 }