history.go(-1);";
exit(1);
}
//회원 테이블에서 정보확인
$member = getRootDB()->queryFirstRow("select no,id,picture,imgsvr,grade from MEMBER where no = %i", $userID);
if(!$member) {
MessageBox("잘못된 접근입니다!!!");
echo "";
exit(1);
}
$date = date('Y-m-d H:i:s');
//등록정보
getRootDB()->query("update MEMBER set reg_num=reg_num+1,reg_date=%s where no=%i", $date, $userID);
$connect = dbConn();
$db = getDB();
########## 동일 정보 존재여부 확인. ##########
$admin = $db->queryFirstRow("select year,month,scenario,maxgeneral,turnterm,genius,img from game where no='1'");
$gencount = $db->queryFirstField("select count(no) from general where npc<2");
$id_num = $db->queryFirstField("select count(no) from general where owner= %i", $userID);
$name_num = $db->queryFirstField("select count(no) from general where name= %s", $name);
if($id_num) {
echo("");
exit;
} elseif($name_num) {
echo("");
exit;
} elseif($token_num != 1) {
echo("");
exit;
} elseif($admin['maxgeneral'] <= $gencount) {
echo("");
exit;
} elseif($id == "") {
echo("");
exit;
} elseif(_String::GetStrLen($name) < 1) {
echo("");
exit;
} elseif($name == "") {
echo("");
exit;
} elseif(_String::GetStrLen($name) > 6) {
echo("");
exit;
} elseif($leader + $power + $intel > 150) {
echo("");
exit;
} elseif($leader > 75 || $leader < 10 || $power > 75 || $power < 10 || $intel > 75 || $intel < 10) {
echo("");
exit;
} elseif($character < 0 || $character > 11) {
echo("");
exit;
} else {
$ratio = rand() % 100;
// 현재 1%
if($ratio == 50 && $admin['genius'] > 0) {
$genius = 1;
$db->query("update game set genius=genius-1 where no='1'");
} else {
$genius = 0;
}
//중, 소 공백지 개수
$citycount = toInt($db->queryFirstField("select count(city) from city where level>=5 and level<=6 and nation=0"));
// 공백지에서만 태어나게
if($citycount > 0) {
$city = toInt($db->queryFirstField("select city from city where level>=5 and level<=6 and nation=0 order by rand() limit 0,1"));
} else {
$city = toInt($db->queryFirstField("select city from city where level>=5 and level<=6 order by rand() limit 0,1"));
}
$total = rand() % 6;
$pleader = rand() % 100;
$ppower = rand() % 100;
$pintel = rand() % 100;
$rate = $pleader + $ppower + $pintel;
$pleader = floor($pleader / $rate * $total + 0.5);
$ppower = floor($ppower / $rate * $total + 0.5);
$pintel = floor($pintel / $rate * $total + 0.5);
$leader = $leader + $pleader;
$power = $power + $ppower;
$intel = $intel + $pintel;
$age = 20 + ($pleader + $ppower + $pintel) * 2 + (rand() % 2);
// 아직 남았고 천재등록상태이면 특기 부여
if($genius == 1) {
$specage2 = $age;
$special2 = getSpecial2($connect, $leader, $power, $intel);
} else {
$specage2 = round((80 - $age)/3) + $age;
$special2 = 0;
}
//내특
$specage = round((80 - $age)/12) + $age;
$special = 0;
if($admin['scenario'] > 0) {
$specage2 = $age + 3;
$specage = $age + 3;
}
$turntime = getRandTurn($admin['turnterm']);
$lastconnect = date('Y-m-d H:i:s');
if($lastconnect >= $turntime) {
$turntime = addTurn($turntime, $admin['turnterm']);
}
//특회 전콘
if($admin['img'] >= 1 && $member['grade'] >= 1 && $member['picture'] != "" && $pic == 1) {
$face = $member['picture'];
$imgsvr = $member['imgsvr'];
} else {
$face = "default.jpg";
$imgsvr = 0;
}
//성격 랜덤시
if($character == 11) $character = rand()%10;
//상성 랜덤
$npcmatch = rand()%150 + 1;
########## 회원정보 테이블에 입력값을 등록한다. ##########
$db->insert('general', [
'owner' => $userID,
'name' => $name,
'picture' => $face,
'imgsvr' => $imgsvr,
'nation' => 0,
'city' => $city,
'troop' => 0,
'npcmatch' => $npcmatch,
'leader' => $leader,
'power' => $power,
'intel' => $intel,
'experience' => 0,
'dedication' => 0,
'gold' => 1000,
'rice' => 1000,
'crew' => 0,
'train' => 0,
'atmos' => 0,
'level' => 0,
'turntime' => $turntime,
'killturn' => 6,
'lastconnect' => $lastconnect,
'makelimit' => 0,
'age' => $age,
'startage' => $age,
'personal' => $character,
'specage' => $specage,
'special' => $special,
'specage2' => $specage2,
'special2' => $special2
]);
$me = $db->queryFirstRow("select no,name from general where owner= %i", $userID);
if($me['name'] == "") {
$r = rand() % 999 + 1;
$me['name'] = '장수-'.$r;
$db->query("update general set name=%s where owner=%i", $me['name'], $userID);
}
$cityname = getCity($connect, $city, "name");
if($genius == 1) {
$log[0] = "●>{$admin['month']}월:{$cityname['name']}>에서 {$me['name']}>(이)라는 기재가 천하에 이름을 알립니다.";
$log[1] = "●>{$admin['month']}월:".getGenSpecial($special2)."> 특기를 가진 천재>의 등장으로 온 천하가 떠들썩합니다.";
$history[0] = "●>{$admin['year']}년 {$admin['month']}월:【천재】>{$cityname['name']}>에 천재가 등장했습니다.";
pushHistory($history);
} else {
$log[0] = "●>{$admin['month']}월:{$cityname['name']}>에서 {$me['name']}>(이)라는 호걸이 천하에 이름을 알립니다.";
}
addHistory($me, "●>{$admin['year']}년 {$admin['month']}월:{$me['name']}>, {$cityname['name']}>에서 큰 뜻을 품다.");
$mylog[] = "●>삼국지 모의전투 PHP의 세계에 오신 것을 환영합니다 ^o^";
$mylog[] = "●>처음 하시는 경우에는 도움말>을 참고하시고,";
$mylog[] = "●>문의사항이 있으시면 게시판에 글을 남겨주시면 되겠네요~";
$mylog[] = "●>부디 즐거운 삼모전 되시길 바랍니다 ^^";
$mylog[] = "●>통솔 $pleader> 무력 $ppower> 지력 $pintel> 의 보너스를 받으셨습니다.";
$mylog[] = "●>연령은 $age>세로 시작합니다.";
if($genius == 1) {
$mylog[] = "●>축하합니다! 천재로 태어나 처음부터 ".getGenSpecial($special2)."> 특기를 가지게 됩니다!";
addHistory($me, "●>{$admin['year']}년 {$admin['month']}월:".getGenSpecial($special2)."> 특기를 가진 천재로 탄생.");
}
pushGenLog($me, $mylog);
pushAllLog($log);
$adminLog[0] = "가입 : {$name} // {$me['name']} // {$id} // ".getenv("REMOTE_ADDR");
pushAdminLog($adminLog);
MYDB_close($connect);
echo("");
//echo("");
echo 'index.php';//TODO:debug all and replace
}