/** * Recalculated in 10 minute cron. */ public function process() { $users = $this->userModel->getAllCulturePoints(); foreach ($users as $user) { $villages = $this->VDataModel->getAllByUser($user->id); $production = 0; foreach ($villages as $village) { $production += $village->cp; } $culturePoints = $user->cp + $production / 6; $this->userModel->update($user->id, ['cp' => $culturePoints]); } }
/** * @param \stdClass $data */ public function createMultihunter($data) { /** @var \stdClass $multihunter */ $this->userModel->update(UserModel::MULTIHUNTER_ID, ['password' => Nette\Security\Passwords::hash($data->password)]); $multihunter = $this->userModel->get(UserModel::MULTIHUNTER_ID); /** @var \stdClass $field */ $field = $this->WDataModel->getByCoordinates(0, 0); if ($field->occupied != 0 || $field->oasistype != 0) { $this->WDataModel->setFieldTaken($field->id); $villageName = $this->villageService->getNewVillageName($multihunter); $vid = $this->VDataModel->addVillageForUser($multihunter, $field, $villageName); $this->FDataModel->addResourceFields($field->fieldtype, $vid); $this->unitsModel->add(['vref' => $vid]); $this->TDataModel->add(['vref' => $vid]); $this->ABDataModel->add(['vref' => $vid]); } }