private void TryUpdateLatestWeekScore(WeekDetails week, int points) { WeekScore weekScore = DataService.GetHighestWeekScore(week.Id); if (weekScore == null) { weekScore = new WeekScore() { Id = week.Id, Points = points, Year = week.Year, Week = week.Nr, UserId = User.Id }; DataService.AddWeekHighScore(weekScore); } else { if (weekScore.Points >= points) { Debug.Log("weekScore: " + weekScore.Points); } else { weekScore.Points = points; DataService.UpdateWeekHighScore(weekScore); } } }
public static WeekDetails GetWeekDetails() { DateTime now = DateTime.Now; WeekDetails week = new WeekDetails { Year = now.Year, Nr = CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(now, CalendarWeekRule.FirstDay, DayOfWeek.Sunday), }; week.Id = (Convert.ToInt32(week.Year.ToString() + "00") + week.Nr); return(week); }
private void UpdateHighScore(WeekDetails week, int points) { HighScore highScore = new HighScore() { Points = points, Type = HighScoreType, WeekId = week.Id, UserId = PlayingUser.Id, UserName = PlayingUser.Name }; DataService.AddHighScore(highScore); }
internal void OnGameOver() { GameOver = true; UIController._.DialogController.ShowDialog(true, GameplayState.Failed); int points = 0; // points = Level<LevelRandomRanked>().Points; WeekDetails week = __data.GetWeekDetails(); if (HighScoreType == HighScoreType.RANKED) { TryUpdateLatestWeekScore(week, points); } UpdateHighScore(week, points); }