36 lines
847 B
PHP
36 lines
847 B
PHP
<?php
|
|
|
|
namespace sammo\GameUnitConstraint;
|
|
|
|
use sammo\CityConst;
|
|
use sammo\General;
|
|
|
|
class ReqCities extends BaseGameUnitConstraint {
|
|
|
|
public function __construct(public readonly array $reqCities)
|
|
{
|
|
}
|
|
|
|
public function test(General $general, array $ownCities, array $ownRegions, int $relativeYear, int $tech, array $nationAux): bool
|
|
{
|
|
foreach ($this->reqCities as $city) {
|
|
if (key_exists($city, $ownCities)) {
|
|
return true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
public function getInfo(): string
|
|
{
|
|
$cityNames = [];
|
|
foreach ($this->reqCities as $city) {
|
|
$cityNames[] = CityConst::byID($city)->name;
|
|
}
|
|
|
|
$cityNameText = implode(', ', $cityNames);
|
|
return "{$cityNameText} 소유시 가능";
|
|
}
|
|
} |