Пример #1
0
        /// <summary>
        /// Construtor interno para um nova peça que pode ou não estar em jogo
        /// </summary>
        /// <param name="owner">Jogo ao qual a peça pertence</param>
        /// <param name="player">Qual jogador é dono da peça.</param>
        /// <param name="rank">Qual o tipo de peça.</param>
        /// <param name="location">Localização da peça no tabuleiro.</param>
        /// <param name="inPlay">A peça está em jogo?</param>
        internal CheckersPiece(CheckersGame owner, int player, CheckersRank rank, System.Drawing.Point location, bool inPlay)
        {
            // Se o index do jogador é diferente de 1 ou 2
            if ((player < 1) || (player > 2))
            {
                // Lança exceção
                throw new ArgumentOutOfRangeException(nameof(player), player,
                                                      @"A variável 'player' deve ser um número com valor 1 ou 2.");
            }

            // Se a localização não está dentro dos limites do tabuleiro
            if ((location.X < 0) || (location.X >= CheckersGame.BoardSize.Width) || (location.Y < 0) ||
                (location.Y >= CheckersGame.BoardSize.Height))
            {
                // Lança exceção
                throw new ArgumentOutOfRangeException(nameof(location), location,
                                                      @"A variável 'location' deve ser um valor válido no tabuleiro.");
            }


            this._Owner    = owner;
            this._Player   = player;
            this._Rank     = rank;
            this._Location = location;
            this._InPlay   = inPlay;
        }
Пример #2
0
 internal CheckersPiece(CheckersGame owner, int player, CheckersRank rank, Point location, bool inPlay)
 {
     if((player < 1) || (player > 2))
         throw new ArgumentOutOfRangeException("player", player, "Argument 'player' must be a valid player number (a number greater or equal to 1).");
     if((location.X < 0) || (location.X >= CheckersGame.BoardSize.Width) || (location.Y < 0) || (location.Y >= CheckersGame.BoardSize.Height))
         throw new ArgumentOutOfRangeException("location", player, "Argument 'location' must be a valid position on the board.");
     this.owner = owner;
     this.player = player;
     this.rank = rank;
     this.location = location;
     this.inPlay = inPlay;
 }
Пример #3
0
 internal CheckersPiece(CheckersGame owner, int player, CheckersRank rank, Point location, bool inPlay)
 {
     if ((player < 1) || (player > 2))
     {
         throw new ArgumentOutOfRangeException("player", player, "Argument 'player' must be a valid player number (a number greater or equal to 1).");
     }
     if ((location.X < 0) || (location.X >= CheckersGame.BoardSize.Width) || (location.Y < 0) || (location.Y >= CheckersGame.BoardSize.Height))
     {
         throw new ArgumentOutOfRangeException("location", player, "Argument 'location' must be a valid position on the board.");
     }
     this.owner    = owner;
     this.player   = player;
     this.rank     = rank;
     this.location = location;
     this.inPlay   = inPlay;
 }
Пример #4
0
 /// <summary>Cria uma nova peça que está em jogo.</summary>
 /// <param name="player">Qual jogador é dono da peça.</param>
 /// <param name="rank">Qual o tipo de peça.</param>
 /// <param name="location">Localização da peça no tabuleiro.</param>
 public CheckersPiece(int player, CheckersRank rank, System.Drawing.Point location)
     : this(null, player, rank, location, true)
 {
 }
Пример #5
0
        // Construtores
        #region Construtores

        /// <summary>Cria uma nova peça genérica que náo está em jogo.</summary>
        /// <param name="player">Qual jogador é dono da peça.</param>
        /// <param name="rank">Qual o tipo de peça.</param>
        public CheckersPiece(int player, CheckersRank rank)
            : this(null, player, rank, System.Drawing.Point.Empty, false)
        {
        }
Пример #6
0
 /// <summary>
 /// Peça promovida a rei
 /// </summary>
 internal void Promoted()
 {
     this._Rank = CheckersRank.King;
 }
Пример #7
0
 /// <summary>Creates a new generic CheckersPiece object that is in play.</summary>
 /// <param name="player">The player index of the piece.</param>
 /// <param name="rank">The piece's rank.</param>
 /// <param name="location">The piece's location on the board.</param>
 public CheckersPiece(int player, CheckersRank rank, Point location)
     : this(null, player, rank, location, true)
 {
 }
Пример #8
0
 /// <summary>Creates a new generic CheckersPiece object that is not currently in play.</summary>
 /// <param name="player">The player index of the piece.</param>
 /// <param name="rank">The piece's rank.</param>
 public CheckersPiece(int player, CheckersRank rank)
     : this(null, player, rank, Point.Empty, false)
 {
 }
Пример #9
0
 internal void Promoted()
 {
     rank = CheckersRank.King;
 }
Пример #10
0
 /// <summary>Creates a new generic CheckersPiece object that is in play.</summary>
 /// <param name="player">The player index of the piece.</param>
 /// <param name="rank">The piece's rank.</param>
 /// <param name="location">The piece's location on the board.</param>
 public CheckersPiece(int player, CheckersRank rank, Point location)
     : this(null, player, rank, location, true)
 {
 }
Пример #11
0
 /// <summary>Creates a new generic CheckersPiece object that is not currently in play.</summary>
 /// <param name="player">The player index of the piece.</param>
 /// <param name="rank">The piece's rank.</param>
 public CheckersPiece(int player, CheckersRank rank)
     : this(null, player, rank, Point.Empty, false)
 {
 }
Пример #12
0
 internal void Promoted()
 {
     rank = CheckersRank.King;
 }