Point locationHelper;            //Немного ненужная переменная, для метода ниже, в процессе разработки может быть исключена, нужна для временного хранения позиции последней карты колоды
        public void TurnReaction(int id) //В классе контроллера, этот метод (точнее метод конкретного экземпляра) будет добавлен к обработчикам события смены хода, и принимать будет в себя переменную с ИДшником игрока, чей черед ходить
        {
            //Controller.CountAllScores();
            if (_id == id)                  //Важная строчка - проверяем, совпадает ли ИД текущего экземпляра класса с ИД того игрока, чей черед ходить
            {
                while (PlayerCounter <= 16) //Глупенькая логика - пока число очков будет не больше 16, берем новые карты
                {
                    //Thread.Sleep(1500); //чтобы все не было мгновенно
                    locationHelper = currentMassiv.Last().Location; //
                    if (Controller.CurrentDeck.Count != 0)
                    {
                        currentMassiv.Add(Controller.CurrentDeck.Last());
                        currentMassiv.Last().Location = new Point(locationHelper.X + 20, locationHelper.Y + 20);
                        currentMassiv.Last().ShowBack();
                    }
                    Controller.CardWasTaken(Id);
                    Controller.CurrentDeck.Remove(Controller.CurrentDeck.Last());
                    Controller.CountAllScores();


                    //Добавить карту на стол (нужен код)
                }
                if (PlayerCounter > 21)
                {
                    //Код оповещения
                }
                if (PlayerCounter == 21)
                {
                }
                //Thread.Sleep(1000);
                Controller.NextTurn(id + 1);
            }
        }
Beispiel #2
0
 private void pictureBox1_Click(object sender, EventArgs e) //обработчик кнопки "Хватит" (красная)
 {
     Controller.NextTurn(2);                                //Метод NextTurn вызывает событие, принимающее идентификатор следующего игрока, в данном случае он равен 2, тк как этот обработчик способен вызвать только игрок-человек, а так как игроку-человеку мы назначаем ИД равный 1, то следующим будет виртуальный игрок и ИД равным 2
 }