Exemple #1
0
        public string PrintMatchEvents()
        {
            Random randNumEvents = new Random();
            int    amountOfEvents;             // a random amount of times events will occur

            Random randSeed = new Random();    // seed for random players and teams

            int randEventSeed;                 // for getting a random sport event

            this.MatchResultOutputString = ""; // reset output string

            if (Match.SportPlayed.GetType() == typeof(Football))
            {
                Football football = new Football();

                amountOfEvents = randNumEvents.Next(10, 18);

                for (int i = 0; i < amountOfEvents; i++)
                {
                    randEventSeed = randSeed.Next(0, Match.SportPlayed.NumEvents);

                    ITeam teamChosen = Match.getRandomTeam(randSeed);

                    if (randEventSeed == 0)
                    {
                        teamChosen.StatList[0].Value++; // increment touchdowns
                        teamChosen.Score        += 7;
                        MatchResultOutputString += football.Touchdown(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 1)
                    {
                        teamChosen.StatList[1].Value++; // increment Interceptions
                        MatchResultOutputString += football.Interception(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 2)
                    {
                        teamChosen.StatList[2].Value++; // increment field goals
                        teamChosen.Score        += 3;
                        MatchResultOutputString += football.FieldGoal(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 3)
                    {
                        teamChosen.StatList[3].Value++; // increment penalties
                        MatchResultOutputString += football.Penalty(teamChosen.GetRandomPlayer(randSeed));
                    }
                }
            }
            else if (Match.SportPlayed.GetType() == typeof(Baseball))
            {
                Baseball baseball = new Baseball();

                amountOfEvents = randNumEvents.Next(6, 12);

                for (int i = 0; i < amountOfEvents; i++)
                {
                    randEventSeed = randSeed.Next(0, Match.SportPlayed.NumEvents);

                    ITeam teamChosen = Match.getRandomTeam(randSeed);

                    if (randEventSeed == 0)
                    {
                        teamChosen.StatList[0].Value++;
                        int scoreAmount = randSeed.Next(1, 4);
                        teamChosen.Score        += scoreAmount;
                        MatchResultOutputString += baseball.HomeRun(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 1)
                    {
                        teamChosen.StatList[1].Value++;
                        teamChosen.Score        += 1;
                        MatchResultOutputString += baseball.ScoreRun(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 2)
                    {
                        teamChosen.StatList[2].Value++;
                        teamChosen.Score        += 4;
                        MatchResultOutputString += baseball.GrandSlam(teamChosen.GetRandomPlayer(randSeed));
                    }
                }
            }
            else if (Match.SportPlayed.GetType() == typeof(Hockey))
            {
                Hockey hockey = new Hockey();

                amountOfEvents = randNumEvents.Next(3, 13);

                for (int i = 0; i < amountOfEvents; i++)
                {
                    randEventSeed = randSeed.Next(0, Match.SportPlayed.NumEvents);

                    ITeam teamChosen = Match.getRandomTeam(randSeed);

                    if (randEventSeed == 0)
                    {
                        teamChosen.StatList[0].Value++;
                        teamChosen.Score        += 1;
                        MatchResultOutputString += hockey.Score(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 1)
                    {
                        teamChosen.StatList[1].Value++;
                        MatchResultOutputString += hockey.Fight(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 2)
                    {
                        teamChosen.StatList[2].Value++;
                        MatchResultOutputString += hockey.StealPuck(teamChosen.GetRandomPlayer(randSeed));
                    }
                }
            }
            else if (Match.SportPlayed.GetType() == typeof(Basketball))
            {
                Basketball basketBall = new Basketball();

                amountOfEvents = randNumEvents.Next(20, 35);

                for (int i = 0; i < amountOfEvents; i++)
                {
                    randEventSeed = randSeed.Next(0, Match.SportPlayed.NumEvents);

                    ITeam teamChosen = Match.getRandomTeam(randSeed);

                    if (randEventSeed == 0)
                    {
                        teamChosen.StatList[0].Value++;
                        teamChosen.Score        += 3;
                        MatchResultOutputString += basketBall.ThreePoint(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 1)
                    {
                        teamChosen.StatList[1].Value++;
                        teamChosen.Score        += 2;
                        MatchResultOutputString += basketBall.TwoPoint(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 2)
                    {
                        teamChosen.StatList[2].Value++;
                        MatchResultOutputString += basketBall.Foul(teamChosen.GetRandomPlayer(randSeed));
                    }
                    else if (randEventSeed == 3)
                    {
                        teamChosen.StatList[3].Value++;
                        teamChosen.Score        += 2;
                        MatchResultOutputString += basketBall.Dunk(teamChosen.GetRandomPlayer(randSeed));
                    }
                }
            }
            return(MatchResultOutputString);
        }