コード例 #1
0
ファイル: Pieces.cs プロジェクト: xknife-erian/nknife
 public bool Contains(Enums.PieceType type, Position pos)
 {
     foreach (var item in _pieces)
     {
         if (item.PieceType.Equals(type) && item.Position.Equals(pos))
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #2
0
ファイル: Piece.cs プロジェクト: xknife-erian/nknife
        public static Piece Creator(Enums.PieceType type, Position pos)
        {
            switch (type)
            {
            case Enums.PieceType.WhiteKing:
                return(new PieceKing(Enums.GameSide.White, pos));

            case Enums.PieceType.WhiteQueen:
                return(new PieceQueen(Enums.GameSide.White, pos));

            case Enums.PieceType.WhiteRook:
                return(new PieceRook(Enums.GameSide.White, pos));

            case Enums.PieceType.WhiteBishop:
                return(new PieceBishop(Enums.GameSide.White, pos));

            case Enums.PieceType.WhiteKnight:
                return(new PieceKnight(Enums.GameSide.White, pos));

            case Enums.PieceType.WhitePawn:
                return(new PiecePawn(Enums.GameSide.White, pos));

            case Enums.PieceType.BlackKing:
                return(new PieceKing(Enums.GameSide.Black, pos));

            case Enums.PieceType.BlackQueen:
                return(new PieceQueen(Enums.GameSide.Black, pos));

            case Enums.PieceType.BlackRook:
                return(new PieceRook(Enums.GameSide.Black, pos));

            case Enums.PieceType.BlackBishop:
                return(new PieceBishop(Enums.GameSide.Black, pos));

            case Enums.PieceType.BlackKnight:
                return(new PieceKnight(Enums.GameSide.Black, pos));

            case Enums.PieceType.BlackPawn:
                return(new PiecePawn(Enums.GameSide.Black, pos));

            case Enums.PieceType.None:
            case Enums.PieceType.AllKings:
            case Enums.PieceType.AllQueens:
            case Enums.PieceType.AllRooks:
            case Enums.PieceType.AllBishops:
            case Enums.PieceType.AllKnights:
            case Enums.PieceType.AllPawns:
            case Enums.PieceType.All:
            default:
                throw new PieceException(string.Format(ExString.PieceTypeIsError, type.ToString()));
            }
        }
コード例 #3
0
ファイル: Situation.cs プロジェクト: xknife-erian/nknife
        public virtual bool TryGetPiece(int dot, out Enums.PieceType pieceType)
        {
            char c = this.GetByPosition(dot);

            if (c.Equals('1'))
            {
                pieceType = Enums.PieceType.None;
                return(false);
            }
            else
            {//有棋子
                pieceType = Enums.ToPieceType(c);
                return(true);
            }
        }
コード例 #4
0
ファイル: Servicer.cs プロジェクト: xknife-erian/nknife
 internal static Image GetPieceImage(Enums.PieceType chessmanType)
 {
     return(PieceImages[chessmanType]);
 }