Example #1
0
 /**
  * Chat
  */
 public function actionChat()
 {
     if (!Yii::$app->request->isAjax) {
         return $this->goHome();
     }
     $game = Game::fromSession();
     $imperium = $game->getImperium();
     if (empty($imperium)) {
         return $this->goHome();
     }
     $msg = Yii::$app->request->post('msg', 0);
     if (!empty($msg)) {
         $msg = mb_substr(HtmlPurifier::process($msg), 0, 255, 'UTF-8');
         $event = new Event();
         $event->setAuthor(Yii::$app->user->identity->username);
         $event->setType(Event::TYPE_CHAT);
         $event->setInfo($msg);
         $imperium->getLog()->add($event);
         $game->save($imperium);
     }
 }
Example #2
0
 /**
  * Declines race
  */
 public function declineRace()
 {
     $hero = $this->getHero();
     if ($hero->getStage() === Player::STAGE_RACE_PRESENTED) {
         if ($this->getSettings()->getRaceChange() && $hero->getFirstRace() === null) {
             $presented = $this->getPlayers()->getRandomRace();
             $hero->setFirstRace($presented);
             $hero->setStage(Player::STAGE_RACE_PASSED);
             $event = new Event();
             $event->setType(Event::TYPE_RACE_DECLINED);
             $event->setInfo($hero->getName() . ' > ' . $presented);
             $this->getLog()->add($event);
             $this->postCommand();
         }
     }
 }