Beispiel #1
0
 /**
  * Tranfère l'unité vers un autre qg
  * @param Qg $qg
  * @return void
  */
 public function transfert(Qg $qg)
 {
     /*
      * Transfert de l'unité
      */
     $qgSource = $this->getQg();
     $this->setIdQg($this->getId());
     $this->save();
     $qg->resetCacheUnites();
     $qgSource->resetCacheUnites();
     /*
      * Transfert des compétences du Qg si le Qg source disparaît
      */
     if ($qgSource->getUnites()->count() == 0) {
         if ($qgSource->getNiveau() > $qg->getNiveau()) {
             $qg->setNiveau($qgSource->getNiveau());
             $qg->save();
         }
         $qgSource->delete();
     }
 }
Beispiel #2
0
 /**
  * Crée un Qg lié à ce Hexa
  * @param int $type
  * @return Qg
  */
 public function createQg($type = Unites::TYPE_TERRESTRE)
 {
     $qg = new Qg();
     $qg->setIdHexa($this->getIdHexa());
     $qg->setNiveau($this->getNiveauQgsFabriques());
     $qg->setCapop(100);
     $qg->setXp(0);
     $qg->setIdTypeQg($type);
     return $qg;
 }