diff --git a/hwe/func_command.php b/hwe/func_command.php index be52db19..46f2ea1a 100644 --- a/hwe/func_command.php +++ b/hwe/func_command.php @@ -707,84 +707,6 @@ function pullNationCommand(int $nationID, int $level, int $turnCnt=1){ ], 'nation_id=%i AND level=%i', $nationID, $level); } -function updateCommand($no, $type=0) { - $db = DB::db(); - $connect=$db->get(); - - $query = "select no,nation,level from general where no='$no'"; - $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - $general = MYDB_fetch_array($result); - - if($type == 0 || $type == 1) { // 턴처리후, 당기기 - $query = " -update general set -turn0=turn1,turn1=turn2,turn2=turn3,turn3=turn4,turn4=turn5,turn5=turn6,turn6=turn7,turn7=turn8,turn8=turn9, -turn9=turn10,turn10=turn11,turn11=turn12,turn12=turn13,turn13=turn14,turn14=turn15,turn15=turn16,turn16=turn17, -turn17=turn18,turn18=turn19,turn19=turn20,turn20=turn21,turn21=turn22,turn22=turn23,turn23='".EncodeCommand(0, 0, 0, 0)."' -where no='{$general['no']}' -"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - } - if($type == 2 || ($general['level'] >= 5 && $general['level'] <= 12 && $type == 0)) { // 턴 처리후 수뇌부, 수뇌부 당기기 - $turn = "l{$general['level']}turn"; - $query = " -update nation set -{$turn}0={$turn}1,{$turn}1={$turn}2, -{$turn}2={$turn}3,{$turn}3={$turn}4, -{$turn}4={$turn}5,{$turn}5={$turn}6, -{$turn}6={$turn}7,{$turn}7={$turn}8, -{$turn}8={$turn}9,{$turn}9={$turn}10, -{$turn}10={$turn}11,{$turn}11='".EncodeCommand(0, 0, 0, 99)."' -where nation='{$general['nation']}' -"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - } -} - - -function backupdateCommand($no, $type=0) { - $db = DB::db(); - $connect=$db->get(); - - $query = "select no,nation,level from general where no='$no'"; - $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - $general = MYDB_fetch_array($result); - - if($type == 1) { // 미루기 - $query = " -update general set -turn23=turn22,turn22=turn21, -turn21=turn20,turn20=turn19, -turn19=turn18,turn18=turn17, -turn17=turn16,turn16=turn15, -turn15=turn14,turn14=turn13, -turn13=turn12,turn12=turn11, -turn11=turn10,turn10=turn9, -turn9=turn8,turn8=turn7, -turn7=turn6,turn6=turn5, -turn5=turn4,turn4=turn3, -turn3=turn2,turn2=turn1, -turn1=turn0,turn0='".EncodeCommand(0, 0, 0, 0)."' -where no='$no' -"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - } elseif($type == 2) { // 수뇌부 미루기 - $turn = "l{$general['level']}turn"; - $query = " -update nation set -{$turn}11={$turn}10,{$turn}10={$turn}9, -{$turn}9={$turn}8,{$turn}8={$turn}7, -{$turn}7={$turn}6,{$turn}6={$turn}5, -{$turn}5={$turn}4,{$turn}4={$turn}3, -{$turn}3={$turn}2,{$turn}2={$turn}1, -{$turn}1={$turn}0,{$turn}0='".EncodeCommand(0, 0, 0, 99)."' -where nation='{$general['nation']}' -"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - } -} - - function command_Single($turn, $command) { if(!$turn){ header('location:commandlist.php'); diff --git a/hwe/sammo/TurnExecutionHelper.php b/hwe/sammo/TurnExecutionHelper.php index a1957b84..04390a50 100644 --- a/hwe/sammo/TurnExecutionHelper.php +++ b/hwe/sammo/TurnExecutionHelper.php @@ -61,10 +61,6 @@ class TurnExecutionHelper } - public function updateCommand(){ - - } - function updateTurnTime(){ $db = DB::db(); $gameStor = KVStorage::getStorage($db, 'game_env'); @@ -153,7 +149,10 @@ WHERE turntime < %s AND general_turn.turn_idx = 0 ORDER BY turntime ASC, `no` AS $turnObj = new static($generalWork, $turn, $year, $month); $turnObj->preprocessCommand(); $turnObj->processCommand(); - $turnObj->updateCommand(); + pullGeneralCommand($generalWork['no']); + if($generalWork['level'] >= 5){ + pullNationCommand($generalWork['nation'], $generalWork['level']); + } $turnObj->updateTurntime(); $turnObj->applyDB(); diff --git a/hwe/turn.php b/hwe/turn.php index c560cb11..99328f3e 100644 --- a/hwe/turn.php +++ b/hwe/turn.php @@ -18,6 +18,7 @@ $session = Session::requireGameLogin()->setReadOnly(); $userID = Session::getUserID(); $db = DB::db(); +$generalID = $session->generalID; $gameStor = KVStorage::getStorage($db, 'game_env'); $connect=$db->get(); @@ -40,27 +41,11 @@ case 0://반복 } $db->update('general', $valueMap, 'owner=%i', $userID); break; -case 1: - $valueMap = []; - foreach(range(GameConst::$maxTurn -1, $sel, -1) as $idx){ - $src = $idx - $sel; - $valueMap['turn'.$idx] = $db->sqleval('%b', 'turn'.$src); - } - foreach(range($sel -1, 0, -1) as $idx){ - $valueMap['turn'.$idx] = EncodeCommand(0, 0, 0, 0); - } - $db->update('general', $valueMap, 'owner=%i', $userID); +case 1://미루기 + pushGeneralCommand($generalID, $sel); break; -case 2: - $valueMap = []; - foreach(range(0, GameConst::$maxTurn - $sel - 1) as $idx){ - $src = $idx + $sel; - $valueMap['turn'.$idx] = $db->sqleval('%b', 'turn'.$src); - } - foreach(range(GameConst::$maxTurn - $sel, GameConst::$maxTurn - 1) as $idx){ - $valueMap['turn'.$idx] = EncodeCommand(0, 0, 0, 0); - } - $db->update('general', $valueMap, 'owner=%i', $userID); +case 2://당기기 + pullGeneralCommand($generalID, $sel); break; } diff --git a/hwe/turn_pop_core.php b/hwe/turn_pop_core.php index 5148f3ec..aea18ce7 100644 --- a/hwe/turn_pop_core.php +++ b/hwe/turn_pop_core.php @@ -8,12 +8,10 @@ $session = Session::requireGameLogin()->setReadOnly(); $userID = Session::getUserID(); $db = DB::db(); -$connect=$db->get(); +$me = $db->queryFirstRow('SELECT no,nation,level FROM general WHERE owner=%i', $userID); -$query = "select no from general where owner='{$userID}'"; -$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); -$me = MYDB_fetch_array($result); - -updateCommand($me['no'], 2); +if($me['level'] >= 5 && $me['nation'] > 0){ + pullNationCommand($me['nation'], $me['level']); +} header('location:b_chiefcenter.php'); diff --git a/hwe/turn_push_core.php b/hwe/turn_push_core.php index d3b8f088..fc11f984 100644 --- a/hwe/turn_push_core.php +++ b/hwe/turn_push_core.php @@ -8,12 +8,10 @@ $session = Session::requireGameLogin()->setReadOnly(); $userID = Session::getUserID(); $db = DB::db(); -$connect=$db->get(); +$me = $db->queryFirstRow('SELECT no,nation,level FROM general WHERE owner=%i', $userID); -$query = "select no from general where owner='{$userID}'"; -$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); -$me = MYDB_fetch_array($result); - -backupdateCommand($me['no'], 2); +if($me['level'] >= 5 && $me['nation'] > 0){ + pushNationCommand($me['nation'], $me['level']); +} header('location:b_chiefcenter.php');