숙련전환 커맨드 추가
This commit is contained in:
@@ -659,8 +659,10 @@ function commandTable() {
|
|||||||
commandGroup("======= 개 인 ========");
|
commandGroup("======= 개 인 ========");
|
||||||
if($me['level'] >= 1) {
|
if($me['level'] >= 1) {
|
||||||
addCommand("단련(자금$develcost, 군량$develcost)", 41);
|
addCommand("단련(자금$develcost, 군량$develcost)", 41);
|
||||||
|
addCommand("숙련전환(통솔경험, 자금$develcost, 군량$develcost)", 58);
|
||||||
} else {
|
} else {
|
||||||
addCommand("단련(자금$develcost, 군량$develcost)", 41, 0);
|
addCommand("단련(자금$develcost, 군량$develcost)", 41, 0);
|
||||||
|
addCommand("숙련전환(통솔경험, 자금$develcost, 군량$develcost)", 58, 0);
|
||||||
}
|
}
|
||||||
addCommand("견문(자금?, 군량?, 경험치?)", 42);
|
addCommand("견문(자금?, 군량?, 경험치?)", 42);
|
||||||
if($city['trade'] > 0 || $me['special'] == 30) {
|
if($city['trade'] > 0 || $me['special'] == 30) {
|
||||||
|
|||||||
@@ -251,7 +251,9 @@ function getTurn(array $general, $type, $font=1) {
|
|||||||
case 57: //모반 시도
|
case 57: //모반 시도
|
||||||
$str[$i] = "모반 시도";
|
$str[$i] = "모반 시도";
|
||||||
break;
|
break;
|
||||||
|
case 58: //숙련 전환
|
||||||
|
$str[$i] = "숙련 전환";
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
$str[$i] = "????";
|
$str[$i] = "????";
|
||||||
break;
|
break;
|
||||||
@@ -623,6 +625,8 @@ function processCommand($no) {
|
|||||||
case 55: process_55($general); break; //거병
|
case 55: process_55($general); break; //거병
|
||||||
case 56: process_56($general); break; //해산
|
case 56: process_56($general); break; //해산
|
||||||
case 57: process_57($general); break; //모반 시도
|
case 57: process_57($general); break; //모반 시도
|
||||||
|
|
||||||
|
case 58: process_58($general); break; //숙련 전환
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2528,6 +2528,73 @@ function process_50(&$general) {
|
|||||||
pushGenLog($general, $log);
|
pushGenLog($general, $log);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function process_58(&$general) {
|
||||||
|
$db = DB::db();
|
||||||
|
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||||
|
|
||||||
|
$log = [];
|
||||||
|
$alllog = [];
|
||||||
|
$history = [];
|
||||||
|
$date = substr($general['turntime'],11,5);
|
||||||
|
|
||||||
|
$admin = $gameStor->getValues(['year', 'month', 'develcost']);
|
||||||
|
|
||||||
|
$command = DecodeCommand($general['turn0']);
|
||||||
|
|
||||||
|
$fromDexIdx = $command[1];
|
||||||
|
$toDexIdx = $command[2];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if($general['nation'] == 0) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:재야입니다. 숙련 전환 실패. <1>$date</>";
|
||||||
|
} elseif($general['gold'] < $admin['develcost']) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:자금이 모자랍니다. 숙련 전환 실패. <1>$date</>";
|
||||||
|
} elseif($general['rice'] < $admin['develcost']) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:군량이 모자랍니다. 숙련 전환 실패. <1>$date</>";
|
||||||
|
} elseif($fromDexIdx < 0 || $fromDexIdx > 4 || $toDexIdx < 0 || $toDexIdx > 4){
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:올바르지 않은 병종 코드입니다. 숙련 전환 실패. <1>$date</>";
|
||||||
|
} elseif($general['dex'.($fromDexIdx*10)] == 0) {
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:전환할 병종 숙련이 없습니다. 숙련 전환 실패. <1>$date</>";
|
||||||
|
} else {
|
||||||
|
|
||||||
|
$fromOrigDex = $general['dex'.($fromDexIdx*10)];
|
||||||
|
$toOrigDex = $general['dex'.($toDexIdx*10)];
|
||||||
|
|
||||||
|
$cutDex = Util::toInt($fromOrigDex * 0.3);
|
||||||
|
$fromNewDex = $fromOrigDex - $cutDex;
|
||||||
|
$addDex = Util::toInt($cutDex * 2 / 3);
|
||||||
|
$toNewDex = $toOrigDex + $addDex;
|
||||||
|
|
||||||
|
$exp = 10;
|
||||||
|
$exp = CharExperience($exp, $general['personal']);
|
||||||
|
|
||||||
|
$fromCrewStr = GameUnitConst::allType()[$fromDexIdx];
|
||||||
|
$toCrewStr = GameUnitConst::allType()[$toDexIdx];
|
||||||
|
|
||||||
|
|
||||||
|
$josaUl = JosaUtil::pick($cutDex, '을');
|
||||||
|
$josaRo = JosaUtil::pick($addDex, '로');
|
||||||
|
$log[] = "<C>●</>{$admin['month']}월:$fromCrewStr 숙련 {$cutDex}{$josaUl} $toCrewStr 숙련 {$addDex}{$josaRo} 전환했습니다. <1>$date</>";
|
||||||
|
|
||||||
|
$general['leader2'] += 2;
|
||||||
|
|
||||||
|
$db->update('general', [
|
||||||
|
'resturn'=>'SUCCESS',
|
||||||
|
'gold'=>$db->sqleval('gold-%i', $admin['develcost']),
|
||||||
|
'rice'=>$db->sqleval('rice-%i', $admin['develcost']),
|
||||||
|
'experience'=>$db->sqleval('experience+%i',$exp),
|
||||||
|
'leader2'=>$general['leader2'],
|
||||||
|
'dex'.($fromDexIdx*10)=>$fromNewDex,
|
||||||
|
'dex'.($toDexIdx*10)=>$toNewDex,
|
||||||
|
], 'no=%i', $general['no']);
|
||||||
|
}
|
||||||
|
pushGenLog($general, $log);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function process_99(&$general) {
|
function process_99(&$general) {
|
||||||
$db = DB::db();
|
$db = DB::db();
|
||||||
$gameStor = KVStorage::getStorage($db, 'game_env');
|
$gameStor = KVStorage::getStorage($db, 'game_env');
|
||||||
|
|||||||
@@ -98,6 +98,7 @@ switch($commandtype) {
|
|||||||
case 55: command_Single($turn, 55); break; //거병
|
case 55: command_Single($turn, 55); break; //거병
|
||||||
case 56: command_Single($turn, 56); break; //해산
|
case 56: command_Single($turn, 56); break; //해산
|
||||||
case 57: command_Single($turn, 57); break; //모반 시도
|
case 57: command_Single($turn, 57); break; //모반 시도
|
||||||
|
// case 58: command_Single($turn, 58); break; //숙련 전환
|
||||||
|
|
||||||
// case 61: command_61($turn, 61); break; //불가침
|
// case 61: command_61($turn, 61); break; //불가침
|
||||||
// case 62: command_62($turn, 62); break; //선포
|
// case 62: command_62($turn, 62); break; //선포
|
||||||
|
|||||||
@@ -95,6 +95,7 @@ switch($commandtype) {
|
|||||||
case 55: command_Single($turn, 55); break; //거병
|
case 55: command_Single($turn, 55); break; //거병
|
||||||
case 56: command_Single($turn, 56); break; //해산
|
case 56: command_Single($turn, 56); break; //해산
|
||||||
case 57: command_Single($turn, 57); break; //모반 시도
|
case 57: command_Single($turn, 57); break; //모반 시도
|
||||||
|
case 58: command_58( $turn, 58); break; //숙련 전환
|
||||||
|
|
||||||
case 61: command_61($turn, 61); break; //불가침
|
case 61: command_61($turn, 61); break; //불가침
|
||||||
case 62: command_62($turn, 62); break; //선포
|
case 62: command_62($turn, 62); break; //선포
|
||||||
@@ -1724,6 +1725,56 @@ function command_54($turn, $command) {
|
|||||||
ender();
|
ender();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function command_58($turn, $command) {
|
||||||
|
$db = DB::db();
|
||||||
|
$connect=$db->get();
|
||||||
|
$userID = Session::getUserID();
|
||||||
|
|
||||||
|
starter("숙련 전환");
|
||||||
|
|
||||||
|
$dexVals = $db->queryFirstList('SELECT dex0, dex10, dex20, dex30, dex40 FROM general WHERE owner = %i', $userID);
|
||||||
|
|
||||||
|
$dexTexts = [];
|
||||||
|
foreach($dexVals as $idx => $val){
|
||||||
|
$prevDexLevel = getDexCall($val);
|
||||||
|
$newDexLevel = getDexCall(Util::toInt($val * 0.7));
|
||||||
|
$addDex = Util::toInt(($val - $val * 0.7) * 0.5);
|
||||||
|
$dexTexts[$idx] = "$prevDexLevel ⇒ $newDexLevel, {$addDex} 전환";
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "
|
||||||
|
본인의 특정 병종 숙련을 30% 줄이고, 줄어든 숙련 중 2/3(20%p)를 다른 병종 숙련으로 전환합니다.<br>
|
||||||
|
<form name=form1 action=c_double.php method=post>
|
||||||
|
<select name=double size=1 style=color:white;background-color:black>
|
||||||
|
<option value=0>보병 ({$dexTexts[0]})</option>
|
||||||
|
<option value=1>궁병 ({$dexTexts[1]})</option>
|
||||||
|
<option value=2>기병 ({$dexTexts[2]})</option>
|
||||||
|
<option value=3>귀병 ({$dexTexts[3]})</option>
|
||||||
|
<option value=4>차병 ({$dexTexts[4]})</option>
|
||||||
|
</select>
|
||||||
|
숙련을
|
||||||
|
<select name=third size=1 style=color:white;background-color:black>
|
||||||
|
<option value=0>보병 ({$dexVals[0]})</option>
|
||||||
|
<option value=1>궁병 ({$dexVals[1]})</option>
|
||||||
|
<option value=2>기병 ({$dexVals[2]})</option>
|
||||||
|
<option value=3>귀병 ({$dexVals[3]})</option>
|
||||||
|
<option value=4>차병 ({$dexVals[4]})</option>
|
||||||
|
</select>
|
||||||
|
으로
|
||||||
|
<input type=submit value=전환>
|
||||||
|
<input type=hidden name=command value=$command>";
|
||||||
|
for($i=0; $i < count($turn); $i++) {
|
||||||
|
echo "
|
||||||
|
<input type=hidden name=turn[] value=$turn[$i]>";
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "
|
||||||
|
</form>
|
||||||
|
";
|
||||||
|
|
||||||
|
ender();
|
||||||
|
}
|
||||||
|
|
||||||
function command_61($turn, $command) {
|
function command_61($turn, $command) {
|
||||||
$db = DB::db();
|
$db = DB::db();
|
||||||
$connect=$db->get();
|
$connect=$db->get();
|
||||||
|
|||||||
Reference in New Issue
Block a user