Skip to content

Commit

Permalink
Updated to PHP Chess 1.5.16
Browse files Browse the repository at this point in the history
  • Loading branch information
programarivm committed Feb 3, 2025
1 parent d711692 commit 1a0ef82
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 45 deletions.
9 changes: 5 additions & 4 deletions src/Command/Game/Blocking/ExtractTask.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
use Chess\FenToBoardFactory;
use Chess\SanExtractor;
use Chess\Eval\FastFunction;
use Chess\Variant\VariantType;
use Chess\Variant\Capablanca\Board as CapablancaBoard;
use Chess\Variant\CapablancaFischer\Board as CapablancaFischerBoard;
use Chess\Variant\Chess960\Board as Chess960Board;
Expand All @@ -17,21 +18,21 @@ public function run()
{
$f = new FastFunction();

if ($this->params['variant'] === Chess960Board::VARIANT) {
if ($this->params['variant'] === VariantType::CHESS_960) {
$startPos = str_split($this->params['startPos']);
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new Chess960Board($startPos))
: new Chess960Board($startPos);
} elseif ($this->params['variant'] === CapablancaBoard::VARIANT) {
} elseif ($this->params['variant'] === VariantType::CAPABLANCA) {
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new CapablancaBoard())
: new CapablancaBoard();
} elseif ($this->params['variant'] === CapablancaFischerBoard::VARIANT) {
} elseif ($this->params['variant'] === VariantType::CAPABLANCA_FISCHER) {
$startPos = str_split($this->params['startPos']);
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new CapablancaFischerBoard($startPos))
: new CapablancaFischerBoard($startPos);
} elseif ($this->params['variant'] === ClassicalBoard::VARIANT) {
} elseif ($this->params['variant'] === VariantType::CLASSICAL) {
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new ClassicalBoard())
: new ClassicalBoard();
Expand Down
9 changes: 5 additions & 4 deletions src/Command/Game/Blocking/HeuristicTask.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
use Chess\FenToBoardFactory;
use Chess\SanPlotter;
use Chess\Eval\CompleteFunction;
use Chess\Variant\VariantType;
use Chess\Variant\Capablanca\Board as CapablancaBoard;
use Chess\Variant\CapablancaFischer\Board as CapablancaFischerBoard;
use Chess\Variant\Chess960\Board as Chess960Board;
Expand All @@ -15,21 +16,21 @@ class HeuristicTask extends AbstractBlockingTask
{
public function run()
{
if ($this->params['variant'] === Chess960Board::VARIANT) {
if ($this->params['variant'] === VariantType::CHESS_960) {
$startPos = str_split($this->params['startPos']);
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new Chess960Board($startPos))
: new Chess960Board($startPos);
} elseif ($this->params['variant'] === CapablancaBoard::VARIANT) {
} elseif ($this->params['variant'] === VariantType::CAPABLANCA) {
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new CapablancaBoard())
: new CapablancaBoard();
} elseif ($this->params['variant'] === CapablancaFischerBoard::VARIANT) {
} elseif ($this->params['variant'] === VariantType::CAPABLANCA_FISCHER) {
$startPos = str_split($this->params['startPos']);
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new CapablancaFischerBoard($startPos))
: new CapablancaFischerBoard($startPos);
} elseif ($this->params['variant'] === ClassicalBoard::VARIANT) {
} elseif ($this->params['variant'] === VariantType::CLASSICAL) {
$board = isset($this->params['fen'])
? FenToBoardFactory::create($this->params['fen'], new ClassicalBoard())
: new ClassicalBoard();
Expand Down
5 changes: 3 additions & 2 deletions src/Command/Game/Blocking/PlayRavTask.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use Chess\FenToBoardFactory;
use Chess\Play\RavPlay;
use Chess\Variant\VariantType;
use Chess\Variant\Chess960\Board as Chess960Board;
use Chess\Variant\Classical\Board as ClassicalBoard;
use ChessServer\Command\AbstractBlockingTask;
Expand All @@ -12,7 +13,7 @@ class PlayRavTask extends AbstractBlockingTask
{
public function run()
{
if ($this->params['variant'] === Chess960Board::VARIANT) {
if ($this->params['variant'] === VariantType::CHESS_960) {
$startPos = str_split($this->params['startPos']);
$board = new Chess960Board($startPos);
if (isset($this->params['fen'])) {
Expand All @@ -36,7 +37,7 @@ public function run()
'movetext' => $ravPlay->ravMovetext->main(),
'breakdown' => $ravPlay->ravMovetext->breakdown,
'fen' => $ravPlay->fen,
...($this->params['variant'] === Chess960Board::VARIANT
...($this->params['variant'] === VariantType::CHESS_960
? ['startPos' => $this->params['startPos']]
: []
),
Expand Down
5 changes: 3 additions & 2 deletions src/Command/Game/Blocking/RestartCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
namespace ChessServer\Command\Game\Blocking;

use Chess\FenToBoardFactory;
use Chess\Variant\VariantType;
use Chess\Variant\CapablancaFischer\Board as CapablancaFischerBoard;
use Chess\Variant\Chess960\Board as Chess960Board;
use Chess\Variant\Classical\PGN\Color;
Expand Down Expand Up @@ -34,11 +35,11 @@ public function run(AbstractSocket $socket, array $argv, int $id)
$this->pool->add(new RestartTask([
'decoded' => $gameMode->getJwtDecoded(),
]))->then(function ($result) use ($socket, $gameMode) {
if ($result->variant === Game::VARIANT_960) {
if ($result->variant === VariantType::CHESS_960) {
$startPos = str_split($result->startPos);
$board = FenToBoardFactory::create($result->fen, new Chess960Board($startPos));
$game = (new Game($result->variant, Game::MODE_PLAY))->setBoard($board);
} elseif ($result->variant === Game::VARIANT_CAPABLANCA_FISCHER) {
} elseif ($result->variant === VariantType::CAPABLANCA_FISCHER) {
$startPos = str_split($result->startPos);
$board = FenToBoardFactory::create($result->fen, new CapablancaFischerBoard($startPos));
$game = (new Game($result->variant, Game::MODE_PLAY))->setBoard($board);
Expand Down
23 changes: 8 additions & 15 deletions src/Command/Game/Game.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
namespace ChessServer\Command\Game;

use Chess\Variant\AbstractBoard;
use Chess\Variant\VariantType;
use Chess\Variant\Capablanca\Board as CapablancaBoard;
use Chess\Variant\CapablancaFischer\Board as CapablancaFischerBoard;
use Chess\Variant\CapablancaFischer\StartPosition as CapablancaFischerStartPosition;
Expand All @@ -17,14 +18,6 @@

class Game
{
const VARIANT_960 = Chess960Board::VARIANT;
const VARIANT_CAPABLANCA = CapablancaBoard::VARIANT;
const VARIANT_CAPABLANCA_FISCHER = CapablancaFischerBoard::VARIANT;
const VARIANT_CLASSICAL = ClassicalBoard::VARIANT;
const VARIANT_DUNSANY = DunsanyBoard::VARIANT;
const VARIANT_LOSING = LosingBoard::VARIANT;
const VARIANT_RACING_KINGS = RacingKingsBoard::VARIANT;

const MODE_ANALYSIS = 'analysis';
const MODE_PLAY = 'play';
const MODE_STOCKFISH = 'stockfish';
Expand All @@ -44,21 +37,21 @@ public function __construct(string $variant, string $mode)
$this->variant = $variant;
$this->mode = $mode;

if ($this->variant === self::VARIANT_960) {
if ($this->variant === VariantType::CHESS_960) {
$startPos = (new Chess960StartPosition())->create();
$this->board = new Chess960Board($startPos);
} elseif ($this->variant === self::VARIANT_CAPABLANCA) {
} elseif ($this->variant === VariantType::CAPABLANCA) {
$this->board = new CapablancaBoard();
} elseif ($this->variant === self::VARIANT_CAPABLANCA_FISCHER) {
} elseif ($this->variant === VariantType::CAPABLANCA_FISCHER) {
$startPos = (new CapablancaFischerStartPosition())->create();
$this->board = new CapablancaFischerBoard($startPos);
} elseif ($this->variant === self::VARIANT_CLASSICAL) {
} elseif ($this->variant === VariantType::CLASSICAL) {
$this->board = new ClassicalBoard();
} elseif ($this->variant === self::VARIANT_DUNSANY) {
} elseif ($this->variant === VariantType::DUNSANY) {
$this->board = new DunsanyBoard();
} elseif ($this->variant === self::VARIANT_LOSING) {
} elseif ($this->variant === VariantType::LOSING) {
$this->board = new LosingBoard();
} elseif ($this->variant === self::VARIANT_RACING_KINGS) {
} elseif ($this->variant === VariantType::RACING_KINGS) {
$this->board = new RacingKingsBoard();
}
}
Expand Down
37 changes: 19 additions & 18 deletions src/Command/Game/NonBlocking/StartCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

use Chess\FenToBoardFactory;
use Chess\Play\SanPlay;
use Chess\Variant\VariantType;
use Chess\Variant\Capablanca\Board as CapablancaBoard;
use Chess\Variant\CapablancaFischer\Board as CapablancaFischerBoard;
use Chess\Variant\CapablancaFischer\StartPosition as CapablancaFischerStartPosition;
Expand Down Expand Up @@ -44,35 +45,35 @@ public function run(AbstractSocket $socket, array $argv, int $id)

if (AnalysisMode::NAME === $params['mode']) {
try {
if ($params['variant'] === Game::VARIANT_960) {
if ($params['variant'] === VariantType::CHESS_960) {
if (isset($params['settings']['startPos']) && isset($params['settings']['fen'])) {
$startPos = str_split($params['settings']['startPos']);
$board = FenToBoardFactory::create($params['settings']['fen'], new Chess960Board($startPos));
} else {
$startPos = (new Chess960StartPosition())->create();
$board = new Chess960Board($startPos);
}
} elseif ($params['variant'] === Game::VARIANT_CAPABLANCA) {
} elseif ($params['variant'] === VariantType::CAPABLANCA) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new CapablancaBoard())
: new CapablancaBoard();
} elseif ($params['variant'] === Game::VARIANT_CAPABLANCA_FISCHER) {
} elseif ($params['variant'] === VariantType::CAPABLANCA_FISCHER) {
if (isset($params['settings']['startPos']) && isset($params['settings']['fen'])) {
$startPos = str_split($params['settings']['startPos']);
$board = FenToBoardFactory::create($params['settings']['fen'], new CapablancaFischerBoard($startPos));
} else {
$startPos = (new CapablancaFischerStartPosition())->create();
$board = new CapablancaFischerBoard($startPos);
}
} elseif ($params['variant'] === Game::VARIANT_DUNSANY) {
} elseif ($params['variant'] === VariantType::DUNSANY) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new DunsanyBoard())
: new DunsanyBoard();
} elseif ($params['variant'] === Game::VARIANT_LOSING) {
} elseif ($params['variant'] === VariantType::LOSING) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new LosingBoard())
: new LosingBoard();
} elseif ($params['variant'] === Game::VARIANT_RACING_KINGS) {
} elseif ($params['variant'] === VariantType::RACING_KINGS) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new RacingKingsBoard())
: new RacingKingsBoard();
Expand All @@ -94,11 +95,11 @@ public function run(AbstractSocket $socket, array $argv, int $id)
'turn' => $game->state()->turn,
'movetext' => $sanPlay->sanMovetext->validate(),
'fen' => $sanPlay->fen,
...($params['variant'] === Game::VARIANT_960
...($params['variant'] === VariantType::CHESS_960
? ['startPos' => implode('', $startPos)]
: []
),
...($params['variant'] === Game::VARIANT_CAPABLANCA_FISCHER
...($params['variant'] === VariantType::CAPABLANCA_FISCHER
? ['startPos' => implode('', $startPos)]
: []
),
Expand All @@ -113,35 +114,35 @@ public function run(AbstractSocket $socket, array $argv, int $id)
}
} elseif (PlayMode::NAME === $params['mode']) {
try {
if ($params['variant'] === Game::VARIANT_960) {
if ($params['variant'] === VariantType::CHESS_960) {
if (isset($params['settings']['startPos']) && isset($params['settings']['fen'])) {
$startPos = str_split($params['settings']['startPos']);
$board = FenToBoardFactory::create($params['settings']['fen'], new Chess960Board($startPos));
} else {
$startPos = (new Chess960StartPosition())->create();
$board = new Chess960Board($startPos);
}
} elseif ($params['variant'] === Game::VARIANT_CAPABLANCA) {
} elseif ($params['variant'] === VariantType::CAPABLANCA) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new CapablancaBoard())
: new CapablancaBoard();
} elseif ($params['variant'] === Game::VARIANT_CAPABLANCA_FISCHER) {
} elseif ($params['variant'] === VariantType::CAPABLANCA_FISCHER) {
if (isset($params['settings']['startPos']) && isset($params['settings']['fen'])) {
$startPos = str_split($params['settings']['startPos']);
$board = FenToBoardFactory::create($params['settings']['fen'], new CapablancaFischerBoard($startPos));
} else {
$startPos = (new CapablancaFischerStartPosition())->create();
$board = new CapablancaFischerBoard($startPos);
}
} elseif ($params['variant'] === Game::VARIANT_DUNSANY) {
} elseif ($params['variant'] === VariantType::DUNSANY) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new DunsanyBoard())
: new DunsanyBoard();
} elseif ($params['variant'] === Game::VARIANT_LOSING) {
} elseif ($params['variant'] === VariantType::LOSING) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new LosingBoard())
: new LosingBoard();
} elseif ($params['variant'] === Game::VARIANT_RACING_KINGS) {
} elseif ($params['variant'] === VariantType::RACING_KINGS) {
$board = isset($params['settings']['fen'])
? FenToBoardFactory::create($params['settings']['fen'], new RacingKingsBoard())
: new RacingKingsBoard();
Expand Down Expand Up @@ -177,11 +178,11 @@ public function run(AbstractSocket $socket, array $argv, int $id)
'min' => $params['settings']['min'],
'increment' => $params['settings']['increment'],
'fen' => $game->getBoard()->toFen(),
...($params['variant'] === Game::VARIANT_960
...($params['variant'] === VariantType::CHESS_960
? ['startPos' => implode('', $game->getBoard()->getStartPos())]
: []
),
...($params['variant'] === Game::VARIANT_CAPABLANCA_FISCHER
...($params['variant'] === VariantType::CAPABLANCA_FISCHER
? ['startPos' => implode('', $game->getBoard()->getStartPos())]
: []
),
Expand Down Expand Up @@ -212,11 +213,11 @@ public function run(AbstractSocket $socket, array $argv, int $id)
'variant' => $game->getVariant(),
'mode' => $game->getMode(),
'fen' => $game->getBoard()->toFen(),
...($params['variant'] === Game::VARIANT_960
...($params['variant'] === VariantType::CHESS_960
? ['startPos' => implode('', $game->getBoard()->getStartPos())]
: []
),
...($params['variant'] === Game::VARIANT_CAPABLANCA_FISCHER
...($params['variant'] === VariantType::CAPABLANCA_FISCHER
? ['startPos' => implode('', $game->getBoard()->getStartPos())]
: []
),
Expand Down

0 comments on commit 1a0ef82

Please sign in to comment.