public function start(GameConfig $config) { $this->configPersistence->saveConfigFor('ai', $config->toArray()); $color = $config->resolveColor(); $player = $this->generator->createGameForPlayer($color, $config->getVariant()); $this->playerBlamer->blame($player); $game = $player->getGame(); $opponent = $player->getOpponent(); $opponent->setIsAi(true); $opponent->setAiLevel($config->getLevel()); $this->starter->start($game); $this->objectManager->persist($game); return $player; }
public function start(GameConfig $config) { $this->configPersistence->saveConfigFor('friend', $config->toArray()); $color = $config->resolveColor(); $player = $this->generator->createGameForPlayer($color, $config->getVariant()); $this->playerBlamer->blame($player); $game = $player->getGame(); if ($config->getClock()) { $clock = new Clock($config->getTime() * 60, $config->getIncrement()); $game->setClock($clock); } $game->setIsRated($config->getMode()); $this->objectManager->persist($game); $this->logger->notice($game, 'Game:inviteFriend create'); return $player; }
public function start(GameConfig $config) { $this->configPersistence->saveConfigFor('ai', $config->toArray()); $color = $config->resolveColor(); $player = $this->generator->createGameForPlayer($color, $config->getVariant()); $this->playerBlamer->blame($player); $game = $player->getGame(); $opponent = $player->getOpponent(); $opponent->setIsAi(true); $opponent->setAiLevel($config->getLevel()); $game->start(); if ($player->isBlack()) { $this->manipulatorFactory->create($game)->play($this->ai->move($game, $opponent->getAiLevel())); } $this->objectManager->persist($game); $this->logger->notice($game, 'Game:inviteAi create'); return $player; }
public function toArray() { return array_merge(parent::toArray(), array('level' => $this->level)); }