Ejemplo n.º 1
0
        public void CreatePlayer()
        {
            if (Name != null)
            {
                IPlayer player = new Player
                {
                    Name = Name.ToLower()  //The font convert text to ToUpper but doesnt render capitalized letters well in inputsstrings.
                };

                Player = player;

                try
                {
                    Player.Id = DataBaseLogic.AddPlayer(player);
                    ToChooseLevelPage(player);
                }
                catch (PostgresException error)
                {
                    if (error.SqlState == "23505")
                    {
                        MessageBox.Show($"The name {player.Name} already exists. Pick another nickname you must.");
                        Name = "";
                    }
                }
            }

            else
            {
                if (Name == null)
                {
                    MessageBox.Show($"You must enter a nickname, or Baby Yoda will keep staring at you");
                }
            }
        }
Ejemplo n.º 2
0
        public void Execute(IJobExecutionContext context)
        {
            IDataBaseRepository dataBaseRepository = new DataBaseRepository();
            IDataBaseLogic      dataBaseLogic      = new DataBaseLogic(dataBaseRepository);

            dataBaseLogic.AddUser();
        }
Ejemplo n.º 3
0
        public async Task setAsync(T record)
        {
            using (DataBaseLogic db = new DataBaseLogic(this._params))
            {
                var register = await db.Statement.firstAsync <T>(" AND id = @id", null, new List <StatementParameter>() {
                    new StatementParameter("@id", ParamType.Int32, record.ID)
                });

                if (register == null)
                {
                    await db.Statement.insertAsync(record);

                    record.ID = db.Statement.lastID;
                }
                else
                {
                    await db.Statement.updateAsync(record);
                }

                if (this._params.BeginTransaction)
                {
                    db.Statement.acceptTransaction();
                }
            }
        }
Ejemplo n.º 4
0
 public async Task <List <T> > getList()
 {
     using (DataBaseLogic db = new DataBaseLogic(this._params))
     {
         return(await db.Statement.selectAsync <T>());
     }
 }
Ejemplo n.º 5
0
 private void SearchPlayer()
 {
     if (SearchPlayerInput != "")
     {
         SearchPlayerInput = SearchPlayerInput.ToLower();
         Players           = DataBaseLogic.GetPlayersByName(SearchPlayerInput);
     }
 }
Ejemplo n.º 6
0
 public HighScoreViewModel()
 {
     ListOfGameResults            = DataBaseLogic.GetGameResults(Level);
     SortByScoreCommand           = new RelayCommand(SortByScore);
     SortByDiligentPlayersCommand = new RelayCommand(GetDiligentPlayers);
     ViewStartPageCommand         = new RelayCommand(ViewStartPage);
     SortByEasyCommand            = new RelayCommand(SetLevelFromRadioButton);
     SortByMediumCommand          = new RelayCommand(SetLevelFromRadioButton);
     SortByHardCommand            = new RelayCommand(SetLevelFromRadioButton);
 }
Ejemplo n.º 7
0
        public async Task <T> getAsync(int id)
        {
            T v;

            using (DataBaseLogic db = new DataBaseLogic(this._params))
            {
                v = await db.Statement.firstAsync <T>(" AND id = " + id.ToString());
            }

            return(v);
        }
Ejemplo n.º 8
0
 private void GetResultsFromTable()
 {
     try
     {
         _Form.ОчиститьТаблицу();
         _Form.ДобавитьЗаписьВТаблицуФормы(DataBaseLogic.GetInstance().SetConnectDB("Requests_Database.sqlite").GetResultsFromTable().езультаты);
     }
     catch (Exception ex)
     {
         _Service.ShowError(ex.Message);
     }
 }
Ejemplo n.º 9
0
        public void createDBSchema()
        {
            using (DataBaseLogic db = new DataBaseLogic(this._params))
            {
                db.Management.createAlterTableAsync <T>();

                if (this._params.BeginTransaction)
                {
                    db.Statement.acceptTransaction();
                }
            }
        }
Ejemplo n.º 10
0
        public async Task <T> getAsync(string key)
        {
            T v;

            using (DataBaseLogic db = new DataBaseLogic(this._params))
            {
                v = await db.Statement.firstAsync <T>(" AND key = @k", null, new List <StatementParameter>() {
                    new StatementParameter("@k", ParamType.String, key)
                });
            }

            return(v);
        }
