diff --git a/hwe/sammo/API/General/GetFrontInfo.php b/hwe/sammo/API/General/GetFrontInfo.php index b7e414a8..76f81374 100644 --- a/hwe/sammo/API/General/GetFrontInfo.php +++ b/hwe/sammo/API/General/GetFrontInfo.php @@ -25,6 +25,10 @@ use function sammo\buildNationCommandClass; use function sammo\checkLimit; use function sammo\getTournamentTermText; use function sammo\buildNationTypeClass; +use function sammo\calcLeadershipBonus; +use function sammo\getBillByLevel; +use function sammo\getDed; +use function sammo\getHonor; use function sammo\getNationStaticInfo; use function sammo\getOfficerLevelText; @@ -252,6 +256,7 @@ class GetFrontInfo extends \sammo\BaseAPI public function generateGeneralInfo(MeekroDB $db, General $general, array $rawNation): array { + $result = [ 'no' => $general->getID(), // number; 'name' => $general->getName(), // string; @@ -265,37 +270,37 @@ class GetFrontInfo extends \sammo\BaseAPI 'dedlevel' => $general->getVar('dedlevel'), // number; 'gold' => $general->getVar('gold'), // number; 'rice' => $general->getVar('rice'), // number; - 'killturn' => $general->getVar(GeneralColumn::injury), // number; - 'picture' => $general->getVar(GeneralColumn::injury), // string; - 'imgsvr' => $general->getVar(GeneralColumn::injury), // 0 | 1; - 'age' => $general->getVar(GeneralColumn::injury), // number; - 'specialDomestic' => $general->getVar(GeneralColumn::injury), // GameObjClassKey; - 'specialWar' => $general->getVar(GeneralColumn::injury), // GameObjClassKey; - 'personal' => $general->getVar(GeneralColumn::injury), // GameObjClassKey; - 'belong' => $general->getVar(GeneralColumn::injury), // number; - 'connect' => $general->getVar(GeneralColumn::injury), // number; + 'killturn' => $general->getVar(GeneralColumn::killturn), // number; + 'picture' => $general->getVar(GeneralColumn::picture), // string; + 'imgsvr' => $general->getVar(GeneralColumn::imgsvr), // 0 | 1; + 'age' => $general->getVar(GeneralColumn::age), // number; + 'specialDomestic' => $general->getVar(GeneralColumn::special), // GameObjClassKey; + 'specialWar' => $general->getVar(GeneralColumn::special2), // GameObjClassKey; + 'personal' => $general->getVar(GeneralColumn::personal), // GameObjClassKey; + 'belong' => $general->getVar(GeneralColumn::belong), // number; + 'connect' => $general->getVar(GeneralColumn::connect), // number; - 'officerLevel' => $general->getVar(GeneralColumn::injury), // number; - 'officerLevelText' => $general->getVar(GeneralColumn::injury), // string; - 'lbonus' => $general->getVar(GeneralColumn::injury), // number; - 'ownerName' => $general->getVar(GeneralColumn::injury), // string | null; - 'honorText' => $general->getVar(GeneralColumn::injury), // string; - 'dedLevelText' => $general->getVar(GeneralColumn::injury), // string; - 'bill' => $general->getVar(GeneralColumn::injury), // number; - 'reservedCommand' => $general->getVar(GeneralColumn::injury), // TurnObj[] | null; + 'officerLevel' => $general->getVar(GeneralColumn::officer_level), // number; + 'officerLevelText' => getOfficerLevelText($general->getVar(GeneralColumn::officer_level), $rawNation['level']), // string; + 'lbonus' => calcLeadershipBonus($general->getVar(GeneralColumn::officer_level), $rawNation['level']), // number; + 'ownerName' => $general->getVar(GeneralColumn::owner_name), // string | null; + 'honorText' => getHonor($general->getVar(GeneralColumn::experience)), // string; + 'dedLevelText' => getDed($general->getVar(GeneralColumn::dedication)), // string; + 'bill' => getBillByLevel($general->getVar(GeneralColumn::dedlevel)), // number; + 'reservedCommand' => null, // TurnObj[] | null; - 'autorun_limit' => $general->getVar(GeneralColumn::injury), // number; + 'autorun_limit' => $general->getAuxVar('autorun_limit') ?? 0, // number; - 'city' => $general->getVar(GeneralColumn::injury), // number; - 'troop' => $general->getVar(GeneralColumn::injury), // number; + 'city' => $general->getVar(GeneralColumn::city), // number; + 'troop' => $general->getVar(GeneralColumn::troop), // number; //P0 End - 'con' => $general->getVar(GeneralColumn::injury), // number; - 'specage' => $general->getVar(GeneralColumn::injury), // number; - 'specage2' => $general->getVar(GeneralColumn::injury), // number; - 'leadership_exp' => $general->getVar(GeneralColumn::injury), // number; - 'strength_exp' => $general->getVar(GeneralColumn::injury), // number; - 'intel_exp' => $general->getVar(GeneralColumn::injury), // number; + 'con' => $general->getVar(GeneralColumn::con), // number; + 'specage' => $general->getVar(GeneralColumn::specage), // number; + 'specage2' => $general->getVar(GeneralColumn::specage2), // number; + 'leadership_exp' => $general->getVar(GeneralColumn::leadership_exp), // number; + 'strength_exp' => $general->getVar(GeneralColumn::strength_exp), // number; + 'intel_exp' => $general->getVar(GeneralColumn::intel_exp), // number; 'dex1' => $general->getVar(GeneralColumn::dex1), // number; 'dex2' => $general->getVar(GeneralColumn::dex2), // number; @@ -387,8 +392,8 @@ class GetFrontInfo extends \sammo\BaseAPI } $rawOfficerList = $db->query('SELECT officer_level, name, npc FROM general WHERE city = %i AND officer_level IN (4,3,2)', $cityID); - $officerList = [4=>null, 3=>null, 2=>null]; - foreach($rawOfficerList as $officer){ + $officerList = [4 => null, 3 => null, 2 => null]; + foreach ($rawOfficerList as $officer) { $officerLevel = $officer['officer_level']; $officerList[$officerLevel] = $officer; }