From a73e533287e25f8f9830ce66d9470ae925572d78 Mon Sep 17 00:00:00 2001 From: hide_d Date: Sun, 26 Aug 2018 22:59:14 +0900 Subject: [PATCH] =?UTF-8?q?=EC=A0=84=ED=88=AC=20=EC=A2=85=EB=A3=8C=20?= =?UTF-8?q?=EC=8B=9C=20=EB=9C=A8=EB=8A=94=20=EB=A1=9C=EA=B7=B8=20=EC=88=9C?= =?UTF-8?q?=EC=84=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/process_war.php | 33 +++++++++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/hwe/process_war.php b/hwe/process_war.php index 993e3d20..136ccc7c 100644 --- a/hwe/process_war.php +++ b/hwe/process_war.php @@ -63,7 +63,12 @@ function processWar(array $rawAttacker, array $rawDefenderCity){ return null; } - $retVal = new WarUnitGeneral($iterDefender->current(), $rawDefenderCity, $rawDefenderNation, false, $year, $month); + $rawGeneral = $iterDefender->current(); + if(extractBattleOrder($rawGeneral) <= 0){ + return null; + } + + $retVal = new WarUnitGeneral($rawGeneral, $rawDefenderCity, $rawDefenderNation, false, $year, $month); $iterDefender->next(); return $retVal; }; @@ -154,6 +159,26 @@ function processWar(array $rawAttacker, array $rawDefenderCity){ } function extractBattleOrder($general){ + if($general['crew'] == 0){ + return 0; + } + + if($general['rice'] <= $general['crew'] / 100){ + return 0; + } + + if($general['mode'] == 0){ + return 0; + } + + if($general['mode'] == 1 && ($general['train'] < 60 || $general['atmos'] < 60)){ + return 0; + } + + if($general['mode'] == 2 && ($general['train'] < 80 || $general['atmos'] < 80)){ + return 0; + } + return ( $general['leader'] + $general['power'] + @@ -396,11 +421,11 @@ function processWar_NG( if($currPhase == $attacker->getMaxPhase()){ //마지막 페이즈의 전투 마무리 - $attacker->tryWound(); - $defender->tryWound(); - $attacker->logBattleResult(); $defender->logBattleResult(); + + $attacker->tryWound(); + $defender->tryWound(); } if($defender instanceof WarUnitCity){