<?php
class Move {
var $direction;
var $value;
var $x;
var $y;
public static function initializeEmpty(){
return (new Move(array(0, 0), "NONE", -1));
}
public function __construct($pos, $direction, $value){
$this->y = $pos[0];
$this->x = $pos[1];
$this->value = $value;
$this->direction = $direction;
}
public function compare($move){
return $move->value > $this->value ? $move : $this;
}
public static function maxValDirection($moves, $board, $player, $pos){
$best = Move::initializeEmpty();
foreach($moves as $m){
$m->setValue($board, $player, $pos);
$best = $m->compare($best);
}
return $best;
}
public function setValue($board, $player, $pos){
echo "0";
if ($board[$y][$x] != "-")
$this->value = -1;
else
$this->value = 1;
}
}
define("MAXSIZE", 100);
echo MAXSIZE;
define("EMPTY", '-');
echo EMPTY;
define(P1, "r");
define(P2, "l");
define(WALL, "#");
function nextMove($player,$pos,$board){
$moves = array();
array_push($moves, new Move(array($pos[0] - 1, $pos[1]), "UP", -1));
array_push($moves, new Move(array($pos[0] + 1, $pos[1]), "DOWN", -1));
array_push($moves, new Move(array($pos[0], $pos[1] - 1), "LEFT", -1));
array_push($moves, new Move(array($pos[0], $pos[1] + 1), "RIGHT", -1));
return Move::maxValDirection($moves, $board, $player, $pos)->direction;
}
$m1 = Move::initializeEmpty();
$m2 = new Move(array(0, 1), "RIGHT", 10);
print_r(Move::maxValDirection(array($m1, $m2), "", "", ""));
?>
- Output for 5.5.24 - 5.5.30, 5.6.8 - 5.6.15
- Parse error: syntax error, unexpected ';', expecting '(' in /in/4oJnb on line 44
Process exited with code 255.
preferences:
158.47 ms | 1395 KiB | 22 Q