국호 변경 추가
This commit is contained in:
@@ -106,6 +106,31 @@ if($command == 61) {
|
|||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 국호변경
|
||||||
|
if($command == 82) {
|
||||||
|
$query = "select no,nation,level from general where owner='{$userID}'";
|
||||||
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
$me = MYDB_fetch_array($result);
|
||||||
|
|
||||||
|
$name = StringUtil::neutralize($name);
|
||||||
|
if($name == "") { $name = "무명"; }
|
||||||
|
|
||||||
|
$db->update('general', [
|
||||||
|
'makenation'=>$name
|
||||||
|
], 'owner=%i', $userID);
|
||||||
|
|
||||||
|
$count = count($turn);
|
||||||
|
$str = "type=type";
|
||||||
|
for($i=0; $i < $count; $i++) {
|
||||||
|
$str .= ",l{$me['level']}turn{$turn[$i]}='{$comStr}'";
|
||||||
|
}
|
||||||
|
$query = "update nation set {$str} where nation='{$me['nation']}'";
|
||||||
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
|
header('location:b_chiefcenter.php', true, 303);
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
//포상, 몰수, 발령, 항복권고, 원조
|
//포상, 몰수, 발령, 항복권고, 원조
|
||||||
//선전포고, 종전, 파기, 초토화, 천도, 증축, 감축
|
//선전포고, 종전, 파기, 초토화, 천도, 증축, 감축
|
||||||
//백성동원, 수몰, 허보, 피장파장, 의병모집, 이호경식, 급습
|
//백성동원, 수몰, 허보, 피장파장, 의병모집, 이호경식, 급습
|
||||||
@@ -130,6 +155,8 @@ if($command == 23 || $command == 24 || $command == 27 || $command == 51 || $comm
|
|||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//일반 턴
|
//일반 턴
|
||||||
$query = [];
|
$query = [];
|
||||||
foreach($turn as $turnIdx){
|
foreach($turn as $turnIdx){
|
||||||
|
|||||||
+8
-1
@@ -759,9 +759,10 @@ function CoreCommandTable() {
|
|||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$me = MYDB_fetch_array($result);
|
$me = MYDB_fetch_array($result);
|
||||||
|
|
||||||
$query = "select level,can_change_flag from nation where nation='{$me['nation']}'";
|
$query = "select level,can_change_flag,aux from nation where nation='{$me['nation']}'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$nation = MYDB_fetch_array($result);
|
$nation = MYDB_fetch_array($result);
|
||||||
|
$nationAux = Json::decode($nation['aux']);
|
||||||
|
|
||||||
$query = "select no from general where nation='{$me['nation']}'";
|
$query = "select no from general where nation='{$me['nation']}'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
@@ -831,6 +832,12 @@ function CoreCommandTable() {
|
|||||||
} else {
|
} else {
|
||||||
addCommand("국기 변경", 81, 0);
|
addCommand("국기 변경", 81, 0);
|
||||||
}
|
}
|
||||||
|
if($nation['level']==7 && !$nationAux['used_82']??0){
|
||||||
|
addCommand("국호 변경", 82, 1);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
addCommand("국호 변경", 82, 0);
|
||||||
|
}
|
||||||
commandGroup("", 1);
|
commandGroup("", 1);
|
||||||
echo "
|
echo "
|
||||||
</select>
|
</select>
|
||||||
|
|||||||
@@ -476,6 +476,9 @@ function getCoreTurn($nation, $level) {
|
|||||||
|
|
||||||
$str[$i] = "【<font color={$color}>국기</font>】를 변경";
|
$str[$i] = "【<font color={$color}>국기</font>】를 변경";
|
||||||
break;
|
break;
|
||||||
|
case 82: //국호변경
|
||||||
|
$str[$i] = "국호를 변경";
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
$str[$i] = "????";
|
$str[$i] = "????";
|
||||||
break;
|
break;
|
||||||
@@ -552,6 +555,7 @@ function processCommand($no, $reduceTurn) {
|
|||||||
case 77: process_77($general); break; //이호경식
|
case 77: process_77($general); break; //이호경식
|
||||||
case 78: process_78($general); break; //급습
|
case 78: process_78($general); break; //급습
|
||||||
case 81: process_81($general); break; //국기변경
|
case 81: process_81($general); break; //국기변경
|
||||||
|
case 82: process_82($general); break; //국호변경
|
||||||
case 99: break; //수뇌부휴식
|
case 99: break; //수뇌부휴식
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1015,6 +1015,7 @@ function updateNationState() {
|
|||||||
$josaUl = JosaUtil::pick(getNationLevel($nationlevel), '을');
|
$josaUl = JosaUtil::pick(getNationLevel($nationlevel), '을');
|
||||||
$history[] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y><b>【작위】</b></><D><b>{$nation['name']}</b></>의 군주가 <Y>".getNationLevel($nationlevel)."</>{$josaUl} 자칭하였습니다.";
|
$history[] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y><b>【작위】</b></><D><b>{$nation['name']}</b></>의 군주가 <Y>".getNationLevel($nationlevel)."</>{$josaUl} 자칭하였습니다.";
|
||||||
pushNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 군주가 <Y>".getNationLevel($nationlevel)."</>{$josaUl} 자칭");
|
pushNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<D><b>{$nation['name']}</b></>의 군주가 <Y>".getNationLevel($nationlevel)."</>{$josaUl} 자칭");
|
||||||
|
$db->update('nation', ['can_change_flag'=>1], 'nation=%i', $nation['nation']);
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
$history[] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y><b>【작위】</b></><D><b>{$nation['name']}</b></>의 군주가 <Y>".getNationLevel($nationlevel)."</>에 등극하였습니다.";
|
$history[] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y><b>【작위】</b></><D><b>{$nation['name']}</b></>의 군주가 <Y>".getNationLevel($nationlevel)."</>에 등극하였습니다.";
|
||||||
|
|||||||
@@ -2477,3 +2477,83 @@ function process_81(&$general) {
|
|||||||
pushGeneralPublicRecord($alllog, $admin['year'], $admin['month']);
|
pushGeneralPublicRecord($alllog, $admin['year'], $admin['month']);
|
||||||
pushGenLog($general, $log);
|
pushGenLog($general, $log);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function process_82(&$general) {
|
||||||
|
$db = DB::db();
|
||||||
|
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||||
|
$connect=$db->get();
|
||||||
|
|
||||||
|
$log = [];
|
||||||
|
$alllog = [];
|
||||||
|
$history = [];
|
||||||
|
|
||||||
|
$date = substr($general['turntime'],11,5);
|
||||||
|
|
||||||
|
$admin = $gameStor->getValues(['year','month']);
|
||||||
|
|
||||||
|
$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,name,type,sabotagelimit,aux from nation where nation='{$general['nation']}'";
|
||||||
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
$nation = MYDB_fetch_array($result);
|
||||||
|
$nationAux = Json::decode($nation['aux']??'{}');
|
||||||
|
$newNationName = $general['makenation'];
|
||||||
|
|
||||||
|
$nationExists = $db->queryFirstField('SELECT nation FROM nation WHERE name = %s', $newNationName);
|
||||||
|
|
||||||
|
if($nationExists){
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:이미 같은 국호를 가진 곳이 있습니다. 국호변경 실패. <1>$date</>";
|
||||||
|
}
|
||||||
|
else if($city['nation'] != $general['nation']) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:아국이 아닙니다. 국호변경 실패. <1>$date</>";
|
||||||
|
} elseif($general['level'] < 5) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:수뇌부가 아닙니다. 국호변경 실패. <1>$date</>";
|
||||||
|
} elseif($nationAux['used_82']??0) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:더이상 변경이 불가능합니다. 국호변경 실패. <1>$date</>";
|
||||||
|
} else {
|
||||||
|
$josaRo = JosaUtil::pick($newNationName, '로');
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:국호를 <D><b>{$newNationName}{$josaRo}</b></> 변경합니다. <1>$date</>";
|
||||||
|
$exp = 10;
|
||||||
|
$ded = 10;
|
||||||
|
|
||||||
|
// 성격 보정
|
||||||
|
$exp = CharExperience($exp, $general['personal']);
|
||||||
|
$ded = CharDedication($ded, $general['personal']);
|
||||||
|
|
||||||
|
$josaYi = JosaUtil::pick($general['name'], '이');
|
||||||
|
$josaYiNation = JosaUtil::pick($nation['name'], '이');
|
||||||
|
|
||||||
|
$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 = ["<C>●</><Y>{$general['name']}</>{$josaYi} 국호를 <D><b>{$newNationName}</b></>{$josaRo} 변경합니다."];
|
||||||
|
for($i=0; $i < $cnt; $i++) {
|
||||||
|
$gen = MYDB_fetch_array($result);
|
||||||
|
pushGenLog($gen, $genlog);
|
||||||
|
}
|
||||||
|
|
||||||
|
$alllog[] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>{$josaYi} 국호를 <D><b>{$newNationName}</b></>{$josaRo} 변경합니다.";
|
||||||
|
$history[] = "<C>●</>{$admin['year']}년 {$admin['month']}월:<L><b>【국호변경】</b></><D><b>{$nation['name']}</b></>{$josaYiNation} 국호를 <D><b>{$newNationName}</b></>{$josaRo} 변경합니다.";
|
||||||
|
pushGeneralHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:국호를 <D><b>{$newNationName}</b></>{$josaRo} 변경");
|
||||||
|
pushNationHistory($nation, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>{$general['name']}</>{$josaYi} 국호를 <D><b>{$newNationName}</b></>{$josaRo} 변경");
|
||||||
|
|
||||||
|
$nationAux['used_82'] = 1;
|
||||||
|
//국기변경
|
||||||
|
$db->update('nation', [
|
||||||
|
'name'=>$newNationName,
|
||||||
|
'aux'=>Json::encode($nationAux)
|
||||||
|
], 'nation=%i', $nation['nation']);
|
||||||
|
|
||||||
|
//경험치, 공헌치
|
||||||
|
$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();
|
||||||
|
}
|
||||||
|
|
||||||
|
pushWorldHistory($history, $admin['year'], $admin['month']);
|
||||||
|
pushGeneralPublicRecord($alllog, $admin['year'], $admin['month']);
|
||||||
|
pushGenLog($general, $log);
|
||||||
|
}
|
||||||
@@ -124,6 +124,7 @@ switch($commandtype) {
|
|||||||
// case 78: command_78($turn, 78); break; //급습
|
// case 78: command_78($turn, 78); break; //급습
|
||||||
|
|
||||||
// case 81: command_81($turn, 81); break; //국기변경
|
// case 81: command_81($turn, 81); break; //국기변경
|
||||||
|
// case 82: command_82($turn, 82); break; //국호변경
|
||||||
|
|
||||||
// case 99: command_99($turn); break; //수뇌부 후식
|
// case 99: command_99($turn); break; //수뇌부 후식
|
||||||
default: command_Other($turn, $commandtype); break;
|
default: command_Other($turn, $commandtype); break;
|
||||||
|
|||||||
@@ -117,6 +117,7 @@ switch($commandtype) {
|
|||||||
case 77: command_77($turn, 77); break; //이호경식
|
case 77: command_77($turn, 77); break; //이호경식
|
||||||
case 78: command_78($turn, 78); break; //급습
|
case 78: command_78($turn, 78); break; //급습
|
||||||
case 81: command_81($turn, 81); break; //국기변경
|
case 81: command_81($turn, 81); break; //국기변경
|
||||||
|
case 82: command_82($turn, 82); break; //국호변경
|
||||||
case 99: command_99($turn); break; //수뇌부 휴식
|
case 99: command_99($turn); break; //수뇌부 휴식
|
||||||
|
|
||||||
default:command_Single($turn, 0); break; //휴식
|
default:command_Single($turn, 0); break; //휴식
|
||||||
@@ -2620,3 +2621,36 @@ function command_81($turn, $command) {
|
|||||||
";
|
";
|
||||||
ender(1);
|
ender(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function command_82($turn, $command) {
|
||||||
|
$db = DB::db();
|
||||||
|
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||||
|
$connect=$db->get();
|
||||||
|
|
||||||
|
$userID = Session::getUserID();
|
||||||
|
$nationID = $db->queryFirstField('SELECT nation FROM general WHERE owner = %i', $userID);
|
||||||
|
$nation = $db->queryFirstRow('SELECT level,aux FROM nation WHERE nation = %i', $nationID);
|
||||||
|
$nationAux = Json::decode($nation['aux']??'{}');
|
||||||
|
|
||||||
|
starter("국호변경");
|
||||||
|
|
||||||
|
if($nation && $nation['level'] == 7 && !$nationAux['used_82']??0){
|
||||||
|
?>
|
||||||
|
나라의 이름을 바꿉니다. 황제가 된 후 1회 가능합니다.<br>
|
||||||
|
|
||||||
|
<form name=form1 action=c_double.php method=post>
|
||||||
|
국명 : <input type=text name=name size=18 maxlength=9 style=text-align:right;color:white;background-color:black>
|
||||||
|
|
||||||
|
<input type=submit value='국호 변경'>
|
||||||
|
<input type=hidden name=command value=<?=$command?>>
|
||||||
|
<?php
|
||||||
|
for($i=0; $i < count($turn); $i++) {
|
||||||
|
echo "<input type=hidden name=turn[] value=$turn[$i]>";
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "</form>";
|
||||||
|
} else {
|
||||||
|
echo "국호 변경이 불가능합니다.<br>";
|
||||||
|
}
|
||||||
|
ender();
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user