Exemple #1
0
        /// <summary>
        /// Method used to insert records into table Player
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <param name="firstName"></param>
        /// <param name="lastName"></param>
        /// <param name="age"></param>
        /// <param name="additionalInformation"></param>
        /// <returns>Created player id (if created)</returns>
        public int CreatePlayer(string userName, string password, string firstName, string lastName, int age, string additionalInformation)
        {
            Validation(userName, password, firstName, lastName, age, additionalInformation);

            foreach (var dbPlayer in context.Players)
            {
                if (dbPlayer.UserName == userName)
                {
                    throw new InvalidOperationException("Username already exists.");
                }
            }

            var player = new Player()
            {
                UserName              = userName,
                Password              = password,
                FirstName             = firstName,
                LastName              = lastName,
                Age                   = age,
                AdditionalInformation = additionalInformation
            };

            context.Players.Add(player);
            context.SaveChanges();

            return(player.Id);
        }
Exemple #2
0
        /// <summary>
        /// Changes every player's score who signed for certain game by given id simulating that a tournament was held
        /// </summary>
        /// <param name="id"></param>
        /// <returns>Game id (if found)</returns>
        public int GameTournament(int id)
        {
            if (context.Games.Find(id).RemovedOn != null)
            {
                throw new InvalidOperationException("Cannot create tournament on removed game.");
            }
            Random random = new Random();

            foreach (var sb in context.Scoreboards.Where(x => x.GameId == id && x.Score > 0))
            {
                sb.Score += (random.Next(250) - 100);
            }
            context.SaveChanges();
            return(id);
        }
Exemple #3
0
        /// <summary>
        /// Method which inserts records in table Game
        /// </summary>
        /// <param name="name"></param>
        /// <param name="requiredAge"></param>
        /// <param name="description"></param>
        /// <returns></returns>
        public int CreateGame(string name, int requiredAge, string description)
        {
            foreach (var dbGame in context.Games)
            {
                if (dbGame.Name.ToLower() == name.ToLower())
                {
                    throw new InvalidOperationException("Dublicate game name");
                }
            }

            var game = new Game()
            {
                Name        = name,
                RequiredAge = requiredAge,
                Description = description
            };

            context.Games.Add(game);
            context.SaveChanges();

            return(game.Id);
        }