示例#1
0
        private static Game CreateFromTourneyGame(string gameTime, JObject game, TimeSpan duration)
        {
            Game newGame = new Game();

            ApplyToGame(game, newGame);

            DateTime startTime = Score.ParseTime(gameTime);

            int durationMinutes = (int)Math.Round(duration.TotalMinutes);

            TimeSpan periodDuration   = durationMinutes >= 24 ? new TimeSpan(0, 10, 0) : new TimeSpan(0, (int)((durationMinutes - 4) / 2.0), 0);
            TimeSpan intervalDuration = durationMinutes > 24 ? new TimeSpan(0, 2, 0) : new TimeSpan(0, 1, 0);

            newGame.Periods.AddPeriod("Period 1", startTime, startTime + periodDuration);
            startTime = startTime + periodDuration + intervalDuration;
            newGame.Periods.AddPeriod("Period 2", startTime, startTime + periodDuration);

            string           gameStatus = (string)game["status"];
            GamePeriodStatus status     = GamePeriodStatus.Ended;

            if (gameStatus == "pending")
            {
                status = GamePeriodStatus.Pending;
            }
            else if (gameStatus == "active")
            {
                status = GamePeriodStatus.Active;
            }

            newGame.Periods[0].Status = status;
            newGame.Periods[1].Status = status;

            newGame.CalculateResult();

            return(newGame);
        }
示例#2
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            GamePeriodStatus status = (GamePeriodStatus)value;

            return(status == GamePeriodStatus.Active ? ActiveBrush : InactiveBrush);
        }