Exemple #1
0
 /**
  * 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);
 }
Exemple #2
0
 /**
  * @expectedException \Fda\TournamentBundle\Engine\Bolts\InvalidArrowException
  */
 public function testInvalidMultiplier()
 {
     Arrow::create(5, 'quadruple');
 }
Exemple #3
0
 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());
 }
Exemple #4
0
 /**
  * @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;
 }