public function play()
 {
     // Agente Inteligente
     $tabuleiro = Tabuleiro::getInstance();
     $pecas = $this->getPecasComp($tabuleiro);
     $preferencias = $this->getPreferencias($pecas, $tabuleiro);
     $movimento = array();
     $maxPref = MIN_PREF;
     $hasEat = false;
     foreach ($preferencias as $i => $chave) {
         $valor = $chave->getValor();
         $move = $chave->getMove();
         $eat = $chave->getEat();
         $peca = $chave->getPeca();
         echo "VALOR : {$valor} \n";
         echo "Peca\n";
         print_r($peca);
         echo "Move\n";
         print_r($move);
         if ($eat) {
             $hasEat = True;
         }
         if ($valor >= $maxPref && !($hasEat ^ $eat) && $peca !== NULL && $move !== NULL) {
             $movimento[0] = $peca->getPosX();
             $movimento[1] = $peca->getPosY();
             $movimento[2] = $move[0];
             $movimento[3] = $move[1];
             $maxPref = $valor;
         }
     }
     return $movimento;
 }
 public function __construct()
 {
     $this->tabuleiro = Tabuleiro::getInstance();
     $this->jogador1 = new Jogador(COMPUTADOR, BLACK);
     $this->jogador2 = new Jogador(COMPUTADOR, WHITE);
     $this->vezJogador1 = True;
 }
 /**
  * Tests Tabuleiro::getInstance()
  */
 public function testGetInstance()
 {
     // TODO Auto-generated TabuleiroTest::testGetInstance()
     $this->markTestIncomplete("getInstance test not implemented");
     Tabuleiro::getInstance();
 }
 public static function getInstance()
 {
     if (Tabuleiro::$tabuleiro === NULL) {
         Tabuleiro::$tabuleiro = new Tabuleiro();
     }
     return Tabuleiro::$tabuleiro;
 }
<?php

include_once "Tabuleiro.php";
include_once "GUI.php";
$tabuleiro = Tabuleiro::getInstance();
session_start();
$_SESSION['tabuleiro'] = serialize($tabuleiro);
desenhaTabuleiro($tabuleiro);