func.php, func_rpcoess.php를 용도에 따라 분리
This commit is contained in:
+2
-446
@@ -4,6 +4,8 @@ require_once(__dir__.'/d_setting/conf.php');
|
||||
require_once 'process_war.php';
|
||||
require_once 'func_gamerule.php';
|
||||
require_once 'func_process.php';
|
||||
require_once 'func_process_trick.php';
|
||||
require_once 'func_process_chief.php';
|
||||
require_once 'func_npc.php';
|
||||
require_once 'func_tournament.php';
|
||||
require_once 'func_auction.php';
|
||||
@@ -257,452 +259,6 @@ function getRandGenName() {
|
||||
}
|
||||
|
||||
|
||||
function getTurn($connect, $general, $type, $font=1) {
|
||||
$turn[0] = $general["turn0"];
|
||||
|
||||
if($type >= 1) {
|
||||
$turn[1] = $general["turn1"];
|
||||
$turn[2] = $general["turn2"];
|
||||
$turn[3] = $general["turn3"];
|
||||
$turn[4] = $general["turn4"];
|
||||
$turn[5] = $general["turn5"];
|
||||
}
|
||||
if($type >= 2) {
|
||||
$turn[6] = $general["turn6"];
|
||||
$turn[7] = $general["turn7"];
|
||||
$turn[8] = $general["turn8"];
|
||||
$turn[9] = $general["turn9"];
|
||||
$turn[10] = $general["turn10"];
|
||||
$turn[11] = $general["turn11"];
|
||||
$turn[12] = $general["turn12"];
|
||||
$turn[13] = $general["turn13"];
|
||||
$turn[14] = $general["turn14"];
|
||||
$turn[15] = $general["turn15"];
|
||||
$turn[16] = $general["turn16"];
|
||||
$turn[17] = $general["turn17"];
|
||||
$turn[18] = $general["turn18"];
|
||||
$turn[19] = $general["turn19"];
|
||||
$turn[20] = $general["turn20"];
|
||||
$turn[21] = $general["turn21"];
|
||||
$turn[22] = $general["turn22"];
|
||||
$turn[23] = $general["turn23"];
|
||||
}
|
||||
|
||||
if($type == 0) { $count = 1; }
|
||||
elseif($type == 1) { $count = 5; }
|
||||
elseif($type == 2) { $count = 24; }
|
||||
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$command = DecodeCommand($turn[$i]);
|
||||
|
||||
switch($command[0]) {
|
||||
case 0: $str[$i] = "휴식"; break; //휴식
|
||||
case 1: $str[$i] = "농지 개간"; break; //농업
|
||||
case 2: $str[$i] = "상업 투자"; break; //상업
|
||||
case 3: $str[$i] = "기술 연구"; break; //기술
|
||||
case 4: $str[$i] = "주민 선정"; break; //선정
|
||||
case 5: $str[$i] = "수비 강화"; break; //수비
|
||||
case 6: $str[$i] = "성벽 보수"; break; //성벽
|
||||
case 7: $str[$i] = "정착 장려"; break; //정착 장려
|
||||
case 8: $str[$i] = "치안 강화"; break; //치안
|
||||
case 9: $str[$i] = "물자 조달"; break; //조달
|
||||
|
||||
case 11: //징병
|
||||
$third = getTypename($command[2]);
|
||||
$double = $command[1];
|
||||
$str[$i] = "【{$third}】 {$double}00명 징병";
|
||||
break;
|
||||
case 12: //모병
|
||||
$third = getTypename($command[2]);
|
||||
$double = $command[1];
|
||||
$str[$i] = "【{$third}】 {$double}00명 모병";
|
||||
break;
|
||||
case 13: //훈련
|
||||
$str[$i] = "훈련";
|
||||
break;
|
||||
case 14: //사기진작
|
||||
$str[$i] = "사기진작";
|
||||
break;
|
||||
case 15: //전투태세
|
||||
$str[$i] = "전투태세";
|
||||
break;
|
||||
case 16: //전쟁
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 출병";
|
||||
break;
|
||||
case 17: //소집해제
|
||||
$str[$i] = "소집 해제";
|
||||
break;
|
||||
|
||||
case 21: //이동
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 이동";
|
||||
break;
|
||||
case 22: //등용
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$double'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$str[$i] = "【{$general['name']}】(을)를 등용";
|
||||
break;
|
||||
case 25: //임관
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
if(!$nation['name']) { $nation['name'] = '????'; }
|
||||
|
||||
$str[$i] = "【{$nation['name']}】(으)로 임관";
|
||||
break;
|
||||
case 26: //집합
|
||||
$str[$i] = "집합";
|
||||
break;
|
||||
case 28: //귀환
|
||||
$str[$i] = "담당 도시로 귀환";
|
||||
break;
|
||||
case 29: //인재탐색
|
||||
$str[$i] = "인재 탐색";
|
||||
break;
|
||||
case 30: //강행
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 강행";
|
||||
break;
|
||||
|
||||
case 31: //첩보
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 첩보 실행";
|
||||
break;
|
||||
case 32: //화계
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 화계 실행";
|
||||
break;
|
||||
case 33: //탈취
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 탈취 실행";
|
||||
break;
|
||||
case 34: //파괴
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 파괴 실행";
|
||||
break;
|
||||
case 35: //선동
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 선동 실행";
|
||||
break;
|
||||
case 36: //기습
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 기습 실행";
|
||||
break;
|
||||
|
||||
case 41: //단련
|
||||
$str[$i] = "숙련도를 단련";
|
||||
break;
|
||||
case 42: //견문
|
||||
$str[$i] = "견문";
|
||||
break;
|
||||
case 43: //증여
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
if($fourth == 1) { $str[$i] = "【{$general['name']}】에게 금 {$double}00을 증여"; }
|
||||
else { $str[$i] = "【{$general['name']}】에게 쌀 {$double}00을 증여"; }
|
||||
break;
|
||||
case 44: //헌납
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
if($third == 1) { $str[$i] = "금 {$double}00을 헌납"; }
|
||||
else { $str[$i] = "쌀 {$double}00을 헌납"; }
|
||||
break;
|
||||
case 45: //하야
|
||||
$str[$i] = "하야";
|
||||
break;
|
||||
case 46: //건국
|
||||
$query = "select makenation from general where no='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$str[$i] = "【{$general['makenation']}】(을)를 건국";
|
||||
break;
|
||||
case 47: //방랑
|
||||
$str[$i] = "방랑";
|
||||
break;
|
||||
case 48: //장비 구입
|
||||
$double = $command[1];
|
||||
if($double == 0) {
|
||||
$str[$i] = "무기를 판매";
|
||||
} elseif($double == 100) {
|
||||
$str[$i] = "서적을 판매";
|
||||
} elseif($double == 200) {
|
||||
$str[$i] = "명마를 판매";
|
||||
} elseif($double == 300) {
|
||||
$str[$i] = "도구를 판매";
|
||||
} elseif($double < 100) {
|
||||
$str[$i] = "【".getWeapName($double)."】(을)를 구입";
|
||||
} elseif($double < 200) {
|
||||
$str[$i] = "【".getBookName($double-100)."】(을)를 구입";
|
||||
} elseif($double < 300) {
|
||||
$str[$i] = "【".getHorseName($double-200)."】(을)를 구입";
|
||||
} elseif($double < 400) {
|
||||
$str[$i] = "【".getItemName($double-300)."】(을)를 구입";
|
||||
}
|
||||
break;
|
||||
case 49: //군량 매매
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
if($third == 1) { $str[$i] = "군량 {$double}00을 판매"; }
|
||||
else { $str[$i] = "군량 {$double}00을 구입"; }
|
||||
break;
|
||||
case 50: //요양
|
||||
$str[$i] = "요양";
|
||||
break;
|
||||
|
||||
case 54: //선양
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$double'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$str[$i] = "【{$general['name']}】에게 선양";
|
||||
break;
|
||||
case 55: //거병
|
||||
$str[$i] = "방랑군 결성";
|
||||
break;
|
||||
case 56: //해산
|
||||
$str[$i] = "방랑군 해산";
|
||||
break;
|
||||
case 57: //모반 시도
|
||||
$str[$i] = "모반 시도";
|
||||
break;
|
||||
|
||||
default:
|
||||
$str[$i] = "????";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if($font == 1) {
|
||||
for($i=0; $i < count($str); $i++) {
|
||||
$str[$i] = getFont($str[$i]);
|
||||
}
|
||||
}
|
||||
return $str;
|
||||
}
|
||||
|
||||
function getCoreTurn($connect, $nation, $level) {
|
||||
$turn[0] = $nation["l{$level}turn0"];
|
||||
$turn[1] = $nation["l{$level}turn1"];
|
||||
$turn[2] = $nation["l{$level}turn2"];
|
||||
$turn[3] = $nation["l{$level}turn3"];
|
||||
$turn[4] = $nation["l{$level}turn4"];
|
||||
$turn[5] = $nation["l{$level}turn5"];
|
||||
$turn[6] = $nation["l{$level}turn6"];
|
||||
$turn[7] = $nation["l{$level}turn7"];
|
||||
$turn[8] = $nation["l{$level}turn8"];
|
||||
$turn[9] = $nation["l{$level}turn9"];
|
||||
$turn[10] = $nation["l{$level}turn10"];
|
||||
$turn[11] = $nation["l{$level}turn11"];
|
||||
|
||||
$count = 12;
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$command = DecodeCommand($turn[$i]);
|
||||
|
||||
switch($command[0]) {
|
||||
case 99: //휴식
|
||||
$str[$i] = "휴식";
|
||||
break;
|
||||
case 23: //포상
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
if($fourth == 1) { $str[$i] = "【{$general['name']}】에게 금 {$double}00을 포상"; }
|
||||
else { $str[$i] = "【{$general['name']}】에게 쌀 {$double}00을 포상"; }
|
||||
break;
|
||||
case 24: //몰수
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
if($fourth == 1) { $str[$i] = "【{$general['name']}】에게서 금 {$double}00을 몰수"; }
|
||||
else { $str[$i] = "【{$general['name']}】에게서 쌀 {$double}00을 몰수"; }
|
||||
break;
|
||||
case 27: //발령
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
$city = getCity($connect, $double, "name");
|
||||
|
||||
$str[$i] = "【{$general['name']}】【{$city['name']}】(으)로 발령";
|
||||
break;
|
||||
case 51: //항복권고
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에게 항복 권고";
|
||||
break;
|
||||
case 52: //원조
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$fourth *= 1000;
|
||||
$third *= 1000;
|
||||
$str[$i] = "【{$nation['name']}】에게 국고 {$third} 병량 {$fourth} 원조";
|
||||
break;
|
||||
case 53: //통합제의
|
||||
$query = "select makenation from general where level='$level' and nation='{$nation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 【{$general['makenation']}】(으)로 통합 제의";
|
||||
break;
|
||||
case 61: //불가침제의
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 {$third}년 불가침 제의";
|
||||
break;
|
||||
case 62: //선전 포고
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 선전 포고";
|
||||
break;
|
||||
case 63: //종전 제의
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 종전 제의";
|
||||
break;
|
||||
case 64: //파기 제의
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 파기 제의";
|
||||
break;
|
||||
case 65: //초토
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 초토화";
|
||||
break;
|
||||
case 66: //천도
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 천도";
|
||||
break;
|
||||
case 67: //증축
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 증축";
|
||||
break;
|
||||
case 68: //감축
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 감축";
|
||||
break;
|
||||
case 71: //필사즉생
|
||||
$str[$i] = "필사즉생";
|
||||
break;
|
||||
case 72: //백성동원
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 백성동원";
|
||||
break;
|
||||
case 73: //수몰
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 수몰";
|
||||
break;
|
||||
case 74: //허보
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 허보";
|
||||
break;
|
||||
case 75: //피장파장
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 피장파장";
|
||||
break;
|
||||
case 76: //의병모집
|
||||
$str[$i] = "의병모집";
|
||||
break;
|
||||
case 77: //이호경식
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 이호경식";
|
||||
break;
|
||||
case 78: //급습
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 급습";
|
||||
break;
|
||||
case 81: //국기변경
|
||||
$double = $command[1];
|
||||
$colors = GetNationColors();
|
||||
$color = $colors[$double];
|
||||
|
||||
$str[$i] = "【<font color={$color}>국기</font>】를 변경";
|
||||
break;
|
||||
default:
|
||||
$str[$i] = "????";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for($i=0; $i < count($str); $i++) {
|
||||
$str[$i] = getFont($str[$i]);
|
||||
}
|
||||
|
||||
return $str;
|
||||
}
|
||||
|
||||
|
||||
function cityInfo($connect) {
|
||||
global $_basecolor, $_basecolor2, $images;
|
||||
|
||||
@@ -1,6 +1,453 @@
|
||||
<?php
|
||||
|
||||
|
||||
function getTurn($connect, $general, $type, $font=1) {
|
||||
$turn[0] = $general["turn0"];
|
||||
|
||||
if($type >= 1) {
|
||||
$turn[1] = $general["turn1"];
|
||||
$turn[2] = $general["turn2"];
|
||||
$turn[3] = $general["turn3"];
|
||||
$turn[4] = $general["turn4"];
|
||||
$turn[5] = $general["turn5"];
|
||||
}
|
||||
if($type >= 2) {
|
||||
$turn[6] = $general["turn6"];
|
||||
$turn[7] = $general["turn7"];
|
||||
$turn[8] = $general["turn8"];
|
||||
$turn[9] = $general["turn9"];
|
||||
$turn[10] = $general["turn10"];
|
||||
$turn[11] = $general["turn11"];
|
||||
$turn[12] = $general["turn12"];
|
||||
$turn[13] = $general["turn13"];
|
||||
$turn[14] = $general["turn14"];
|
||||
$turn[15] = $general["turn15"];
|
||||
$turn[16] = $general["turn16"];
|
||||
$turn[17] = $general["turn17"];
|
||||
$turn[18] = $general["turn18"];
|
||||
$turn[19] = $general["turn19"];
|
||||
$turn[20] = $general["turn20"];
|
||||
$turn[21] = $general["turn21"];
|
||||
$turn[22] = $general["turn22"];
|
||||
$turn[23] = $general["turn23"];
|
||||
}
|
||||
|
||||
if($type == 0) { $count = 1; }
|
||||
elseif($type == 1) { $count = 5; }
|
||||
elseif($type == 2) { $count = 24; }
|
||||
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$command = DecodeCommand($turn[$i]);
|
||||
|
||||
switch($command[0]) {
|
||||
case 0: $str[$i] = "휴식"; break; //휴식
|
||||
case 1: $str[$i] = "농지 개간"; break; //농업
|
||||
case 2: $str[$i] = "상업 투자"; break; //상업
|
||||
case 3: $str[$i] = "기술 연구"; break; //기술
|
||||
case 4: $str[$i] = "주민 선정"; break; //선정
|
||||
case 5: $str[$i] = "수비 강화"; break; //수비
|
||||
case 6: $str[$i] = "성벽 보수"; break; //성벽
|
||||
case 7: $str[$i] = "정착 장려"; break; //정착 장려
|
||||
case 8: $str[$i] = "치안 강화"; break; //치안
|
||||
case 9: $str[$i] = "물자 조달"; break; //조달
|
||||
|
||||
case 11: //징병
|
||||
$third = getTypename($command[2]);
|
||||
$double = $command[1];
|
||||
$str[$i] = "【{$third}】 {$double}00명 징병";
|
||||
break;
|
||||
case 12: //모병
|
||||
$third = getTypename($command[2]);
|
||||
$double = $command[1];
|
||||
$str[$i] = "【{$third}】 {$double}00명 모병";
|
||||
break;
|
||||
case 13: //훈련
|
||||
$str[$i] = "훈련";
|
||||
break;
|
||||
case 14: //사기진작
|
||||
$str[$i] = "사기진작";
|
||||
break;
|
||||
case 15: //전투태세
|
||||
$str[$i] = "전투태세";
|
||||
break;
|
||||
case 16: //전쟁
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 출병";
|
||||
break;
|
||||
case 17: //소집해제
|
||||
$str[$i] = "소집 해제";
|
||||
break;
|
||||
|
||||
case 21: //이동
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 이동";
|
||||
break;
|
||||
case 22: //등용
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$double'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$str[$i] = "【{$general['name']}】(을)를 등용";
|
||||
break;
|
||||
case 25: //임관
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
if(!$nation['name']) { $nation['name'] = '????'; }
|
||||
|
||||
$str[$i] = "【{$nation['name']}】(으)로 임관";
|
||||
break;
|
||||
case 26: //집합
|
||||
$str[$i] = "집합";
|
||||
break;
|
||||
case 28: //귀환
|
||||
$str[$i] = "담당 도시로 귀환";
|
||||
break;
|
||||
case 29: //인재탐색
|
||||
$str[$i] = "인재 탐색";
|
||||
break;
|
||||
case 30: //강행
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 강행";
|
||||
break;
|
||||
|
||||
case 31: //첩보
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 첩보 실행";
|
||||
break;
|
||||
case 32: //화계
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 화계 실행";
|
||||
break;
|
||||
case 33: //탈취
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 탈취 실행";
|
||||
break;
|
||||
case 34: //파괴
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 파괴 실행";
|
||||
break;
|
||||
case 35: //선동
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 선동 실행";
|
||||
break;
|
||||
case 36: //기습
|
||||
$double = $command[1];
|
||||
$city= getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 기습 실행";
|
||||
break;
|
||||
|
||||
case 41: //단련
|
||||
$str[$i] = "숙련도를 단련";
|
||||
break;
|
||||
case 42: //견문
|
||||
$str[$i] = "견문";
|
||||
break;
|
||||
case 43: //증여
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
if($fourth == 1) { $str[$i] = "【{$general['name']}】에게 금 {$double}00을 증여"; }
|
||||
else { $str[$i] = "【{$general['name']}】에게 쌀 {$double}00을 증여"; }
|
||||
break;
|
||||
case 44: //헌납
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
if($third == 1) { $str[$i] = "금 {$double}00을 헌납"; }
|
||||
else { $str[$i] = "쌀 {$double}00을 헌납"; }
|
||||
break;
|
||||
case 45: //하야
|
||||
$str[$i] = "하야";
|
||||
break;
|
||||
case 46: //건국
|
||||
$query = "select makenation from general where no='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$str[$i] = "【{$general['makenation']}】(을)를 건국";
|
||||
break;
|
||||
case 47: //방랑
|
||||
$str[$i] = "방랑";
|
||||
break;
|
||||
case 48: //장비 구입
|
||||
$double = $command[1];
|
||||
if($double == 0) {
|
||||
$str[$i] = "무기를 판매";
|
||||
} elseif($double == 100) {
|
||||
$str[$i] = "서적을 판매";
|
||||
} elseif($double == 200) {
|
||||
$str[$i] = "명마를 판매";
|
||||
} elseif($double == 300) {
|
||||
$str[$i] = "도구를 판매";
|
||||
} elseif($double < 100) {
|
||||
$str[$i] = "【".getWeapName($double)."】(을)를 구입";
|
||||
} elseif($double < 200) {
|
||||
$str[$i] = "【".getBookName($double-100)."】(을)를 구입";
|
||||
} elseif($double < 300) {
|
||||
$str[$i] = "【".getHorseName($double-200)."】(을)를 구입";
|
||||
} elseif($double < 400) {
|
||||
$str[$i] = "【".getItemName($double-300)."】(을)를 구입";
|
||||
}
|
||||
break;
|
||||
case 49: //군량 매매
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
if($third == 1) { $str[$i] = "군량 {$double}00을 판매"; }
|
||||
else { $str[$i] = "군량 {$double}00을 구입"; }
|
||||
break;
|
||||
case 50: //요양
|
||||
$str[$i] = "요양";
|
||||
break;
|
||||
|
||||
case 54: //선양
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$double'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$str[$i] = "【{$general['name']}】에게 선양";
|
||||
break;
|
||||
case 55: //거병
|
||||
$str[$i] = "방랑군 결성";
|
||||
break;
|
||||
case 56: //해산
|
||||
$str[$i] = "방랑군 해산";
|
||||
break;
|
||||
case 57: //모반 시도
|
||||
$str[$i] = "모반 시도";
|
||||
break;
|
||||
|
||||
default:
|
||||
$str[$i] = "????";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if($font == 1) {
|
||||
for($i=0; $i < count($str); $i++) {
|
||||
$str[$i] = getFont($str[$i]);
|
||||
}
|
||||
}
|
||||
return $str;
|
||||
}
|
||||
|
||||
function getCoreTurn($connect, $nation, $level) {
|
||||
$turn[0] = $nation["l{$level}turn0"];
|
||||
$turn[1] = $nation["l{$level}turn1"];
|
||||
$turn[2] = $nation["l{$level}turn2"];
|
||||
$turn[3] = $nation["l{$level}turn3"];
|
||||
$turn[4] = $nation["l{$level}turn4"];
|
||||
$turn[5] = $nation["l{$level}turn5"];
|
||||
$turn[6] = $nation["l{$level}turn6"];
|
||||
$turn[7] = $nation["l{$level}turn7"];
|
||||
$turn[8] = $nation["l{$level}turn8"];
|
||||
$turn[9] = $nation["l{$level}turn9"];
|
||||
$turn[10] = $nation["l{$level}turn10"];
|
||||
$turn[11] = $nation["l{$level}turn11"];
|
||||
|
||||
$count = 12;
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$command = DecodeCommand($turn[$i]);
|
||||
|
||||
switch($command[0]) {
|
||||
case 99: //휴식
|
||||
$str[$i] = "휴식";
|
||||
break;
|
||||
case 23: //포상
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
if($fourth == 1) { $str[$i] = "【{$general['name']}】에게 금 {$double}00을 포상"; }
|
||||
else { $str[$i] = "【{$general['name']}】에게 쌀 {$double}00을 포상"; }
|
||||
break;
|
||||
case 24: //몰수
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
if($fourth == 1) { $str[$i] = "【{$general['name']}】에게서 금 {$double}00을 몰수"; }
|
||||
else { $str[$i] = "【{$general['name']}】에게서 쌀 {$double}00을 몰수"; }
|
||||
break;
|
||||
case 27: //발령
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$query = "select name from general where no='$third'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
$city = getCity($connect, $double, "name");
|
||||
|
||||
$str[$i] = "【{$general['name']}】【{$city['name']}】(으)로 발령";
|
||||
break;
|
||||
case 51: //항복권고
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에게 항복 권고";
|
||||
break;
|
||||
case 52: //원조
|
||||
$fourth = $command[3];
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$fourth *= 1000;
|
||||
$third *= 1000;
|
||||
$str[$i] = "【{$nation['name']}】에게 국고 {$third} 병량 {$fourth} 원조";
|
||||
break;
|
||||
case 53: //통합제의
|
||||
$query = "select makenation from general where level='$level' and nation='{$nation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 【{$general['makenation']}】(으)로 통합 제의";
|
||||
break;
|
||||
case 61: //불가침제의
|
||||
$third = $command[2];
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 {$third}년 불가침 제의";
|
||||
break;
|
||||
case 62: //선전 포고
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 선전 포고";
|
||||
break;
|
||||
case 63: //종전 제의
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 종전 제의";
|
||||
break;
|
||||
case 64: //파기 제의
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 파기 제의";
|
||||
break;
|
||||
case 65: //초토
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 초토화";
|
||||
break;
|
||||
case 66: //천도
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(으)로 천도";
|
||||
break;
|
||||
case 67: //증축
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 증축";
|
||||
break;
|
||||
case 68: //감축
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 감축";
|
||||
break;
|
||||
case 71: //필사즉생
|
||||
$str[$i] = "필사즉생";
|
||||
break;
|
||||
case 72: //백성동원
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 백성동원";
|
||||
break;
|
||||
case 73: //수몰
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】(을)를 수몰";
|
||||
break;
|
||||
case 74: //허보
|
||||
$double = $command[1];
|
||||
$city = getCity($connect, $double, "name");
|
||||
$str[$i] = "【{$city['name']}】에 허보";
|
||||
break;
|
||||
case 75: //피장파장
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 피장파장";
|
||||
break;
|
||||
case 76: //의병모집
|
||||
$str[$i] = "의병모집";
|
||||
break;
|
||||
case 77: //이호경식
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 이호경식";
|
||||
break;
|
||||
case 78: //급습
|
||||
$double = $command[1];
|
||||
|
||||
$nation = getNationStaticInfo($double);
|
||||
|
||||
$str[$i] = "【{$nation['name']}】에 급습";
|
||||
break;
|
||||
case 81: //국기변경
|
||||
$double = $command[1];
|
||||
$colors = GetNationColors();
|
||||
$color = $colors[$double];
|
||||
|
||||
$str[$i] = "【<font color={$color}>국기</font>】를 변경";
|
||||
break;
|
||||
default:
|
||||
$str[$i] = "????";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for($i=0; $i < count($str); $i++) {
|
||||
$str[$i] = getFont($str[$i]);
|
||||
}
|
||||
|
||||
return $str;
|
||||
}
|
||||
|
||||
|
||||
function processCommand($connect, $no) {
|
||||
$query = "select npc,no,name,userlevel,picture,imgsvr,nation,nations,city,troop,injury,leader,leader2,power,power2,intel,intel2,experience,dedication,level,gold,rice,crew,crewtype,train,atmos,weap,book,horse,item,turntime,makenation,makelimit,killturn,block,dedlevel,explevel,age,belong,personal,special,special2,term,turn0,dex0,dex10,dex20,dex30,dex40 from general where no='$no'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
@@ -1424,206 +1424,7 @@ function process_22($connect, &$general) {
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_23($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select gold,rice,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$what = $command[3];
|
||||
$who = $command[2];
|
||||
$amount = $command[1];
|
||||
$amount *= 100; // 100~10000까지
|
||||
|
||||
if($amount > 10000) { $amount = 10000; }
|
||||
if($amount < 100) { $amount = 100; }
|
||||
if($what == 1) {
|
||||
$dtype = "금";
|
||||
if($nation['gold']-GameConst::basegold < $amount) { $amount = $nation['gold'] - GameConst::basegold; }
|
||||
} elseif($what == 2) {
|
||||
$dtype = "쌀";
|
||||
if($nation['rice']-GameConst::baserice < $amount) { $amount = $nation['rice'] - GameConst::baserice; }
|
||||
} else {
|
||||
$what = 2;
|
||||
$dtype = "쌀";
|
||||
if($nation['rice']-GameConst::baserice < $amount) { $amount = $nation['rice'] - GameConst::baserice; }
|
||||
}
|
||||
|
||||
$query = "select no,nation,level,name,gold,rice from general where no='$who'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
if(!$gen) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 장수입니다. 포상 실패. <1>$date</>";
|
||||
} elseif($general['no'] == $who) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자기 자신입니다. 포상 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 포상 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 포상 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 포상 실패. <1>$date</>";
|
||||
} elseif($what == 1 && $amount <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:국고가 부족합니다. 포상 실패. <1>$date</>";
|
||||
} elseif($what == 2 && $amount <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:병량이 부족합니다. 포상 실패. <1>$date</>";
|
||||
} elseif($gen['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 장수가 아닙니다. 포상 실패. <1>$date</>";
|
||||
} else {
|
||||
$genlog[count($genlog)] = "<C>●</>$dtype <C>$amount</>을 포상으로 받았습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<Y>{$gen['name']}</>에게 $dtype <C>$amount</>을 수여했습니다. <1>$date</>";
|
||||
$exp = 1;
|
||||
$ded = 1;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
if($what == 1) {
|
||||
$gen['gold'] += $amount;
|
||||
$query = "update general set gold='{$gen['gold']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['gold'] -= $amount;
|
||||
$query = "update nation set gold='{$nation['gold']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} elseif($what == 2) {
|
||||
$gen['rice'] += $amount;
|
||||
$query = "update general set rice='{$gen['rice']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['rice'] -= $amount;
|
||||
$query = "update nation set rice='{$nation['rice']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// 경험치 상승
|
||||
$query = "update general set resturn='SUCCESS',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
function process_24($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,scenario,startyear from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,color,gold,rice,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$what = $command[3];
|
||||
$who = $command[2];
|
||||
$amount = $command[1];
|
||||
$amount *= 100; // 100~10000까지
|
||||
|
||||
$query = "select no,nation,level,name,gold,rice,npc,picture,imgsvr from general where no='$who'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
if($amount > 10000) { $amount = 10000; }
|
||||
if($amount < 100) { $amount = 100; }
|
||||
if($what == 1) {
|
||||
$dtype = "금";
|
||||
if($gen['gold'] < $amount) { $amount = $gen['gold']; }
|
||||
} elseif($what == 2) {
|
||||
$dtype = "쌀";
|
||||
if($gen['rice'] < $amount) { $amount = $gen['rice']; }
|
||||
} else {
|
||||
$what = 2;
|
||||
$dtype = "쌀";
|
||||
if($gen['rice'] < $amount) { $amount = $gen['rice']; }
|
||||
}
|
||||
|
||||
if(!$gen) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 장수입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($admin['year'] < $admin['startyear']+3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:현재 초반 제한중입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($general['no'] == $who) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자기 자신입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($gen['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 장수가 아닙니다. 몰수 실패. <1>$date</>";
|
||||
} else {
|
||||
if($gen['npc'] >= 2 && rand()%100 == 0) {
|
||||
switch(rand()%5) {
|
||||
case 0: $str = "몰수를 하다니... 이것이 윗사람이 할 짓이란 말입니까..."; break;
|
||||
case 1: $str = "사유재산까지 몰수해가면서 이 나라가 잘 될거라 믿습니까? 정말 이해할 수가 없군요..."; break;
|
||||
case 2: $str = "내 돈 내놔라! 내 돈! 몰수가 왠 말이냐!"; break;
|
||||
case 3: $str = "몰수해간 내 자금... 언젠가 몰래 다시 빼내올 것이다..."; break;
|
||||
case 4: $str = "몰수로 인한 사기 저하는 몰수로 얻은 물자보다 더 손해란걸 모른단 말인가!"; break;
|
||||
}
|
||||
|
||||
PushMsg(1, 0, $gen['picture'], $gen['imgsvr'], "{$gen['name']}:", $nation['color'], $nation['name'], $nation['color'], $str);
|
||||
}
|
||||
|
||||
$genlog[count($genlog)] = "<C>●</>$dtype {$amount}을 몰수 당했습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<Y>{$gen['name']}</>에게서 $dtype <C>$amount</>을 몰수했습니다. <1>$date</>";
|
||||
$exp = 1;
|
||||
$ded = 1;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
if($what == 1) {
|
||||
$gen['gold'] -= $amount;
|
||||
$query = "update general set gold='{$gen['gold']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['gold'] += $amount;
|
||||
$query = "update nation set gold='{$nation['gold']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} elseif($what == 2) {
|
||||
$gen['rice'] -= $amount;
|
||||
$query = "update general set rice='{$gen['rice']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['rice'] += $amount;
|
||||
$query = "update nation set rice='{$nation['rice']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// 경험치 상승
|
||||
$query = "update general set resturn='SUCCESS',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
function process_25($connect, &$general) {
|
||||
$log = array();
|
||||
@@ -1800,77 +1601,6 @@ function process_26($connect, &$general) {
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_27($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$youlog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select gold,rice,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$who = $command[2];
|
||||
$where = $command[1];
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no,name,nation,level from general where no='$who'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$you = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,nation,supply from city where city='$where'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
if(!$you) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 장수입니다. 발령 실패. <1>$date</>";
|
||||
} elseif($general['no'] == $who) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자기 자신입니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($destcity['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 도시가 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $you['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 장수가 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<Y>{$you['name']}</>(을)를 <G><b>{$destcity['name']}</b></>(으)로 발령했습니다. <1>$date</>";
|
||||
$youlog[count($youlog)] = "<C>●</><Y>{$general['name']}</>에 의해 <G><b>{$destcity['name']}</b></>(으)로 발령됐습니다. <1>$date</>";
|
||||
$exp = 1;
|
||||
$ded = 1;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 발령
|
||||
$query = "update general set city='$where' where no='{$you['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 경험치 상승
|
||||
$query = "update general set resturn='SUCCESS',experience=experience+'$exp',dedication=dedication+'$ded' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
|
||||
pushGenLog($general, $log);
|
||||
pushGenLog($you, $youlog);
|
||||
}
|
||||
|
||||
function process_28($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
@@ -2369,658 +2099,6 @@ function process_31($connect, &$general) {
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_32($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select * from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$nation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 화계 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $nation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $nation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by intel desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$intelgen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralIntel($general, true, true, true, false) - getGeneralIntel($intelgen, true, true, true, false)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(이)가 불타고 있습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 화계가 성공했습니다. <1>$date</>";
|
||||
|
||||
$destcity['agri'] -= rand() % $_firingpower + $_firingbase;
|
||||
$destcity['comm'] -= rand() % $_firingpower + $_firingbase;
|
||||
if($destcity['agri'] < 0) { $destcity['agri'] = 0; }
|
||||
if($destcity['comm'] < 0) { $destcity['comm'] = 0; }
|
||||
$query = "update city set state=32,agri='{$destcity['agri']}',comm='{$destcity['comm']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 화계가 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['intel2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',intel2='{$general['intel2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_33($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
//탈취는 0까지 무제한
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select name,level,nation,secu,secu2 from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select gold,rice from nation where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 탈취 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by power desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$powergen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralPower($general, true, true, true, false) - getGeneralPower($powergen, true, true, true, false)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에서 금과 쌀을 도둑맞았습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 탈취가 성공했습니다. <1>$date</>";
|
||||
|
||||
// 탈취 최대 400 * 8
|
||||
$gold = (rand() % $_firingpower + $_firingbase) * $destcity['level'];
|
||||
$rice = (rand() % $_firingpower + $_firingbase) * $destcity['level'];
|
||||
|
||||
$nation['gold'] -= $gold;
|
||||
$nation['rice'] -= $rice;
|
||||
if($nation['gold'] < GameConst::minNationalgold) { $gold += ($nation['gold'] - GameConst::minNationalgold); $nation['gold'] = GameConst::minNationalgold; }
|
||||
if($nation['rice'] < GameConst::minNationalrice) { $rice += ($nation['rice'] - GameConst::minNationalrice); $nation['rice'] = GameConst::minNationalrice; }
|
||||
$query = "update nation set gold='{$nation['gold']}',rice='{$nation['rice']}' where nation='{$destcity['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update city set state=34 where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// 본국으로 회수, 재야이면 본인이 소유
|
||||
if($general['nation'] != 0) {
|
||||
$query = "select gold,rice from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
$nation['gold'] += $gold;
|
||||
$nation['rice'] += $rice;
|
||||
$query = "update nation set gold='{$nation['gold']}',rice='{$nation['rice']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$general['gold'] += $gold;
|
||||
$general['rice'] += $rice;
|
||||
$query = "update general set gold='{$general['gold']}',rice='{$general['rice']}' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
$log[count($log)] = "<C>●</>금<C>$gold</> 쌀<C>$rice</>을 획득했습니다.";
|
||||
|
||||
// TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 탈취가 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['power2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_34($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select name,nation,def,wall,secu,secu2 from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 파괴 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by power desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$powergen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralPower($general, true, true, true, false) - getGeneralPower($powergen, true, true, true, false)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:누군가가 <G><b>{$destcity['name']}</b></>의 성벽을 허물었습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 파괴가 성공했습니다. <1>$date</>";
|
||||
|
||||
// 파괴
|
||||
$destcity['def'] -= rand() % $_firingpower + $_firingbase;
|
||||
$destcity['wall'] -= rand() % $_firingpower + $_firingbase;
|
||||
if($destcity['def'] < 100) { $destcity['def'] = 100; }
|
||||
if($destcity['wall'] < 100) { $destcity['wall'] = 100; }
|
||||
$query = "update city set state=34,def='{$destcity['def']}',wall='{$destcity['wall']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 파괴가 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['power2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_35($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select name,nation,rate,secu,secu2 from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$lbonus = setLeadershipBonus($general, $mynation['level']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 선동 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by sum desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralLeadership($general, true, true, true) - getGeneralLeadership($gen, true, true, true)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>의 백성들이 동요하고 있습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 선동이 성공했습니다. <1>$date</>";
|
||||
|
||||
// 선동 최대 10
|
||||
$destcity['secu'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['rate'] -= rand() % round($_firingpower/50) + $_firingbase/50;
|
||||
if($destcity['secu'] < 0) { $destcity['secu'] = 0; }
|
||||
if($destcity['rate'] < 0) { $destcity['rate'] = 0; }
|
||||
$query = "update city set state=32,rate='{$destcity['rate']}',secu='{$destcity['secu']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 선동이 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['leader2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_36($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select * from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$lbonus = setLeadershipBonus($general, $mynation['level']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 기습 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select ROUND((leader+intel+power)*(100-injury)/100)+weap+horse+book as sum,weap,horse,book from general where city='$destination' and nation='{$destcity['nation']}' order by sum desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
$generalStatAll = getGeneralLeadership($general, true, true, true)
|
||||
+ getGeneralPower($general, true, true, true)
|
||||
+ getGeneralIntel($general, true, true, true);
|
||||
$ratio = round((($generalStatAll - ($gen['sum']+getWeapEff($gen['weap'])+getHorseEff($gen['horse'])+getBookEff($gen['book']))) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(이)가 누군가에게 공격 받았습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 기습이 성공했습니다. <1>$date</>";
|
||||
|
||||
// 기습
|
||||
$destcity['agri'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['comm'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['secu'] -= rand() % round($_firingpower/4) + $_firingbase;
|
||||
$destcity['def'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['wall'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['rate'] -= rand() % round($_firingpower/50) + $_firingbase/50;
|
||||
if($destcity['agri'] < 0) { $destcity['agri'] = 0; }
|
||||
if($destcity['comm'] < 0) { $destcity['comm'] = 0; }
|
||||
if($destcity['secu'] < 0) { $destcity['secu'] = 0; }
|
||||
if($destcity['def'] < 0) { $destcity['def'] = 0; }
|
||||
if($destcity['wall'] < 0) { $destcity['wall'] = 0; }
|
||||
if($destcity['rate'] < 0) { $destcity['rate'] = 0; }
|
||||
$query = "update city set state=32,agri='{$destcity['agri']}',comm='{$destcity['comm']}',secu='{$destcity['secu']}',def='{$destcity['def']}',wall='{$destcity['wall']}',rate='{$destcity['rate']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 기습이 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['leader2']++;
|
||||
$general['intel2']++;
|
||||
$general['power2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',leader2='{$general['leader2']}',intel2='{$general['intel2']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_41($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
@@ -3994,242 +3072,6 @@ function process_50($connect, &$general) {
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_51($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 권고 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 권고 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 권고 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 권고 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 항복 권고 서신을 보냈습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 항복 권고 서신',dip0_type='4',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_52($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,level,gold,rice,surlimit,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$mynation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($mynation["l{$general['level']}turn0"]);
|
||||
$rice = $command[3];
|
||||
$gold = $command[2];
|
||||
$which = $command[1];
|
||||
$rice *= 1000;
|
||||
$gold *= 1000;
|
||||
$limit = $mynation['level'] * 10000;
|
||||
|
||||
if($gold < 0) { $gold = 0; }
|
||||
if($rice < 0) { $rice = 0; }
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($gold > $mynation['gold']-GameConst::basegold) { $gold = $mynation['gold'] - GameConst::basegold; }
|
||||
if($rice > $mynation['rice']-GameConst::baserice) { $rice = $mynation['rice'] - GameConst::basegold; }
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 원조 실패. <1>$date</>";
|
||||
} elseif($gold == 0 && $rice == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:보낼 물자가 부족합니다. 원조 실패. <1>$date</>";
|
||||
} elseif($gold < 0 || $rice < 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:보낼 물자가 부족합니다. 원조 실패. <1>$date</>";
|
||||
} elseif($gold > $limit || $rice > $limit) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:작위 제한량 이상은 보낼 수 없습니다. 원조 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 원조 실패. <1>$date</>";
|
||||
} elseif($mynation['surlimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:외교제한중입니다. 원조 실패. <1>$date</>";
|
||||
} elseif($younation['surlimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:상대국이 외교제한중입니다. 원조 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 원조 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 원조 실패. <1>$date</>";
|
||||
} else {
|
||||
// 본국 자원 감소
|
||||
$query = "update nation set gold=gold-'$gold',rice=rice-'$rice',surlimit=surlimit+12 where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 상대국 자원 증가
|
||||
$query = "update nation set gold=gold+'$gold',rice=rice+'$rice' where nation='$which'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//아국 수뇌부에게 로그 전달
|
||||
$query = "select no,name,nation from general where nation='{$general['nation']}' and level>='9'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gencount = MYDB_num_rows($result);
|
||||
|
||||
for($i=0; $i < $gencount; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
$genlog[0] = "<C>●</><D><b>{$younation['name']}</b></>(으)로 금<C>$gold</> 쌀<C>$rice</>을 지원했습니다.";
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 금<C>$gold</> 쌀<C>$rice</>을 지원");
|
||||
addNationHistory($mynation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 금<C>$gold</> 쌀<C>$rice</>을 지원");
|
||||
addNationHistory($younation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$mynation['name']}</b></>(으)로부터 금<C>$gold</> 쌀<C>$rice</>을 지원 받음");
|
||||
|
||||
//상대국 수뇌부에게 로그 전달
|
||||
$query = "select no,name,nation from general where nation='$which' and level>='9'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gencount = MYDB_num_rows($result);
|
||||
|
||||
for($i=0; $i < $gencount; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
$genlog[0] = "<C>●</><D><b>{$mynation['name']}</b></>에서 금<C>$gold</> 쌀<C>$rice</>을 원조 했습니다.";
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y><b>【원조】</b></><D><b>{$mynation['name']}</b></>에서 <D><b>{$younation['name']}</b></>(으)로 물자를 지원합니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 물자를 지원합니다. <1>$date</>";
|
||||
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 경험치 상승 // 공헌도, 명성 상승
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushHistory($history);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_53($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 통합 제의 서신을 보냈습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 통합 제의 서신',dip0_type='5',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_54($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
@@ -4490,1793 +3332,6 @@ function process_57($connect, &$general) {
|
||||
pushHistory($history);
|
||||
}
|
||||
|
||||
function process_61($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost,turnterm from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select gold,rice,name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$when = $command[2];
|
||||
$which = $command[1];
|
||||
|
||||
if($when < 1) { $when = 1; }
|
||||
elseif($when > 20) { $when = 20; }
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 불가침 제의 서신을 보냈습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$type = $when * 100 + 6;
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 {$when}년 불가침 제의 서신',dip0_type='$type',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 3턴후
|
||||
$date = addTurn($date, $admin['turnterm']);
|
||||
$date = addTurn($date, $admin['turnterm']);
|
||||
$date = addTurn($date, $admin['turnterm']);
|
||||
//조건 표시기한 설정
|
||||
$query = "update diplomacy set showing='{$date}' where me='{$general['nation']}' and you='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $admin['develcost']*10씩 차감
|
||||
// $amount = $admin['develcost'];
|
||||
// $query = "update nation set gold=gold-'$amount',rice=rice-'$amount' where nation='{$general['nation']}'";
|
||||
// MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_62($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select startyear,year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,l{$general['level']}turn0,color from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,color from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select * from general where nation='{$younation['nation']}' and level='12'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$king = MYDB_fetch_array($result);
|
||||
|
||||
//아국과의 관계
|
||||
$query = "select state from diplomacy where me='{$nation['nation']}' and you='{$younation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
//대상국이 외교 진행중(합병수락중,통합수락중)일때
|
||||
$query = "select state from diplomacy where me='{$younation['nation']}' and (state='3' or state='5')";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipcount = MYDB_num_rows($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 선포 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 선포 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dip['state'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국과 이미 교전중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dip['state'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국과 이미 선포중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dip['state'] == 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국과 불가침중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dipcount != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:상대국이 외교 진행중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif(!isClose($connect, $nation['nation'], $younation['nation'])) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:인접하지 않았습니다. 선포 실패. <1>$date</>";
|
||||
} elseif($admin['year'] <= $admin['startyear']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:초반제한 해제 2년전부터 가능합니다. 선포 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 선전 포고 했습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$younation['name']}</b></>에 <M>선전 포고</> 하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<R><b>【선포】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$younation['name']}</b></>에 선전 포고 하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$younation['name']}</b></>에 선전 포고");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$younation['name']}</b></>에 선전 포고");
|
||||
addNationHistory($younation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 선전 포고");
|
||||
|
||||
//외교 변경
|
||||
$query = "update diplomacy set state='1',term='24' where me='{$nation['nation']}' and you='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error("ally ".MYDB_error($connect),"");
|
||||
$query = "update diplomacy set state='1',term='24' where me='{$younation['nation']}' and you='{$nation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error("ally ".MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//국메로 저장
|
||||
$msg = "【외교】{$admin['year']}년 {$admin['month']}월:{$younation['name']}에 선전포고";
|
||||
$youmsg = "【외교】{$admin['year']}년 {$admin['month']}월:{$nation['name']}에서 선전포고";
|
||||
|
||||
PushMsg(2, $nation['nation'], $general['picture'], $general['imgsvr'], "{$general['name']}:{$nation['name']}▶", $nation['color'], $younation['name'], $younation['color'], $msg);
|
||||
PushMsg(3, $younation['nation'], $general['picture'], $general['imgsvr'], "{$general['name']}:{$nation['name']}▶", $nation['color'], $younation['name'], $younation['color'], $youmsg);
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_63($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 종전 제의 서신을 보냈습니다. <1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 종전 제의 서신',dip0_type='7',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_64($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 파기 제의 서신을 보냈습니다. <1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 불가침 파기 서신',dip0_type='8',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_65($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select city from city where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$citycount = MYDB_num_rows($result);
|
||||
|
||||
$query = "select nation,capital,name,surlimit,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation,pop,gen1,gen2,gen3 from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
//아국이 외교중(교전, 선포, 합병, 통합 // 즉 !통상, !불가침)일때
|
||||
$query = "select state from diplomacy where me='{$nation['nation']}' and (state!='2' and state!='7')";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipcount = MYDB_num_rows($result);
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($nation['capital'] == $destcity['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도입니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 영토가 아닙니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($citycount <= 4) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 물러날 수 없습니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($dipcount != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:평시에만 가능합니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($nation['surlimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:제한 턴이 있습니다. 초토화 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 초토화했습니다. <1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>의 <R>초토화</>를 명령하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<R><b>【초토화】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(을)를 <R>초토화</>하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>의 <R>초토화</>를 명령");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>의 <R>초토화</>를 명령");
|
||||
|
||||
//외교제한 24
|
||||
$amount = round($destcity['pop'] * 0.1);
|
||||
$query = "update nation set surlimit='24',gold=gold+'$amount',rice=rice+'$amount' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//직위해제
|
||||
$query = "update general set level=1 where no='{$destcity['gen1']}' or no='{$destcity['gen2']}' or no='{$destcity['gen3']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//성 공백지로
|
||||
$query = "update city set pop=pop*0.1,rate=50,agri=agri*0.1,comm=comm*0.1,secu=secu*0.1,nation='0',front='0',gen1='0',gen2='0',gen3='0',conflict='',conflict2='' where city='{$destcity['city']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//전장수 10% 삭감
|
||||
$query = "update general set experience=experience*0.9,dedication=dedication*0.9 where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_66($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit,l{$general['level']}term,l{$general['level']}turn0,capital,capset from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $nation['capital'], 1);
|
||||
$amount = $admin['develcost'] * 10;
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 66) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 66;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 66;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 천도 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 영토가 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($dist[$destcity['city']] != 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:인접도시가 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($nation['capset'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:다음 분기에 가능합니다. 천도 실패. <1>$date</>";
|
||||
} elseif($nation['gold']-GameConst::basegold < $amount || $nation['rice']-GameConst::basegold < $amount) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:물자가 부족합니다. 천도 실패. <1>$date</>";
|
||||
} elseif($term < 3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:천도중... ({$term}/3) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(으)로 천도했습니다. <1>$date</>";
|
||||
$exp = 15;
|
||||
$ded = 15;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(으)로 <R>천도</>를 명령하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<S><b>【천도】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(으)로 천도하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>(으)로 천도 명령");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(으)로 천도 명령");
|
||||
|
||||
//수도 변경
|
||||
$query = "update nation set l{$general['level']}term='0',capital='{$destcity['city']}',capset='1',gold=gold-'$amount',rice=rice-'$amount' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
refreshNationStaticInfo();
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_67($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit,l{$general['level']}term,l{$general['level']}turn0,capital,capset from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation,level from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$amount = $admin['develcost'] * 500 + 60000; // 7만~13만
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 67) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 67;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 67;
|
||||
}
|
||||
|
||||
if($nation['capital'] != $general['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도에서 실행해야 합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($nation['capital'] != $destcity['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도만 가능합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] <= 3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수진, 진, 관문은 불가능합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] >= 8) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 증축할 수 없습니다. 증축 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 증축 실패. <1>$date</>";
|
||||
} elseif($nation['capset'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:다음 분기에 가능합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($nation['gold']-GameConst::basegold < $amount || $nation['rice']-GameConst::basegold < $amount) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:물자가 부족합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($term < 6) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:증축중... ({$term}/6) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 증축했습니다. <1>$date</>";
|
||||
$exp = 5 * 6;
|
||||
$ded = 5 * 6;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 <C>증축</>하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<C><b>【증축】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(을)를 증축하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 증축");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 증축");
|
||||
|
||||
//물자 감소
|
||||
$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),"");
|
||||
|
||||
//수도 증축
|
||||
$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),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_68($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit,l{$general['level']}term,l{$general['level']}turn0,capital,capset from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation,level,pop,agri,comm,def,wall,secu,upgrading from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$amount = $admin['develcost'] * 500 + 30000; // 4만~10만
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 68) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 68;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 68;
|
||||
}
|
||||
|
||||
if($nation['capital'] != $general['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도에서 실행해야 합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($nation['capital'] != $destcity['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도만 가능합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] <= 3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수진, 진, 관문은 불가능합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] <= 6) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 감축할 수 없습니다. 감축 실패. <1>$date</>";
|
||||
} elseif($destcity['upgrading'] <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:증축된 도시가 아닙니다. 감축 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 감축 실패. <1>$date</>";
|
||||
} elseif($nation['capset'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:다음 분기에 가능합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($term < 6) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:감축중... ({$term}/6) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 감축했습니다. <1>$date</>";
|
||||
$exp = 5 * 6;
|
||||
$ded = 5 * 6;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 <M>감축</>하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<M><b>【감축】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(을)를 감축하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 감축");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 감축");
|
||||
|
||||
//물자 증가
|
||||
$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;
|
||||
if($pop < 30000) { $pop = 30000; }
|
||||
if($agri < 0) { $agri = 0; }
|
||||
if($comm < 0) { $comm = 0; }
|
||||
if($def < 0) { $def = 0; }
|
||||
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),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_71($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from diplomacy where me='{$general['nation']}' and state=0";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipCount = MYDB_num_rows($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 10);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*8)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 71) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 71;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 71;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($dipCount == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전쟁중이 아닙니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:필사즉생 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:필사즉생 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<M>필사즉생</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>필사즉생</>(을)를 발동");
|
||||
|
||||
//전장수 훈사100
|
||||
$query = "update general set atmos=100,train=100 where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_72($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from diplomacy where me='{$general['nation']}' and state=0";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipCount = MYDB_num_rows($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 20);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 1;
|
||||
$term3 = round(sqrt($genCount*4)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 72) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 72;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 72;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($dipCount == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전쟁중이 아닙니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 도시만 가능합니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:백성동원 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:백성동원 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동");
|
||||
|
||||
//도시 성수 80%
|
||||
$query = "update city set def=def2*0.8,wall=wall2*0.8 where city='{$destcity['city']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_73($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name from nation where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 20);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*4)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 73) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 73;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 73;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:대상도시가 아국입니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전쟁중인 상대국에만 가능합니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수몰 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수몰 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><G><b>{$destcity['name']}</b></>에 <M>수몰</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>의 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국의 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동");
|
||||
|
||||
//도시 성수 80% 감소
|
||||
$query = "update city set def=def*0.2,wall=wall*0.2 where city='{$destcity['city']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_74($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name from nation where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 20);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 2;
|
||||
$term3 = round(sqrt($genCount*4)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 74) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 74;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 74;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 허보 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 허보 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. 허보 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:대상도시가 아국입니다. 허보 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포,전쟁중인 상대국에만 가능합니다. 허보 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 허보 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:허보 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:허보 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>의 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국의 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동");
|
||||
|
||||
//상대국 도시 전부 검색
|
||||
$query = "select city from city where nation='{$destcity['nation']}' and supply=1";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cityCount = MYDB_num_rows($result);
|
||||
for($i=0; $i < $cityCount; $i++) {
|
||||
$dCity = MYDB_fetch_array($result);
|
||||
$citys[$i] = $dCity['city'];
|
||||
}
|
||||
//상대국 유저 랜덤 배치
|
||||
$query = "select no,name from general where nation='{$destcity['nation']}' and city='{$destcity['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$count = MYDB_num_rows($result);
|
||||
$opplog[0] = "<C>●</>상대국의 허보에 당했다! <1>$date</>";
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
$selCity = $citys[rand() % $cityCount];
|
||||
//현재도시이면 한번 다시 랜덤추첨
|
||||
if($selCity == $destcity['city']) { $selCity = $citys[rand() % $cityCount]; }
|
||||
|
||||
$query = "update general set city={$selCity} where no='{$gen['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
pushGenLog($gen, $opplog);
|
||||
}
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_75($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 40);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*2)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 75) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 75;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 75;
|
||||
}
|
||||
|
||||
if(!$destnation) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 국가입니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포,전쟁중인 상대국에만 가능합니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:피장파장 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:피장파장 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</>아국에 <M>피장파장</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 <M>피장파장</>(을)를 발동");
|
||||
|
||||
//전략기한+60
|
||||
$query = "update nation set tricklimit=tricklimit+60 where nation='{$destnation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한, 최소72
|
||||
if($term3 < 72) { $term3 = 72; }
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_76($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select startyear,year,month,develcost,npccount,turnterm from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 10);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*10)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 76) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 76;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 76;
|
||||
}
|
||||
|
||||
if($admin['year'] < $admin['startyear']+3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:현재 초반 제한중입니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:의병모집 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:의병모집 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<M>의병모집</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>의병모집</>(을)를 발동");
|
||||
|
||||
$query = "select avg(gennum) as gennum from nation";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$avgNation = MYDB_fetch_array($result);
|
||||
$gencount = 5 + round($avgNation['gennum'] / 10);
|
||||
|
||||
$query = "select avg(age) as age, max(leader+power+intel) as lpi, avg(dedication) as ded,avg(experience) as exp, avg(dex0) as dex0, avg(dex10) as dex10, avg(dex20) as dex20, avg(dex30) as dex30, avg(dex40) as dex40 from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$avgGen = MYDB_fetch_array($result);
|
||||
|
||||
//의병추가
|
||||
$npc = 4;
|
||||
$npcid = $admin['npccount'];
|
||||
for($i=0; $i < $gencount; $i++) {
|
||||
// 무장 40%, 지장 40%, 무지장 20%
|
||||
$type = rand() % 10;
|
||||
switch($type) {
|
||||
case 0: case 1: case 2: case 3:
|
||||
$leader = 65 + rand()%11;
|
||||
$intel = 10 + rand()%6;
|
||||
$power = 150 - $leader - $intel;
|
||||
break;
|
||||
case 4: case 5: case 6: case 7:
|
||||
$leader = 65 + rand()%11;
|
||||
$power = 10 + rand()%6;
|
||||
$intel = 150 - $leader - $power;
|
||||
break;
|
||||
case 8: case 9:
|
||||
$leader = 10 + rand()%6;
|
||||
$power = 65 + rand()%11;
|
||||
$intel = 150 - $leader - $power;
|
||||
break;
|
||||
}
|
||||
// 국내 최고능치 기준으로 랜덤성 스케일링
|
||||
if($avgGen['lpi'] > 210) {
|
||||
$leader = round($leader * $avgGen['lpi'] / 150 * (60+rand()%31)/100);
|
||||
$power = round($power * $avgGen['lpi'] / 150 * (60+rand()%31)/100);
|
||||
$intel = round($intel * $avgGen['lpi'] / 150 * (60+rand()%31)/100);
|
||||
} elseif($avgGen['lpi'] > 180) {
|
||||
$leader = round($leader * $avgGen['lpi'] / 150 * (75+rand()%21)/100);
|
||||
$power = round($power * $avgGen['lpi'] / 150 * (75+rand()%21)/100);
|
||||
$intel = round($intel * $avgGen['lpi'] / 150 * (75+rand()%21)/100);
|
||||
} else {
|
||||
$leader = round($leader * $avgGen['lpi'] / 150 * (90+rand()%11)/100);
|
||||
$power = round($power * $avgGen['lpi'] / 150 * (90+rand()%11)/100);
|
||||
$intel = round($intel * $avgGen['lpi'] / 150 * (90+rand()%11)/100);
|
||||
}
|
||||
$over1 = 0;
|
||||
$over2 = 0;
|
||||
$over3 = 0;
|
||||
// 너무 높은 능치는 다른 능치로 분산
|
||||
if($leader > 90) {
|
||||
$over1 = rand() % ($leader - 90) + 5;
|
||||
$leader -= $over1;
|
||||
}
|
||||
if($power > 90) {
|
||||
$over2 = rand() % ($power - 90) + 5;
|
||||
$power -= $over2;
|
||||
}
|
||||
if($intel > 90) {
|
||||
$over3 = rand() % ($intel - 90) + 5;
|
||||
$intel -= $over3;
|
||||
}
|
||||
// 낮은 능치쪽으로 합산
|
||||
if($type == 0) {
|
||||
$intel = $intel + $over1 + $over2 + $over3;
|
||||
} else {
|
||||
$power = $power + $over1 + $over2 + $over3;
|
||||
}
|
||||
// 너무 높은 능치는 제한
|
||||
if($leader > 95) {
|
||||
$leader = 95;
|
||||
}
|
||||
if($power > 95) {
|
||||
$power = 95;
|
||||
}
|
||||
if($intel > 95) {
|
||||
$intel = 95;
|
||||
}
|
||||
|
||||
$npccount = 10000 + $npcid;
|
||||
$npcmatch = rand() % 150 + 1;
|
||||
$name = "ⓖ의병장{$npcid}";
|
||||
$picture = 'default.jpg';
|
||||
$turntime = getRandTurn($admin['turnterm']);
|
||||
$personal = rand() % 10;
|
||||
$bornyear = $admin['year'];
|
||||
$deadyear = $admin['year'] + 3;
|
||||
$killturn = 64 + rand()%7;
|
||||
|
||||
@MYDB_query("
|
||||
insert into general (
|
||||
npcid,npc,npc_org,npcmatch,name,picture,nation,
|
||||
city,leader,power,intel,experience,dedication,
|
||||
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
||||
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
||||
makelimit,bornyear,deadyear,
|
||||
dex0, dex10, dex20, dex30, dex40
|
||||
) values (
|
||||
'$npccount','$npc','$npc','$npcmatch','$name','$picture','{$nation['nation']}',
|
||||
'{$general['city']}','$leader','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
||||
'1','100','100','0','0','0','0','0',
|
||||
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
|
||||
'0','$bornyear','$deadyear',
|
||||
'{$avgGen['dex0']}','{$avgGen['dex10']}','{$avgGen['dex20']}','{$avgGen['dex30']}','{$avgGen['dex40']}'
|
||||
)",
|
||||
$connect
|
||||
) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$npcid++;
|
||||
}
|
||||
//npccount
|
||||
$query = "update game set npccount={$npcid} where no='1'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//국가 기술력 그대로
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gencount = MYDB_num_rows($result);
|
||||
$gennum = $gencount;
|
||||
if($gencount < 10) $gencount = 10;
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한, 국가 기술력 그대로
|
||||
$query = "update nation set tricklimit={$term3},totaltech=tech*'$gencount',gennum='$gennum' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_77($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state,term from diplomacy where me='{$general['nation']}' and you='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
$term2 = 1;
|
||||
$term3 = round(sqrt($genCount*16)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 77) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 77;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 77;
|
||||
}
|
||||
|
||||
if(!$destnation) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 국가입니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포,전쟁중인 상대국에만 가능합니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:이호경식 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:이호경식 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</>아국에 <M>이호경식</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 <M>이호경식</>(을)를 발동");
|
||||
|
||||
//선포+3개월
|
||||
if($dip['state'] == 0) {
|
||||
$query = "update diplomacy set state=1,term=3 where (me='{$general['nation']}' and you='{$destnation['nation']}') or (you='{$general['nation']}' and me='{$destnation['nation']}')";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$query = "update diplomacy set term=term+3 where (me='{$general['nation']}' and you='{$destnation['nation']}') or (you='{$general['nation']}' and me='{$destnation['nation']}')";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_78($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state,term from diplomacy where me='{$general['nation']}' and you='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
$term2 = 1;
|
||||
$term3 = round(sqrt($genCount*16)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 78) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 78;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 78;
|
||||
}
|
||||
|
||||
if(!$destnation) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 국가입니다. 급습 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 급습 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 급습 실패. <1>$date</>";
|
||||
} elseif($dip['state'] != 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포중인 상대국에만 가능합니다. 급습 실패. <1>$date</>";
|
||||
} elseif($dip['term'] < 12) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포 12개월 이상인 상대국에만 가능합니다. 급습 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 급습 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:급습 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:급습 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</>아국에 <M>급습</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 <M>급습</>(을)를 발동");
|
||||
|
||||
//선포-3개월
|
||||
$query = "update diplomacy set term=term-3 where (me='{$general['nation']}' and you='{$destnation['nation']}') or (you='{$general['nation']}' and me='{$destnation['nation']}')";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_81($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,colset,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
$colors = GetNationColors();
|
||||
if($which >= count($colors)) { $which = 0; }
|
||||
$color = $colors[$which];
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 국기변경 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 국기변경 실패. <1>$date</>";
|
||||
} elseif($nation['colset'] <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 변경이 불가능합니다. 국기변경 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<font color={$color}><b>국기</b></font>를 변경합니다. <1>$date</>";
|
||||
$exp = 10;
|
||||
$ded = 10;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$genlog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <font color={$color}><b>국기</b></font>를 변경합니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <font color={$color}><b>국기</b></font>를 변경하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【국기변경】</b></><D><b>{$nation['name']}</b></>(이)가 <font color={$color}><b>국기</b></font>를 변경하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<font color={$color}><b>국기</b></font>를 변경");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <font color={$color}><b>국기</b></font>를 변경");
|
||||
|
||||
//국기변경
|
||||
$query = "update nation set color='$color',colset=colset-1 where nation='{$nation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
refreshNationStaticInfo();
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_99($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
@@ -0,0 +1,2300 @@
|
||||
<?php
|
||||
|
||||
function process_23($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select gold,rice,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$what = $command[3];
|
||||
$who = $command[2];
|
||||
$amount = $command[1];
|
||||
$amount *= 100; // 100~10000까지
|
||||
|
||||
if($amount > 10000) { $amount = 10000; }
|
||||
if($amount < 100) { $amount = 100; }
|
||||
if($what == 1) {
|
||||
$dtype = "금";
|
||||
if($nation['gold']-GameConst::basegold < $amount) { $amount = $nation['gold'] - GameConst::basegold; }
|
||||
} elseif($what == 2) {
|
||||
$dtype = "쌀";
|
||||
if($nation['rice']-GameConst::baserice < $amount) { $amount = $nation['rice'] - GameConst::baserice; }
|
||||
} else {
|
||||
$what = 2;
|
||||
$dtype = "쌀";
|
||||
if($nation['rice']-GameConst::baserice < $amount) { $amount = $nation['rice'] - GameConst::baserice; }
|
||||
}
|
||||
|
||||
$query = "select no,nation,level,name,gold,rice from general where no='$who'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
if(!$gen) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 장수입니다. 포상 실패. <1>$date</>";
|
||||
} elseif($general['no'] == $who) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자기 자신입니다. 포상 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 포상 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 포상 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 포상 실패. <1>$date</>";
|
||||
} elseif($what == 1 && $amount <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:국고가 부족합니다. 포상 실패. <1>$date</>";
|
||||
} elseif($what == 2 && $amount <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:병량이 부족합니다. 포상 실패. <1>$date</>";
|
||||
} elseif($gen['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 장수가 아닙니다. 포상 실패. <1>$date</>";
|
||||
} else {
|
||||
$genlog[count($genlog)] = "<C>●</>$dtype <C>$amount</>을 포상으로 받았습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<Y>{$gen['name']}</>에게 $dtype <C>$amount</>을 수여했습니다. <1>$date</>";
|
||||
$exp = 1;
|
||||
$ded = 1;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
if($what == 1) {
|
||||
$gen['gold'] += $amount;
|
||||
$query = "update general set gold='{$gen['gold']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['gold'] -= $amount;
|
||||
$query = "update nation set gold='{$nation['gold']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} elseif($what == 2) {
|
||||
$gen['rice'] += $amount;
|
||||
$query = "update general set rice='{$gen['rice']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['rice'] -= $amount;
|
||||
$query = "update nation set rice='{$nation['rice']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// 경험치 상승
|
||||
$query = "update general set resturn='SUCCESS',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
|
||||
function process_24($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,scenario,startyear from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,color,gold,rice,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$what = $command[3];
|
||||
$who = $command[2];
|
||||
$amount = $command[1];
|
||||
$amount *= 100; // 100~10000까지
|
||||
|
||||
$query = "select no,nation,level,name,gold,rice,npc,picture,imgsvr from general where no='$who'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
if($amount > 10000) { $amount = 10000; }
|
||||
if($amount < 100) { $amount = 100; }
|
||||
if($what == 1) {
|
||||
$dtype = "금";
|
||||
if($gen['gold'] < $amount) { $amount = $gen['gold']; }
|
||||
} elseif($what == 2) {
|
||||
$dtype = "쌀";
|
||||
if($gen['rice'] < $amount) { $amount = $gen['rice']; }
|
||||
} else {
|
||||
$what = 2;
|
||||
$dtype = "쌀";
|
||||
if($gen['rice'] < $amount) { $amount = $gen['rice']; }
|
||||
}
|
||||
|
||||
if(!$gen) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 장수입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($admin['year'] < $admin['startyear']+3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:현재 초반 제한중입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($general['no'] == $who) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자기 자신입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 몰수 실패. <1>$date</>";
|
||||
} elseif($gen['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 장수가 아닙니다. 몰수 실패. <1>$date</>";
|
||||
} else {
|
||||
if($gen['npc'] >= 2 && rand()%100 == 0) {
|
||||
switch(rand()%5) {
|
||||
case 0: $str = "몰수를 하다니... 이것이 윗사람이 할 짓이란 말입니까..."; break;
|
||||
case 1: $str = "사유재산까지 몰수해가면서 이 나라가 잘 될거라 믿습니까? 정말 이해할 수가 없군요..."; break;
|
||||
case 2: $str = "내 돈 내놔라! 내 돈! 몰수가 왠 말이냐!"; break;
|
||||
case 3: $str = "몰수해간 내 자금... 언젠가 몰래 다시 빼내올 것이다..."; break;
|
||||
case 4: $str = "몰수로 인한 사기 저하는 몰수로 얻은 물자보다 더 손해란걸 모른단 말인가!"; break;
|
||||
}
|
||||
|
||||
PushMsg(1, 0, $gen['picture'], $gen['imgsvr'], "{$gen['name']}:", $nation['color'], $nation['name'], $nation['color'], $str);
|
||||
}
|
||||
|
||||
$genlog[count($genlog)] = "<C>●</>$dtype {$amount}을 몰수 당했습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<Y>{$gen['name']}</>에게서 $dtype <C>$amount</>을 몰수했습니다. <1>$date</>";
|
||||
$exp = 1;
|
||||
$ded = 1;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
if($what == 1) {
|
||||
$gen['gold'] -= $amount;
|
||||
$query = "update general set gold='{$gen['gold']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['gold'] += $amount;
|
||||
$query = "update nation set gold='{$nation['gold']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} elseif($what == 2) {
|
||||
$gen['rice'] -= $amount;
|
||||
$query = "update general set rice='{$gen['rice']}' where no='$who'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$nation['rice'] += $amount;
|
||||
$query = "update nation set rice='{$nation['rice']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// 경험치 상승
|
||||
$query = "update general set resturn='SUCCESS',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
|
||||
function process_27($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$youlog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select gold,rice,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$who = $command[2];
|
||||
$where = $command[1];
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no,name,nation,level from general where no='$who'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$you = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,nation,supply from city where city='$where'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
if(!$you) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 장수입니다. 발령 실패. <1>$date</>";
|
||||
} elseif($general['no'] == $who) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자기 자신입니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($destcity['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 도시가 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $you['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 장수가 아닙니다. <Y>{$you['name']}</> 발령 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<Y>{$you['name']}</>(을)를 <G><b>{$destcity['name']}</b></>(으)로 발령했습니다. <1>$date</>";
|
||||
$youlog[count($youlog)] = "<C>●</><Y>{$general['name']}</>에 의해 <G><b>{$destcity['name']}</b></>(으)로 발령됐습니다. <1>$date</>";
|
||||
$exp = 1;
|
||||
$ded = 1;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 발령
|
||||
$query = "update general set city='$where' where no='{$you['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 경험치 상승
|
||||
$query = "update general set resturn='SUCCESS',experience=experience+'$exp',dedication=dedication+'$ded' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
|
||||
pushGenLog($general, $log);
|
||||
pushGenLog($you, $youlog);
|
||||
}
|
||||
|
||||
|
||||
function process_51($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 권고 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 권고 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 권고 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 권고 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 항복 권고 서신을 보냈습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 항복 권고 서신',dip0_type='4',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_52($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,level,gold,rice,surlimit,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$mynation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($mynation["l{$general['level']}turn0"]);
|
||||
$rice = $command[3];
|
||||
$gold = $command[2];
|
||||
$which = $command[1];
|
||||
$rice *= 1000;
|
||||
$gold *= 1000;
|
||||
$limit = $mynation['level'] * 10000;
|
||||
|
||||
if($gold < 0) { $gold = 0; }
|
||||
if($rice < 0) { $rice = 0; }
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($gold > $mynation['gold']-GameConst::basegold) { $gold = $mynation['gold'] - GameConst::basegold; }
|
||||
if($rice > $mynation['rice']-GameConst::baserice) { $rice = $mynation['rice'] - GameConst::basegold; }
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 원조 실패. <1>$date</>";
|
||||
} elseif($gold == 0 && $rice == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:보낼 물자가 부족합니다. 원조 실패. <1>$date</>";
|
||||
} elseif($gold < 0 || $rice < 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:보낼 물자가 부족합니다. 원조 실패. <1>$date</>";
|
||||
} elseif($gold > $limit || $rice > $limit) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:작위 제한량 이상은 보낼 수 없습니다. 원조 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 원조 실패. <1>$date</>";
|
||||
} elseif($mynation['surlimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:외교제한중입니다. 원조 실패. <1>$date</>";
|
||||
} elseif($younation['surlimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:상대국이 외교제한중입니다. 원조 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 원조 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 원조 실패. <1>$date</>";
|
||||
} else {
|
||||
// 본국 자원 감소
|
||||
$query = "update nation set gold=gold-'$gold',rice=rice-'$rice',surlimit=surlimit+12 where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 상대국 자원 증가
|
||||
$query = "update nation set gold=gold+'$gold',rice=rice+'$rice' where nation='$which'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//아국 수뇌부에게 로그 전달
|
||||
$query = "select no,name,nation from general where nation='{$general['nation']}' and level>='9'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gencount = MYDB_num_rows($result);
|
||||
|
||||
for($i=0; $i < $gencount; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
$genlog[0] = "<C>●</><D><b>{$younation['name']}</b></>(으)로 금<C>$gold</> 쌀<C>$rice</>을 지원했습니다.";
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 금<C>$gold</> 쌀<C>$rice</>을 지원");
|
||||
addNationHistory($mynation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 금<C>$gold</> 쌀<C>$rice</>을 지원");
|
||||
addNationHistory($younation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$mynation['name']}</b></>(으)로부터 금<C>$gold</> 쌀<C>$rice</>을 지원 받음");
|
||||
|
||||
//상대국 수뇌부에게 로그 전달
|
||||
$query = "select no,name,nation from general where nation='$which' and level>='9'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gencount = MYDB_num_rows($result);
|
||||
|
||||
for($i=0; $i < $gencount; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
$genlog[0] = "<C>●</><D><b>{$mynation['name']}</b></>에서 금<C>$gold</> 쌀<C>$rice</>을 원조 했습니다.";
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y><b>【원조】</b></><D><b>{$mynation['name']}</b></>에서 <D><b>{$younation['name']}</b></>(으)로 물자를 지원합니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 물자를 지원합니다. <1>$date</>";
|
||||
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 경험치 상승 // 공헌도, 명성 상승
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushHistory($history);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_53($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>(으)로 통합 제의 서신을 보냈습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 통합 제의 서신',dip0_type='5',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
|
||||
function process_61($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost,turnterm from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select gold,rice,name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$when = $command[2];
|
||||
$which = $command[1];
|
||||
|
||||
if($when < 1) { $when = 1; }
|
||||
elseif($when > 20) { $when = 20; }
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 불가침 제의 서신을 보냈습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$type = $when * 100 + 6;
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 {$when}년 불가침 제의 서신',dip0_type='$type',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 3턴후
|
||||
$date = addTurn($date, $admin['turnterm']);
|
||||
$date = addTurn($date, $admin['turnterm']);
|
||||
$date = addTurn($date, $admin['turnterm']);
|
||||
//조건 표시기한 설정
|
||||
$query = "update diplomacy set showing='{$date}' where me='{$general['nation']}' and you='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// $admin['develcost']*10씩 차감
|
||||
// $amount = $admin['develcost'];
|
||||
// $query = "update nation set gold=gold-'$amount',rice=rice-'$amount' where nation='{$general['nation']}'";
|
||||
// MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_62($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select startyear,year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,l{$general['level']}turn0,color from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,color from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select * from general where nation='{$younation['nation']}' and level='12'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$king = MYDB_fetch_array($result);
|
||||
|
||||
//아국과의 관계
|
||||
$query = "select state from diplomacy where me='{$nation['nation']}' and you='{$younation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
//대상국이 외교 진행중(합병수락중,통합수락중)일때
|
||||
$query = "select state from diplomacy where me='{$younation['nation']}' and (state='3' or state='5')";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipcount = MYDB_num_rows($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 선포 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 선포 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dip['state'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국과 이미 교전중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dip['state'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국과 이미 선포중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dip['state'] == 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국과 불가침중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif($dipcount != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:상대국이 외교 진행중입니다. 선포 실패. <1>$date</>";
|
||||
} elseif(!isClose($connect, $nation['nation'], $younation['nation'])) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:인접하지 않았습니다. 선포 실패. <1>$date</>";
|
||||
} elseif($admin['year'] <= $admin['startyear']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:초반제한 해제 2년전부터 가능합니다. 선포 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 선전 포고 했습니다.<1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$younation['name']}</b></>에 <M>선전 포고</> 하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<R><b>【선포】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$younation['name']}</b></>에 선전 포고 하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$younation['name']}</b></>에 선전 포고");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$younation['name']}</b></>에 선전 포고");
|
||||
addNationHistory($younation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 선전 포고");
|
||||
|
||||
//외교 변경
|
||||
$query = "update diplomacy set state='1',term='24' where me='{$nation['nation']}' and you='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error("ally ".MYDB_error($connect),"");
|
||||
$query = "update diplomacy set state='1',term='24' where me='{$younation['nation']}' and you='{$nation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error("ally ".MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//국메로 저장
|
||||
$msg = "【외교】{$admin['year']}년 {$admin['month']}월:{$younation['name']}에 선전포고";
|
||||
$youmsg = "【외교】{$admin['year']}년 {$admin['month']}월:{$nation['name']}에서 선전포고";
|
||||
|
||||
PushMsg(2, $nation['nation'], $general['picture'], $general['imgsvr'], "{$general['name']}:{$nation['name']}▶", $nation['color'], $younation['name'], $younation['color'], $msg);
|
||||
PushMsg(3, $younation['nation'], $general['picture'], $general['imgsvr'], "{$general['name']}:{$nation['name']}▶", $nation['color'], $younation['name'], $younation['color'], $youmsg);
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_63($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 종전 제의 서신을 보냈습니다. <1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 종전 제의 서신',dip0_type='7',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_64($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select name,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name,dip0,dip0_type,dip0_who,dip0_when,dip1,dip1_type,dip1_who,dip1_when,dip2,dip2_type,dip2_who,dip2_when,dip3,dip3_type,dip3_who,dip3_when,dip4,dip4_type,dip4_who,dip4_when from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$younation = MYDB_fetch_array($result);
|
||||
|
||||
if($younation['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:멸망한 국가입니다. 제의 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 제의 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 제의 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<D><b>{$younation['name']}</b></>으로 파기 제의 서신을 보냈습니다. <1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
// 상대에게 발송
|
||||
//먼저 삭제된 칸 중 가장 오래된 칸 찾음
|
||||
$deleted = 4;
|
||||
for($i=0; $i < 5; $i++) {
|
||||
if($younation["dip{$i}"] == "") { $deleted = $i; }
|
||||
}
|
||||
//기존 메세지 한칸씩 뒤로 미룸
|
||||
for($i=$deleted-1; $i >=0; $i--) {
|
||||
moveMsg($connect, "nation", "dip", $i+1, $younatin["dip{$i}"], $younation["dip{$i}_type"], $younation["dip{$i}_who"], $younation["dip{$i}_when"], "nation", $younation['nation']);
|
||||
}
|
||||
//권고 서신시 장수번호/상대국 번호
|
||||
$me = $general['no'] * 10000 + $younation['nation'];
|
||||
$date = date('Y-m-d H:i:s');
|
||||
$query = "update nation set dip0='{$nation['name']}의 불가침 파기 서신',dip0_type='8',dip0_who='$me',dip0_when='$date' where nation='{$younation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// $log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_65($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select city from city where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$citycount = MYDB_num_rows($result);
|
||||
|
||||
$query = "select nation,capital,name,surlimit,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation,pop,gen1,gen2,gen3 from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
//아국이 외교중(교전, 선포, 합병, 통합 // 즉 !통상, !불가침)일때
|
||||
$query = "select state from diplomacy where me='{$nation['nation']}' and (state!='2' and state!='7')";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipcount = MYDB_num_rows($result);
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($nation['capital'] == $destcity['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도입니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 영토가 아닙니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($citycount <= 4) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 물러날 수 없습니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($dipcount != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:평시에만 가능합니다. 초토화 실패. <1>$date</>";
|
||||
} elseif($nation['surlimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:제한 턴이 있습니다. 초토화 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 초토화했습니다. <1>$date</>";
|
||||
$exp = 5;
|
||||
$ded = 5;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>의 <R>초토화</>를 명령하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<R><b>【초토화】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(을)를 <R>초토화</>하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>의 <R>초토화</>를 명령");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>의 <R>초토화</>를 명령");
|
||||
|
||||
//외교제한 24
|
||||
$amount = round($destcity['pop'] * 0.1);
|
||||
$query = "update nation set surlimit='24',gold=gold+'$amount',rice=rice+'$amount' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//직위해제
|
||||
$query = "update general set level=1 where no='{$destcity['gen1']}' or no='{$destcity['gen2']}' or no='{$destcity['gen3']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//성 공백지로
|
||||
$query = "update city set pop=pop*0.1,rate=50,agri=agri*0.1,comm=comm*0.1,secu=secu*0.1,nation='0',front='0',gen1='0',gen2='0',gen3='0',conflict='',conflict2='' where city='{$destcity['city']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//전장수 10% 삭감
|
||||
$query = "update general set experience=experience*0.9,dedication=dedication*0.9 where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_66($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit,l{$general['level']}term,l{$general['level']}turn0,capital,capset from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $nation['capital'], 1);
|
||||
$amount = $admin['develcost'] * 10;
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 66) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 66;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 66;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. 천도 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 영토가 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($dist[$destcity['city']] != 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:인접도시가 아닙니다. 천도 실패. <1>$date</>";
|
||||
} elseif($nation['capset'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:다음 분기에 가능합니다. 천도 실패. <1>$date</>";
|
||||
} elseif($nation['gold']-GameConst::basegold < $amount || $nation['rice']-GameConst::basegold < $amount) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:물자가 부족합니다. 천도 실패. <1>$date</>";
|
||||
} elseif($term < 3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:천도중... ({$term}/3) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(으)로 천도했습니다. <1>$date</>";
|
||||
$exp = 15;
|
||||
$ded = 15;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(으)로 <R>천도</>를 명령하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<S><b>【천도】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(으)로 천도하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>(으)로 천도 명령");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(으)로 천도 명령");
|
||||
|
||||
//수도 변경
|
||||
$query = "update nation set l{$general['level']}term='0',capital='{$destcity['city']}',capset='1',gold=gold-'$amount',rice=rice-'$amount' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
refreshNationStaticInfo();
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_67($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit,l{$general['level']}term,l{$general['level']}turn0,capital,capset from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation,level from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$amount = $admin['develcost'] * 500 + 60000; // 7만~13만
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 67) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 67;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 67;
|
||||
}
|
||||
|
||||
if($nation['capital'] != $general['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도에서 실행해야 합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($nation['capital'] != $destcity['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도만 가능합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] <= 3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수진, 진, 관문은 불가능합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] >= 8) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 증축할 수 없습니다. 증축 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 증축 실패. <1>$date</>";
|
||||
} elseif($nation['capset'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:다음 분기에 가능합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($nation['gold']-GameConst::basegold < $amount || $nation['rice']-GameConst::basegold < $amount) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:물자가 부족합니다. 증축 실패. <1>$date</>";
|
||||
} elseif($term < 6) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:증축중... ({$term}/6) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 증축했습니다. <1>$date</>";
|
||||
$exp = 5 * 6;
|
||||
$ded = 5 * 6;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 <C>증축</>하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<C><b>【증축】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(을)를 증축하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 증축");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 증축");
|
||||
|
||||
//물자 감소
|
||||
$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),"");
|
||||
|
||||
//수도 증축
|
||||
$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),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_68($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,gold,rice,surlimit,l{$general['level']}term,l{$general['level']}turn0,capital,capset from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation,level,pop,agri,comm,def,wall,secu,upgrading from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$amount = $admin['develcost'] * 500 + 30000; // 4만~10만
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 68) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 68;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 68;
|
||||
}
|
||||
|
||||
if($nation['capital'] != $general['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도에서 실행해야 합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($nation['capital'] != $destcity['city']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수도만 가능합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] <= 3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수진, 진, 관문은 불가능합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($destcity['level'] <= 6) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 감축할 수 없습니다. 감축 실패. <1>$date</>";
|
||||
} elseif($destcity['upgrading'] <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:증축된 도시가 아닙니다. 감축 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 감축 실패. <1>$date</>";
|
||||
} elseif($nation['capset'] == 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:다음 분기에 가능합니다. 감축 실패. <1>$date</>";
|
||||
} elseif($term < 6) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:감축중... ({$term}/6) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 감축했습니다. <1>$date</>";
|
||||
$exp = 5 * 6;
|
||||
$ded = 5 * 6;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 <M>감축</>하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<M><b>【감축】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>(을)를 감축하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>(을)를 감축");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>(을)를 감축");
|
||||
|
||||
//물자 증가
|
||||
$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;
|
||||
if($pop < 30000) { $pop = 30000; }
|
||||
if($agri < 0) { $agri = 0; }
|
||||
if($comm < 0) { $comm = 0; }
|
||||
if($def < 0) { $def = 0; }
|
||||
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),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_71($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from diplomacy where me='{$general['nation']}' and state=0";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipCount = MYDB_num_rows($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 10);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*8)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 71) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 71;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 71;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($dipCount == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전쟁중이 아닙니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 필사즉생 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:필사즉생 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:필사즉생 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>필사즉생</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<M>필사즉생</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>필사즉생</>(을)를 발동");
|
||||
|
||||
//전장수 훈사100
|
||||
$query = "update general set atmos=100,train=100 where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_72($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from diplomacy where me='{$general['nation']}' and state=0";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dipCount = MYDB_num_rows($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 20);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 1;
|
||||
$term3 = round(sqrt($genCount*4)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 72) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 72;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 72;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($dipCount == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전쟁중이 아닙니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국 도시만 가능합니다. 백성동원 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:백성동원 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:백성동원 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>백성동원</>(을)를 발동");
|
||||
|
||||
//도시 성수 80%
|
||||
$query = "update city set def=def2*0.8,wall=wall2*0.8 where city='{$destcity['city']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_73($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name from nation where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 20);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*4)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 73) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 73;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 73;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:대상도시가 아국입니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전쟁중인 상대국에만 가능합니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 수몰 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수몰 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수몰 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><G><b>{$destcity['name']}</b></>에 <M>수몰</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>의 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국의 <G><b>{$destcity['name']}</b></>에 <M>수몰</>(을)를 발동");
|
||||
|
||||
//도시 성수 80% 감소
|
||||
$query = "update city set def=def*0.2,wall=wall*0.2 where city='{$destcity['city']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_74($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select city,name,nation from city where city='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name from nation where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 20);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 2;
|
||||
$term3 = round(sqrt($genCount*4)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 74) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 74;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 74;
|
||||
}
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 허보 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 허보 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. 허보 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:대상도시가 아국입니다. 허보 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포,전쟁중인 상대국에만 가능합니다. 허보 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 허보 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:허보 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:허보 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>의 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국의 <G><b>{$destcity['name']}</b></>에 <M>허보</>(을)를 발동");
|
||||
|
||||
//상대국 도시 전부 검색
|
||||
$query = "select city from city where nation='{$destcity['nation']}' and supply=1";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cityCount = MYDB_num_rows($result);
|
||||
for($i=0; $i < $cityCount; $i++) {
|
||||
$dCity = MYDB_fetch_array($result);
|
||||
$citys[$i] = $dCity['city'];
|
||||
}
|
||||
//상대국 유저 랜덤 배치
|
||||
$query = "select no,name from general where nation='{$destcity['nation']}' and city='{$destcity['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$count = MYDB_num_rows($result);
|
||||
$opplog[0] = "<C>●</>상대국의 허보에 당했다! <1>$date</>";
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
$selCity = $citys[rand() % $cityCount];
|
||||
//현재도시이면 한번 다시 랜덤추첨
|
||||
if($selCity == $destcity['city']) { $selCity = $citys[rand() % $cityCount]; }
|
||||
|
||||
$query = "update general set city={$selCity} where no='{$gen['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
pushGenLog($gen, $opplog);
|
||||
}
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_75($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 40);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*2)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 75) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 75;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 75;
|
||||
}
|
||||
|
||||
if(!$destnation) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 국가입니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포,전쟁중인 상대국에만 가능합니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 피장파장 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:피장파장 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:피장파장 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</>아국에 <M>피장파장</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>피장파장</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 <M>피장파장</>(을)를 발동");
|
||||
|
||||
//전략기한+60
|
||||
$query = "update nation set tricklimit=tricklimit+60 where nation='{$destnation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한, 최소72
|
||||
if($term3 < 72) { $term3 = 72; }
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_76($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select startyear,year,month,develcost,npccount,turnterm from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
//$term2 = round($genCount / 10);
|
||||
//if($term2 == 0) { $term2 = 1; }
|
||||
$term2 = 3;
|
||||
$term3 = round(sqrt($genCount*10)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 76) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 76;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 76;
|
||||
}
|
||||
|
||||
if($admin['year'] < $admin['startyear']+3) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:현재 초반 제한중입니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 의병모집 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:의병모집 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:의병모집 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <M>의병모집</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<M>의병모집</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <M>의병모집</>(을)를 발동");
|
||||
|
||||
$query = "select avg(gennum) as gennum from nation";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$avgNation = MYDB_fetch_array($result);
|
||||
$gencount = 5 + round($avgNation['gennum'] / 10);
|
||||
|
||||
$query = "select avg(age) as age, max(leader+power+intel) as lpi, avg(dedication) as ded,avg(experience) as exp, avg(dex0) as dex0, avg(dex10) as dex10, avg(dex20) as dex20, avg(dex30) as dex30, avg(dex40) as dex40 from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$avgGen = MYDB_fetch_array($result);
|
||||
|
||||
//의병추가
|
||||
$npc = 4;
|
||||
$npcid = $admin['npccount'];
|
||||
for($i=0; $i < $gencount; $i++) {
|
||||
// 무장 40%, 지장 40%, 무지장 20%
|
||||
$type = rand() % 10;
|
||||
switch($type) {
|
||||
case 0: case 1: case 2: case 3:
|
||||
$leader = 65 + rand()%11;
|
||||
$intel = 10 + rand()%6;
|
||||
$power = 150 - $leader - $intel;
|
||||
break;
|
||||
case 4: case 5: case 6: case 7:
|
||||
$leader = 65 + rand()%11;
|
||||
$power = 10 + rand()%6;
|
||||
$intel = 150 - $leader - $power;
|
||||
break;
|
||||
case 8: case 9:
|
||||
$leader = 10 + rand()%6;
|
||||
$power = 65 + rand()%11;
|
||||
$intel = 150 - $leader - $power;
|
||||
break;
|
||||
}
|
||||
// 국내 최고능치 기준으로 랜덤성 스케일링
|
||||
if($avgGen['lpi'] > 210) {
|
||||
$leader = round($leader * $avgGen['lpi'] / 150 * (60+rand()%31)/100);
|
||||
$power = round($power * $avgGen['lpi'] / 150 * (60+rand()%31)/100);
|
||||
$intel = round($intel * $avgGen['lpi'] / 150 * (60+rand()%31)/100);
|
||||
} elseif($avgGen['lpi'] > 180) {
|
||||
$leader = round($leader * $avgGen['lpi'] / 150 * (75+rand()%21)/100);
|
||||
$power = round($power * $avgGen['lpi'] / 150 * (75+rand()%21)/100);
|
||||
$intel = round($intel * $avgGen['lpi'] / 150 * (75+rand()%21)/100);
|
||||
} else {
|
||||
$leader = round($leader * $avgGen['lpi'] / 150 * (90+rand()%11)/100);
|
||||
$power = round($power * $avgGen['lpi'] / 150 * (90+rand()%11)/100);
|
||||
$intel = round($intel * $avgGen['lpi'] / 150 * (90+rand()%11)/100);
|
||||
}
|
||||
$over1 = 0;
|
||||
$over2 = 0;
|
||||
$over3 = 0;
|
||||
// 너무 높은 능치는 다른 능치로 분산
|
||||
if($leader > 90) {
|
||||
$over1 = rand() % ($leader - 90) + 5;
|
||||
$leader -= $over1;
|
||||
}
|
||||
if($power > 90) {
|
||||
$over2 = rand() % ($power - 90) + 5;
|
||||
$power -= $over2;
|
||||
}
|
||||
if($intel > 90) {
|
||||
$over3 = rand() % ($intel - 90) + 5;
|
||||
$intel -= $over3;
|
||||
}
|
||||
// 낮은 능치쪽으로 합산
|
||||
if($type == 0) {
|
||||
$intel = $intel + $over1 + $over2 + $over3;
|
||||
} else {
|
||||
$power = $power + $over1 + $over2 + $over3;
|
||||
}
|
||||
// 너무 높은 능치는 제한
|
||||
if($leader > 95) {
|
||||
$leader = 95;
|
||||
}
|
||||
if($power > 95) {
|
||||
$power = 95;
|
||||
}
|
||||
if($intel > 95) {
|
||||
$intel = 95;
|
||||
}
|
||||
|
||||
$npccount = 10000 + $npcid;
|
||||
$npcmatch = rand() % 150 + 1;
|
||||
$name = "ⓖ의병장{$npcid}";
|
||||
$picture = 'default.jpg';
|
||||
$turntime = getRandTurn($admin['turnterm']);
|
||||
$personal = rand() % 10;
|
||||
$bornyear = $admin['year'];
|
||||
$deadyear = $admin['year'] + 3;
|
||||
$killturn = 64 + rand()%7;
|
||||
|
||||
@MYDB_query("
|
||||
insert into general (
|
||||
npcid,npc,npc_org,npcmatch,name,picture,nation,
|
||||
city,leader,power,intel,experience,dedication,
|
||||
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
||||
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
||||
makelimit,bornyear,deadyear,
|
||||
dex0, dex10, dex20, dex30, dex40
|
||||
) values (
|
||||
'$npccount','$npc','$npc','$npcmatch','$name','$picture','{$nation['nation']}',
|
||||
'{$general['city']}','$leader','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
||||
'1','100','100','0','0','0','0','0',
|
||||
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
|
||||
'0','$bornyear','$deadyear',
|
||||
'{$avgGen['dex0']}','{$avgGen['dex10']}','{$avgGen['dex20']}','{$avgGen['dex30']}','{$avgGen['dex40']}'
|
||||
)",
|
||||
$connect
|
||||
) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$npcid++;
|
||||
}
|
||||
//npccount
|
||||
$query = "update game set npccount={$npcid} where no='1'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//국가 기술력 그대로
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gencount = MYDB_num_rows($result);
|
||||
$gennum = $gencount;
|
||||
if($gencount < 10) $gencount = 10;
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한, 국가 기술력 그대로
|
||||
$query = "update nation set tricklimit={$term3},totaltech=tech*'$gencount',gennum='$gennum' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_77($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state,term from diplomacy where me='{$general['nation']}' and you='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
$term2 = 1;
|
||||
$term3 = round(sqrt($genCount*16)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 77) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 77;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 77;
|
||||
}
|
||||
|
||||
if(!$destnation) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 국가입니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($dip['state'] > 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포,전쟁중인 상대국에만 가능합니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 이호경식 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:이호경식 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:이호경식 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</>아국에 <M>이호경식</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>이호경식</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 <M>이호경식</>(을)를 발동");
|
||||
|
||||
//선포+3개월
|
||||
if($dip['state'] == 0) {
|
||||
$query = "update diplomacy set state=1,term=3 where (me='{$general['nation']}' and you='{$destnation['nation']}') or (you='{$general['nation']}' and me='{$destnation['nation']}')";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$query = "update diplomacy set term=term+3 where (me='{$general['nation']}' and you='{$destnation['nation']}') or (you='{$general['nation']}' and me='{$destnation['nation']}')";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_78($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
|
||||
$query = "select nation,name from nation where nation='$which'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destnation = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state,term from diplomacy where me='{$general['nation']}' and you='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select no from general where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$genCount = MYDB_num_rows($result);
|
||||
if($genCount < 10) { $genCount = 10; }
|
||||
|
||||
$term2 = 1;
|
||||
$term3 = round(sqrt($genCount*16)*10);
|
||||
|
||||
$code = $nation["l{$general['level']}term"];
|
||||
if($code%100 == 78) {
|
||||
$term = floor($code/100) + 1;
|
||||
$code = $term * 100 + 78;
|
||||
} else {
|
||||
$term = 1;
|
||||
$code = 100 + 78;
|
||||
}
|
||||
|
||||
if(!$destnation) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 국가입니다. 급습 실패. <1>$date</>";
|
||||
} elseif($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 급습 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 급습 실패. <1>$date</>";
|
||||
} elseif($dip['state'] != 1) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포중인 상대국에만 가능합니다. 급습 실패. <1>$date</>";
|
||||
} elseif($dip['term'] < 12) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:선포 12개월 이상인 상대국에만 가능합니다. 급습 실패. <1>$date</>";
|
||||
} elseif($nation['tricklimit'] > 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:전략기한이 남았습니다. 급습 실패. <1>$date</>";
|
||||
} elseif($term < $term2) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:급습 수행중... ({$term}/{$term2}) <1>$date</>";
|
||||
|
||||
$query = "update nation set l{$general['level']}term={$code} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:급습 발동! <1>$date</>";
|
||||
$exp = 5 * $term2;
|
||||
$ded = 5 * $term2;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
$query = "select no,name from general where nation='{$destnation['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$alllog[0] = "<C>●</>아국에 <M>급습</>이 발동되었습니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $alllog);
|
||||
}
|
||||
|
||||
// $alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
// $history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
$tricklog[count($tricklog)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【전략】</b></><D><b>{$nation['name']}</b></>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <D><b>{$destnation['name']}</b></>에 <M>급습</>(을)를 발동");
|
||||
addNationHistory($destnation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 <Y>{$general['name']}</>(이)가 아국에 <M>급습</>(을)를 발동");
|
||||
|
||||
//선포-3개월
|
||||
$query = "update diplomacy set term=term-3 where (me='{$general['nation']}' and you='{$destnation['nation']}') or (you='{$general['nation']}' and me='{$destnation['nation']}')";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 11) { $term3 = round($term3 / 2); }
|
||||
if($nation['type'] == 12) { $term3 = $term3 * 2; }
|
||||
|
||||
//전략기한
|
||||
$query = "update nation set tricklimit={$term3} where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
|
||||
// pushHistory($history);
|
||||
// pushAllLog($alllog);
|
||||
pushTrickLog($connect, $tricklog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_81($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select nation,colset,name,type,tricklimit,l{$general['level']}term,l{$general['level']}turn0 from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$command = DecodeCommand($nation["l{$general['level']}turn0"]);
|
||||
$which = $command[1];
|
||||
$colors = GetNationColors();
|
||||
if($which >= count($colors)) { $which = 0; }
|
||||
$color = $colors[$which];
|
||||
|
||||
if($city['nation'] != $general['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 국기변경 실패. <1>$date</>";
|
||||
} elseif($general['level'] < 5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 국기변경 실패. <1>$date</>";
|
||||
} elseif($nation['colset'] <= 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:더이상 변경이 불가능합니다. 국기변경 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<font color={$color}><b>국기</b></font>를 변경합니다. <1>$date</>";
|
||||
$exp = 10;
|
||||
$ded = 10;
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$query = "select no,name from general where nation='{$general['nation']}' and no!='{$general['no']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$cnt = MYDB_num_rows($result);
|
||||
$genlog[0] = "<C>●</><Y>{$general['name']}</>(이)가 <font color={$color}><b>국기</b></font>를 변경합니다.";
|
||||
for($i=0; $i < $cnt; $i++) {
|
||||
$gen = MYDB_fetch_array($result);
|
||||
pushGenLog($gen, $genlog);
|
||||
}
|
||||
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>(이)가 <font color={$color}><b>국기</b></font>를 변경하였습니다.";
|
||||
$history[count($history)] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【국기변경】</b></><D><b>{$nation['name']}</b></>(이)가 <font color={$color}><b>국기</b></font>를 변경하였습니다.";
|
||||
addHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<font color={$color}><b>국기</b></font>를 변경");
|
||||
addNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>(이)가 <font color={$color}><b>국기</b></font>를 변경");
|
||||
|
||||
//국기변경
|
||||
$query = "update nation set color='$color',colset=colset-1 where nation='{$nation['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
//경험치, 공헌치
|
||||
$query = "update general set dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
refreshNationStaticInfo();
|
||||
}
|
||||
|
||||
pushHistory($history);
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
@@ -0,0 +1,655 @@
|
||||
<?php
|
||||
|
||||
|
||||
function process_32($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select * from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$nation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 화계 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $nation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $nation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 화계 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by intel desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$intelgen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralIntel($general, true, true, true, false) - getGeneralIntel($intelgen, true, true, true, false)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($nation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(이)가 불타고 있습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 화계가 성공했습니다. <1>$date</>";
|
||||
|
||||
$destcity['agri'] -= rand() % $_firingpower + $_firingbase;
|
||||
$destcity['comm'] -= rand() % $_firingpower + $_firingbase;
|
||||
if($destcity['agri'] < 0) { $destcity['agri'] = 0; }
|
||||
if($destcity['comm'] < 0) { $destcity['comm'] = 0; }
|
||||
$query = "update city set state=32,agri='{$destcity['agri']}',comm='{$destcity['comm']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 화계가 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['intel2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',intel2='{$general['intel2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_33($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
//탈취는 0까지 무제한
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select name,level,nation,secu,secu2 from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select gold,rice from nation where nation='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 탈취 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 탈취 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by power desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$powergen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralPower($general, true, true, true, false) - getGeneralPower($powergen, true, true, true, false)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에서 금과 쌀을 도둑맞았습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 탈취가 성공했습니다. <1>$date</>";
|
||||
|
||||
// 탈취 최대 400 * 8
|
||||
$gold = (rand() % $_firingpower + $_firingbase) * $destcity['level'];
|
||||
$rice = (rand() % $_firingpower + $_firingbase) * $destcity['level'];
|
||||
|
||||
$nation['gold'] -= $gold;
|
||||
$nation['rice'] -= $rice;
|
||||
if($nation['gold'] < GameConst::minNationalgold) { $gold += ($nation['gold'] - GameConst::minNationalgold); $nation['gold'] = GameConst::minNationalgold; }
|
||||
if($nation['rice'] < GameConst::minNationalrice) { $rice += ($nation['rice'] - GameConst::minNationalrice); $nation['rice'] = GameConst::minNationalrice; }
|
||||
$query = "update nation set gold='{$nation['gold']}',rice='{$nation['rice']}' where nation='{$destcity['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update city set state=34 where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
// 본국으로 회수, 재야이면 본인이 소유
|
||||
if($general['nation'] != 0) {
|
||||
$query = "select gold,rice from nation where nation='{$general['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$nation = MYDB_fetch_array($result);
|
||||
$nation['gold'] += $gold;
|
||||
$nation['rice'] += $rice;
|
||||
$query = "update nation set gold='{$nation['gold']}',rice='{$nation['rice']}' where nation='{$general['nation']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
} else {
|
||||
$general['gold'] += $gold;
|
||||
$general['rice'] += $rice;
|
||||
$query = "update general set gold='{$general['gold']}',rice='{$general['rice']}' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
}
|
||||
$log[count($log)] = "<C>●</>금<C>$gold</> 쌀<C>$rice</>을 획득했습니다.";
|
||||
|
||||
// TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 탈취가 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['power2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_34($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select name,nation,def,wall,secu,secu2 from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 파괴 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 파괴 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by power desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$powergen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralPower($general, true, true, true, false) - getGeneralPower($powergen, true, true, true, false)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:누군가가 <G><b>{$destcity['name']}</b></>의 성벽을 허물었습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 파괴가 성공했습니다. <1>$date</>";
|
||||
|
||||
// 파괴
|
||||
$destcity['def'] -= rand() % $_firingpower + $_firingbase;
|
||||
$destcity['wall'] -= rand() % $_firingpower + $_firingbase;
|
||||
if($destcity['def'] < 100) { $destcity['def'] = 100; }
|
||||
if($destcity['wall'] < 100) { $destcity['wall'] = 100; }
|
||||
$query = "update city set state=34,def='{$destcity['def']}',wall='{$destcity['wall']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 파괴가 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['power2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_35($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select name,nation,rate,secu,secu2 from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$lbonus = setLeadershipBonus($general, $mynation['level']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 선동 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 선동 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select leader,horse,power,weap,intel,book,injury from general where city='$destination' and nation='{$destcity['nation']}' order by sum desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
$ratio = round(((getGeneralLeadership($general, true, true, true) - getGeneralLeadership($gen, true, true, true)) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>의 백성들이 동요하고 있습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 선동이 성공했습니다. <1>$date</>";
|
||||
|
||||
// 선동 최대 10
|
||||
$destcity['secu'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['rate'] -= rand() % round($_firingpower/50) + $_firingbase/50;
|
||||
if($destcity['secu'] < 0) { $destcity['secu'] = 0; }
|
||||
if($destcity['rate'] < 0) { $destcity['rate'] = 0; }
|
||||
$query = "update city set state=32,rate='{$destcity['rate']}',secu='{$destcity['secu']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 선동이 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['leader2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
|
||||
function process_36($connect, &$general) {
|
||||
return process_99($connect, $general);
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
global $_firing, $_basefiring, $_firingpower;
|
||||
$date = substr($general['turntime'],11,5);
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$admin = MYDB_fetch_array($result);
|
||||
|
||||
$dist = distance($connect, $general['city'], 5);
|
||||
$command = DecodeCommand($general['turn0']);
|
||||
$destination = $command[1];
|
||||
|
||||
$query = "select * from city where city='$destination'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$destcity = MYDB_fetch_array($result);
|
||||
|
||||
$mynation = getNationStaticInfo($general['nation']);
|
||||
|
||||
$lbonus = setLeadershipBonus($general, $mynation['level']);
|
||||
|
||||
$query = "select nation,supply from city where city='{$general['city']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$city = MYDB_fetch_array($result);
|
||||
|
||||
$query = "select state from diplomacy where me='{$general['nation']}' and you='{$destcity['nation']}'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$dip = MYDB_fetch_array($result);
|
||||
|
||||
if(!$destcity) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:없는 도시입니다. 기습 실패. <1>$date</>";
|
||||
} elseif($general['level'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:재야입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['nation'] != $city['nation'] && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국이 아닙니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($city['supply'] == 0 && $mynation['level'] != 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:고립된 도시입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($destcity['nation'] == 0) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:공백지입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['gold'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['rice'] < $admin['develcost']*5) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($general['nation'] == $destcity['nation']) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:아국입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} elseif($dip['state'] >= 7) {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:불가침국입니다. <G><b>{$destcity['name']}</b></>에 기습 실패. <1>$date</>";
|
||||
} else {
|
||||
$query = "select ROUND((leader+intel+power)*(100-injury)/100)+weap+horse+book as sum,weap,horse,book from general where city='$destination' and nation='{$destcity['nation']}' order by sum desc";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$gen = MYDB_fetch_array($result);
|
||||
|
||||
$generalStatAll = getGeneralLeadership($general, true, true, true)
|
||||
+ getGeneralPower($general, true, true, true)
|
||||
+ getGeneralIntel($general, true, true, true);
|
||||
$ratio = round((($generalStatAll - ($gen['sum']+getWeapEff($gen['weap'])+getHorseEff($gen['horse'])+getBookEff($gen['book']))) / $_firing - ($destcity['secu']/$destcity['secu2'])/5 + $_basefiring)*100);
|
||||
$ratio2 = rand() % 100;
|
||||
|
||||
if($general['item'] == 5) {
|
||||
// 이추 사용
|
||||
$ratio += 10;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] == 6) {
|
||||
// 향낭 사용
|
||||
$ratio += 20;
|
||||
$query = "update general set item=0 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$log[count($log)] = "<C>●</><C>".getItemName($general['item'])."</>(을)를 사용!";
|
||||
$general['item'] = 0;
|
||||
} elseif($general['item'] >= 21 && $general['item'] <= 22) {
|
||||
// 육도, 삼략 사용
|
||||
$ratio += 20;
|
||||
}
|
||||
|
||||
// 특기보정 : 신산, 귀모
|
||||
if($general['special2'] == 41) { $ratio += 10; }
|
||||
if($general['special'] == 31) { $ratio += 20; }
|
||||
|
||||
// 국가보정
|
||||
if($mynation['type'] == 9) { $ratio += 10; }
|
||||
|
||||
// 거리보정
|
||||
$ratio /= $dist[$destination];
|
||||
|
||||
if($ratio > $ratio2) {
|
||||
$alllog[count($alllog)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>(이)가 누군가에게 공격 받았습니다.";
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 기습이 성공했습니다. <1>$date</>";
|
||||
|
||||
// 기습
|
||||
$destcity['agri'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['comm'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['secu'] -= rand() % round($_firingpower/4) + $_firingbase;
|
||||
$destcity['def'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['wall'] -= rand() % round($_firingpower/2) + $_firingbase;
|
||||
$destcity['rate'] -= rand() % round($_firingpower/50) + $_firingbase/50;
|
||||
if($destcity['agri'] < 0) { $destcity['agri'] = 0; }
|
||||
if($destcity['comm'] < 0) { $destcity['comm'] = 0; }
|
||||
if($destcity['secu'] < 0) { $destcity['secu'] = 0; }
|
||||
if($destcity['def'] < 0) { $destcity['def'] = 0; }
|
||||
if($destcity['wall'] < 0) { $destcity['wall'] = 0; }
|
||||
if($destcity['rate'] < 0) { $destcity['rate'] = 0; }
|
||||
$query = "update city set state=32,agri='{$destcity['agri']}',comm='{$destcity['comm']}',secu='{$destcity['secu']}',def='{$destcity['def']}',wall='{$destcity['wall']}',rate='{$destcity['rate']}' where city='$destination'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$query = "update general set firenum=firenum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
TrickInjury($connect, $destination);
|
||||
$exp = rand() % 100 + 201;
|
||||
$ded = rand() % 70 + 141;
|
||||
} else {
|
||||
$log[count($log)] = "<C>●</>{$admin['month']}월:<G><b>{$destcity['name']}</b></>에 기습이 실패했습니다. <1>$date</>";
|
||||
$exp = rand() % 100 + 1;
|
||||
$ded = rand() % 70 + 1;
|
||||
}
|
||||
|
||||
// 성격 보정
|
||||
$exp = CharExperience($exp, $general['personal']);
|
||||
$ded = CharDedication($ded, $general['personal']);
|
||||
|
||||
$general['leader2']++;
|
||||
$general['intel2']++;
|
||||
$general['power2']++;
|
||||
$general['gold'] -= $admin['develcost']*5;
|
||||
$general['rice'] -= $admin['develcost']*5;
|
||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',leader2='{$general['leader2']}',intel2='{$general['intel2']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
|
||||
$log = checkAbility($connect, $general, $log);
|
||||
}
|
||||
pushAllLog($alllog);
|
||||
pushGenLog($general, $log);
|
||||
}
|
||||
Reference in New Issue
Block a user