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(); }
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); }
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(); }
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); } }
private void CalculeteStars(GameMetrics gameMetrics) { float percentage = (gameMetrics.GetScore() + 0f) / (MAX_SCORE + 0f); gameMetrics.SetStars(percentage > 0.85 ? 3 : percentage > 0.5 ? 2 : 1); }
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); }