コード例 #1
0
 public void SetValues(GameMetrics gameMetrics)
 {
     for (int i = 0; i < 3; i++)
     {
         stars[i].gameObject.SetActive(i < gameMetrics.GetStars());
     }
     score.text = "" + gameMetrics.GetScore();
     scorePercentage = (int)(((gameMetrics.GetScore() + 0f) / (MetricsController.GetController().GetMaxScore() + 0f)) * 100);
     correct.text = "" + gameMetrics.GetRightAnswers();
     incorrect.text = "" + gameMetrics.GetWrongAnswers();
     Invoke("IncrementProgressBar", 0.1f);
     RangeText.text = gameMetrics.GetRange().ToString();
     BonusTimeText.text = "" + gameMetrics.GetBonusTime();
 }
コード例 #2
0
        internal GameMetrics GetBestMetric(int level)
        {
            if (metrics[level].Count == 0)
            {
                return(null);
            }
            GameMetrics max = metrics[level][0];

            for (int i = 1; i < metrics[level].Count; i++)
            {
                if (metrics[level][i].GetScore() > max.GetScore())
                {
                    max = metrics[level][i];
                }
            }
            Debug.Log(level + ": max score -> " + max.GetScore());
            return(max);
        }
コード例 #3
0
        public void SetValues(GameMetrics gameMetrics)
        {
            for (int i = 0; i < 3; i++)
            {
                stars[i].gameObject.SetActive(i < gameMetrics.GetStars());
            }
            score.text = "" + gameMetrics.GetScore();
//            scorePercentage = (int)(((gameMetrics.GetScore() + 0f) / (MetricsController.GetController().GetMaxScore() + 0f)) * 100);
            correct.text   = "" + gameMetrics.GetRightAnswers();
            incorrect.text = "" + gameMetrics.GetWrongAnswers();
            Invoke("IncrementProgressBar", 0.1f);
            RangeText.text     = gameMetrics.GetRange().ToString();
            BonusTimeText.text = "" + gameMetrics.GetBonusTime();
        }
コード例 #4
0
ファイル: DetailsView.cs プロジェクト: NashIlli/calculandox
        private void groupGames(List<GameMetrics> metrics)
        {
            int gruopSize = (int)Math.Ceiling((metrics.Count + 0.0f) / (MAX_COLUMNS + 0.0f));
            this.note.text = gruopSize + (SettingsController.GetController().GetLanguage() == 0 ? " en " : " in ") + "1";

            for(int i = 0; i < Math.Ceiling((metrics.Count + 0.0f) / (gruopSize + 0.0f)); i++)
            {
                List<GameMetrics> currentGroup = metrics.GetRange(i * gruopSize, (i * gruopSize + gruopSize) <= metrics.Count ? gruopSize : metrics.Count - metricsPoints.Count * gruopSize);
                GameMetrics currentMetric = new GameMetrics(currentGroup[0].GetArea(), currentGroup[0].GetIndex(), currentGroup[0].GetLevel());
                currentMetric.SetDate(currentGroup[0].GetDate());
                for(int j = 0; j < currentGroup.Count; j++)
                {
                    currentMetric.SetScore(currentMetric.GetScore() + currentGroup[j].GetScore());
                    currentMetric.SetLapsedSeconds(currentMetric.GetLapsedSeconds() + currentGroup[j].GetLapsedSeconds());
                    currentMetric.SetRightAnswers(currentMetric.GetRightAnswers() + currentGroup[j].GetRightAnswers());
                    currentMetric.SetWrongAnswers(currentMetric.GetWrongAnswers() + currentGroup[j].GetWrongAnswers());
                }
                currentMetric.SetScore(Average(currentMetric.GetScore(), currentGroup.Count));
                currentMetric.SetLapsedSeconds(Average(currentMetric.GetLapsedSeconds(), currentGroup.Count));
                currentMetric.SetRightAnswers(Average(currentMetric.GetRightAnswers(), currentGroup.Count));
                currentMetric.SetWrongAnswers(Average(currentMetric.GetWrongAnswers(), currentGroup.Count));

                metricsPoints.Add(currentMetric);
            }
        }
コード例 #5
0
ファイル: MetricsModel.cs プロジェクト: NashIlli/calculandox
 private void CalculeteStars(GameMetrics gameMetrics)
 {
     float percentage = (gameMetrics.GetScore() + 0f) / (MAX_SCORE + 0f);
     gameMetrics.SetStars(percentage > 0.85 ? 3 : percentage > 0.5 ? 2 : 1);
 }
コード例 #6
0
ファイル: MetricsModel.cs プロジェクト: NashIlli/calculandox
 private void CalculateFinalScore(GameMetrics gameMetrics, int minSeconds, int pointsPerSecond, int pointsPerError)
 {
     gameMetrics.SetScore(MAX_SCORE - pointsPerSecond * (gameMetrics.GetLapsedSeconds() < minSeconds ? 0 : gameMetrics.GetLapsedSeconds() - minSeconds) - gameMetrics.GetWrongAnswers() * pointsPerError);
     if (gameMetrics.GetScore() < MIN_SCORE) gameMetrics.SetScore(MIN_SCORE);
 }