From 142b96836e5c9c5c6bffbbbb8d3b5590999ea3e1 Mon Sep 17 00:00:00 2001 From: Hide_D Date: Wed, 5 Oct 2022 00:26:04 +0900 Subject: [PATCH] =?UTF-8?q?refac:=20=EC=8B=A0=EA=B7=9C/=EB=B3=B5=EA=B7=80?= =?UTF-8?q?=20=EC=9C=A0=EC=A0=80=20=EC=9C=A0=EC=82=B0=20=ED=8F=AC=EC=9D=B8?= =?UTF-8?q?=ED=8A=B8=20=EC=A7=80=EA=B8=89=20=EB=A1=9C=EC=A7=81=EC=9D=84=20?= =?UTF-8?q?=EC=A1=B0=EA=B8=88=EB=8D=94=20=EC=B5=9C=EC=A0=81=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/sammo/API/General/Join.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/hwe/sammo/API/General/Join.php b/hwe/sammo/API/General/Join.php index 011054dc..f36b7796 100644 --- a/hwe/sammo/API/General/Join.php +++ b/hwe/sammo/API/General/Join.php @@ -2,6 +2,7 @@ namespace sammo\API\General; +use Ds\Set; use sammo\ActionLogger; use sammo\CityConst; use sammo\DB; @@ -101,12 +102,16 @@ class Join extends \sammo\BaseAPI } $targetBonusPointCnt = 0; - $oldGames = $db->queryFirstColumn('SELECT server_id FROM ng_games WHERE `winner_nation` IS NOT NULL AND `server_id` != %s ORDER BY `date` DESC LIMIT 8', $gameID); //정상적으로 끝난 깃수만 제공 + $oldGames = $db->queryFirstColumn('SELECT server_id FROM ng_games WHERE `winner_nation` IS NOT NULL AND `server_id` != %s ORDER BY `date` DESC LIMIT 8', $gameID); + + if(!$oldGames){ + return 0; + } + //이전에 장수를 생성한 적이 있는지 + $oldGamesCnt = new Set($db->queryFirstColumn('SELECT `server_id` FROM ng_old_generals WHERE server_id IN %ls AND `owner` = %i GROUP BY `server_id`', $oldGames, $userID)); foreach ($oldGames as $oldGameID) { - //이전에 장수를 생성한 적이 있는지 - $gameCnt = $db->queryFirstField('SELECT count(*) FROM `storage` WHERE `namespace` = %s AND `key` LIKE %s', 'inheritance_result', "{$oldGameID}_{$userID}_%"); - if ($gameCnt) { + if($oldGamesCnt->contains($oldGameID)) { break; } $targetBonusPointCnt += 1;