Ejemplo n.º 11
0
        private void CreateNewGameResult()

        {
            IGameResult gameResult = new GameResult()
            {
                PlayerId             = player.Id,
                PlayerName           = player.Name,
                Level                = this.level,
                Win                  = Win,
                ElapsedTimeInSeconds = TimeLabel,
                Tries                = NumberOfTries + 1,
                TotalScore           = Math.Round(this.TotalScore, 0)
            };

            gameResult.GameId = DataBaseLogic.AddGameResult((GameResult)gameResult);
        }
Ejemplo n.º 12
0
        public void SetLevelFromRadioButton()

        // Sets from which level the list should be sorted on, and if it should be sorted by time or diligent players.
        // Since these are two differens grids they switch from Visible to Collapsed based on the players choice.
        {
            if (ScoreSortingVisibility == Visibility.Visible)
            {
                if (EasyRadioButton)
                {
                    Level = Level.Easy;
                }
                else if (MediumRadioButton)
                {
                    Level = Level.Medium;
                }
                else
                {
                    Level = Level.Hard;
                }
                ListOfGameResults = DataBaseLogic.GetGameResults(Level);
            }


            if (ScoreSortingVisibility == Visibility.Collapsed)
            {
                if (EasyRadioButton)
                {
                    Level = Level.Easy;
                }
                else if (MediumRadioButton)
                {
                    Level = Level.Medium;
                }
                else
                {
                    Level = Level.Hard;
                }
                ListOfDiligentPlayers = DataBaseLogic.GetDiligentPlayersOnLevel(Level);
            }
        }
        public void Setup()
        {
            this.gMMock           = new Mock <GameModel>();
            this.mockedRepository = new Mock <Repository>();
            this.dBl         = new DataBaseLogic(this.mockedRepository.Object);
            this.database    = new List <Rounds>();
            MapObject[,] map = this.SetupMap(5);
            Player[] players = new Player[2];
            players[0] = new Player(1, 1, "t1", "red");
            players[1] = new Player(map.GetLength(0) - 2, map.GetLength(1) - 2, "t2", "blue");
            map[players[0].PosX, players[0].PosY] = players[0];
            map[players[1].PosX, players[1].PosY] = players[1];

            this.gMMock.Setup(x => x.Map).Returns(map);
            this.gMMock.Setup(x => x.Players).Returns(players);
            this.mockedRepository.Setup(x => x.Insert(It.IsAny <Rounds>())).Callback(() =>
            {
                this.database.Add(new Rounds());
            });

            this.gL = new GameLogic(this.gMMock.Object, this.dBl);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Метод определяет 'результативность' хода пользователя
        /// </summary>
        /// <param name="sender"></param>
        private void СделатьХод(XOObject sender)
        {
            try
            {
                Mode mode = Mode.easy;
                if (!this._Game.ПолучитьРежимСложностиИгры())
                {
                    ;
                }
                mode = Mode.hard;

                _NewGame = true;

                _PreviousStep = _NextStep;

                if (sender.ХодСделан)
                {
                    return;
                }

                if (_NextStep == СостояниеХода.X)
                {
                    sender.Ход = СостояниеХода.X;
                    _NextStep  = СостояниеХода.O;
                }
                else
                {
                    sender.Ход = СостояниеХода.O;
                    _NextStep  = СостояниеХода.X;
                }

                sender.ХодСделан = true;
                _Game.УстановитьСостояниеИгровогоПоля(sender);

                IVictory victory = new VictoryStrategy(mode);

                СостояниеХода?rez = victory.Победа(this._Game.ПолучитьСостояниеИгровогоПоля());

                if (rez == null)
                {
                    return;
                }

                if (rez == СостояниеХода.NULL)
                {
                    DataBaseLogic.GetInstance().SetConnectDB("Requests_Database.sqlite").AddResultInTable(1, 1);
                    _Service.ShowMessage("Draw, Try again!");
                }

                if (rez == СостояниеХода.X)
                {
                    DataBaseLogic.GetInstance().SetConnectDB("Requests_Database.sqlite").AddResultInTable(1, 0);
                    _Service.ShowMessage("The crosses won!");
                }

                if (rez == СостояниеХода.O)
                {
                    DataBaseLogic.GetInstance().SetConnectDB("Requests_Database.sqlite").AddResultInTable(0, 1);
                    _Service.ShowMessage("Zeroes won!");
                }

                УстановитьПараметрыПоУмолчанию(null, EventArgs.Empty);

                _NewGame = false;
            }
            catch (Exception ex)
            {
                _Service.ShowError(ex.Message);
            }
        }
Ejemplo n.º 15
0
 private void ClearPlayerSearch()
 {
     SearchPlayerInput = "";
     Players           = DataBaseLogic.GetPlayers();
 }