/** * extract score and multiplier from request and put it into an arrow * * @param Request $request * @return Arrow */ protected function getArrowFromRequest(Request $request) { $score = $request->get('score', 0); $multiplier = $request->get('multiplier', 1); switch ($multiplier) { default: case 1: $multiplier = Arrow::MULTIPLIER_SINGLE; break; case 2: $multiplier = Arrow::MULTIPLIER_DOUBLE; break; case 3: $multiplier = Arrow::MULTIPLIER_TRIPLE; break; } return Arrow::create($score, $multiplier); }
/** * @expectedException \Fda\TournamentBundle\Engine\Bolts\InvalidArrowException */ public function testInvalidMultiplier() { Arrow::create(5, 'quadruple'); }
protected function playGame2(TournamentEngineInterface $engine, Ledger $ledger) { /** @var GameGearsInterface $group0Game1Gears */ $group0Game1Gears = $engine->getCurrentRoundGears()->getGameGearsGrouped()[0][2]; $game = $group0Game1Gears->getGame(); $ledger->setGameId($game->getId()); // player 1 $ledger->registerShot(Arrow::create(1, Arrow::MULTIPLIER_SINGLE)); $ledger->registerShot(Arrow::create(20, Arrow::MULTIPLIER_TRIPLE)); $ledger->registerShot(Arrow::create(20, Arrow::MULTIPLIER_TRIPLE)); // player 2 $ledger->registerShot(Arrow::create(7, Arrow::MULTIPLIER_SINGLE)); $ledger->registerShot(Arrow::create(19, Arrow::MULTIPLIER_TRIPLE)); $ledger->registerShot(Arrow::create(16, Arrow::MULTIPLIER_DOUBLE)); // player 1 $ledger->registerShot(Arrow::create(20, Arrow::MULTIPLIER_TRIPLE)); $ledger->registerShot(Arrow::create(20, Arrow::MULTIPLIER_TRIPLE)); $ledger->registerShot(Arrow::create(20, Arrow::MULTIPLIER_TRIPLE)); // player-1 won... $game = $ledger->getGame(); $this->assertTrue($game->isClosed()); }
/** * @param int $number * * @return Arrow */ public function getArrow($number) { $score = 0; $multiplier = Arrow::MULTIPLIER_SINGLE; switch ($number) { case 1: $score = $this->arrow1score; $multiplier = $this->arrow1multiplier; break; case 2: $score = $this->arrow2score; $multiplier = $this->arrow2multiplier; break; case 3: $score = $this->arrow3score; $multiplier = $this->arrow3multiplier; break; } $arrow = Arrow::create($score, $multiplier); $arrow->setNumber($number); return $arrow; }