private function I_can_create_skill_point_by_level_by_intelligence_adjustment() { $psychicalSkillPoint = PsychicalSkillPoint::createFromNextLevelPropertyIncrease($level = $this->createProfessionNextLevel(Will::class, Intelligence::class), new Tables()); self::assertInstanceOf(PsychicalSkillPoint::class, $psychicalSkillPoint); self::assertNull($psychicalSkillPoint->getBackgroundSkillPoints()); self::assertNull($psychicalSkillPoint->getFirstPaidOtherSkillPoint()); self::assertNull($psychicalSkillPoint->getSecondPaidOtherSkillPoint()); return [$psychicalSkillPoint, $level]; }
/** * @param ProfessionLevel $professionLevel * @return PsychicalSkillRank * @throws \DrdPlus\Skills\Exceptions\UnknownPaymentForSkillPoint * @throws \DrdPlus\Skills\Exceptions\CanNotVerifyOwningSkill * @throws \DrdPlus\Skills\Exceptions\CanNotVerifyPaidSkillPoint */ protected function createZeroSkillRank(ProfessionLevel $professionLevel) { /** @noinspection ExceptionsAnnotatingAndHandlingInspection */ return new PsychicalSkillRank($this, PsychicalSkillPoint::createZeroSkillPoint($professionLevel), new PositiveIntegerObject(0)); }
private static function createPsychicalSkillEntities(Tables $tables, ProfessionFirstLevel $firstLevel) { $psychicalSkillClasses = self::getListOfSkillClasses(PsychicalSkill::class); $psychicalSkillPoint = PsychicalSkillPoint::createFromFirstLevelBackgroundSkillPoints($firstLevel, BackgroundSkillPoints::getIt(3, Heritage::getIt(5)), $tables); $requiredRankValue = new PositiveIntegerObject(1); $psychicalSkillList = array_map(function ($psychicalSkillClass) use($firstLevel, $psychicalSkillPoint, $requiredRankValue) { /** @var PsychicalSkill $psychicalSkill */ $psychicalSkill = new $psychicalSkillClass($firstLevel); $psychicalSkill->addSkillRank($psychicalSkillPoint); return $psychicalSkill; }, $psychicalSkillClasses); $psychicalSkills = new PsychicalSkills(); foreach ($psychicalSkillList as $psychicalSkill) { $psychicalSkills->addPsychicalSkill($psychicalSkill); } $psychicalSkillPoint = PsychicalSkillPoint::createFromFirstLevelBackgroundSkillPoints($firstLevel, BackgroundSkillPoints::getIt(4, Heritage::getIt(3)), $tables); $psychicalSkillRank = new PsychicalSkillRank(new Technology($firstLevel), PsychicalSkillPoint::createFromFirstLevelBackgroundSkillPoints($firstLevel, BackgroundSkillPoints::getIt(4, Heritage::getIt(5)), $tables), new PositiveIntegerObject(1)); return array_merge($psychicalSkillList, [$psychicalSkills, $psychicalSkillPoint, $psychicalSkillRank]); }