private TotalAnalysis totalAnalyze(List <GameResult>[] gameResults)
    {
        TotalAnalysis output = new TotalAnalysis();

        List <ResultAnalysis> analysises = new List <ResultAnalysis>();

        int high = -1;

        int low = 17;

        analysises.Add(Analyze(gameResults[NewGameManager.Instance.GetSubjectIndex(Subject.Aiming)]));
        analysises.Add(Analyze(gameResults[NewGameManager.Instance.GetSubjectIndex(Subject.Concentration)]));
        analysises.Add(Analyze(gameResults[NewGameManager.Instance.GetSubjectIndex(Subject.Quickness)]));
        analysises.Add(Analyze(gameResults[NewGameManager.Instance.GetSubjectIndex(Subject.RhythmicSense)]));
        analysises.Add(Analyze(gameResults[NewGameManager.Instance.GetSubjectIndex(Subject.Thinking)]));

        output.average = (analysises[0].finalScore + analysises[1].finalScore + analysises[2].finalScore + analysises[3].finalScore + analysises[4].finalScore) / 5;

        //for(int i = 0; analysises.Count > i; i++)
        //{
        //    if (analysises[i].finalScore > high)
        //    {
        //        high = analysises[i].finalScore;

        //        output.highestSubject = (Subject)(i + 1);
        //    }

        //    if (analysises[i].finalScore < low)
        //    {
        //        low = analysises[i].finalScore;

        //        output.lowestSubject = (Subject)(i + 1);
        //    }
        //}

        // 최고 최소 난이도 계산
        for (int i = 0; i < gameResults.Length; ++i)
        {
            int tmp = NewGameManager.Instance.CalculateResultValue(gameResults[i]);

            if (high < tmp)
            {
                high = tmp;
            }
            if (low > tmp)
            {
                low = tmp;
            }
        }

        output.highestScore = high;

        output.lowestScore = low;

        output.range = high - low;

        return(output);
    }
    private IEnumerator TotalAct(List <GameResult>[] gameResults)
    {
        TotalAnalysis totalAnalysis = totalAnalyze(gameResults);

        if (0 <= totalAnalysis.average && totalAnalysis.average <= 3)
        {
            totalDialogue.Add(TotalResultCode.TOT_A1);
        }
        else if (4 <= totalAnalysis.average && totalAnalysis.average <= 6)
        {
            totalDialogue.Add(TotalResultCode.TOT_A2);
        }
        else if (7 <= totalAnalysis.average && totalAnalysis.average <= 11)
        {
            totalDialogue.Add(TotalResultCode.TOT_A3);
        }
        else if (12 <= totalAnalysis.average)
        {
            totalDialogue.Add(TotalResultCode.TOT_A4);
        }

        if (0 <= totalAnalysis.range && totalAnalysis.range <= 3)
        {
            totalDialogue.Add(TotalResultCode.TOT_B1);
        }
        else if (4 <= totalAnalysis.range && totalAnalysis.range <= 8)
        {
            totalDialogue.Add(TotalResultCode.TOT_B2);
        }
        else if (9 <= totalAnalysis.range)
        {
            totalDialogue.Add(TotalResultCode.TOT_B3);
        }


        if (totalAnalysis.highestSubject == Subject.Aiming && totalAnalysis.highestScore >= 11)
        {
            totalDialogue.Add(TotalResultCode.TOT_C1);
        }
        else if (totalAnalysis.highestSubject == Subject.Concentration && totalAnalysis.highestScore >= 11)
        {
            totalDialogue.Add(TotalResultCode.TOT_C2);
        }
        else if (totalAnalysis.highestSubject == Subject.Quickness && totalAnalysis.highestScore >= 11)
        {
            totalDialogue.Add(TotalResultCode.TOT_C3);
        }
        else if (totalAnalysis.highestSubject == Subject.RhythmicSense && totalAnalysis.highestScore >= 11)
        {
            totalDialogue.Add(TotalResultCode.TOT_C4);
        }
        else if (totalAnalysis.highestSubject == Subject.Thinking && totalAnalysis.highestScore >= 11)
        {
            totalDialogue.Add(TotalResultCode.TOT_C5);
        }

        if (totalAnalysis.lowestSubject == Subject.Aiming && totalAnalysis.lowestScore <= 5)
        {
            totalDialogue.Add(TotalResultCode.TOT_D1);
        }
        else if (totalAnalysis.lowestSubject == Subject.Concentration && totalAnalysis.lowestScore <= 5)
        {
            totalDialogue.Add(TotalResultCode.TOT_D2);
        }
        else if (totalAnalysis.lowestSubject == Subject.Quickness && totalAnalysis.lowestScore <= 5)
        {
            totalDialogue.Add(TotalResultCode.TOT_D3);
        }
        else if (totalAnalysis.lowestSubject == Subject.RhythmicSense && totalAnalysis.lowestScore <= 5)
        {
            totalDialogue.Add(TotalResultCode.TOT_D4);
        }
        else if (totalAnalysis.lowestSubject == Subject.Thinking && totalAnalysis.lowestScore <= 5)
        {
            totalDialogue.Add(TotalResultCode.TOT_D5);
        }

        return(null);
    }