From 081416475ec6cde659d0d2effb588301be6f6abd Mon Sep 17 00:00:00 2001 From: hide_d Date: Mon, 23 Mar 2020 02:11:00 +0900 Subject: [PATCH] =?UTF-8?q?dev=EC=97=90=EC=84=9C=20=EC=89=BD=EA=B2=8C=20?= =?UTF-8?q?=ED=99=95=EC=9D=B8=EA=B0=80=EB=8A=A5=ED=95=9C=20=EC=BD=94?= =?UTF-8?q?=EB=93=9C=20=EC=9D=B4=EC=A0=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/a_history.php | 32 +- hwe/b_myPage.php | 22 + hwe/b_troop.php | 54 +- hwe/c_die_immediately.php | 49 ++ hwe/c_vacation.php | 6 + hwe/css/common.css | 11 + hwe/d_setting/DB.orig.php | 2 +- hwe/func_process_chief.php | 48 +- hwe/func_time_event.php | 4 +- hwe/install.php | 95 ++++ hwe/j_autoreset.php | 3 +- hwe/j_install.php | 32 +- hwe/j_server_basic_info.php | 64 ++- hwe/j_troop.php | 165 ++++++ hwe/js/history.js | 31 ++ hwe/js/map/theme_miniche_b.js | 22 + hwe/js/map/theme_miniche_clean.js | 22 + hwe/js/map/theme_pokemon_v1.js | 20 + hwe/sammo/GameConstBase.php | 13 + hwe/sammo/ResetHelper.php | 8 +- hwe/sammo/Scenario.php | 2 +- hwe/scenario/.htaccess | 1 + hwe/scenario/map/miniche_b.php | 87 +++ hwe/scenario/map/miniche_clean.php | 87 +++ hwe/scenario/map/pokemon_v1.php | 36 ++ hwe/scenario/scenario_2.json | 15 + hwe/scenario/scenario_2210.json | 226 ++++++++ hwe/scenario/scenario_2220.json | 663 +++++++++++++++++++++++ hwe/scenario/scenario_901.json | 13 + hwe/templates/recruitCrewForm.php | 15 +- hwe/templates/tooltip.php | 11 +- i_entrance/j_server_get_admin_status.php | 2 +- js/admin_server.js | 28 +- js/entrance.js | 39 +- js/install.js | 21 +- 35 files changed, 1871 insertions(+), 78 deletions(-) create mode 100644 hwe/c_die_immediately.php create mode 100644 hwe/j_troop.php create mode 100644 hwe/js/history.js create mode 100644 hwe/js/map/theme_miniche_b.js create mode 100644 hwe/js/map/theme_miniche_clean.js create mode 100644 hwe/js/map/theme_pokemon_v1.js create mode 100644 hwe/scenario/.htaccess create mode 100644 hwe/scenario/map/miniche_b.php create mode 100644 hwe/scenario/map/miniche_clean.php create mode 100644 hwe/scenario/map/pokemon_v1.php create mode 100644 hwe/scenario/scenario_2.json create mode 100644 hwe/scenario/scenario_2210.json create mode 100644 hwe/scenario/scenario_2220.json create mode 100644 hwe/scenario/scenario_901.json diff --git a/hwe/a_history.php b/hwe/a_history.php index 7ca6d30d..c0c43f83 100644 --- a/hwe/a_history.php +++ b/hwe/a_history.php @@ -86,6 +86,8 @@ if ($month <= 0) { $month += 12; } +$history = $db->queryFirstRow('SELECT log,genlog,nation,power,gen,city FROM history WHERE server_id = %s AND year = %i AND month = %i', $serverID, $year, $month); + ?> @@ -101,12 +103,19 @@ if ($month <= 0) { - + - + @@ -116,22 +125,9 @@ if ($month <= 0) {
년월 선택 : - + + diff --git a/hwe/b_myPage.php b/hwe/b_myPage.php index 9264b9dc..fcb5ed4d 100644 --- a/hwe/b_myPage.php +++ b/hwe/b_myPage.php @@ -97,7 +97,21 @@ $me->applyDB($db); + @@ -125,10 +139,18 @@ $me->applyDB($db); name=btn style=background-color:;color:white;width:160px;height:30px;font-size:13px; value=설정저장>
설정저장은 이달중 회 남았습니다.

+ autorun_user['limit_minutes']??false)): ?> 휴 가 신 청


+ + + + 가오픈 기간 내 장수 삭제
+

