diff --git a/hwe/b_currentCity.php b/hwe/b_currentCity.php index f992f591..e632135c 100644 --- a/hwe/b_currentCity.php +++ b/hwe/b_currentCity.php @@ -187,8 +187,10 @@ if($city['trade'] === null) { $city['trade'] = "- "; } +$dbColumns = General::mergeQueryColumn(['npc', 'defence_train', 'no', 'picture', 'imgsvr', 'name', 'injury', 'leadership', 'strength', 'intel', 'officer_level', 'nation', 'crewtype', 'crew', 'train', 'atmos'], 2)[0]; $generals = $db->query( - 'SELECT npc,defence_train,no,picture,imgsvr,name,injury,leadership,strength,intel,officer_level,nation,crewtype,crew,train,atmos from general where city=%i order by name', + 'SELECT %l from general where city=%i order by name', + Util::formatListOfBackticks($dbColumns), $city['city'] ); diff --git a/hwe/sammo/GeneralAI.php b/hwe/sammo/GeneralAI.php index d8b4885e..d7742ccf 100644 --- a/hwe/sammo/GeneralAI.php +++ b/hwe/sammo/GeneralAI.php @@ -2496,12 +2496,12 @@ class GeneralAI $candidateCities = []; - foreach($this->frontCities as $frontCity){ - $cityCandidates[$frontCity['city']] = $frontCity['important']; + if(!$this->frontCities){ + throw new \sammo\MustNotBeReachedException('attackable인데 frontCities가 없음'); } - if(!$candidateCities){ - return null; + foreach($this->frontCities as $frontCity){ + $candidateCities[$frontCity['city']] = $frontCity['important']; } $cmd = buildGeneralCommandClass('che_NPC능동', $this->general, $this->env, [ @@ -2878,7 +2878,7 @@ class GeneralAI $backupCities = []; foreach ($db->query('SELECT * FROM city WHERE nation = %i', $nationID) as $nationCity) { - $nationCity['generals'] = []; + $nationCity['generals'] = new \ArrayObject(); $cityID = $nationCity['city']; $dev = ($nationCity['agri'] + $nationCity['comm'] + $nationCity['secu'] + $nationCity['def'] + $nationCity['wall']) / @@ -2889,17 +2889,16 @@ class GeneralAI $nationCity['important'] = 1; if($nationCity['supply']){ - $supplyCities[$cityID] = &$nationCity; + $supplyCities[$cityID] = $nationCity; } if($nationCity['front']){ - $frontCities[$cityID] = &$nationCity; + $frontCities[$cityID] = $nationCity; } else{ - $backupCities[$cityID] = &$nationCity; + $backupCities[$cityID] = $nationCity; } - $nationCities[$cityID] = &$nationCity; - unset($nationCity); + $nationCities[$cityID] = $nationCity; } $this->nationCities = $nationCities; @@ -3348,7 +3347,7 @@ class GeneralAI } } - + } protected function choosePromotion()