本文整理匯總了C#中System.Enums.Add方法的典型用法代碼示例。如果您正苦於以下問題:C# Enums.Add方法的具體用法?C# Enums.Add怎麽用?C# Enums.Add使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類System.Enums
的用法示例。
在下文中一共展示了Enums.Add方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: PieceMoveIn
/// <summary>
/// 內部方法:移動棋子,並更改FEN記錄
/// </summary>
/// <param name="piece">被移動的棋子</param>
/// <param name="srcPos">源棋格</param>
/// <param name="tgtPos">目標棋格</param>
private void PieceMoveIn(Piece piece, Enums.ActionCollection actions, Position srcPos, Position tgtPos)
{
switch (piece.PieceType)
{
#region case 王車易位,過路兵,升變
case Enums.PieceType.WhiteKing:
case Enums.PieceType.BlackKing:
{
//TODO:在這裏實現王車易位
break;
}
case Enums.PieceType.WhitePawn:
case Enums.PieceType.BlackPawn:
{
//移走被吃的過路兵
if (_piecePawnByEnPassanted != null)
{
if (tgtPos.X == _piecePawnByEnPassanted.Position.X)
{
actions.Add(Enums.Action.EnPassant);
PieceMoveOut(_piecePawnByEnPassanted.Position);
}
}
//TODO:在這裏實現“升變”
break;
}
case Enums.PieceType.WhiteQueen:
case Enums.PieceType.WhiteRook:
case Enums.PieceType.WhiteBishop:
case Enums.PieceType.WhiteKnight:
case Enums.PieceType.BlackQueen:
case Enums.PieceType.BlackRook:
case Enums.PieceType.BlackBishop:
case Enums.PieceType.BlackKnight:
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:
case Enums.PieceType.None:
default:
break;
#endregion
}
piece.Position = tgtPos;
this.SetByPosition(srcPos.Dot, '1');
this.SetByPosition(tgtPos.Dot, Enums.FromPieceType(piece.PieceType)[0]);
this.GameSide = Enums.GetOtherGameSide(this.GameSide);
if (this.GameSide == Enums.GameSide.White)
{
this.FullMoveNumber++;
}
this.HalfMoveClock++;
}