+ + 개인용 CSS
diff --git a/hwe/b_troop.php b/hwe/b_troop.php index 6a5dace3..2c6ccad9 100644 --- a/hwe/b_troop.php +++ b/hwe/b_troop.php @@ -93,6 +93,48 @@ uasort($troops, function($lhs, $rhs){ + @@ -100,7 +142,7 @@ uasort($troops, function($lhs, $rhs){
부 대 편 성
-
+ @@ -114,9 +156,9 @@ uasort($troops, function($lhs, $rhs){ @@ -145,7 +187,7 @@ foreach ($troops as $troopNo=>$troop) { - + @@ -164,7 +206,7 @@ foreach ($troops as $troopNo=>$troop) {
- + - +
'>
");background-size:64px;'>  - "; $troop) {
- + diff --git a/hwe/c_die_immediately.php b/hwe/c_die_immediately.php new file mode 100644 index 00000000..c858889c --- /dev/null +++ b/hwe/c_die_immediately.php @@ -0,0 +1,49 @@ +queryFirstRow('SELECT no,name,name2,npc,lastrefresh FROM general WHERE owner=%i AND npc = 0', $userID); + +if(!$general){ + header('location:b_myPage.php'); + die(); +} + +increaseRefresh("장수 삭제", 1); +$gameStor->cacheValues(['turnterm', 'opentime', 'turntime', 'year', 'month']); + +if($gameStor->turntime <= $gameStor->opentime){ + //서버 가오픈시 할 수 있는 행동 + if(addTurn($general['lastrefresh'], $gameStor->turnterm, 2) <= TimeUtil::DatetimeNow()){ + $availableDieImmediately = true; + } +} + +if(!$availableDieImmediately){ + header('location:b_myPage.php'); + die(); +} + + +if(!$db->query('DELETE FROM general WHERE owner=%i AND npc=0', $userID)){ + trigger_error("올바르지 않은 삭제 프로세스 $userID", E_USER_WARNING); +} +$generalName = $general['name']; +$josaYi = JosaUtil::pick($generalName, '이'); +pushGeneralPublicRecord(["●{$gameStor->month}월:{$generalName}{$josaYi} 이 홀연히 모습을 감추었습니다"], $gameStor->year, $gameStor->month); + + + +$session->logoutGame(); +header('location:..'); \ No newline at end of file diff --git a/hwe/c_vacation.php b/hwe/c_vacation.php index f6efa0d4..8c498b0c 100644 --- a/hwe/c_vacation.php +++ b/hwe/c_vacation.php @@ -10,6 +10,12 @@ $userID = Session::getUserID(); $db = DB::db(); $gameStor = KVStorage::getStorage($db, 'game_env'); +$autorun_user = $gameStor->autorun_user; +if($autorun_user['limit_minutes']??false){ + //자동 턴인 경우에는 휴가 불가 + header('location:b_myPage.php', true, 303); +} + $killturn = $gameStor->killturn; $db->update('general', [ diff --git a/hwe/css/common.css b/hwe/css/common.css index ad82078f..8f5091be 100644 --- a/hwe/css/common.css +++ b/hwe/css/common.css @@ -192,10 +192,21 @@ div.bar_out div.bar_in{ font-family: '맑은 고딕'; } +.tooltip_copyable_info .tooltiptext{ + display: inline; + color: rgba(0,0,0,0); + font-size: 0; +} + .tooltiptext { display: none; } +.hidden_but_copyable{ + color: rgba(0,0,0,0); + font-size: 0; +} + .btn-group-xs > .btn, .btn-xs { padding : .25rem .4rem; font-size : .875rem; diff --git a/hwe/d_setting/DB.orig.php b/hwe/d_setting/DB.orig.php index bc53afa8..6ca56027 100644 --- a/hwe/d_setting/DB.orig.php +++ b/hwe/d_setting/DB.orig.php @@ -28,7 +28,7 @@ class DB{ self::$uDB = new \MeekroDB(self::$host,self::$user,self::$password,self::$dbName,self::$port,self::$encoding); self::$uDB->connect_options[MYSQLI_OPT_INT_AND_FLOAT_NATIVE] = true; - self::$uDB->error_handler= false; + self::$uDB->error_handler= function(){}; self::$uDB->throw_exception_on_error = true; self::$uDB->throw_exception_on_nonsql_error = true; } diff --git a/hwe/func_process_chief.php b/hwe/func_process_chief.php index ae671982..fd6dcdc8 100644 --- a/hwe/func_process_chief.php +++ b/hwe/func_process_chief.php @@ -602,7 +602,7 @@ function process_67(&$general) { $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); $destcity = MYDB_fetch_array($result); - $amount = $admin['develcost'] * 500 + 60000; // 7만~13만 + $amount = $admin['develcost'] * GameConst::$expandCityCostCoef + GameConst::$expandCityDefaultCost; // 7만~13만 $code = $nation["l{$general['level']}term"]; if($code%100 == 67) { @@ -655,9 +655,17 @@ function process_67(&$general) { MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); //수도 증축 - $query = "update city set upgrading=upgrading+1,level=level+1,pop2=pop2+100000,agri2=agri2+2000,comm2=comm2+2000,def2=def2+2000,wall2=wall2+2000,secu2=secu2+2000 where city='{$destcity['city']}'"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - + $db->update('city', [ + 'upgrading'=>$db->sqleval('upgrading+1'), + 'level'=>$db->sqleval('level+1'), + 'pop2'=>$db->sqleval('pop2 + %i', GameConst::$expandCityPopIncreaseAmount), + 'agri2'=>$db->sqleval('agri2 + %i', GameConst::$expandCityDevelIncreaseAmount), + 'comm2'=>$db->sqleval('comm2 + %i', GameConst::$expandCityDevelIncreaseAmount), + 'secu2'=>$db->sqleval('secu2 + %i', GameConst::$expandCityDevelIncreaseAmount), + 'def2'=>$db->sqleval('def2 + %i', GameConst::$expandCityWallIncreaseAmount), + 'wall2'=>$db->sqleval('wall2 + %i', GameConst::$expandCityWallIncreaseAmount), + ], 'city=%i', $destcity['city']); + //경험치, 공헌치 $query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'"; MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); @@ -696,7 +704,7 @@ function process_68(&$general) { $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); $destcity = MYDB_fetch_array($result); - $amount = $admin['develcost'] * 500 + 30000; // 4만~10만 + $amount = $admin['develcost'] * GameConst::$expandCityCostCoef + GameConst::$expandCityDefaultCost / 2; // 4만~10만 $code = $nation["l{$general['level']}term"]; if($code%100 == 68) { @@ -748,12 +756,12 @@ function process_68(&$general) { $query = "update nation set l{$general['level']}term='0',capset='1',gold=gold+'$amount',rice=rice+'$amount' where nation='{$general['nation']}'"; MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); - $pop = $destcity['pop'] - 100000; - $agri = $destcity['agri'] - 2000; - $comm = $destcity['comm'] - 2000; - $def = $destcity['def'] - 2000; - $wall = $destcity['wall'] - 2000; - $secu = $destcity['secu'] - 2000; + $pop = $destcity['pop'] - GameConst::$expandCityPopIncreaseAmount; + $agri = $destcity['agri'] - GameConst::$expandCityDevelIncreaseAmount; + $comm = $destcity['comm'] - GameConst::$expandCityDevelIncreaseAmount; + $def = $destcity['def'] - GameConst::$expandCityWallIncreaseAmount; + $wall = $destcity['wall'] - GameConst::$expandCityWallIncreaseAmount; + $secu = $destcity['secu'] - GameConst::$expandCityDevelIncreaseAmount; if($pop < 30000) { $pop = 30000; } if($agri < 0) { $agri = 0; } if($comm < 0) { $comm = 0; } @@ -761,8 +769,22 @@ function process_68(&$general) { if($wall < 0) { $wall = 0; } if($secu < 0) { $secu = 0; } //수도 감축 - $query = "update city set upgrading=upgrading-1,level=level-1,pop2=pop2-100000,agri2=agri2-2000,comm2=comm2-2000,def2=def2-2000,wall2=wall2-2000,secu2=secu2-2000,pop='$pop',agri='$agri',comm='$comm',def='$def',wall='$wall',secu='$secu' where city='{$destcity['city']}'"; - MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); + $db->update('city', [ + 'upgrading'=>$db->sqleval('upgrading-1'), + 'level'=>$db->sqleval('level-1'), + 'pop2'=>$db->sqleval('pop2 - %i', GameConst::$expandCityPopIncreaseAmount), + 'agri2'=>$db->sqleval('agri2 - %i', GameConst::$expandCityDevelIncreaseAmount), + 'comm2'=>$db->sqleval('comm2 - %i', GameConst::$expandCityDevelIncreaseAmount), + 'secu2'=>$db->sqleval('secu2 - %i', GameConst::$expandCityDevelIncreaseAmount), + 'def2'=>$db->sqleval('def2 - %i', GameConst::$expandCityWallIncreaseAmount), + 'wall2'=>$db->sqleval('wall2 - %i', GameConst::$expandCityWallIncreaseAmount), + 'pop'=>$pop, + 'agri'=>$agri, + 'comm'=>$comm, + 'secu'=>$secu, + 'def'=>$def, + 'wall'=>$wall + ], 'city=%i', $destcity['city']); //경험치, 공헌치 $query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'"; diff --git a/hwe/func_time_event.php b/hwe/func_time_event.php index b3a0179a..cc006094 100644 --- a/hwe/func_time_event.php +++ b/hwe/func_time_event.php @@ -138,10 +138,10 @@ function popIncrease() { $updateVar = []; if($popRatio >= 0){ - $updateVar['pop'] = $db->sqleval('least(pop2, %i + pop * (1 + %d * (1 + secu / secu2 / 10)))', 5000, $popRatio); + $updateVar['pop'] = $db->sqleval('least(pop2, %i + pop * (1 + %d * (1 + secu / secu2 / 10)))', GameConst::$basePopIncreaseAmount, $popRatio); } else{ - $updateVar['pop'] = $db->sqleval('least(pop2, %i + pop * (1 + %d * (1 - secu / secu2 / 10)))', 5000, $popRatio); + $updateVar['pop'] = $db->sqleval('least(pop2, %i + pop * (1 + %d * (1 - secu / secu2 / 10)))', GameConst::$basePopIncreaseAmount, $popRatio); } $genericRatio = (20 - $taxRate) / 200; // 20일때 0% 0일때 10% 100일때 -40% diff --git a/hwe/install.php b/hwe/install.php index b4edf004..d9c84da3 100644 --- a/hwe/install.php +++ b/hwe/install.php @@ -152,6 +152,101 @@ if($session->userGrade < 5 && !$allowReset){ +
+ +
+
+
+ + + + + + +
+
+ 유효 시간 +
+ +
+
+
+ + +
diff --git a/hwe/j_autoreset.php b/hwe/j_autoreset.php index d1f3b872..731d3481 100644 --- a/hwe/j_autoreset.php +++ b/hwe/j_autoreset.php @@ -89,7 +89,8 @@ $result = ResetHelper::buildScenario( $options['show_img_level'], $options['tournament_trig'], $options['join_mode'], - $options['starttime'] + $options['starttime'], + $options['autorun_user']?:null ); $result['affected']=1; diff --git a/hwe/j_install.php b/hwe/j_install.php index 5b647767..90b23395 100644 --- a/hwe/j_install.php +++ b/hwe/j_install.php @@ -57,7 +57,8 @@ $v->rule('required', [ 'extend', 'join_mode', 'npcmode', - 'show_img_level' + 'show_img_level', + 'autorun_user_minutes' ])->rule('integer', [ 'turnterm', 'sync', @@ -67,6 +68,7 @@ $v->rule('required', [ 'npcmode', 'show_img_level', 'tournament_trig', + 'autorun_user_minutes' ])->rule('in', 'join_mode', ['onlyRandom', 'full']); if(!$v->validate()){ Json::die([ @@ -108,6 +110,30 @@ $npcmode = (int)$_POST['npcmode']; $show_img_level = (int)$_POST['show_img_level']; $tournament_trig = (int)$_POST['tournament_trig']; $join_mode = $_POST['join_mode']; +$autorun_user_minutes = (int)$_POST['autorun_user_minutes']; +$autorun_user_options = []; +foreach(Util::getReq('autorun_user', 'array_string', []) as $autorun_option){ + $autorun_user_options[$autorun_option] = 1; +} + +if($autorun_user_minutes > 0 && !$autorun_user_options){ + Json::die([ + 'result'=>false, + 'reason'=>'적어도 자동 행동 중 하나는 선택을 해야합니다.' + ]); +} + +if($autorun_user_minutes < 0){ + Json::die([ + 'result'=>false, + 'reason'=>'자동 행동 기한이 0보다 작을 수 없습니다.' + ]); +} + +$autorun_user = $autorun_user_minutes?[ + 'limit_minutes'=>$autorun_user_minutes, + 'options'=>$autorun_user_options +]:null; if($reserve_open){ $reserve_open = new \DateTime($reserve_open); @@ -143,6 +169,7 @@ if($reserve_open){ 'gameConf'=>$scenarioObj->getGameConf(), 'join_mode'=>$join_mode, 'starttime'=>$open_date, + 'autorun_user'=>$autorun_user ]; @@ -175,5 +202,6 @@ Json::die(ResetHelper::buildScenario( $show_img_level, $tournament_trig, $join_mode, - TimeUtil::now() + TimeUtil::now(), + $autorun_user )); \ No newline at end of file diff --git a/hwe/j_server_basic_info.php b/hwe/j_server_basic_info.php index 75d2e9a2..dce05aad 100644 --- a/hwe/j_server_basic_info.php +++ b/hwe/j_server_basic_info.php @@ -3,6 +3,41 @@ namespace sammo; include "lib.php"; +$templates = new \League\Plates\Engine(__dir__.'/templates'); + +function getAutorunInfo($autorunOption){ + global $templates; + $auto_info = []; + foreach($autorunOption['options'] as $auto_option => $value){ + assert($value); + switch($auto_option){ + case 'develop': $auto_info['내정'] = '내정'; break; + case 'warp': $auto_info['순간이동'] = '순간이동'; break; + case 'recruit': $auto_info['징병'] = $auto_info['징병']??'징병'; break; + case 'recruit_high': $auto_info['징병'] = '모병'; break; + case 'train': $auto_info['훈사'] = '훈련/사기진작'; break; + case 'battle': $auto_info['출병'] = '출병'; break; + } + } + $limit = Util::toInt($autorunOption['limit_minutes']); + if($limit >= 43200){ + $auto_info['제한'] = '항상 유효'; + } + else if($limit % 60 == 0){ + $auto_info['제한'] = ($limit/60).'시간 유효'; + } + else{ + $auto_info['제한'] = ($limit).'분 유효'; + } + $auto_info = join(', ', array_values($auto_info)); + return $templates->render('tooltip', [ + 'text'=>'자율행동', + 'info'=>$auto_info, + 'style'=>'text-decoration:underline', + 'copyable_info'=>true + ]); +} + $session = Session::requireLogin([ 'game'=>null, 'me'=>null @@ -38,6 +73,10 @@ if(file_exists(__dir__.'/.htaccess')){ $otherTextInfo[] = '랜덤 임관 전용'; } + if($options['autorun_user']['limit_minutes']??false){ + $otherTextInfo[] = getAutorunInfo($options['autorun_user']); + } + if(!$otherTextInfo){ $otherTextInfo = '표준'; } @@ -64,7 +103,7 @@ if(file_exists(__dir__.'/.htaccess')){ //TODO: 천통시에도 예약 오픈 알림이 필요..? -$admin = $gameStor->getValues(['isunited', 'npcmode', 'year', 'month', 'scenario', 'scenario_text', 'maxgeneral', 'turnterm', 'opentime', 'turntime']); +$admin = $gameStor->getValues(['isunited', 'npcmode', 'year', 'month', 'scenario', 'scenario_text', 'maxgeneral', 'turnterm', 'opentime', 'turntime', 'join_mode', 'fiction', 'autorun_user']); $admin['maxUserCnt'] = $admin['maxgeneral']; $admin['npcMode'] = $admin['npcmode']; $admin['turnTerm'] = $admin['turnterm']; @@ -85,6 +124,29 @@ $admin['userCnt'] = $genCnt; $admin['npcCnt'] = $npcCnt; $admin['nationCnt'] = $nationCnt; +$admin['npcMode'] = $admin['npcMode']?'가능':'불가'; +$admin['fictionMode'] = $admin['fiction']?'가상':'사실'; + +$otherTextInfo = []; + +if($admin['join_mode'] == 'onlyRandom'){ + $otherTextInfo[] = '랜덤 임관 전용'; +} + +if($admin['autorun_user']['limit_minutes']??false){ + $otherTextInfo[] = getAutorunInfo($admin['autorun_user']); +} + +if(!$otherTextInfo){ + $otherTextInfo = '표준'; +} +else{ + $otherTextInfo = join(', ', $otherTextInfo); +} + + +$admin['otherTextInfo'] = $otherTextInfo; +$admin['defaultStatTotal'] = GameConst::$defaultStatTotal; $me = []; $general = $db->queryFirstRow('SELECT name, picture, imgsvr from general where owner=%i', $userID); diff --git a/hwe/j_troop.php b/hwe/j_troop.php new file mode 100644 index 00000000..431f228c --- /dev/null +++ b/hwe/j_troop.php @@ -0,0 +1,165 @@ +setReadOnly(); +$userID = $session::getUserID(); + +$db = DB::db(); + +$me = $db->queryFirstRow('SELECT `no`, name, nation, troop FROM general WHERE `owner`=%i', $userID); + + + +if($action == '부대창설'){ + $name = trim($name); + if(!$name){ + Json::die([ + 'result'=>false, + 'reason'=>'부대 이름이 없습니다.' + ]); + } + if($me['troop'] != 0){ + Json::die([ + 'result'=>false, + 'reason'=>'이미 부대에 가입해있습니다.' + ]); + } + $db->insert('troop',[ + 'name'=>$name, + 'nation'=>$me['nation'], + 'no'=>$me['no'] + ]); + $troopID = $db->insertId(); + + $db->update('general', [ + 'troop'=>$troopID + ], 'no=%i',$me['no']); + + Json::die([ + 'result'=>true, + 'reason'=>'success' + ]); +} + +if($action == '부대변경'){ + $name = trim($name); + if(!$name){ + Json::die([ + 'result'=>false, + 'reason'=>'부대 이름이 없습니다.' + ]); + } + + $db->update('troop', [ + 'name'=>$name + ], 'no=%i',$me['no']); + + if($db->affectedRows() == 0){ + Json::die([ + 'result'=>false, + 'reason'=>'부대장이 아닙니다.' + ]); + } + + Json::die([ + 'result'=>true, + 'reason'=>'success' + ]); +} + +if($action == '부대추방'){ + if (!$gen){ + Json::die([ + 'result'=>false, + 'reason'=>'장수를 지정해야 합니다.' + ]); + } + + $db->update('general', [ + 'troop'=>0 + ], 'no=%i AND troop=(SELECT troop FROM troop WHERE no = %i)', $gen, $me['no']); + + if($db->affectedRows() == 0){ + Json::die([ + 'result'=>false, + 'reason'=>'부대장이 아니거나, 장수를 잘못 지정했습니다.' + ]); + } + + Json::die([ + 'result'=>true, + 'reason'=>'success' + ]); +} + +if ($action == '부대가입') { + if(!$troop){ + Json::die([ + 'result'=>false, + 'reason'=>'부대를 지정해야 합니다.' + ]); + } + + $troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $troop)?:0; + $troopLeaderNation = $db->queryFirstField('SELECT `nation` FROM `general` WHERE `no`=%i AND `nation`=%i', $troopLeader, $me['nation']); + + if (!$troopLeaderNation) { + Json::die([ + 'result'=>false, + 'reason'=>'올바른 부대장이 아닙니다.' + ]); + } + + $db->update('general', [ + 'troop'=>$troop + ], 'no=%i', $me['no']); + + Json::die([ + 'result'=>true, + 'reason'=>'success' + ]); +} + +if($action == "부대탈퇴") { + + if($me['troop'] == 0){ + Json::die([ + 'result'=>false, + 'reason'=>'부대에 속해있지 않습니다.' + ]); + } + $troopLeader = $db->queryFirstField('SELECT `no` FROM troop WHERE troop=%i', $me['troop']); + + //부대장일 경우 + if($troopLeader == $me['no']) { + // 모두 탈퇴 + $db->update('general', [ + 'troop'=>0 + ], 'troop=%i',$me['troop']); + // 부대 삭제 + $db->delete('troop', 'troop=%i', $me['troop']); + } else { + $db->update('general', [ + 'troop'=>0 + ], 'no=%i', $me['no']); + } + + Json::die([ + 'result'=>true, + 'reason'=>'success' + ]); +} + +Json::die([ + 'result'=>false, + 'reason'=>'올바르지 않은 명령입니다.' +]); \ No newline at end of file diff --git a/hwe/js/history.js b/hwe/js/history.js new file mode 100644 index 00000000..6f1b6799 --- /dev/null +++ b/hwe/js/history.js @@ -0,0 +1,31 @@ +jQuery(function($){ + + +var currYear = startYear; +var currMonth = startMonth; + +var $yearMonth = $('#yearmonth'); +var $elements = $(); + +var endDate = lastYear * 12 + lastMonth - 1; +var currDate = startYear * 12 + startMonth - 1; +while(currDate <= endDate){ + + var target = currYear*100 + currMonth; + var sel = ''; + if(currYear == selectYear && currMonth == selectMonth){ + sel = 'selected="selected"'; + } + var option = $(''.format(target, sel, currYear, currMonth)); + $elements = $elements.add(option); + + currMonth += 1; + if(currMonth > 12){ + currYear += 1; + currMonth -= 12; + } + currDate += 1; +} +$yearMonth.empty(); +$yearMonth.append($elements); +}); \ No newline at end of file diff --git a/hwe/js/map/theme_miniche_b.js b/hwe/js/map/theme_miniche_b.js new file mode 100644 index 00000000..3865390f --- /dev/null +++ b/hwe/js/map/theme_miniche_b.js @@ -0,0 +1,22 @@ + + +function getCityPosition(){ + return {"1":["낙양",285,176],"2":["성도",30,285],"3":["건업",507,303],"4":["업",355,135],"5":["장안",162,173],"6":["허창",325,218],"7":["양양",259,295],"8":["시상",357,357],"9":["수춘",385,270],"10":["한중",130,218],"11":["남피",410,93],"12":["위례",618,140],"13":["북평",442,53],"14":["강릉",245,330],"15":["완",275,235],"16":["장사",258,373],"17":["오",515,340],"18":["하비",460,240],"19":["복양",412,170],"20":["웅진",615,205],"21":["강주",75,305],"22":["무도",55,191],"23":["국내",596,48],"24":["진류",370,175],"25":["계양",242,408],"26":["계림",660,195],"27":["계",386,55],"28":["무위",56,76],"29":["제남",402,132],"30":["남해",270,474],"31":["덕양",73,276],"32":["하내",295,140],"33":["상용",190,220],"34":["초",375,225],"35":["운남",45,405],"36":["대",450,470],"37":["하동",240,140],"38":["무릉",195,352],"39":["교지",136,480],"40":["단양",440,350],"41":["영안",116,282],"42":["북해",470,150],"43":["합비",420,294],"44":["이릉",188,275],"45":["건녕",85,390],"46":["강하",320,299],"47":["진양",310,75],"48":["평원",445,110],"49":["회계",485,390],"50":["천수",76,140],"51":["평양",606,97],"52":["요동",549,26],"53":["거록",355,95],"54":["여강",392,325],"55":["패",425,210],"56":["자동",62,240],"57":["광릉",478,270],"58":["장가",136,395],"59":["영릉",197,390],"60":["월수",39,349],"61":["건안",440,420],"62":["신야",245,255],"63":["탐라",614,259],"64":["상동",285,405],"65":["안정",135,130],"66":["여남",335,255],"67":["홍농",220,170],"68":["주제",93,357],"69":["남만",90,454],"70":["산월",373,447],"71":["오환",628,19],"72":["강",154,70],"73":["왜",681,292],"74":["흉노",227,79],"75":["저",24,123],"76":["호로",317,182],"77":["오장원",104,175],"78":["적벽",335,330]}; +} + +function formatCityInfo(city) { + + + var regionMap = {"하북":1,"1":"하북","중원":2,"2":"중원","서북":3,"3":"서북","서촉":4,"4":"서촉","남중":5,"5":"남중","초":6,"6":"초","오월":7,"7":"오월","동이":8,"8":"동이"}; + + var levelMap = {"수":1,"1":"수","진":2,"2":"진","관":3,"3":"관","이":4,"4":"이","소":5,"5":"소","중":6,"6":"중","대":7,"7":"대","특":8,"8":"특"}; + + var region_str = regionMap[city.region]; + var level_str = levelMap[city.level]; + + city.text = '【' + region_str + '|' + level_str + '】' + city.name; + city.region_str = region_str; + city.level_str = level_str; + + return city; +} \ No newline at end of file diff --git a/hwe/js/map/theme_miniche_clean.js b/hwe/js/map/theme_miniche_clean.js new file mode 100644 index 00000000..3865390f --- /dev/null +++ b/hwe/js/map/theme_miniche_clean.js @@ -0,0 +1,22 @@ + + +function getCityPosition(){ + return {"1":["낙양",285,176],"2":["성도",30,285],"3":["건업",507,303],"4":["업",355,135],"5":["장안",162,173],"6":["허창",325,218],"7":["양양",259,295],"8":["시상",357,357],"9":["수춘",385,270],"10":["한중",130,218],"11":["남피",410,93],"12":["위례",618,140],"13":["북평",442,53],"14":["강릉",245,330],"15":["완",275,235],"16":["장사",258,373],"17":["오",515,340],"18":["하비",460,240],"19":["복양",412,170],"20":["웅진",615,205],"21":["강주",75,305],"22":["무도",55,191],"23":["국내",596,48],"24":["진류",370,175],"25":["계양",242,408],"26":["계림",660,195],"27":["계",386,55],"28":["무위",56,76],"29":["제남",402,132],"30":["남해",270,474],"31":["덕양",73,276],"32":["하내",295,140],"33":["상용",190,220],"34":["초",375,225],"35":["운남",45,405],"36":["대",450,470],"37":["하동",240,140],"38":["무릉",195,352],"39":["교지",136,480],"40":["단양",440,350],"41":["영안",116,282],"42":["북해",470,150],"43":["합비",420,294],"44":["이릉",188,275],"45":["건녕",85,390],"46":["강하",320,299],"47":["진양",310,75],"48":["평원",445,110],"49":["회계",485,390],"50":["천수",76,140],"51":["평양",606,97],"52":["요동",549,26],"53":["거록",355,95],"54":["여강",392,325],"55":["패",425,210],"56":["자동",62,240],"57":["광릉",478,270],"58":["장가",136,395],"59":["영릉",197,390],"60":["월수",39,349],"61":["건안",440,420],"62":["신야",245,255],"63":["탐라",614,259],"64":["상동",285,405],"65":["안정",135,130],"66":["여남",335,255],"67":["홍농",220,170],"68":["주제",93,357],"69":["남만",90,454],"70":["산월",373,447],"71":["오환",628,19],"72":["강",154,70],"73":["왜",681,292],"74":["흉노",227,79],"75":["저",24,123],"76":["호로",317,182],"77":["오장원",104,175],"78":["적벽",335,330]}; +} + +function formatCityInfo(city) { + + + var regionMap = {"하북":1,"1":"하북","중원":2,"2":"중원","서북":3,"3":"서북","서촉":4,"4":"서촉","남중":5,"5":"남중","초":6,"6":"초","오월":7,"7":"오월","동이":8,"8":"동이"}; + + var levelMap = {"수":1,"1":"수","진":2,"2":"진","관":3,"3":"관","이":4,"4":"이","소":5,"5":"소","중":6,"6":"중","대":7,"7":"대","특":8,"8":"특"}; + + var region_str = regionMap[city.region]; + var level_str = levelMap[city.level]; + + city.text = '【' + region_str + '|' + level_str + '】' + city.name; + city.region_str = region_str; + city.level_str = level_str; + + return city; +} \ No newline at end of file diff --git a/hwe/js/map/theme_pokemon_v1.js b/hwe/js/map/theme_pokemon_v1.js new file mode 100644 index 00000000..84eddcbd --- /dev/null +++ b/hwe/js/map/theme_pokemon_v1.js @@ -0,0 +1,20 @@ +function getCityPosition(){ + return {"1":["태초마을",169,321],"2":["상록시티",169,231],"3":["회색시티",174,104],"4":["달맞이산",297,94],"5":["블루시티",452,92],"6":["갈색시티",451,278],"7":["보라타운",627,180],"8":["무지개시티",343,180],"9":["연분홍시티",357,377],"10":["노랑시티",451,180],"11":["홍련마을",169,454],"12":["챔피언로드(입구)",90,231],"13":["챔피언로드(동굴)",90,180],"14":["석영고원",90,29],"15":["사이클링로드(입구)",252,180],"16":["사이클링로드(출구)",252,377],"17":["관동15로",451,377],"18":["무인발전소",627,94],"19":["IC",627,278],"20":["관동13로",627,344],"21":["블루시티동굴",451,32],"22":["이수재의집",572,32],"23":["쌍둥이섬",263,454]}; +} + +function formatCityInfo(city) { + + + var regionMap = {"관동 지방":1,"1":"관동 지방"}; + + var levelMap = {"수":1,"1":"수","진":2,"2":"진","관":3,"3":"관","이":4,"4":"이","소":5,"5":"소","중":6,"6":"중","대":7,"7":"대","특":8,"8":"특"}; + + var region_str = regionMap[city.region]; + var level_str = levelMap[city.level]; + + city.text = '【' + region_str + '|' + level_str + '】' + city.name; + city.region_str = region_str; + city.level_str = level_str; + + return city; +} \ No newline at end of file diff --git a/hwe/sammo/GameConstBase.php b/hwe/sammo/GameConstBase.php index a5195d4d..ae3b2964 100644 --- a/hwe/sammo/GameConstBase.php +++ b/hwe/sammo/GameConstBase.php @@ -78,6 +78,19 @@ class GameConstBase /** @var int 최대 기술 레벨 */ public static $maxTechLevel = 12; + /** @var int 최소 인구 증가량 */ + public static $basePopIncreaseAmount = 5000; + /** @var int 증축시 인구 증가량 */ + public static $expandCityPopIncreaseAmount = 100000; + /** @var int 증축시 내정 증가량 */ + public static $expandCityDevelIncreaseAmount = 2000; + /** @var int 증축시 성벽 증가량 */ + public static $expandCityWallIncreaseAmount = 2000; + /** @var int 증축시 최소 비용 */ + public static $expandCityDefaultCost = 60000; + /** @var int 증축시 비용 계수 */ + public static $expandCityCostCoef = 500; + /** @var int 초기 제한시 장수 제한 */ public static $initialNationGenLimitForRandInit = 3; diff --git a/hwe/sammo/ResetHelper.php b/hwe/sammo/ResetHelper.php index 845522ff..f3316fb2 100644 --- a/hwe/sammo/ResetHelper.php +++ b/hwe/sammo/ResetHelper.php @@ -145,7 +145,8 @@ class ResetHelper{ int $show_img_level, int $tournament_trig, string $join_mode, - string $turntime + string $turntime, + ?array $autorun_user ):array{ //FIXME: 분리할 것 if(120 % $turnterm != 0){ @@ -239,7 +240,7 @@ class ResetHelper{ 'msg'=>'공지사항',//TODO:공지사항 'maxgeneral'=>GameConst::$defaultMaxGeneral, 'maxnation'=>GameConst::$defaultMaxNation, - 'conlimit'=>300, + 'conlimit'=>30000, 'gold_rate'=>100, 'rice_rate'=>100, 'develcost'=>$develcost, @@ -256,8 +257,7 @@ class ResetHelper{ 'fiction'=>$fiction, 'tnmt_trig'=>$tournament_trig, 'prev_winner'=>$prevWinner, - 'tournament'=>0, - 'server_cnt'=>$db->queryFirstField('SELECT count(*) FROM ng_games') + 'autorun_user'=>$autorun_user ]; foreach(RootDB::db()->query('SELECT `no`, `name`, `picture`, `imgsvr` FROM member WHERE grade >= 5') as $admin){ diff --git a/hwe/sammo/Scenario.php b/hwe/sammo/Scenario.php index 9c8b5047..115d9f73 100644 --- a/hwe/sammo/Scenario.php +++ b/hwe/sammo/Scenario.php @@ -354,7 +354,7 @@ class Scenario{ 'npc_cnt'=>count($this->getNPC()), 'npcEx_cnt'=>count($this->getNPCex()), 'npcNeutral_cnt'=>count($this->getNPCneutral()), - 'nation'=>array_map(function($nation) use ($nationGeneralCnt, $nationGeneralExCnt){ + 'nation'=>array_map(function($nation) use ($nationGeneralCnt, $nationGeneralExCnt, $nationGeneralNeutralCnt){ $brief = $nation->getBrief(); $brief['generals'] = Util::array_get($nationGeneralCnt[$nation->getID()], 0); $brief['generalsEx'] = Util::array_get($nationGeneralExCnt[$nation->getID()], 0); diff --git a/hwe/scenario/.htaccess b/hwe/scenario/.htaccess new file mode 100644 index 00000000..698196ae --- /dev/null +++ b/hwe/scenario/.htaccess @@ -0,0 +1 @@ +Deny from all \ No newline at end of file diff --git a/hwe/scenario/map/miniche_b.php b/hwe/scenario/map/miniche_b.php new file mode 100644 index 00000000..b299bd5c --- /dev/null +++ b/hwe/scenario/map/miniche_b.php @@ -0,0 +1,87 @@ +1,1=>'관동 지방', + ]; + + protected static $initCity = [ + //id, 도시, 규모, 인구, 농, 상, 치, 성, 수,(x100)지역, x, y, 연결도시 + [ 1 , "태초마을", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 169 , 321 , ["상록시티", "홍련마을"]], + [ 2 , "상록시티", "소", 9000, 60, 60, 40, 60, 60, "관동 지방", 169 , 231 , ["태초마을", "회색시티", "챔피언로드(입구)"]], + [ 3 , "회색시티", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 174 , 104 , ["상록시티", "달맞이산"]], + [ 4 , "달맞이산", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 297 , 94 , ["회색시티", "블루시티"]], + [ 5 , "블루시티", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 452 , 92 , ["달맞이산", "노랑시티", "무인발전소", "블루시티동굴"]], + [ 6 , "갈색시티", "대",15000,100,100, 80,100,100, "관동 지방", 451 , 278 , ["IC", "노랑시티"]], + [ 7 , "보라타운", "소",12000, 60, 60, 40, 60, 60, "관동 지방", 627 , 180 , ["IC", "노랑시티", "무인발전소"]], + [ 8 , "무지개시티", "특",18000,120,120,100,120,120, "관동 지방", 343 , 180 , ["노랑시티", "사이클링로드(입구)"]], + [ 9 , "연분홍시티", "특",18000,120,120,100,120,120, "관동 지방", 357 , 377 , ["사이클링로드(출구)", "관동15로", "쌍둥이섬"]], + [ 10 , "노랑시티", "특",18000,120,120,100,120,120, "관동 지방", 451 , 180 , ["보라타운", "무지개시티", "블루시티", "갈색시티"]], + [ 11 , "홍련마을", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 169 , 454 , ["태초마을", "쌍둥이섬"]], + [ 12 , "챔피언로드(입구)", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 90 , 231 , ["상록시티", "챔피언로드(동굴)"]], + [ 13 , "챔피언로드(동굴)", "대",15000,100,100, 80,100,100, "관동 지방", 90 , 180 , ["석영고원", "챔피언로드(입구)"]], + [ 14 , "석영고원", "특",18000,120,120,100,120,120, "관동 지방", 90 , 29 , ["챔피언로드(동굴)"]], + [ 15 , "사이클링로드(입구)", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 252 , 180 , ["무지개시티", "사이클링로드(출구)"]], + [ 16 , "사이클링로드(출구)", "대",15000,100,100, 80,100,100, "관동 지방", 252 , 377 , ["사이클링로드(입구)", "연분홍시티"]], + [ 17 , "관동15로", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 451 , 377 , ["연분홍시티", "관동13로"]], + [ 18 , "무인발전소", "대",15000,100,100, 80,100,100, "관동 지방", 627 , 94 , ["보라타운", "블루시티"]], + [ 19 , "IC", "소", 9000, 60, 60, 40, 60, 60, "관동 지방", 627 , 278 , ["갈색시티", "보라타운", "관동13로"]], + [ 20 , "관동13로", "소", 9000, 60, 60, 40, 60, 60, "관동 지방", 627 , 344 , ["관동15로", "IC"]], + [ 21 , "블루시티동굴", "중",12000, 80, 80, 60, 80, 80, "관동 지방", 451 , 32 , ["블루시티", "이수재의집"]], + [ 22 , "이수재의집", "대",15000,100,100, 80,100,100, "관동 지방", 572 , 32 , ["블루시티동굴"]], + [ 23 , "쌍둥이섬", "소", 9000, 60, 60, 40, 60, 60, "관동 지방", 263 , 454 , ["연분홍시티", "홍련마을"]], + ]; +} \ No newline at end of file diff --git a/hwe/scenario/scenario_2.json b/hwe/scenario/scenario_2.json new file mode 100644 index 00000000..7b4b5156 --- /dev/null +++ b/hwe/scenario/scenario_2.json @@ -0,0 +1,15 @@ +{ + "title":"【공백지】 소형β", + "startYear":180, + "map":{ + "mapName":"miniche_b" + }, + "history":[ + ], + "const": { + "expandCityPopIncreaseAmount": 80000, + "expandCityDevelIncreaseAmount": 1350, + "expandCityWallIncreaseAmount": 1600, + "defaultMaxGeneral":300 + } +} \ No newline at end of file diff --git a/hwe/scenario/scenario_2210.json b/hwe/scenario/scenario_2210.json new file mode 100644 index 00000000..1a57ab8e --- /dev/null +++ b/hwe/scenario/scenario_2210.json @@ -0,0 +1,226 @@ +{ + "title": "【가상모드21】 Poke-관동지방", + "startYear": 1993, + "history": [ + "●1996년 1월:【PoKe-관동】", + "●1996년 1월:【포켓몬vs트레이너! 포켓몬이 될것인가 트레이너가 될것인가】" + ], + "stat": { + "total": 240, + "min": 40, + "max": 110, + "npcMax": 90, + "chiefMin": 65 + }, + "iconPath": "포켓몬스터", + "fiction": 1, + "nation":[ + + ], + "map": { + "mapName": "pokemon_v1", + "unitSet": "basic" + }, + "const": { + "basePopIncreaseAmount": 15000, + "expandCityPopIncreaseAmount": 300000 + }, + "diplomacy":[], + "general":[ + [0, "이상해씨", null, 0, null, 45, 49, 49, 0, 1973, 2100, null, null], + [0, "이상해풀", null, 0, null, 60, 62, 63, 0, 1973, 2100, null, null], + [0, "이상해꽃", null, 0, null, 80, 82, 83, 0, 1973, 2100, null, null], + [0, "파이리", null, 0, null, 39, 52, 43, 0, 1973, 2100, null, null], + [0, "리자드", null, 0, null, 58, 64, 58, 0, 1973, 2100, null, null], + [0, "리자몽", null, 0, null, 78, 84, 78, 0, 1973, 2100, null, null], + [0, "꼬부기", null, 0, null, 44, 48, 65, 0, 1973, 2100, null, null], + [0, "어니부기", null, 0, null, 59, 63, 80, 0, 1973, 2100, null, null], + [0, "거북왕", null, 0, null, 79, 83, 100, 0, 1973, 2100, null, null], + [0, "캐터피", null, 0, null, 45, 30, 35, 0, 1973, 2100, null, null], + [0, "단데기", null, 0, null, 50, 40, 55, 0, 1973, 2100, null, null], + [0, "버터플", null, 0, null, 60, 45, 60, 0, 1973, 2100, null, null], + [0, "뿔충이", null, 0, null, 40, 35, 30, 0, 1973, 2100, null, null], + [0, "딱충이", null, 0, null, 45, 25, 50, 0, 1973, 2100, null, null], + [0, "독침붕", null, 0, null, 65, 85, 40, 0, 1973, 2100, null, null], + [0, "구구", null, 0, null, 40, 45, 40, 0, 1973, 2100, null, null], + [0, "피죤", null, 0, null, 63, 60, 55, 0, 1973, 2100, null, null], + [0, "피죤투", null, 0, null, 83, 80, 75, 0, 1973, 2100, null, null], + [0, "꼬렛", null, 0, null, 30, 56, 35, 0, 1973, 2100, null, null], + [0, "레트라", null, 0, null, 55, 81, 60, 0, 1973, 2100, null, null], + [0, "깨비참", null, 0, null, 40, 60, 30, 0, 1973, 2100, null, null], + [0, "깨비드릴조", null, 0, null, 65, 90, 65, 0, 1973, 2100, null, null], + [0, "아보", null, 0, null, 35, 60, 44, 0, 1973, 2100, null, null], + [0, "아보크", null, 0, null, 60, 85, 69, 0, 1973, 2100, null, null], + [0, "피카츄", null, 0, null, 35, 55, 40, 0, 1973, 2100, null, null], + [0, "라이츄", null, 0, null, 60, 90, 55, 0, 1973, 2100, null, null], + [0, "모래두지", null, 0, null, 50, 75, 85, 0, 1973, 2100, null, null], + [0, "고지", null, 0, null, 75, 100, 110, 0, 1973, 2100, null, null], + [0, "니드런♀", null, 0, null, 55, 47, 52, 0, 1973, 2100, null, null], + [0, "니드리나", null, 0, null, 70, 62, 67, 0, 1973, 2100, null, null], + [0, "니드퀸", null, 0, null, 90, 92, 87, 0, 1973, 2100, null, null], + [0, "니드런♂", null, 0, null, 46, 57, 40, 0, 1973, 2100, null, null], + [0, "니드리노", null, 0, null, 61, 72, 57, 0, 1973, 2100, null, null], + [0, "니드킹", null, 0, null, 81, 102, 77, 0, 1973, 2100, null, null], + [0, "삐삐", null, 0, null, 70, 45, 48, 0, 1973, 2100, null, null], + [0, "픽시", null, 0, null, 95, 70, 73, 0, 1973, 2100, null, null], + [0, "식스테일", null, 0, null, 38, 41, 40, 0, 1973, 2100, null, null], + [0, "나인테일", null, 0, null, 73, 76, 75, 0, 1973, 2100, null, null], + [0, "푸린", null, 0, null, 115, 45, 20, 0, 1973, 2100, null, null], + [0, "푸크린", null, 0, null, 140, 70, 45, 0, 1973, 2100, null, null], + [0, "주뱃", null, 0, null, 40, 45, 35, 0, 1973, 2100, null, null], + [0, "골뱃", null, 0, null, 75, 80, 70, 0, 1973, 2100, null, null], + [0, "뚜벅쵸", null, 0, null, 45, 50, 55, 0, 1973, 2100, null, null], + [0, "냄새꼬", null, 0, null, 60, 65, 70, 0, 1973, 2100, null, null], + [0, "라플레시아", null, 0, null, 75, 80, 85, 0, 1973, 2100, null, null], + [0, "파라스", null, 0, null, 35, 70, 55, 0, 1973, 2100, null, null], + [0, "파라섹트", null, 0, null, 60, 95, 80, 0, 1973, 2100, null, null], + [0, "콘팡", null, 0, null, 60, 55, 50, 0, 1973, 2100, null, null], + [0, "도나리", null, 0, null, 70, 65, 60, 0, 1973, 2100, null, null], + [0, "디그다", null, 0, null, 10, 55, 25, 0, 1973, 2100, null, null], + [0, "닥트리오", null, 0, null, 35, 80, 50, 0, 1973, 2100, null, null], + [0, "나옹", null, 0, null, 40, 45, 35, 0, 1973, 2100, null, null], + [0, "페르시온", null, 0, null, 65, 70, 60, 0, 1973, 2100, null, null], + [0, "고라파덕", null, 0, null, 50, 52, 48, 0, 1973, 2100, null, null], + [0, "골덕", null, 0, null, 80, 82, 78, 0, 1973, 2100, null, null], + [0, "망키", null, 0, null, 40, 80, 35, 0, 1973, 2100, null, null], + [0, "성원숭", null, 0, null, 65, 105, 60, 0, 1973, 2100, null, null], + [0, "가디", null, 0, null, 55, 70, 45, 0, 1973, 2100, null, null], + [0, "윈디", null, 0, null, 80, 100, 70, 0, 1973, 2100, null, null], + [0, "발챙이", null, 0, null, 40, 50, 40, 0, 1973, 2100, null, null], + [0, "슈륙챙이", null, 0, null, 65, 65, 65, 0, 1973, 2100, null, null], + [0, "강챙이", null, 0, null, 80, 85, 85, 0, 1973, 2100, null, null], + [0, "캐이시", null, 0, null, 25, 20, 15, 0, 1973, 2100, null, null], + [0, "윤겔라", null, 0, null, 40, 35, 30, 0, 1973, 2100, null, null], + [0, "메가후딘", null, 0, null, 55, 50, 65, 0, 1973, 2100, null, null], + [0, "후딘", null, 0, null, 55, 50, 45, 0, 1973, 2100, null, null], + [0, "알통몬", null, 0, null, 70, 80, 50, 0, 1973, 2100, null, null], + [0, "근육몬", null, 0, null, 70, 90, 60, 0, 1973, 2100, null, null], + [0, "괴력몬", null, 0, null, 90, 105, 75, 0, 1973, 2100, null, null], + [0, "모다피", null, 0, null, 50, 75, 35, 0, 1973, 2100, null, null], + [0, "우츠동", null, 0, null, 65, 90, 50, 0, 1973, 2100, null, null], + [0, "우츠보트", null, 0, null, 80, 105, 65, 0, 1973, 2100, null, null], + [0, "왕눈해", null, 0, null, 40, 40, 35, 0, 1973, 2100, null, null], + [0, "독파리", null, 0, null, 80, 70, 65, 0, 1973, 2100, null, null], + [0, "꼬마돌", null, 0, null, 40, 80, 100, 0, 1973, 2100, null, null], + [0, "데구리", null, 0, null, 55, 95, 115, 0, 1973, 2100, null, null], + [0, "딱구리", null, 0, null, 70, 110, 110, 0, 1973, 2100, null, null], + [0, "포니타", null, 0, null, 50, 85, 55, 0, 1973, 2100, null, null], + [0, "날쌩마", null, 0, null, 65, 90, 60, 0, 1973, 2100, null, null], + [0, "야돈", null, 0, null, 90, 65, 65, 0, 1973, 2100, null, null], + [0, "야도란", null, 0, null, 85, 65, 100, 0, 1973, 2100, null, null], + [0, "코일", null, 0, null, 25, 35, 70, 0, 1973, 2100, null, null], + [0, "레어코일", null, 0, null, 50, 60, 95, 0, 1973, 2100, null, null], + [0, "파오리", null, 0, null, 52, 65, 55, 0, 1973, 2100, null, null], + [0, "두두", null, 0, null, 35, 85, 45, 0, 1973, 2100, null, null], + [0, "두트리오", null, 0, null, 60, 95, 45, 0, 1973, 2100, null, null], + [0, "쥬쥬", null, 0, null, 65, 45, 55, 0, 1973, 2100, null, null], + [0, "쥬레곤", null, 0, null, 90, 70, 80, 0, 1973, 2100, null, null], + [0, "질퍽이", null, 0, null, 80, 80, 50, 0, 1973, 2100, null, null], + [0, "질뻐기", null, 0, null, 90, 90, 75, 0, 1973, 2100, null, null], + [0, "셀러", null, 0, null, 30, 65, 95, 0, 1973, 2100, null, null], + [0, "파르셀", null, 0, null, 50, 95, 100, 0, 1973, 2100, null, null], + [0, "고오스", null, 0, null, 30, 35, 30, 0, 1973, 2100, null, null], + [0, "고우스트", null, 0, null, 45, 50, 45, 0, 1973, 2100, null, null], + [0, "메가팬텀", null, 0, null, 60, 65, 80, 0, 1973, 2100, null, null], + [0, "팬텀", null, 0, null, 60, 65, 60, 0, 1973, 2100, null, null], + [0, "롱스톤", null, 0, null, 35, 45, 100, 0, 1973, 2100, null, null], + [0, "슬리프", null, 0, null, 60, 48, 45, 0, 1973, 2100, null, null], + [0, "슬리퍼", null, 0, null, 85, 73, 70, 0, 1973, 2100, null, null], + [0, "크랩", null, 0, null, 40, 95, 80, 0, 1973, 2100, null, null], + [0, "킹크랩", null, 0, null, 55, 105, 95, 0, 1973, 2100, null, null], + [0, "찌리리공", null, 0, null, 40, 30, 50, 0, 1973, 2100, null, null], + [0, "붐볼", null, 0, null, 60, 50, 70, 0, 1973, 2100, null, null], + [0, "아라리", null, 0, null, 60, 40, 80, 0, 1973, 2100, null, null], + [0, "나시", null, 0, null, 95, 95, 85, 0, 1973, 2100, null, null], + [0, "탕구리", null, 0, null, 50, 50, 95, 0, 1973, 2100, null, null], + [0, "텅구리", null, 0, null, 60, 80, 98, 0, 1973, 2100, null, null], + [0, "시라소몬", null, 0, null, 50, 95, 53, 0, 1973, 2100, null, null], + [0, "홍수몬", null, 0, null, 50, 95, 79, 0, 1973, 2100, null, null], + [0, "내루미", null, 0, null, 90, 55, 75, 0, 1973, 2100, null, null], + [0, "또가스", null, 0, null, 40, 65, 95, 0, 1973, 2100, null, null], + [0, "또도가스", null, 0, null, 65, 90, 120, 0, 1973, 2100, null, null], + [0, "뿔카노", null, 0, null, 80, 85, 95, 0, 1973, 2100, null, null], + [0, "코뿌리", null, 0, null, 85, 99, 80, 0, 1973, 2100, null, null], + [0, "럭키", null, 0, null, 100, 75, 75, 0, 1973, 2100, null, null], + [0, "덩쿠리", null, 0, null, 65, 55, 115, 0, 1973, 2100, null, null], + [0, "캥카", null, 0, null, 95, 85, 60, 0, 1973, 2100, null, null], + [0, "쏘드라", null, 0, null, 30, 40, 70, 0, 1973, 2100, null, null], + [0, "시드라", null, 0, null, 65, 65, 95, 0, 1973, 2100, null, null], + [0, "콘치", null, 0, null, 45, 67, 60, 0, 1973, 2100, null, null], + [0, "왕콘치", null, 0, null, 80, 92, 65, 0, 1973, 2100, null, null], + [0, "별가사리", null, 0, null, 30, 45, 55, 0, 1973, 2100, null, null], + [0, "아쿠스타", null, 0, null, 60, 75, 85, 0, 1973, 2100, null, null], + [0, "마임맨", null, 0, null, 40, 45, 65, 0, 1973, 2100, null, null], + [0, "스라크", null, 0, null, 70, 99, 80, 0, 1973, 2100, null, null], + [0, "루주라", null, 0, null, 65, 50, 35, 0, 1973, 2100, null, null], + [0, "에레브", null, 0, null, 65, 83, 57, 0, 1973, 2100, null, null], + [0, "마그마", null, 0, null, 65, 95, 57, 0, 1973, 2100, null, null], + [0, "쁘사이저", null, 0, null, 65, 93, 80, 0, 1973, 2100, null, null], + [0, "켄타로스", null, 0, null, 75, 90, 85, 0, 1973, 2100, null, null], + [0, "잉어킹", null, 0, null, 20, 10, 55, 0, 1973, 2100, null, null], + [0, "갸라도스", null, 0, null, 85, 99, 69, 0, 1973, 2100, null, null], + [0, "라프라스", null, 0, null, 100, 75, 65, 0, 1973, 2100, null, null], + [0, "메타몽", null, 0, null, 50, 50, 50, 0, 1973, 2100, null, null], + [0, "이브이", null, 0, null, 55, 55, 50, 0, 1973, 2100, null, null], + [0, "샤미드", null, 0, null, 95, 65, 60, 0, 1973, 2100, null, null], + [0, "쥬피썬더", null, 0, null, 65, 65, 95, 0, 1973, 2100, null, null], + [0, "부스터", null, 0, null, 65, 95, 60, 0, 1973, 2100, null, null], + [0, "폴리곤", null, 0, null, 65, 60, 70, 0, 1973, 2100, null, null], + [0, "암나이트", null, 0, null, 35, 40, 80, 0, 1973, 2100, null, null], + [0, "암스타", null, 0, null, 70, 60, 95, 0, 1973, 2100, null, null], + [0, "투구", null, 0, null, 50, 60, 70, 0, 1973, 2100, null, null], + [0, "투구푸스", null, 0, null, 60, 85, 90, 0, 1973, 2100, null, null], + [0, "프테라", null, 0, null, 80, 105, 65, 0, 1973, 2100, null, null], + [0, "잠만보", null, 0, null, 88, 91, 70, 0, 1973, 2100, null, null], + [0, "프리져", null, 0, null, 80, 85, 90, 0, 1973, 2100, "은둔", null], + [0, "썬더", null, 0, null, 85, 85, 80, 0, 1973, 2100, "은둔", null], + [0, "파이어", null, 0, null, 85, 95, 80, 0, 1973, 2100, "은둔", null], + [0, "미뇽", null, 0, null, 41, 64, 45, 0, 1973, 2100, null, null], + [0, "신뇽", null, 0, null, 61, 84, 65, 0, 1973, 2100, null, null], + [0, "망나뇽", null, 0, null, 91, 100, 95, 0, 1973, 2100, null, null], + [0, "뮤츠", null, 0, null, 101, 105, 90, 0, 1973, 2100, "은둔", null], + [0, "뮤", null, 0, null, 95, 95, 95, 0, 1973, 2100, "은둔", null] + ], + "general_ex":[ + [0, "갬블러", null, 0, null, 65, 65, 65, 0, 1973, 2100, null, null], + [0, "곤충채집소년", null, 0, null, 65, 66, 68, 0, 1973, 2100, null, null], + [0, "포켓몬 매니아", null, 0, null, 67, 52, 69, 0, 1973, 2100, null, null], + [0, "연구원", null, 0, null, 66, 63, 71, 0, 1973, 2100, null, null], + [0, "주술사", null, 0, null, 69, 53, 59, 0, 1973, 2100, null, null], + [0, "낚시꾼", null, 0, null, 75, 60, 56, 0, 1973, 2100, null, null], + [0, "등산가", null, 0, null, 58, 81, 63, 0, 1973, 2100, null, null], + [0, "맹수 조련사", null, 0, null, 77, 77, 53, 0, 1973, 2100, null, null], + [0, "반바지 꼬마", null, 0, null, 77, 51, 58, 0, 1973, 2100, null, null], + [0, "짧은 치마", null, 0, null, 68, 52, 80, 0, 1973, 2100, null, null], + [0, "불난집 전문 털이범", null, 0, null, 64, 79, 77, 0, 1973, 2100, null, null], + [0, "새 조련사", null, 0, null, 75, 73, 55, 0, 1973, 2100, null, null], + [0, "선원", null, 0, null, 71, 72, 61, 0, 1973, 2100, null, null], + [0, "수영팬티 소년", null, 0, null, 76, 75, 68, 0, 1973, 2100, null, null], + [0, "신사", null, 0, null, 75, 66, 51, 0, 1973, 2100, null, null], + [0, "엘리트 트레이너", null, 0, null, 83, 77, 55, 0, 1973, 2100, null, null], + [0, "아가씨", null, 0, null, 69, 58, 65, 0, 1973, 2100, null, null], + [0, "이과계남자", null, 0, null, 59, 61, 55, 0, 1973, 2100, null, "저격"], + [0, "전기 작업원", null, 0, null, 80, 70, 58, 0, 1973, 2100, null, null], + [0, "전기 그룹", null, 0, null, 70, 75, 55, 0, 1973, 2100, null, null], + [0, "저글러", null, 0, null, 69, 52, 63, 0, 1973, 2100, null, null], + [0, "초능력자", null, 0, null, 71, 47, 82, 0, 1973, 2100, null, null], + [0, "캠프보이", null, 0, null, 75, 60, 55, 0, 1973, 2100, null, null], + [0, "피크닉걸", null, 0, null, 55, 71, 63, 0, 1973, 2100, null, null], + [0, "태권왕", null, 0, null, 65, 50, 78, 0, 1973, 2100, null, "견고"], + [0, "폭주족", null, 0, null, 65, 58, 73, 0, 1973, 2100, null, null], + [0, "대머리", null, 0, null, 54, 60, 78, 0, 1973, 2100, null, null], + [0, "웅", null, 0, "회색시티", 81, 77, 71, 0, 1973, 2100, null, null], + [0, "이슬", null, 0, "블루시티", 81, 73, 72, 0, 1973, 2100, null, null], + [0, "마티스", null, 0, "갈색시티", 90, 77, 77, 0, 1973, 2100, null, null], + [0, "민화", null, 0, "무지개시티", 77, 85, 85, 0, 1973, 2100, null, null], + [0, "독수", null, 0, "연분홍시티", 81, 83, 80, 0, 1973, 2100, null, null], + [0, "초련", null, 0, "노랑시티", 78, 79, 84, 0, 1973, 2100, null, null], + [0, "강연", null, 0, "홍련마을", 95, 74, 78, 0, 1973, 2100, null, null], + [0, "비주기", null, 0, null, 90, 85, 90, 0, 1973, 2100, null, null], + [0, "칸나", null, 0, "석영고원", 91, 85, 89, 0, 1973, 2100, null, null], + [0, "시바", null, 0, "석영고원", 90, 100, 70, 0, 1973, 2100, null, null], + [0, "국화", null, 0, "석영고원", 83, 87, 88, 0, 1973, 2100, null, "환술"], + [0, "목호", null, 0, "석영고원", 94, 73, 94, 0, 1973, 2100, null, null], + [0, "로켓단", null, 0, null, 85, 85, 85, 0, 1973, 2100, null, null, "우리가 그렇게 궁금하시다면 대답해 드리는게 인지상정\n이 세계의 파괴를 막기 위해! 이 세계의 평화를 지키기 위해! \n사랑과 진실, 어둠을 뿌리고 다니는...! \n포켓몬의 감초 귀"] + ] +} \ No newline at end of file diff --git a/hwe/scenario/scenario_2220.json b/hwe/scenario/scenario_2220.json new file mode 100644 index 00000000..bc41955c --- /dev/null +++ b/hwe/scenario/scenario_2220.json @@ -0,0 +1,663 @@ +{ + "title": "【가상모드22】 찐유저무쌍!", + "startYear": 180, + "history": [ + "●180년 1월:【가상모드22】찐유저무쌍!", + "●180년 1월:【이벤트】다 덤벼라! 유저가 최강이다!" + ], + "stat": { + "total": 310, + "min": 40, + "max": 140 + }, + "iconPath": ".", + "fiction": 1, + "nation":[ + ], + "diplomacy":[], + "general":[ + [0, "아회남", null, 0, null, 65, 74, 26, 0, 160, 300, null, null], + [0, "이적", null, 0, null, 40, 24, 84, 0, 160, 300, null, null], + [0, "윤상", null, 0, null, 51, 44, 62, 0, 160, 300, null, null], + [0, "윤묵", null, 0, null, 26, 15, 66, 0, 160, 300, null, null], + [0, "우금", null, 0, null, 85, 82, 62, 0, 160, 300, null, null], + [0, "위관", null, 0, null, 69, 46, 79, 0, 160, 300, null, null], + [0, "원윤", null, 0, null, 32, 14, 39, 0, 160, 300, null, null], + [0, "원희", null, 0, null, 66, 43, 63, 0, 160, 300, null, null], + [0, "염행", null, 0, null, 78, 90, 58, 0, 160, 300, null, null], + [0, "염유", null, 0, null, 71, 50, 71, 0, 160, 300, null, null], + [0, "원술", null, 0, null, 76, 55, 75, 0, 160, 300, null, null, "천한 것들관 상종을 하면 안돼"], + [0, "원상", null, 0, null, 63, 75, 42, 0, 160, 300, null, null], + [0, "원소", null, 0, null, 90, 62, 81, 0, 160, 300, null, null], + [0, "염상", null, 0, null, 40, 27, 71, 0, 160, 300, null, null], + [0, "원담", null, 0, null, 60, 78, 30, 0, 160, 300, null, null], + [0, "염포", null, 0, null, 40, 25, 82, 0, 160, 300, null, null], + [0, "왕위", null, 0, null, 60, 70, 48, 0, 160, 300, null, null], + [0, "왕윤", null, 0, null, 26, 6, 68, 0, 160, 300, null, null], + [0, "왕항", null, 0, null, 76, 43, 61, 0, 160, 300, null, null], + [0, "왕찬", null, 0, null, 15, 3, 79, 0, 160, 300, null, null], + [0, "왕수", null, 0, null, 54, 27, 77, 0, 160, 300, null, null], + [0, "왕숙", null, 0, null, 36, 22, 76, 0, 160, 300, null, null], + [0, "왕준", null, 0, null, 85, 64, 84, 0, 160, 300, null, null], + [0, "왕쌍", null, 0, null, 67, 88, 19, 0, 160, 300, null, null], + [0, "왕창", null, 0, null, 74, 57, 79, 0, 160, 300, null, null], + [0, "왕평", null, 0, null, 88, 81, 61, 0, 160, 300, null, null], + [0, "왕보", null, 0, null, 62, 41, 79, 0, 160, 300, null, null], + [0, "왕문", null, 0, null, 65, 64, 31, 0, 160, 300, null, null], + [0, "왕릉", null, 0, null, 74, 50, 71, 0, 160, 300, null, null], + [0, "왕루", null, 0, null, 28, 30, 79, 0, 160, 300, null, null], + [0, "왕랑", null, 0, null, 47, 35, 79, 0, 160, 300, null, null], + [0, "온회", null, 0, null, 62, 36, 74, 0, 160, 300, null, null], + [0, "하안", null, 0, null, 15, 30, 72, 0, 160, 300, null, null], + [0, "괴월", null, 0, null, 50, 38, 85, 0, 160, 300, null, null], + [0, "괴량", null, 0, null, 68, 33, 88, 0, 160, 300, null, null], + [0, "가화", null, 0, null, 49, 65, 41, 0, 160, 300, null, null], + [0, "가규", null, 0, null, 78, 61, 84, 0, 160, 300, null, null], + [0, "하의", null, 0, null, 56, 69, 36, 0, 160, 300, null, null], + [0, "화흠", null, 0, null, 51, 33, 88, 0, 160, 300, null, null], + [0, "가후", null, 0, null, 71, 40, 98, 0, 160, 300, null, null, "이기기 위한 전략만 내드리겠습니다"], + [0, "곽가", null, 0, null, 70, 41, 97, 0, 160, 300, null, null, "조공을 위한 명이 조금만 더 남았다면..."], + [0, "악환", null, 0, null, 65, 80, 42, 0, 160, 300, null, null], + [0, "곽사", null, 0, null, 64, 76, 13, 0, 160, 300, null, null], + [0, "악취", null, 0, null, 53, 66, 61, 0, 160, 300, null, null], + [0, "곽준", null, 0, null, 73, 52, 73, 0, 160, 300, null, null], + [0, "학소", null, 0, null, 88, 63, 83, 0, 160, 300, null, null], + [0, "악진", null, 0, null, 80, 85, 56, 0, 160, 300, null, null], + [0, "곽도", null, 0, null, 62, 50, 82, 0, 160, 300, null, null], + [0, "학맹", null, 0, null, 62, 67, 42, 0, 160, 300, null, null], + [0, "곽유지", null, 0, null, 28, 9, 69, 0, 160, 300, null, null], + [0, "곽익", null, 0, null, 73, 69, 69, 0, 160, 300, null, null], + [0, "곽회", null, 0, null, 90, 66, 85, 0, 160, 300, null, null], + [0, "하후위", null, 0, null, 71, 73, 49, 0, 160, 300, null, null], + [0, "하후연", null, 0, null, 95, 92, 72, 0, 160, 300, null, null, "궁술로 날 당해낼 자가 있을까?"], + [0, "하후은", null, 0, null, 63, 72, 53, 0, 160, 300, null, null], + [0, "하후화", null, 0, null, 48, 51, 71, 0, 160, 300, null, null], + [0, "하후혜", null, 0, null, 50, 44, 76, 0, 160, 300, null, null], + [0, "하후현", null, 0, null, 54, 39, 76, 0, 160, 300, null, null], + [0, "하후상", null, 0, null, 79, 55, 75, 0, 160, 300, null, null], + [0, "하후덕", null, 0, null, 69, 73, 32, 0, 160, 300, null, null], + [0, "하후돈", null, 0, null, 91, 88, 68, 0, 160, 300, null, null], + [0, "하후패", null, 0, null, 79, 85, 63, 0, 160, 300, null, null], + [0, "하후무", null, 0, null, 20, 7, 4, 0, 160, 300, null, null], + [0, "가충", null, 0, null, 54, 31, 89, 0, 160, 300, null, null], + [0, "하진", null, 0, null, 68, 54, 75, 0, 160, 300, null, null], + [0, "화웅", null, 0, null, 78, 90, 55, 0, 160, 300, null, null], + [0, "한윤", null, 0, null, 26, 29, 65, 0, 160, 300, null, null], + [0, "관우", null, 0, null, 96, 99, 76, 0, 160, 300, null, null, "차가 식기 전에 적장의 목을 베어 오겠소!"], + [0, "환계", null, 0, null, 25, 26, 68, 0, 160, 300, null, null], + [0, "관해", null, 0, null, 70, 82, 10, 0, 160, 300, null, null], + [0, "관구검", null, 0, null, 84, 86, 62, 0, 160, 300, null, null], + [0, "한현", null, 0, null, 22, 33, 7, 0, 160, 300, null, null], + [0, "한호", null, 0, null, 73, 61, 84, 0, 160, 300, null, null], + [0, "관흥", null, 0, null, 76, 84, 62, 0, 160, 300, null, null], + [0, "관색", null, 0, null, 74, 83, 56, 0, 160, 300, null, null], + [0, "한수", null, 0, null, 78, 58, 79, 0, 160, 300, null, null], + [0, "한숭", null, 0, null, 25, 15, 71, 0, 160, 300, null, null], + [0, "관정", null, 0, null, 36, 52, 73, 0, 160, 300, null, null], + [0, "한섬", null, 0, null, 69, 66, 36, 0, 160, 300, null, null], + [0, "감택", null, 0, null, 51, 49, 83, 0, 160, 300, null, null], + [0, "한충", null, 0, null, 64, 67, 18, 0, 160, 300, null, null], + [0, "한당", null, 0, null, 76, 85, 61, 0, 160, 300, null, null], + [0, "한덕", null, 0, null, 63, 76, 25, 0, 160, 300, null, null], + [0, "감녕", null, 0, null, 92, 95, 74, 0, 160, 300, null, null], + [0, "한복", null, 0, null, 28, 3, 27, 0, 160, 300, null, null], + [0, "관평", null, 0, null, 78, 82, 60, 0, 160, 300, null, null], + [0, "간옹", null, 0, null, 20, 32, 75, 0, 160, 300, null, null], + [0, "안량", null, 0, null, 88, 96, 43, 0, 160, 300, null, null], + [0, "위연", null, 0, null, 91, 90, 70, 0, 160, 300, null, null], + [0, "국의", null, 0, null, 84, 78, 51, 0, 160, 300, null, null], + [0, "희지재", null, 0, null, 63, 35, 91, 0, 160, 300, null, null], + [0, "위속", null, 0, null, 67, 78, 31, 0, 160, 300, null, null], + [0, "위유", null, 0, null, 46, 29, 74, 0, 160, 300, null, null], + [0, "우금2", null, 0, null, 72, 79, 38, 0, 160, 300, null, null], + [0, "우보", null, 0, null, 38, 60, 21, 0, 160, 300, null, null], + [0, "강유", null, 0, null, 92, 72, 93, 0, 160, 300, null, null], + [0, "공지", null, 0, null, 43, 53, 62, 0, 160, 300, null, null], + [0, "교유", null, 0, null, 64, 69, 38, 0, 160, 300, null, null], + [0, "공도", null, 0, null, 59, 70, 23, 0, 160, 300, null, null], + [0, "허공", null, 0, null, 44, 66, 64, 0, 160, 300, null, null], + [0, "허정", null, 0, null, 23, 5, 68, 0, 160, 300, null, null], + [0, "허저", null, 0, null, 74, 97, 36, 0, 160, 300, null, null], + [0, "허유", null, 0, null, 36, 21, 80, 0, 160, 300, null, null], + [0, "기령", null, 0, null, 85, 84, 51, 0, 160, 300, null, null], + [0, "김의", null, 0, null, 32, 38, 65, 0, 160, 300, null, null], + [0, "김배삼결", null, 0, null, 64, 76, 19, 0, 160, 300, null, null], + [0, "김선", null, 0, null, 52, 68, 13, 0, 160, 300, null, null], + [0, "우번", null, 0, null, 46, 46, 87, 0, 160, 300, null, null], + [0, "형도영", null, 0, null, 69, 79, 41, 0, 160, 300, null, null], + [0, "엄안", null, 0, null, 82, 83, 62, 0, 160, 300, null, null], + [0, "엄망", null, 0, null, 68, 71, 40, 0, 160, 300, null, null], + [0, "엄준", null, 0, null, 41, 12, 71, 0, 160, 300, null, null], + [0, "엄정", null, 0, null, 50, 55, 39, 0, 160, 300, null, null], + [0, "엄백호", null, 0, null, 67, 70, 42, 0, 160, 300, null, null], + [0, "엄여", null, 0, null, 61, 78, 44, 0, 160, 300, null, null], + [0, "오의", null, 0, null, 79, 73, 53, 0, 160, 300, null, null], + [0, "황개", null, 0, null, 80, 86, 64, 0, 160, 300, null, null], + [0, "고간", null, 0, null, 74, 56, 38, 0, 160, 300, null, null], + [0, "황권", null, 0, null, 75, 59, 88, 0, 160, 300, null, null], + [0, "고유", null, 0, null, 57, 43, 72, 0, 160, 300, null, null], + [0, "고순", null, 0, null, 87, 89, 60, 0, 160, 300, null, null], + [0, "고상", null, 0, null, 68, 68, 53, 0, 160, 300, null, null], + [0, "고승", null, 0, null, 67, 73, 41, 0, 160, 300, null, null], + [0, "후성", null, 0, null, 74, 75, 54, 0, 160, 300, null, null], + [0, "후선", null, 0, null, 63, 66, 34, 0, 160, 300, null, null], + [0, "황조", null, 0, null, 81, 66, 48, 0, 160, 300, null, null], + [0, "공손월", null, 0, null, 74, 72, 47, 0, 160, 300, null, null], + [0, "공손연", null, 0, null, 65, 70, 49, 0, 160, 300, null, null], + [0, "공손공", null, 0, null, 39, 17, 69, 0, 160, 300, null, null], + [0, "공손강", null, 0, null, 72, 66, 46, 0, 160, 300, null, null], + [0, "공손찬", null, 0, null, 86, 82, 62, 0, 160, 300, null, null], + [0, "공손속", null, 0, null, 63, 68, 46, 0, 160, 300, null, null], + [0, "공손도", null, 0, null, 67, 71, 49, 0, 160, 300, null, null], + [0, "공손범", null, 0, null, 73, 69, 49, 0, 160, 300, null, null], + [0, "황충", null, 0, null, 88, 96, 65, 0, 160, 300, null, null], + [0, "고정", null, 0, null, 55, 63, 43, 0, 160, 300, null, null], + [0, "고패", null, 0, null, 66, 48, 69, 0, 160, 300, null, null], + [0, "황보숭", null, 0, null, 91, 61, 82, 0, 160, 300, null, null], + [0, "공융", null, 0, null, 30, 5, 73, 0, 160, 300, null, null], + [0, "고람", null, 0, null, 76, 82, 60, 0, 160, 300, null, null], + [0, "오경", null, 0, null, 69, 66, 45, 0, 160, 300, null, null], + [0, "호거아", null, 0, null, 70, 82, 41, 0, 160, 300, null, null], + [0, "호진", null, 0, null, 65, 74, 12, 0, 160, 300, null, null], + [0, "올돌골", null, 0, null, 79, 86, 11, 0, 160, 300, null, null], + [0, "호반", null, 0, null, 55, 55, 59, 0, 160, 300, null, null], + [0, "오반", null, 0, null, 74, 71, 50, 0, 160, 300, null, null], + [0, "고옹", null, 0, null, 52, 18, 81, 0, 160, 300, null, null], + [0, "오란", null, 0, null, 68, 80, 35, 0, 160, 300, null, null], + [0, "채화", null, 0, null, 39, 50, 1, 0, 160, 300, null, null], + [0, "채중", null, 0, null, 40, 54, 2, 0, 160, 300, null, null], + [0, "채모", null, 0, null, 70, 55, 77, 0, 160, 300, null, null], + [0, "착융", null, 0, null, 60, 69, 38, 0, 160, 300, null, null], + [0, "사마의", null, 0, null, 99, 63, 98, 0, 160, 300, null, null], + [0, "사마염", null, 0, null, 69, 59, 77, 0, 160, 300, null, null], + [0, "사마사", null, 0, null, 84, 64, 89, 0, 160, 300, null, null], + [0, "사마소", null, 0, null, 85, 57, 88, 0, 160, 300, null, null], + [0, "사마부", null, 0, null, 70, 37, 77, 0, 160, 300, null, null], + [0, "사마랑", null, 0, null, 20, 21, 72, 0, 160, 300, null, null], + [0, "사마가", null, 0, null, 66, 84, 25, 0, 160, 300, null, null], + [0, "주흔", null, 0, null, 65, 51, 73, 0, 160, 300, null, null], + [0, "주앙", null, 0, null, 74, 65, 48, 0, 160, 300, null, null], + [0, "주지", null, 0, null, 73, 85, 41, 0, 160, 300, null, null], + [0, "주창", null, 0, null, 68, 77, 42, 0, 160, 300, null, null], + [0, "주태", null, 0, null, 84, 90, 48, 0, 160, 300, null, null], + [0, "주방", null, 0, null, 52, 41, 80, 0, 160, 300, null, null], + [0, "주유", null, 0, null, 97, 71, 97, 0, 160, 300, null, null], + [0, "주환", null, 0, null, 87, 84, 64, 0, 160, 300, null, null], + [0, "주거", null, 0, null, 77, 57, 72, 0, 160, 300, null, null], + [0, "축융", null, 0, null, 72, 75, 35, 0, 160, 300, null, null], + [0, "주준", null, 0, null, 89, 57, 76, 0, 160, 300, null, null], + [0, "주연", null, 0, null, 86, 75, 57, 0, 160, 300, null, null], + [0, "주치", null, 0, null, 71, 56, 72, 0, 160, 300, null, null], + [0, "주포", null, 0, null, 68, 73, 34, 0, 160, 300, null, null], + [0, "주령", null, 0, null, 78, 73, 53, 0, 160, 300, null, null], + [0, "순욱", null, 0, null, 78, 38, 97, 0, 160, 300, null, null], + [0, "순우경", null, 0, null, 78, 66, 29, 0, 160, 300, null, null], + [0, "순심", null, 0, null, 45, 25, 78, 0, 160, 300, null, null], + [0, "순유", null, 0, null, 80, 35, 95, 0, 160, 300, null, null], + [0, "장완", null, 0, null, 78, 34, 89, 0, 160, 300, null, null], + [0, "종회", null, 0, null, 88, 62, 93, 0, 160, 300, null, null], + [0, "장간", null, 0, null, 19, 6, 66, 0, 160, 300, null, null], + [0, "장의거", null, 0, null, 71, 41, 59, 0, 160, 300, null, null], + [0, "장흠", null, 0, null, 78, 85, 54, 0, 160, 300, null, null], + [0, "장제3", null, 0, null, 62, 43, 85, 0, 160, 300, null, null], + [0, "초주", null, 0, null, 16, 3, 67, 0, 160, 300, null, null], + [0, "초촉", null, 0, null, 65, 76, 33, 0, 160, 300, null, null], + [0, "향총", null, 0, null, 76, 56, 77, 0, 160, 300, null, null], + [0, "종요", null, 0, null, 79, 24, 90, 0, 160, 300, null, null], + [0, "향랑", null, 0, null, 28, 18, 74, 0, 160, 300, null, null], + [0, "서영", null, 0, null, 92, 80, 62, 0, 160, 300, null, null], + [0, "제갈각", null, 0, null, 72, 47, 90, 0, 160, 300, null, null], + [0, "제갈근", null, 0, null, 75, 34, 85, 0, 160, 300, null, null], + [0, "제갈균", null, 0, null, 29, 25, 52, 0, 160, 300, null, null], + [0, "제갈탄", null, 0, null, 72, 54, 76, 0, 160, 300, null, null], + [0, "제갈량", null, 0, null, 98, 43, 100, 0, 160, 300, null, null], + [0, "서황", null, 0, null, 95, 94, 74, 0, 160, 300, null, null], + [0, "서서", null, 0, null, 85, 64, 94, 0, 160, 300, null, null], + [0, "서성", null, 0, null, 86, 81, 61, 0, 160, 300, null, null], + [0, "서막", null, 0, null, 55, 32, 68, 0, 160, 300, null, null], + [0, "신의", null, 0, null, 55, 59, 60, 0, 160, 300, null, null], + [0, "신탐", null, 0, null, 56, 62, 54, 0, 160, 300, null, null], + [0, "심배", null, 0, null, 80, 60, 84, 0, 160, 300, null, null], + [0, "신비", null, 0, null, 42, 24, 79, 0, 160, 300, null, null], + [0, "신평", null, 0, null, 69, 43, 77, 0, 160, 300, null, null], + [0, "진복", null, 0, null, 31, 7, 73, 0, 160, 300, null, null], + [0, "진랑", null, 0, null, 58, 70, 35, 0, 160, 300, null, null], + [0, "휴고", null, 0, null, 63, 71, 38, 0, 160, 300, null, null], + [0, "추단", null, 0, null, 61, 64, 34, 0, 160, 300, null, null], + [0, "성의", null, 0, null, 74, 72, 41, 0, 160, 300, null, null], + [0, "성공영", null, 0, null, 73, 58, 80, 0, 160, 300, null, null], + [0, "설종", null, 0, null, 34, 16, 73, 0, 160, 300, null, null], + [0, "단경", null, 0, null, 71, 68, 43, 0, 160, 300, null, null], + [0, "전종", null, 0, null, 78, 55, 75, 0, 160, 300, null, null], + [0, "조예", null, 0, null, 72, 52, 82, 0, 160, 300, null, null], + [0, "조휴", null, 0, null, 84, 78, 58, 0, 160, 300, null, null], + [0, "송헌", null, 0, null, 68, 77, 38, 0, 160, 300, null, null], + [0, "조앙", null, 0, null, 78, 50, 69, 0, 160, 300, null, null], + [0, "조홍", null, 0, null, 80, 75, 55, 0, 160, 300, null, null], + [0, "조순", null, 0, null, 85, 83, 63, 0, 160, 300, null, null], + [0, "조창", null, 0, null, 86, 91, 59, 0, 160, 300, null, null], + [0, "조식", null, 0, null, 45, 22, 86, 0, 160, 300, null, null], + [0, "조진", null, 0, null, 88, 74, 56, 0, 160, 300, null, null], + [0, "조인", null, 0, null, 94, 90, 70, 0, 160, 300, null, null], + [0, "조성", null, 0, null, 54, 74, 38, 0, 160, 300, null, null], + [0, "조조", null, 0, null, 100, 72, 96, 0, 160, 300, null, null, "미망인이 더 매력적이란 말이야... 후후"], + [0, "조충", null, 0, null, 43, 21, 74, 0, 160, 300, null, null], + [0, "장패", null, 0, null, 78, 86, 53, 0, 160, 300, null, null], + [0, "조비", null, 0, null, 75, 64, 87, 0, 160, 300, null, null, "새로운 왕조를 열겠다..."], + [0, "조표", null, 0, null, 54, 69, 32, 0, 160, 300, null, null], + [0, "저수", null, 0, null, 86, 46, 95, 0, 160, 300, null, null], + [0, "소비", null, 0, null, 69, 45, 66, 0, 160, 300, null, null], + [0, "조무", null, 0, null, 70, 71, 50, 0, 160, 300, null, null], + [0, "손환", null, 0, null, 82, 56, 76, 0, 160, 300, null, null], + [0, "손견", null, 0, null, 94, 95, 73, 0, 160, 300, null, null], + [0, "손건", null, 0, null, 44, 33, 79, 0, 160, 300, null, null], + [0, "손권", null, 0, null, 86, 61, 81, 0, 160, 300, null, null], + [0, "손교", null, 0, null, 77, 72, 52, 0, 160, 300, null, null], + [0, "손책", null, 0, null, 93, 94, 74, 0, 160, 300, null, null], + [0, "손소", null, 0, null, 82, 79, 59, 0, 160, 300, null, null], + [0, "손정", null, 0, null, 66, 53, 73, 0, 160, 300, null, null], + [0, "손중", null, 0, null, 62, 71, 36, 0, 160, 300, null, null], + [0, "손등", null, 0, null, 62, 37, 79, 0, 160, 300, null, null], + [0, "손유", null, 0, null, 77, 70, 51, 0, 160, 300, null, null], + [0, "손익", null, 0, null, 67, 83, 27, 0, 160, 300, null, null], + [0, "손례", null, 0, null, 78, 81, 59, 0, 160, 300, null, null], + [0, "태사자", null, 0, null, 94, 94, 72, 0, 160, 300, null, null], + [0, "대래동주", null, 0, null, 51, 53, 54, 0, 160, 300, null, null], + [0, "대릉", null, 0, null, 70, 75, 39, 0, 160, 300, null, null], + [0, "타사대왕", null, 0, null, 62, 48, 70, 0, 160, 300, null, null], + [0, "담웅", null, 0, null, 58, 73, 14, 0, 160, 300, null, null], + [0, "장윤", null, 0, null, 72, 67, 42, 0, 160, 300, null, null], + [0, "조운", null, 0, null, 90, 96, 75, 0, 160, 300, null, null], + [0, "장위", null, 0, null, 74, 66, 45, 0, 160, 300, null, null], + [0, "장영", null, 0, null, 75, 74, 41, 0, 160, 300, null, null], + [0, "장연", null, 0, null, 76, 81, 57, 0, 160, 300, null, null], + [0, "장횡", null, 0, null, 59, 70, 23, 0, 160, 300, null, null], + [0, "장온", null, 0, null, 32, 10, 72, 0, 160, 300, null, null], + [0, "장개", null, 0, null, 34, 66, 8, 0, 160, 300, null, null], + [0, "장각", null, 0, null, 87, 35, 90, 0, 160, 300, null, null], + [0, "장기", null, 0, null, 74, 35, 76, 0, 160, 300, null, null], + [0, "장의", null, 0, null, 79, 55, 75, 0, 160, 300, null, null], + [0, "장훈", null, 0, null, 72, 68, 41, 0, 160, 300, null, null], + [0, "장굉", null, 0, null, 24, 22, 86, 0, 160, 300, null, null], + [0, "장합", null, 0, null, 92, 89, 69, 0, 160, 300, null, null], + [0, "조홍2", null, 0, null, 66, 72, 28, 0, 160, 300, null, null], + [0, "장제2", null, 0, null, 70, 66, 46, 0, 160, 300, null, null], + [0, "장수", null, 0, null, 80, 73, 51, 0, 160, 300, null, null], + [0, "장소", null, 0, null, 41, 13, 87, 0, 160, 300, null, null], + [0, "장송", null, 0, null, 40, 6, 85, 0, 160, 300, null, null], + [0, "장임", null, 0, null, 85, 84, 64, 0, 160, 300, null, null], + [0, "장제", null, 0, null, 67, 43, 80, 0, 160, 300, null, null], + [0, "장막", null, 0, null, 52, 53, 71, 0, 160, 300, null, null], + [0, "조범", null, 0, null, 28, 21, 32, 0, 160, 300, null, null], + [0, "장비", null, 0, null, 87, 98, 72, 0, 160, 300, null, null], + [0, "장포", null, 0, null, 78, 84, 48, 0, 160, 300, null, null], + [0, "장보", null, 0, null, 83, 60, 81, 0, 160, 300, null, null], + [0, "장만성", null, 0, null, 75, 81, 45, 0, 160, 300, null, null], + [0, "장양", null, 0, null, 72, 70, 50, 0, 160, 300, null, null], + [0, "장익", null, 0, null, 75, 55, 76, 0, 160, 300, null, null], + [0, "장료", null, 0, null, 96, 94, 74, 0, 160, 300, null, null], + [0, "장량", null, 0, null, 78, 80, 59, 0, 160, 300, null, null], + [0, "조루", null, 0, null, 70, 43, 68, 0, 160, 300, null, null], + [0, "장로", null, 0, null, 65, 42, 81, 0, 160, 300, null, null], + [0, "진횡", null, 0, null, 64, 63, 26, 0, 160, 300, null, null], + [0, "진응", null, 0, null, 62, 72, 45, 0, 160, 300, null, null], + [0, "진기", null, 0, null, 58, 65, 43, 0, 160, 300, null, null], + [0, "진궁", null, 0, null, 84, 55, 90, 0, 160, 300, null, null], + [0, "진교", null, 0, null, 61, 27, 77, 0, 160, 300, null, null], + [0, "진군", null, 0, null, 32, 14, 75, 0, 160, 300, null, null], + [0, "진규", null, 0, null, 30, 4, 82, 0, 160, 300, null, null], + [0, "진식", null, 0, null, 70, 71, 25, 0, 160, 300, null, null], + [0, "진진", null, 0, null, 46, 46, 69, 0, 160, 300, null, null], + [0, "진태", null, 0, null, 86, 68, 89, 0, 160, 300, null, null], + [0, "진등", null, 0, null, 79, 59, 81, 0, 160, 300, null, null], + [0, "진도", null, 0, null, 82, 78, 58, 0, 160, 300, null, null], + [0, "진무", null, 0, null, 76, 87, 43, 0, 160, 300, null, null], + [0, "진란", null, 0, null, 66, 69, 40, 0, 160, 300, null, null], + [0, "진림", null, 0, null, 25, 9, 75, 0, 160, 300, null, null], + [0, "정욱", null, 0, null, 76, 49, 94, 0, 160, 300, null, null], + [0, "정원지", null, 0, null, 69, 74, 17, 0, 160, 300, null, null], + [0, "정은", null, 0, null, 69, 73, 40, 0, 160, 300, null, null], + [0, "정원", null, 0, null, 70, 76, 35, 0, 160, 300, null, null], + [0, "정보", null, 0, null, 84, 79, 59, 0, 160, 300, null, null], + [0, "정봉", null, 0, null, 81, 92, 69, 0, 160, 300, null, null], + [0, "전위", null, 0, null, 79, 98, 42, 0, 160, 300, null, null], + [0, "전해", null, 0, null, 68, 65, 45, 0, 160, 300, null, null], + [0, "전주", null, 0, null, 66, 51, 73, 0, 160, 300, null, null], + [0, "전풍", null, 0, null, 82, 43, 96, 0, 160, 300, null, null], + [0, "전예", null, 0, null, 93, 85, 66, 0, 160, 300, null, null], + [0, "동윤", null, 0, null, 47, 28, 79, 0, 160, 300, null, null], + [0, "동화", null, 0, null, 57, 34, 75, 0, 160, 300, null, null], + [0, "등애", null, 0, null, 92, 73, 94, 0, 160, 300, null, null], + [0, "도겸", null, 0, null, 51, 27, 64, 0, 160, 300, null, null], + [0, "등현", null, 0, null, 61, 73, 45, 0, 160, 300, null, null], + [0, "등지", null, 0, null, 73, 52, 81, 0, 160, 300, null, null], + [0, "동습", null, 0, null, 72, 85, 50, 0, 160, 300, null, null], + [0, "동승", null, 0, null, 56, 53, 65, 0, 160, 300, null, null], + [0, "동소", null, 0, null, 34, 25, 80, 0, 160, 300, null, null], + [0, "동탁", null, 0, null, 91, 87, 67, 0, 160, 300, null, null], + [0, "동도나", null, 0, null, 68, 73, 31, 0, 160, 300, null, null], + [0, "동민", null, 0, null, 49, 60, 25, 0, 160, 300, null, null], + [0, "등무", null, 0, null, 61, 75, 29, 0, 160, 300, null, null], + [0, "두기", null, 0, null, 74, 43, 78, 0, 160, 300, null, null], + [0, "두예", null, 0, null, 96, 69, 95, 0, 160, 300, null, null], + [0, "배원소", null, 0, null, 49, 65, 25, 0, 160, 300, null, null], + [0, "마완", null, 0, null, 71, 74, 16, 0, 160, 300, null, null], + [0, "마휴", null, 0, null, 68, 73, 48, 0, 160, 300, null, null], + [0, "파재", null, 0, null, 74, 74, 55, 0, 160, 300, null, null], + [0, "마준", null, 0, null, 38, 52, 31, 0, 160, 300, null, null], + [0, "마속", null, 0, null, 61, 59, 84, 0, 160, 300, null, null], + [0, "마대", null, 0, null, 79, 85, 62, 0, 160, 300, null, null], + [0, "마충", null, 0, null, 78, 72, 52, 0, 160, 300, null, null], + [0, "마초", null, 0, null, 86, 97, 44, 0, 160, 300, null, null, "서량의 금마초 나가신다!"], + [0, "마철", null, 0, null, 70, 62, 43, 0, 160, 300, null, null], + [0, "마등", null, 0, null, 85, 80, 52, 0, 160, 300, null, null], + [0, "마량", null, 0, null, 53, 23, 85, 0, 160, 300, null, null], + [0, "반준", null, 0, null, 61, 46, 82, 0, 160, 300, null, null], + [0, "반장", null, 0, null, 76, 80, 59, 0, 160, 300, null, null], + [0, "번조", null, 0, null, 66, 73, 31, 0, 160, 300, null, null], + [0, "번능", null, 0, null, 69, 61, 36, 0, 160, 300, null, null], + [0, "반봉", null, 0, null, 56, 77, 4, 0, 160, 300, null, null], + [0, "비의", null, 0, null, 82, 56, 88, 0, 160, 300, null, null], + [0, "비연", null, 0, null, 60, 66, 21, 0, 160, 300, null, null], + [0, "비시", null, 0, null, 18, 28, 65, 0, 160, 300, null, null], + [0, "미축", null, 0, null, 33, 29, 78, 0, 160, 300, null, null], + [0, "미방", null, 0, null, 54, 61, 32, 0, 160, 300, null, null], + [0, "비요", null, 0, null, 70, 52, 73, 0, 160, 300, null, null], + [0, "무안국", null, 0, null, 70, 79, 34, 0, 160, 300, null, null], + [0, "풍습", null, 0, null, 72, 71, 39, 0, 160, 300, null, null], + [0, "부사인", null, 0, null, 46, 63, 37, 0, 160, 300, null, null], + [0, "부첨", null, 0, null, 73, 85, 62, 0, 160, 300, null, null], + [0, "부손", null, 0, null, 29, 13, 70, 0, 160, 300, null, null], + [0, "문앙", null, 0, null, 76, 96, 65, 0, 160, 300, null, null], + [0, "문흠", null, 0, null, 74, 79, 43, 0, 160, 300, null, null], + [0, "문추", null, 0, null, 87, 95, 49, 0, 160, 300, null, null], + [0, "문빙", null, 0, null, 88, 85, 65, 0, 160, 300, null, null], + [0, "변희", null, 0, null, 56, 70, 62, 0, 160, 300, null, null], + [0, "망아장", null, 0, null, 45, 79, 3, 0, 160, 300, null, null], + [0, "봉기", null, 0, null, 56, 48, 84, 0, 160, 300, null, null], + [0, "방희", null, 0, null, 60, 38, 69, 0, 160, 300, null, null], + [0, "법정", null, 0, null, 82, 47, 94, 0, 160, 300, null, null], + [0, "방통", null, 0, null, 79, 34, 97, 0, 160, 300, null, null], + [0, "방덕", null, 0, null, 89, 94, 70, 0, 160, 300, null, null], + [0, "포륭", null, 0, null, 58, 76, 49, 0, 160, 300, null, null], + [0, "목순", null, 0, null, 52, 77, 11, 0, 160, 300, null, null], + [0, "목록대왕", null, 0, null, 65, 71, 39, 0, 160, 300, null, null], + [0, "보즐", null, 0, null, 83, 51, 81, 0, 160, 300, null, null], + [0, "만총", null, 0, null, 88, 64, 87, 0, 160, 300, null, null], + [0, "모개", null, 0, null, 63, 39, 60, 0, 160, 300, null, null], + [0, "맹획", null, 0, null, 81, 88, 42, 0, 160, 300, null, null], + [0, "맹체", null, 0, null, 75, 55, 75, 0, 160, 300, null, null], + [0, "맹우", null, 0, null, 50, 68, 22, 0, 160, 300, null, null], + [0, "유섭", null, 0, null, 62, 79, 24, 0, 160, 300, null, null], + [0, "양부", null, 0, null, 62, 48, 68, 0, 160, 300, null, null], + [0, "옹개", null, 0, null, 73, 75, 57, 0, 160, 300, null, null], + [0, "양의", null, 0, null, 68, 40, 82, 0, 160, 300, null, null], + [0, "양호", null, 0, null, 94, 69, 92, 0, 160, 300, null, null], + [0, "양홍", null, 0, null, 33, 15, 77, 0, 160, 300, null, null], + [0, "양앙", null, 0, null, 68, 72, 38, 0, 160, 300, null, null], + [0, "양추", null, 0, null, 52, 65, 40, 0, 160, 300, null, null], + [0, "양수", null, 0, null, 46, 23, 83, 0, 160, 300, null, null], + [0, "양추2", null, 0, null, 67, 64, 44, 0, 160, 300, null, null], + [0, "양송", null, 0, null, 17, 5, 28, 0, 160, 300, null, null], + [0, "양임", null, 0, null, 70, 78, 56, 0, 160, 300, null, null], + [0, "양조", null, 0, null, 53, 61, 36, 0, 160, 300, null, null], + [0, "양백", null, 0, null, 44, 45, 19, 0, 160, 300, null, null], + [0, "양부2", null, 0, null, 67, 50, 83, 0, 160, 300, null, null], + [0, "양봉", null, 0, null, 66, 65, 31, 0, 160, 300, null, null], + [0, "양봉2", null, 0, null, 54, 62, 53, 0, 160, 300, null, null], + [0, "뇌동", null, 0, null, 69, 78, 51, 0, 160, 300, null, null], + [0, "뇌박", null, 0, null, 62, 70, 36, 0, 160, 300, null, null], + [0, "이이", null, 0, null, 63, 77, 19, 0, 160, 300, null, null], + [0, "이회", null, 0, null, 79, 58, 79, 0, 160, 300, null, null], + [0, "이각", null, 0, null, 69, 72, 24, 0, 160, 300, null, null], + [0, "육항", null, 0, null, 94, 68, 93, 0, 160, 300, null, null], + [0, "육적", null, 0, null, 20, 7, 72, 0, 160, 300, null, null], + [0, "육손", null, 0, null, 95, 71, 96, 0, 160, 300, null, null], + [0, "이엄", null, 0, null, 83, 84, 63, 0, 160, 300, null, null], + [0, "이유", null, 0, null, 61, 26, 93, 0, 160, 300, null, null], + [0, "이숙", null, 0, null, 46, 69, 61, 0, 160, 300, null, null], + [0, "이통", null, 0, null, 73, 81, 62, 0, 160, 300, null, null], + [0, "이전", null, 0, null, 78, 80, 59, 0, 160, 300, null, null], + [0, "이풍", null, 0, null, 69, 74, 50, 0, 160, 300, null, null], + [0, "유언", null, 0, null, 61, 38, 80, 0, 160, 300, null, null], + [0, "유괴", null, 0, null, 71, 73, 52, 0, 160, 300, null, null], + [0, "유기", null, 0, null, 52, 12, 63, 0, 160, 300, null, null], + [0, "유우", null, 0, null, 62, 33, 75, 0, 160, 300, null, null], + [0, "유훈", null, 0, null, 47, 63, 35, 0, 160, 300, null, null], + [0, "유현", null, 0, null, 54, 66, 51, 0, 160, 300, null, null], + [0, "유순", null, 0, null, 63, 46, 28, 0, 160, 300, null, null], + [0, "유장", null, 0, null, 31, 5, 34, 0, 160, 300, null, null], + [0, "유심", null, 0, null, 60, 48, 70, 0, 160, 300, null, null], + [0, "유선", null, 0, null, 3, 5, 9, 0, 160, 300, null, null], + [0, "유종", null, 0, null, 24, 22, 65, 0, 160, 300, null, null], + [0, "유도", null, 0, null, 25, 23, 26, 0, 160, 300, null, null], + [0, "유파", null, 0, null, 29, 22, 75, 0, 160, 300, null, null], + [0, "유반", null, 0, null, 69, 76, 47, 0, 160, 300, null, null], + [0, "유비", null, 0, null, 88, 78, 59, 0, 160, 300, null, null, "한왕실은 중산정왕의 후손인 내가 이어받겠다...!"], + [0, "유표", null, 0, null, 48, 31, 72, 0, 160, 300, null, null], + [0, "유복", null, 0, null, 64, 49, 74, 0, 160, 300, null, null], + [0, "유벽", null, 0, null, 70, 72, 47, 0, 160, 300, null, null], + [0, "유봉", null, 0, null, 75, 79, 44, 0, 160, 300, null, null], + [0, "유엽", null, 0, null, 56, 32, 92, 0, 160, 300, null, null], + [0, "유요", null, 0, null, 62, 67, 46, 0, 160, 300, null, null], + [0, "여위황", null, 0, null, 58, 63, 29, 0, 160, 300, null, null], + [0, "요화", null, 0, null, 73, 76, 54, 0, 160, 300, null, null], + [0, "양흥", null, 0, null, 61, 65, 19, 0, 160, 300, null, null], + [0, "양습", null, 0, null, 73, 40, 74, 0, 160, 300, null, null], + [0, "양서", null, 0, null, 56, 62, 66, 0, 160, 300, null, null], + [0, "능조", null, 0, null, 75, 81, 42, 0, 160, 300, null, null], + [0, "능통", null, 0, null, 83, 89, 60, 0, 160, 300, null, null], + [0, "여개", null, 0, null, 53, 30, 67, 0, 160, 300, null, null], + [0, "여건", null, 0, null, 57, 70, 62, 0, 160, 300, null, null], + [0, "여광", null, 0, null, 56, 70, 13, 0, 160, 300, null, null], + [0, "여상", null, 0, null, 54, 71, 12, 0, 160, 300, null, null], + [0, "여대", null, 0, null, 80, 71, 52, 0, 160, 300, null, null], + [0, "여범", null, 0, null, 73, 54, 75, 0, 160, 300, null, null], + [0, "여포", null, 0, null, 89, 100, 42, 0, 160, 300, null, null, "다 덤비거라! 하하하하"], + [0, "여몽", null, 0, null, 91, 69, 90, 0, 160, 300, null, null], + [0, "윤직", null, 0, null, 46, 42, 73, 0, 160, 300, null, null], + [0, "냉포", null, 0, null, 71, 82, 61, 0, 160, 300, null, null], + [0, "누규", null, 0, null, 52, 13, 87, 0, 160, 300, null, null], + [0, "노숙", null, 0, null, 89, 56, 93, 0, 160, 300, null, null], + [0, "노식", null, 0, null, 86, 63, 82, 0, 160, 300, null, null], + [0, "범강", null, 0, null, 49, 50, 36, 0, 160, 300, null, null], + [0, "장달", null, 0, null, 43, 56, 34, 0, 160, 300, null, null], + [0, "규람", null, 0, null, 55, 70, 58, 0, 160, 300, null, null], + [0, "대원", null, 0, null, 38, 32, 68, 0, 160, 300, null, null], + [0, "왕기", null, 0, null, 81, 64, 86, 0, 160, 300, null, null], + [0, "왕상", null, 0, null, 23, 19, 68, 0, 160, 300, null, null], + [0, "왕돈", null, 0, null, 60, 66, 46, 0, 160, 300, null, null], + [0, "악침", null, 0, null, 73, 75, 43, 0, 160, 300, null, null], + [0, "하제", null, 0, null, 83, 61, 82, 0, 160, 300, null, null], + [0, "환범", null, 0, null, 40, 11, 78, 0, 160, 300, null, null], + [0, "견초", null, 0, null, 72, 79, 57, 0, 160, 300, null, null], + [0, "고당륭", null, 0, null, 35, 24, 76, 0, 160, 300, null, null], + [0, "오찬", null, 0, null, 68, 41, 78, 0, 160, 300, null, null], + [0, "호질", null, 0, null, 73, 46, 74, 0, 160, 300, null, null], + [0, "오질", null, 0, null, 16, 29, 68, 0, 160, 300, null, null], + [0, "호준", null, 0, null, 79, 76, 55, 0, 160, 300, null, null], + [0, "고담", null, 0, null, 53, 23, 77, 0, 160, 300, null, null], + [0, "최림", null, 0, null, 32, 22, 66, 0, 160, 300, null, null], + [0, "사마망", null, 0, null, 78, 58, 83, 0, 160, 300, null, null], + [0, "주이", null, 0, null, 70, 73, 52, 0, 160, 300, null, null], + [0, "전단", null, 0, null, 67, 64, 39, 0, 160, 300, null, null], + [0, "조우", null, 0, null, 50, 43, 37, 0, 160, 300, null, null], + [0, "조상", null, 0, null, 39, 33, 30, 0, 160, 300, null, null], + [0, "조방", null, 0, null, 20, 14, 27, 0, 160, 300, null, null], + [0, "태사향", null, 0, null, 57, 66, 48, 0, 160, 300, null, null], + [0, "장휴", null, 0, null, 63, 27, 74, 0, 160, 300, null, null], + [0, "장호", null, 0, null, 75, 74, 51, 0, 160, 300, null, null], + [0, "조광", null, 0, null, 67, 71, 53, 0, 160, 300, null, null], + [0, "장집", null, 0, null, 76, 29, 80, 0, 160, 300, null, null], + [0, "장승", null, 0, null, 77, 55, 75, 0, 160, 300, null, null], + [0, "장소2", null, 0, null, 23, 56, 31, 0, 160, 300, null, null], + [0, "조통", null, 0, null, 68, 67, 46, 0, 160, 300, null, null], + [0, "진표", null, 0, null, 66, 42, 74, 0, 160, 300, null, null], + [0, "정무", null, 0, null, 56, 35, 75, 0, 160, 300, null, null], + [0, "정봉2", null, 0, null, 66, 66, 46, 0, 160, 300, null, null], + [0, "전만", null, 0, null, 51, 73, 39, 0, 160, 300, null, null], + [0, "마균", null, 0, null, 22, 17, 71, 0, 160, 300, null, null], + [0, "방회", null, 0, null, 69, 75, 49, 0, 160, 300, null, null], + [0, "낙통", null, 0, null, 76, 58, 75, 0, 160, 300, null, null], + [0, "육개", null, 0, null, 65, 61, 79, 0, 160, 300, null, null], + [0, "유찬", null, 0, null, 78, 81, 59, 0, 160, 300, null, null], + [0, "유소", null, 0, null, 68, 53, 74, 0, 160, 300, null, null], + [0, "요립", null, 0, null, 32, 15, 76, 0, 160, 300, null, null], + [0, "여거", null, 0, null, 78, 51, 71, 0, 160, 300, null, null], + [0, "제갈첨", null, 0, null, 70, 57, 76, 0, 160, 300, null, null], + [0, "손휴", null, 0, null, 57, 42, 78, 0, 160, 300, null, null], + [0, "극정", null, 0, null, 42, 23, 68, 0, 160, 300, null, null], + [0, "호분", null, 0, null, 71, 76, 50, 0, 160, 300, null, null], + [0, "손량", null, 0, null, 32, 26, 70, 0, 160, 300, null, null], + [0, "마막", null, 0, null, 34, 12, 44, 0, 160, 300, null, null], + [0, "손호", null, 0, null, 41, 73, 71, 0, 160, 300, null, null], + [0, "조모", null, 0, null, 54, 61, 59, 0, 160, 300, null, null], + [0, "조환", null, 0, null, 30, 28, 30, 0, 160, 300, null, null], + [0, "사마유", null, 0, null, 71, 54, 75, 0, 160, 300, null, null], + [0, "제갈상", null, 0, null, 64, 79, 62, 0, 160, 300, null, null], + [0, "손화", null, 0, null, 31, 39, 68, 0, 160, 300, null, null], + [0, "염우", null, 0, null, 52, 61, 51, 0, 160, 300, null, null], + [0, "왕경", null, 0, null, 67, 49, 71, 0, 160, 300, null, null], + [0, "왕혼", null, 0, null, 74, 71, 50, 0, 160, 300, null, null], + [0, "곽혁", null, 0, null, 33, 29, 70, 0, 160, 300, null, null], + [0, "가범", null, 0, null, 60, 50, 73, 0, 160, 300, null, null], + [0, "서질", null, 0, null, 68, 83, 24, 0, 160, 300, null, null], + [0, "손준", null, 0, null, 64, 70, 48, 0, 160, 300, null, null], + [0, "손침", null, 0, null, 58, 55, 65, 0, 160, 300, null, null], + [0, "우사", null, 0, null, 61, 34, 74, 0, 160, 300, null, null], + [0, "진건", null, 0, null, 72, 71, 50, 0, 160, 300, null, null], + [0, "동궐", null, 0, null, 65, 59, 76, 0, 160, 300, null, null], + [0, "당자", null, 0, null, 61, 71, 50, 0, 160, 300, null, null], + [0, "등충", null, 0, null, 76, 80, 59, 0, 160, 300, null, null], + [0, "황숭", null, 0, null, 67, 50, 72, 0, 160, 300, null, null], + [0, "화핵", null, 0, null, 20, 24, 71, 0, 160, 300, null, null], + [0, "허의", null, 0, null, 51, 74, 15, 0, 160, 300, null, null], + [0, "송겸", null, 0, null, 66, 78, 42, 0, 160, 300, null, null], + [0, "호제", null, 0, null, 57, 39, 68, 0, 160, 300, null, null], + [0, "나헌", null, 0, null, 86, 62, 82, 0, 160, 300, null, null], + [0, "노숙2", null, 0, null, 73, 53, 74, 0, 160, 300, null, null], + [0, "구성", null, 0, null, 63, 70, 38, 0, 160, 300, null, null], + [0, "어부라", null, 0, null, 72, 68, 21, 0, 160, 300, null, null], + [0, "아하소과", null, 0, null, 61, 76, 13, 0, 160, 300, null, null], + [0, "가비능", null, 0, null, 77, 69, 52, 0, 160, 300, null, null], + [0, "구력거", null, 0, null, 80, 68, 50, 0, 160, 300, null, null], + [0, "강단", null, 0, null, 65, 83, 48, 0, 160, 300, null, null], + [0, "황란", null, 0, null, 63, 75, 44, 0, 160, 300, null, null], + [0, "호주천", null, 0, null, 70, 71, 40, 0, 160, 300, null, null], + [0, "종리목", null, 0, null, 84, 61, 82, 0, 160, 300, null, null], + [0, "제갈교", null, 0, null, 62, 27, 75, 0, 160, 300, null, null], + [0, "답돈", null, 0, null, 84, 82, 61, 0, 160, 300, null, null], + [0, "반임", null, 0, null, 66, 79, 38, 0, 160, 300, null, null], + [0, "보도근", null, 0, null, 64, 73, 50, 0, 160, 300, null, null], + [0, "미당대왕", null, 0, null, 59, 69, 21, 0, 160, 300, null, null], + [0, "유표2", null, 0, null, 73, 74, 48, 0, 160, 300, null, null], + [0, "루반", null, 0, null, 65, 76, 39, 0, 160, 300, null, null], + [0, "손관", null, 0, null, 72, 78, 51, 0, 160, 300, null, null], + [0, "곽석", null, 0, null, 59, 71, 48, 0, 160, 300, null, null], + [0, "주조", null, 0, null, 63, 68, 26, 0, 160, 300, null, null], + [0, "장거", null, 0, null, 79, 75, 56, 0, 160, 300, null, null], + [0, "장순", null, 0, null, 73, 81, 60, 0, 160, 300, null, null], + [0, "철리길", null, 0, null, 77, 70, 52, 0, 160, 300, null, null], + [0, "주삭", null, 0, null, 54, 60, 50, 0, 160, 300, null, null], + [0, "황월영", null, 0, null, 46, 33, 78, 0, 160, 300, null, null], + [0, "채염", null, 0, null, 42, 26, 82, 0, 160, 300, null, null], + [0, "소교", null, 0, null, 23, 15, 78, 0, 160, 300, null, null], + [0, "신헌영", null, 0, null, 65, 35, 90, 0, 160, 300, null, null, "내가 사내로 태어났더라면..."], + [0, "손상향", null, 0, null, 72, 79, 55, 0, 160, 300, null, null], + [0, "대교", null, 0, null, 22, 30, 78, 0, 160, 300, null, null], + [0, "초선", null, 0, null, 12, 22, 71, 0, 160, 300, null, null], + [0, "교모", null, 0, null, 54, 45, 69, 0, 160, 300, null, null], + [0, "관구수", null, 0, null, 58, 62, 33, 0, 160, 300, null, null], + [0, "관구전", null, 0, null, 63, 47, 69, 0, 160, 300, null, null], + [0, "원유", null, 0, null, 56, 40, 73, 0, 160, 300, null, null], + [0, "왕광", null, 0, null, 65, 41, 61, 0, 160, 300, null, null], + [0, "신창", null, 0, null, 50, 26, 42, 0, 160, 300, null, null], + [0, "사마주", null, 0, null, 61, 40, 61, 0, 160, 300, null, null], + [0, "양제", null, 0, null, 67, 49, 71, 0, 160, 300, null, null], + [0, "성만", null, 0, null, 61, 68, 46, 0, 160, 300, null, null], + [0, "오연", null, 0, null, 66, 73, 42, 0, 160, 300, null, null], + [0, "맹충", null, 0, null, 47, 28, 72, 0, 160, 300, null, null], + [0, "잠혼", null, 0, null, 1, 1, 22, 0, 160, 300, null, null], + [0, "사정", null, 0, null, 64, 76, 34, 0, 160, 300, null, null], + [0, "심영", null, 0, null, 70, 77, 55, 0, 160, 300, null, null], + [0, "도준", null, 0, null, 65, 66, 46, 0, 160, 300, null, null], + [0, "만욱", null, 0, null, 21, 25, 71, 0, 160, 300, null, null], + [0, "오언", null, 0, null, 76, 81, 59, 0, 160, 300, null, null], + [0, "위막", null, 0, null, 57, 62, 59, 0, 160, 300, null, null], + [0, "시삭", null, 0, null, 38, 65, 47, 0, 160, 300, null, null], + [0, "전속", null, 0, null, 47, 60, 55, 0, 160, 300, null, null], + [0, "장화", null, 0, null, 36, 27, 78, 0, 160, 300, null, null], + [0, "오거", null, 0, null, 49, 61, 23, 0, 160, 300, null, null], + [0, "추정", null, 0, null, 70, 46, 66, 0, 160, 300, null, null], + [0, "장특", null, 0, null, 73, 54, 75, 0, 160, 300, null, null], + [0, "곽마", null, 0, null, 68, 71, 47, 0, 160, 300, null, null], + [0, "석포", null, 0, null, 69, 71, 49, 0, 160, 300, null, null], + [0, "견홍", null, 0, null, 70, 74, 53, 0, 160, 300, null, null], + [0, "한거자", null, 0, null, 51, 59, 51, 0, 160, 300, null, null], + [0, "휴원진", null, 0, null, 52, 68, 45, 0, 160, 300, null, null], + [0, "곽원", null, 0, null, 66, 73, 36, 0, 160, 300, null, null], + [0, "계옹", null, 0, null, 63, 52, 33, 0, 160, 300, null, null], + [0, "이부", null, 0, null, 31, 36, 74, 0, 160, 300, null, null], + [0, "왕업", null, 0, null, 33, 6, 35, 0, 160, 300, null, null], + [0, "좌혁", null, 0, null, 62, 66, 51, 0, 160, 300, null, null], + [0, "화타", null, 0, null, 57, 25, 73, 0, 160, 300, null, null, "아픈 사람들 모두 내게 오시오~"], + [0, "사마휘", null, 0, null, 55, 26, 82, 0, 160, 300, null, null, "좋지 좋아~"], + [0, "우길", null, 0, null, 23, 15, 90, 0, 160, 300, null, null, "길조로다"], + [0, "헌제", null, 0, null, 22, 18, 68, 0, 160, 300, null, null, "한왕실은 정녕 여기서 끝이란 말인가.."], + [0, "백기", null, 0, null, 100, 88, 69, 0, 160, 300, null, null], + [0, "한신", null, 0, null, 100, 74, 95, 0, 160, 300, null, null], + [0, "악비", null, 0, null, 99, 91, 71, 0, 160, 300, null, null], + [0, "항적", null, 0, null, 99, 100, 65, 0, 160, 300, null, null], + [0, "악의", null, 0, null, 98, 75, 96, 0, 160, 300, null, null], + [0, "영정", null, 0, null, 97, 55, 92, 0, 160, 300, null, null], + [0, "강상", null, 0, null, 94, 49, 100, 0, 160, 300, null, null], + [0, "전단2", null, 0, null, 96, 75, 95, 0, 160, 300, null, null], + [0, "이목", null, 0, null, 96, 69, 88, 0, 160, 300, null, null], + [0, "염파", null, 0, null, 97, 96, 75, 0, 160, 300, null, null], + [0, "왕전", null, 0, null, 94, 64, 83, 0, 160, 300, null, null], + [0, "오기", null, 0, null, 94, 66, 95, 0, 160, 300, null, null], + [0, "곽거병", null, 0, null, 93, 92, 53, 0, 160, 300, null, null], + [0, "영포", null, 0, null, 82, 91, 54, 0, 160, 300, null, null], + [0, "이신", null, 0, null, 81, 88, 63, 0, 160, 300, null, null], + [0, "몽념", null, 0, null, 87, 86, 65, 0, 160, 300, null, null], + [0, "전기", null, 0, null, 80, 85, 44, 0, 160, 300, null, null], + [0, "극신", null, 0, null, 76, 83, 42, 0, 160, 300, null, null], + [0, "항연", null, 0, null, 89, 80, 61, 0, 160, 300, null, null], + [0, "인상여", null, 0, null, 69, 38, 96, 0, 160, 300, null, null], + [0, "장자방", null, 0, null, 72, 40, 100, 0, 160, 300, null, null], + [0, "관이오", null, 0, null, 85, 64, 99, 0, 160, 300, null, null], + [0, "손빈", null, 0, null, 83, 22, 98, 0, 160, 300, null, null], + [0, "소진", null, 0, null, 90, 47, 96, 0, 160, 300, null, null], + [0, "범증", null, 0, null, 68, 24, 94, 0, 160, 300, null, null], + [0, "장의2", null, 0, null, 75, 23, 93, 0, 160, 300, null, null], + [0, "공구", null, 0, null, 68, 70, 91, 0, 160, 300, null, null], + [0, "소하", null, 0, null, 56, 27, 97, 0, 160, 300, null, null], + [0, "한비", null, 0, null, 49, 18, 97, 0, 160, 300, null, null], + [0, "이사", null, 0, null, 48, 24, 95, 0, 160, 300, null, null], + [0, "전문", null, 0, null, 79, 67, 89, 0, 160, 300, null, null], + [0, "황헐", null, 0, null, 81, 68, 88, 0, 160, 300, null, null], + [0, "방난", null, 0, null, 88, 95, 66, 0, 160, 300, null, null], + [0, "개섭", null, 0, null, 43, 97, 54, 0, 160, 300, null, null], + [0, "형가", null, 0, null, 42, 89, 43, 0, 160, 300, null, null], + [0, "유방", null, 0, null, 90, 66, 85, 0, 160, 300, null, null, "나는 사람을 쓰는 재주로 천하를 얻었다"], + [0, "하리", null, 0, null, 100, 100, 72, 0, 160, 300, null, null, "내 업적을 따라올 사람이 있을까?"], + [0, "헹이", null, 0, null, 97, 71, 92, 0, 160, 300, null, null, "맛있다 'ㅅ'"], + [0, "나나", null, 0, null, 96, 67, 87, 0, 160, 300, null, null, "이번 전쟁을 계산해보면 말이죠..."], + [0, "장임2", null, 0, null, 90, 91, 69, 0, 160, 300, null, null, "으리!"], + [0, "하야미", null, 0, null, 94, 73, 95, 0, 160, 300, null, null, "흑막이 되어볼까요"], + [0, "이시리스", null, 0, null, 96, 74, 96, 0, 160, 300, null, null], + [0, "연채홍", null, 0, null, 93, 73, 94, 0, 160, 300, null, null, "엄마도 천통할수 있다!"], + [0, "임사영", null, 0, null, 75, 75, 75, 0, 160, 300, null, null, "일반인 양민입니다"], + [0, "장군보", null, 0, null, 88, 90, 68, 0, 160, 300, null, null], + [0, "크렌스", null, 0, null, 92, 86, 67, 0, 160, 300, null, null], + [0, "콘", null, 0, null, 90, 98, 77, 0, 160, 300, null, null], + [0, "리즈나", null, 0, null, 93, 60, 76, 0, 160, 300, null, null, "내가 다 했다"], + [0, "오티누스", null, 0, null, 93, 93, 73, 0, 160, 300, null, null], + [0, "네시", null, 0, null, 88, 73, 94, 0, 160, 300, null, null, "안 자고 싸우면 이겨요"], + [0, "시뉴카린", null, 0, null, 89, 90, 71, 0, 160, 300, null, null, "흔들흔들"], + [0, "Hide_D", null, 0, null, 39, 99, 75, 0, 160, 300, null, null] + ], + "general_ex":[ + + ] +} \ No newline at end of file diff --git a/hwe/scenario/scenario_901.json b/hwe/scenario/scenario_901.json new file mode 100644 index 00000000..1626f32f --- /dev/null +++ b/hwe/scenario/scenario_901.json @@ -0,0 +1,13 @@ +{ + "title":"【공백지】 무주공산", + "startYear":180, + "map":{ + "mapName":"miniche_clean" + }, + "history":[ + ], + "const": { + "expandCityDefaultCost": 30000, + "expandCityCostCoef": 250 + } +} \ No newline at end of file diff --git a/hwe/templates/recruitCrewForm.php b/hwe/templates/recruitCrewForm.php index 53d35340..1b3feb5e 100644 --- a/hwe/templates/recruitCrewForm.php +++ b/hwe/templates/recruitCrewForm.php @@ -11,9 +11,11 @@ + +
모병은 가격 2배의 자금이 소요됩니다.
+ \ +"; + +var serverProvisionalInfo = "\ +\ "; @@ -49,7 +59,8 @@ var serverReservedTemplate = "\ <%openDatetime==starttime?'':'- 가오픈 일시 : '+openDatetime+ '-
'%>\ - 오픈 일시 : <%starttime%> -
\ <%scenarioName%><%turnterm%>분 턴 서버
\ -(상성 설정:<%fictionMode%>), (빙의 여부:<%npcMode%>), (최대 스탯:<%gameConf.defaultStatTotal%>), (기타 설정:<%otherTextInfo%>)\ +(상성 설정:<%fictionMode%>), (빙의 여부:<%npcMode%>), (최대 스탯:<%gameConf.defaultStatTotal%>), (기타 설정:<%otherTextInfo%>)\ +\ "; $(function(){ @@ -71,6 +82,7 @@ function Entrance_UpdateServer() { function Entrance_drawServerList(serverInfos){ var $serverList = $('#server_list'); + var now = moment().format('YYYY-MM-DD HH:mm:ss'); $.each(serverInfos, function(idx, serverInfo){ var $serverHtml = $(TemplateEngine(serverListTemplate, serverInfo)); $serverList.append($serverHtml); @@ -87,6 +99,7 @@ function Entrance_drawServerList(serverInfos){ $serverHtml.append( TemplateEngine(serverReservedTemplate, result.reserved) ); + initTooltip($serverHtml); return; } @@ -104,14 +117,26 @@ function Entrance_drawServerList(serverInfos){ $serverHtml.find('.n_country').html('§천하통일§'); $serverHtml.find('.server_date').html('{0}
~ {1}'.format(game.starttime, game.turntime)); } - else{ + else if(game.opentime <= now){ $serverHtml.find('.n_country').html('<{0}국 경쟁중>'.format(game.nationCnt)); $serverHtml.find('.server_date').html('{0} ~'.format(game.starttime)); } + else{ + $serverHtml.find('.n_country').html('-가오픈 중-'); + $serverHtml.find('.server_date').html('{0} ~'.format(game.starttime)); + } - $serverHtml.append( - TemplateEngine(serverTextInfo, game) - ); + if(game.opentime <= now){ + $serverHtml.append( + TemplateEngine(serverTextInfo, game) + ); + } + else{ + $serverHtml.append( + TemplateEngine(serverProvisionalInfo, game) + ); + } + if(result.me && result.me.name){ var me = result.me; @@ -125,7 +150,7 @@ function Entrance_drawServerList(serverInfos){ TemplateEngine(serverFullTemplate, {}) ); } - else if(game.npcMode == 1){ + else if(game.npcMode == '가능'){ $serverHtml.append( TemplateEngine(serverCreateAndSelectTemplate, {serverPath:serverPath}) ).addClass('server_create_and_select'); diff --git a/js/install.js b/js/install.js index fb7906a2..ff0866b1 100644 --- a/js/install.js +++ b/js/install.js @@ -54,6 +54,16 @@ $(document).ready( function () { $('#serv_host').val( [location.protocol, '//', location.host, parentPathname].join('') ); + + $('#btn_random_generate_key').click(function(){ + var token = ''; + while(token.length < 24){ + token += (Math.random() + 1).toString(36).substring(7); + } + token = token.substr(0,24); + $('#image_request_key').val(token); + }); + $('#db_form').validate({ rules:{ db_host:"required", @@ -63,7 +73,11 @@ $(document).ready( function () { db_name:"required", serv_host:"required", shared_icon_path:"required", - game_image_path:"required" + game_image_path:"required", + image_request_key:{ + required:false, + minlength:16 + } }, errorElement: "div", errorPlacement: function ( error, element ) { @@ -101,7 +115,10 @@ $(document).ready( function () { db_name:$('#db_name').val(), serv_host:$('#serv_host').val(), shared_icon_path:$('#shared_icon_path').val(), - game_image_path:$('#game_image_path').val() + game_image_path:$('#game_image_path').val(), + image_request_key:$('#image_request_key').val(), + kakao_rest_key:$('#kakao_rest_key').val(), + kakao_admin_key:$('#kakao_admin_key').val(), } }).then(function(result){ var deferred = $.Deferred();
불가능한 병종 표시
-
모병은 가격 2배의 자금이 소요됩니다.
현재 기술력 : @@ -177,5 +179,16 @@ $(function(){ }); $('.btn_fill').click(); + + $('#show_unavailable_troops').change(function(){ + var show = $('#show_unavailable_troops').is(":checked"); + if(show){ + $('.show_default_false').show(); + } + else{ + $('.show_default_false').hide(); + } + }); + $('.show_default_false').hide(); }); \ No newline at end of file diff --git a/hwe/templates/tooltip.php b/hwe/templates/tooltip.php index 6ecbc2ed..987d1817 100644 --- a/hwe/templates/tooltip.php +++ b/hwe/templates/tooltip.php @@ -1,5 +1,6 @@ - - - - - \ No newline at end of file +>[] \ No newline at end of file diff --git a/i_entrance/j_server_get_admin_status.php b/i_entrance/j_server_get_admin_status.php index 4c842c8b..5f4e681d 100644 --- a/i_entrance/j_server_get_admin_status.php +++ b/i_entrance/j_server_get_admin_status.php @@ -76,7 +76,7 @@ foreach (AppConf::getList() as $setting) { 'korName' => $serverKorName, 'color' => $serverColor, 'isRoot' => $serverDir == $rootServer, - 'lastGitPath' => ($serverGitPath[$serverDir][0])??'origin/master' + 'lastGitPath' => ($serverGitPath[$serverDir][0])??($serverDir == $rootServer?'devel':'origin/devel') ]; $server[] = $state; } diff --git a/js/admin_server.js b/js/admin_server.js index 41f11202..83acd37c 100644 --- a/js/admin_server.js +++ b/js/admin_server.js @@ -38,22 +38,20 @@ function serverUpdate(caller){ return; } - if(isRoot){ - if(!confirm('서버 라이브러리, 루트 서버에 대해 git pull을 실행합니다.')){ - return; - } - } - else if(!allowFullUpdate){ - if (!confirm('다음 git tree-ish 주소로 업데이트를 시도합니다 : ' + target)) { - return; - } - } - else { + + if(allowFullUpdate){ target = prompt('가져올 git tree-ish 명을 입력해주세요.', target) if(!target){ return; } - + } + else if(isRoot){ + if(!confirm('서버 라이브러리, 루트 서버에 대해 git pull을 실행합니다.')){ + return; + } + } + else if (!confirm('다음 git tree-ish 주소로 업데이트를 시도합니다 : ' + target)) { + return; } $.ajax({ @@ -66,7 +64,11 @@ function serverUpdate(caller){ } }).then(function(response) { if(response.result) { - alert('{0} 서버가 {1} 버전으로 업데이트 되었습니다.'.format(response.server, response.version)); + var aux = ''; + if(isRoot){ + aux = ' (이미지 서버 갱신:{0}, {1})'.format(response.imgResult, response.imgDetail); + } + alert('{0} 서버가 {1} 버전으로 업데이트 되었습니다.{2}'.format(response.server, response.version, aux)); location.reload(); } else { alert(response.reason); diff --git a/js/entrance.js b/js/entrance.js index e3ff5721..852a0441 100644 --- a/js/entrance.js +++ b/js/entrance.js @@ -12,7 +12,17 @@ var serverListTemplate = "\ var serverTextInfo = "\ \ 서기 <%year%>년 <%month%>월 (<%scenario%>)
\ -유저 : <%userCnt%> / <%maxUserCnt%>명 NPC : <%npcCnt%>명 (<%turnTerm%>분 턴 서버)\ +유저 : <%userCnt%> / <%maxUserCnt%>명 NPC : <%npcCnt%>명 (<%turnTerm%>분 턴 서버)
\ +(상성 설정:<%fictionMode%>), (기타 설정:<%otherTextInfo%>)\ +
\ +- 오픈 일시 : <%opentime%> -
\ +서기 <%year%>년 <%month%>월 (<%scenario%>)
\ +유저 : <%userCnt%> / <%maxUserCnt%>명 NPC : <%npcCnt%>명 (<%turnTerm%>분 턴 서버)
\ +(상성 설정:<%fictionMode%>), (기타 설정:<%otherTextInfo%>)\