rendered paste body<?php
//Command uses 80 columns
//K for king, Q for queen, R for rook, B for bishop, and N for knight
//a-h == files || 1-8 == ranks
class Chess {
function rook() {
}
function knight() {
}
function bishop() {
}
function queen() {
}
function king() {
}
function pawn() {
}
}
$Plot = array('a1' => ' ', 'a2' => ' ', 'a3' => ' ', 'a4' => ' ', 'a5' => ' ', 'a6' => ' ', 'a7' => ' ', 'a8' => ' ', 'b1' => ' ', 'b2' => ' ', 'b3' => ' ', 'b4' => ' ', 'b5' => ' ', 'b6' => ' ', 'b7' => ' ', 'b8' => ' ', 'c1' => ' ', 'c2' => ' ', 'c3' => ' ', 'c4' => ' ', 'c5' => ' ', 'c6' => ' ', 'c7' => ' ', 'c8' => ' ', 'd1' => ' ', 'd2' => ' ', 'd3' => ' ', 'd4' => ' ', 'd5' => ' ', 'd6' => ' ', 'd7' => ' ', 'd8' => ' ', 'e1' => ' ', 'e2' => ' ', 'e3' => ' ', 'e4' => ' ', 'e5' => ' ', 'e6' => ' ', 'e7' => ' ', 'e8' => ' ', 'f1' => ' ', 'f2' => ' ', 'f3' => ' ', 'f4' => ' ', 'f5' => ' ', 'f6' => ' ', 'f7' => ' ', 'f8' => ' ', 'g1' => ' ', 'g2' => ' ', 'g3' => ' ', 'g4' => ' ', 'g5' => ' ', 'g6' => ' ', 'g7' => ' ', 'g8' => ' ', 'h1' => ' ', 'h2' => ' ', 'h3' => ' ', 'h4' => ' ', 'h5' => ' ', 'h6' => ' ', 'h7' => ' ', 'h8' => ' ');
$Pieces = array('White' => array('a1' => 'R', 'b1' => 'N', 'c1' => 'B', 'd1' => 'Q', 'e1' => 'K', 'f1' => 'B', 'g1' => 'N', 'h1' => 'R', 'a2' => 'P', 'b2' => 'P', 'c2' => 'P', 'd2' => 'P', 'e2' => 'P', 'f2' => 'P', 'g2' => 'P', 'h2' => 'P'), 'Black' => array('a8' => 'R', 'b8' => 'N', 'c8' => 'B', 'd8' => 'Q', 'e8' => 'K', 'f8' => 'B', 'g8' => 'N', 'h8' => 'R', 'a7' => 'P', 'b7' => 'P', 'c7' => 'P', 'd7' => 'P', 'e7' => 'P', 'f7' => 'P', 'g7' => 'P', 'h7' => 'P'));
$Board = array_merge($Plot, $Pieces['White'], $Pieces['Black']);
$Visual = <<<END
a b c d e f g h
+---+---+---+---+---+---+---+---+
8 | $Board[a8] | $Board[b8] | $Board[c8] | $Board[d8] | $Board[e8] | $Board[f8] | $Board[g8] | $Board[h8] | 8
+---+---+---+---+---+---+---+---+
7 | $Board[a7] | $Board[b7] | $Board[c7] | $Board[d7] | $Board[e7] | $Board[f7] | $Board[g7] | $Board[h7] | 7
+---+---+---+---+---+---+---+---+
6 | $Board[a6] | $Board[b6] | $Board[c6] | $Board[d6] | $Board[e6] | $Board[f6] | $Board[g6] | $Board[h6] | 6
+---+---+---+---+---+---+---+---+
5 | $Board[a5] | $Board[b5] | $Board[c5] | $Board[d5] | $Board[e5] | $Board[f5] | $Board[g5] | $Board[h5] | 5
+---+---+---+---+---+---+---+---+
4 | $Board[a4] | $Board[b4] | $Board[c4] | $Board[d4] | $Board[e4] | $Board[f4] | $Board[g4] | $Board[h4] | 4
+---+---+---+---+---+---+---+---+
3 | $Board[a3] | $Board[b3] | $Board[c3] | $Board[d3] | $Board[e3] | $Board[f3] | $Board[g3] | $Board[h3] | 3
+---+---+---+---+---+---+---+---+
2 | $Board[a2] | $Board[b2] | $Board[c2] | $Board[d2] | $Board[e2] | $Board[f2] | $Board[g2] | $Board[h2] | 2
+---+---+---+---+---+---+---+---+
1 | $Board[a1] | $Board[b1] | $Board[c1] | $Board[d1] | $Board[e1] | $Board[f1] | $Board[g1] | $Board[h1] | 1
+---+---+---+---+---+---+---+---+
a b c d e f g h
END;
echo '* White chess pieces merged successfully.' . "\n";
echo '* Black chess pieces merged successfully.' . "\n\n";
while (true) {
echo '<pre>' . "\n";
echo $Visual;
echo "\n" . '</pre>' . "\n";
echo 'Your Move: ';
$argv = explode(' ', trim(fgets(STDIN))); // reads one line from STDIN
if (count($argv) != '2') {
echo 'Usage: (Position 1 Position 2) a2 a4 ';
}
else {
foreach ($argv as $position) {
if (!preg_match("/^[a-h1-8]/i", $position)) {
echo 'An error occured in your last move:' . "\n\n";
echo '* [1000] Invalid Position Called: ' . $position . "\n";
}
elseif (!array_key_exists($position, $Board)) {
echo 'An error occured in your last move:' . "\n\n";
echo '* [1001] Invalid Position Called: ' . $position . "\n";
}
elseif ($Board[$position] = '') {
}
elseif () {
echo 'An error occured in your last move.' . "\n";
echo 'The error may be due to an illegal instruction, such as:' . "\n\n";
echo '';
}
else {
for ($i = 0; $i <= 20; $i++) {
echo "\n";
}
//fscanf(STDIN, "%d\n", $number); // reads number from STDIN
print_r($argv);
}
}
}
}
/*
echo ' a b c d e f g h
+---+---+---+---+---+---+---+---+
';
for ($i = 8; $i >= 1; $i--) {
echo ' ' . $i . ' | ';
for ($ii = 97; $ii <= 104; $ii++) {
echo '$Board[' . chr($ii) . $i . '] | ';
}
echo $i . "\n" . ' +---+---+---+---+---+---+---+---+' . "\n";
}
echo ' a b c d e f g h';
a b c d e f g h
+---+---+---+---+---+---+---+---+
8 | $Board[a8] | $Board[b8] | $Board[c8] | $Board[d8] | $Board[e8] | $Board[f8] | $Board[g8] | $Board[h8] | 8
+---+---+---+---+---+---+---+---+
7 | $Board[a7] | $Board[b7] | $Board[c7] | $Board[d7] | $Board[e7] | $Board[f7] | $Board[g7] | $Board[h7] | 7
+---+---+---+---+---+---+---+---+
6 | $Board[a6] | $Board[b6] | $Board[c6] | $Board[d6] | $Board[e6] | $Board[f6] | $Board[g6] | $Board[h6] | 6
+---+---+---+---+---+---+---+---+
5 | $Board[a5] | $Board[b5] | $Board[c5] | $Board[d5] | $Board[e5] | $Board[f5] | $Board[g5] | $Board[h5] | 5
+---+---+---+---+---+---+---+---+
4 | $Board[a4] | $Board[b4] | $Board[c4] | $Board[d4] | $Board[e4] | $Board[f4] | $Board[g4] | $Board[h4] | 4
+---+---+---+---+---+---+---+---+
3 | $Board[a3] | $Board[b3] | $Board[c3] | $Board[d3] | $Board[e3] | $Board[f3] | $Board[g3] | $Board[h3] | 3
+---+---+---+---+---+---+---+---+
2 | $Board[a2] | $Board[b2] | $Board[c2] | $Board[d2] | $Board[e2] | $Board[f2] | $Board[g2] | $Board[h2] | 2
+---+---+---+---+---+---+---+---+
1 | $Board[a1] | $Board[b1] | $Board[c1] | $Board[d1] | $Board[e1] | $Board[f1] | $Board[g1] | $Board[h1] | 1
+---+---+---+---+---+---+---+---+
a b c d e f g h
*/
//sleep('30');
?>