diff --git a/hwe/sammo/GameUnitConstBase.php b/hwe/sammo/GameUnitConstBase.php index f1c05b74..9887f2b3 100644 --- a/hwe/sammo/GameUnitConstBase.php +++ b/hwe/sammo/GameUnitConstBase.php @@ -473,22 +473,17 @@ class GameUnitConstBase{ $info[] = "{$reqYear}년 경과 후 사용 가능"; } + $constraints = []; if($reqTech > 0){ - $info[] = "기술력 {$reqTech} 이상 필요"; + $constraints[] = GameUnitConstraintHelper::ReqTech($reqTech); } if($reqCities !== null){ - $reqCities = array_map(function($reqCity) use (&$info){ - $info[] = "{$reqCity} 소유시 가능"; - return CityConst::byName($reqCity)->id; - }, $reqCities); + $constraints[] = GameUnitConstraintHelper::ReqCities($reqCities); } if($reqRegions !== null){ - $reqRegions = array_map(function($reqRegion) use (&$info){ - $info[] = "{$reqRegion} 지역 소유시 가능"; - return CityConst::$regionMap[$reqRegion]; - }, $reqRegions); + $constraints[] = GameUnitConstraintHelper::ReqRegions($reqRegions); } $unit = new GameUnitDetail( @@ -502,9 +497,7 @@ class GameUnitConstBase{ $magicCoef, $cost, $rice, - $reqTech, - $reqCities, - $reqRegions, + $reqConstraints, $reqYear, $attackCoef, $defenceCoef, @@ -512,6 +505,7 @@ class GameUnitConstBase{ $initSkillTrigger, $phaseSkillTrigger, $iActionList, + $constraints ); $constID[$id] = $unit; diff --git a/hwe/sammo/GameUnitConstraint/GameUnitConstraint.php b/hwe/sammo/GameUnitConstraint/GameUnitConstraint.php new file mode 100644 index 00000000..06c0cc86 --- /dev/null +++ b/hwe/sammo/GameUnitConstraint/GameUnitConstraint.php @@ -0,0 +1,14 @@ +magicCoef = $magicCoef; $this->cost = $cost; $this->rice = $rice; - $this->reqTech = $reqTech; - $this->reqCities = $reqCities; - $this->reqRegions = $reqRegions; - $this->reqYear = $reqYear; + $this->reqConstraints = $reqConstraints; $this->attackCoef = $attackCoef; $this->defenceCoef = $defenceCoef; $this->info = $info;