/** * {@inheritDoc} */ public function load(ObjectManager $manager) { /** @var Board[] $boards */ $boards = array($this->getReference('board-0')); /** @var Player[] $players */ $players = array($this->getReference('player-0'), $this->getReference('player-1'), $this->getReference('player-2')); $tournamentSetup = new TournamentSetup(); $tournamentSetup->setSeed(RoundSetupSeed::create([[$players[0]->getId(), $players[1]->getId(), $players[2]->getId()]])); $round1 = RoundSetupAva::createStraight(); $round1->setGameMode(new GameMode(GameMode::FIRST_TO, 1)); $round1->setLegMode(new LegMode(LegMode::SINGLE_OUT_301)); $tournamentSetup->addRound($round1); $tournament = new Tournament(); $tournament->setName('real simple'); $tournament->setSetup($tournamentSetup); $tournament->setBoards($boards); $tournament->setPlayers($players); $this->setReference('tournament-0', $tournament); $manager->persist($tournament); $manager->flush(); }
protected function getRealSimpleTournament() { /** @var Board[] $boards */ $boards = array($this->fixtures->getReference('board-0')); /** @var Player[] $players */ $players = array($this->fixtures->getReference('player-0'), $this->fixtures->getReference('player-1'), $this->fixtures->getReference('player-2')); $tournamentSetup = new TournamentSetup(); $tournamentSetup->setSeed(RoundSetupSeed::create([[$players[0]->getId(), $players[1]->getId(), $players[2]->getId()]])); $round1 = RoundSetupAva::createStraight(); $round1->setGameMode(new GameMode(GameMode::FIRST_TO, 3)); $round1->setLegMode(new LegMode(LegMode::SINGLE_OUT_301)); $tournamentSetup->addRound($round1); $tournament = new Tournament(); $tournament->setName('real simple'); $tournament->setSetup($tournamentSetup); $tournament->setBoards($boards); $tournament->setPlayers($players); /** @var \Doctrine\ORM\EntityManager $entityManager */ $entityManager = $this->getContainer()->get('doctrine.orm.default_entity_manager'); $entityManager->persist($tournament); return $tournament; }
/** * @param PlayerManager $playerManager to resolve player-IDs * @return Tournament * @throws \Exception */ public function createTournament(PlayerManager $playerManager) { if ($this->preset == self::PRESET_TEST) { $setup = PresetTesting::create($this->getPlayerIdsGrouped()); } elseif ($this->preset == self::PRESET_SIMPLE) { $setup = PresetSimple::create($this->getPlayerIdsGrouped()); // TODO implement missing presets // } elseif ($this->preset == self::PRESET_FULL) { // $setup = PresetFull::create($this->numberOfGroups); // } elseif ($this->preset == self::PRESET_LEAGUE) { // $setup = PresetLeague::create($this->numberOfGroups); } else { throw new \Exception('TODO'); } $tournament = new Tournament(); $tournament->setName($this->name); $tournament->setSetup($setup); $tournament->setBoards($this->boards); $players = array(); foreach ($this->getPlayerIds() as $playerId) { $players[] = $playerManager->getPlayer($playerId); } $tournament->setPlayers($players); return $tournament; }