public static List <PlayEvent> Create(IList <Event> events, string homeTeam) { var penalties = new List <PlayEvent>(); var penaltyEvents = events.Where(e => e.Class == "Penalty"); foreach (var penaltyEvent in penaltyEvents) { var penaltyStartTime = GameTimeCalculator.Calculate(penaltyEvent.Period, penaltyEvent.TimePeriod); var penaltyEndTime = CalculatePenaltyEndTime(penaltyEvent.Description, penaltyEvent.Period, penaltyEvent.TimePeriod); Logger.Debug(string.Format("Game {0} S {1} E {2} ET {3}", events.First().GameId, penaltyStartTime.ToClockTime(), penaltyEndTime.ToClockTime(), penaltyEvent.Description)); penalties.Add(new PlayEvent { StartTime = penaltyStartTime, EndTime = penaltyEndTime, Class = penaltyEvent.Class, Description = penaltyEvent.Description, HomeTeam = penaltyEvent.Team == homeTeam, }); } return(penalties); }
public static List <PlayEvent> Create(IEnumerable <Event> events, string homeTeam) { return(events.Where(e => e.Class == "Goal").Select(e => new PlayEvent { StartTime = GameTimeCalculator.Calculate(e.Period, e.TimePeriod), EndTime = GameTimeCalculator.Calculate(e.Period, e.TimePeriod), Class = e.Class, Description = e.Description, HomeTeam = homeTeam == e.Team, }).ToList()); }
private static int CalculatePenaltyEndTime(string description, int period, int timePeriod) { return(CalculatePenaltyLength(description) + GameTimeCalculator.Calculate(period, timePeriod)); }
public static string ToLongClockTime(this int time) { return(GameTimeCalculator.FormatMinutes(time)); }
public static string ToClockTime(this int time) { return(GameTimeCalculator.Format(time)); }