Esempio n. 1
0
        private void MatchRequests(IEnumerable <Game> gameList)
        {
            string[] arrayValue = new string[300];
            string[] gameValue  = new string[300];
            int      i          = 0;

            foreach (var item in gameList)
            {
                arrayValue[i] = item.PersonOne.ToLower();
                i++;
                arrayValue[i] = item.PersonTwo.ToLower();
                i++;
            }

            foreach (var values in arrayValue.Distinct()) //Tar bort alla dubbletta värden och säger till vem användaren kan välja
            {
                var person = Regex.Replace(values, @"[\d-]", "");
                var id     = Int32.Parse(values);

                Console.WriteLine($"Ange: {id} för person: {person}");
            }
            try
            {
                var reader = Int32.Parse(Console.ReadLine());
                i = 0;
                var    getNumber     = 0;
                string personValue   = "";
                string opponentValue = "";

                var persons = _game.GetPersons();

                foreach (var item in persons)
                {
                    if (reader == item.ContestNumber)
                    {
                        personValue = $"{item.ContestNumber} {item.FirstName} {item.LastName}";
                    }
                }

                foreach (var item in gameList)
                {
                    if (item.PersonOne.ToLower() == personValue.ToLower()) //Kollar om personen är på plats 1
                    {
                        gameValue[i] = item.PersonTwo.ToLower();
                        i++;
                    }

                    else if (item.PersonTwo.ToLower() == personValue.ToLower()) //Kollar om personen är på plats 2
                    {
                        gameValue[i] = item.PersonOne.ToLower();
                        i++;
                    }
                }

                foreach (var games in gameValue) //Få ut personens id
                {
                    var person = Regex.Replace(games, @"[\d-]", "");
                    var id     = Int32.Parse(games);

                    Console.WriteLine($"Ange: {id} för person: {person}");
                }

                var opponent = Int32.Parse(Console.ReadLine());

                foreach (var item in persons)
                {
                    if (item.ContestNumber == opponent)
                    {
                        Console.WriteLine("Välj bland följande matcher som personerna vill spela i?");
                        var getGames = _game.GetContests();

                        foreach (var games in getGames)
                        {
                            Console.WriteLine($"{games.Name} ---- Avslutas {games.Ending}");
                        }

                        var name = Console.ReadLine();

                        foreach (var number in gameList)
                        {
                            if (getNumber < number.GameNumber)
                            {
                                getNumber = number.GameNumber;
                            }
                        }

                        var countings = getNumber + 1;


                        var value = new Game(name, countings, personValue, opponentValue); //email

                        var addingToGame = _game.GameToFile(value);

                        Console.WriteLine("Välj vilken bowlinghall personerna ska spela på: ");
                        Console.WriteLine("1) Bowling Discos");
                        Console.WriteLine("2) Monas bowlinghall");
                        Console.WriteLine("3) LunaBowl");
                        Console.Write("Ange antingen nummer eller namn: ");
                        var input = Console.ReadLine();

                        PathCompound enviro = new PathCompound(input);
                        enviro.Display();

                        var addingToPath = _game.PathToFile(getNumber, personValue, opponentValue, input, enviro._paths);
                    }
                }
            }
            catch (FormatException) //Fel format hantering
            {
                Console.WriteLine("Du kan bara skriva in siffror.. :)");
            }
        }
