// Test Method - for skipping to end of season public static void PlayAllMatchesForSeason() { foreach (var division in DivisionData.GetDivisions()) { foreach (var match in Matches.Where(m => m.DivisionId == division.Id && m.SeasonId == GameData.CurrentSeason && m.Completed == "No")) { PlayMatch(match.Id); } } }
public static void CreateProRelData() { int numPromoted = GameData.TeamsPerDivision / 6; int numRelegated = GameData.TeamsPerDivision / 6; foreach (var division in DivisionData.GetDivisions()) { if (division.Id != 1) { // do promotions for (var teamindex = 1; teamindex <= numPromoted; teamindex++) { var teamid = TeamData.GetTeamsByDivisionId(division.Id) .FirstOrDefault(t => t.Position == teamindex) .Id; ProRelData.AddProRel( GameData.CurrentSeason, division.Id, teamid, teamindex == 1 ? "Champions" : "Promoted"); } } if (division.Id != DivisionData.GetDivisions().Max(d => d.Id)) { // do relegations for (var teamindex = GameData.TeamsPerDivision; teamindex > (GameData.TeamsPerDivision - numRelegated); teamindex--) { var team = TeamData.GetTeamsByDivisionId(division.Id) .FirstOrDefault(t => t.Position == teamindex); if (team == null) { throw new Exception("No team found at position "); } var teamid = team.Id; ProRelData.AddProRel( GameData.CurrentSeason, division.Id, teamid, "Relegated"); } } } }