示例#1
0
        public override bool IsCheckMove(Move move, Board _board)
        {
            if (!base.IsCheckMove(move, _board )) return false;

            //Сначала проверяем ход ферзя, как слона
            Bishop objBishop = new Bishop(this.Color, this.Symbol);
            objBishop.SilentMode = true;
            bool blnBishop = objBishop.IsCheckMove(move, _board);

            //Потом делаем провеку хода как ладьи
            Rock objRock = new Rock(this.Color, this.Symbol);
            objRock.SilentMode = true;
            bool blnRock = objRock.IsCheckMove(move, _board);

            //Если обе проверки мы не прошли, значит ошибка
            if ((!blnBishop) && (!blnRock))
            {
                Console.WriteLine("Ошибочный ход!!!");
                return false;
            }

            return true;
        }
示例#2
0
        //Начальная установка одной фигуры для белых и черных
        public void SetFigureOne(string strFigureType, char symbol, int intCol)
        {
            char chrUp = char.Parse(symbol.ToString().ToUpper());
            char chrLower = char.Parse(symbol.ToString().ToLower());

            switch (strFigureType)
            {
                case "Bishop":
                    _board[0, intCol] = new Bishop (FigureColor.White, chrUp);
                    _board[7, intCol] = new Bishop (FigureColor.Black, chrLower);
                    break;
                case "King":
                    _board[0, intCol] = new King(FigureColor.White, chrUp);
                    _board[7, intCol] = new King (FigureColor.Black, chrLower);
                    break;
                case "Knight":
                    _board[0, intCol] = new Knight(FigureColor.White, chrUp);
                    _board[7, intCol] = new Knight (FigureColor.Black, chrLower);
                    break;
                case "Queen":
                    _board[0, intCol] = new Queen(FigureColor.White, chrUp);
                    _board[7, intCol] = new Queen (FigureColor.Black, chrLower);
                    break;
                case "Rock":
                    _board[0, intCol] = new Rock (FigureColor.White, chrUp);
                    _board[7, intCol] = new Rock (FigureColor.Black, chrLower);
                    break;
            }
        }