Exemple #1
0
 private function checkForDeploymentRequirements(Hexagon $hexagon, $possibleDeployment)
 {
     /** @var Island $island */
     $island = $hexagon->getIsland();
     $availableToDeploy = [];
     /** @var Unit $unit */
     foreach ($hexagon->getUnits() as $unit) {
         if ($unit->getIsDeployed()) {
             return ['availableOptions' => []];
         }
     }
     /** @var Unit $unit */
     foreach ($possibleDeployment as $unit) {
         $availableToDeploy[] = $unit->jsonSerialize();
     }
     return $availableToDeploy;
 }
Exemple #2
0
 public function load(ObjectManager $manager)
 {
     //Island 1
     $hexagon1_1 = new Hexagon();
     $hexagon1_1->setIsland($this->getReference('island1'));
     $hexagon1_1->setTerrainType($this->getReference('grass-terrain'));
     $hexagon1_1->setQ(-2);
     $hexagon1_1->setR(0);
     $hexagon1_2 = new Hexagon();
     $hexagon1_2->setIsland($this->getReference('island1'));
     $hexagon1_2->setTerrainType($this->getReference('grass-terrain'));
     $hexagon1_2->setQ(-2);
     $hexagon1_2->setR(1);
     $hexagon1_3 = new Hexagon();
     $hexagon1_3->setIsland($this->getReference('island1'));
     $hexagon1_3->setTerrainType($this->getReference('grass-terrain'));
     $hexagon1_3->setQ(-2);
     $hexagon1_3->setR(2);
     $hexagon1_4 = new Hexagon();
     $hexagon1_4->setIsland($this->getReference('island1'));
     $hexagon1_4->setTerrainType($this->getReference('desert-terrain'));
     $hexagon1_4->setQ(-1);
     $hexagon1_4->setR(1);
     $hexagon1_5 = new Hexagon();
     $hexagon1_5->setIsland($this->getReference('island1'));
     $hexagon1_5->setTerrainType($this->getReference('rock-terrain'));
     $hexagon1_5->setQ(0);
     $hexagon1_5->setR(0);
     $hexagon1_6 = new Hexagon();
     $hexagon1_6->setIsland($this->getReference('island1'));
     $hexagon1_6->setTerrainType($this->getReference('desert-terrain'));
     $hexagon1_6->setQ(1);
     $hexagon1_6->setR(-1);
     $hexagon1_7 = new Hexagon();
     $hexagon1_7->setIsland($this->getReference('island1'));
     $hexagon1_7->setTerrainType($this->getReference('desert-terrain'));
     $hexagon1_7->setQ(2);
     $hexagon1_7->setR(-2);
     //Island2
     $hexagon2_1 = new Hexagon();
     $hexagon2_1->setIsland($this->getReference('island2'));
     $hexagon2_1->setTerrainType($this->getReference('rock-terrain'));
     $hexagon2_1->setQ(-2);
     $hexagon2_1->setR(1);
     $hexagon2_2 = new Hexagon();
     $hexagon2_2->setIsland($this->getReference('island2'));
     $hexagon2_2->setTerrainType($this->getReference('rock-terrain'));
     $hexagon2_2->setQ(-2);
     $hexagon2_2->setR(2);
     $hexagon2_3 = new Hexagon();
     $hexagon2_3->setIsland($this->getReference('island2'));
     $hexagon2_3->setTerrainType($this->getReference('rock-terrain'));
     $hexagon2_3->setQ(-1);
     $hexagon2_3->setR(2);
     $hexagon2_4 = new Hexagon();
     $hexagon2_4->setIsland($this->getReference('island2'));
     $hexagon2_4->setTerrainType($this->getReference('grass-terrain'));
     $hexagon2_4->setQ(0);
     $hexagon2_4->setR(1);
     $hexagon2_5 = new Hexagon();
     $hexagon2_5->setIsland($this->getReference('island2'));
     $hexagon2_5->setTerrainType($this->getReference('grass-terrain'));
     $hexagon2_5->setQ(0);
     $hexagon2_5->setR(0);
     $hexagon2_6 = new Hexagon();
     $hexagon2_6->setIsland($this->getReference('island2'));
     $hexagon2_6->setTerrainType($this->getReference('grass-terrain'));
     $hexagon2_6->setQ(0);
     $hexagon2_6->setR(-1);
     $hexagon2_7 = new Hexagon();
     $hexagon2_7->setIsland($this->getReference('island2'));
     $hexagon2_7->setTerrainType($this->getReference('desert-terrain'));
     $hexagon2_7->setQ(0);
     $hexagon2_7->setR(-2);
     $hexagon2_8 = new Hexagon();
     $hexagon2_8->setIsland($this->getReference('island2'));
     $hexagon2_8->setTerrainType($this->getReference('desert-terrain'));
     $hexagon2_8->setQ(1);
     $hexagon2_8->setR(-2);
     $hexagon2_9 = new Hexagon();
     $hexagon2_9->setIsland($this->getReference('island2'));
     $hexagon2_9->setTerrainType($this->getReference('desert-terrain'));
     $hexagon2_9->setQ(2);
     $hexagon2_9->setR(-2);
     //island3
     $hexagon3_1 = new Hexagon();
     $hexagon3_1->setIsland($this->getReference('island3'));
     $hexagon3_1->setTerrainType($this->getReference('grass-terrain'));
     $hexagon3_1->setQ(-2);
     $hexagon3_1->setR(2);
     $hexagon3_2 = new Hexagon();
     $hexagon3_2->setIsland($this->getReference('island3'));
     $hexagon3_2->setTerrainType($this->getReference('grass-terrain'));
     $hexagon3_2->setQ(-1);
     $hexagon3_2->setR(2);
     $hexagon3_3 = new Hexagon();
     $hexagon3_3->setIsland($this->getReference('island3'));
     $hexagon3_3->setTerrainType($this->getReference('grass-terrain'));
     $hexagon3_3->setQ(0);
     $hexagon3_3->setR(1);
     $hexagon3_4 = new Hexagon();
     $hexagon3_4->setIsland($this->getReference('island3'));
     $hexagon3_4->setTerrainType($this->getReference('rock-terrain'));
     $hexagon3_4->setQ(0);
     $hexagon3_4->setR(0);
     $hexagon3_5 = new Hexagon();
     $hexagon3_5->setIsland($this->getReference('island3'));
     $hexagon3_5->setTerrainType($this->getReference('rock-terrain'));
     $hexagon3_5->setQ(-1);
     $hexagon3_5->setR(0);
     $hexagon3_6 = new Hexagon();
     $hexagon3_6->setIsland($this->getReference('island3'));
     $hexagon3_6->setTerrainType($this->getReference('desert-terrain'));
     $hexagon3_6->setQ(1);
     $hexagon3_6->setR(-1);
     $hexagon3_7 = new Hexagon();
     $hexagon3_7->setIsland($this->getReference('island3'));
     $hexagon3_7->setTerrainType($this->getReference('desert-terrain'));
     $hexagon3_7->setQ(1);
     $hexagon3_7->setR(-2);
     $hexagon3_8 = new Hexagon();
     $hexagon3_8->setIsland($this->getReference('island3'));
     $hexagon3_8->setTerrainType($this->getReference('desert-terrain'));
     $hexagon3_8->setQ(0);
     $hexagon3_8->setR(-2);
     $manager->persist($hexagon1_1);
     $manager->persist($hexagon1_2);
     $manager->persist($hexagon1_3);
     $manager->persist($hexagon1_4);
     $manager->persist($hexagon1_5);
     $manager->persist($hexagon1_6);
     $manager->persist($hexagon1_7);
     $manager->persist($hexagon2_1);
     $manager->persist($hexagon2_2);
     $manager->persist($hexagon2_3);
     $manager->persist($hexagon2_4);
     $manager->persist($hexagon2_5);
     $manager->persist($hexagon2_6);
     $manager->persist($hexagon2_7);
     $manager->persist($hexagon2_8);
     $manager->persist($hexagon2_9);
     $manager->persist($hexagon3_1);
     $manager->persist($hexagon3_2);
     $manager->persist($hexagon3_3);
     $manager->persist($hexagon3_4);
     $manager->persist($hexagon3_5);
     $manager->persist($hexagon3_6);
     $manager->persist($hexagon3_7);
     $manager->persist($hexagon3_8);
     $manager->flush();
     $this->addReference('hex-grass0', $hexagon1_1);
     $this->addReference('hex-grass1', $hexagon1_2);
     $this->addReference('hex-grass2', $hexagon1_3);
     $this->addReference('hex-grass3', $hexagon2_4);
     $this->addReference('hex-grass4', $hexagon2_5);
     $this->addReference('hex-grass5', $hexagon2_6);
     $this->addReference('hex-grass6', $hexagon3_1);
     $this->addReference('hex-grass7', $hexagon3_2);
     $this->addReference('hex-grass8', $hexagon3_3);
     $this->addReference('hex-desert0', $hexagon1_4);
     $this->addReference('hex-desert1', $hexagon1_6);
     $this->addReference('hex-desert2', $hexagon1_7);
     $this->addReference('hex-desert3', $hexagon2_7);
     $this->addReference('hex-desert4', $hexagon2_8);
     $this->addReference('hex-desert5', $hexagon2_9);
     $this->addReference('hex-desert6', $hexagon3_6);
     $this->addReference('hex-desert7', $hexagon3_7);
     $this->addReference('hex-desert8', $hexagon3_8);
 }