From 712e2c32a0f71e4ba248c370a9e9e9f2df253fd0 Mon Sep 17 00:00:00 2001 From: Hide_D Date: Wed, 22 Aug 2018 02:18:55 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B3=91=EB=A0=A5=EC=9D=98=20=EC=86=8C?= =?UTF-8?q?=EC=A7=91=ED=95=B4=EC=A0=9C=EA=B0=80=200=EB=B6=84=200=EC=B4=88?= =?UTF-8?q?=EA=B0=80=20=EC=95=84=EB=8B=8C=20'=EB=B3=B8=EC=9D=B8=EC=9D=98?= =?UTF-8?q?=20=ED=84=B4=20=EC=8B=A4=ED=96=89=20=EC=A7=81=EC=A0=84'?= =?UTF-8?q?=EC=97=90=20=EC=8B=A4=ED=96=89=EB=90=98=EB=8F=84=EB=A1=9D=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/func.php | 23 ++++++++++++++++++++++- hwe/func_gamerule.php | 21 --------------------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/hwe/func.php b/hwe/func.php index 648121a3..36bbf4da 100644 --- a/hwe/func.php +++ b/hwe/func.php @@ -1813,7 +1813,7 @@ function PreprocessCommand($no) { $connect=$db->get(); $log = []; - $query = "select no,name,city,injury,special2,item,turn0 from general where no='$no'"; + $query = "select no,name,city,injury,special2,item,turn0,rice,crew from general where no='$no'"; $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); $general = MYDB_fetch_array($result); @@ -1888,6 +1888,27 @@ function PreprocessCommand($no) { MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); } } + + + if($general['crew'] >= 100){ + $newRice = $general['rice'] - $general['crew'] / 100; + if($newRice >= 0){ + $db->update('general', [ + 'rice'=>Util::round($newRice) + ], 'no=%i',$general['no']); + } + else{ + $db->update('city', [ + 'pop'=>$db->sqleval('pop + %i', $general['crew']) + ], 'city=%i', $general['city']); + $db->update('general', [ + 'crew'=>0, + 'rice'=>0 + ], 'no=%i',$general['no']); + pushGenLog($general, ["●군량이 모자라 병사들이 소집해제되었습니다!"]); + } + } + } diff --git a/hwe/func_gamerule.php b/hwe/func_gamerule.php index 8f001e13..dd173aae 100644 --- a/hwe/func_gamerule.php +++ b/hwe/func_gamerule.php @@ -329,27 +329,6 @@ function preUpdateMonthly() { $query = "update city set nation='0',gen1='0',gen2='0',gen3='0',conflict='{}',term=0,front=0 where rate<='30' and supply='0'"; MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - // 우선 병사수/100 만큼 소비 - $query = "update general set rice=rice-round(crew/100) where crew>=100"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - - // 쌀이 마이너스인 장수들 소집해제 - $query = "select no,name,rice,crew,city from general where rice<0"; - $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - $gencount = MYDB_num_rows($result); - for($i=0; $i < $gencount; $i++) { - $general = MYDB_fetch_array($result); - - // 주민으로 돌아감 - $query = "update city set pop=pop+'{$general['crew']}' where city='{$general['city']}'"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - - $query = "update general set crew=0,rice=0 where no='{$general['no']}'"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - - pushGenLog($general, ["●군량이 모자라 병사들이 소집해제되었습니다!"]); - } - //접률감소 $query = "update general set connect=floor(connect*0.99)"; MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");