Esempio n. 2
0
        private bool NotChallenged(string name, string first, string last, int contestNr)
        {
            var yourValues  = contestNr + " " + first.ToLower() + " " + last.ToLower();
            var count       = 0;
            var personsName = "";
            var isNull      = 0;

            var personList = _game.GetPersons();

            var gameList = _game.GetGames();

            string[] arrayValue = new string[300];
            int      i          = 0;
            var      isGame     = 0;

            foreach (var item in gameList)
            {
                if (item.PersonOne.ToLower() == yourValues.ToLower()) //Kollar om du är på plats 1
                {
                    arrayValue[i] = item.PersonTwo.ToLower();
                    count++;
                    i++;
                }

                else if (item.PersonTwo.ToLower() == yourValues.ToLower()) //Kollar om du är på plats 2
                {
                    arrayValue[i] = item.PersonOne.ToLower();
                    count++;
                    i++;
                }
                isGame = 1;
            }

            if (isGame == 1)
            {
                if (count >= 10)
                {
                    Console.WriteLine("Du har redan {0} matcher, vill du skriva upp dig för att kunna spela {1}?", count, count + 1);
                    var value = Console.ReadLine();

                    if (value.Contains("Ja"))
                    {
                        var items = _game.PathWriting(first, last, count + 1, contestNr);
                        Console.WriteLine(items);
                        var builder = _game.RequestMessageToSystem(first, last, contestNr);
                    }
                }

                else
                {
                    foreach (var values in personList.Distinct())
                    {
                        var number = values.ContestNumber;

                        var other = number + " " + values.FirstName.ToLower() + " " + values.LastName.ToLower();

                        arrayValue[i + 1] = yourValues.ToLower();
                        var isTrue = arrayValue.Contains(other.ToLower());

                        if (isTrue == true)
                        {
                            count++;
                        }
                        else
                        {
                            Console.WriteLine($"Välj: {values.ContestNumber} Om du vill möta {values.FirstName} {values.LastName}");
                        }
                    }
                }

                isNull = 1;
            }

            if (isNull == 0) //Om inga spel finns!
            {
                foreach (var values in personList.Distinct())
                {
                    if (values.ContestNumber != contestNr)
                    {
                        Console.WriteLine("Välj: {0} Om du vill möta {1} {2}", values.ContestNumber, values.FirstName, values.LastName);
                    }
                }
            }
            try
            {
                if (count < 10) //Kolla om matcher är mindre än 10
                {
                    isNull = 1;

                    var id = int.Parse(Console.ReadLine());

                    foreach (var foreachs in personList)
                    {
                        if (foreachs.ContestNumber == id)
                        {
                            personsName = foreachs.ContestNumber + " " + foreachs.FirstName.ToLower() + " " + foreachs.LastName.ToLower();
                        }
                    }

                    //Kolla om personen har matcher med den utvalda!
                    foreach (var items in gameList)
                    {
                        if (items.PersonOne.ToLower() == yourValues.ToLower() && items.PersonTwo.ToLower() == personsName.ToLower() ||
                            items.PersonTwo.ToLower() == yourValues.ToLower() && items.PersonOne.ToLower() == personsName.ToLower())
                        {
                            isNull = 0;
                            Console.WriteLine("Du har redan en match med den utvalda personen!");
                            return(false);
                        }

                        else if (items.PersonOne.ToLower() == yourValues.ToLower() && items.PersonTwo.ToLower() == yourValues.ToLower())
                        {
                            isNull = 0;
                            Console.WriteLine("Du kan inte ha en match med dig själv....");
                            return(false);
                        }
                    }

                    if (isNull == 1)
                    {
                        var getNumber = 0;

                        foreach (var number in gameList)
                        {
                            if (getNumber < number.GameNumber)
                            {
                                getNumber = number.GameNumber;
                            }
                        }

                        var countings = getNumber + 1;


                        var value = new Game(name, countings, yourValues, personsName); //email

                        var addingToGame = _game.GameToFile(value);

                        Console.WriteLine("Välj vilken bowlinghall ni ska spela på: ");
                        Console.WriteLine("1) Bowling Discos");
                        Console.WriteLine("2) Monas bowlinghall");
                        Console.WriteLine("3) LunaBowl");
                        Console.Write("Ange antingen nummer eller namn: ");
                        var input = Console.ReadLine();

                        PathCompound enviro = new PathCompound(input);
                        enviro.Display();

                        var addingToPath = _game.PathToFile(getNumber, yourValues, personsName, input, enviro._paths);
                    }
                }
            }

            catch (FormatException)
            {
                Console.WriteLine("Du kan bara skriva in siffror..");
            }

            return(true);
        }