refac, wip: con -> refreshScore
This commit is contained in:
+10
-10
@@ -38,13 +38,13 @@ if ($genlist) {
|
||||
}
|
||||
switch ($btn) {
|
||||
case "전체 접속허용":
|
||||
$db->update('general', [
|
||||
'con' => 0
|
||||
$db->update('general_access_log', [
|
||||
'refresh_score' => 0
|
||||
], true);
|
||||
break;
|
||||
case "전체 접속제한":
|
||||
$db->update('general', [
|
||||
'con' => 1000
|
||||
$db->update('general_access_log', [
|
||||
'refresh_score' => 1000
|
||||
], true);
|
||||
break;
|
||||
case "블럭 해제":
|
||||
@@ -186,14 +186,14 @@ switch ($btn) {
|
||||
], '`no` IN %li', $genlist);
|
||||
break;
|
||||
case "접속 허용":
|
||||
$db->update('general', [
|
||||
'con' => 0
|
||||
], '`no` IN %li', $genlist);
|
||||
$db->update('general_access_log', [
|
||||
'refresh_score' => 0
|
||||
], '`general_id` IN %li', $genlist);
|
||||
break;
|
||||
case "접속 제한":
|
||||
$db->update('general', [
|
||||
'con' => 1000
|
||||
], '`no` IN %li', $genlist);
|
||||
$db->update('general_access_log', [
|
||||
'refresh_score' => 1000
|
||||
], '`general_id` IN %li', $genlist);
|
||||
break;
|
||||
case "메세지 전달":
|
||||
$text = $msg ?? '';
|
||||
|
||||
+6
-3
@@ -16,10 +16,13 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
increaseRefresh("장수일람", 2);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT con,turntime FROM general WHERE owner = %i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT refresh_score,turntime FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner = %i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
|
||||
@@ -13,10 +13,13 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
$gameStor->cacheValues(['killturn', 'autorun_user', 'turnterm']);
|
||||
increaseRefresh("세력일람", 2);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT con, turntime FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT refresh_score, turntime FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
|
||||
+7
-4
@@ -21,12 +21,15 @@ $generalID = $session->generalID;
|
||||
|
||||
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no,tournament,con,turntime from general where owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,tournament,refresh_score,turntime FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id where owner=%i', $userID
|
||||
);
|
||||
|
||||
$admin = $gameStor->getValues(['tournament', 'phase', 'tnmt_type', 'turnterm', 'develcost']);
|
||||
$turnTerm = $admin['turnterm'];
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
@@ -107,7 +110,7 @@ if ($str3) {
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<?php if ($con == 1) {
|
||||
<?php if ($limitState == 1) {
|
||||
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
||||
} ?>
|
||||
|
||||
|
||||
+7
-4
@@ -19,12 +19,15 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
increaseRefresh("암행부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no,nation,officer_level,con,turntime,belong,permission,penalty from general where owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,nation,officer_level,refresh_score,turntime,belong,permission,penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$nationLevel = $db->queryFirstField('SELECT level FROM nation WHERE nation=%i', $me['nation']);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
@@ -45,7 +48,7 @@ $templates = new \League\Plates\Engine('templates');
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<?php if ($con == 1) {
|
||||
<?php if ($limitState == 1) {
|
||||
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
||||
} ?>
|
||||
|
||||
|
||||
@@ -14,14 +14,16 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
increaseRefresh("토너먼트", 1);
|
||||
TurnExecutionHelper::executeAllCommand();
|
||||
|
||||
$me = $db->queryFirstRow('select no,tournament,con,turntime from general where owner=%i', $userID);
|
||||
$generalID = $session->generalID;
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,tournament,refresh_score,turntime from `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id where owner=%i', $userID
|
||||
);
|
||||
|
||||
$admin = $gameStor->getValues(['tournament', 'phase', 'turnterm', 'tnmt_msg', 'tnmt_type', 'develcost', 'tnmt_trig']);
|
||||
$turnTerm = $admin['turnterm'];
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
@@ -100,7 +102,7 @@ $globalBetTotal = array_sum($globalBet);
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<?php if ($con == 1) {
|
||||
<?php if ($limitState == 1) {
|
||||
MessageBox("접속제한이 얼마 남지 않았습니다! 제한량이 모자라다면 참여를 해보세요^^");
|
||||
} ?>
|
||||
|
||||
|
||||
+12
-13
@@ -105,10 +105,9 @@ function GetImageURL($imgsvr, $filepath = '')
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null|int $con 장수의 벌점
|
||||
* @param null|int $conlimit 최대 벌점
|
||||
* @param null|int $refreshScore 장수의 벌점
|
||||
*/
|
||||
function checkLimit($con = null)
|
||||
function checkLimit($refreshScore = null)
|
||||
{
|
||||
$session = Session::getInstance();
|
||||
if ($session->userGrade >= 4) {
|
||||
@@ -118,15 +117,15 @@ function checkLimit($con = null)
|
||||
$db = DB::db();
|
||||
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
if ($con === null) {
|
||||
$con = $db->queryFirstField('SELECT con FROM general WHERE `owner`=%i', Session::getUserID());
|
||||
if ($refreshScore === null) {
|
||||
$refreshScore = $db->queryFirstField('SELECT refresh_score FROM general_access_log WHERE `general_id`=%i', Session::getGeneralID());
|
||||
}
|
||||
$conlimit = $gameStor->conlimit;
|
||||
$refreshLimit = $gameStor->refreshLimit;
|
||||
|
||||
if ($con > $conlimit) {
|
||||
if ($refreshScore > $refreshLimit) {
|
||||
return 2;
|
||||
//접속제한 90%이면 경고문구
|
||||
} elseif ($con > $conlimit * 0.9) {
|
||||
} elseif ($refreshScore > $refreshLimit * 0.9) {
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
@@ -753,7 +752,7 @@ function generalInfo(General $generalObj)
|
||||
<td style='text-align:center;' class='bg1'><b>부대</b></td>
|
||||
<td style='text-align:center;' colspan=3>{$troopInfo}</td>
|
||||
<td style='text-align:center;' class='bg1'><b>벌점</b></td>
|
||||
<td style='text-align:center;' colspan=5>" . getRefreshScoreText($refreshScoreTotal) . " {$refreshScoreTotal}({$generalObj->getVar('con')})</td>
|
||||
<td style='text-align:center;' colspan=5>" . getRefreshScoreText($refreshScoreTotal) . " {$refreshScoreTotal}({$generalObj->getVar('refresh_score')})</td>
|
||||
</tr>
|
||||
</table>";
|
||||
}
|
||||
@@ -1087,13 +1086,13 @@ function CheckOverhead()
|
||||
//서버정보
|
||||
$db = DB::db();
|
||||
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
list($turnterm, $conlimit) = $gameStor->getValuesAsArray(['turnterm', 'conlimit']);
|
||||
[$turnterm, $refreshLimit] = $gameStor->getValuesAsArray(['turnterm', 'refreshLimit']);
|
||||
|
||||
$con = Util::round(pow($turnterm, 0.6) * 3) * 10;
|
||||
$nextRefreshLimit = Util::round(pow($turnterm, 0.6) * 3) * 10;
|
||||
|
||||
|
||||
if ($con != $conlimit) {
|
||||
$gameStor->conlimit = $con;
|
||||
if ($nextRefreshLimit != $refreshLimit) {
|
||||
$gameStor->refreshLimit = $nextRefreshLimit;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+12
-12
@@ -133,19 +133,19 @@ function getNationType(?string $type) {
|
||||
}
|
||||
|
||||
|
||||
function getRefreshScoreText($con) {
|
||||
if($con < 50) $conname = '안함';
|
||||
elseif($con < 100) $conname = '무관심';
|
||||
elseif($con < 200) $conname = '가끔';
|
||||
elseif($con < 400) $conname = '보통';
|
||||
elseif($con < 800) $conname = '자주';
|
||||
elseif($con < 1600) $conname = '열심';
|
||||
elseif($con < 3200) $conname = '중독';
|
||||
elseif($con < 6400) $conname = '폐인';
|
||||
elseif($con < 12800) $conname = '경고';
|
||||
else $conname = '헐...';
|
||||
function getRefreshScoreText($score) {
|
||||
if($score < 50) $scoreName = '안함';
|
||||
elseif($score < 100) $scoreName = '무관심';
|
||||
elseif($score < 200) $scoreName = '가끔';
|
||||
elseif($score < 400) $scoreName = '보통';
|
||||
elseif($score < 800) $scoreName = '자주';
|
||||
elseif($score < 1600) $scoreName = '열심';
|
||||
elseif($score < 3200) $scoreName = '중독';
|
||||
elseif($score < 6400) $scoreName = '폐인';
|
||||
elseif($score < 12800) $scoreName = '경고';
|
||||
else $scoreName = '헐...';
|
||||
|
||||
return $conname;
|
||||
return $scoreName;
|
||||
}
|
||||
|
||||
function getNationType2(?string $type) {
|
||||
|
||||
@@ -698,7 +698,7 @@ function checkEmperior()
|
||||
$db = DB::db();
|
||||
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
$admin = $gameStor->getValues(['year', 'month', 'isunited', 'conlimit']);
|
||||
$admin = $gameStor->getValues(['year', 'month', 'isunited', 'refreshLimit']);
|
||||
if ($admin['isunited'] != 0) {
|
||||
return;
|
||||
}
|
||||
@@ -760,7 +760,7 @@ function checkEmperior()
|
||||
}
|
||||
|
||||
$gameStor->isunited = 2;
|
||||
$gameStor->conlimit = $gameStor->conlimit * 100;
|
||||
$gameStor->refreshLimit = $gameStor->refreshLimit * 100;
|
||||
|
||||
foreach ($db->queryFirstColumn('SELECT no FROM general WHERE npc<2 AND age>=%i', GameConst::$minPushHallAge) as $hallGeneralNo) {
|
||||
CheckHall($hallGeneralNo);
|
||||
|
||||
@@ -17,10 +17,13 @@ $text = Util::getPost('text');
|
||||
|
||||
increaseRefresh("회의실", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, name, officer_level, permission, con, turntime, belong, penalty, `picture`,`imgsvr` FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, nation, name, officer_level, permission, refresh_score, turntime, belong, penalty, `picture`,`imgsvr` FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
@@ -50,7 +53,7 @@ if($permission < 0){
|
||||
'result'=>false,
|
||||
'reason'=>'국가에 소속되어있지 않습니다.'
|
||||
]);
|
||||
|
||||
|
||||
}
|
||||
else if ($isSecretBoard && $permission < 2) {
|
||||
Json::die([
|
||||
|
||||
@@ -16,10 +16,13 @@ $text = Util::getPost('text');
|
||||
|
||||
increaseRefresh("회의실", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, name, officer_level, permission, con, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, nation, name, officer_level, permission, refresh_score, turntime, belong, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
@@ -58,7 +61,7 @@ if($permission < 0){
|
||||
'result'=>false,
|
||||
'reason'=>'국가에 소속되어있지 않습니다.'
|
||||
]);
|
||||
|
||||
|
||||
}
|
||||
else if ($isSecretBoard && $permission < 2) {
|
||||
Json::die([
|
||||
|
||||
@@ -16,11 +16,14 @@ $isSecretBoard = Util::getPost('isSecret', 'bool', false);
|
||||
|
||||
increaseRefresh("회의실", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, permission, con, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, nation, officer_level, permission, refresh_score, turntime, belong, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
@@ -33,7 +36,7 @@ if($permission < 0){
|
||||
'result'=>false,
|
||||
'reason'=>'국가에 소속되어있지 않습니다.'
|
||||
]);
|
||||
|
||||
|
||||
}
|
||||
else if ($isSecretBoard && $permission < 2) {
|
||||
Json::die([
|
||||
@@ -72,4 +75,3 @@ Json::die([
|
||||
'articles'=>$articles,
|
||||
'reason'=>'success'
|
||||
]);
|
||||
|
||||
|
||||
@@ -17,10 +17,13 @@ $letterNo = Util::getPost('letterNo', 'int');
|
||||
|
||||
increaseRefresh("외교부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, name, nation, officer_level, permission, con, turntime, belong, penalty, picture, imgsvr FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, name, nation, officer_level, permission, refresh_score, turntime, belong, penalty, picture, imgsvr FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
|
||||
@@ -16,11 +16,14 @@ $isSecretBoard = Util::getPost('isSecret', 'bool', false);
|
||||
|
||||
increaseRefresh("외교부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, permission, con, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, nation, officer_level, permission, refresh_score, turntime, belong, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
@@ -33,7 +36,7 @@ if($permission < 0){
|
||||
'result'=>false,
|
||||
'reason'=>'국가에 소속되어있지 않습니다.'
|
||||
]);
|
||||
|
||||
|
||||
}
|
||||
|
||||
$letters = [];
|
||||
@@ -83,4 +86,3 @@ Json::die([
|
||||
'myNationID'=>$me['nation'],
|
||||
'reason'=>'success'
|
||||
]);
|
||||
|
||||
|
||||
@@ -22,10 +22,13 @@ $reason = Util::getPost('reason', 'string', '');
|
||||
|
||||
increaseRefresh("외교부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, name, nation, officer_level, permission, con, turntime, belong, penalty, picture, imgsvr FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, name, nation, officer_level, permission, refresh_score, turntime, belong, penalty, picture, imgsvr FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
|
||||
@@ -17,10 +17,13 @@ $letterNo = Util::getPost('letterNo', 'int');
|
||||
|
||||
increaseRefresh("외교부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, name, nation, officer_level, permission, con, turntime, belong, penalty, picture, imgsvr FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, name, nation, officer_level, permission, refresh_score, turntime, belong, penalty, picture, imgsvr FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
|
||||
@@ -24,10 +24,13 @@ if($prevNo < 1){
|
||||
$prevNo = null;
|
||||
}
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, name, nation, officer_level, permission, con, turntime, belong, penalty, picture, imgsvr FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, name, nation, officer_level, permission, refresh_score, turntime, belong, penalty, picture, imgsvr FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
|
||||
@@ -33,12 +33,15 @@ if($generalID <= 0 || $reqTo <= 0){
|
||||
|
||||
$db = DB::db();
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no,nation,officer_level,con,turntime,belong,permission,penalty from general where owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,nation,officer_level,refresh_score,turntime,belong,permission,penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
$nationID = $me['nation'];
|
||||
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
'reason'=>'접속 제한입니다.'
|
||||
@@ -61,7 +64,7 @@ if($generalID !== $targetID){
|
||||
'reason'=>'권한이 부족합니다. 수뇌부가 아니거나 사관년도가 부족합니다.'
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
if($testGeneralNationID !== $nationID){
|
||||
Json::die([
|
||||
'result'=>false,
|
||||
|
||||
@@ -39,7 +39,10 @@ if (!$data || !is_array($data)) {
|
||||
|
||||
$db = DB::db();
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, name, npc, nation, city, officer_level, con, turntime, belong, permission, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, name, npc, nation, city, officer_level, refresh_score, turntime, belong, permission, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
|
||||
$nationID = $me['nation'];
|
||||
|
||||
+6
-5
@@ -29,7 +29,8 @@ if (!$session->isGameLoggedIn()) {
|
||||
}
|
||||
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,con,turntime,newmsg,newvote,`officer_level` from general where owner = %i',
|
||||
'SELECT no,refresh_score,turntime,newmsg,newvote,`officer_level` FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner = %i',
|
||||
$userID
|
||||
);
|
||||
|
||||
@@ -51,8 +52,8 @@ if ($me['newmsg'] == 1 || $me['newvote'] == 1) {
|
||||
|
||||
$plock = boolval($db->queryFirstField('SELECT plock FROM plock WHERE `type`="GAME" LIMIT 1'));
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
@@ -198,7 +199,7 @@ if ($lastVoteID) {
|
||||
|
||||
<div class="s-border-t col py-2 col-8 col-lg-4"><?= info(2) ?></div>
|
||||
<div class="s-border-t col py-2 col-4 col-lg-2">전체 접속자 수 : <?= $gameStor->online_user_cnt ?> 명</div>
|
||||
<div class="s-border-t col py-2 col-4 col-lg-2">턴당 갱신횟수 : <?= $gameStor->conlimit ?>회</div>
|
||||
<div class="s-border-t col py-2 col-4 col-lg-2">턴당 갱신횟수 : <?= $gameStor->refreshLimit ?>회</div>
|
||||
<div class="s-border-t col py-2 col-8 col-lg-4"><?= info(3) ?></div>
|
||||
<div class="s-border-t py-2 col col-6 col-lg-4">
|
||||
<?php if ($isTournamentActive) : ?>
|
||||
@@ -367,7 +368,7 @@ if ($lastVoteID) {
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
if ($con == 1) {
|
||||
if ($limitState == 1) {
|
||||
MessageBox("접속제한이 얼마 남지 않았습니다!");
|
||||
}
|
||||
if ($me['newmsg'] == 1) {
|
||||
|
||||
@@ -42,9 +42,12 @@ class GetBettingList extends \sammo\BaseAPI
|
||||
$bettingStor = KVStorage::getStorage($db, 'betting');
|
||||
$userID = $session->userID;
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no,nation,officer_level,con,turntime,belong,penalty,permission FROM general WHERE owner=%i', $userID);
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,nation,officer_level,refresh_score,turntime,belong,penalty,permission FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return "접속 제한중입니다.";
|
||||
}
|
||||
|
||||
|
||||
@@ -174,7 +174,7 @@ class GetFrontInfo extends \sammo\BaseAPI
|
||||
'online_nation', 'online_user_cnt',
|
||||
'year', 'month', 'startyear',
|
||||
'maxgeneral',
|
||||
'conlimit',
|
||||
'refreshLimit',
|
||||
'server_cnt',
|
||||
]);
|
||||
|
||||
@@ -537,8 +537,8 @@ class GetFrontInfo extends \sammo\BaseAPI
|
||||
$nationID = $general->getNationID();
|
||||
$cityID = $general->getCityID();
|
||||
|
||||
$con = checkLimit($general->getVar('con'));
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($general->getVar('refresh_score') ?? 0);
|
||||
if ($limitState >= 2) {
|
||||
return [
|
||||
'result' => false,
|
||||
'reason' => '접속 제한중입니다.',
|
||||
|
||||
@@ -42,9 +42,12 @@ class GeneralList extends \sammo\BaseAPI
|
||||
$userID = $session->userID;
|
||||
if ($session->isGameLoggedIn()) {
|
||||
increaseRefresh("장수일람", 2);
|
||||
$me = $db->queryFirstRow('SELECT con, turntime FROM general WHERE owner=%i', $userID);
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT refresh_score, turntime FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return '접속 제한중입니다. 1턴 이내에 너무 많은 갱신을 하셨습니다.';
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -148,13 +148,16 @@ class GetHistory extends \sammo\BaseAPI
|
||||
}
|
||||
increaseRefresh("연감", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT con, turntime FROM general WHERE owner = %i', $session->userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT refresh_score, turntime FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner = %i', $session->userID
|
||||
);
|
||||
if (!$me) {
|
||||
return '장수가 사망했습니다.';
|
||||
}
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return templateLimitMsg($me['turntime']);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ class GetOldMessage extends \sammo\BaseAPI
|
||||
|
||||
|
||||
$db = DB::db();
|
||||
$me = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`con`,`picture`,`imgsvr`,penalty,permission FROM general WHERE `owner`=%i', $userID);
|
||||
$me = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`picture`,`imgsvr`,penalty,permission FROM general WHERE `owner`=%i', $userID);
|
||||
|
||||
if ($me === null) {
|
||||
return '장수가 사망했습니다.';
|
||||
|
||||
@@ -73,7 +73,7 @@ class GetRecentMessage extends \sammo\BaseAPI
|
||||
|
||||
|
||||
$db = DB::db();
|
||||
$me = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`con`,`picture`,`imgsvr`,penalty,permission FROM general WHERE `owner`=%i', $userID);
|
||||
$me = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`picture`,`imgsvr`,penalty,permission FROM general WHERE `owner`=%i', $userID);
|
||||
|
||||
if ($me === null) {
|
||||
return '장수가 사망했습니다.';
|
||||
|
||||
@@ -108,7 +108,7 @@ class SendMessage extends \sammo\BaseAPI
|
||||
$unlimited = new \DateTime('9999-12-31');
|
||||
|
||||
$db = DB::db();
|
||||
$destUser = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`con`,`picture`,`imgsvr`,permission,penalty FROM general WHERE `no`=%i', $destGeneralID);
|
||||
$destUser = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`picture`,`imgsvr`,permission,penalty FROM general WHERE `no`=%i', $destGeneralID);
|
||||
|
||||
if (!$destUser) {
|
||||
return '존재하지 않는 유저입니다.';
|
||||
@@ -160,15 +160,18 @@ class SendMessage extends \sammo\BaseAPI
|
||||
}
|
||||
|
||||
$db = DB::db();
|
||||
$me = $db->queryFirstRow('SELECT `no`,`name`,`nation`,`officer_level`,`con`,`picture`,`imgsvr`,penalty,permission,belong FROM general WHERE `owner`=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT `no`,`name`,`nation`,`officer_level`,`refresh_score`,`picture`,`imgsvr`,penalty,permission,belong FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE `owner`=%i', $userID
|
||||
);
|
||||
|
||||
if (!$me) {
|
||||
$session->logoutGame();
|
||||
return '장수가 없습니다.';
|
||||
}
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return '접속 제한입니다.';
|
||||
}
|
||||
|
||||
|
||||
@@ -146,9 +146,12 @@ class GeneralList extends \sammo\BaseAPI
|
||||
$gameStor = \sammo\KVStorage::getStorage($db, 'game_env');
|
||||
$env = $gameStor->getValues(['year', 'month', 'turntime', 'turnterm', 'autorun_user', 'killturn']);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT con, turntime, belong, nation, officer_level, permission, penalty FROM general WHERE owner=%i', $session->getUserID());
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT refresh_score, turntime, belong, nation, officer_level, permission, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $session->getUserID()
|
||||
);
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return '접속 제한중입니다. 1턴 이내에 너무 많은 갱신을 하셨습니다.';
|
||||
}
|
||||
|
||||
|
||||
@@ -109,10 +109,12 @@ class GetGeneralLog extends \sammo\BaseAPI
|
||||
$reqTo = $this->args['reqTo'] ?? null;
|
||||
|
||||
$db = DB::db();
|
||||
$me = $db->queryFirstRow('SELECT no,nation,officer_level,con,turntime,belong,permission,penalty from general where owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,nation,officer_level,refresh_score,turntime,belong,permission,penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return '접속 제한입니다.';
|
||||
}
|
||||
|
||||
|
||||
@@ -39,12 +39,15 @@ class GetReservedCommand extends \sammo\BaseAPI
|
||||
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
$userID = $session->userID;
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no,nation,officer_level,con,turntime,belong,penalty,permission FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no,nation,officer_level,refresh_score,turntime,belong,penalty,permission FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$nationLevel = $db->queryFirstField('SELECT level FROM nation WHERE nation = %i', $me['nation']);
|
||||
$nationID = $me['nation'];
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
return "접속 제한중입니다. 1턴 이내에 너무 많은 갱신을 하셨습니다. (다음 갱신 가능 시각 : {$me['turntime']})";
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ class InvaderEnding extends \sammo\Event\Action{
|
||||
$gameStor->setValue('isunited', 3);
|
||||
$logger->flush();
|
||||
|
||||
$gameStor->conlimit = $gameStor->conlimit * 100;
|
||||
$gameStor->refreshLimit = $gameStor->refreshLimit * 100;
|
||||
|
||||
$eventID = Util::array_get($env['currentEventID']);
|
||||
$db->delete('event', 'id = %i', $eventID);
|
||||
|
||||
@@ -280,7 +280,7 @@ class ResetHelper{
|
||||
'msg'=>'공지사항',//TODO:공지사항
|
||||
'maxgeneral'=>GameConst::$defaultMaxGeneral,
|
||||
'maxnation'=>GameConst::$defaultMaxNation,
|
||||
'conlimit'=>30000,
|
||||
'refreshLimit'=>30000,
|
||||
'develcost'=>$develcost,
|
||||
'turntime'=>$turntime,
|
||||
'starttime'=>$starttime,
|
||||
|
||||
@@ -175,7 +175,9 @@ class TurnExecutionHelper
|
||||
$general = $this->getGeneral();
|
||||
$generalID = $general->getID();
|
||||
$logger = $general->getLogger();
|
||||
$general->setVar('con', 0);
|
||||
$db->update('general_access_log', [
|
||||
'refresh_score' => 0,
|
||||
], 'general_id=%i', $generalID);
|
||||
|
||||
$generalName = $general->getName();
|
||||
|
||||
|
||||
+6
-3
@@ -13,11 +13,14 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
increaseRefresh("내무부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, permission, con, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, nation, officer_level, permission, refresh_score, turntime, belong, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
|
||||
@@ -15,13 +15,16 @@ $gameStor->cacheValues(['autorun_user', 'develcost']);
|
||||
increaseRefresh("NPC 정책", 1);
|
||||
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, npc, nation, city, officer_level, con, turntime, belong, permission, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, npc, nation, city, officer_level, refresh_score, turntime, belong, permission, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$nationID = $me['nation'];
|
||||
$nation = $db->queryFirstRow('SELECT nation,level,name,color,type,gold,rice,bill,tech,rate,scout,war,secretlimit,capital FROM nation WHERE nation = %i', $nationID);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
|
||||
@@ -12,9 +12,6 @@ $db = DB::db();
|
||||
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
$isResAuction = Util::getReq('type') !== 'unique';
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, permission, con, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
+1
-8
@@ -15,14 +15,7 @@ $isSecretBoard = Util::getReq('isSecret', 'bool', false);
|
||||
|
||||
//increaseRefresh("회의실", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, permission, con, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, permission, turntime, belong, penalty FROM general WHERE owner=%i', $userID);
|
||||
|
||||
$permission = checkSecretPermission($me);
|
||||
if ($permission < 0) {
|
||||
|
||||
@@ -31,9 +31,6 @@ else{
|
||||
[$currentYear, $currentMonth] = [$l_year, $l_month];
|
||||
}
|
||||
|
||||
|
||||
$me = $db->queryFirstRow('SELECT con, turntime FROM general WHERE owner = %i', $userID);
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
@@ -13,10 +13,13 @@ $gameStor = KVStorage::getStorage($db, 'game_env');
|
||||
|
||||
increaseRefresh("내무부", 1);
|
||||
|
||||
$me = $db->queryFirstRow('SELECT no, nation, officer_level, con, turntime, belong, permission, penalty FROM general WHERE owner=%i', $userID);
|
||||
$me = $db->queryFirstRow(
|
||||
'SELECT no, nation, officer_level, refresh_score, turntime, belong, permission, penalty FROM `general`
|
||||
LEFT JOIN general_access_log AS l ON `general`.no = l.general_id WHERE owner=%i', $userID
|
||||
);
|
||||
|
||||
$con = checkLimit($me['con']);
|
||||
if ($con >= 2) {
|
||||
$limitState = checkLimit($me['refresh_score']);
|
||||
if ($limitState >= 2) {
|
||||
printLimitMsg($me['turntime']);
|
||||
exit();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user