A Snake class rework

This commit is contained in:
Christos Houtouridis 2018-11-06 10:33:15 +02:00
parent 626ef9b880
commit af5318af9e

View File

@ -1,24 +1,37 @@
package SnakePkg; package SnakePkg;
/** /**
* A class to represent a Snake in the Board * @class Snake
* @brief Represent a Snake in the Board.
*
* Snakes are part of the elements we place on the board and they add
* difficulty to the game.
*
* @author Christos Choutouridis 8997 * @author Christos Choutouridis 8997
* @email cchoutou@ece.auth.gr
*/ */
public class Snake { public class Snake {
/** @name Constructors */ /** @name Constructors */
/** @{ */ /** @{ */
/** Default ctor */ /** Default doing nothing constructor */
Snake () { Snake () {
snakeId = headId = tailId = 0; snakeId = headId = tailId = 0;
} }
/** Main Constructor */
/**
* @brief Main constructor
* This creates a snake on the board.
* @param snakeId The id of snake to create
* @param headId The tile of snake's head
* @param tailId The tile of snake's tail
*/
Snake (int snakeId, int headId, int tailId) { Snake (int snakeId, int headId, int tailId) {
this.snakeId = snakeId; this.snakeId = snakeId;
this.headId = headId; this.headId = headId;
this.tailId = tailId; this.tailId = tailId;
} }
/** Copy constructor /** Copy constructor
* @note We don't use clone as long as we don't inherit Cloneable iface * @param s The snake we want to copy
*/ */
Snake (Snake s) { Snake (Snake s) {
snakeId = s.getSnakeId (); snakeId = s.getSnakeId ();
@ -39,8 +52,8 @@ public class Snake {
/** @name Data members (private) */ /** @name Data members (private) */
/** @{ */ /** @{ */
private int snakeId; //!< Snake's ID private int snakeId; /**< Snake's ID */
private int headId; //!< Snake's head tile location private int headId; /**< Snake's head tile location */
private int tailId; //!< Snake's tail tile location private int tailId; /**< Snake's tail tile location */
/** @} */ /** @} */
} }