병종 테이블에 '병종 타입' 지정, 턴 커맨드를 json array로 변경

This commit is contained in:
2018-07-13 00:12:12 +09:00
parent 02f2209e8f
commit 0ca7a8ab8a
7 changed files with 201 additions and 180 deletions
+4 -4
View File
@@ -93,7 +93,7 @@ switch($btn) {
case "강제 사망": case "강제 사망":
$date = date('Y-m-d H:i:s'); $date = date('Y-m-d H:i:s');
$db->update('general', [ $db->update('general', [
'turn0'=>0, 'turn0'=>EncodeCommand(0, 0, 0, 0),
'killturn'=>0, 'killturn'=>0,
'turntime'=>$date, 'turntime'=>$date,
], '`no` IN %li', $genlist); ], '`no` IN %li', $genlist);
@@ -314,13 +314,13 @@ switch($btn) {
break; break;
case "하야입력": case "하야입력":
$db->update('general', [ $db->update('general', [
'turn0'=>'00000000000045' 'turn0'=>EncodeCommand(0, 0, 0, 45)
], '`no` IN %li', $genlist); ], '`no` IN %li', $genlist);
break; break;
case "방랑해산": case "방랑해산":
$db->update('general', [ $db->update('general', [
'turn0'=>'00000000000047', 'turn0'=>EncodeCommand(0, 0, 0, 47),
'turn1'=>'00000000000056' 'turn1'=>EncodeCommand(0, 0, 0, 56)
], '`no` IN %li', $genlist); ], '`no` IN %li', $genlist);
break; break;
case "NPC설정": case "NPC설정":
+1 -1
View File
@@ -52,7 +52,7 @@ switch($btn) {
break; break;
case "강제 사망": case "강제 사망":
$date = date('Y-m-d H:i:s'); $date = date('Y-m-d H:i:s');
DB::db()->query('update general set turn0=0,killturn=0,turntime=%s where no IN %li',$date, $genlist); DB::db()->query('update general set turn0=%s,killturn=0,turntime=%s where no IN %li',EncodeCommand(0, 0, 0, 0),$date, $genlist);
break; break;
case "메세지 전달": case "메세지 전달":
//TODO:새 갠메 시스템으로 변경 //TODO:새 갠메 시스템으로 변경
+6 -15
View File
@@ -628,7 +628,7 @@ function updateCommand($no, $type=0) {
update general set update general set
turn0=turn1,turn1=turn2,turn2=turn3,turn3=turn4,turn4=turn5,turn5=turn6,turn6=turn7,turn7=turn8,turn8=turn9, turn0=turn1,turn1=turn2,turn2=turn3,turn3=turn4,turn4=turn5,turn5=turn6,turn6=turn7,turn7=turn8,turn8=turn9,
turn9=turn10,turn10=turn11,turn11=turn12,turn12=turn13,turn13=turn14,turn14=turn15,turn15=turn16,turn16=turn17, turn9=turn10,turn10=turn11,turn11=turn12,turn12=turn13,turn13=turn14,turn14=turn15,turn15=turn16,turn16=turn17,
turn17=turn18,turn18=turn19,turn19=turn20,turn20=turn21,turn21=turn22,turn22=turn23,turn23='00000000000000' turn17=turn18,turn18=turn19,turn19=turn20,turn20=turn21,turn21=turn22,turn22=turn23,turn23='".EncodeCommand(0, 0, 0, 0)."'
where no='{$general['no']}' where no='{$general['no']}'
"; ";
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
@@ -642,7 +642,7 @@ update nation set
{$turn}4={$turn}5,{$turn}5={$turn}6, {$turn}4={$turn}5,{$turn}5={$turn}6,
{$turn}6={$turn}7,{$turn}7={$turn}8, {$turn}6={$turn}7,{$turn}7={$turn}8,
{$turn}8={$turn}9,{$turn}9={$turn}10, {$turn}8={$turn}9,{$turn}9={$turn}10,
{$turn}10={$turn}11,{$turn}11='00000000000099' {$turn}10={$turn}11,{$turn}11='".EncodeCommand(0, 0, 0, 99)."'
where nation='{$general['nation']}' where nation='{$general['nation']}'
"; ";
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
@@ -672,7 +672,7 @@ turn9=turn8,turn8=turn7,
turn7=turn6,turn6=turn5, turn7=turn6,turn6=turn5,
turn5=turn4,turn4=turn3, turn5=turn4,turn4=turn3,
turn3=turn2,turn2=turn1, turn3=turn2,turn2=turn1,
turn1=turn0,turn0='00000000000000' turn1=turn0,turn0='".EncodeCommand(0, 0, 0, 0)."'
where no='$no' where no='$no'
"; ";
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
@@ -685,7 +685,7 @@ update nation set
{$turn}7={$turn}6,{$turn}6={$turn}5, {$turn}7={$turn}6,{$turn}6={$turn}5,
{$turn}5={$turn}4,{$turn}4={$turn}3, {$turn}5={$turn}4,{$turn}4={$turn}3,
{$turn}3={$turn}2,{$turn}2={$turn}1, {$turn}3={$turn}2,{$turn}2={$turn}1,
{$turn}1={$turn}0,{$turn}0='00000000000099' {$turn}1={$turn}0,{$turn}0='".EncodeCommand(0, 0, 0, 99)."'
where nation='{$general['nation']}' where nation='{$general['nation']}'
"; ";
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
@@ -772,19 +772,10 @@ parent.moveProcessing(<?=$commandtype?>, <?=Json::encode($turn)?>);
function EncodeCommand($fourth, $third, $double, $command) { function EncodeCommand($fourth, $third, $double, $command) {
$str = StringUtil::padStringAlignRight((string)$fourth, 4, "0"); return Json::encode($command, $double, $third, $fourth);
$str .= StringUtil::padStringAlignRight((string)$third, 4, "0");
$str .= StringUtil::padStringAlignRight((string)$double, 4, "0");
$str .= StringUtil::padStringAlignRight((string)$command, 2, "0");
return $str;
} }
function DecodeCommand($str) { function DecodeCommand($str) {
$command = []; return Json::decode($str);
$command[3] = (int)(substr($str, 0, 4));
$command[2] = (int)(substr($str, 4, 4));
$command[1] = (int)(substr($str, 8, 4));
$command[0] = (int)(substr($str, 12, 2));
return $command;
} }
+5 -3
View File
@@ -107,6 +107,8 @@ function SetCrew($no, $personal, $gold, $leader, $genType, $tech, $region, $city
} }
} }
switch($sel) { switch($sel) {
case 0: case 0:
$type = 0; //보병 $type = 0; //보병
@@ -181,7 +183,7 @@ function processAI($no) {
$general = MYDB_fetch_array($result); $general = MYDB_fetch_array($result);
// 입력된 턴이 있으면 그것 실행 // 입력된 턴이 있으면 그것 실행
if($general['turn0'] != "00000000000000") { if($general['turn0'] != EncodeCommand(0, 0, 0, 0)) {
return; return;
} }
@@ -824,10 +826,10 @@ function processAI($no) {
} }
switch($command) { switch($command) {
case "00000000000001": //내정 case EncodeCommand(0, 0, 0, 1): //내정
SetDevelop($genType, $general['no'], $general['city'], $nation['tech']); SetDevelop($genType, $general['no'], $general['city'], $nation['tech']);
return; return;
case "00000000000011": //징병 case EncodeCommand(0, 0, 0, 11): //징병
$query = "select region from city where nation='{$general['nation']}' order by rand() limit 0,1"; $query = "select region from city where nation='{$general['nation']}' order by rand() limit 0,1";
$result = MYDB_query($query, $connect) or Error("processAI16 ".MYDB_error($connect),""); $result = MYDB_query($query, $connect) or Error("processAI16 ".MYDB_error($connect),"");
$selRegion = MYDB_fetch_array($result); $selRegion = MYDB_fetch_array($result);
+62 -37
View File
@@ -6,48 +6,57 @@ class GameUnitConstBase{
} }
const T_CASTLE = 0;
const T_FOOTMAN = 1;
const T_ARCHER = 2;
const T_CAVALRY = 3;
const T_WIZARD = 4;
const T_SIEGE = 5;
const T_MISC = 6;
protected static $constID = null; protected static $constID = null;
protected static $constName = null; protected static $constName = null;
protected static $constCity = null; protected static $constCity = null;
protected static $constRegion = null; protected static $constRegion = null;
protected static $constType = null;
protected static $_buildData = [ protected static $_buildData = [
[ 0, '보병', 100, 150, 7, 10, 9, 9, 0, 0, true, ['표준적인 보병입니다.','보병은 방어특화입니다.']], [ 0, T_FOOTMAN, '보병', 100, 150, 7, 10, 9, 9, 0, 0, true, ['표준적인 보병입니다.','보병은 방어특화입니다.']],
[ 1, '청주병', 100, 200, 7, 10, 10, 11, 1, '중원', true, ['저렴하고 튼튼합니다.']], [ 1, T_FOOTMAN, '청주병', 100, 200, 7, 10, 10, 11, 1, '중원', true, ['저렴하고 튼튼합니다.']],
[ 2, '수병', 150, 150, 7, 10, 11, 10, 1, '오월', true, ['저렴하고 강력합니다.']], [ 2, T_FOOTMAN, '수병', 150, 150, 7, 10, 11, 10, 1, '오월', true, ['저렴하고 강력합니다.']],
[ 3, '자객병', 100, 150, 7, 20, 10, 10, 2, '저', true, ['은밀하고 날쌥니다.']], [ 3, T_FOOTMAN, '자객병', 100, 150, 7, 20, 10, 10, 2, '저', true, ['은밀하고 날쌥니다.']],
[ 4, '근위병', 150, 200, 7, 10, 12, 12, 2, '낙양', true, ['최강의 보병입니다.']], [ 4, T_FOOTMAN, '근위병', 150, 200, 7, 10, 12, 12, 2, '낙양', true, ['최강의 보병입니다.']],
[ 5, '등갑병', 100, 250, 7, 5, 13, 10, 1, '남중', true, ['등갑을 두른 보병입니다.']], [ 5, T_FOOTMAN, '등갑병', 100, 250, 7, 5, 13, 10, 1, '남중', true, ['등갑을 두른 보병입니다.']],
[10, '궁병', 100, 100, 7, 20, 10, 10, 0, 0, true, ['표준적인 궁병입니다.','궁병은 회피특화입니다.']], [10, T_ARCHER, '궁병', 100, 100, 7, 20, 10, 10, 0, 0, true, ['표준적인 궁병입니다.','궁병은 회피특화입니다.']],
[11, '궁기병', 100, 100, 8, 30, 11, 12, 1, '동이', true, ['말을 타고 잘 피합니다.']], [11, T_ARCHER, '궁기병', 100, 100, 8, 30, 11, 12, 1, '동이', true, ['말을 타고 잘 피합니다.']],
[12, '연노병', 150, 100, 8, 20, 12, 11, 1, '서촉', true, ['화살을 연사합니다.']], [12, T_ARCHER, '연노병', 150, 100, 8, 20, 12, 11, 1, '서촉', true, ['화살을 연사합니다.']],
[13, '강궁병', 150, 150, 7, 20, 13, 13, 2, '양양', true, ['강건한 궁병입니다.']], [13, T_ARCHER, '강궁병', 150, 150, 7, 20, 13, 13, 2, '양양', true, ['강건한 궁병입니다.']],
[14, '석궁병', 200, 100, 7, 20, 13, 13, 2, '건업', true, ['강력한 화살을 쏩니다.']], [14, T_ARCHER, '석궁병', 200, 100, 7, 20, 13, 13, 2, '건업', true, ['강력한 화살을 쏩니다.']],
[20, '기병', 150, 100, 7, 5, 11, 11, 0, 0, true, ['표준적인 기병입니다.','기병은 공격특화입니다.']], [20, T_CAVALRY, '기병', 150, 100, 7, 5, 11, 11, 0, 0, true, ['표준적인 기병입니다.','기병은 공격특화입니다.']],
[21, '백마병', 200, 100, 7, 5, 12, 13, 1, '하북', true, ['백마의 위용을 보여줍니다.']], [21, T_CAVALRY, '백마병', 200, 100, 7, 5, 12, 13, 1, '하북', true, ['백마의 위용을 보여줍니다.']],
[22, '중장기병', 150, 150, 7, 5, 13, 12, 1, '서북', true, ['갑주를 두른 기병입니다.']], [22, T_CAVALRY, '중장기병', 150, 150, 7, 5, 13, 12, 1, '서북', true, ['갑주를 두른 기병입니다.']],
[23, '돌격기병', 200, 100, 8, 5, 13, 11, 2,'흉노', true, ['저돌적으로 공격합니다.']], [23, T_CAVALRY, '돌격기병', 200, 100, 8, 5, 13, 11, 2,'흉노', true, ['저돌적으로 공격합니다.']],
[24, '철기병', 100, 200, 7, 5, 11, 13, 2, '강', true, ['철갑을 두른 기병입니다.']], [24, T_CAVALRY, '철기병', 100, 200, 7, 5, 11, 13, 2, '강', true, ['철갑을 두른 기병입니다.']],
[25, '수렵기병', 150, 100, 8, 15, 12, 12, 2, '산월', true, ['날쎄고 빠른 기병입니다.']], [25, T_CAVALRY, '수렵기병', 150, 100, 8, 15, 12, 12, 2, '산월', true, ['날쎄고 빠른 기병입니다.']],
[26, '맹수병', 250, 200, 6, 0, 16, 16, 2, '남만', true, ['어느 누구보다 강력합니다.']], [26, T_CAVALRY, '맹수병', 250, 200, 6, 0, 16, 16, 2, '남만', true, ['어느 누구보다 강력합니다.']],
[27, '호표기병', 200, 150, 7, 5, 14, 14, 2, '허창', true, ['정예 기병입니다.']], [27, T_CAVALRY, '호표기병', 200, 150, 7, 5, 14, 14, 2, '허창', true, ['정예 기병입니다.']],
[30, '귀병', 80, 80, 7, 5, 9, 9, 0, 0, true, ['계략을 사용하는 병종입니다.']], [30, T_WIZARD, '귀병', 80, 80, 7, 5, 9, 9, 0, 0, true, ['계략을 사용하는 병종입니다.']],
[31, '신귀병', 80, 80, 7, 20, 10, 10, 1,'초', true, ['신출귀몰한 귀병입니다.']], [31, T_WIZARD, '신귀병', 80, 80, 7, 20, 10, 10, 1,'초', true, ['신출귀몰한 귀병입니다.']],
[32, '백귀병', 80, 130, 7, 5, 9, 11, 2, '오환', true, ['저렴하고 튼튼합니다.']], [32, T_WIZARD, '백귀병', 80, 130, 7, 5, 9, 11, 2, '오환', true, ['저렴하고 튼튼합니다.']],
[33, '흑귀병', 130, 80, 7, 5, 11, 9, 2, '왜', true, ['저렴하고 강력합니다.']], [33, T_WIZARD, '흑귀병', 130, 80, 7, 5, 11, 9, 2, '왜', true, ['저렴하고 강력합니다.']],
[34, '악귀병', 130, 130, 7, 0, 12, 12, 2, '장안', true, ['백병전에도 능숙합니다.']], [34, T_WIZARD, '악귀병', 130, 130, 7, 0, 12, 12, 2, '장안', true, ['백병전에도 능숙합니다.']],
[35, '남귀병', 60, 60, 7, 10, 8, 8, 0, 1000, false, ['전투를 포기하고 계략에 몰두합니다.']], [35, T_WIZARD, '남귀병', 60, 60, 7, 10, 8, 8, 0, 1000, false, ['전투를 포기하고 계략에 몰두합니다.']],
[36, '황귀병', 110, 110, 7, 0, 13, 10, 2, '낙양', true, ['고도로 훈련된 귀병입니다.']], [36, T_WIZARD, '황귀병', 110, 110, 7, 0, 13, 10, 2, '낙양', true, ['고도로 훈련된 귀병입니다.']],
[37, '천귀병', 80, 130, 7, 15, 11, 12, 2, '성도', true, ['갑주를 두른 귀병입니다.']], [37, T_WIZARD, '천귀병', 80, 130, 7, 15, 11, 12, 2, '성도', true, ['갑주를 두른 귀병입니다.']],
[38, '마귀병', 130, 80, 7, 15, 12, 11, 2, '업', true, ['날카로운 무기를 가진 귀병입니다.']], [38, T_WIZARD, '마귀병', 130, 80, 7, 15, 12, 11, 2, '업', true, ['날카로운 무기를 가진 귀병입니다.']],
[40, '정란', 100, 100, 6, 0, 15, 5, 0, 0, false, ['높은 구조물 위에서 공격합니다.']], [40, T_SIEGE, '정란', 100, 100, 6, 0, 15, 5, 0, 0, false, ['높은 구조물 위에서 공격합니다.']],
[41, '충차', 150, 100, 6, 0, 20, 5, 0, 1000, false, ['엄청난 위력으로 성벽을 부수어버립니다.']], [41, T_SIEGE, '충차', 150, 100, 6, 0, 20, 5, 0, 1000, false, ['엄청난 위력으로 성벽을 부수어버립니다.']],
[42, '벽력거', 200, 100, 6, 0, 25, 5, 2, '업', true, ['상대에게 돌덩이를 날립니다.']], [42, T_SIEGE, '벽력거', 200, 100, 6, 0, 25, 5, 2, '업', true, ['상대에게 돌덩이를 날립니다.']],
[43, '목우', 50, 200, 5, 0, 30, 5, 2, '성도', true, ['상대를 저지하는 특수병기입니다.']] [43, T_SIEGE, '목우', 50, 200, 5, 0, 30, 5, 2, '성도', true, ['상대를 저지하는 특수병기입니다.']]
]; ];
/** /**
@@ -68,19 +77,27 @@ class GameUnitConstBase{
return static::$constName[$name]; return static::$constName[$name];
} }
public static function byCity(int $city): GameUnitDetail{ public static function byCity(int $city): array{
static::_generate(); static::_generate();
return static::$constCity[$city]; return static::$constCity[$city];
} }
public static function byRegion(int $region): GameUnitDetail{ public static function byRegion(int $region): array{
static::_generate(); static::_generate();
return static::$constRegion[$region]; return static::$constRegion[$region];
} }
public static function byType(int $type): array{
if(!key_exists($type, static::$constType)){
return [];
}
return static::$constType[$type];
}
protected static function _generate(){ protected static function _generate(){
if(static::$constID || static::$constName || static::$constCity || static::$constRegion){ if(static::$constID || static::$constName || static::$constCity || static::$constRegion || static::$constType){
return; return;
} }
@@ -88,10 +105,12 @@ class GameUnitConstBase{
$constName = []; $constName = [];
$constCity = []; $constCity = [];
$constRegion = []; $constRegion = [];
$constType = [];
foreach(static::$_buildData as $rawUnit){ foreach(static::$_buildData as $rawUnit){
list( [
$id, $id,
$armType,
$name, $name,
$attack, $attack,
$defence, $defence,
@@ -103,7 +122,7 @@ class GameUnitConstBase{
$recruitCondition, $recruitCondition,
$recruitFirst, $recruitFirst,
$info $info
) = $rawUnit; ] = $rawUnit;
//0인 경우는 기술치이다. //0인 경우는 기술치이다.
if(!$recruitFirst){ if(!$recruitFirst){
@@ -123,6 +142,7 @@ class GameUnitConstBase{
$unit = new GameUnitDetail( $unit = new GameUnitDetail(
$id, $id,
$armType,
$name, $name,
$attack, $attack,
$defence, $defence,
@@ -138,6 +158,11 @@ class GameUnitConstBase{
$constID[$id] = $unit; $constID[$id] = $unit;
$constName[$name] = $unit; $constName[$name] = $unit;
if(!key_exists($armType, $constType)){
$constType[$armType] = [];
}
$constType[$armType][] = $unit;
if($recruitType == 1){ if($recruitType == 1){
if(!key_exists($recruitCondition, $constRegion)){ if(!key_exists($recruitCondition, $constRegion)){
$constRegion[$recruitCondition] = []; $constRegion[$recruitCondition] = [];
+3
View File
@@ -3,6 +3,7 @@ namespace sammo;
class GameUnitDetail{ class GameUnitDetail{
public $id; public $id;
public $armType;
public $name; public $name;
public $attack; public $attack;
public $defence; public $defence;
@@ -17,6 +18,7 @@ class GameUnitDetail{
public function __construct( public function __construct(
int $id, int $id,
int $armType,
string $name, string $name,
int $attack, int $attack,
int $defence, int $defence,
@@ -30,6 +32,7 @@ class GameUnitDetail{
array $info array $info
){ ){
$this->name = $name; $this->name = $name;
$this->armType = $armType;
$this->attack = $attack; $this->attack = $attack;
$this->defence = $defence; $this->defence = $defence;
$this->speed = $speed; $this->speed = $speed;
+120 -120
View File
@@ -124,30 +124,30 @@ CREATE TABLE `general` (
`betgold` INT(8) NULL DEFAULT '0', `betgold` INT(8) NULL DEFAULT '0',
`betwingold` INT(8) NULL DEFAULT '0', `betwingold` INT(8) NULL DEFAULT '0',
`term` INT(4) NULL DEFAULT '0', `term` INT(4) NULL DEFAULT '0',
`turn0` CHAR(14) NULL DEFAULT '00000000000000', `turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn1` CHAR(14) NULL DEFAULT '00000000000000', `turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn2` CHAR(14) NULL DEFAULT '00000000000000', `turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn3` CHAR(14) NULL DEFAULT '00000000000000', `turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn4` CHAR(14) NULL DEFAULT '00000000000000', `turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn5` CHAR(14) NULL DEFAULT '00000000000000', `turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn6` CHAR(14) NULL DEFAULT '00000000000000', `turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn7` CHAR(14) NULL DEFAULT '00000000000000', `turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn8` CHAR(14) NULL DEFAULT '00000000000000', `turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn9` CHAR(14) NULL DEFAULT '00000000000000', `turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn10` CHAR(14) NULL DEFAULT '00000000000000', `turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn11` CHAR(14) NULL DEFAULT '00000000000000', `turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn12` CHAR(14) NULL DEFAULT '00000000000000', `turn12` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn13` CHAR(14) NULL DEFAULT '00000000000000', `turn13` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn14` CHAR(14) NULL DEFAULT '00000000000000', `turn14` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn15` CHAR(14) NULL DEFAULT '00000000000000', `turn15` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn16` CHAR(14) NULL DEFAULT '00000000000000', `turn16` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn17` CHAR(14) NULL DEFAULT '00000000000000', `turn17` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn18` CHAR(14) NULL DEFAULT '00000000000000', `turn18` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn19` CHAR(14) NULL DEFAULT '00000000000000', `turn19` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn20` CHAR(14) NULL DEFAULT '00000000000000', `turn20` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn21` CHAR(14) NULL DEFAULT '00000000000000', `turn21` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn22` CHAR(14) NULL DEFAULT '00000000000000', `turn22` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`turn23` CHAR(14) NULL DEFAULT '00000000000000', `turn23` VARCHAR(30) NULL DEFAULT '[0,0,0,0]',
`recturn` CHAR(14) NULL DEFAULT '', `recturn` CHAR(14) NULL DEFAULT '',
`resturn` CHAR(14) NULL DEFAULT '', `resturn` CHAR(14) NULL DEFAULT '',
PRIMARY KEY (`no`), PRIMARY KEY (`no`),
@@ -330,106 +330,106 @@ CREATE TABLE `nation` (
`l11term` INT(4) NULL DEFAULT '0', `l11term` INT(4) NULL DEFAULT '0',
`l10term` INT(4) NULL DEFAULT '0', `l10term` INT(4) NULL DEFAULT '0',
`l9term` INT(4) NULL DEFAULT '0', `l9term` INT(4) NULL DEFAULT '0',
`l12turn0` CHAR(14) NULL DEFAULT '00000000000099', `l12turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn0` CHAR(14) NULL DEFAULT '00000000000099', `l11turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn0` CHAR(14) NULL DEFAULT '00000000000099', `l10turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn0` CHAR(14) NULL DEFAULT '00000000000099', `l9turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn1` CHAR(14) NULL DEFAULT '00000000000099', `l12turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn1` CHAR(14) NULL DEFAULT '00000000000099', `l11turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn1` CHAR(14) NULL DEFAULT '00000000000099', `l10turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn1` CHAR(14) NULL DEFAULT '00000000000099', `l9turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn2` CHAR(14) NULL DEFAULT '00000000000099', `l12turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn2` CHAR(14) NULL DEFAULT '00000000000099', `l11turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn2` CHAR(14) NULL DEFAULT '00000000000099', `l10turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn2` CHAR(14) NULL DEFAULT '00000000000099', `l9turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn3` CHAR(14) NULL DEFAULT '00000000000099', `l12turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn3` CHAR(14) NULL DEFAULT '00000000000099', `l11turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn3` CHAR(14) NULL DEFAULT '00000000000099', `l10turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn3` CHAR(14) NULL DEFAULT '00000000000099', `l9turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn4` CHAR(14) NULL DEFAULT '00000000000099', `l12turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn4` CHAR(14) NULL DEFAULT '00000000000099', `l11turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn4` CHAR(14) NULL DEFAULT '00000000000099', `l10turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn4` CHAR(14) NULL DEFAULT '00000000000099', `l9turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn5` CHAR(14) NULL DEFAULT '00000000000099', `l12turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn5` CHAR(14) NULL DEFAULT '00000000000099', `l11turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn5` CHAR(14) NULL DEFAULT '00000000000099', `l10turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn5` CHAR(14) NULL DEFAULT '00000000000099', `l9turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn6` CHAR(14) NULL DEFAULT '00000000000099', `l12turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn6` CHAR(14) NULL DEFAULT '00000000000099', `l11turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn6` CHAR(14) NULL DEFAULT '00000000000099', `l10turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn6` CHAR(14) NULL DEFAULT '00000000000099', `l9turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn7` CHAR(14) NULL DEFAULT '00000000000099', `l12turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn7` CHAR(14) NULL DEFAULT '00000000000099', `l11turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn7` CHAR(14) NULL DEFAULT '00000000000099', `l10turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn7` CHAR(14) NULL DEFAULT '00000000000099', `l9turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn8` CHAR(14) NULL DEFAULT '00000000000099', `l12turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn8` CHAR(14) NULL DEFAULT '00000000000099', `l11turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn8` CHAR(14) NULL DEFAULT '00000000000099', `l10turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn8` CHAR(14) NULL DEFAULT '00000000000099', `l9turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn9` CHAR(14) NULL DEFAULT '00000000000099', `l12turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn9` CHAR(14) NULL DEFAULT '00000000000099', `l11turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn9` CHAR(14) NULL DEFAULT '00000000000099', `l10turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn9` CHAR(14) NULL DEFAULT '00000000000099', `l9turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn10` CHAR(14) NULL DEFAULT '00000000000099', `l12turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn10` CHAR(14) NULL DEFAULT '00000000000099', `l11turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn10` CHAR(14) NULL DEFAULT '00000000000099', `l10turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn10` CHAR(14) NULL DEFAULT '00000000000099', `l9turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l12turn11` CHAR(14) NULL DEFAULT '00000000000099', `l12turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l11turn11` CHAR(14) NULL DEFAULT '00000000000099', `l11turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l10turn11` CHAR(14) NULL DEFAULT '00000000000099', `l10turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l9turn11` CHAR(14) NULL DEFAULT '00000000000099', `l9turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8term` INT(4) NULL DEFAULT '0', `l8term` INT(4) NULL DEFAULT '0',
`l7term` INT(4) NULL DEFAULT '0', `l7term` INT(4) NULL DEFAULT '0',
`l6term` INT(4) NULL DEFAULT '0', `l6term` INT(4) NULL DEFAULT '0',
`l5term` INT(4) NULL DEFAULT '0', `l5term` INT(4) NULL DEFAULT '0',
`l8turn0` CHAR(14) NULL DEFAULT '00000000000099', `l8turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn0` CHAR(14) NULL DEFAULT '00000000000099', `l7turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn0` CHAR(14) NULL DEFAULT '00000000000099', `l6turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn0` CHAR(14) NULL DEFAULT '00000000000099', `l5turn0` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn1` CHAR(14) NULL DEFAULT '00000000000099', `l8turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn1` CHAR(14) NULL DEFAULT '00000000000099', `l7turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn1` CHAR(14) NULL DEFAULT '00000000000099', `l6turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn1` CHAR(14) NULL DEFAULT '00000000000099', `l5turn1` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn2` CHAR(14) NULL DEFAULT '00000000000099', `l8turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn2` CHAR(14) NULL DEFAULT '00000000000099', `l7turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn2` CHAR(14) NULL DEFAULT '00000000000099', `l6turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn2` CHAR(14) NULL DEFAULT '00000000000099', `l5turn2` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn3` CHAR(14) NULL DEFAULT '00000000000099', `l8turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn3` CHAR(14) NULL DEFAULT '00000000000099', `l7turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn3` CHAR(14) NULL DEFAULT '00000000000099', `l6turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn3` CHAR(14) NULL DEFAULT '00000000000099', `l5turn3` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn4` CHAR(14) NULL DEFAULT '00000000000099', `l8turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn4` CHAR(14) NULL DEFAULT '00000000000099', `l7turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn4` CHAR(14) NULL DEFAULT '00000000000099', `l6turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn4` CHAR(14) NULL DEFAULT '00000000000099', `l5turn4` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn5` CHAR(14) NULL DEFAULT '00000000000099', `l8turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn5` CHAR(14) NULL DEFAULT '00000000000099', `l7turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn5` CHAR(14) NULL DEFAULT '00000000000099', `l6turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn5` CHAR(14) NULL DEFAULT '00000000000099', `l5turn5` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn6` CHAR(14) NULL DEFAULT '00000000000099', `l8turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn6` CHAR(14) NULL DEFAULT '00000000000099', `l7turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn6` CHAR(14) NULL DEFAULT '00000000000099', `l6turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn6` CHAR(14) NULL DEFAULT '00000000000099', `l5turn6` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn7` CHAR(14) NULL DEFAULT '00000000000099', `l8turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn7` CHAR(14) NULL DEFAULT '00000000000099', `l7turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn7` CHAR(14) NULL DEFAULT '00000000000099', `l6turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn7` CHAR(14) NULL DEFAULT '00000000000099', `l5turn7` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn8` CHAR(14) NULL DEFAULT '00000000000099', `l8turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn8` CHAR(14) NULL DEFAULT '00000000000099', `l7turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn8` CHAR(14) NULL DEFAULT '00000000000099', `l6turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn8` CHAR(14) NULL DEFAULT '00000000000099', `l5turn8` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn9` CHAR(14) NULL DEFAULT '00000000000099', `l8turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn9` CHAR(14) NULL DEFAULT '00000000000099', `l7turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn9` CHAR(14) NULL DEFAULT '00000000000099', `l6turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn9` CHAR(14) NULL DEFAULT '00000000000099', `l5turn9` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn10` CHAR(14) NULL DEFAULT '00000000000099', `l8turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn10` CHAR(14) NULL DEFAULT '00000000000099', `l7turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn10` CHAR(14) NULL DEFAULT '00000000000099', `l6turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn10` CHAR(14) NULL DEFAULT '00000000000099', `l5turn10` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l8turn11` CHAR(14) NULL DEFAULT '00000000000099', `l8turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l7turn11` CHAR(14) NULL DEFAULT '00000000000099', `l7turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l6turn11` CHAR(14) NULL DEFAULT '00000000000099', `l6turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`l5turn11` CHAR(14) NULL DEFAULT '00000000000099', `l5turn11` VARCHAR(30) NULL DEFAULT '[0,0,0,99]',
`aux` TEXT NOT NULL DEFAULT '{}', `aux` TEXT NOT NULL DEFAULT '{}',
PRIMARY KEY (`nation`) PRIMARY KEY (`nation`)
) )