Exemple #1
0
 /**
  * @param Square $square
  *
  * @return $this
  */
 public function nextTo(Square $square)
 {
     if ($this->nextSquare === null) {
         $this->nextSquare = $square;
     } else {
         $this->nextSquare->nextTo($square);
     }
     return $this;
 }
Exemple #2
0
 /**
  * @param integer $start
  * @param integer $end
  *
  * @return Square
  */
 private function createSquares($start, $end)
 {
     for ($position = $start; $position <= $end; $position++) {
         $this->squares->nextTo(new Square($position));
     }
     return $this->squares;
 }
Exemple #3
0
 private function createStartingSquare()
 {
     $startingSquare = new Square(0);
     for ($position = 1; $position <= 45; $position++) {
         $startingSquare->nextTo(new Square($position));
     }
     return $startingSquare;
 }
 /**
  * @param integer $start
  * @param integer $length
  *
  * @return Square
  */
 private function createChain($start, $length)
 {
     $square = new Square($start);
     for ($i = $start; $i <= $length; $i++) {
         $square->nextTo(new Square($i));
     }
     return $square;
 }