leader->leadership, power->strength
This commit is contained in:
@@ -106,7 +106,7 @@ switch($btn) {
|
|||||||
[$year, $month] = $gameStor->getValuesAsArray(['year', 'month']);
|
[$year, $month] = $gameStor->getValuesAsArray(['year', 'month']);
|
||||||
$text = "특기 부여!";
|
$text = "특기 부여!";
|
||||||
|
|
||||||
foreach($db->query("SELECT `no`,leader,power,intel,dex0,dex10,dex20,dex30,dex40 FROM general WHERE `no` IN %li", $genlist) as $general){
|
foreach($db->query("SELECT `no`,leadership,strength,intel,dex0,dex10,dex20,dex30,dex40 FROM general WHERE `no` IN %li", $genlist) as $general){
|
||||||
$msg = new Message(Message::MSGTYPE_PRIVATE, $src, MessageTarget::buildQuick($general['no']), $text, new \DateTime(), new \DateTime('9999-12-31'), []);
|
$msg = new Message(Message::MSGTYPE_PRIVATE, $src, MessageTarget::buildQuick($general['no']), $text, new \DateTime(), new \DateTime('9999-12-31'), []);
|
||||||
$msg->send(true);
|
$msg->send(true);
|
||||||
|
|
||||||
|
|||||||
+7
-7
@@ -181,8 +181,8 @@ switch($type) {
|
|||||||
case 4: $query .= " order by A.rice desc"; break;
|
case 4: $query .= " order by A.rice desc"; break;
|
||||||
case 5: $query .= " order by avg(B.gold) desc"; break;
|
case 5: $query .= " order by avg(B.gold) desc"; break;
|
||||||
case 6: $query .= " order by avg(B.rice) desc"; break;
|
case 6: $query .= " order by avg(B.rice) desc"; break;
|
||||||
case 7: $query .= " order by avg(B.leader) desc"; break;
|
case 7: $query .= " order by avg(B.leadership) desc"; break;
|
||||||
case 8: $query .= " order by avg(B.power) desc"; break;
|
case 8: $query .= " order by avg(B.strength) desc"; break;
|
||||||
case 9: $query .= " order by avg(B.intel) desc"; break;
|
case 9: $query .= " order by avg(B.intel) desc"; break;
|
||||||
case 10: $query .= " order by avg(B.explevel) desc"; break;
|
case 10: $query .= " order by avg(B.explevel) desc"; break;
|
||||||
case 11: $query .= " order by avg(B.connect) desc"; break;
|
case 11: $query .= " order by avg(B.connect) desc"; break;
|
||||||
@@ -201,8 +201,8 @@ for($i=0; $i < $nationCount; $i++) {
|
|||||||
$query = "select COUNT(*) as cnt,
|
$query = "select COUNT(*) as cnt,
|
||||||
ROUND(AVG(gold)) as avgg,
|
ROUND(AVG(gold)) as avgg,
|
||||||
ROUND(AVG(rice)) as avgr,
|
ROUND(AVG(rice)) as avgr,
|
||||||
SUM(leader) as leader, ROUND(AVG(leader), 1) as avgl,
|
SUM(leadership) as leadership, ROUND(AVG(leadership), 1) as avgl,
|
||||||
ROUND(AVG(power), 1) as avgp,
|
ROUND(AVG(strength), 1) as avgs,
|
||||||
ROUND(AVG(intel), 1) as avgi,
|
ROUND(AVG(intel), 1) as avgi,
|
||||||
ROUND(AVG(explevel), 1) as avge,
|
ROUND(AVG(explevel), 1) as avge,
|
||||||
SUM(crew) as crew
|
SUM(crew) as crew
|
||||||
@@ -227,7 +227,7 @@ for($i=0; $i < $nationCount; $i++) {
|
|||||||
<td align=center style=background-color:{$nation['color']};color:".newColor($nation['color']).";>{$nation['name']}</td>
|
<td align=center style=background-color:{$nation['color']};color:".newColor($nation['color']).";>{$nation['name']}</td>
|
||||||
<td align=center> {$nation['connect']} </td>
|
<td align=center> {$nation['connect']} </td>
|
||||||
<td align=center> {$nation['con']} </td>
|
<td align=center> {$nation['con']} </td>
|
||||||
<td align=center> {$nation['power']} </td>
|
<td align=center> {$nation['strength']} </td>
|
||||||
<td align=center> {$gen['cnt']} </td>
|
<td align=center> {$gen['cnt']} </td>
|
||||||
<td align=center> {$city['cnt']} </td>
|
<td align=center> {$city['cnt']} </td>
|
||||||
<td align=center> {$nation['tech']} </td>
|
<td align=center> {$nation['tech']} </td>
|
||||||
@@ -237,7 +237,7 @@ for($i=0; $i < $nationCount; $i++) {
|
|||||||
<td align=center> {$gen['avgg']} </td>
|
<td align=center> {$gen['avgg']} </td>
|
||||||
<td align=center> {$gen['avgr']} </td>
|
<td align=center> {$gen['avgr']} </td>
|
||||||
<td align=center> {$gen['avgl']} </td>
|
<td align=center> {$gen['avgl']} </td>
|
||||||
<td align=center> {$gen['avgp']} </td>
|
<td align=center> {$gen['avgs']} </td>
|
||||||
<td align=center> {$gen['avgi']} </td>
|
<td align=center> {$gen['avgi']} </td>
|
||||||
<td align=center> {$gen['avge']} </td>
|
<td align=center> {$gen['avge']} </td>
|
||||||
<td align=center> {$nation['dex0']} </td>
|
<td align=center> {$nation['dex0']} </td>
|
||||||
@@ -245,7 +245,7 @@ for($i=0; $i < $nationCount; $i++) {
|
|||||||
<td align=center> {$nation['dex20']} </td>
|
<td align=center> {$nation['dex20']} </td>
|
||||||
<td align=center> {$nation['dex30']} </td>
|
<td align=center> {$nation['dex30']} </td>
|
||||||
<td align=center> {$nation['dex40']} </td>
|
<td align=center> {$nation['dex40']} </td>
|
||||||
<td align=center> {$gen['crew']}/{$gen['leader']}00 </td>
|
<td align=center> {$gen['crew']}/{$gen['leadership']}00 </td>
|
||||||
<td align=center> {$city['pop']}/{$city['pop2']} </td>
|
<td align=center> {$city['pop']}/{$city['pop2']} </td>
|
||||||
<td align=center> ".round($city['trust'],1)."% </td>
|
<td align=center> ".round($city['trust'],1)."% </td>
|
||||||
<td align=center> {$city['agri']}% </td>
|
<td align=center> {$city['agri']}% </td>
|
||||||
|
|||||||
@@ -127,12 +127,12 @@ $types = [
|
|||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
["일 기 토 승 률", "percent", function($v){
|
["일 기 토 승 률", "percent", function($v){
|
||||||
$totalCnt = $v['tpw']+$v['tpd']+$v['tpl'];
|
$totalCnt = $v['tsw']+$v['tsd']+$v['tsl'];
|
||||||
if($totalCnt < 50){
|
if($totalCnt < 50){
|
||||||
$v['value'] = 0;
|
$v['value'] = 0;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$v['value'] = $v['tpw']/max(1, $totalCnt);
|
$v['value'] = $v['tsw']/max(1, $totalCnt);
|
||||||
}
|
}
|
||||||
return $v;
|
return $v;
|
||||||
}],
|
}],
|
||||||
|
|||||||
+13
-13
@@ -89,8 +89,8 @@ foreach (getAllNationStaticInfo() as $nation) {
|
|||||||
|
|
||||||
[$orderKey, $orderDesc] = [
|
[$orderKey, $orderDesc] = [
|
||||||
1=>['nation', false],
|
1=>['nation', false],
|
||||||
2=>['leader', true],
|
2=>['leadership', true],
|
||||||
3=>['power', true],
|
3=>['strength', true],
|
||||||
4=>['intel', true],
|
4=>['intel', true],
|
||||||
5=>['experience', true],
|
5=>['experience', true],
|
||||||
6=>['dedication', true],
|
6=>['dedication', true],
|
||||||
@@ -105,7 +105,7 @@ foreach (getAllNationStaticInfo() as $nation) {
|
|||||||
15=>['npc', true],
|
15=>['npc', true],
|
||||||
][$type];
|
][$type];
|
||||||
|
|
||||||
$generalList = $db->query('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,injury,leader,power,intel,experience,dedication,level,killturn,connect from general order by %b %l', $orderKey, $orderDesc?'desc':'');
|
$generalList = $db->query('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,injury,leadership,strength,intel,experience,dedication,level,killturn,connect from general order by %b %l', $orderKey, $orderDesc?'desc':'');
|
||||||
|
|
||||||
echo"
|
echo"
|
||||||
<table align=center width=1000 class='tb_layout bg0'>
|
<table align=center width=1000 class='tb_layout bg0'>
|
||||||
@@ -137,15 +137,15 @@ foreach($generalList as $general){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($general['injury'] > 0) {
|
if ($general['injury'] > 0) {
|
||||||
$leader = intdiv($general['leader'] * (100 - $general['injury']), 100);
|
$leadership = intdiv($general['leadership'] * (100 - $general['injury']), 100);
|
||||||
$power = intdiv($general['power'] * (100 - $general['injury']), 100);
|
$strength = intdiv($general['strength'] * (100 - $general['injury']), 100);
|
||||||
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
||||||
$leader = "<font color=red>{$leader}</font>{$lbonusText}";
|
$leadership = "<font color=red>{$leadership}</font>{$lbonusText}";
|
||||||
$power = "<font color=red>{$power}</font>";
|
$strength = "<font color=red>{$strength}</font>";
|
||||||
$intel = "<font color=red>{$intel}</font>";
|
$intel = "<font color=red>{$intel}</font>";
|
||||||
} else {
|
} else {
|
||||||
$leader = "{$general['leader']}{$lbonusText}";
|
$leadership = "{$general['leadership']}{$lbonusText}";
|
||||||
$power = "{$general['power']}";
|
$strength = "{$general['strength']}";
|
||||||
$intel = "{$general['intel']}";
|
$intel = "{$general['intel']}";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -169,9 +169,9 @@ foreach($generalList as $general){
|
|||||||
echo "
|
echo "
|
||||||
<tr data-general-id='{$general['no']}'
|
<tr data-general-id='{$general['no']}'
|
||||||
data-general-wounded='{$general['injury']}'
|
data-general-wounded='{$general['injury']}'
|
||||||
data-general-leadership='{$general['leader']}'
|
data-general-leadership='{$general['leadership']}'
|
||||||
data-general-leadership-bonus='{$lbonus}'
|
data-general-leadership-bonus='{$lbonus}'
|
||||||
data-general-power='{$general['power']}'
|
data-general-strength='{$general['strength']}'
|
||||||
data-general-intel='{$general['intel']}'
|
data-general-intel='{$general['intel']}'
|
||||||
data-is-npc='".($general['npc']>=2?'true':'false')."'
|
data-is-npc='".($general['npc']>=2?'true':'false')."'
|
||||||
>
|
>
|
||||||
@@ -187,8 +187,8 @@ foreach($generalList as $general){
|
|||||||
<td align=center>";
|
<td align=center>";
|
||||||
echo getLevel($general['level']);
|
echo getLevel($general['level']);
|
||||||
echo "</td>
|
echo "</td>
|
||||||
<td align=center>$leader</td>
|
<td align=center>$leadership</td>
|
||||||
<td align=center>$power</td>
|
<td align=center>$strength</td>
|
||||||
<td align=center>$intel</td>
|
<td align=center>$intel</td>
|
||||||
<td align=center>{$general['killturn']}</td>
|
<td align=center>{$general['killturn']}</td>
|
||||||
<td align=center>{$general['connect']}";
|
<td align=center>{$general['connect']}";
|
||||||
|
|||||||
+10
-10
@@ -62,14 +62,14 @@ foreach (getAllNationStaticInfo() as $nation) {
|
|||||||
|
|
||||||
switch ($type) {//FIXME: $query 처리 부실
|
switch ($type) {//FIXME: $query 처리 부실
|
||||||
default:
|
default:
|
||||||
case 1: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by binary(name)"; break;
|
case 1: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by binary(name)"; break;
|
||||||
case 2: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by nation"; break;
|
case 2: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by nation"; break;
|
||||||
case 3: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by sum desc"; break;
|
case 3: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by sum desc"; break;
|
||||||
case 4: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by leader"; break;
|
case 4: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by leadership"; break;
|
||||||
case 5: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by power"; break;
|
case 5: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by strength"; break;
|
||||||
case 6: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by intel"; break;
|
case 6: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by intel"; break;
|
||||||
case 7: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by experience"; break;
|
case 7: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by experience"; break;
|
||||||
case 8: $query = "select npc,nation,name,name2,special,special2,personal,leader,power,intel,leader+power+intel as sum,explevel,experience,dedication from general where npc=1 order by dedication"; break;
|
case 8: $query = "select npc,nation,name,name2,special,special2,personal,leadership,strength,intel,leadership+strength+intel as sum,explevel,experience,dedication from general where npc=1 order by dedication"; break;
|
||||||
}
|
}
|
||||||
$genresult = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
$genresult = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
||||||
$gencount = MYDB_num_rows($genresult);
|
$gencount = MYDB_num_rows($genresult);
|
||||||
@@ -111,8 +111,8 @@ for ($j=0; $j < $gencount; $j++) {
|
|||||||
<td align=center>".displayCharInfo($general['personal'])."</td>
|
<td align=center>".displayCharInfo($general['personal'])."</td>
|
||||||
<td align=center>".displaySpecialDomesticInfo($general['special'])." / ".displaySpecialWarInfo($general['special2'])."</td>
|
<td align=center>".displaySpecialDomesticInfo($general['special'])." / ".displaySpecialWarInfo($general['special2'])."</td>
|
||||||
<td align=center>{$general['sum']}</td>
|
<td align=center>{$general['sum']}</td>
|
||||||
<td align=center>{$general['leader']}</td>
|
<td align=center>{$general['leadership']}</td>
|
||||||
<td align=center>{$general['power']}</td>
|
<td align=center>{$general['strength']}</td>
|
||||||
<td align=center>{$general['intel']}</td>
|
<td align=center>{$general['intel']}</td>
|
||||||
<td align=center>{$general['experience']}</td>
|
<td align=center>{$general['experience']}</td>
|
||||||
<td align=center>{$general['dedication']}</td>
|
<td align=center>{$general['dedication']}</td>
|
||||||
|
|||||||
+7
-7
@@ -32,10 +32,10 @@ if ($con >= 2) {
|
|||||||
|
|
||||||
switch ($admin['tnmt_type']) {
|
switch ($admin['tnmt_type']) {
|
||||||
default: throw new \RuntimeException('Invalid tnmt_type');break;
|
default: throw new \RuntimeException('Invalid tnmt_type');break;
|
||||||
case 0: $tnmt_type = "<font color=cyan>전력전</font>"; $tp = "tot"; $tp2 = "종합"; $tp3 = "total"; break;
|
case 0: $tnmt_type = "<font color=cyan>전력전</font>"; $tp = "total"; $tp2 = "종합"; $tp3 = "total"; break;
|
||||||
case 1: $tnmt_type = "<font color=cyan>통솔전</font>"; $tp = "ldr"; $tp2 = "통솔"; $tp3 = "leader"; break;
|
case 1: $tnmt_type = "<font color=cyan>통솔전</font>"; $tp = "leadership"; $tp2 = "통솔"; $tp3 = "leadership"; break;
|
||||||
case 2: $tnmt_type = "<font color=cyan>일기토</font>"; $tp = "pwr"; $tp2 = "무력"; $tp3 = "power"; break;
|
case 2: $tnmt_type = "<font color=cyan>일기토</font>"; $tp = "strength"; $tp2 = "무력"; $tp3 = "strength"; break;
|
||||||
case 3: $tnmt_type = "<font color=cyan>설전</font>"; $tp = "itl"; $tp2 = "지력"; $tp3 = "intel"; break;
|
case 3: $tnmt_type = "<font color=cyan>설전</font>"; $tp = "intel"; $tp2 = "지력"; $tp3 = "intel"; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$str1 = getTournament($admin['tournament']);
|
$str1 = getTournament($admin['tournament']);
|
||||||
@@ -401,8 +401,8 @@ if ($admin['tournament'] == 6) {
|
|||||||
|
|
||||||
$type1 = array("전 력 전", "통 솔 전", "일 기 토", "설 전");
|
$type1 = array("전 력 전", "통 솔 전", "일 기 토", "설 전");
|
||||||
$type2 = array("종합", "통솔", "무력", "지력");
|
$type2 = array("종합", "통솔", "무력", "지력");
|
||||||
$type3 = array("tt", "tl", "tp", "ti");
|
$type3 = array("tt", "tl", "ts", "ti");
|
||||||
$type4 = array("total", "leader", "power", "intel");
|
$type4 = array("total", "leadership", "strength", "intel");
|
||||||
|
|
||||||
for ($i=0; $i < 4; $i++) {
|
for ($i=0; $i < 4; $i++) {
|
||||||
$grp = $i;
|
$grp = $i;
|
||||||
@@ -412,7 +412,7 @@ for ($i=0; $i < 4; $i++) {
|
|||||||
<tr><td colspan=9 align=center style=color:white;background-color:black;><font size=4>{$type1[$i]}</font></td></tr>
|
<tr><td colspan=9 align=center style=color:white;background-color:black;><font size=4>{$type1[$i]}</font></td></tr>
|
||||||
<tr id=bg1><td align=center>순</td><td align=center>장수</td><td align=center>{$type2[$i]}</td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>勝</td></tr>";
|
<tr id=bg1><td align=center>순</td><td align=center>장수</td><td align=center>{$type2[$i]}</td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>勝</td></tr>";
|
||||||
|
|
||||||
$query = "select npc,name,leader,power,intel,leader+power+intel as total,{$type3[$i]}p as prize,{$type3[$i]}w+{$type3[$i]}d+{$type3[$i]}l as game,{$type3[$i]}w as win,{$type3[$i]}d as draw,{$type3[$i]}l as lose,{$type3[$i]}g as gl from general order by gl desc, game desc, win desc, draw desc, lose, no limit 0,30";
|
$query = "select npc,name,leadership,strength,intel,leadership+strength+intel as total,{$type3[$i]}p as prize,{$type3[$i]}w+{$type3[$i]}d+{$type3[$i]}l as game,{$type3[$i]}w as win,{$type3[$i]}d as draw,{$type3[$i]}l as lose,{$type3[$i]}g as gl from general order by gl desc, game desc, win desc, draw desc, lose, no limit 0,30";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
||||||
for ($k=1; $k <= 30; $k++) {
|
for ($k=1; $k <= 30; $k++) {
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|||||||
@@ -188,12 +188,12 @@ if($city['trade'] === null) {
|
|||||||
$city['trade'] = "- ";
|
$city['trade'] = "- ";
|
||||||
}
|
}
|
||||||
|
|
||||||
$query = "select npc,mode,no,picture,imgsvr,name,injury,leader,power,intel,level,nation,crewtype,crew,train,atmos from general where city='{$city['city']}' order by dedication desc"; // 장수 목록
|
$query = "select npc,mode,no,picture,imgsvr,name,injury,leadership,strength,intel,level,nation,crewtype,crew,train,atmos from general where city='{$city['city']}' order by dedication desc"; // 장수 목록
|
||||||
$genresult = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$genresult = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$gencount = MYDB_num_rows($genresult);
|
$gencount = MYDB_num_rows($genresult);
|
||||||
|
|
||||||
$generals = $db->query(
|
$generals = $db->query(
|
||||||
'SELECT npc,mode,no,picture,imgsvr,name,injury,leader,power,intel,level,nation,crewtype,crew,train,atmos from general where city=%i order by name',
|
'SELECT npc,mode,no,picture,imgsvr,name,injury,leadership,strength,intel,level,nation,crewtype,crew,train,atmos from general where city=%i order by name',
|
||||||
$city['city']
|
$city['city']
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -244,12 +244,12 @@ for($j=0; $j < $gencount; $j++) {
|
|||||||
$name = $general['name'];
|
$name = $general['name'];
|
||||||
$nameText = formatName($name, $general['npc']);
|
$nameText = formatName($name, $general['npc']);
|
||||||
|
|
||||||
$leadership = $general['leader'];
|
$leadership = $general['leadership'];
|
||||||
$power = $general['power'];
|
$strength = $general['strength'];
|
||||||
$intel = $general['intel'];
|
$intel = $general['intel'];
|
||||||
|
|
||||||
$leadershipText = formatWounded($leadership, $general['injury']);
|
$leadershipText = formatWounded($leadership, $general['injury']);
|
||||||
$powerText = formatWounded($power, $general['injury']);
|
$strengthText = formatWounded($strength, $general['injury']);
|
||||||
$intelText = formatWounded($intel, $general['injury']);
|
$intelText = formatWounded($intel, $general['injury']);
|
||||||
|
|
||||||
$level = $general['level'];
|
$level = $general['level'];
|
||||||
@@ -313,8 +313,8 @@ for($j=0; $j < $gencount; $j++) {
|
|||||||
'leadershipBonusText'=>$leadershipBonusText,
|
'leadershipBonusText'=>$leadershipBonusText,
|
||||||
'level'=>$level,
|
'level'=>$level,
|
||||||
'levelText'=>$levelText,
|
'levelText'=>$levelText,
|
||||||
'power'=>$power,
|
'strength'=>$strength,
|
||||||
'powerText'=>$powerText,
|
'strengthText'=>$strengthText,
|
||||||
'intel'=>$intel,
|
'intel'=>$intel,
|
||||||
'intelText'=>$intelText,
|
'intelText'=>$intelText,
|
||||||
'defenceMode'=>$defenceMode,
|
'defenceMode'=>$defenceMode,
|
||||||
|
|||||||
+9
-9
@@ -103,7 +103,7 @@ switch ($type) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$generals = $db->query(
|
$generals = $db->query(
|
||||||
'SELECT npc,mode,no,level,troop,city,injury,leader,power,intel,experience,name,gold,rice,crewtype,crew,train,atmos,killturn,turntime,nation from general WHERE nation = %i %l',
|
'SELECT npc,mode,no,level,troop,city,injury,leadership,strength,intel,experience,name,gold,rice,crewtype,crew,train,atmos,killturn,turntime,nation from general WHERE nation = %i %l',
|
||||||
$me['nation'],
|
$me['nation'],
|
||||||
$orderSQL
|
$orderSQL
|
||||||
);
|
);
|
||||||
@@ -140,20 +140,20 @@ foreach ($generals as &$general) {
|
|||||||
$general['lbonusText'] = $lbonusText;
|
$general['lbonusText'] = $lbonusText;
|
||||||
|
|
||||||
if ($general['injury'] > 0) {
|
if ($general['injury'] > 0) {
|
||||||
$leader = intdiv($general['leader'] * (100 - $general['injury']), 100);
|
$leadership = intdiv($general['leadership'] * (100 - $general['injury']), 100);
|
||||||
$power = intdiv($general['power'] * (100 - $general['injury']), 100);
|
$strength = intdiv($general['strength'] * (100 - $general['injury']), 100);
|
||||||
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
||||||
$leader = "<font color=red>{$leader}</font>{$lbonusText}";
|
$leadership = "<font color=red>{$leadership}</font>{$lbonusText}";
|
||||||
$power = "<font color=red>{$power}</font>";
|
$strength = "<font color=red>{$strength}</font>";
|
||||||
$intel = "<font color=red>{$intel}</font>";
|
$intel = "<font color=red>{$intel}</font>";
|
||||||
} else {
|
} else {
|
||||||
$leader = "{$general['leader']}{$lbonusText}";
|
$leadership = "{$general['leadership']}{$lbonusText}";
|
||||||
$power = "{$general['power']}";
|
$strength = "{$general['strength']}";
|
||||||
$intel = "{$general['intel']}";
|
$intel = "{$general['intel']}";
|
||||||
}
|
}
|
||||||
|
|
||||||
$general['leaderText'] = $leader;
|
$general['leadershipText'] = $leadership;
|
||||||
$general['powerText'] = $power;
|
$general['strengthText'] = $strength;
|
||||||
$general['intelText'] = $intel;
|
$general['intelText'] = $intel;
|
||||||
|
|
||||||
$general['expLevelText'] = getExpLevel($general['experience']);
|
$general['expLevelText'] = getExpLevel($general['experience']);
|
||||||
|
|||||||
@@ -196,7 +196,7 @@ if($meLevel >= 5 && $nation["l{$meLevel}set"] == 0) {
|
|||||||
echo "
|
echo "
|
||||||
<select name=outlist size=1 style=color:white;background-color:black;>";
|
<select name=outlist size=1 style=color:white;background-color:black;>";
|
||||||
|
|
||||||
$query = "select no,npc,name,level,leader,power,intel,killturn from general where nation='{$me['nation']}' and level!='12' and no!='{$me['no']}' order by npc,binary(name)";
|
$query = "select no,npc,name,level,leadership,strength,intel,killturn from general where nation='{$me['nation']}' and level!='12' and no!='{$me['no']}' order by npc,binary(name)";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$gencount = MYDB_num_rows($result);
|
$gencount = MYDB_num_rows($result);
|
||||||
|
|
||||||
@@ -206,7 +206,7 @@ if($meLevel >= 5 && $nation["l{$meLevel}set"] == 0) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
echo "
|
echo "
|
||||||
<option value={$general['no']}>{$general['name']} <small>({$general['leader']}/{$general['power']}/{$general['intel']}, {$general['killturn']}턴)</small></option>";
|
<option value={$general['no']}>{$general['name']} <small>({$general['leadership']}/{$general['strength']}/{$general['intel']}, {$general['killturn']}턴)</small></option>";
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
@@ -272,11 +272,11 @@ echo "
|
|||||||
";
|
";
|
||||||
|
|
||||||
$queries = [];
|
$queries = [];
|
||||||
$queries[10] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and power>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$queries[10] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and strength>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
$queries[9] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and intel>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$queries[9] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and intel>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
$queries[8] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and power>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$queries[8] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and strength>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
$queries[7] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and intel>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$queries[7] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and intel>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
$queries[6] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and power>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$queries[6] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and strength>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
$queries[5] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and intel>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$queries[5] = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and intel>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
|
|
||||||
for($i=10; $i >= $lv; $i--) {
|
for($i=10; $i >= $lv; $i--) {
|
||||||
@@ -390,7 +390,7 @@ if($meLevel >= 5) {
|
|||||||
<option value=0>____공석____</option>
|
<option value=0>____공석____</option>
|
||||||
";
|
";
|
||||||
|
|
||||||
$query = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and power>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
$query = "select no,name,level,city from general where nation='{$me['nation']}' and level!='12' and strength>='".GameConst::$chiefStatMin."' order by npc,binary(name)";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$count = MYDB_num_rows($result);
|
$count = MYDB_num_rows($result);
|
||||||
for($i=0; $i < $count; $i++) {
|
for($i=0; $i < $count; $i++) {
|
||||||
|
|||||||
+11
-11
@@ -85,8 +85,8 @@ $nationLevel = DB::db()->queryFirstField('select level from nation where nation
|
|||||||
1=>['level', true],
|
1=>['level', true],
|
||||||
2=>['dedication', true],
|
2=>['dedication', true],
|
||||||
3=>['experience', true],
|
3=>['experience', true],
|
||||||
4=>['leader', true],
|
4=>['leadership', true],
|
||||||
5=>['power', true],
|
5=>['strength', true],
|
||||||
6=>['intel', true],
|
6=>['intel', true],
|
||||||
7=>['gold', true],
|
7=>['gold', true],
|
||||||
8=>['rice', true],
|
8=>['rice', true],
|
||||||
@@ -99,7 +99,7 @@ $nationLevel = DB::db()->queryFirstField('select level from nation where nation
|
|||||||
15=>['npc', true],
|
15=>['npc', true],
|
||||||
][$type];
|
][$type];
|
||||||
|
|
||||||
$generalList = $db->query('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,injury,leader,power,intel,experience,dedication,level,killturn,connect,gold,rice,crew,belong from general where nation = %i order by %b %l', $me['nation'], $orderKey, $orderDesc?'desc':'');
|
$generalList = $db->query('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,injury,leadership,strength,intel,experience,dedication,level,killturn,connect,gold,rice,crew,belong from general where nation = %i order by %b %l', $me['nation'], $orderKey, $orderDesc?'desc':'');
|
||||||
|
|
||||||
echo"
|
echo"
|
||||||
<table align=center class='tb_layout bg0'>
|
<table align=center class='tb_layout bg0'>
|
||||||
@@ -130,15 +130,15 @@ foreach($generalList as $general){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($general['injury'] > 0) {
|
if($general['injury'] > 0) {
|
||||||
$leader = intdiv($general['leader'] * (100 - $general['injury']), 100);
|
$leadership = intdiv($general['leadership'] * (100 - $general['injury']), 100);
|
||||||
$power = intdiv($general['power'] * (100 - $general['injury']), 100);
|
$strength = intdiv($general['strength'] * (100 - $general['injury']), 100);
|
||||||
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
||||||
$leader = "<font color=red>{$leader}</font>{$lbonus}";
|
$leadership = "<font color=red>{$leadership}</font>{$lbonus}";
|
||||||
$power = "<font color=red>{$power}</font>";
|
$strength = "<font color=red>{$strength}</font>";
|
||||||
$intel = "<font color=red>{$intel}</font>";
|
$intel = "<font color=red>{$intel}</font>";
|
||||||
} else {
|
} else {
|
||||||
$leader = "{$general['leader']}{$lbonus}";
|
$leadership = "{$general['leadership']}{$lbonus}";
|
||||||
$power = "{$general['power']}";
|
$strength = "{$general['strength']}";
|
||||||
$intel = "{$general['intel']}";
|
$intel = "{$general['intel']}";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -159,8 +159,8 @@ foreach($generalList as $general){
|
|||||||
<td align=center>".getDed($general['dedication'])."</td>
|
<td align=center>".getDed($general['dedication'])."</td>
|
||||||
<td align=center>".getHonor($general['experience'])."</td>
|
<td align=center>".getHonor($general['experience'])."</td>
|
||||||
<td align=center>".getBill($general['dedication'])."</td>
|
<td align=center>".getBill($general['dedication'])."</td>
|
||||||
<td align=center>$leader</td>
|
<td align=center>$leadership</td>
|
||||||
<td align=center>$power</td>
|
<td align=center>$strength</td>
|
||||||
<td align=center>$intel</td>
|
<td align=center>$intel</td>
|
||||||
<td align=center>{$general['gold']}</td>
|
<td align=center>{$general['gold']}</td>
|
||||||
<td align=center>{$general['rice']}</td>
|
<td align=center>{$general['rice']}</td>
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ for($j=0; $j < $citycount; $j++) {
|
|||||||
$maxpop += $city['pop2'];
|
$maxpop += $city['pop2'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$query = "select sum(crew) as totcrew,sum(leader)*100 as maxcrew from general where nation='{$nation['nation']}'";
|
$query = "select sum(crew) as totcrew,sum(leadership)*100 as maxcrew from general where nation='{$nation['nation']}'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
|
|||||||
@@ -28,10 +28,10 @@ if ($con >= 2) {
|
|||||||
|
|
||||||
switch ($admin['tnmt_type']) {
|
switch ($admin['tnmt_type']) {
|
||||||
default: throw new \RuntimeException('invalid tnmt_type');
|
default: throw new \RuntimeException('invalid tnmt_type');
|
||||||
case 0: $tnmt_type = "<font color=cyan>전력전</font>"; $tp = "tot"; $tp2 = "종합"; $tp3 = "total"; break;
|
case 0: $tnmt_type = "<font color=cyan>전력전</font>"; $tp = "total"; $tp2 = "종합"; $tp3 = "total"; break;
|
||||||
case 1: $tnmt_type = "<font color=cyan>통솔전</font>"; $tp = "ldr"; $tp2 = "통솔"; $tp3 = "leader"; break;
|
case 1: $tnmt_type = "<font color=cyan>통솔전</font>"; $tp = "leadership"; $tp2 = "통솔"; $tp3 = "leadership"; break;
|
||||||
case 2: $tnmt_type = "<font color=cyan>일기토</font>"; $tp = "pwr"; $tp2 = "무력"; $tp3 = "power"; break;
|
case 2: $tnmt_type = "<font color=cyan>일기토</font>"; $tp = "strength"; $tp2 = "무력"; $tp3 = "strength"; break;
|
||||||
case 3: $tnmt_type = "<font color=cyan>설전</font>"; $tp = "itl"; $tp2 = "지력"; $tp3 = "intel"; break;
|
case 3: $tnmt_type = "<font color=cyan>설전</font>"; $tp = "intel"; $tp2 = "지력"; $tp3 = "intel"; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
@@ -115,7 +115,7 @@ if ($session->userGrade >= 5) {
|
|||||||
case 1:
|
case 1:
|
||||||
echo "<select name=gen size=1 style=color:white;background-color:black;>";
|
echo "<select name=gen size=1 style=color:white;background-color:black;>";
|
||||||
|
|
||||||
$query = "select no,name,npc,tnmt,leader,power,intel,leader+power+intel as total from general where tournament=0 and gold>='{$admin['develcost']}' order by {$tp3} desc";
|
$query = "select no,name,npc,tnmt,leadership,strength,intel,leadership+strength+intel as total from general where tournament=0 and gold>='{$admin['develcost']}' order by {$tp3} desc";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
||||||
$genCount = MYDB_num_rows($result);
|
$genCount = MYDB_num_rows($result);
|
||||||
|
|
||||||
@@ -442,7 +442,7 @@ for ($i=0; $i < 8; $i++) {
|
|||||||
<tr><td colspan=9 style=background-color:black;>{$num[$i]}조</td></tr>
|
<tr><td colspan=9 style=background-color:black;>{$num[$i]}조</td></tr>
|
||||||
<tr id=bg1><td align=center>순</td><td align=center>장수</td><td align=center>{$tp2}</td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>득</td></tr>";
|
<tr id=bg1><td align=center>순</td><td align=center>장수</td><td align=center>{$tp2}</td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>득</td></tr>";
|
||||||
|
|
||||||
$query = "select npc,name,ldr,pwr,itl,ldr+pwr+itl as tot,prmt,win+draw+lose as game,win,draw,lose,gl,win*3+draw as gd from tournament where grp='$grp' order by gd desc, gl desc, seq";
|
$query = "select npc,name,leadership,strength,intel,leadership+strength+intel as total,prmt,win+draw+lose as game,win,draw,lose,gl,win*3+draw as gd from tournament where grp='$grp' order by gd desc, gl desc, seq";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
||||||
for ($k=1; $k <= 4; $k++) {
|
for ($k=1; $k <= 4; $k++) {
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
@@ -468,7 +468,7 @@ for ($i=0; $i < 8; $i++) {
|
|||||||
<tr><td colspan=9 style=background-color:black;>{$num[$i]}조</td></tr>
|
<tr><td colspan=9 style=background-color:black;>{$num[$i]}조</td></tr>
|
||||||
<tr id=bg1><td align=center>순</td><td align=center>장수</td><td align=center>{$tp2}</td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>득</td></tr>";
|
<tr id=bg1><td align=center>순</td><td align=center>장수</td><td align=center>{$tp2}</td><td align=center>경</td><td align=center>승</td><td align=center>무</td><td align=center>패</td><td align=center>점</td><td align=center>득</td></tr>";
|
||||||
|
|
||||||
$query = "select npc,name,ldr,pwr,itl,ldr+pwr+itl as tot,prmt,win+draw+lose as game,win,draw,lose,gl,win*3+draw as gd from tournament where grp='$grp' order by gd desc, gl desc, seq";
|
$query = "select npc,name,leadership,strength,intel,leadership+strength+intel as total,prmt,win+draw+lose as game,win,draw,lose,gl,win*3+draw as gd from tournament where grp='$grp' order by gd desc, gl desc, seq";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect), "");
|
||||||
for ($k=1; $k <= 8; $k++) {
|
for ($k=1; $k <= 8; $k++) {
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|||||||
@@ -280,7 +280,7 @@ var defaultSpecialDomestic = <?=GameConst::$defaultSpecialDomestic?>;
|
|||||||
<div class="input-group-prepend">
|
<div class="input-group-prepend">
|
||||||
<span class="input-group-text">무력</span>
|
<span class="input-group-text">무력</span>
|
||||||
</div>
|
</div>
|
||||||
<input type="number" class="form-control form_power" value="50" min="1" max="300" step="1">
|
<input type="number" class="form-control form_strength" value="50" min="1" max="300" step="1">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-prepend">
|
||||||
<span class="input-group-text">지력</span>
|
<span class="input-group-text">지력</span>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ if($btn == "임명") {
|
|||||||
$general = [];
|
$general = [];
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$general = $db->queryFirstRow('SELECT `no`,nation,`level`,leader,`power`,intel FROM general WHERE no = %i', $genlist);
|
$general = $db->queryFirstRow('SELECT `no`,nation,`level`,leadership,`strength`,intel FROM general WHERE no = %i', $genlist);
|
||||||
}
|
}
|
||||||
|
|
||||||
if($genlist != 0 && !$general){
|
if($genlist != 0 && !$general){
|
||||||
@@ -262,11 +262,11 @@ if($btn == "임명" && $level >= 5 && $level <= 11) {
|
|||||||
if($genlist != 0) {
|
if($genlist != 0) {
|
||||||
$valid = 0;
|
$valid = 0;
|
||||||
switch($level) {
|
switch($level) {
|
||||||
case 10: if($general['power'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 10: if($general['strength'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
case 9: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 9: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
case 8: if($general['power'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 8: if($general['strength'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
case 7: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 7: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
case 6: if($general['power'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 6: if($general['strength'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
case 5: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 5: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
default: $valid = 1; break;
|
default: $valid = 1; break;
|
||||||
}
|
}
|
||||||
@@ -321,7 +321,7 @@ if($btn == "임명" && $level >= 2 && $level <= 4 && $citylist > 0) {
|
|||||||
if($genlist != 0) {
|
if($genlist != 0) {
|
||||||
$valid = 0;
|
$valid = 0;
|
||||||
switch($level) {
|
switch($level) {
|
||||||
case 4: if($general['power'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 4: if($general['strength'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
case 3: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
case 3: if($general['intel'] >= GameConst::$chiefStatMin) { $valid = 1; } break;
|
||||||
default: $valid = 1; break;
|
default: $valid = 1; break;
|
||||||
}
|
}
|
||||||
|
|||||||
+24
-24
@@ -29,9 +29,9 @@ $result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""
|
|||||||
$me = MYDB_fetch_array($result);
|
$me = MYDB_fetch_array($result);
|
||||||
|
|
||||||
switch($admin['tnmt_type']) {
|
switch($admin['tnmt_type']) {
|
||||||
case 0: $tp = "total"; $tp2 = "전력전"; $tp3 = "leader+power+intel"; break;
|
case 0: $tp = "total"; $tp2 = "전력전"; $tp3 = "leadership+strength+intel"; break;
|
||||||
case 1: $tp = "leader"; $tp2 = "통솔전"; $tp3 = "leader"; break;
|
case 1: $tp = "leadership"; $tp2 = "통솔전"; $tp3 = "leadership"; break;
|
||||||
case 2: $tp = "power"; $tp2 = "일기토"; $tp3 = "power"; break;
|
case 2: $tp = "strength"; $tp2 = "일기토"; $tp3 = "strength"; break;
|
||||||
case 3: $tp = "intel"; $tp2 = "설전"; $tp3 = "intel"; break;
|
case 3: $tp = "intel"; $tp2 = "설전"; $tp3 = "intel"; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -42,7 +42,7 @@ if($btn == '참가') {
|
|||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
$general = $db->queryFirstRow('SELECT no,name,npc,leader,power,intel,explevel,gold,horse,weap,book FROM general WHERE `no`=%i', $me['no']);
|
$general = $db->queryFirstRow('SELECT no,name,npc,leadership,strength,intel,explevel,gold,horse,weap,book FROM general WHERE `no`=%i', $me['no']);
|
||||||
|
|
||||||
//{$admin['develcost']}원 참가비
|
//{$admin['develcost']}원 참가비
|
||||||
if($general['gold'] < $admin['develcost']) {
|
if($general['gold'] < $admin['develcost']) {
|
||||||
@@ -64,9 +64,9 @@ if($btn == '참가') {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['leader'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['power'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['intel'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['explevel'],
|
'lvl'=>$general['explevel'],
|
||||||
'grp'=>$grp,
|
'grp'=>$grp,
|
||||||
'grp_no'=>$grpMemberCount,
|
'grp_no'=>$grpMemberCount,
|
||||||
@@ -104,7 +104,7 @@ if($btn == "자동개최설정") {
|
|||||||
$gameStor->phase = 0;
|
$gameStor->phase = 0;
|
||||||
} elseif($btn == "투입" || $btn == "무명투입" || $btn == "쪼렙투입" || $btn == "일반투입" || $btn == "굇수투입" || $btn == "랜덤투입") {
|
} elseif($btn == "투입" || $btn == "무명투입" || $btn == "쪼렙투입" || $btn == "일반투입" || $btn == "굇수투입" || $btn == "랜덤투입") {
|
||||||
if($btn == "투입") {
|
if($btn == "투입") {
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,gold,horse,weap,book from general where no='$gen'";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,gold,horse,weap,book from general where no='$gen'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
@@ -112,14 +112,14 @@ if($btn == "자동개최설정") {
|
|||||||
$general['no'] = 0;
|
$general['no'] = 0;
|
||||||
$general['name'] = "무명장수";
|
$general['name'] = "무명장수";
|
||||||
$general['npc'] = 2;
|
$general['npc'] = 2;
|
||||||
$general['leader'] = 10;
|
$general['leadership'] = 10;
|
||||||
$general['power'] = 10;
|
$general['strength'] = 10;
|
||||||
$general['intel'] = 10;
|
$general['intel'] = 10;
|
||||||
$general['explevel'] = 10;
|
$general['explevel'] = 10;
|
||||||
$general['gold'] = 0;
|
$general['gold'] = 0;
|
||||||
} elseif($btn == "쪼렙투입") {
|
} elseif($btn == "쪼렙투입") {
|
||||||
$sel = rand() % 32;
|
$sel = rand() % 32;
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,gold,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} limit {$sel},1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,gold,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} limit {$sel},1";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
@@ -136,18 +136,18 @@ if($btn == "자동개최설정") {
|
|||||||
|
|
||||||
$sel = rand() % 32 + $genCount - 8;
|
$sel = rand() % 32 + $genCount - 8;
|
||||||
|
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
} elseif($btn == "굇수투입") {
|
} elseif($btn == "굇수투입") {
|
||||||
$sel = rand() % 32;
|
$sel = rand() % 32;
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,gold,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,gold,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
} elseif($btn == "랜덤투입") {
|
} elseif($btn == "랜덤투입") {
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,gold,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by rand() limit 0,1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,gold,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by rand() limit 0,1";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
@@ -167,9 +167,9 @@ if($btn == "자동개최설정") {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['leader'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['power'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['intel'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['explevel'],
|
'lvl'=>$general['explevel'],
|
||||||
'grp'=>$grp,
|
'grp'=>$grp,
|
||||||
'grp_no'=>$grpMemberCount,
|
'grp_no'=>$grpMemberCount,
|
||||||
@@ -211,7 +211,7 @@ if($btn == "자동개최설정") {
|
|||||||
for($i=0; $i < $z; $i++) {
|
for($i=0; $i < $z; $i++) {
|
||||||
$sel = rand() % 32;
|
$sel = rand() % 32;
|
||||||
if($btn == "쪼렙전부투입") {
|
if($btn == "쪼렙전부투입") {
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} limit {$sel},1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} limit {$sel},1";
|
||||||
} elseif($btn == "일반전부투입") {
|
} elseif($btn == "일반전부투입") {
|
||||||
//참가한 사람 평균치
|
//참가한 사람 평균치
|
||||||
$query = "select AVG({$tp3}) as av from general where tournament=1";
|
$query = "select AVG({$tp3}) as av from general where tournament=1";
|
||||||
@@ -225,11 +225,11 @@ if($btn == "자동개최설정") {
|
|||||||
|
|
||||||
$sel += $genCount - 8;
|
$sel += $genCount - 8;
|
||||||
|
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
||||||
} elseif($btn == "굇수전부투입") {
|
} elseif($btn == "굇수전부투입") {
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by {$tp} desc limit {$sel},1";
|
||||||
} else {
|
} else {
|
||||||
$query = "select no,name,npc,leader,power,intel,explevel,leader+power+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by rand() limit 0,1";
|
$query = "select no,name,npc,leadership,strength,intel,explevel,leadership+strength+intel as total,horse,weap,book from general where tournament=0 and gold>='{$admin['develcost']}' and npc>=2 order by rand() limit 0,1";
|
||||||
}
|
}
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
@@ -240,9 +240,9 @@ if($btn == "자동개최설정") {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['leader'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['power'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['intel'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['explevel'],
|
'lvl'=>$general['explevel'],
|
||||||
'grp'=>$grp,
|
'grp'=>$grp,
|
||||||
'grp_no'=>$grp_no,
|
'grp_no'=>$grp_no,
|
||||||
|
|||||||
+35
-35
@@ -274,7 +274,7 @@ function myNationInfo() {
|
|||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$city = MYDB_fetch_array($result);
|
$city = MYDB_fetch_array($result);
|
||||||
|
|
||||||
$query = "select COUNT(*) as cnt, SUM(crew) as totcrew,SUM(leader)*100 as maxcrew from general where nation='{$nation['nation']}'"; // 장수 목록
|
$query = "select COUNT(*) as cnt, SUM(crew) as totcrew,SUM(leadership)*100 as maxcrew from general where nation='{$nation['nation']}'"; // 장수 목록
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
@@ -778,7 +778,7 @@ function generalInfo($no) {
|
|||||||
|
|
||||||
$show_img_level = $gameStor->show_img_level;
|
$show_img_level = $gameStor->show_img_level;
|
||||||
|
|
||||||
$query = "select block,no,name,picture,imgsvr,injury,nation,city,troop,leader,leader2,power,power2,intel,intel2,explevel,experience,level,gold,rice,crew,crewtype,train,atmos,weap,book,horse,item,turntime,killturn,age,personal,special,specage,special2,specage2,mode,con,connect from general where no='$no'";
|
$query = "select block,no,name,picture,imgsvr,injury,nation,city,troop,leadership,leadership2,strength,strength2,intel,intel2,explevel,experience,level,gold,rice,crew,crewtype,train,atmos,weap,book,horse,item,turntime,killturn,age,personal,special,specage,special2,specage2,mode,con,connect from general where no='$no'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
@@ -816,18 +816,18 @@ function generalInfo($no) {
|
|||||||
$city = MYDB_fetch_array($result);
|
$city = MYDB_fetch_array($result);
|
||||||
$level = $city['name']." ".$level;
|
$level = $city['name']." ".$level;
|
||||||
}
|
}
|
||||||
$call = getCall($general['leader'], $general['power'], $general['intel']);
|
$call = getCall($general['leadership'], $general['power'], $general['intel']);
|
||||||
$typename = GameUnitConst::byId($general['crewtype'])->name;
|
$typename = GameUnitConst::byId($general['crewtype'])->name;
|
||||||
$weapname = getItemName($general['weap']);
|
$weapname = getItemName($general['weap']);
|
||||||
$bookname = getItemName($general['book']);
|
$bookname = getItemName($general['book']);
|
||||||
$horsename = getItemName($general['horse']);
|
$horsename = getItemName($general['horse']);
|
||||||
$itemname = displayItemInfo($general['item']);
|
$itemname = displayItemInfo($general['item']);
|
||||||
if($general['injury'] > 0) {
|
if($general['injury'] > 0) {
|
||||||
$leader = intdiv($general['leader'] * (100 - $general['injury']), 100);
|
$leadership = intdiv($general['leadership'] * (100 - $general['injury']), 100);
|
||||||
$power = intdiv($general['power'] * (100 - $general['injury']), 100);
|
$power = intdiv($general['power'] * (100 - $general['injury']), 100);
|
||||||
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
||||||
} else {
|
} else {
|
||||||
$leader = $general['leader'];
|
$leadership = $general['leadership'];
|
||||||
$power = $general['power'];
|
$power = $general['power'];
|
||||||
$intel = $general['intel'];
|
$intel = $general['intel'];
|
||||||
}
|
}
|
||||||
@@ -881,11 +881,11 @@ function generalInfo($no) {
|
|||||||
</tr>
|
</tr>
|
||||||
<tr height=16>
|
<tr height=16>
|
||||||
<td style='text-align:center;' class='bg1'><b>통솔</b></td>
|
<td style='text-align:center;' class='bg1'><b>통솔</b></td>
|
||||||
<td style='text-align:center;'> {$color}{$leader}</font>{$lbonus} </td>
|
<td style='text-align:center;'> {$color}{$leadership}</font>{$lbonus} </td>
|
||||||
<td style='text-align:center;' width=45>".bar(expStatus($general['leader2']), 20)."</td>
|
<td style='text-align:center;' width=45>".bar(expStatus($general['leadership2']), 20)."</td>
|
||||||
<td style='text-align:center;' class='bg1'><b>무력</b></td>
|
<td style='text-align:center;' class='bg1'><b>무력</b></td>
|
||||||
<td style='text-align:center;'> {$color}{$power}</font> </td>
|
<td style='text-align:center;'> {$color}{$power}</font> </td>
|
||||||
<td style='text-align:center;' width=45>".bar(expStatus($general['power2']), 20)."</td>
|
<td style='text-align:center;' width=45>".bar(expStatus($general['strength2']), 20)."</td>
|
||||||
<td style='text-align:center;' class='bg1'><b>지력</b></td>
|
<td style='text-align:center;' class='bg1'><b>지력</b></td>
|
||||||
<td style='text-align:center;'> {$color}{$intel}</font> </td>
|
<td style='text-align:center;'> {$color}{$intel}</font> </td>
|
||||||
<td style='text-align:center;' width=45>".bar(expStatus($general['intel2']), 20)."</td>
|
<td style='text-align:center;' width=45>".bar(expStatus($general['intel2']), 20)."</td>
|
||||||
@@ -1746,8 +1746,8 @@ function addAge() {
|
|||||||
$admin = $gameStor->getValues(['startyear', 'year', 'month']);
|
$admin = $gameStor->getValues(['startyear', 'year', 'month']);
|
||||||
|
|
||||||
if($admin['year'] >= $admin['startyear']+3) {
|
if($admin['year'] >= $admin['startyear']+3) {
|
||||||
foreach($db->query('SELECT no,name,nation,leader,power,intel from general where specage<=age and special=%s', GameConst::$defaultSpecialDomestic) as $general){
|
foreach($db->query('SELECT no,name,nation,leadership,power,intel from general where specage<=age and special=%s', GameConst::$defaultSpecialDomestic) as $general){
|
||||||
$special = getSpecial($general['leader'], $general['power'], $general['intel']);
|
$special = getSpecial($general['leadership'], $general['power'], $general['intel']);
|
||||||
$specialClass = getGeneralSpecialDomesticClass($special);
|
$specialClass = getGeneralSpecialDomesticClass($special);
|
||||||
$specialText = $specialClass::$name;
|
$specialText = $specialClass::$name;
|
||||||
$db->update('general', [
|
$db->update('general', [
|
||||||
@@ -1759,8 +1759,8 @@ function addAge() {
|
|||||||
pushGenLog($general, "<C>●</>특기 【<b><L>{$specialText}</></b>】{$josaUl} 익혔습니다!");
|
pushGenLog($general, "<C>●</>특기 【<b><L>{$specialText}</></b>】{$josaUl} 익혔습니다!");
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach($db->query('SELECT no,name,nation,leader,power,intel,npc,dex0,dex10,dex20,dex30,dex40 from general where spec2age<=age and special2=%s', GameConst::$defaultSpecialWar) as $general){
|
foreach($db->query('SELECT no,name,nation,leadership,power,intel,npc,dex0,dex10,dex20,dex30,dex40 from general where spec2age<=age and special2=%s', GameConst::$defaultSpecialWar) as $general){
|
||||||
$special2 = getSpecial2($general['leader'], $general['power'], $general['intel'], 0, $general['dex0'], $general['dex10'], $general['dex20'], $general['dex30'], $general['dex40']);
|
$special2 = getSpecial2($general['leadership'], $general['power'], $general['intel'], 0, $general['dex0'], $general['dex10'], $general['dex20'], $general['dex30'], $general['dex40']);
|
||||||
$specialClass = getGeneralSpecialWarClass($special2);
|
$specialClass = getGeneralSpecialWarClass($special2);
|
||||||
$specialText = $specialClass::$name;
|
$specialText = $specialClass::$name;
|
||||||
|
|
||||||
@@ -2070,7 +2070,7 @@ function updateTurntime($no) {
|
|||||||
CheckHall($no);
|
CheckHall($no);
|
||||||
}
|
}
|
||||||
|
|
||||||
$query = "update general set leader=leader*0.85,power=power*0.85,intel=intel*0.85,injury=0,experience=experience*0.5,dedication=dedication*0.5,firenum=0,warnum=0,killnum=0,deathnum=0,killcrew=0,deathcrew=0,age=20,specage=0,specage2=0,crew=crew*0.85,dex0=dex0*0.5,dex10=dex10*0.5,dex20=dex20*0.5,dex30=dex30*0.5,dex40=dex40*0.5 where no='$no'";
|
$query = "update general set leadership=leadership*0.85,power=power*0.85,intel=intel*0.85,injury=0,experience=experience*0.5,dedication=dedication*0.5,firenum=0,warnum=0,killnum=0,deathnum=0,killcrew=0,deathcrew=0,age=20,specage=0,specage2=0,crew=crew*0.85,dex0=dex0*0.5,dex10=dex10*0.5,dex20=dex20*0.5,dex30=dex30*0.5,dex40=dex40*0.5 where no='$no'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$josaYi = JosaUtil::pick($general['name'], '이');
|
$josaYi = JosaUtil::pick($general['name'], '이');
|
||||||
@@ -2122,7 +2122,7 @@ function CheckHall($no) {
|
|||||||
dex0,dex10,dex20,dex30,dex40,
|
dex0,dex10,dex20,dex30,dex40,
|
||||||
ttw/(ttw+ttd+ttl) as ttrate, ttw+ttd+ttl as tt,
|
ttw/(ttw+ttd+ttl) as ttrate, ttw+ttd+ttl as tt,
|
||||||
tlw/(tlw+tld+tll) as tlrate, tlw+tld+tll as tl,
|
tlw/(tlw+tld+tll) as tlrate, tlw+tld+tll as tl,
|
||||||
tpw/(tpw+tpd+tpl) as tprate, tpw+tpd+tpl as tp,
|
tsw/(tsw+tsd+tsl) as tprate, tsw+tsd+tsl as ts,
|
||||||
tiw/(tiw+tid+til) as tirate, tiw+tid+til as ti,
|
tiw/(tiw+tid+til) as tirate, tiw+tid+til as ti,
|
||||||
betgold, betwin, betwingold, betwingold/betgold as betrate
|
betgold, betwin, betwingold, betwingold/betgold as betrate
|
||||||
from general where no=%i', $no);
|
from general where no=%i', $no);
|
||||||
@@ -2148,7 +2148,7 @@ function CheckHall($no) {
|
|||||||
//토너승률인데 50회 미만시 스킵
|
//토너승률인데 50회 미만시 스킵
|
||||||
if($typeName === 'tlrate' && $general['tl'] < 50) { continue; }
|
if($typeName === 'tlrate' && $general['tl'] < 50) { continue; }
|
||||||
//토너승률인데 50회 미만시 스킵
|
//토너승률인데 50회 미만시 스킵
|
||||||
if($typeName === 'tprate' && $general['tp'] < 50) { continue; }
|
if($typeName === 'tprate' && $general['ts'] < 50) { continue; }
|
||||||
//토너승률인데 50회 미만시 스킵
|
//토너승률인데 50회 미만시 스킵
|
||||||
if($typeName === 'tirate' && $general['ti'] < 50) { continue; }
|
if($typeName === 'tirate' && $general['ti'] < 50) { continue; }
|
||||||
//수익률인데 1000미만시 스킵
|
//수익률인데 1000미만시 스킵
|
||||||
@@ -2413,24 +2413,24 @@ function uniqueItem($general, $log, $vote=0) {
|
|||||||
|
|
||||||
function checkAbilityEx(int $generalID, ActionLogger $actLog){
|
function checkAbilityEx(int $generalID, ActionLogger $actLog){
|
||||||
$db = DB::db();
|
$db = DB::db();
|
||||||
$general = $db->queryFirstRow('SELECT leader,leader2,power,power2,intel,intel2 FROM general WHERE no = %i',$generalID);
|
$general = $db->queryFirstRow('SELECT leadership,leadership2,strength,strength2,intel,intel2 FROM general WHERE no = %i',$generalID);
|
||||||
|
|
||||||
if(!$general){
|
if(!$general){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['leader2'] < 0){
|
if($general['leadership2'] < 0){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'leader2'=>$db->sqleval('leader2 + %i', GameConst::$upgradeLimit),
|
'leadership2'=>$db->sqleval('leadership2 + %i', GameConst::$upgradeLimit),
|
||||||
'leader'=>$db->sqleval('leader - 1')
|
'leadership'=>$db->sqleval('leadership - 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<R>통솔</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<R>통솔</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['power2'] < 0){
|
if($general['strength2'] < 0){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'power2'=>$db->sqleval('power2 + %i', GameConst::$upgradeLimit),
|
'strength2'=>$db->sqleval('strength2 + %i', GameConst::$upgradeLimit),
|
||||||
'power'=>$db->sqleval('power - 1')
|
'power'=>$db->sqleval('power - 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<R>무력</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<R>무력</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
||||||
@@ -2446,18 +2446,18 @@ function checkAbilityEx(int $generalID, ActionLogger $actLog){
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['leader2'] >= GameConst::$upgradeLimit){
|
if($general['leadership2'] >= GameConst::$upgradeLimit){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'leader2'=>$db->sqleval('leader2 - %i', GameConst::$upgradeLimit),
|
'leadership2'=>$db->sqleval('leadership2 - %i', GameConst::$upgradeLimit),
|
||||||
'leader'=>$db->sqleval('leader + 1')
|
'leadership'=>$db->sqleval('leadership + 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<R>통솔</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<R>통솔</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['power2'] >= GameConst::$upgradeLimit){
|
if($general['strength2'] >= GameConst::$upgradeLimit){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'power2'=>$db->sqleval('power2 - %i', GameConst::$upgradeLimit),
|
'strength2'=>$db->sqleval('strength2 - %i', GameConst::$upgradeLimit),
|
||||||
'power'=>$db->sqleval('power + 1')
|
'power'=>$db->sqleval('power + 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<R>무력</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<R>무력</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
||||||
@@ -2480,29 +2480,29 @@ function checkAbility($general, $log) {
|
|||||||
|
|
||||||
$limit = GameConst::$upgradeLimit;
|
$limit = GameConst::$upgradeLimit;
|
||||||
|
|
||||||
$query = "select no,leader,leader2,power,power2,intel,intel2 from general where no='{$general['no']}'";
|
$query = "select no,leadership,leadership2,power,strength2,intel,intel2 from general where no='{$general['no']}'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
if($general['leader2'] < 0) {
|
if($general['leadership2'] < 0) {
|
||||||
$query = "update general set leader2='$limit'+leader2,leader=leader-1 where no='{$general['no']}'";
|
$query = "update general set leadership2='$limit'+leadership2,leadership=leadership-1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><R>통솔</>이 <C>1</> 떨어졌습니다!";
|
$log[] = "<C>●</><R>통솔</>이 <C>1</> 떨어졌습니다!";
|
||||||
} elseif($general['leader2'] >= $limit) {
|
} elseif($general['leadership2'] >= $limit) {
|
||||||
$query = "update general set leader2=leader2-'$limit',leader=leader+1 where no='{$general['no']}'";
|
$query = "update general set leadership2=leadership2-'$limit',leadership=leadership+1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><Y>통솔</>이 <C>1</> 올랐습니다!";
|
$log[] = "<C>●</><Y>통솔</>이 <C>1</> 올랐습니다!";
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['power2'] < 0) {
|
if($general['strength2'] < 0) {
|
||||||
$query = "update general set power2='$limit'+power2,power=power-1 where no='{$general['no']}'";
|
$query = "update general set strength2='$limit'+strength2,power=power-1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><R>무력</>이 <C>1</> 떨어졌습니다!";
|
$log[] = "<C>●</><R>무력</>이 <C>1</> 떨어졌습니다!";
|
||||||
} elseif($general['power2'] >= $limit) {
|
} elseif($general['strength2'] >= $limit) {
|
||||||
$query = "update general set power2=power2-'$limit',power=power+1 where no='{$general['no']}'";
|
$query = "update general set strength2=strength2-'$limit',power=power+1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><Y>무력</>이 <C>1</> 올랐습니다!";
|
$log[] = "<C>●</><Y>무력</>이 <C>1</> 올랐습니다!";
|
||||||
|
|||||||
+37
-37
@@ -274,7 +274,7 @@ function myNationInfo() {
|
|||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$city = MYDB_fetch_array($result);
|
$city = MYDB_fetch_array($result);
|
||||||
|
|
||||||
$query = "select COUNT(*) as cnt, SUM(crew) as totcrew,SUM(leader)*100 as maxcrew from general where nation='{$nation['nation']}'"; // 장수 목록
|
$query = "select COUNT(*) as cnt, SUM(crew) as totcrew,SUM(leadership)*100 as maxcrew from general where nation='{$nation['nation']}'"; // 장수 목록
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
@@ -635,7 +635,7 @@ function generalInfo($no) {
|
|||||||
|
|
||||||
$show_img_level = $gameStor->show_img_level;
|
$show_img_level = $gameStor->show_img_level;
|
||||||
|
|
||||||
$query = "select block,no,name,picture,imgsvr,injury,nation,city,troop,leader,leader2,power,power2,intel,intel2,explevel,experience,level,gold,rice,crew,crewtype,train,atmos,weap,book,horse,item,turntime,killturn,age,personal,special,specage,special2,specage2,mode,con,connect from general where no='$no'";
|
$query = "select block,no,name,picture,imgsvr,injury,nation,city,troop,leadership,leadership2,strength,strength2,intel,intel2,explevel,experience,level,gold,rice,crew,crewtype,train,atmos,weap,book,horse,item,turntime,killturn,age,personal,special,specage,special2,specage2,mode,con,connect from general where no='$no'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
@@ -684,19 +684,19 @@ function generalInfo($no) {
|
|||||||
$city = MYDB_fetch_array($result);
|
$city = MYDB_fetch_array($result);
|
||||||
$level = $city['name']." ".$level;
|
$level = $city['name']." ".$level;
|
||||||
}
|
}
|
||||||
$call = getCall($general['leader'], $general['power'], $general['intel']);
|
$call = getCall($general['leadership'], $general['strength'], $general['intel']);
|
||||||
$typename = GameUnitConst::byId($general['crewtype'])->name;
|
$typename = GameUnitConst::byId($general['crewtype'])->name;
|
||||||
$weapname = getItemName($general['weap']);
|
$weapname = getItemName($general['weap']);
|
||||||
$bookname = getItemName($general['book']);
|
$bookname = getItemName($general['book']);
|
||||||
$horsename = getItemName($general['horse']);
|
$horsename = getItemName($general['horse']);
|
||||||
$itemname = displayItemInfo($general['item']);
|
$itemname = displayItemInfo($general['item']);
|
||||||
if($general['injury'] > 0) {
|
if($general['injury'] > 0) {
|
||||||
$leader = intdiv($general['leader'] * (100 - $general['injury']), 100);
|
$leadership = intdiv($general['leadership'] * (100 - $general['injury']), 100);
|
||||||
$power = intdiv($general['power'] * (100 - $general['injury']), 100);
|
$strength = intdiv($general['strength'] * (100 - $general['injury']), 100);
|
||||||
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
$intel = intdiv($general['intel'] * (100 - $general['injury']), 100);
|
||||||
} else {
|
} else {
|
||||||
$leader = $general['leader'];
|
$leadership = $general['leadership'];
|
||||||
$power = $general['power'];
|
$strength = $general['strength'];
|
||||||
$intel = $general['intel'];
|
$intel = $general['intel'];
|
||||||
}
|
}
|
||||||
if($general['injury'] > 60) { $color = "<font color=red>"; $injury = "위독"; }
|
if($general['injury'] > 60) { $color = "<font color=red>"; $injury = "위독"; }
|
||||||
@@ -748,11 +748,11 @@ function generalInfo($no) {
|
|||||||
</tr>
|
</tr>
|
||||||
<tr height=16>
|
<tr height=16>
|
||||||
<td style='text-align:center;' class='bg1'><b>통솔</b></td>
|
<td style='text-align:center;' class='bg1'><b>통솔</b></td>
|
||||||
<td style='text-align:center;'> {$color}{$leader}</font>{$lbonus} </td>
|
<td style='text-align:center;'> {$color}{$leadership}</font>{$lbonus} </td>
|
||||||
<td style='text-align:center;' width=45>".bar(expStatus($general['leader2']), 20)."</td>
|
<td style='text-align:center;' width=45>".bar(expStatus($general['leadership2']), 20)."</td>
|
||||||
<td style='text-align:center;' class='bg1'><b>무력</b></td>
|
<td style='text-align:center;' class='bg1'><b>무력</b></td>
|
||||||
<td style='text-align:center;'> {$color}{$power}</font> </td>
|
<td style='text-align:center;'> {$color}{$strength}</font> </td>
|
||||||
<td style='text-align:center;' width=45>".bar(expStatus($general['power2']), 20)."</td>
|
<td style='text-align:center;' width=45>".bar(expStatus($general['strength2']), 20)."</td>
|
||||||
<td style='text-align:center;' class='bg1'><b>지력</b></td>
|
<td style='text-align:center;' class='bg1'><b>지력</b></td>
|
||||||
<td style='text-align:center;'> {$color}{$intel}</font> </td>
|
<td style='text-align:center;'> {$color}{$intel}</font> </td>
|
||||||
<td style='text-align:center;' width=45>".bar(expStatus($general['intel2']), 20)."</td>
|
<td style='text-align:center;' width=45>".bar(expStatus($general['intel2']), 20)."</td>
|
||||||
@@ -1319,7 +1319,7 @@ function addAge() {
|
|||||||
$admin = $gameStor->getValues(['startyear', 'year', 'month']);
|
$admin = $gameStor->getValues(['startyear', 'year', 'month']);
|
||||||
|
|
||||||
if($admin['year'] >= $admin['startyear']+3) {
|
if($admin['year'] >= $admin['startyear']+3) {
|
||||||
foreach($db->query('SELECT no,name,nation,leader,power,intel from general where specage<=age and special=%s', GameConst::$defaultSpecialDomestic) as $general){
|
foreach($db->query('SELECT no,name,nation,leadership,strength,intel from general where specage<=age and special=%s', GameConst::$defaultSpecialDomestic) as $general){
|
||||||
$special = SpecialityConst::pickSpecialDomestic($general);
|
$special = SpecialityConst::pickSpecialDomestic($general);
|
||||||
$specialClass = getGeneralSpecialDomesticClass($special);
|
$specialClass = getGeneralSpecialDomesticClass($special);
|
||||||
$specialText = $specialClass::$name;
|
$specialText = $specialClass::$name;
|
||||||
@@ -1332,7 +1332,7 @@ function addAge() {
|
|||||||
pushGenLog($general, "<C>●</>특기 【<b><L>{$specialText}</></b>】{$josaUl} 익혔습니다!");
|
pushGenLog($general, "<C>●</>특기 【<b><L>{$specialText}</></b>】{$josaUl} 익혔습니다!");
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach($db->query('SELECT no,name,nation,leader,power,intel,npc,dex0,dex10,dex20,dex30,dex40 from general where specage2<=age and special2=%s', GameConst::$defaultSpecialWar) as $general){
|
foreach($db->query('SELECT no,name,nation,leadership,strength,intel,npc,dex0,dex10,dex20,dex30,dex40 from general where specage2<=age and special2=%s', GameConst::$defaultSpecialWar) as $general){
|
||||||
$special2 = SpecialityConst::pickSpecialWar($general);
|
$special2 = SpecialityConst::pickSpecialWar($general);
|
||||||
$specialClass = getGeneralSpecialWarClass($special2);
|
$specialClass = getGeneralSpecialWarClass($special2);
|
||||||
$specialText = $specialClass::$name;
|
$specialText = $specialClass::$name;
|
||||||
@@ -1424,7 +1424,7 @@ function CheckHall($no) {
|
|||||||
dex0,dex10,dex20,dex30,dex40,
|
dex0,dex10,dex20,dex30,dex40,
|
||||||
ttw/(ttw+ttd+ttl) as ttrate, ttw+ttd+ttl as tt,
|
ttw/(ttw+ttd+ttl) as ttrate, ttw+ttd+ttl as tt,
|
||||||
tlw/(tlw+tld+tll) as tlrate, tlw+tld+tll as tl,
|
tlw/(tlw+tld+tll) as tlrate, tlw+tld+tll as tl,
|
||||||
tpw/(tpw+tpd+tpl) as tprate, tpw+tpd+tpl as tp,
|
tsw/(tsw+tsd+tsl) as tprate, tsw+tsd+tsl as ts,
|
||||||
tiw/(tiw+tid+til) as tirate, tiw+tid+til as ti,
|
tiw/(tiw+tid+til) as tirate, tiw+tid+til as ti,
|
||||||
betgold, betwin, betwingold, betwingold/betgold as betrate
|
betgold, betwin, betwingold, betwingold/betgold as betrate
|
||||||
from general where no=%i', $no);
|
from general where no=%i', $no);
|
||||||
@@ -1455,7 +1455,7 @@ function CheckHall($no) {
|
|||||||
//토너승률인데 50회 미만시 스킵
|
//토너승률인데 50회 미만시 스킵
|
||||||
if($typeName === 'tlrate' && $general['tl'] < 50) { continue; }
|
if($typeName === 'tlrate' && $general['tl'] < 50) { continue; }
|
||||||
//토너승률인데 50회 미만시 스킵
|
//토너승률인데 50회 미만시 스킵
|
||||||
if($typeName === 'tprate' && $general['tp'] < 50) { continue; }
|
if($typeName === 'tsrate' && $general['ts'] < 50) { continue; }
|
||||||
//토너승률인데 50회 미만시 스킵
|
//토너승률인데 50회 미만시 스킵
|
||||||
if($typeName === 'tirate' && $general['ti'] < 50) { continue; }
|
if($typeName === 'tirate' && $general['ti'] < 50) { continue; }
|
||||||
//수익률인데 1000미만시 스킵
|
//수익률인데 1000미만시 스킵
|
||||||
@@ -1752,25 +1752,25 @@ function uniqueItem($general, $log, $vote=0) {
|
|||||||
|
|
||||||
function checkAbilityEx(int $generalID, ActionLogger $actLog){
|
function checkAbilityEx(int $generalID, ActionLogger $actLog){
|
||||||
$db = DB::db();
|
$db = DB::db();
|
||||||
$general = $db->queryFirstRow('SELECT leader,leader2,power,power2,intel,intel2 FROM general WHERE no = %i',$generalID);
|
$general = $db->queryFirstRow('SELECT leadership,leadership2,strength,strength2,intel,intel2 FROM general WHERE no = %i',$generalID);
|
||||||
|
|
||||||
if(!$general){
|
if(!$general){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['leader2'] < 0){
|
if($general['leadership2'] < 0){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'leader2'=>$db->sqleval('leader2 + %i', GameConst::$upgradeLimit),
|
'leadership2'=>$db->sqleval('leadership2 + %i', GameConst::$upgradeLimit),
|
||||||
'leader'=>$db->sqleval('leader - 1')
|
'leadership'=>$db->sqleval('leadership - 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<R>통솔</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<R>통솔</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['power2'] < 0){
|
if($general['strength2'] < 0){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'power2'=>$db->sqleval('power2 + %i', GameConst::$upgradeLimit),
|
'strength2'=>$db->sqleval('strength2 + %i', GameConst::$upgradeLimit),
|
||||||
'power'=>$db->sqleval('power - 1')
|
'strength'=>$db->sqleval('strength - 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<R>무력</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<R>무력</>이 <C>1</> 떨어졌습니다!', ActionLogger::PLAIN);
|
||||||
return;
|
return;
|
||||||
@@ -1785,19 +1785,19 @@ function checkAbilityEx(int $generalID, ActionLogger $actLog){
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['leader2'] >= GameConst::$upgradeLimit){
|
if($general['leadership2'] >= GameConst::$upgradeLimit){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'leader2'=>$db->sqleval('leader2 - %i', GameConst::$upgradeLimit),
|
'leadership2'=>$db->sqleval('leadership2 - %i', GameConst::$upgradeLimit),
|
||||||
'leader'=>$db->sqleval('leader + 1')
|
'leadership'=>$db->sqleval('leadership + 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<S>통솔</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<S>통솔</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['power2'] >= GameConst::$upgradeLimit){
|
if($general['strength2'] >= GameConst::$upgradeLimit){
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'power2'=>$db->sqleval('power2 - %i', GameConst::$upgradeLimit),
|
'strength2'=>$db->sqleval('strength2 - %i', GameConst::$upgradeLimit),
|
||||||
'power'=>$db->sqleval('power + 1')
|
'strength'=>$db->sqleval('strength + 1')
|
||||||
], 'no=%i', $generalID);
|
], 'no=%i', $generalID);
|
||||||
$actLog->pushGeneralActionLog('<S>무력</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
$actLog->pushGeneralActionLog('<S>무력</>이 <C>1</> 올랐습니다!', ActionLogger::PLAIN);
|
||||||
return;
|
return;
|
||||||
@@ -1819,29 +1819,29 @@ function checkAbility($general, $log) {
|
|||||||
|
|
||||||
$limit = GameConst::$upgradeLimit;
|
$limit = GameConst::$upgradeLimit;
|
||||||
|
|
||||||
$query = "select no,leader,leader2,power,power2,intel,intel2 from general where no='{$general['no']}'";
|
$query = "select no,leadership,leadership2,strength,strength2,intel,intel2 from general where no='{$general['no']}'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$general = MYDB_fetch_array($result);
|
$general = MYDB_fetch_array($result);
|
||||||
|
|
||||||
if($general['leader2'] < 0) {
|
if($general['leadership2'] < 0) {
|
||||||
$query = "update general set leader2='$limit'+leader2,leader=leader-1 where no='{$general['no']}'";
|
$query = "update general set leadership2='$limit'+leadership2,leadership=leadership-1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><R>통솔</>이 <C>1</> 떨어졌습니다!";
|
$log[] = "<C>●</><R>통솔</>이 <C>1</> 떨어졌습니다!";
|
||||||
} elseif($general['leader2'] >= $limit) {
|
} elseif($general['leadership2'] >= $limit) {
|
||||||
$query = "update general set leader2=leader2-'$limit',leader=leader+1 where no='{$general['no']}'";
|
$query = "update general set leadership2=leadership2-'$limit',leadership=leadership+1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><S>통솔</>이 <C>1</> 올랐습니다!";
|
$log[] = "<C>●</><S>통솔</>이 <C>1</> 올랐습니다!";
|
||||||
}
|
}
|
||||||
|
|
||||||
if($general['power2'] < 0) {
|
if($general['strength2'] < 0) {
|
||||||
$query = "update general set power2='$limit'+power2,power=power-1 where no='{$general['no']}'";
|
$query = "update general set strength2='$limit'+strength2,strength=strength-1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><R>무력</>이 <C>1</> 떨어졌습니다!";
|
$log[] = "<C>●</><R>무력</>이 <C>1</> 떨어졌습니다!";
|
||||||
} elseif($general['power2'] >= $limit) {
|
} elseif($general['strength2'] >= $limit) {
|
||||||
$query = "update general set power2=power2-'$limit',power=power+1 where no='{$general['no']}'";
|
$query = "update general set strength2=strength2-'$limit',strength=strength+1 where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log[] = "<C>●</><S>무력</>이 <C>1</> 올랐습니다!";
|
$log[] = "<C>●</><S>무력</>이 <C>1</> 올랐습니다!";
|
||||||
|
|||||||
+10
-10
@@ -337,32 +337,32 @@ function getLevel($level, $nlevel=8) {
|
|||||||
][$code]??'-';
|
][$code]??'-';
|
||||||
}
|
}
|
||||||
|
|
||||||
function getCall($leader, $power, $intel) {
|
function getCall($leadership, $strength, $intel) {
|
||||||
if($leader < 40){
|
if($leadership < 40){
|
||||||
if($power + $intel < 40){
|
if($strength + $intel < 40){
|
||||||
return '아둔';
|
return '아둔';
|
||||||
}
|
}
|
||||||
if($intel >= GameConst::$chiefStatMin && $power < $intel * 0.8){
|
if($intel >= GameConst::$chiefStatMin && $strength < $intel * 0.8){
|
||||||
return '학자';
|
return '학자';
|
||||||
}
|
}
|
||||||
if($power >= GameConst::$chiefStatMin && $intel < $power * 0.8){
|
if($strength >= GameConst::$chiefStatMin && $intel < $strength * 0.8){
|
||||||
return '장사';
|
return '장사';
|
||||||
}
|
}
|
||||||
return '명사';
|
return '명사';
|
||||||
}
|
}
|
||||||
|
|
||||||
$maxStat = max($leader, $power, $intel);
|
$maxStat = max($leadership, $strength, $intel);
|
||||||
$sum2Stat = min($leader+$power, $power+$intel, $intel+$leader);
|
$sum2Stat = min($leadership+$strength, $strength+$intel, $intel+$leadership);
|
||||||
if($maxStat >= GameConst::$chiefStatMin + GameConst::$statGradeLevel && $sum2Stat >= $maxStat * 1.7){
|
if($maxStat >= GameConst::$chiefStatMin + GameConst::$statGradeLevel && $sum2Stat >= $maxStat * 1.7){
|
||||||
return '만능';
|
return '만능';
|
||||||
}
|
}
|
||||||
if($power >= GameConst::$chiefStatMin - GameConst::$statGradeLevel && $intel < $power * 0.8){
|
if($strength >= GameConst::$chiefStatMin - GameConst::$statGradeLevel && $intel < $strength * 0.8){
|
||||||
return '용장';
|
return '용장';
|
||||||
}
|
}
|
||||||
if($intel >= GameConst::$chiefStatMin - GameConst::$statGradeLevel && $power < $intel * 0.8){
|
if($intel >= GameConst::$chiefStatMin - GameConst::$statGradeLevel && $strength < $intel * 0.8){
|
||||||
return '명장';
|
return '명장';
|
||||||
}
|
}
|
||||||
if($leader >= GameConst::$chiefStatMin - GameConst::$statGradeLevel && $power + $intel < $leader){
|
if($leadership >= GameConst::$chiefStatMin - GameConst::$statGradeLevel && $strength + $intel < $leadership){
|
||||||
return '차장';
|
return '차장';
|
||||||
}
|
}
|
||||||
return '평범';
|
return '평범';
|
||||||
|
|||||||
@@ -420,7 +420,7 @@ function postUpdateMonthly() {
|
|||||||
sum(pop)*sum(pop+agri+comm+secu+wall+def)/sum(pop2+agri2+comm2+secu2+wall2+def2)/100
|
sum(pop)*sum(pop+agri+comm+secu+wall+def)/sum(pop2+agri2+comm2+secu2+wall2+def2)/100
|
||||||
) from city where nation=A.nation and supply=1
|
) from city where nation=A.nation and supply=1
|
||||||
))
|
))
|
||||||
+(select sum(leader+power+intel) from general where nation=A.nation)
|
+(select sum(leadership+strength+intel) from general where nation=A.nation)
|
||||||
+(select round(sum(dex0+dex10+dex20+dex30+dex40)/1000) from general where nation=A.nation)
|
+(select round(sum(dex0+dex10+dex20+dex30+dex40)/1000) from general where nation=A.nation)
|
||||||
+(select round(sum(experience+dedication)/100) from general where nation=A.nation)
|
+(select round(sum(experience+dedication)/100) from general where nation=A.nation)
|
||||||
+(select round(avg(connect)) from general where nation=A.nation)
|
+(select round(avg(connect)) from general where nation=A.nation)
|
||||||
@@ -1059,7 +1059,7 @@ function checkStatistic() {
|
|||||||
|
|
||||||
$nationGeneralInfos = Util::convertArrayToDict(
|
$nationGeneralInfos = Util::convertArrayToDict(
|
||||||
$db->query(
|
$db->query(
|
||||||
'SELECT nation, sum(leader+power+intel) as abil,sum(gold+rice) as goldrice,
|
'SELECT nation, sum(leadership+strength+intel) as abil,sum(gold+rice) as goldrice,
|
||||||
sum(dex0+dex10+dex20+dex30) as dex,sum(experience+dedication) as expded
|
sum(dex0+dex10+dex20+dex30) as dex,sum(experience+dedication) as expded
|
||||||
from general GROUP BY nation'
|
from general GROUP BY nation'
|
||||||
),
|
),
|
||||||
|
|||||||
+79
-79
@@ -6,7 +6,7 @@ use Constraint\Constraint;
|
|||||||
/**
|
/**
|
||||||
* 장수의 통솔을 받아옴
|
* 장수의 통솔을 받아옴
|
||||||
*
|
*
|
||||||
* @param array $general 장수 정보, leader, injury, lbonus, horse 사용
|
* @param array $general 장수 정보, leadership, injury, lbonus, horse 사용
|
||||||
* @param bool $withInjury 부상값 사용 여부
|
* @param bool $withInjury 부상값 사용 여부
|
||||||
* @param bool $withItem 아이템 적용 여부
|
* @param bool $withItem 아이템 적용 여부
|
||||||
* @param bool $withStatAdjust 추가 능력치 보정 사용 여부
|
* @param bool $withStatAdjust 추가 능력치 보정 사용 여부
|
||||||
@@ -18,7 +18,7 @@ function getGeneralLeadership($general, $withInjury, $withItem, $withStatAdjust,
|
|||||||
if($general === null){
|
if($general === null){
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
$leadership = $general['leader'];
|
$leadership = $general['leadership'];
|
||||||
if($withInjury){
|
if($withInjury){
|
||||||
$leadership *= (100 - $general['injury']) / 100;
|
$leadership *= (100 - $general['injury']) / 100;
|
||||||
}
|
}
|
||||||
@@ -58,7 +58,7 @@ function getGeneralLeadership($general, $withInjury, $withItem, $withStatAdjust,
|
|||||||
*
|
*
|
||||||
* @return int|float 계산된 능력치
|
* @return int|float 계산된 능력치
|
||||||
*/
|
*/
|
||||||
function getGeneralPower($general, $withInjury, $withItem, $withStatAdjust, $useFloor = true){
|
function getGeneralStrength($general, $withInjury, $withItem, $withStatAdjust, $useFloor = true){
|
||||||
if($general === null){
|
if($general === null){
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -107,7 +107,7 @@ function getGeneralIntel($general, $withInjury, $withItem, $withStatAdjust, $use
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($withStatAdjust){
|
if($withStatAdjust){
|
||||||
$intel += Util::round(getGeneralPower($general, $withInjury, $withItem, false, false) / 4);
|
$intel += Util::round(getGeneralStrength($general, $withInjury, $withItem, false, false) / 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
if($useFloor){
|
if($useFloor){
|
||||||
@@ -120,16 +120,16 @@ function getGeneralIntel($general, $withInjury, $withItem, $withStatAdjust, $use
|
|||||||
* 내정 커맨드 사용시 성공 확률 계산
|
* 내정 커맨드 사용시 성공 확률 계산
|
||||||
*
|
*
|
||||||
* @param array $general 장수 정보
|
* @param array $general 장수 정보
|
||||||
* @param int|string $type 내정 커맨드 타입, 0|'leader' = 통솔 기반, 1|'power' = 무력 기반, 2|'intel' = 지력 기반
|
* @param int|string $type 내정 커맨드 타입, 0|'leadership' = 통솔 기반, 1|'power' = 무력 기반, 2|'intel' = 지력 기반
|
||||||
*
|
*
|
||||||
* @return array 계산된 실패, 성공 확률 ('success' => 성공 확률, 'fail' => 실패 확률)
|
* @return array 계산된 실패, 성공 확률 ('success' => 성공 확률, 'fail' => 실패 확률)
|
||||||
*/
|
*/
|
||||||
function CriticalRatioDomestic(&$general, $type) {
|
function CriticalRatioDomestic(&$general, $type) {
|
||||||
$leader = getGeneralLeadership($general, false, true, true, false);
|
$leadership = getGeneralLeadership($general, false, true, true, false);
|
||||||
$power = getGeneralPower($general, false, true, true, false);
|
$power = getGeneralStrength($general, false, true, true, false);
|
||||||
$intel = getGeneralIntel($general, false, true, true, false);
|
$intel = getGeneralIntel($general, false, true, true, false);
|
||||||
|
|
||||||
$avg = ($leader+$power+$intel) / 3;
|
$avg = ($leadership+$power+$intel) / 3;
|
||||||
/*
|
/*
|
||||||
* 능력치가 높아질 수록 성공 확률 감소. 실패 확률도 감소
|
* 능력치가 높아질 수록 성공 확률 감소. 실패 확률도 감소
|
||||||
|
|
||||||
@@ -143,8 +143,8 @@ function CriticalRatioDomestic(&$general, $type) {
|
|||||||
505050(50%,50%), 107070(50%,50%)
|
505050(50%,50%), 107070(50%,50%)
|
||||||
*/
|
*/
|
||||||
switch($type) {
|
switch($type) {
|
||||||
case 'leader':
|
case 'leadership':
|
||||||
case 0: $ratio = $avg / $leader; break;
|
case 0: $ratio = $avg / $leadership; break;
|
||||||
case 'power':
|
case 'power':
|
||||||
case 1: $ratio = $avg / $power; break;
|
case 1: $ratio = $avg / $power; break;
|
||||||
case 'intel':
|
case 'intel':
|
||||||
@@ -507,8 +507,8 @@ function process_4(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
// 군량 하락 내정보다 2배 지력경험 경험, 공헌 상승
|
// 군량 하락 내정보다 2배 지력경험 경험, 공헌 상승
|
||||||
$general['rice'] -= $admin['develcost'] * 2;
|
$general['rice'] -= $admin['develcost'] * 2;
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',rice='{$general['rice']}',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',rice='{$general['rice']}',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -558,7 +558,7 @@ function process_5(&$general, $type) {
|
|||||||
if($city['trust'] < GameConst::$develrate) { $city['trust'] = GameConst::$develrate; }
|
if($city['trust'] < GameConst::$develrate) { $city['trust'] = GameConst::$develrate; }
|
||||||
$trust = $city['trust'] / 100;
|
$trust = $city['trust'] / 100;
|
||||||
|
|
||||||
$score = getGeneralPower($general, true, true, true, false) * $trust;
|
$score = getGeneralStrength($general, true, true, true, false) * $trust;
|
||||||
$score = $score * (100 + $general['explevel']/5)/100;
|
$score = $score * (100 + $general['explevel']/5)/100;
|
||||||
$score = $score * (80 + rand() % 41)/100; // 80 ~ 120%
|
$score = $score * (80 + rand() % 41)/100; // 80 ~ 120%
|
||||||
|
|
||||||
@@ -607,8 +607,8 @@ function process_5(&$general, $type) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
// 자금 하락, 무력 경험 경험, 공헌 상승
|
// 자금 하락, 무력 경험 경험, 공헌 상승
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
$general['power2']++;
|
$general['strength2']++;
|
||||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',strength2='{$general['strength2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -697,8 +697,8 @@ function process_7(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
// 군량 하락 내정보다 2배 지력경험 경험, 공헌 상승
|
// 군량 하락 내정보다 2배 지력경험 경험, 공헌 상승
|
||||||
$general['rice'] -= $admin['develcost'] * 2;
|
$general['rice'] -= $admin['develcost'] * 2;
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',rice='{$general['rice']}',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',rice='{$general['rice']}',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -747,7 +747,7 @@ function process_8(&$general) {
|
|||||||
if($city['trust'] < GameConst::$develrate) { $city['trust'] = GameConst::$develrate; }
|
if($city['trust'] < GameConst::$develrate) { $city['trust'] = GameConst::$develrate; }
|
||||||
$trust = $city['trust'] / 100;
|
$trust = $city['trust'] / 100;
|
||||||
|
|
||||||
$score = getGeneralPower($general, true, true, true, false) * $trust;
|
$score = getGeneralStrength($general, true, true, true, false) * $trust;
|
||||||
$score = $score * (100 + $general['explevel']/5)/100;
|
$score = $score * (100 + $general['explevel']/5)/100;
|
||||||
$score = $score * (80 + rand() % 41)/100; // 80 ~ 120%
|
$score = $score * (80 + rand() % 41)/100; // 80 ~ 120%
|
||||||
|
|
||||||
@@ -795,8 +795,8 @@ function process_8(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
// 자금 하락, 무력 경험 경험, 공헌 상승
|
// 자금 하락, 무력 경험 경험, 공헌 상승
|
||||||
$general['gold'] -= $admin['develcost'];
|
$general['gold'] -= $admin['develcost'];
|
||||||
$general['power2']++;
|
$general['strength2']++;
|
||||||
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',strength2='{$general['strength2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -837,7 +837,7 @@ function process_9(&$general) {
|
|||||||
else { $dtype = 1; $stype = "쌀"; }
|
else { $dtype = 1; $stype = "쌀"; }
|
||||||
|
|
||||||
$score = getGeneralLeadership($general, true, true, true)
|
$score = getGeneralLeadership($general, true, true, true)
|
||||||
+ getGeneralPower($general, true, true, true)
|
+ getGeneralStrength($general, true, true, true)
|
||||||
+ getGeneralIntel($general, true, true, true);
|
+ getGeneralIntel($general, true, true, true);
|
||||||
$score = $score * (100 + $general['explevel']/5)/100;
|
$score = $score * (100 + $general['explevel']/5)/100;
|
||||||
$score = $score * (80 + rand() % 41)/100; // 80 ~ 120%
|
$score = $score * (80 + rand() % 41)/100; // 80 ~ 120%
|
||||||
@@ -874,14 +874,14 @@ function process_9(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
}
|
}
|
||||||
|
|
||||||
switch(Util::choiceRandomUsingWeight([$general['leader'], $general['power'], $general['intel']])) {
|
switch(Util::choiceRandomUsingWeight([$general['leadership'], $general['power'], $general['intel']])) {
|
||||||
case 0:
|
case 0:
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$general['power2']++;
|
$general['strength2']++;
|
||||||
$query = "update general set resturn='SUCCESS',power2='{$general['power2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',strength2='{$general['strength2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$general['intel2']++;
|
$general['intel2']++;
|
||||||
@@ -1048,10 +1048,10 @@ function process_11(&$general, $type) {
|
|||||||
], 'city = %i', $general['city']);
|
], 'city = %i', $general['city']);
|
||||||
|
|
||||||
// 통솔경험, 병종 변경, 병사수 변경, 훈련치 변경, 사기치 변경, 자금 군량 하락, 공헌도, 명성 상승
|
// 통솔경험, 병종 변경, 병사수 변경, 훈련치 변경, 사기치 변경, 자금 군량 하락, 공헌도, 명성 상승
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$db->update('general', [
|
$db->update('general', [
|
||||||
'resturn'=>'SUCCESS',
|
'resturn'=>'SUCCESS',
|
||||||
'leader2'=>$general['leader2'],
|
'leadership2'=>$general['leadership2'],
|
||||||
'crewtype'=>$crewTypeObj->id,
|
'crewtype'=>$crewTypeObj->id,
|
||||||
'crew'=>$general['crew'],
|
'crew'=>$general['crew'],
|
||||||
'train'=>$train,
|
'train'=>$train,
|
||||||
@@ -1120,8 +1120,8 @@ function process_13(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
// 경험치 상승 // 공헌도, 명성 상승
|
// 경험치 상승 // 공헌도, 명성 상승
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -1177,8 +1177,8 @@ function process_14(&$general) {
|
|||||||
// 사기치 변경 // 자금 감소 // 경험치 상승 // 공헌도, 명성 상승
|
// 사기치 변경 // 자금 감소 // 경험치 상승 // 공헌도, 명성 상승
|
||||||
$score += $general['atmos'];
|
$score += $general['atmos'];
|
||||||
if($score > GameConst::$maxAtmosByCommand) { $score = GameConst::$maxAtmosByCommand; }
|
if($score > GameConst::$maxAtmosByCommand) { $score = GameConst::$maxAtmosByCommand; }
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',atmos='$score',gold='$gold',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',atmos='$score',gold='$gold',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -1249,8 +1249,8 @@ function process_15(&$general) {
|
|||||||
$ded = CharDedication($ded, $general['personal']);
|
$ded = CharDedication($ded, $general['personal']);
|
||||||
|
|
||||||
// 훈련,사기치 변경 // 자금 감소 // 경험치 상승 // 공헌도, 명성 상승
|
// 훈련,사기치 변경 // 자금 감소 // 경험치 상승 // 공헌도, 명성 상승
|
||||||
$general['leader2']+=3;
|
$general['leadership2']+=3;
|
||||||
$query = "update general set resturn='SUCCESS',term='0',atmos='95',train='95',gold='$gold',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',term='0',atmos='95',train='95',gold='$gold',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -1412,13 +1412,13 @@ function process_21(&$general) {
|
|||||||
$exp = CharExperience($exp, $general['personal']);
|
$exp = CharExperience($exp, $general['personal']);
|
||||||
|
|
||||||
// 이동, 경험치 상승, 명성 상승, 사기 감소
|
// 이동, 경험치 상승, 명성 상승, 사기 감소
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$db->update('general',[
|
$db->update('general',[
|
||||||
'resturn'=>'SUCCESS',
|
'resturn'=>'SUCCESS',
|
||||||
'gold'=>$db->sqleval('gold - %i',$admin['develcost']),
|
'gold'=>$db->sqleval('gold - %i',$admin['develcost']),
|
||||||
'city'=>$destCity->id,
|
'city'=>$destCity->id,
|
||||||
'atmos'=>$db->sqleval('atmos*0.95'),
|
'atmos'=>$db->sqleval('atmos*0.95'),
|
||||||
'leader2'=>$general['leader2'],
|
'leadership2'=>$general['leadership2'],
|
||||||
'experience'=>$db->sqleval('experience + %i',$exp)
|
'experience'=>$db->sqleval('experience + %i',$exp)
|
||||||
], 'no = %i', $general['no']);
|
], 'no = %i', $general['no']);
|
||||||
|
|
||||||
@@ -1497,8 +1497,8 @@ function process_26(&$general) {
|
|||||||
$query = "update general set city='{$general['city']}' where troop='{$general['troop']}'";
|
$query = "update general set city='{$general['city']}' where troop='{$general['troop']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
// 경험치 명성 공헌 상승
|
// 경험치 명성 공헌 상승
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -1564,8 +1564,8 @@ function process_28(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
// 경험치 상승 // 명성,공헌 상승
|
// 경험치 상승 // 명성,공헌 상승
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',experience=experience+'$exp',dedication=dedication+'$ded' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',experience=experience+'$exp',dedication=dedication+'$ded' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -1616,8 +1616,8 @@ function process_30(&$general) {
|
|||||||
$exp = CharExperience($exp, $general['personal']);
|
$exp = CharExperience($exp, $general['personal']);
|
||||||
|
|
||||||
// 이동, 경험치 상승, 명성 상승, 병력/사기/훈련 감소
|
// 이동, 경험치 상승, 명성 상승, 병력/사기/훈련 감소
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',gold=gold-'$cost',city='$destination',crew=crew*0.95,atmos=atmos*0.9,train=train*0.95,leader2='{$general['leader2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',gold=gold-'$cost',city='$destination',crew=crew*0.95,atmos=atmos*0.9,train=train*0.95,leadership2='{$general['leadership2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
if($general['level'] == 12) {
|
if($general['level'] == 12) {
|
||||||
@@ -1747,10 +1747,10 @@ function process_31(&$general) {
|
|||||||
$exp = CharExperience($exp, $general['personal']);
|
$exp = CharExperience($exp, $general['personal']);
|
||||||
$ded = CharDedication($ded, $general['personal']);
|
$ded = CharDedication($ded, $general['personal']);
|
||||||
|
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$general['gold'] -= $admin['develcost']*3;
|
$general['gold'] -= $admin['develcost']*3;
|
||||||
$general['rice'] -= $admin['develcost']*3;
|
$general['rice'] -= $admin['develcost']*3;
|
||||||
$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']}'";
|
$query = "update general set resturn='SUCCESS',gold='{$general['gold']}',rice='{$general['rice']}',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
|
|
||||||
@@ -1898,8 +1898,8 @@ function process_42(&$general) {
|
|||||||
case 5:
|
case 5:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:동네 장사와 힘겨루기를 하여 멋지게 이겼습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:동네 장사와 힘겨루기를 하여 멋지게 이겼습니다. <1>$date</>";
|
||||||
// 경험치 상승 // 명성 상승
|
// 경험치 상승 // 명성 상승
|
||||||
$general['power2'] += 2;
|
$general['strength2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
@@ -1911,8 +1911,8 @@ function process_42(&$general) {
|
|||||||
case 7:
|
case 7:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:산적과 싸워 금 <C>300</>을 빼앗았습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:산적과 싸워 금 <C>300</>을 빼앗았습니다. <1>$date</>";
|
||||||
// 자금 상승 // 경험치 상승 // 명성 상승
|
// 자금 상승 // 경험치 상승 // 명성 상승
|
||||||
$general['power2'] += 2;
|
$general['strength2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',gold=gold+300,power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',gold=gold+300,strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
@@ -1926,31 +1926,31 @@ function process_42(&$general) {
|
|||||||
case 9:
|
case 9:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:호랑이를 잡아 고기 <C>300</>을 얻었습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:호랑이를 잡아 고기 <C>300</>을 얻었습니다. <1>$date</>";
|
||||||
// 군량 상승 // 경험치 상승
|
// 군량 상승 // 경험치 상승
|
||||||
$general['power2'] += 2;
|
$general['strength2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',rice=rice+300,power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',rice=rice+300,strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:호랑이에게 물려 다쳤습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:호랑이에게 물려 다쳤습니다. <1>$date</>";
|
||||||
// 경험치 하락 // 명성 상승
|
// 경험치 하락 // 명성 상승
|
||||||
$injury = rand() % 10 + 10;
|
$injury = rand() % 10 + 10;
|
||||||
$general['power2']--;
|
$general['strength2']--;
|
||||||
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',power2='{$general['power2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',strength2='{$general['strength2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:곰을 잡아 고기 <C>300</>을 얻었습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:곰을 잡아 고기 <C>300</>을 얻었습니다. <1>$date</>";
|
||||||
// 군량 상승 // 경험치 상승 // 명성 상승
|
// 군량 상승 // 경험치 상승 // 명성 상승
|
||||||
$general['power2'] += 2;
|
$general['strength2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',rice=rice+300,power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',rice=rice+300,strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 12:
|
case 12:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:곰에게 할퀴어 다쳤습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:곰에게 할퀴어 다쳤습니다. <1>$date</>";
|
||||||
// 경험치 하락 // 명성 상승
|
// 경험치 하락 // 명성 상승
|
||||||
$injury = rand() % 10 + 10;
|
$injury = rand() % 10 + 10;
|
||||||
$general['power2']--;
|
$general['strength2']--;
|
||||||
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',power2='{$general['power2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',strength2='{$general['strength2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 13:
|
case 13:
|
||||||
@@ -1969,8 +1969,8 @@ function process_42(&$general) {
|
|||||||
$log[] = "<C>●</>{$admin['month']}월:위기에 빠진 사람을 구해주다가 다쳤습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:위기에 빠진 사람을 구해주다가 다쳤습니다. <1>$date</>";
|
||||||
// 경험치 하락 // 명성 상승
|
// 경험치 하락 // 명성 상승
|
||||||
$injury = rand() % 10 + 10;
|
$injury = rand() % 10 + 10;
|
||||||
$general['power2']--;
|
$general['strength2']--;
|
||||||
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 16:
|
case 16:
|
||||||
@@ -2013,46 +2013,46 @@ function process_42(&$general) {
|
|||||||
case 21:
|
case 21:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:백성들에게 현인의 가르침을 설파했습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:백성들에게 현인의 가르침을 설파했습니다. <1>$date</>";
|
||||||
// 경험치 상승 // 명성 상승
|
// 경험치 상승 // 명성 상승
|
||||||
$general['leader2'] += 2;
|
$general['leadership2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 22:
|
case 22:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:어느 집의 무너진 울타리를 고쳐주었습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:어느 집의 무너진 울타리를 고쳐주었습니다. <1>$date</>";
|
||||||
// 경험치 상승 // 명성 상승
|
// 경험치 상승 // 명성 상승
|
||||||
$general['power2'] += 2;
|
$general['strength2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 23:
|
case 23:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:어느 집의 도망친 가축을 되찾아 주었습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:어느 집의 도망친 가축을 되찾아 주었습니다. <1>$date</>";
|
||||||
// 경험치 상승 // 명성 상승
|
// 경험치 상승 // 명성 상승
|
||||||
$general['leader2'] += 2;
|
$general['leadership2'] += 2;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 24:
|
case 24:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:호랑이에게 물려 크게 다쳤습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:호랑이에게 물려 크게 다쳤습니다. <1>$date</>";
|
||||||
// 경험치 하락 // 명성 상승
|
// 경험치 하락 // 명성 상승
|
||||||
$injury = rand() % 30 + 20;
|
$injury = rand() % 30 + 20;
|
||||||
$general['power2']--;
|
$general['strength2']--;
|
||||||
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',power2='{$general['power2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',strength2='{$general['strength2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 25:
|
case 25:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:곰에게 할퀴어 크게 다쳤습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:곰에게 할퀴어 크게 다쳤습니다. <1>$date</>";
|
||||||
// 경험치 하락 // 명성 상승
|
// 경험치 하락 // 명성 상승
|
||||||
$injury = rand() % 30 + 20;
|
$injury = rand() % 30 + 20;
|
||||||
$general['power2']--;
|
$general['strength2']--;
|
||||||
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',power2='{$general['power2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',strength2='{$general['strength2']}',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 26:
|
case 26:
|
||||||
$log[] = "<C>●</>{$admin['month']}월:위기에 빠진 사람을 구하다가 죽을뻔 했습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:위기에 빠진 사람을 구하다가 죽을뻔 했습니다. <1>$date</>";
|
||||||
// 경험치 하락 // 명성 상승
|
// 경험치 하락 // 명성 상승
|
||||||
$injury = rand() % 50 + 30;
|
$injury = rand() % 50 + 30;
|
||||||
$general['power2']--;
|
$general['strength2']--;
|
||||||
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',power2='{$general['power2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',injury=injury+'$injury',strength2='{$general['strength2']}',experience=experience+'$exp2' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -2147,8 +2147,8 @@ function process_43(&$general) {
|
|||||||
$ded = CharDedication($ded, $general['personal']);
|
$ded = CharDedication($ded, $general['personal']);
|
||||||
|
|
||||||
// 경험치 상승 // 공헌도, 명성 상승
|
// 경험치 상승 // 공헌도, 명성 상승
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -2236,8 +2236,8 @@ function process_44(&$general) {
|
|||||||
$ded = CharDedication($ded, $general['personal']);
|
$ded = CharDedication($ded, $general['personal']);
|
||||||
|
|
||||||
// 경험치 상승 // 공헌도, 명성 상승
|
// 경험치 상승 // 공헌도, 명성 상승
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set resturn='SUCCESS',leader2='{$general['leader2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',leadership2='{$general['leadership2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
@@ -2462,15 +2462,15 @@ function process_49(&$general) {
|
|||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
// 경험치 상승
|
// 경험치 상승
|
||||||
switch(Util::choiceRandomUsingWeight([$general['leader'], $general['power'], $general['intel']])) {
|
switch(Util::choiceRandomUsingWeight([$general['leadership'], $general['power'], $general['intel']])) {
|
||||||
case 0:
|
case 0:
|
||||||
$general['leader2']++;
|
$general['leadership2']++;
|
||||||
$query = "update general set leader2='{$general['leader2']}' where no='{$general['no']}'";
|
$query = "update general set leadership2='{$general['leadership2']}' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$general['power2']++;
|
$general['strength2']++;
|
||||||
$query = "update general set power2='{$general['power2']}' where no='{$general['no']}'";
|
$query = "update general set strength2='{$general['strength2']}' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
|
|||||||
@@ -7,16 +7,16 @@ use Constraint\Constraint;
|
|||||||
* 내정 커맨드 사용시 성공 확률 계산
|
* 내정 커맨드 사용시 성공 확률 계산
|
||||||
*
|
*
|
||||||
* @param array $general 장수 정보
|
* @param array $general 장수 정보
|
||||||
* @param string $type 내정 커맨드 타입, 'leader' = 통솔 기반, 'power' = 무력 기반, 'intel' = 지력 기반
|
* @param string $type 내정 커맨드 타입, 'leadership' = 통솔 기반, 'strength' = 무력 기반, 'intel' = 지력 기반
|
||||||
*
|
*
|
||||||
* @return array 계산된 실패, 성공 확률 ('success' => 성공 확률, 'fail' => 실패 확률)
|
* @return array 계산된 실패, 성공 확률 ('success' => 성공 확률, 'fail' => 실패 확률)
|
||||||
*/
|
*/
|
||||||
function CriticalRatioDomestic(General $general, string $type) {
|
function CriticalRatioDomestic(General $general, string $type) {
|
||||||
$leader = $general->getLeadership(false, true, true, false);
|
$leadership = $general->getLeadership(false, true, true, false);
|
||||||
$power = $general->getPower(false, true, true, false);
|
$strength = $general->getStrength(false, true, true, false);
|
||||||
$intel = $general->getIntel(false, true, true, false);
|
$intel = $general->getIntel(false, true, true, false);
|
||||||
|
|
||||||
$avg = ($leader+$power+$intel) / 3;
|
$avg = ($leadership+$strength+$intel) / 3;
|
||||||
/*
|
/*
|
||||||
* 능력치가 높아질 수록 성공 확률 감소. 실패 확률도 감소
|
* 능력치가 높아질 수록 성공 확률 감소. 실패 확률도 감소
|
||||||
|
|
||||||
@@ -30,8 +30,8 @@ function CriticalRatioDomestic(General $general, string $type) {
|
|||||||
505050(50%,50%), 107070(50%,50%)
|
505050(50%,50%), 107070(50%,50%)
|
||||||
*/
|
*/
|
||||||
switch($type) {
|
switch($type) {
|
||||||
case 'leader': $ratio = $avg / $leader; break;
|
case 'leadership': $ratio = $avg / $leadership; break;
|
||||||
case 'power': $ratio = $avg / $power; break;
|
case 'strength': $ratio = $avg / $strength; break;
|
||||||
case 'intel': $ratio = $avg / $intel; break;
|
case 'intel': $ratio = $avg / $intel; break;
|
||||||
default:
|
default:
|
||||||
throw new MustNotBeReachedException();
|
throw new MustNotBeReachedException();
|
||||||
|
|||||||
@@ -1979,7 +1979,7 @@ function process_76(&$general) {
|
|||||||
$avgGenNum = $db->queryFirstField('SELECT avg(gennum) FROM nation');
|
$avgGenNum = $db->queryFirstField('SELECT avg(gennum) FROM nation');
|
||||||
$addGenCount = 5 + Util::round($avgGenNum / 10);
|
$addGenCount = 5 + Util::round($avgGenNum / 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']}'";
|
$query = "select avg(age) as age, max(leadership+power+intel) as stat_sum, 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),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$avgGen = MYDB_fetch_array($result);
|
$avgGen = MYDB_fetch_array($result);
|
||||||
|
|
||||||
@@ -1991,42 +1991,42 @@ function process_76(&$general) {
|
|||||||
$type = rand() % 10;
|
$type = rand() % 10;
|
||||||
switch($type) {
|
switch($type) {
|
||||||
case 0: case 1: case 2: case 3:
|
case 0: case 1: case 2: case 3:
|
||||||
$leader = GameConst::$defaultStatMax - 10 + rand()%11;
|
$leadership = GameConst::$defaultStatMax - 10 + rand()%11;
|
||||||
$intel = GameConst::$defaultStatMin + rand()%6;
|
$intel = GameConst::$defaultStatMin + rand()%6;
|
||||||
$power = GameConst::$defaultStatTotal - $leader - $intel;
|
$power = GameConst::$defaultStatTotal - $leadership - $intel;
|
||||||
break;
|
break;
|
||||||
case 4: case 5: case 6: case 7:
|
case 4: case 5: case 6: case 7:
|
||||||
$leader = GameConst::$defaultStatMax - 10 + rand()%11;
|
$leadership = GameConst::$defaultStatMax - 10 + rand()%11;
|
||||||
$power = GameConst::$defaultStatMin + rand()%6;
|
$power = GameConst::$defaultStatMin + rand()%6;
|
||||||
$intel = GameConst::$defaultStatTotal - $leader - $power;
|
$intel = GameConst::$defaultStatTotal - $leadership - $power;
|
||||||
break;
|
break;
|
||||||
case 8: case 9:
|
case 8: case 9:
|
||||||
$leader = GameConst::$defaultStatMin + rand()%6;
|
$leadership = GameConst::$defaultStatMin + rand()%6;
|
||||||
$power = GameConst::$defaultStatMax - 10 + rand()%11;
|
$power = GameConst::$defaultStatMax - 10 + rand()%11;
|
||||||
$intel = GameConst::$defaultStatTotal - $leader - $power;
|
$intel = GameConst::$defaultStatTotal - $leadership - $power;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// 국내 최고능치 기준으로 랜덤성 스케일링
|
// 국내 최고능치 기준으로 랜덤성 스케일링
|
||||||
if($avgGen['lpi'] > 210) {
|
if($avgGen['stat_sum'] > 210) {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$power = Util::round($power * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
} elseif($avgGen['lpi'] > 180) {
|
} elseif($avgGen['stat_sum'] > 180) {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$power = Util::round($power * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
} else {
|
} else {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$power = Util::round($power * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
}
|
}
|
||||||
$over1 = 0;
|
$over1 = 0;
|
||||||
$over2 = 0;
|
$over2 = 0;
|
||||||
$over3 = 0;
|
$over3 = 0;
|
||||||
// 너무 높은 능치는 다른 능치로 분산
|
// 너무 높은 능치는 다른 능치로 분산
|
||||||
if($leader > 90) {
|
if($leadership > 90) {
|
||||||
$over1 = rand() % ($leader - 90) + 5;
|
$over1 = rand() % ($leadership - 90) + 5;
|
||||||
$leader -= $over1;
|
$leadership -= $over1;
|
||||||
}
|
}
|
||||||
if($power > 90) {
|
if($power > 90) {
|
||||||
$over2 = rand() % ($power - 90) + 5;
|
$over2 = rand() % ($power - 90) + 5;
|
||||||
@@ -2043,8 +2043,8 @@ function process_76(&$general) {
|
|||||||
$power = $power + $over1 + $over2 + $over3;
|
$power = $power + $over1 + $over2 + $over3;
|
||||||
}
|
}
|
||||||
// 너무 높은 능치는 제한
|
// 너무 높은 능치는 제한
|
||||||
if($leader > GameConst::$defaultStatNPCMax) {
|
if($leadership > GameConst::$defaultStatNPCMax) {
|
||||||
$leader = GameConst::$defaultStatNPCMax;
|
$leadership = GameConst::$defaultStatNPCMax;
|
||||||
}
|
}
|
||||||
if($power > GameConst::$defaultStatNPCMax) {
|
if($power > GameConst::$defaultStatNPCMax) {
|
||||||
$power = GameConst::$defaultStatNPCMax;
|
$power = GameConst::$defaultStatNPCMax;
|
||||||
@@ -2065,14 +2065,14 @@ function process_76(&$general) {
|
|||||||
@MYDB_query("
|
@MYDB_query("
|
||||||
insert into general (
|
insert into general (
|
||||||
npc,npc_org,affinity,name,picture,nation,
|
npc,npc_org,affinity,name,picture,nation,
|
||||||
city,leader,power,intel,experience,dedication,
|
city,leadership,power,intel,experience,dedication,
|
||||||
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
||||||
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
||||||
makelimit,bornyear,deadyear,
|
makelimit,bornyear,deadyear,
|
||||||
dex0, dex10, dex20, dex30, dex40
|
dex0, dex10, dex20, dex30, dex40
|
||||||
) values (
|
) values (
|
||||||
'$npc','$npc','$affinity','$name','$picture','{$nation['nation']}',
|
'$npc','$npc','$affinity','$name','$picture','{$nation['nation']}',
|
||||||
'{$general['city']}','$leader','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
'{$general['city']}','$leadership','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
||||||
'1','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
|
'1','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
|
||||||
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
|
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
|
||||||
'0','$bornyear','$deadyear',
|
'0','$bornyear','$deadyear',
|
||||||
|
|||||||
+42
-42
@@ -1472,7 +1472,7 @@ function process_76(&$general) {
|
|||||||
$avgGenNum = $db->queryFirstField('SELECT avg(gennum) FROM nation');
|
$avgGenNum = $db->queryFirstField('SELECT avg(gennum) FROM nation');
|
||||||
$addGenCount = 5 + Util::round($avgGenNum / 10);
|
$addGenCount = 5 + Util::round($avgGenNum / 10);
|
||||||
|
|
||||||
$avgGen = $db->queryFirstRow('SELECT max(leader+power+intel) as lpi, avg(dedication) as ded,avg(experience) as exp, avg(dex0+dex10+dex20+dex30) as dex_t, avg(age) as age, avg(dex40) as dex40 from general where npc < 5 and nation = %i', $general['nation']);
|
$avgGen = $db->queryFirstRow('SELECT max(leadership+strength+intel) as stat_sum, avg(dedication) as ded,avg(experience) as exp, avg(dex0+dex10+dex20+dex30) as dex_t, avg(age) as age, avg(dex40) as dex40 from general where npc < 5 and nation = %i', $general['nation']);
|
||||||
|
|
||||||
$dexTotal = $avgGen['dex_t'];
|
$dexTotal = $avgGen['dex_t'];
|
||||||
|
|
||||||
@@ -1485,86 +1485,86 @@ function process_76(&$general) {
|
|||||||
$stat_tier3 = GameConst::$defaultStatMin + rand()%6;
|
$stat_tier3 = GameConst::$defaultStatMin + rand()%6;
|
||||||
$stat_tier2 = GameConst::$defaultStatTotal - $stat_tier1 - $stat_tier3;
|
$stat_tier2 = GameConst::$defaultStatTotal - $stat_tier1 - $stat_tier3;
|
||||||
$type = Util::choiceRandomUsingWeight([
|
$type = Util::choiceRandomUsingWeight([
|
||||||
'power0'=>1,
|
'strength0'=>1,
|
||||||
'power1'=>1,
|
'strength1'=>1,
|
||||||
'power2'=>1,
|
'strength2'=>1,
|
||||||
'intel'=>3,
|
'intel'=>3,
|
||||||
'neutral'=>0
|
'neutral'=>0
|
||||||
]);
|
]);
|
||||||
switch($type){
|
switch($type){
|
||||||
case 'power0':
|
case 'strength0':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier2;
|
$strength = $stat_tier2;
|
||||||
$intel = $stat_tier3;
|
$intel = $stat_tier3;
|
||||||
$dexVal = [$dexTotal*5/8, $dexTotal/8, $dexTotal/8, $dexTotal/8];
|
$dexVal = [$dexTotal*5/8, $dexTotal/8, $dexTotal/8, $dexTotal/8];
|
||||||
break;
|
break;
|
||||||
case 'power1':
|
case 'strength1':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier2;
|
$strength = $stat_tier2;
|
||||||
$intel = $stat_tier3;
|
$intel = $stat_tier3;
|
||||||
$dexVal = [$dexTotal/8, $dexTotal*5/8, $dexTotal/8, $dexTotal/8];
|
$dexVal = [$dexTotal/8, $dexTotal*5/8, $dexTotal/8, $dexTotal/8];
|
||||||
break;
|
break;
|
||||||
case 'power2':
|
case 'strength2':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier2;
|
$strength = $stat_tier2;
|
||||||
$intel = $stat_tier3;
|
$intel = $stat_tier3;
|
||||||
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal*5/8, $dexTotal/8];
|
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal*5/8, $dexTotal/8];
|
||||||
break;
|
break;
|
||||||
case 'intel':
|
case 'intel':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier3;
|
$strength = $stat_tier3;
|
||||||
$intel = $stat_tier2;
|
$intel = $stat_tier2;
|
||||||
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal/8, $dexTotal*5/8];
|
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal/8, $dexTotal*5/8];
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$leader = $stat_tier3;
|
$leadership = $stat_tier3;
|
||||||
$power = $stat_tier1;
|
$strength = $stat_tier1;
|
||||||
$intel = $stat_tier2;
|
$intel = $stat_tier2;
|
||||||
$dexVal = [$dexTotal/4, $dexTotal/4, $dexTotal/4, $dexTotal/4];
|
$dexVal = [$dexTotal/4, $dexTotal/4, $dexTotal/4, $dexTotal/4];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// 국내 최고능치 기준으로 랜덤성 스케일링
|
// 국내 최고능치 기준으로 랜덤성 스케일링
|
||||||
if($avgGen['lpi'] > 210) {
|
if($avgGen['stat_sum'] > 210) {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$strength = Util::round($strength * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
} elseif($avgGen['lpi'] > 180) {
|
} elseif($avgGen['stat_sum'] > 180) {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$strength = Util::round($strength * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
} else {
|
} else {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$strength = Util::round($strength * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
}
|
}
|
||||||
$over1 = 0;
|
$over1 = 0;
|
||||||
$over2 = 0;
|
$over2 = 0;
|
||||||
$over3 = 0;
|
$over3 = 0;
|
||||||
// 너무 높은 능치는 다른 능치로 분산
|
// 너무 높은 능치는 다른 능치로 분산
|
||||||
if($leader > 90) {
|
if($leadership > 90) {
|
||||||
$over1 = rand() % ($leader - 90) + 5;
|
$over1 = rand() % ($leadership - 90) + 5;
|
||||||
$leader -= $over1;
|
$leadership -= $over1;
|
||||||
}
|
}
|
||||||
if($power > 90) {
|
if($strength > 90) {
|
||||||
$over2 = rand() % ($power - 90) + 5;
|
$over2 = rand() % ($strength - 90) + 5;
|
||||||
$power -= $over2;
|
$strength -= $over2;
|
||||||
}
|
}
|
||||||
if($intel > 90) {
|
if($intel > 90) {
|
||||||
$over3 = rand() % ($intel - 90) + 5;
|
$over3 = rand() % ($intel - 90) + 5;
|
||||||
$intel -= $over3;
|
$intel -= $over3;
|
||||||
}
|
}
|
||||||
// 낮은 능치쪽으로 합산
|
// 낮은 능치쪽으로 합산
|
||||||
if($type == 'power') {
|
if($type == 'strength') {
|
||||||
$intel = $intel + $over1 + $over2 + $over3;
|
$intel = $intel + $over1 + $over2 + $over3;
|
||||||
} else {
|
} else {
|
||||||
$power = $power + $over1 + $over2 + $over3;
|
$strength = $strength + $over1 + $over2 + $over3;
|
||||||
}
|
}
|
||||||
// 너무 높은 능치는 제한
|
// 너무 높은 능치는 제한
|
||||||
if($leader > GameConst::$defaultStatNPCMax) {
|
if($leadership > GameConst::$defaultStatNPCMax) {
|
||||||
$leader = GameConst::$defaultStatNPCMax;
|
$leadership = GameConst::$defaultStatNPCMax;
|
||||||
}
|
}
|
||||||
if($power > GameConst::$defaultStatNPCMax) {
|
if($strength > GameConst::$defaultStatNPCMax) {
|
||||||
$power = GameConst::$defaultStatNPCMax;
|
$strength = GameConst::$defaultStatNPCMax;
|
||||||
}
|
}
|
||||||
if($intel > GameConst::$defaultStatNPCMax) {
|
if($intel > GameConst::$defaultStatNPCMax) {
|
||||||
$intel = GameConst::$defaultStatNPCMax;
|
$intel = GameConst::$defaultStatNPCMax;
|
||||||
@@ -1582,14 +1582,14 @@ function process_76(&$general) {
|
|||||||
@MYDB_query("
|
@MYDB_query("
|
||||||
insert into general (
|
insert into general (
|
||||||
npc,npc_org,affinity,name,picture,nation,
|
npc,npc_org,affinity,name,picture,nation,
|
||||||
city,leader,power,intel,experience,dedication,
|
city,leadership,strength,intel,experience,dedication,
|
||||||
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
||||||
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
||||||
makelimit,bornyear,deadyear,
|
makelimit,bornyear,deadyear,
|
||||||
dex0, dex10, dex20, dex30, dex40
|
dex0, dex10, dex20, dex30, dex40
|
||||||
) values (
|
) values (
|
||||||
'$npc','$npc','$affinity','$name','$picture','{$nation['nation']}',
|
'$npc','$npc','$affinity','$name','$picture','{$nation['nation']}',
|
||||||
'{$general['city']}','$leader','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
'{$general['city']}','$leadership','$strength','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
||||||
'1','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
|
'1','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
|
||||||
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
|
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
|
||||||
'0','$bornyear','$deadyear',
|
'0','$bornyear','$deadyear',
|
||||||
|
|||||||
@@ -330,9 +330,9 @@ function process_29(&$general) {
|
|||||||
if(!$found_npc) {
|
if(!$found_npc) {
|
||||||
$exp = 100;
|
$exp = 100;
|
||||||
$ded = 70;
|
$ded = 70;
|
||||||
switch(Util::choiceRandomUsingWeight([$general['leader'], $general['power'], $general['intel']])) {
|
switch(Util::choiceRandomUsingWeight([$general['leadership'], $general['power'], $general['intel']])) {
|
||||||
case 0: $general['leader2'] += 1; break;
|
case 0: $general['leadership2'] += 1; break;
|
||||||
case 1: $general['power2'] += 1; break;
|
case 1: $general['strength2'] += 1; break;
|
||||||
case 2: $general['intel2'] += 1; break;
|
case 2: $general['intel2'] += 1; break;
|
||||||
}
|
}
|
||||||
$log[] = "<C>●</>{$admin['month']}월:인재를 찾을 수 없었습니다. <1>$date</>";
|
$log[] = "<C>●</>{$admin['month']}월:인재를 찾을 수 없었습니다. <1>$date</>";
|
||||||
@@ -340,9 +340,9 @@ function process_29(&$general) {
|
|||||||
// 탐색 성공
|
// 탐색 성공
|
||||||
$exp = 200;
|
$exp = 200;
|
||||||
$ded = 300;
|
$ded = 300;
|
||||||
switch(Util::choiceRandomUsingWeight([$general['leader'], $general['power'], $general['intel']])) {
|
switch(Util::choiceRandomUsingWeight([$general['leadership'], $general['power'], $general['intel']])) {
|
||||||
case 0: $general['leader2'] += 3; break;
|
case 0: $general['leadership2'] += 3; break;
|
||||||
case 1: $general['power2'] += 3; break;
|
case 1: $general['strength2'] += 3; break;
|
||||||
case 2: $general['intel2'] += 3; break;
|
case 2: $general['intel2'] += 3; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -383,7 +383,7 @@ function process_29(&$general) {
|
|||||||
$alllog[] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>{$josaYi} <Y>$name</>{$josaRa}는 <C>인재</>를 {$scoutType}하였습니다!";
|
$alllog[] = "<C>●</>{$admin['month']}월:<Y>{$general['name']}</>{$josaYi} <Y>$name</>{$josaRa}는 <C>인재</>를 {$scoutType}하였습니다!";
|
||||||
pushGeneralHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>$name</>{$josaRa}는 <C>인재</>를 {$scoutType}");
|
pushGeneralHistory($general, "<C>●</>{$admin['year']}년 {$admin['month']}월:<Y>$name</>{$josaRa}는 <C>인재</>를 {$scoutType}");
|
||||||
|
|
||||||
$avgGen = $db->queryFirstRow('SELECT max(leader+power+intel) as lpi, avg(dedication) as ded,avg(experience) as exp, avg(dex0+dex10+dex20+dex30) as dex_t, avg(dex40) as dex40 from general where npc < 5 and nation = %i', $general['nation']);
|
$avgGen = $db->queryFirstRow('SELECT max(leadership+power+intel) as stat_sum, avg(dedication) as ded,avg(experience) as exp, avg(dex0+dex10+dex20+dex30) as dex_t, avg(dex40) as dex40 from general where npc < 5 and nation = %i', $general['nation']);
|
||||||
|
|
||||||
$dexTotal = $avgGen['dex_t'];
|
$dexTotal = $avgGen['dex_t'];
|
||||||
|
|
||||||
@@ -392,39 +392,39 @@ function process_29(&$general) {
|
|||||||
$stat_tier3 = GameConst::$defaultStatMin + rand()%6;
|
$stat_tier3 = GameConst::$defaultStatMin + rand()%6;
|
||||||
$stat_tier2 = GameConst::$defaultStatTotal - $stat_tier1 - $stat_tier3;
|
$stat_tier2 = GameConst::$defaultStatTotal - $stat_tier1 - $stat_tier3;
|
||||||
$type = Util::choiceRandomUsingWeight([
|
$type = Util::choiceRandomUsingWeight([
|
||||||
'power0'=>2,
|
'strength0'=>2,
|
||||||
'power1'=>2,
|
'strength1'=>2,
|
||||||
'power2'=>2,
|
'strength2'=>2,
|
||||||
'intel'=>6,
|
'intel'=>6,
|
||||||
'neutral'=>3
|
'neutral'=>3
|
||||||
]);
|
]);
|
||||||
switch($type){
|
switch($type){
|
||||||
case 'power0':
|
case 'strength0':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier2;
|
$power = $stat_tier2;
|
||||||
$intel = $stat_tier3;
|
$intel = $stat_tier3;
|
||||||
$dexVal = [$dexTotal*5/8, $dexTotal/8, $dexTotal/8, $dexTotal/8];
|
$dexVal = [$dexTotal*5/8, $dexTotal/8, $dexTotal/8, $dexTotal/8];
|
||||||
break;
|
break;
|
||||||
case 'power1':
|
case 'strength1':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier2;
|
$power = $stat_tier2;
|
||||||
$intel = $stat_tier3;
|
$intel = $stat_tier3;
|
||||||
$dexVal = [$dexTotal/8, $dexTotal*5/8, $dexTotal/8, $dexTotal/8];
|
$dexVal = [$dexTotal/8, $dexTotal*5/8, $dexTotal/8, $dexTotal/8];
|
||||||
break;
|
break;
|
||||||
case 'power2':
|
case 'strength2':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier2;
|
$power = $stat_tier2;
|
||||||
$intel = $stat_tier3;
|
$intel = $stat_tier3;
|
||||||
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal*5/8, $dexTotal/8];
|
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal*5/8, $dexTotal/8];
|
||||||
break;
|
break;
|
||||||
case 'intel':
|
case 'intel':
|
||||||
$leader = $stat_tier1;
|
$leadership = $stat_tier1;
|
||||||
$power = $stat_tier3;
|
$power = $stat_tier3;
|
||||||
$intel = $stat_tier2;
|
$intel = $stat_tier2;
|
||||||
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal/8, $dexTotal*5/8];
|
$dexVal = [$dexTotal/8, $dexTotal/8, $dexTotal/8, $dexTotal*5/8];
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$leader = $stat_tier3;
|
$leadership = $stat_tier3;
|
||||||
$power = $stat_tier1;
|
$power = $stat_tier1;
|
||||||
$intel = $stat_tier2;
|
$intel = $stat_tier2;
|
||||||
$dexVal = [$dexTotal/4, $dexTotal/4, $dexTotal/4, $dexTotal/4];
|
$dexVal = [$dexTotal/4, $dexTotal/4, $dexTotal/4, $dexTotal/4];
|
||||||
@@ -432,26 +432,26 @@ function process_29(&$general) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 국내 최고능치 기준으로 랜덤성 스케일링
|
// 국내 최고능치 기준으로 랜덤성 스케일링
|
||||||
if($avgGen['lpi'] > 210) {
|
if($avgGen['stat_sum'] > 210) {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$power = Util::round($power * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (60+rand()%31)/100);
|
||||||
} elseif($avgGen['lpi'] > 180) {
|
} elseif($avgGen['stat_sum'] > 180) {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$power = Util::round($power * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (75+rand()%21)/100);
|
||||||
} else {
|
} else {
|
||||||
$leader = Util::round($leader * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$leadership = Util::round($leadership * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
$power = Util::round($power * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$power = Util::round($power * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
$intel = Util::round($intel * $avgGen['lpi'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
$intel = Util::round($intel * $avgGen['stat_sum'] / GameConst::$defaultStatTotal * (90+rand()%11)/100);
|
||||||
}
|
}
|
||||||
$over1 = 0;
|
$over1 = 0;
|
||||||
$over2 = 0;
|
$over2 = 0;
|
||||||
$over3 = 0;
|
$over3 = 0;
|
||||||
// 너무 높은 능치는 다른 능치로 분산
|
// 너무 높은 능치는 다른 능치로 분산
|
||||||
if($leader > 90) {
|
if($leadership > 90) {
|
||||||
$over1 = rand() % ($leader - 90) + 5;
|
$over1 = rand() % ($leadership - 90) + 5;
|
||||||
$leader -= $over1;
|
$leadership -= $over1;
|
||||||
}
|
}
|
||||||
if($power > 90) {
|
if($power > 90) {
|
||||||
$over2 = rand() % ($power - 90) + 5;
|
$over2 = rand() % ($power - 90) + 5;
|
||||||
@@ -468,8 +468,8 @@ function process_29(&$general) {
|
|||||||
$power = $power + $over1 + $over2 + $over3;
|
$power = $power + $over1 + $over2 + $over3;
|
||||||
}
|
}
|
||||||
// 너무 높은 능치는 제한
|
// 너무 높은 능치는 제한
|
||||||
if($leader > 95) {
|
if($leadership > 95) {
|
||||||
$leader = 95;
|
$leadership = 95;
|
||||||
}
|
}
|
||||||
if($power > 95) {
|
if($power > 95) {
|
||||||
$power = 95;
|
$power = 95;
|
||||||
@@ -499,14 +499,14 @@ function process_29(&$general) {
|
|||||||
@MYDB_query("
|
@MYDB_query("
|
||||||
insert into general (
|
insert into general (
|
||||||
npcid,npc,npc_org,affinity,name,picture,nation,
|
npcid,npc,npc_org,affinity,name,picture,nation,
|
||||||
city,leader,power,intel,experience,dedication,
|
city,leadership,power,intel,experience,dedication,
|
||||||
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
level,gold,rice,crew,crewtype,train,atmos,tnmt,
|
||||||
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
weap,book,horse,turntime,killturn,age,belong,personal,special,specage,special2,specage2,npcmsg,
|
||||||
makelimit,bornyear,deadyear,
|
makelimit,bornyear,deadyear,
|
||||||
dex0, dex10, dex20, dex30, dex40
|
dex0, dex10, dex20, dex30, dex40
|
||||||
) values (
|
) values (
|
||||||
'$npccount','$npc','$npc','$affinity','$name','$picture','$scoutNation',
|
'$npccount','$npc','$npc','$affinity','$name','$picture','$scoutNation',
|
||||||
'{$general['city']}','$leader','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
'{$general['city']}','$leadership','$power','$intel','{$avgGen['exp']}','{$avgGen['ded']}',
|
||||||
'$scoutLevel','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
|
'$scoutLevel','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
|
||||||
'0','0','0','$turntime','$killturn','$age','1','$personal','0','$specage','0','$specage2','',
|
'0','0','0','$turntime','$killturn','$age','1','$personal','0','$specage','0','$specage2','',
|
||||||
'0','$bornyear','$deadyear',
|
'0','$bornyear','$deadyear',
|
||||||
@@ -534,7 +534,7 @@ function process_29(&$general) {
|
|||||||
$ded = CharDedication($ded, $general['personal']);
|
$ded = CharDedication($ded, $general['personal']);
|
||||||
|
|
||||||
// 자금 감소 // 경험치 상승 // 공헌도, 명성 상승
|
// 자금 감소 // 경험치 상승 // 공헌도, 명성 상승
|
||||||
$query = "update general set resturn='SUCCESS',term='0',gold='$gold',leader2='{$general['leader2']}',power2='{$general['power2']}',intel2='{$general['intel2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
$query = "update general set resturn='SUCCESS',term='0',gold='$gold',leadership2='{$general['leadership2']}',strength2='{$general['strength2']}',intel2='{$general['intel2']}',dedication=dedication+'$ded',experience=experience+'$exp' where no='{$general['no']}'";
|
||||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|
||||||
$log = checkAbility($general, $log);
|
$log = checkAbility($general, $log);
|
||||||
|
|||||||
@@ -5,11 +5,11 @@ namespace sammo;
|
|||||||
function calcSabotageAttackScore(string $statType, array $general, array $nation):array{
|
function calcSabotageAttackScore(string $statType, array $general, array $nation):array{
|
||||||
setLeadershipBonus($general, $nation['level']);
|
setLeadershipBonus($general, $nation['level']);
|
||||||
|
|
||||||
if($statType === 'leader'){
|
if($statType === 'leadership'){
|
||||||
$genScore = getGeneralLeadership($general, true, true, true);
|
$genScore = getGeneralLeadership($general, true, true, true);
|
||||||
}
|
}
|
||||||
else if($statType === 'power'){
|
else if($statType === 'strength'){
|
||||||
$genScore = getGeneralPower($general, true, true, true);
|
$genScore = getGeneralStrength($general, true, true, true);
|
||||||
}
|
}
|
||||||
else if($statType === 'intel'){
|
else if($statType === 'intel'){
|
||||||
$genScore = getGeneralIntel($general, true, true, true);
|
$genScore = getGeneralIntel($general, true, true, true);
|
||||||
@@ -70,10 +70,10 @@ function calcSabotageDefendScore(string $statType, array $generalList, array $ci
|
|||||||
foreach ($generalList as $general) {
|
foreach ($generalList as $general) {
|
||||||
setLeadershipBonus($general, $nation['level']);
|
setLeadershipBonus($general, $nation['level']);
|
||||||
|
|
||||||
if ($statType === 'leader') {
|
if ($statType === 'leadership') {
|
||||||
$maxGenScore = max($maxGenScore, getGeneralLeadership($general, true, true, true));
|
$maxGenScore = max($maxGenScore, getGeneralLeadership($general, true, true, true));
|
||||||
} elseif ($statType === 'power') {
|
} elseif ($statType === 'strength') {
|
||||||
$maxGenScore = max($maxGenScore, getGeneralPower($general, true, true, true));
|
$maxGenScore = max($maxGenScore, getGeneralStrength($general, true, true, true));
|
||||||
} elseif ($statType === 'intel') {
|
} elseif ($statType === 'intel') {
|
||||||
$maxGenScore = max($maxGenScore, getGeneralIntel($general, true, true, true));
|
$maxGenScore = max($maxGenScore, getGeneralIntel($general, true, true, true));
|
||||||
} else {
|
} else {
|
||||||
@@ -161,7 +161,7 @@ function process_32(&$general) {
|
|||||||
$srcNation = getNationStaticInfo($srcNationID);
|
$srcNation = getNationStaticInfo($srcNationID);
|
||||||
$destNation = getNationStaticInfo($destNationID);
|
$destNation = getNationStaticInfo($destNationID);
|
||||||
|
|
||||||
$generalList = $db->query('SELECT `no`,leader,horse,power,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
$generalList = $db->query('SELECT `no`,leadership,horse,strength,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
||||||
|
|
||||||
[
|
[
|
||||||
$srcGenScore,
|
$srcGenScore,
|
||||||
@@ -265,7 +265,7 @@ function process_33(&$general) {
|
|||||||
|
|
||||||
$date = substr($general['turntime'],11,5);
|
$date = substr($general['turntime'],11,5);
|
||||||
$sabotageName = '탈취';
|
$sabotageName = '탈취';
|
||||||
$statType = 'power';
|
$statType = 'strength';
|
||||||
|
|
||||||
[$year, $month, $develCost] = $gameStor->getValuesAsArray(['year','month','develcost']);
|
[$year, $month, $develCost] = $gameStor->getValuesAsArray(['year','month','develcost']);
|
||||||
$logger = new ActionLogger($general['no'], $general['nation'], $year, $month);
|
$logger = new ActionLogger($general['no'], $general['nation'], $year, $month);
|
||||||
@@ -298,7 +298,7 @@ function process_33(&$general) {
|
|||||||
$srcNation = getNationStaticInfo($srcNationID);
|
$srcNation = getNationStaticInfo($srcNationID);
|
||||||
$destNation = getNationStaticInfo($destNationID);
|
$destNation = getNationStaticInfo($destNationID);
|
||||||
|
|
||||||
$generalList = $db->query('SELECT `no`,leader,horse,power,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
$generalList = $db->query('SELECT `no`,leadership,horse,strength,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
||||||
|
|
||||||
[
|
[
|
||||||
$srcGenScore,
|
$srcGenScore,
|
||||||
@@ -436,7 +436,7 @@ function process_34(&$general) {
|
|||||||
|
|
||||||
$date = substr($general['turntime'],11,5);
|
$date = substr($general['turntime'],11,5);
|
||||||
$sabotageName = '파괴';
|
$sabotageName = '파괴';
|
||||||
$statType = 'power';
|
$statType = 'strength';
|
||||||
|
|
||||||
[$year, $month, $develCost] = $gameStor->getValuesAsArray(['year','month','develcost']);
|
[$year, $month, $develCost] = $gameStor->getValuesAsArray(['year','month','develcost']);
|
||||||
$logger = new ActionLogger($general['no'], $general['nation'], $year, $month);
|
$logger = new ActionLogger($general['no'], $general['nation'], $year, $month);
|
||||||
@@ -467,7 +467,7 @@ function process_34(&$general) {
|
|||||||
$srcNation = getNationStaticInfo($srcNationID);
|
$srcNation = getNationStaticInfo($srcNationID);
|
||||||
$destNation = getNationStaticInfo($destNationID);
|
$destNation = getNationStaticInfo($destNationID);
|
||||||
|
|
||||||
$generalList = $db->query('SELECT `no`,leader,horse,power,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
$generalList = $db->query('SELECT `no`,leadership,horse,strength,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
||||||
|
|
||||||
[
|
[
|
||||||
$srcGenScore,
|
$srcGenScore,
|
||||||
@@ -574,7 +574,7 @@ function process_35(&$general) {
|
|||||||
|
|
||||||
$date = substr($general['turntime'],11,5);
|
$date = substr($general['turntime'],11,5);
|
||||||
$sabotageName = '선동';
|
$sabotageName = '선동';
|
||||||
$statType = 'leader';
|
$statType = 'leadership';
|
||||||
|
|
||||||
[$year, $month, $develCost] = $gameStor->getValuesAsArray(['year','month','develcost']);
|
[$year, $month, $develCost] = $gameStor->getValuesAsArray(['year','month','develcost']);
|
||||||
$logger = new ActionLogger($general['no'], $general['nation'], $year, $month);
|
$logger = new ActionLogger($general['no'], $general['nation'], $year, $month);
|
||||||
@@ -607,7 +607,7 @@ function process_35(&$general) {
|
|||||||
$srcNation = getNationStaticInfo($srcNationID);
|
$srcNation = getNationStaticInfo($srcNationID);
|
||||||
$destNation = getNationStaticInfo($destNationID);
|
$destNation = getNationStaticInfo($destNationID);
|
||||||
|
|
||||||
$generalList = $db->query('SELECT `no`,leader,horse,power,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
$generalList = $db->query('SELECT `no`,leadership,horse,strength,weap,intel,book,injury,level,special,special2 FROM general WHERE city=%i and nation=%i', $destCity['city'], $destCity['nation']);
|
||||||
[
|
[
|
||||||
$srcGenScore,
|
$srcGenScore,
|
||||||
$srcSpecialScore,
|
$srcSpecialScore,
|
||||||
|
|||||||
+22
-22
@@ -309,8 +309,8 @@ function fillLowGenAll() {
|
|||||||
'no'=>0,
|
'no'=>0,
|
||||||
'npc'=>2,
|
'npc'=>2,
|
||||||
'name'=>'무명장수',
|
'name'=>'무명장수',
|
||||||
'leader'=>10,
|
'leadership'=>10,
|
||||||
'power'=>10,
|
'strength'=>10,
|
||||||
'intel'=>10,
|
'intel'=>10,
|
||||||
'explevel'=>10
|
'explevel'=>10
|
||||||
];
|
];
|
||||||
@@ -335,7 +335,7 @@ function fillLowGenAll() {
|
|||||||
|
|
||||||
//자동신청하고, 돈 있고, 아직 참가 안한 장수
|
//자동신청하고, 돈 있고, 아직 참가 안한 장수
|
||||||
$freeJoiners = $db->query(
|
$freeJoiners = $db->query(
|
||||||
'SELECT no,npc,name,leader,power,intel,explevel,horse,weap,book from general where tnmt=1 and tournament=0 order by rand() limit %d',
|
'SELECT no,npc,name,leadership,strength,intel,explevel,horse,weap,book from general where tnmt=1 and tournament=0 order by rand() limit %d',
|
||||||
$toBeFilledCnt
|
$toBeFilledCnt
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -349,9 +349,9 @@ function fillLowGenAll() {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['leader'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['power'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['intel'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['explevel'],
|
'lvl'=>$general['explevel'],
|
||||||
'grp'=>$grpIdx,
|
'grp'=>$grpIdx,
|
||||||
'grp_no'=>$grpCnt,
|
'grp_no'=>$grpCnt,
|
||||||
@@ -486,9 +486,9 @@ function selection($tnmt_type, $tnmt, $phase) {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['ldr'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['pwr'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['itl'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['lvl'],
|
'lvl'=>$general['lvl'],
|
||||||
'grp'=>$grp,
|
'grp'=>$grp,
|
||||||
'grp_no'=>$grp_no,
|
'grp_no'=>$grp_no,
|
||||||
@@ -573,9 +573,9 @@ function final16set() {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['ldr'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['pwr'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['itl'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['lvl'],
|
'lvl'=>$general['lvl'],
|
||||||
'grp'=>$newGrp,
|
'grp'=>$newGrp,
|
||||||
'grp_no'=>$newGrp_no,
|
'grp_no'=>$newGrp_no,
|
||||||
@@ -617,9 +617,9 @@ function finalFight($tnmt_type, $tnmt, $phase, $type) {
|
|||||||
'no'=>$general['no'],
|
'no'=>$general['no'],
|
||||||
'npc'=>$general['npc'],
|
'npc'=>$general['npc'],
|
||||||
'name'=>$general['name'],
|
'name'=>$general['name'],
|
||||||
'ldr'=>$general['ldr'],
|
'leadership'=>$general['leadership'],
|
||||||
'pwr'=>$general['pwr'],
|
'strength'=>$general['strength'],
|
||||||
'itl'=>$general['itl'],
|
'intel'=>$general['intel'],
|
||||||
'lvl'=>$general['lvl'],
|
'lvl'=>$general['lvl'],
|
||||||
'grp'=>$newGrp,
|
'grp'=>$newGrp,
|
||||||
'grp_no'=>$newGrp_no,
|
'grp_no'=>$newGrp_no,
|
||||||
@@ -649,7 +649,7 @@ function setGift($tnmt_type, $tnmt, $phase) {
|
|||||||
switch($tnmt_type) {
|
switch($tnmt_type) {
|
||||||
case 0: $tp = "전력전"; $tp2 = "tt"; break;
|
case 0: $tp = "전력전"; $tp2 = "tt"; break;
|
||||||
case 1: $tp = "통솔전"; $tp2 = "tl"; break;
|
case 1: $tp = "통솔전"; $tp2 = "tl"; break;
|
||||||
case 2: $tp = "일기토"; $tp2 = "tp"; break;
|
case 2: $tp = "일기토"; $tp2 = "ts"; break;
|
||||||
case 3: $tp = "설전"; $tp2 = "ti"; break;
|
case 3: $tp = "설전"; $tp2 = "ti"; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -830,11 +830,11 @@ function fight($tnmt_type, $tnmt, $phs, $group, $g1, $g2, $type) {
|
|||||||
|
|
||||||
eraseTnmtFightLog($group);
|
eraseTnmtFightLog($group);
|
||||||
|
|
||||||
$query = "select *,(ldr+pwr+itl)*7/15 as tot,h,w,b from tournament where grp='$group' and grp_no='$g1'";
|
$query = "select *,(leadership+strength+intel)*7/15 as total,h,w,b from tournament where grp='$group' and grp_no='$g1'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$gen1 = MYDB_fetch_array($result);
|
$gen1 = MYDB_fetch_array($result);
|
||||||
|
|
||||||
$query = "select *,(ldr+pwr+itl)*7/15 as tot,h,w,b from tournament where grp='$group' and grp_no='$g2'";
|
$query = "select *,(leadership+strength+intel)*7/15 as total,h,w,b from tournament where grp='$group' and grp_no='$g2'";
|
||||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
$gen2 = MYDB_fetch_array($result);
|
$gen2 = MYDB_fetch_array($result);
|
||||||
|
|
||||||
@@ -842,10 +842,10 @@ function fight($tnmt_type, $tnmt, $phs, $group, $g1, $g2, $type) {
|
|||||||
else { $turn = 100; }
|
else { $turn = 100; }
|
||||||
|
|
||||||
|
|
||||||
if($tnmt_type == 1) { $tp = "ldr"; $tp2 = "tl"; }
|
if($tnmt_type == 1) { $tp = "leadership"; $tp2 = "tl"; }
|
||||||
elseif($tnmt_type == 2) { $tp = "pwr"; $tp2 = "tp"; }
|
elseif($tnmt_type == 2) { $tp = "strength"; $tp2 = "ts"; }
|
||||||
elseif($tnmt_type == 3) { $tp = "itl"; $tp2 = "ti"; }
|
elseif($tnmt_type == 3) { $tp = "intel"; $tp2 = "ti"; }
|
||||||
else /*$tnmt_type == 0*/{ $tp = "tot"; $tp2 = "tt"; }
|
else /*$tnmt_type == 0*/{ $tp = "total"; $tp2 = "tt"; }
|
||||||
|
|
||||||
$e1 = $energy1 = Util::round($gen1[$tp] * getLog($gen1['lvl'], $gen2['lvl']) * 10);
|
$e1 = $energy1 = Util::round($gen1[$tp] * getLog($gen1['lvl'], $gen2['lvl']) * 10);
|
||||||
$e2 = $energy2 = Util::round($gen2[$tp] * getLog($gen1['lvl'], $gen2['lvl']) * 10);
|
$e2 = $energy2 = Util::round($gen2[$tp] * getLog($gen1['lvl'], $gen2['lvl']) * 10);
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ else{
|
|||||||
|
|
||||||
$session->setReadOnly();
|
$session->setReadOnly();
|
||||||
|
|
||||||
$rawGeneralList = $db->queryAllLists('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,name2,injury,leader,power,intel,experience,dedication,level,killturn,connect from general');
|
$rawGeneralList = $db->queryAllLists('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,name2,injury,leadership,strength,intel,experience,dedication,level,killturn,connect from general');
|
||||||
|
|
||||||
$ownerNameList = [];
|
$ownerNameList = [];
|
||||||
if($gameStor->isunited){
|
if($gameStor->isunited){
|
||||||
@@ -53,7 +53,7 @@ if($gameStor->isunited){
|
|||||||
|
|
||||||
$generalList = [];
|
$generalList = [];
|
||||||
foreach($rawGeneralList as $rawGeneral){
|
foreach($rawGeneralList as $rawGeneral){
|
||||||
[$owner,$no,$picture,$imgsvr,$npc,$age,$nation,$special,$special2,$personal,$name,$name2,$injury,$leader,$power,$intel,$experience,$dedication,$level,$killturn,$connect] = $rawGeneral;
|
[$owner,$no,$picture,$imgsvr,$npc,$age,$nation,$special,$special2,$personal,$name,$name2,$injury,$leadership,$strength,$intel,$experience,$dedication,$level,$killturn,$connect] = $rawGeneral;
|
||||||
|
|
||||||
if(key_exists($owner, $ownerNameList)){
|
if(key_exists($owner, $ownerNameList)){
|
||||||
$name2 = $ownerNameList[$owner];
|
$name2 = $ownerNameList[$owner];
|
||||||
@@ -75,9 +75,9 @@ foreach($rawGeneralList as $rawGeneral){
|
|||||||
$name,
|
$name,
|
||||||
$npc==1?$name2:null,
|
$npc==1?$name2:null,
|
||||||
$injury,
|
$injury,
|
||||||
$leader,
|
$leadership,
|
||||||
$lbonus,
|
$lbonus,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
getExpLevel($experience),
|
getExpLevel($experience),
|
||||||
getHonor($experience),
|
getHonor($experience),
|
||||||
|
|||||||
@@ -90,13 +90,13 @@ if($token && !$refresh){
|
|||||||
$candidates = [];
|
$candidates = [];
|
||||||
|
|
||||||
$weight = [];
|
$weight = [];
|
||||||
foreach($db->query('SELECT `no`, `name`, leader, power, intel, nation, imgsvr, picture, personal, special, special2 FROM general WHERE npc=2') as $general){
|
foreach($db->query('SELECT `no`, `name`, leadership, strength, intel, nation, imgsvr, picture, personal, special, special2 FROM general WHERE npc=2') as $general){
|
||||||
$general['special'] = (getGeneralSpecialDomesticClass($general['special']))::$name;
|
$general['special'] = (getGeneralSpecialDomesticClass($general['special']))::$name;
|
||||||
$general['special2'] = (getGeneralSpecialWarClass($general['special2']))::$name;
|
$general['special2'] = (getGeneralSpecialWarClass($general['special2']))::$name;
|
||||||
$general['personal'] = (getPersonalityClass($general['personal']));
|
$general['personal'] = (getPersonalityClass($general['personal']));
|
||||||
$general['nation'] = getNationStaticInfo($general['nation'])['name'];
|
$general['nation'] = getNationStaticInfo($general['nation'])['name'];
|
||||||
$candidates[$general['no']] = $general + ['keepCnt'=>KEEP_CNT];
|
$candidates[$general['no']] = $general + ['keepCnt'=>KEEP_CNT];
|
||||||
$allStat = $general['leader'] + $general['power'] + $general['intel'];
|
$allStat = $general['leadership'] + $general['strength'] + $general['intel'];
|
||||||
$weight[$general['no']] = pow($allStat, 1.5);
|
$weight[$general['no']] = pow($allStat, 1.5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -82,13 +82,13 @@ $rawDefenderNation = $query['defenderNation'];
|
|||||||
$generalCheck = [
|
$generalCheck = [
|
||||||
'required'=>[
|
'required'=>[
|
||||||
'no', 'name', 'nation', 'turntime', 'personal', 'special2', 'crew', 'crewtype', 'atmos', 'train',
|
'no', 'name', 'nation', 'turntime', 'personal', 'special2', 'crew', 'crewtype', 'atmos', 'train',
|
||||||
'intel', 'intel2', 'book', 'power', 'power2', 'weap', 'injury', 'leader', 'leader2', 'horse', 'item',
|
'intel', 'intel2', 'book', 'strength', 'strength2', 'weap', 'injury', 'leadership', 'leadership2', 'horse', 'item',
|
||||||
'explevel', 'experience', 'dedication', 'level', 'gold', 'rice', 'dex0', 'dex10', 'dex20', 'dex30', 'dex40',
|
'explevel', 'experience', 'dedication', 'level', 'gold', 'rice', 'dex0', 'dex10', 'dex20', 'dex30', 'dex40',
|
||||||
'warnum', 'killnum', 'deathnum', 'killcrew', 'deathcrew', 'recwar'
|
'warnum', 'killnum', 'deathnum', 'killcrew', 'deathcrew', 'recwar'
|
||||||
],
|
],
|
||||||
'integer'=>[
|
'integer'=>[
|
||||||
'no', 'nation', 'personal', 'special2', 'crew', 'crewtype', 'atmos', 'train',
|
'no', 'nation', 'personal', 'special2', 'crew', 'crewtype', 'atmos', 'train',
|
||||||
'intel', 'intel2', 'book', 'power', 'power2', 'weap', 'injury', 'leader', 'leader2', 'horse', 'item',
|
'intel', 'intel2', 'book', 'strength', 'strength2', 'weap', 'injury', 'leadership', 'leadership2', 'horse', 'item',
|
||||||
'explevel', 'experience', 'dedication', 'level', 'gold', 'rice', 'dex0', 'dex10', 'dex20', 'dex30', 'dex40',
|
'explevel', 'experience', 'dedication', 'level', 'gold', 'rice', 'dex0', 'dex10', 'dex20', 'dex30', 'dex40',
|
||||||
'warnum', 'killnum', 'deathnum', 'killcrew', 'deathcrew'
|
'warnum', 'killnum', 'deathnum', 'killcrew', 'deathcrew'
|
||||||
],
|
],
|
||||||
@@ -97,8 +97,8 @@ $generalCheck = [
|
|||||||
['nation', 1],
|
['nation', 1],
|
||||||
['crew', 0],
|
['crew', 0],
|
||||||
['intel', 0],
|
['intel', 0],
|
||||||
['power', 0],
|
['strength', 0],
|
||||||
['leader', 0],
|
['leadership', 0],
|
||||||
['experience', 0],
|
['experience', 0],
|
||||||
['gold', 0],
|
['gold', 0],
|
||||||
['rice', 0],
|
['rice', 0],
|
||||||
|
|||||||
+2
-2
@@ -127,11 +127,11 @@ if ($admin['show_img_level'] >= 1 && $member['grade'] >= 1 && $member['picture']
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=498 align=right id=bg1>통솔</td>
|
<td width=498 align=right id=bg1>통솔</td>
|
||||||
<td colspan=2><input type="number" name="leader" id="leader" value="50"></td>
|
<td colspan=2><input type="number" name="leadership" id="leadership" value="50"></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=498 align=right id=bg1>무력</td>
|
<td width=498 align=right id=bg1>무력</td>
|
||||||
<td colspan=2><input type="number" name="power" id="power" value="50"></td>
|
<td colspan=2><input type="number" name="strength" id="strength" value="50"></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width=498 align=right id=bg1>지력</td>
|
<td width=498 align=right id=bg1>지력</td>
|
||||||
|
|||||||
+24
-24
@@ -8,25 +8,25 @@ $v = new Validator($_POST + $_GET);
|
|||||||
$v
|
$v
|
||||||
->rule('required', [
|
->rule('required', [
|
||||||
'name',
|
'name',
|
||||||
'leader',
|
'leadership',
|
||||||
'power',
|
'strength',
|
||||||
'intel'
|
'intel'
|
||||||
])
|
])
|
||||||
->rule('integer', [
|
->rule('integer', [
|
||||||
'leader',
|
'leadership',
|
||||||
'power',
|
'strength',
|
||||||
'intel',
|
'intel',
|
||||||
'character',
|
'character',
|
||||||
])
|
])
|
||||||
->rule('stringWidthBetween', 'name', 1, 18)
|
->rule('stringWidthBetween', 'name', 1, 18)
|
||||||
->rule('min', [
|
->rule('min', [
|
||||||
'leader',
|
'leadership',
|
||||||
'power',
|
'strength',
|
||||||
'intel'
|
'intel'
|
||||||
], GameConst::$defaultStatMin)
|
], GameConst::$defaultStatMin)
|
||||||
->rule('max', [
|
->rule('max', [
|
||||||
'leader',
|
'leadership',
|
||||||
'power',
|
'strength',
|
||||||
'intel'
|
'intel'
|
||||||
], GameConst::$defaultStatMax)
|
], GameConst::$defaultStatMax)
|
||||||
->rule('min', 'character', 0)
|
->rule('min', 'character', 0)
|
||||||
@@ -50,8 +50,8 @@ $name = StringUtil::textStrip($name);
|
|||||||
$pic = (int)Util::getReq('pic', 'bool', 0);
|
$pic = (int)Util::getReq('pic', 'bool', 0);
|
||||||
$character = Util::getReq('character', 'int', 0);
|
$character = Util::getReq('character', 'int', 0);
|
||||||
|
|
||||||
$leader = Util::getReq('leader', 'int', 50);
|
$leadership = Util::getReq('leadership', 'int', 50);
|
||||||
$power = Util::getReq('power', 'int', 50);
|
$strength = Util::getReq('strength', 'int', 50);
|
||||||
$intel = Util::getReq('intel', 'int', 50);
|
$intel = Util::getReq('intel', 'int', 50);
|
||||||
|
|
||||||
$join = Util::getReq('join'); //쓸모 없음
|
$join = Util::getReq('join'); //쓸모 없음
|
||||||
@@ -110,7 +110,7 @@ if (mb_strwidth($name) > 18) {
|
|||||||
</script>");
|
</script>");
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
if ($leader + $power + $intel > GameConst::$defaultStatTotal) {
|
if ($leadership + $strength + $intel > GameConst::$defaultStatTotal) {
|
||||||
echo("<script>
|
echo("<script>
|
||||||
window.alert('능력치가 ".GameConst::$defaultStatTotal."을 넘어섰습니다. 다시 가입해주세요!')
|
window.alert('능력치가 ".GameConst::$defaultStatTotal."을 넘어섰습니다. 다시 가입해주세요!')
|
||||||
history.go(-1)
|
history.go(-1)
|
||||||
@@ -132,16 +132,16 @@ if (!$city) {
|
|||||||
$city = $db->queryFirstField("select city from city where level>=5 and level<=6 order by rand() limit 0,1");
|
$city = $db->queryFirstField("select city from city where level>=5 and level<=6 order by rand() limit 0,1");
|
||||||
}
|
}
|
||||||
|
|
||||||
$pleader = 0;
|
$pleadershipship = 0;
|
||||||
$ppower = 0;
|
$pstrength = 0;
|
||||||
$pintel = 0;
|
$pintel = 0;
|
||||||
for ($statBonusCnt = 3 + mt_rand(0, 2); $statBonusCnt > 0; $statBonusCnt--) {
|
for ($statBonusCnt = 3 + mt_rand(0, 2); $statBonusCnt > 0; $statBonusCnt--) {
|
||||||
switch (Util::choiceRandomUsingWeight([$leader, $power, $intel])) {
|
switch (Util::choiceRandomUsingWeight([$leadership, $strength, $intel])) {
|
||||||
case 0:
|
case 0:
|
||||||
$pleader++;
|
$pleadership++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
$ppower++;
|
$pstrength++;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
$pintel++;
|
$pintel++;
|
||||||
@@ -149,20 +149,20 @@ for ($statBonusCnt = 3 + mt_rand(0, 2); $statBonusCnt > 0; $statBonusCnt--) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$leader = $leader + $pleader;
|
$leadership = $leadership + $pleadership;
|
||||||
$power = $power + $ppower;
|
$strength = $strength + $pstrength;
|
||||||
$intel = $intel + $pintel;
|
$intel = $intel + $pintel;
|
||||||
|
|
||||||
$admin = $gameStor->getValues(['scenario', 'turnterm', 'turntime', 'show_img_level', 'startyear', 'year']);
|
$admin = $gameStor->getValues(['scenario', 'turnterm', 'turntime', 'show_img_level', 'startyear', 'year']);
|
||||||
$relYear = Util::valueFit($admin['year'] - $admin['startyear'], 0);
|
$relYear = Util::valueFit($admin['year'] - $admin['startyear'], 0);
|
||||||
|
|
||||||
$age = 20 + ($pleader + $ppower + $pintel) * 2 - (mt_rand(0, 1));
|
$age = 20 + ($pleadership + $pstrength + $pintel) * 2 - (mt_rand(0, 1));
|
||||||
// 아직 남았고 천재등록상태이면 특기 부여
|
// 아직 남았고 천재등록상태이면 특기 부여
|
||||||
if ($genius) {
|
if ($genius) {
|
||||||
$specage2 = $age;
|
$specage2 = $age;
|
||||||
$special2 = SpecialityConst::pickSpecialWar([
|
$special2 = SpecialityConst::pickSpecialWar([
|
||||||
'leader'=>$leader,
|
'leadership'=>$leadership,
|
||||||
'power'=>$power,
|
'strength'=>$strength,
|
||||||
'intel'=>$intel,
|
'intel'=>$intel,
|
||||||
'dex0'=>0,
|
'dex0'=>0,
|
||||||
'dex10'=>0,
|
'dex10'=>0,
|
||||||
@@ -230,8 +230,8 @@ $db->insert('general', [
|
|||||||
'city' => $city,
|
'city' => $city,
|
||||||
'troop' => 0,
|
'troop' => 0,
|
||||||
'affinity' => $affinity,
|
'affinity' => $affinity,
|
||||||
'leader' => $leader,
|
'leadership' => $leadership,
|
||||||
'power' => $power,
|
'strength' => $strength,
|
||||||
'intel' => $intel,
|
'intel' => $intel,
|
||||||
'experience' => $experience,
|
'experience' => $experience,
|
||||||
'dedication' => 0,
|
'dedication' => 0,
|
||||||
@@ -288,7 +288,7 @@ $mylog[] = "<C>●</>삼국지 모의전투 PHP의 세계에 오신 것을 환
|
|||||||
$mylog[] = "<C>●</>처음 하시는 경우에는 <D>도움말</>을 참고하시고,";
|
$mylog[] = "<C>●</>처음 하시는 경우에는 <D>도움말</>을 참고하시고,";
|
||||||
$mylog[] = "<C>●</>문의사항이 있으시면 게시판에 글을 남겨주시면 되겠네요~";
|
$mylog[] = "<C>●</>문의사항이 있으시면 게시판에 글을 남겨주시면 되겠네요~";
|
||||||
$mylog[] = "<C>●</>부디 즐거운 삼모전 되시길 바랍니다 ^^";
|
$mylog[] = "<C>●</>부디 즐거운 삼모전 되시길 바랍니다 ^^";
|
||||||
$mylog[] = "<C>●</>통솔 <C>$pleader</> 무력 <C>$ppower</> 지력 <C>$pintel</> 의 보너스를 받으셨습니다.";
|
$mylog[] = "<C>●</>통솔 <C>$pleadership</> 무력 <C>$pstrength</> 지력 <C>$pintel</> 의 보너스를 받으셨습니다.";
|
||||||
$mylog[] = "<C>●</>연령은 <C>$age</>세로 시작합니다.";
|
$mylog[] = "<C>●</>연령은 <C>$age</>세로 시작합니다.";
|
||||||
if ($genius) {
|
if ($genius) {
|
||||||
$mylog[] = "<C>●</>축하합니다! 천재로 태어나 처음부터 <C>".getGeneralSpecialWarName($special2)."</> 특기를 가지게 됩니다!";
|
$mylog[] = "<C>●</>축하합니다! 천재로 태어나 처음부터 <C>".getGeneralSpecialWarName($special2)."</> 특기를 가지게 됩니다!";
|
||||||
|
|||||||
@@ -55,11 +55,11 @@ $token_num = MYDB_num_rows($result);
|
|||||||
|
|
||||||
if($token_num == 1) {
|
if($token_num == 1) {
|
||||||
$token = MYDB_fetch_array($result);
|
$token = MYDB_fetch_array($result);
|
||||||
$leader = $token['leader'];
|
$leadership = $token['leadership'];
|
||||||
$power = $token['power'];
|
$power = $token['power'];
|
||||||
$intel = $token['intel'];
|
$intel = $token['intel'];
|
||||||
} else {
|
} else {
|
||||||
$leader = 0;
|
$leadership = 0;
|
||||||
$power = 0;
|
$power = 0;
|
||||||
$intel = 0;
|
$intel = 0;
|
||||||
}
|
}
|
||||||
@@ -112,13 +112,13 @@ if($id_num) {
|
|||||||
history.go(-1)
|
history.go(-1)
|
||||||
</script>");
|
</script>");
|
||||||
exit;
|
exit;
|
||||||
} elseif($leader + $power + $intel > 150) {
|
} elseif($leadership + $power + $intel > 150) {
|
||||||
echo("<script>
|
echo("<script>
|
||||||
window.alert('능력치가 150을 넘어섰습니다. 다시 가입해주세요!')
|
window.alert('능력치가 150을 넘어섰습니다. 다시 가입해주세요!')
|
||||||
history.go(-1)
|
history.go(-1)
|
||||||
</script>");
|
</script>");
|
||||||
exit;
|
exit;
|
||||||
} elseif($leader > 75 || $leader < 10 || $power > 75 || $power < 10 || $intel > 75 || $intel < 10) {
|
} elseif($leadership > 75 || $leadership < 10 || $power > 75 || $power < 10 || $intel > 75 || $intel < 10) {
|
||||||
echo("<script>
|
echo("<script>
|
||||||
window.alert('능력치가 비정상적입니다. 다시 가입해주세요!')
|
window.alert('능력치가 비정상적입니다. 다시 가입해주세요!')
|
||||||
history.go(-1)
|
history.go(-1)
|
||||||
@@ -168,7 +168,7 @@ if($id_num) {
|
|||||||
$ppower = floor($ppower / $rate * $total + 0.5);
|
$ppower = floor($ppower / $rate * $total + 0.5);
|
||||||
$pintel = floor($pintel / $rate * $total + 0.5);
|
$pintel = floor($pintel / $rate * $total + 0.5);
|
||||||
|
|
||||||
$leader = $leader + $pleader;
|
$leadership = $leadership + $pleader;
|
||||||
$power = $power + $ppower;
|
$power = $power + $ppower;
|
||||||
$intel = $intel + $pintel;
|
$intel = $intel + $pintel;
|
||||||
|
|
||||||
@@ -176,7 +176,7 @@ if($id_num) {
|
|||||||
// 아직 남았고 천재등록상태이면 특기 부여
|
// 아직 남았고 천재등록상태이면 특기 부여
|
||||||
if($genius == 1) {
|
if($genius == 1) {
|
||||||
$specage2 = $age;
|
$specage2 = $age;
|
||||||
$special2 = getSpecial2($connect, $leader, $power, $intel);
|
$special2 = getSpecial2($connect, $leadership, $power, $intel);
|
||||||
} else {
|
} else {
|
||||||
$specage2 = round((80 - $age)/3) + $age;
|
$specage2 = round((80 - $age)/3) + $age;
|
||||||
$special2 = 0;
|
$special2 = 0;
|
||||||
@@ -217,11 +217,11 @@ if($id_num) {
|
|||||||
$query = "
|
$query = "
|
||||||
insert into general (
|
insert into general (
|
||||||
user_id, password, name, picture, imgsvr, nation, city, troop, npcmatch,
|
user_id, password, name, picture, imgsvr, nation, city, troop, npcmatch,
|
||||||
leader, power, intel, experience, dedication, gold, rice, crew, train, atmos,
|
leadership, power, intel, experience, dedication, gold, rice, crew, train, atmos,
|
||||||
userlevel, level, turntime, killturn, lastconnect, makelimit, age, startage, personal, specage, special, specage2, special2
|
userlevel, level, turntime, killturn, lastconnect, makelimit, age, startage, personal, specage, special, specage2, special2
|
||||||
) values (
|
) values (
|
||||||
'$id', '$pwTemp', '$name', '$face', '$imgsvr', '0', '$city', '0', '$npcmatch',
|
'$id', '$pwTemp', '$name', '$face', '$imgsvr', '0', '$city', '0', '$npcmatch',
|
||||||
'$leader', '$power', '$intel', '0', '0', '1000', '1000', '0', '0', '0',
|
'$leadership', '$power', '$intel', '0', '0', '1000', '1000', '0', '0', '0',
|
||||||
'$userlevel', '0', '$turntime', '6', '$lastconnect', '0', '$age', '$age', '$character', '$specage', '$special', '$specage2', '$special2'
|
'$userlevel', '0', '$turntime', '6', '$lastconnect', '0', '$age', '$age', '$character', '$specage', '$special', '$specage2', '$special2'
|
||||||
)";
|
)";
|
||||||
$result = MYDB_query($query,$connect) or Error(__LINE__.MYDB_error($connect),"");
|
$result = MYDB_query($query,$connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||||
|
|||||||
@@ -156,9 +156,9 @@ jQuery(function($){
|
|||||||
setVal('.form_exp_level', data.explevel);
|
setVal('.form_exp_level', data.explevel);
|
||||||
setVal('.form_injury', data.injury);
|
setVal('.form_injury', data.injury);
|
||||||
|
|
||||||
setVal('.form_leadership', data.leader);
|
setVal('.form_leadership', data.leadership);
|
||||||
setVal('.form_general_horse', data.horse);
|
setVal('.form_general_horse', data.horse);
|
||||||
setVal('.form_power', data.power);
|
setVal('.form_strength', data.strength);
|
||||||
setVal('.form_general_weap', data.weap);
|
setVal('.form_general_weap', data.weap);
|
||||||
setVal('.form_intel', data.intel);
|
setVal('.form_intel', data.intel);
|
||||||
setVal('.form_general_book', data.book);
|
setVal('.form_general_book', data.book);
|
||||||
@@ -203,9 +203,9 @@ jQuery(function($){
|
|||||||
level:getInt('.form_general_level'),
|
level:getInt('.form_general_level'),
|
||||||
explevel:getInt('.form_exp_level'),
|
explevel:getInt('.form_exp_level'),
|
||||||
|
|
||||||
leader:getInt('.form_leadership'),
|
leadership:getInt('.form_leadership'),
|
||||||
horse:getInt('.form_general_horse'),
|
horse:getInt('.form_general_horse'),
|
||||||
power:getInt('.form_power'),
|
strength:getInt('.form_strength'),
|
||||||
weap:getInt('.form_general_weap'),
|
weap:getInt('.form_general_weap'),
|
||||||
intel:getInt('.form_intel'),
|
intel:getInt('.form_intel'),
|
||||||
book:getInt('.form_general_book'),
|
book:getInt('.form_general_book'),
|
||||||
@@ -365,8 +365,8 @@ jQuery(function($){
|
|||||||
city: (generalData.no)<=1 ? 1 : 3,
|
city: (generalData.no)<=1 ? 1 : 3,
|
||||||
turntime:'2018-08-26 12:00',
|
turntime:'2018-08-26 12:00',
|
||||||
special:defaultSpecialDomestic,
|
special:defaultSpecialDomestic,
|
||||||
leader2:0,
|
leadership2:0,
|
||||||
power2:0,
|
strength2:0,
|
||||||
intel2:0,
|
intel2:0,
|
||||||
|
|
||||||
gold:10000,
|
gold:10000,
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ $(function(){
|
|||||||
장수.국가 = 국가;
|
장수.국가 = 국가;
|
||||||
장수.벌점 = parseInt($tds.eq(-1).text());
|
장수.벌점 = parseInt($tds.eq(-1).text());
|
||||||
장수.통 = parseInt($this.data('general-leadership'));
|
장수.통 = parseInt($this.data('general-leadership'));
|
||||||
장수.무 = parseInt($this.data('general-power'));
|
장수.무 = parseInt($this.data('general-strength'));
|
||||||
장수.지 = parseInt($this.data('general-intel'));
|
장수.지 = parseInt($this.data('general-intel'));
|
||||||
장수.삭턴 = parseInt($tds.eq(-2).text());
|
장수.삭턴 = parseInt($tds.eq(-2).text());
|
||||||
장수.종류 = getUserType(장수.통, 장수.무, 장수.지);
|
장수.종류 = getUserType(장수.통, 장수.무, 장수.지);
|
||||||
|
|||||||
+68
-68
@@ -1,148 +1,148 @@
|
|||||||
|
|
||||||
jQuery(function($){
|
jQuery(function($){
|
||||||
var $leader = $('#leader');
|
var $leadership = $('#leadership');
|
||||||
var $power = $('#power');
|
var $strength = $('#strength');
|
||||||
var $intel = $('#intel');
|
var $intel = $('#intel');
|
||||||
|
|
||||||
function abilityRand(){
|
function abilityRand(){
|
||||||
var leader = Math.random()*65 + 10;
|
var leadership = Math.random()*65 + 10;
|
||||||
var power = Math.random()*65 + 10;
|
var strength = Math.random()*65 + 10;
|
||||||
var intel = Math.random()*65 + 10;
|
var intel = Math.random()*65 + 10;
|
||||||
var rate = leader + power + intel;
|
var rate = leadership + strength + intel;
|
||||||
|
|
||||||
leader = Math.floor(leader / rate * defaultStatTotal);
|
leadership = Math.floor(leadership / rate * defaultStatTotal);
|
||||||
power = Math.floor(power / rate * defaultStatTotal);
|
strength = Math.floor(strength / rate * defaultStatTotal);
|
||||||
intel = Math.floor(intel / rate * defaultStatTotal);
|
intel = Math.floor(intel / rate * defaultStatTotal);
|
||||||
|
|
||||||
|
|
||||||
while(leader+power+intel < defaultStatTotal){
|
while(leadership+strength+intel < defaultStatTotal){
|
||||||
leader+=1;
|
leadership+=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(leader > defaultStatMax || power > defaultStatMax || intel > defaultStatMax || leader < defaultStatMin || power < defaultStatMin || intel < defaultStatMin){
|
if(leadership > defaultStatMax || strength > defaultStatMax || intel > defaultStatMax || leadership < defaultStatMin || strength < defaultStatMin || intel < defaultStatMin){
|
||||||
return abilityRand();
|
return abilityRand();
|
||||||
}
|
}
|
||||||
|
|
||||||
$leader.val(leader);
|
$leadership.val(leadership);
|
||||||
$power.val(power);
|
$strength.val(strength);
|
||||||
$intel.val(intel);
|
$intel.val(intel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function abilityLeadpow(){
|
function abilityLeadpow(){
|
||||||
var leader = Math.random() * 6;
|
var leadership = Math.random() * 6;
|
||||||
var power = Math.random() * 6;
|
var strength = Math.random() * 6;
|
||||||
var intel = Math.random() * 1;
|
var intel = Math.random() * 1;
|
||||||
var rate = leader + power + intel;
|
var rate = leadership + strength + intel;
|
||||||
|
|
||||||
leader = Math.floor(leader / rate * defaultStatTotal);
|
leadership = Math.floor(leadership / rate * defaultStatTotal);
|
||||||
power = Math.floor(power / rate * defaultStatTotal);
|
strength = Math.floor(strength / rate * defaultStatTotal);
|
||||||
intel = Math.floor(intel / rate * defaultStatTotal);
|
intel = Math.floor(intel / rate * defaultStatTotal);
|
||||||
|
|
||||||
while(leader+power+intel < defaultStatTotal){
|
while(leadership+strength+intel < defaultStatTotal){
|
||||||
power+=1;
|
strength+=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(intel < defaultStatMin){
|
if(intel < defaultStatMin){
|
||||||
leader -= defaultStatMin - intel;
|
leadership -= defaultStatMin - intel;
|
||||||
intel = defaultStatMin;
|
intel = defaultStatMin;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(leader > defaultStatMax){
|
if(leadership > defaultStatMax){
|
||||||
power += leader - defaultStatMax;
|
strength += leadership - defaultStatMax;
|
||||||
leader = defaultStatMax;
|
leadership = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(power > defaultStatMax){
|
if(strength > defaultStatMax){
|
||||||
leader += power - defaultStatMax;
|
leadership += strength - defaultStatMax;
|
||||||
power = defaultStatMax;
|
strength = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(leader > defaultStatMax){
|
if(leadership > defaultStatMax){
|
||||||
intel += leader - defaultStatMax;
|
intel += leadership - defaultStatMax;
|
||||||
leader = defaultStatMax;
|
leadership = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
$leader.val(leader);
|
$leadership.val(leadership);
|
||||||
$power.val(power);
|
$strength.val(strength);
|
||||||
$intel.val(intel);
|
$intel.val(intel);
|
||||||
}
|
}
|
||||||
|
|
||||||
function abilityLeadint(){
|
function abilityLeadint(){
|
||||||
var leader = Math.random() * 6;
|
var leadership = Math.random() * 6;
|
||||||
var power = Math.random() * 1;
|
var strength = Math.random() * 1;
|
||||||
var intel = Math.random() * 6;
|
var intel = Math.random() * 6;
|
||||||
var rate = leader + power + intel;
|
var rate = leadership + strength + intel;
|
||||||
|
|
||||||
leader = Math.floor(leader / rate * defaultStatTotal);
|
leadership = Math.floor(leadership / rate * defaultStatTotal);
|
||||||
power = Math.floor(power / rate * defaultStatTotal);
|
strength = Math.floor(strength / rate * defaultStatTotal);
|
||||||
intel = Math.floor(intel / rate * defaultStatTotal);
|
intel = Math.floor(intel / rate * defaultStatTotal);
|
||||||
|
|
||||||
while(leader+power+intel < defaultStatTotal){
|
while(leadership+strength+intel < defaultStatTotal){
|
||||||
intel+=1;
|
intel+=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(power < defaultStatMin){
|
if(strength < defaultStatMin){
|
||||||
leader -= defaultStatMin - power;
|
leadership -= defaultStatMin - strength;
|
||||||
power = defaultStatMin;
|
strength = defaultStatMin;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(leader > defaultStatMax){
|
if(leadership > defaultStatMax){
|
||||||
intel += leader - defaultStatMax;
|
intel += leadership - defaultStatMax;
|
||||||
leader = defaultStatMax;
|
leadership = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(intel > defaultStatMax){
|
if(intel > defaultStatMax){
|
||||||
leader += intel - defaultStatMax;
|
leadership += intel - defaultStatMax;
|
||||||
intel = defaultStatMax;
|
intel = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(leader > defaultStatMax){
|
if(leadership > defaultStatMax){
|
||||||
power += leader - defaultStatMax;
|
strength += leadership - defaultStatMax;
|
||||||
leader = defaultStatMax;
|
leadership = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
$leader.val(leader);
|
$leadership.val(leadership);
|
||||||
$power.val(power);
|
$strength.val(strength);
|
||||||
$intel.val(intel);
|
$intel.val(intel);
|
||||||
}
|
}
|
||||||
|
|
||||||
function abilityPowint(){
|
function abilityPowint(){
|
||||||
var leader = Math.random() * 1;
|
var leadership = Math.random() * 1;
|
||||||
var power = Math.random() * 6;
|
var strength = Math.random() * 6;
|
||||||
var intel = Math.random() * 6;
|
var intel = Math.random() * 6;
|
||||||
var rate = leader + power + intel;
|
var rate = leadership + strength + intel;
|
||||||
|
|
||||||
leader = Math.floor(leader / rate * defaultStatTotal);
|
leadership = Math.floor(leadership / rate * defaultStatTotal);
|
||||||
power = Math.floor(power / rate * defaultStatTotal);
|
strength = Math.floor(strength / rate * defaultStatTotal);
|
||||||
intel = Math.floor(intel / rate * defaultStatTotal);
|
intel = Math.floor(intel / rate * defaultStatTotal);
|
||||||
|
|
||||||
while(leader+power+intel < defaultStatTotal){
|
while(leadership+strength+intel < defaultStatTotal){
|
||||||
intel+=1;
|
intel+=1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(leader < defaultStatMin){
|
if(leadership < defaultStatMin){
|
||||||
power -= defaultStatMin - leader;
|
strength -= defaultStatMin - leadership;
|
||||||
leader = defaultStatMin;
|
leadership = defaultStatMin;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(power > defaultStatMax){
|
if(strength > defaultStatMax){
|
||||||
intel += power - defaultStatMax;
|
intel += strength - defaultStatMax;
|
||||||
power = defaultStatMax;
|
strength = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(intel > defaultStatMax){
|
if(intel > defaultStatMax){
|
||||||
power += intel - defaultStatMax;
|
strength += intel - defaultStatMax;
|
||||||
intel = defaultStatMax;
|
intel = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(power > defaultStatMax){
|
if(strength > defaultStatMax){
|
||||||
leader += power - defaultStatMax;
|
leadership += strength - defaultStatMax;
|
||||||
power = defaultStatMax;
|
strength = defaultStatMax;
|
||||||
}
|
}
|
||||||
|
|
||||||
$leader.val(leader);
|
$leadership.val(leadership);
|
||||||
$power.val(power);
|
$strength.val(strength);
|
||||||
$intel.val(intel);
|
$intel.val(intel);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -182,7 +182,7 @@ jQuery(function($){
|
|||||||
alert('장수 이름이 너무 깁니다!');
|
alert('장수 이름이 너무 깁니다!');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
var currentStatTotal = parseInt($leader.val()) + parseInt($power.val()) + parseInt($intel.val());
|
var currentStatTotal = parseInt($leadership.val()) + parseInt($strength.val()) + parseInt($intel.val());
|
||||||
if(currentStatTotal < defaultStatTotal){
|
if(currentStatTotal < defaultStatTotal){
|
||||||
if(!confirm('현재 능력치 총합은 {0}으로, {1}보다 낮습니다. 장수 생성을 진행할까요?'.format(currentStatTotal, defaultStatTotal))){
|
if(!confirm('현재 능력치 총합은 {0}으로, {1}보다 낮습니다. 장수 생성을 진행할까요?'.format(currentStatTotal, defaultStatTotal))){
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
+10
-10
@@ -2,7 +2,7 @@ var templateGeneralCard =
|
|||||||
'<div class="general_card">\
|
'<div class="general_card">\
|
||||||
<h4 class="bg1 with_border"><%name%></h4>\
|
<h4 class="bg1 with_border"><%name%></h4>\
|
||||||
<h4><img src="<%iconPath%>" height=64 width=64></h4>\
|
<h4><img src="<%iconPath%>" height=64 width=64></h4>\
|
||||||
<p><%leader%> / <%power%> / <%intel%><br>\
|
<p><%leadership%> / <%strength%> / <%intel%><br>\
|
||||||
<%nation%><br>\
|
<%nation%><br>\
|
||||||
<%personalText%><br>\
|
<%personalText%><br>\
|
||||||
<%specialText%> / <%special2Text%></p>\
|
<%specialText%> / <%special2Text%></p>\
|
||||||
@@ -31,8 +31,8 @@ var templateGeneralRow =
|
|||||||
<td><%dedication%></td>\
|
<td><%dedication%></td>\
|
||||||
<td><%level%></td>\
|
<td><%level%></td>\
|
||||||
<td><%total%></td>\
|
<td><%total%></td>\
|
||||||
<td><%leader%></td>\
|
<td><%leadership%></td>\
|
||||||
<td><%power%></td>\
|
<td><%strength%></td>\
|
||||||
<td><%intel%></td>\
|
<td><%intel%></td>\
|
||||||
<td><%killturn%></td>\
|
<td><%killturn%></td>\
|
||||||
</tr>';
|
</tr>';
|
||||||
@@ -111,8 +111,8 @@ function printGenerals(value){
|
|||||||
});
|
});
|
||||||
|
|
||||||
pick.sort(function(lhs, rhs){
|
pick.sort(function(lhs, rhs){
|
||||||
var lsum = lhs.leader+lhs.power+lhs.intel;
|
var lsum = lhs.leadership+lhs.strength+lhs.intel;
|
||||||
var rsum = rhs.leader+rhs.power+rhs.intel;
|
var rsum = rhs.leadership+rhs.strength+rhs.intel;
|
||||||
return lsum - rsum;
|
return lsum - rsum;
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -181,9 +181,9 @@ function printGeneralList(value){
|
|||||||
name:general[9],
|
name:general[9],
|
||||||
name2:general[10],
|
name2:general[10],
|
||||||
injury:general[11],
|
injury:general[11],
|
||||||
leader:general[12],
|
leadership:general[12],
|
||||||
lbonus:general[13],
|
lbonus:general[13],
|
||||||
power:general[14],
|
strength:general[14],
|
||||||
intel:general[15],
|
intel:general[15],
|
||||||
explevel:general[16],
|
explevel:general[16],
|
||||||
experience:general[17],
|
experience:general[17],
|
||||||
@@ -222,7 +222,7 @@ function printGeneralList(value){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
general.total = general.leader + general.power + general.intel;
|
general.total = general.leadership + general.strength + general.intel;
|
||||||
general.iconPath = getIconPath(general.imgsvr, general.picture);
|
general.iconPath = getIconPath(general.imgsvr, general.picture);
|
||||||
|
|
||||||
general.specialDomesticWithTooltip = TemplateEngine(templateSpecial, {
|
general.specialDomesticWithTooltip = TemplateEngine(templateSpecial, {
|
||||||
@@ -253,8 +253,8 @@ function printGeneralList(value){
|
|||||||
if(lhs.total != rhs.total){
|
if(lhs.total != rhs.total){
|
||||||
return rhs.total - lhs.total;
|
return rhs.total - lhs.total;
|
||||||
}
|
}
|
||||||
if(lhs.leader != rhs.leader){
|
if(lhs.leadership != rhs.leadership){
|
||||||
return rhs.leader - lhs.total;
|
return rhs.leadership - lhs.total;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(lhs.name < rhs.name){
|
if(lhs.name < rhs.name){
|
||||||
|
|||||||
+3
-3
@@ -34,7 +34,7 @@ function processWar(General $attackerGeneral, array $rawAttackerNation, array $r
|
|||||||
$city = new WarUnitCity($rawDefenderCity, $rawDefenderNation, $year, $month, $cityRate);
|
$city = new WarUnitCity($rawDefenderCity, $rawDefenderNation, $year, $month, $cityRate);
|
||||||
|
|
||||||
$defenderList = [];
|
$defenderList = [];
|
||||||
foreach ($db->query('SELECT no,name,nation,turntime,personal,special2,crew,crewtype,atmos,train,intel,intel2,book,power,power2,weap,injury,leader,leader2,horse,item,explevel,experience,dedication,level,gold,rice,dex0,dex10,dex20,dex30,dex40,warnum,killnum,deathnum,killcrew,deathcrew,recwar,mode FROM general WHERE nation=%i AND city=%i AND nation!=0 and crew > 0 and rice>(crew/100) and ((train>=60 and atmos>=60 and mode=1) or (train>=80 and atmos>=80 and mode=2))', $city->getVar('nation'), $city->getVar('city')) as $rawGeneral){
|
foreach ($db->query('SELECT no,name,nation,turntime,personal,special2,crew,crewtype,atmos,train,intel,intel2,book,strength,strength2,weap,injury,leadership,leadership2,horse,item,explevel,experience,dedication,level,gold,rice,dex0,dex10,dex20,dex30,dex40,warnum,killnum,deathnum,killcrew,deathcrew,recwar,mode FROM general WHERE nation=%i AND city=%i AND nation!=0 and crew > 0 and rice>(crew/100) and ((train>=60 and atmos>=60 and mode=1) or (train>=80 and atmos>=80 and mode=2))', $city->getVar('nation'), $city->getVar('city')) as $rawGeneral){
|
||||||
$defenderList[] = new General($rawGeneral, $rawDefenderCity, $year, $month);
|
$defenderList[] = new General($rawGeneral, $rawDefenderCity, $year, $month);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -198,8 +198,8 @@ function extractBattleOrder(General $general){
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
$realStat = $general->getLeadership() + $general->getPower() + $general->getIntel();
|
$realStat = $general->getLeadership() + $general->getStrength() + $general->getIntel();
|
||||||
$fullStat = $general->getLeadership(false) + $general->getPower(false) + $general->getIntel(false);
|
$fullStat = $general->getLeadership(false) + $general->getStrength(false) + $general->getIntel(false);
|
||||||
$totalStat = ($realStat + $fullStat) / 2;
|
$totalStat = ($realStat + $fullStat) / 2;
|
||||||
|
|
||||||
$totalCrew = $general->getVar('crew') / 1000000 * (($general->getVar('train') * $general->getVar('atmos')) ** 1.5);
|
$totalCrew = $general->getVar('crew') / 1000000 * (($general->getVar('train') * $general->getVar('atmos')) ** 1.5);
|
||||||
|
|||||||
@@ -204,7 +204,7 @@ function command_11($turn, $command, bool $is모병 = false) {
|
|||||||
$userID = Session::getUserID();
|
$userID = Session::getUserID();
|
||||||
|
|
||||||
$me = $db->queryFirstRow(
|
$me = $db->queryFirstRow(
|
||||||
'SELECT no,nation,level,personal,special2,level,city,crew,horse,injury,leader,crewtype,gold
|
'SELECT no,nation,level,personal,special2,level,city,crew,horse,injury,leadership,crewtype,gold
|
||||||
from general where owner=%i',
|
from general where owner=%i',
|
||||||
$userID
|
$userID
|
||||||
);
|
);
|
||||||
@@ -231,8 +231,8 @@ function command_11($turn, $command, bool $is모병 = false) {
|
|||||||
$ownRegions[$city['region']] = 1;
|
$ownRegions[$city['region']] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
$leader = getGeneralLeadership($me, true, true, true);
|
$leadership = getGeneralLeadership($me, true, true, true);
|
||||||
$fullLeader = getGeneralLeadership($me, false, true, true);
|
$fullLeadershipship = getGeneralLeadership($me, false, true, true);
|
||||||
$abil = getTechAbil($tech);
|
$abil = getTechAbil($tech);
|
||||||
|
|
||||||
$armTypes = [];
|
$armTypes = [];
|
||||||
@@ -315,8 +315,8 @@ function command_11($turn, $command, bool $is모병 = false) {
|
|||||||
'commandName'=>$commandName,
|
'commandName'=>$commandName,
|
||||||
'techLevelText'=>getTechCall($tech),
|
'techLevelText'=>getTechCall($tech),
|
||||||
'tech'=>$tech,
|
'tech'=>$tech,
|
||||||
'leader'=>$leader,
|
'leadership'=>$leadership,
|
||||||
'fullLeader'=>$fullLeader,
|
'fullLeadership'=>$fullLeadership,
|
||||||
'crewType'=>GameUnitConst::byId($me['crewtype'])->id,
|
'crewType'=>GameUnitConst::byId($me['crewtype'])->id,
|
||||||
'crewTypeName'=>GameUnitConst::byId($me['crewtype'])->name,
|
'crewTypeName'=>GameUnitConst::byId($me['crewtype'])->name,
|
||||||
'crew'=>$me['crew'],
|
'crew'=>$me['crew'],
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ class che_귀모 implements iAction{
|
|||||||
static $selectWeight = 2.5;
|
static $selectWeight = 2.5;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class che_수비 implements iAction{
|
|||||||
static $selectWeightType = SpecialityConst::WEIGHT_NORM;
|
static $selectWeightType = SpecialityConst::WEIGHT_NORM;
|
||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class che_축성 implements iAction{
|
|||||||
static $selectWeightType = SpecialityConst::WEIGHT_NORM;
|
static $selectWeightType = SpecialityConst::WEIGHT_NORM;
|
||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class che_통찰 implements iAction{
|
|||||||
static $selectWeightType = SpecialityConst::WEIGHT_NORM;
|
static $selectWeightType = SpecialityConst::WEIGHT_NORM;
|
||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class che_격노 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class che_견고 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function getBattlePhaseSkillTriggerList(WarUnit $unit):?WarUnitTriggerCaller{
|
public function getBattlePhaseSkillTriggerList(WarUnit $unit):?WarUnitTriggerCaller{
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ class che_공성 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_SIEGE,
|
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_SIEGE,
|
||||||
SpecialityConst::STAT_POWER | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_SIEGE,
|
SpecialityConst::STAT_STRENGTH | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_SIEGE,
|
||||||
SpecialityConst::STAT_INTEL | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_SIEGE,
|
SpecialityConst::STAT_INTEL | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_SIEGE,
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class che_궁병 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_ARCHER,
|
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_ARCHER,
|
||||||
SpecialityConst::STAT_POWER | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_ARCHER
|
SpecialityConst::STAT_STRENGTH | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_ARCHER
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class che_기병 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_CAVALRY,
|
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_CAVALRY,
|
||||||
SpecialityConst::STAT_POWER | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_CAVALRY
|
SpecialityConst::STAT_STRENGTH | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_CAVALRY
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ class che_돌격 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcStat(General $general, string $statName, $value, $aux=null){
|
public function onCalcStat(General $general, string $statName, $value, $aux=null){
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class che_무쌍 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcStat(General $general, string $statName, $value, $aux=null){
|
public function onCalcStat(General $general, string $statName, $value, $aux=null){
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class che_보병 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_FOOTMAN,
|
SpecialityConst::STAT_LEADERSHIP | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_FOOTMAN,
|
||||||
SpecialityConst::STAT_POWER | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_FOOTMAN
|
SpecialityConst::STAT_STRENGTH | SpecialityConst::REQ_DEXTERITY | SpecialityConst::ARMY_FOOTMAN
|
||||||
];
|
];
|
||||||
|
|
||||||
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
public function onCalcDomestic(string $turnType, string $varType, float $value, $aux=null):float{
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class che_위압 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER
|
SpecialityConst::STAT_STRENGTH
|
||||||
];
|
];
|
||||||
|
|
||||||
public function getBattlePhaseSkillTriggerList(WarUnit $unit):?WarUnitTriggerCaller{
|
public function getBattlePhaseSkillTriggerList(WarUnit $unit):?WarUnitTriggerCaller{
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ class che_의술 implements iAction{
|
|||||||
static $selectWeight = 2;
|
static $selectWeight = 2;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class che_저격 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class che_징병 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class che_척사 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ class che_필살 implements iAction{
|
|||||||
static $selectWeight = 1;
|
static $selectWeight = 1;
|
||||||
static $type = [
|
static $type = [
|
||||||
SpecialityConst::STAT_LEADERSHIP,
|
SpecialityConst::STAT_LEADERSHIP,
|
||||||
SpecialityConst::STAT_POWER,
|
SpecialityConst::STAT_STRENGTH,
|
||||||
SpecialityConst::STAT_INTEL
|
SpecialityConst::STAT_INTEL
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ use \sammo\General;
|
|||||||
class BaseStatItem extends BaseItem{
|
class BaseStatItem extends BaseItem{
|
||||||
|
|
||||||
protected $statNick = '통솔';
|
protected $statNick = '통솔';
|
||||||
protected $statType = 'leader';
|
protected $statType = 'leadership';
|
||||||
protected $statValue = 1;
|
protected $statValue = 1;
|
||||||
protected $cost = 1000;
|
protected $cost = 1000;
|
||||||
protected $rawName = '노기';
|
protected $rawName = '노기';
|
||||||
@@ -14,14 +14,15 @@ class BaseStatItem extends BaseItem{
|
|||||||
protected $buyable = true;
|
protected $buyable = true;
|
||||||
|
|
||||||
protected const ITEM_TYPE = [
|
protected const ITEM_TYPE = [
|
||||||
'명마'=>['통솔', 'leader'],
|
'명마'=>['통솔', 'leadership'],
|
||||||
'무기'=>['무력', 'power'],
|
'무기'=>['무력', 'strength'],
|
||||||
'서적'=>['지력', 'intel']
|
'서적'=>['지력', 'intel']
|
||||||
];
|
];
|
||||||
|
|
||||||
public function __construct(){
|
public function __construct(){
|
||||||
$nameTokens = explode('_', static::class);
|
$nameTokens = explode('_', static::class);
|
||||||
$this->statValue = (int)$nameTokens[-1];
|
$this->statValue = (int)$nameTokens[-1];
|
||||||
|
assert(is_numeric($this->statValue));
|
||||||
$this->rawName = $nameTokens[-2];
|
$this->rawName = $nameTokens[-2];
|
||||||
[$this->statNick, $this->statType] = static::ITEM_TYPE[$nameTokens[-3]];
|
[$this->statNick, $this->statType] = static::ITEM_TYPE[$nameTokens[-3]];
|
||||||
|
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ class che_강행 extends Command\GeneralCommand{
|
|||||||
[$reqGold, $reqRice] = $this->getCost();
|
[$reqGold, $reqRice] = $this->getCost();
|
||||||
$general->increaseVarWithLimit('gold', -$reqGold, 0);
|
$general->increaseVarWithLimit('gold', -$reqGold, 0);
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
$general->applyDB($db);
|
$general->applyDB($db);
|
||||||
|
|||||||
@@ -72,10 +72,10 @@ class che_견문 extends Command\GeneralCommand{
|
|||||||
$exp += 60;
|
$exp += 60;
|
||||||
}
|
}
|
||||||
if($type & SightseeingMessage::IncLeadership){
|
if($type & SightseeingMessage::IncLeadership){
|
||||||
$general->increaseVar('leader2', 2);
|
$general->increaseVar('leadership2', 2);
|
||||||
}
|
}
|
||||||
if($type & SightseeingMessage::IncPower){
|
if($type & SightseeingMessage::IncStrength){
|
||||||
$general->increaseVar('power2', 2);
|
$general->increaseVar('strength2', 2);
|
||||||
}
|
}
|
||||||
if($type & SightseeingMessage::IncIntel){
|
if($type & SightseeingMessage::IncIntel){
|
||||||
$general->increaseVar('intel2', 2);
|
$general->increaseVar('intel2', 2);
|
||||||
|
|||||||
@@ -161,8 +161,8 @@ class che_군량매매 extends Command\GeneralCommand{
|
|||||||
$ded = $general->onCalcStat($general, 'dedication', $ded);
|
$ded = $general->onCalcStat($general, 'dedication', $ded);
|
||||||
|
|
||||||
$incStat = Util::choiceRandomUsingWeight([
|
$incStat = Util::choiceRandomUsingWeight([
|
||||||
'leader2'=>$general->getLeadership(false, false, false, false),
|
'leadership2'=>$general->getLeadership(false, false, false, false),
|
||||||
'power2'=>$general->getPower(false, false, false, false),
|
'strength2'=>$general->getStrength(false, false, false, false),
|
||||||
'intel2'=>$general->getIntel(false, false, false, false)
|
'intel2'=>$general->getIntel(false, false, false, false)
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ class che_귀환 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
$general->applyDB($db);
|
$general->applyDB($db);
|
||||||
|
|||||||
@@ -101,8 +101,8 @@ class che_단련 extends Command\GeneralCommand{
|
|||||||
$general->addDex($general->getCrewTypeObj(), $score, false);
|
$general->addDex($general->getCrewTypeObj(), $score, false);
|
||||||
|
|
||||||
$incStat = Util::choiceRandomUsingWeight([
|
$incStat = Util::choiceRandomUsingWeight([
|
||||||
'leader2'=>$general->getLeadership(false, false, false, false),
|
'leadership2'=>$general->getLeadership(false, false, false, false),
|
||||||
'power2'=>$general->getPower(false, false, false, false),
|
'strength2'=>$general->getStrength(false, false, false, false),
|
||||||
'intel2'=>$general->getIntel(false, false, false, false)
|
'intel2'=>$general->getIntel(false, false, false, false)
|
||||||
]);
|
]);
|
||||||
[$reqGold, $reqRice] = $this->getCost();
|
[$reqGold, $reqRice] = $this->getCost();
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ class che_물자조달 extends Command\GeneralCommand{
|
|||||||
['쌀', 'rice']
|
['쌀', 'rice']
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$score = $general->getLeadership() + $general->getPower() + $general->getIntel();
|
$score = $general->getLeadership() + $general->getStrength() + $general->getIntel();
|
||||||
$score *= getDomesticExpLevelBonus($general->getVar('explevel'));
|
$score *= getDomesticExpLevelBonus($general->getVar('explevel'));
|
||||||
$score *= Util::randRange(0.8, 1.2);
|
$score *= Util::randRange(0.8, 1.2);
|
||||||
|
|
||||||
@@ -107,8 +107,8 @@ class che_물자조달 extends Command\GeneralCommand{
|
|||||||
$ded = $general->onCalcStat($general, 'dedication', $ded);
|
$ded = $general->onCalcStat($general, 'dedication', $ded);
|
||||||
|
|
||||||
$incStat = Util::choiceRandomUsingWeight([
|
$incStat = Util::choiceRandomUsingWeight([
|
||||||
'leader2'=>$general->getLeadership(false, false, false, false),
|
'leadership2'=>$general->getLeadership(false, false, false, false),
|
||||||
'power2'=>$general->getPower(false, false, false, false),
|
'strength2'=>$general->getStrength(false, false, false, false),
|
||||||
'intel2'=>$general->getIntel(false, false, false, false)
|
'intel2'=>$general->getIntel(false, false, false, false)
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ class che_사기진작 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
tryUniqueItemLottery($general);
|
tryUniqueItemLottery($general);
|
||||||
|
|||||||
@@ -32,8 +32,8 @@ class che_상업투자 extends Command\GeneralCommand{
|
|||||||
public function getCommandDetailTitle():string{
|
public function getCommandDetailTitle():string{
|
||||||
$name = $this->getName();
|
$name = $this->getName();
|
||||||
$statTypeBase = [
|
$statTypeBase = [
|
||||||
'leader'=>'통솔경험',
|
'leadership'=>'통솔경험',
|
||||||
'power'=>'무력경험',
|
'strength'=>'무력경험',
|
||||||
'intel'=>'지력경험',
|
'intel'=>'지력경험',
|
||||||
];
|
];
|
||||||
$statType = $statTypeBase[static::$statKey];
|
$statType = $statTypeBase[static::$statKey];
|
||||||
@@ -100,10 +100,10 @@ class che_상업투자 extends Command\GeneralCommand{
|
|||||||
if(static::$statKey == 'intel'){
|
if(static::$statKey == 'intel'){
|
||||||
$score = $general->getIntel(true, true, true, false);
|
$score = $general->getIntel(true, true, true, false);
|
||||||
}
|
}
|
||||||
else if(static::$statKey == 'power'){
|
else if(static::$statKey == 'strength'){
|
||||||
$score = $general->getPower(true, true, true, false);
|
$score = $general->getStrength(true, true, true, false);
|
||||||
}
|
}
|
||||||
else if(static::$statKey == 'leader'){
|
else if(static::$statKey == 'leadership'){
|
||||||
$score = $general->getLeadership(true, true, true, false);
|
$score = $general->getLeadership(true, true, true, false);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ use \sammo\{
|
|||||||
class che_선동 extends che_화계{
|
class che_선동 extends che_화계{
|
||||||
static protected $actionName = '선동';
|
static protected $actionName = '선동';
|
||||||
|
|
||||||
static protected $statType = 'leader';
|
static protected $statType = 'leadership';
|
||||||
static protected $injuryGeneral = true;
|
static protected $injuryGeneral = true;
|
||||||
|
|
||||||
protected function affectDestCity(int $injuryCount){
|
protected function affectDestCity(int $injuryCount){
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ namespace sammo\Command\General;
|
|||||||
|
|
||||||
class che_성벽보수 extends che_상업투자{
|
class che_성벽보수 extends che_상업투자{
|
||||||
static protected $cityKey = 'wall';
|
static protected $cityKey = 'wall';
|
||||||
static protected $statKey = 'power';
|
static protected $statKey = 'strength';
|
||||||
static protected $actionKey = '성벽';
|
static protected $actionKey = '성벽';
|
||||||
static protected $actionName = '성벽 보수';
|
static protected $actionName = '성벽 보수';
|
||||||
static protected $debuffFront = 0.25;
|
static protected $debuffFront = 0.25;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ namespace sammo\Command\General;
|
|||||||
|
|
||||||
class che_수비강화 extends che_상업투자{
|
class che_수비강화 extends che_상업투자{
|
||||||
static protected $cityKey = 'def';
|
static protected $cityKey = 'def';
|
||||||
static protected $statKey = 'power';
|
static protected $statKey = 'strength';
|
||||||
static protected $actionKey = '수비';
|
static protected $actionKey = '수비';
|
||||||
static protected $actionName = '수비 강화';
|
static protected $actionName = '수비 강화';
|
||||||
static protected $debuffFront = 0.5;
|
static protected $debuffFront = 0.5;
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ class che_이동 extends Command\GeneralCommand{
|
|||||||
[$reqGold, $reqRice] = $this->getCost();
|
[$reqGold, $reqRice] = $this->getCost();
|
||||||
$general->increaseVarWithLimit('gold', -$reqGold, 0);
|
$general->increaseVarWithLimit('gold', -$reqGold, 0);
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
$general->applyDB($db);
|
$general->applyDB($db);
|
||||||
|
|||||||
@@ -98,8 +98,8 @@ class che_인재탐색 extends Command\GeneralCommand{
|
|||||||
$logger->pushGeneralActionLog("인재를 찾을 수 없었습니다. <1>$date</>");
|
$logger->pushGeneralActionLog("인재를 찾을 수 없었습니다. <1>$date</>");
|
||||||
|
|
||||||
$incStat = Util::choiceRandomUsingWeight([
|
$incStat = Util::choiceRandomUsingWeight([
|
||||||
'leader2'=>$general->getLeadership(false, false, false, false),
|
'leadership2'=>$general->getLeadership(false, false, false, false),
|
||||||
'power2'=>$general->getPower(false, false, false, false),
|
'strength2'=>$general->getStrength(false, false, false, false),
|
||||||
'intel2'=>$general->getIntel(false, false, false, false)
|
'intel2'=>$general->getIntel(false, false, false, false)
|
||||||
]);
|
]);
|
||||||
[$reqGold, $reqRice] = $this->getCost();
|
[$reqGold, $reqRice] = $this->getCost();
|
||||||
@@ -148,45 +148,45 @@ class che_인재탐색 extends Command\GeneralCommand{
|
|||||||
}
|
}
|
||||||
|
|
||||||
$avgGen = $db->queryFirstRow(
|
$avgGen = $db->queryFirstRow(
|
||||||
'SELECT max(leader+power+intel) as lpi, avg(dedication) as ded,avg(experience) as exp,
|
'SELECT max(leadership+strength+intel) as stat_sum, 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
|
avg(dex0) as dex0, avg(dex10) as dex10, avg(dex20) as dex20, avg(dex30) as dex30, avg(dex40) as dex40
|
||||||
from general where nation=%i',
|
from general where nation=%i',
|
||||||
$nationID
|
$nationID
|
||||||
);
|
);
|
||||||
|
|
||||||
if($pickType == '무'){
|
if($pickType == '무'){
|
||||||
$leader = $subStat;
|
$leadership = $subStat;
|
||||||
$power = $mainStat;
|
$strength = $mainStat;
|
||||||
$intel = $otherStat;
|
$intel = $otherStat;
|
||||||
}
|
}
|
||||||
else if($pickType == '지'){
|
else if($pickType == '지'){
|
||||||
$leader = $subStat;
|
$leadership = $subStat;
|
||||||
$power = $otherStat;
|
$strength = $otherStat;
|
||||||
$intel = $mainStat;
|
$intel = $mainStat;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$leader = $otherStat;
|
$leadership = $otherStat;
|
||||||
$power = $subStat;
|
$strength = $subStat;
|
||||||
$intel = $mainStat;
|
$intel = $mainStat;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 국내 최고능치 기준으로 랜덤성 스케일링
|
// 국내 최고능치 기준으로 랜덤성 스케일링
|
||||||
$maxLPI = $avgGen['lpi'];
|
$maxLPI = $avgGen['stat_sum'];
|
||||||
if($maxLPI > 210) {
|
if($maxLPI > 210) {
|
||||||
$leader *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.6, 0.9);
|
$leadership *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.6, 0.9);
|
||||||
$power *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.6, 0.9);
|
$strength *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.6, 0.9);
|
||||||
$intel *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.6, 0.9);
|
$intel *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.6, 0.9);
|
||||||
} elseif($maxLPI > 180) {
|
} elseif($maxLPI > 180) {
|
||||||
$leader *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.75, 0.95);
|
$leadership *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.75, 0.95);
|
||||||
$power *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.75, 0.95);
|
$strength *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.75, 0.95);
|
||||||
$intel *= $avgGen['lpi'] / GameConst::$defaultStatTotal * Util::randRange(0.75, 0.95);
|
$intel *= $avgGen['stat_sum'] / GameConst::$defaultStatTotal * Util::randRange(0.75, 0.95);
|
||||||
} else {
|
} else {
|
||||||
$leader *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.9, 1);
|
$leadership *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.9, 1);
|
||||||
$power *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.9, 1);
|
$strength *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.9, 1);
|
||||||
$intel *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.9, 1);
|
$intel *= $maxLPI / GameConst::$defaultStatTotal * Util::randRange(0.9, 1);
|
||||||
}
|
}
|
||||||
$leader = Util::round($leader);
|
$leadership = Util::round($leadership);
|
||||||
$power = Util::round($power);
|
$strength = Util::round($strength);
|
||||||
$intel = Util::round($intel);
|
$intel = Util::round($intel);
|
||||||
|
|
||||||
$isOurNation = $this->nation['scout'] == 0;
|
$isOurNation = $this->nation['scout'] == 0;
|
||||||
@@ -199,8 +199,8 @@ class che_인재탐색 extends Command\GeneralCommand{
|
|||||||
null,
|
null,
|
||||||
$isOurNation?$nationID:0,
|
$isOurNation?$nationID:0,
|
||||||
$general->getCityID(),
|
$general->getCityID(),
|
||||||
$leader,
|
$leadership,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
$isOurNation?1:0,
|
$isOurNation?1:0,
|
||||||
$age,
|
$age,
|
||||||
@@ -245,8 +245,8 @@ class che_인재탐색 extends Command\GeneralCommand{
|
|||||||
$logger->pushGeneralHistoryLog("<Y>$npcName</>{$josaRa}는 <C>인재</>를 {$scoutType}");
|
$logger->pushGeneralHistoryLog("<Y>$npcName</>{$josaRa}는 <C>인재</>를 {$scoutType}");
|
||||||
|
|
||||||
$incStat = Util::choiceRandomUsingWeight([
|
$incStat = Util::choiceRandomUsingWeight([
|
||||||
'leader2'=>$general->getLeadership(false, false, false, false),
|
'leadership2'=>$general->getLeadership(false, false, false, false),
|
||||||
'power2'=>$general->getPower(false, false, false, false),
|
'strength2'=>$general->getStrength(false, false, false, false),
|
||||||
'intel2'=>$general->getIntel(false, false, false, false)
|
'intel2'=>$general->getIntel(false, false, false, false)
|
||||||
]);
|
]);
|
||||||
[$reqGold, $reqRice] = $this->getCost();
|
[$reqGold, $reqRice] = $this->getCost();
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ class che_전투태세 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->addDex($general->getCrewTypeObj(), $crew / 100 * 3, false);
|
$general->addDex($general->getCrewTypeObj(), $crew / 100 * 3, false);
|
||||||
|
|
||||||
$general->increaseVar('leader2', 3);
|
$general->increaseVar('leadership2', 3);
|
||||||
$general->setResultTurn($turnResult);
|
$general->setResultTurn($turnResult);
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
tryUniqueItemLottery($general);
|
tryUniqueItemLottery($general);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ use \sammo\Constraint\ConstraintHelper;
|
|||||||
|
|
||||||
class che_정착장려 extends Command\GeneralCommand{
|
class che_정착장려 extends Command\GeneralCommand{
|
||||||
static protected $cityKey = 'pop';
|
static protected $cityKey = 'pop';
|
||||||
static protected $statKey = 'leader';
|
static protected $statKey = 'leadership';
|
||||||
static protected $actionKey = '인구';
|
static protected $actionKey = '인구';
|
||||||
static protected $actionName = '정착 장려';
|
static protected $actionName = '정착 장려';
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ class che_정착장려 extends Command\GeneralCommand{
|
|||||||
protected function calcBaseScore():float{
|
protected function calcBaseScore():float{
|
||||||
$general = $this->generalObj;
|
$general = $this->generalObj;
|
||||||
|
|
||||||
if(static::$statKey == 'leader'){
|
if(static::$statKey == 'leadership'){
|
||||||
$score = $general->getLeadership(true, true, true, false);
|
$score = $general->getLeadership(true, true, true, false);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ use \sammo\Constraint\ConstraintHelper;
|
|||||||
|
|
||||||
class che_주민선정 extends Command\GeneralCommand{
|
class che_주민선정 extends Command\GeneralCommand{
|
||||||
static protected $cityKey = 'trust';
|
static protected $cityKey = 'trust';
|
||||||
static protected $statKey = 'leader';
|
static protected $statKey = 'leadership';
|
||||||
static protected $actionKey = '민심';
|
static protected $actionKey = '민심';
|
||||||
static protected $actionName = '주민 선정';
|
static protected $actionName = '주민 선정';
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ class che_주민선정 extends Command\GeneralCommand{
|
|||||||
protected function calcBaseScore():float{
|
protected function calcBaseScore():float{
|
||||||
$general = $this->generalObj;
|
$general = $this->generalObj;
|
||||||
|
|
||||||
if(static::$statKey == 'leader'){
|
if(static::$statKey == 'leadership'){
|
||||||
$score = $general->getLeadership(true, true, true, false);
|
$score = $general->getLeadership(true, true, true, false);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ class che_증여 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
|
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ class che_집합 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
tryUniqueItemLottery($general);
|
tryUniqueItemLottery($general);
|
||||||
|
|||||||
@@ -190,7 +190,7 @@ class che_징병 extends Command\GeneralCommand{
|
|||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVarWithLimit('gold', -$reqGold, 0);
|
$general->increaseVarWithLimit('gold', -$reqGold, 0);
|
||||||
$general->increaseVarWithLimit('rice', -$reqRice, 0);
|
$general->increaseVarWithLimit('rice', -$reqRice, 0);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
tryUniqueItemLottery($general);
|
tryUniqueItemLottery($general);
|
||||||
|
|||||||
@@ -175,7 +175,7 @@ class che_첩보 extends Command\GeneralCommand{
|
|||||||
$general->increaseVarWithLimit('rice', -$reqRice, 0);
|
$general->increaseVarWithLimit('rice', -$reqRice, 0);
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
$general->applyDB($db);
|
$general->applyDB($db);
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ namespace sammo\Command\General;
|
|||||||
|
|
||||||
class che_치안강화 extends che_상업투자{
|
class che_치안강화 extends che_상업투자{
|
||||||
static protected $cityKey = 'secu';
|
static protected $cityKey = 'secu';
|
||||||
static protected $statKey = 'power';
|
static protected $statKey = 'strength';
|
||||||
static protected $actionKey = '치안';
|
static protected $actionKey = '치안';
|
||||||
static protected $actionName = '치안 강화';
|
static protected $actionName = '치안 강화';
|
||||||
static protected $debuffFront = 1;
|
static protected $debuffFront = 1;
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ use \sammo\{
|
|||||||
class che_탈취 extends che_화계{
|
class che_탈취 extends che_화계{
|
||||||
static protected $actionName = '탈취';
|
static protected $actionName = '탈취';
|
||||||
|
|
||||||
static protected $statType = 'power';
|
static protected $statType = 'strength';
|
||||||
static protected $injuryGeneral = false;
|
static protected $injuryGeneral = false;
|
||||||
|
|
||||||
protected function affectDestCity(int $injuryCount){
|
protected function affectDestCity(int $injuryCount){
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ use \sammo\{
|
|||||||
class che_파괴 extends che_화계{
|
class che_파괴 extends che_화계{
|
||||||
static protected $actionName = '파괴';
|
static protected $actionName = '파괴';
|
||||||
|
|
||||||
static protected $statType = 'power';
|
static protected $statType = 'strength';
|
||||||
static protected $injuryGeneral = true;
|
static protected $injuryGeneral = true;
|
||||||
|
|
||||||
protected function affectDestCity(int $injuryCount){
|
protected function affectDestCity(int $injuryCount){
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ class che_헌납 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
|
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
|
|||||||
@@ -49,11 +49,11 @@ class che_화계 extends Command\GeneralCommand{
|
|||||||
$general = $this->generalObj;
|
$general = $this->generalObj;
|
||||||
$nation = $this->nation;
|
$nation = $this->nation;
|
||||||
|
|
||||||
if($statType === 'leader'){
|
if($statType === 'leadership'){
|
||||||
$genScore = $general->getLeadership();
|
$genScore = $general->getLeadership();
|
||||||
}
|
}
|
||||||
else if($statType === 'power'){
|
else if($statType === 'strength'){
|
||||||
$genScore = $general->getPower();
|
$genScore = $general->getStrength();
|
||||||
}
|
}
|
||||||
else if($statType === 'intel'){
|
else if($statType === 'intel'){
|
||||||
$genScore = $general->getIntel();
|
$genScore = $general->getIntel();
|
||||||
@@ -80,11 +80,11 @@ class che_화계 extends Command\GeneralCommand{
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($statType === 'leader'){
|
if($statType === 'leadership'){
|
||||||
$genScore = $destGeneral->getLeadership();
|
$genScore = $destGeneral->getLeadership();
|
||||||
}
|
}
|
||||||
else if($statType === 'power'){
|
else if($statType === 'strength'){
|
||||||
$genScore = $destGeneral->getPower();
|
$genScore = $destGeneral->getStrength();
|
||||||
}
|
}
|
||||||
else if($statType === 'intel'){
|
else if($statType === 'intel'){
|
||||||
$genScore = $destGeneral->getIntel();
|
$genScore = $destGeneral->getIntel();
|
||||||
@@ -218,7 +218,7 @@ class che_화계 extends Command\GeneralCommand{
|
|||||||
[$year, $month] = [$env['year'], $env['month']];
|
[$year, $month] = [$env['year'], $env['month']];
|
||||||
|
|
||||||
foreach($db->query(
|
foreach($db->query(
|
||||||
'SELECT `no`,name,city,nation,level,leader,horse,power,weap,intel,book,item,last_turn,injury,special,special2 FROM general WHERE city = %i',
|
'SELECT `no`,name,city,nation,level,leadership,horse,strength,weap,intel,book,item,last_turn,injury,special,special2 FROM general WHERE city = %i',
|
||||||
$destCityID,
|
$destCityID,
|
||||||
$destNationID
|
$destNationID
|
||||||
) as $rawDestCityGeneral){
|
) as $rawDestCityGeneral){
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ class che_훈련 extends Command\GeneralCommand{
|
|||||||
|
|
||||||
$general->increaseVar('experience', $exp);
|
$general->increaseVar('experience', $exp);
|
||||||
$general->increaseVar('dedication', $ded);
|
$general->increaseVar('dedication', $ded);
|
||||||
$general->increaseVar('leader2', 1);
|
$general->increaseVar('leadership2', 1);
|
||||||
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
$general->setResultTurn(new LastTurn(static::getName(), $this->arg));
|
||||||
$general->checkStatChange();
|
$general->checkStatChange();
|
||||||
tryUniqueItemLottery($general);
|
tryUniqueItemLottery($general);
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class ReqGeneralCrewMargin extends Constraint{
|
|||||||
throw new \InvalidArgumentException("{$this->arg} is invalid crewtype");
|
throw new \InvalidArgumentException("{$this->arg} is invalid crewtype");
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach(['leader','power','intel','crew','crewtype','nation','level'] as $key){
|
foreach(['leadership','strength','intel','crew','crewtype','nation','level'] as $key){
|
||||||
if(!key_exists($key, $this->general)){
|
if(!key_exists($key, $this->general)){
|
||||||
if(!$throwExeception){return false; }
|
if(!$throwExeception){return false; }
|
||||||
throw new \InvalidArgumentException("require {$key} in general");
|
throw new \InvalidArgumentException("require {$key} in general");
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ class RaiseInvader extends \sammo\Event\Action{
|
|||||||
|
|
||||||
$specAvg = $this->specAvg;
|
$specAvg = $this->specAvg;
|
||||||
if($specAvg < 0){
|
if($specAvg < 0){
|
||||||
$specAvg = $db->queryFirstField('SELECT avg(sum(`leader` + `power` + `intel`)) from general where npc < 9');
|
$specAvg = $db->queryFirstField('SELECT avg(sum(`leadership` + `strength` + `intel`)) from general where npc < 9');
|
||||||
$specAvg /= -1 * $this->specAvg;
|
$specAvg /= -1 * $this->specAvg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ class RegNPC extends \sammo\Event\Action{
|
|||||||
int $nationID,
|
int $nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
int $leadership,
|
int $leadership,
|
||||||
int $power,
|
int $strength,
|
||||||
int $intel,
|
int $intel,
|
||||||
int $birth = 160,
|
int $birth = 160,
|
||||||
int $death = 300,
|
int $death = 300,
|
||||||
@@ -28,7 +28,7 @@ class RegNPC extends \sammo\Event\Action{
|
|||||||
$nationID,
|
$nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
$leadership,
|
$leadership,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
$birth,
|
$birth,
|
||||||
$death,
|
$death,
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class RegNeutralNPC extends \sammo\Event\Action{
|
|||||||
int $nationID,
|
int $nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
int $leadership,
|
int $leadership,
|
||||||
int $power,
|
int $strength,
|
||||||
int $intel,
|
int $intel,
|
||||||
int $birth = 160,
|
int $birth = 160,
|
||||||
int $death = 300,
|
int $death = 300,
|
||||||
@@ -27,7 +27,7 @@ class RegNeutralNPC extends \sammo\Event\Action{
|
|||||||
$nationID,
|
$nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
$leadership,
|
$leadership,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
$birth,
|
$birth,
|
||||||
$death,
|
$death,
|
||||||
|
|||||||
@@ -101,11 +101,11 @@ class GameUnitDetail implements iAction{
|
|||||||
else if($this->armType == GameUnitConst::T_MISC){
|
else if($this->armType == GameUnitConst::T_MISC){
|
||||||
$ratio = $general->getIntel(true, true, true) +
|
$ratio = $general->getIntel(true, true, true) +
|
||||||
$general->getLeadership(true, true, true) +
|
$general->getLeadership(true, true, true) +
|
||||||
$general->getPower(true, true, true);
|
$general->getStrength(true, true, true);
|
||||||
$ratio = $ratio*2/3 - 40;
|
$ratio = $ratio*2/3 - 40;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$ratio = $general->getPower(true, true, true)*2 - 40;
|
$ratio = $general->getStrength(true, true, true)*2 - 40;
|
||||||
}
|
}
|
||||||
if($ratio < 10){
|
if($ratio < 10){
|
||||||
$ratio = 10;
|
$ratio = 10;
|
||||||
@@ -144,12 +144,12 @@ class GameUnitDetail implements iAction{
|
|||||||
else if($this->armType == GameUnitConst::T_MISC){
|
else if($this->armType == GameUnitConst::T_MISC){
|
||||||
$mainstat = $general->getIntel(false, true, true, false) +
|
$mainstat = $general->getIntel(false, true, true, false) +
|
||||||
$general->getLeadership(false, true, true, false) +
|
$general->getLeadership(false, true, true, false) +
|
||||||
$general->getPower(false, true, true, false);
|
$general->getStrength(false, true, true, false);
|
||||||
$mainstat /= 3;
|
$mainstat /= 3;
|
||||||
$coef = 0.4;
|
$coef = 0.4;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$mainstat = $general->getPower(false, true, true, false);
|
$mainstat = $general->getStrength(false, true, true, false);
|
||||||
$coef = 0.5;
|
$coef = 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+11
-11
@@ -200,7 +200,7 @@ class General implements iAction{
|
|||||||
/**
|
/**
|
||||||
* 장수의 스탯을 계산해옴
|
* 장수의 스탯을 계산해옴
|
||||||
*
|
*
|
||||||
* @param string $statName 스탯값, leadership, power, intel 가능
|
* @param string $statName 스탯값, leadership, strength, intel 가능
|
||||||
* @param bool $withInjury 부상값 사용 여부
|
* @param bool $withInjury 부상값 사용 여부
|
||||||
* @param bool $withItem 아이템 적용 여부
|
* @param bool $withItem 아이템 적용 여부
|
||||||
* @param bool $withStatAdjust 추가 능력치 보정 사용 여부
|
* @param bool $withStatAdjust 추가 능력치 보정 사용 여부
|
||||||
@@ -217,11 +217,11 @@ class General implements iAction{
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($withStatAdjust){
|
if($withStatAdjust){
|
||||||
if($statName === 'power'){
|
if($statName === 'strength'){
|
||||||
$statValue *= Util::round($this->getStatValue('intel', $withInjury, $withItem, false, false) / 4);
|
$statValue *= Util::round($this->getStatValue('intel', $withInjury, $withItem, false, false) / 4);
|
||||||
}
|
}
|
||||||
else if($statName === 'intel'){
|
else if($statName === 'intel'){
|
||||||
$statValue *= Util::round($this->getStatValue('power', $withInjury, $withItem, false, false) / 4);
|
$statValue *= Util::round($this->getStatValue('strength', $withInjury, $withItem, false, false) / 4);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -252,11 +252,11 @@ class General implements iAction{
|
|||||||
}
|
}
|
||||||
|
|
||||||
function getLeadership($withInjury = true, $withItem = true, $withStatAdjust = true, $useFloor = true):float{
|
function getLeadership($withInjury = true, $withItem = true, $withStatAdjust = true, $useFloor = true):float{
|
||||||
return $this->getStatValue('leader', $withInjury, $withItem, $withStatAdjust, $useFloor);
|
return $this->getStatValue('leadership', $withInjury, $withItem, $withStatAdjust, $useFloor);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getPower($withInjury = true, $withItem = true, $withStatAdjust = true, $useFloor = true):float{
|
function getStrength($withInjury = true, $withItem = true, $withStatAdjust = true, $useFloor = true):float{
|
||||||
return $this->getStatValue('power', $withInjury, $withItem, $withStatAdjust, $useFloor);
|
return $this->getStatValue('strength', $withInjury, $withItem, $withStatAdjust, $useFloor);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getIntel($withInjury = true, $withItem = true, $withStatAdjust = true, $useFloor = true):float{
|
function getIntel($withInjury = true, $withItem = true, $withStatAdjust = true, $useFloor = true):float{
|
||||||
@@ -349,8 +349,8 @@ class General implements iAction{
|
|||||||
|
|
||||||
$generalName = $this->getName();
|
$generalName = $this->getName();
|
||||||
|
|
||||||
$this->multiplyVarWithLimit('leader', 0.85, 10);
|
$this->multiplyVarWithLimit('leadership', 0.85, 10);
|
||||||
$this->multiplyVarWithLimit('power', 0.85, 10);
|
$this->multiplyVarWithLimit('strength', 0.85, 10);
|
||||||
$this->multiplyVarWithLimit('intel', 0.85, 10);
|
$this->multiplyVarWithLimit('intel', 0.85, 10);
|
||||||
$this->setVar('injury', 0);
|
$this->setVar('injury', 0);
|
||||||
$this->multiplyVar('experience', 0.5);
|
$this->multiplyVar('experience', 0.5);
|
||||||
@@ -398,8 +398,8 @@ class General implements iAction{
|
|||||||
$limit = GameConst::$upgradeLimit;
|
$limit = GameConst::$upgradeLimit;
|
||||||
|
|
||||||
$table = [
|
$table = [
|
||||||
['통솔', 'leader'],
|
['통솔', 'leadership'],
|
||||||
['무력', 'power'],
|
['무력', 'strength'],
|
||||||
['지력', 'intel'],
|
['지력', 'intel'],
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -616,7 +616,7 @@ class General implements iAction{
|
|||||||
];
|
];
|
||||||
$fullColumn = [
|
$fullColumn = [
|
||||||
'no', 'name', 'name2', 'picture', 'imgsvr', 'nation', 'nations', 'city', 'troop', 'injury', 'affinity',
|
'no', 'name', 'name2', 'picture', 'imgsvr', 'nation', 'nations', 'city', 'troop', 'injury', 'affinity',
|
||||||
'leader', 'leader2', 'power', 'power2', 'intel', 'intel2', 'weap', 'book', 'horse', 'item',
|
'leadership', 'leadership2', 'strength', 'strength2', 'intel', 'intel2', 'weap', 'book', 'horse', 'item',
|
||||||
'experience', 'dedication', 'level', 'gold', 'rice', 'crew', 'crewtype', 'train', 'atmos', 'turntime',
|
'experience', 'dedication', 'level', 'gold', 'rice', 'crew', 'crewtype', 'train', 'atmos', 'turntime',
|
||||||
'makelimit', 'killturn', 'block', 'dedlevel', 'explevel', 'age', 'startage', 'belong',
|
'makelimit', 'killturn', 'block', 'dedlevel', 'explevel', 'age', 'startage', 'belong',
|
||||||
'personal', 'special', 'special2', 'mode', 'npc', 'npc_org', 'deadyear', 'npcmsg',
|
'personal', 'special', 'special2', 'mode', 'npc', 'npc_org', 'deadyear', 'npcmsg',
|
||||||
|
|||||||
+31
-31
@@ -14,7 +14,7 @@ class GeneralAI{
|
|||||||
protected $baseDevelCost;
|
protected $baseDevelCost;
|
||||||
|
|
||||||
protected $leadership;
|
protected $leadership;
|
||||||
protected $power;
|
protected $strength;
|
||||||
protected $intel;
|
protected $intel;
|
||||||
|
|
||||||
protected $dipState;
|
protected $dipState;
|
||||||
@@ -67,7 +67,7 @@ class GeneralAI{
|
|||||||
];
|
];
|
||||||
|
|
||||||
$this->leadership = $general->getLeadership(true, true, true, true);
|
$this->leadership = $general->getLeadership(true, true, true, true);
|
||||||
$this->power = $general->getPower(true, true, true, true);
|
$this->strength = $general->getStrength(true, true, true, true);
|
||||||
$this->intel = $general->getIntel(true, true, true, true);
|
$this->intel = $general->getIntel(true, true, true, true);
|
||||||
|
|
||||||
$this->calcGenType();
|
$this->calcGenType();
|
||||||
@@ -82,14 +82,14 @@ class GeneralAI{
|
|||||||
|
|
||||||
protected function calcGenType(){
|
protected function calcGenType(){
|
||||||
$leadership = $this->leadership;
|
$leadership = $this->leadership;
|
||||||
$power = $this->power;
|
$strength = Util::valueFit($this->strength, 1);
|
||||||
$intel = $this->intel;
|
$intel = Util::valueFit($this->intel, 1);
|
||||||
|
|
||||||
//무장
|
//무장
|
||||||
if ($power >= $intel) {
|
if ($strength >= $intel) {
|
||||||
$genType = self::t무장;
|
$genType = self::t무장;
|
||||||
if ($intel >= $power * 0.8) { //무지장
|
if ($intel >= $strength * 0.8) { //무지장
|
||||||
if(Util::randBool($intel / $power / 2)){
|
if(Util::randBool($intel / $strength / 2)){
|
||||||
$genType |= self::t지장;
|
$genType |= self::t지장;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -97,8 +97,8 @@ class GeneralAI{
|
|||||||
//지장
|
//지장
|
||||||
} else {
|
} else {
|
||||||
$genType = self::t지장;
|
$genType = self::t지장;
|
||||||
if ($power >= $intel * 0.8 && Util::randBool(0.2)) { //지무장
|
if ($strength >= $intel * 0.8 && Util::randBool(0.2)) { //지무장
|
||||||
if(Util::randBool($power / $intel / 2)){
|
if(Util::randBool($strength / $intel / 2)){
|
||||||
$genType |= self::t무장;
|
$genType |= self::t무장;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -172,7 +172,7 @@ class GeneralAI{
|
|||||||
|
|
||||||
$genType = $this->genType;
|
$genType = $this->genType;
|
||||||
$leadership = $this->leadership;
|
$leadership = $this->leadership;
|
||||||
$power = $this->power;
|
$strength = $this->strength;
|
||||||
$intel = $this->intel;
|
$intel = $this->intel;
|
||||||
|
|
||||||
$cityFull = false;
|
$cityFull = false;
|
||||||
@@ -198,7 +198,7 @@ class GeneralAI{
|
|||||||
if($develRate['secu'] < 0.99){
|
if($develRate['secu'] < 0.99){
|
||||||
$commandObj = buildGeneralCommandClass('che_치안강화', $general, $env);
|
$commandObj = buildGeneralCommandClass('che_치안강화', $general, $env);
|
||||||
if($commandObj->isRunnable()){
|
if($commandObj->isRunnable()){
|
||||||
$commandList['che_치안강화'] = $power / 3;
|
$commandList['che_치안강화'] = $strength / 3;
|
||||||
if(in_array($city['front'], [1,3])){
|
if(in_array($city['front'], [1,3])){
|
||||||
$commandList['che_치안강화'] /= 2;
|
$commandList['che_치안강화'] /= 2;
|
||||||
}
|
}
|
||||||
@@ -207,13 +207,13 @@ class GeneralAI{
|
|||||||
if($develRate['def'] < 0.99){
|
if($develRate['def'] < 0.99){
|
||||||
$commandObj = buildGeneralCommandClass('che_수비강화', $general, $env);
|
$commandObj = buildGeneralCommandClass('che_수비강화', $general, $env);
|
||||||
if($commandObj->isRunnable()){
|
if($commandObj->isRunnable()){
|
||||||
$commandList['che_수비강화'] = $power / 3;
|
$commandList['che_수비강화'] = $strength / 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if($develRate['wall'] < 0.99){
|
if($develRate['wall'] < 0.99){
|
||||||
$commandObj = buildGeneralCommandClass('che_성벽보수', $general, $env);
|
$commandObj = buildGeneralCommandClass('che_성벽보수', $general, $env);
|
||||||
if($commandObj->isRunnable()){
|
if($commandObj->isRunnable()){
|
||||||
$commandList['che_성벽보수'] = $power / 3;
|
$commandList['che_성벽보수'] = $strength / 3;
|
||||||
if(in_array($city['front'], [1,3])){
|
if(in_array($city['front'], [1,3])){
|
||||||
$commandList['che_성벽보수'] /= 2;
|
$commandList['che_성벽보수'] /= 2;
|
||||||
}
|
}
|
||||||
@@ -292,7 +292,7 @@ class GeneralAI{
|
|||||||
|
|
||||||
$genType = $this->genType;
|
$genType = $this->genType;
|
||||||
$leadership = $this->leadership;
|
$leadership = $this->leadership;
|
||||||
$power = $this->power;
|
$strength = $this->strength;
|
||||||
$intel = $this->intel;
|
$intel = $this->intel;
|
||||||
|
|
||||||
$tech = $nation['tech'];
|
$tech = $nation['tech'];
|
||||||
@@ -557,7 +557,7 @@ class GeneralAI{
|
|||||||
$npcCivilGenerals = [];
|
$npcCivilGenerals = [];
|
||||||
$npcWarGenerals = [];
|
$npcWarGenerals = [];
|
||||||
|
|
||||||
foreach($db->query('SELECT `no`, nation, city, npc, `gold`, `rice`, leader, `power`, intel, killturn, crew, train, atmos, `level`, troop FROM general WHERE nation = %i', $nationID) as $rawNationGeneral) {
|
foreach($db->query('SELECT `no`, nation, city, npc, `gold`, `rice`, leadership, `strength`, intel, killturn, crew, train, atmos, `level`, troop FROM general WHERE nation = %i', $nationID) as $rawNationGeneral) {
|
||||||
|
|
||||||
$nationGeneral = (object)$rawNationGeneral;
|
$nationGeneral = (object)$rawNationGeneral;
|
||||||
$cityID = $nationGeneral->city;
|
$cityID = $nationGeneral->city;
|
||||||
@@ -580,7 +580,7 @@ class GeneralAI{
|
|||||||
if($nationGeneral->npc<2 && $nationGeneral->killturn >= 5){
|
if($nationGeneral->npc<2 && $nationGeneral->killturn >= 5){
|
||||||
$userGenerals[] = $nationGeneral;
|
$userGenerals[] = $nationGeneral;
|
||||||
}
|
}
|
||||||
else if($nationGeneral->leader>=40 && $nationGeneral->killturn >= 5){
|
else if($nationGeneral->leadership>=40 && $nationGeneral->killturn >= 5){
|
||||||
$npcWarGenerals[] = $nationGeneral;
|
$npcWarGenerals[] = $nationGeneral;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -656,7 +656,7 @@ class GeneralAI{
|
|||||||
$isWarUser = null;
|
$isWarUser = null;
|
||||||
|
|
||||||
foreach($userGenerals as $compUser){
|
foreach($userGenerals as $compUser){
|
||||||
if($compUser['leader'] >= 50){
|
if($compUser['leadership'] >= 50){
|
||||||
$isWarUser = true;
|
$isWarUser = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -711,9 +711,9 @@ class GeneralAI{
|
|||||||
$compNpcWar = Util::array_last($npcWarGenerals);
|
$compNpcWar = Util::array_last($npcWarGenerals);
|
||||||
$compNpcCivil = Util::array_last($npcCivilGenerals);
|
$compNpcCivil = Util::array_last($npcCivilGenerals);
|
||||||
|
|
||||||
$compUserRes = $compUser->$resName??0;
|
$compUserRes = $compUser?$compUser->$resName:0;
|
||||||
$compNpcWarRes = $compNpcWar->$resName*5??0;
|
$compNpcWarRes = $compNpcWar?$compNpcWar->$resName*5:0;
|
||||||
$compNpcCivilRes = $compNpcCivil->$resName*10??0;
|
$compNpcCivilRes = $compNpcCivil?$compNpcCivil->$resName*10:0;
|
||||||
|
|
||||||
[$compRes, $targetGeneral] = max(
|
[$compRes, $targetGeneral] = max(
|
||||||
[$compNpcCivilRes, $compNpcCivil],
|
[$compNpcCivilRes, $compNpcCivil],
|
||||||
@@ -945,7 +945,7 @@ class GeneralAI{
|
|||||||
if(!$generalCity['front']){
|
if(!$generalCity['front']){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if($generalCity['pop'] - 33000 > $nationGeneral->leader){
|
if($generalCity['pop'] - 33000 > $nationGeneral->leadership){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if($nationGeneral->troop != 0){
|
if($nationGeneral->troop != 0){
|
||||||
@@ -960,7 +960,7 @@ class GeneralAI{
|
|||||||
$popTrial = 5;
|
$popTrial = 5;
|
||||||
for($popTrial = 0; $popTrial < 5; $popTrial++){
|
for($popTrial = 0; $popTrial < 5; $popTrial++){
|
||||||
$targetCity = $nationCities[Util::choiceRandom($backupCitiesID)];
|
$targetCity = $nationCities[Util::choiceRandom($backupCitiesID)];
|
||||||
if($targetCity['pop'] < 33000 + $nationGeneral->leader){
|
if($targetCity['pop'] < 33000 + $nationGeneral->leadership){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (Util::randBool($targetCity['pop'] / $targetCity['pop2'])) {
|
if (Util::randBool($targetCity['pop'] / $targetCity['pop2'])) {
|
||||||
@@ -1054,7 +1054,7 @@ class GeneralAI{
|
|||||||
case '거병_견문': //거병이나 견문
|
case '거병_견문': //거병이나 견문
|
||||||
// 초반이면서 능력이 좋은놈 위주로 1.4%확률로 거병
|
// 초반이면서 능력이 좋은놈 위주로 1.4%확률로 거병
|
||||||
$prop = Util::randF() * (GameConst::$defaultStatNPCMax + GameConst::$chiefStatMin) / 2;
|
$prop = Util::randF() * (GameConst::$defaultStatNPCMax + GameConst::$chiefStatMin) / 2;
|
||||||
$ratio = ($general->getVar('leader') + $general->getVar('power') + $general->getVar('intel')) / 3;
|
$ratio = ($general->getVar('leadership') + $general->getVar('strength') + $general->getVar('intel')) / 3;
|
||||||
if($env['startyear']+2 > $env['year'] && $prop < $ratio && Util::randBool(0.014) && $general->getVar('makelimit') == 0) {
|
if($env['startyear']+2 > $env['year'] && $prop < $ratio && Util::randBool(0.014) && $general->getVar('makelimit') == 0) {
|
||||||
//거병
|
//거병
|
||||||
$command = 'che_거병';
|
$command = 'che_거병';
|
||||||
@@ -1133,7 +1133,7 @@ class GeneralAI{
|
|||||||
|
|
||||||
$genType = $this->genType;
|
$genType = $this->genType;
|
||||||
$leadership = $this->leadership;
|
$leadership = $this->leadership;
|
||||||
$power = $this->power;
|
$strength = $this->strength;
|
||||||
$intel = $this->intel;
|
$intel = $this->intel;
|
||||||
|
|
||||||
$startYear = $env['startyear'];
|
$startYear = $env['startyear'];
|
||||||
@@ -1384,7 +1384,7 @@ class GeneralAI{
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
$sumLeadershipInCity = $db->queryFirstField('SELECT sum(leader) FROM general WHERE nation = %i AND city = %i AND leader > 40', $nationID, $cityID);
|
$sumLeadershipInCity = $db->queryFirstField('SELECT sum(leadership) FROM general WHERE nation = %i AND city = %i AND leadership > 40', $nationID, $cityID);
|
||||||
if(
|
if(
|
||||||
$city['pop'] > 30000 + $general->getLeadership(false) * 100 * 1.3 &&
|
$city['pop'] > 30000 + $general->getLeadership(false) * 100 * 1.3 &&
|
||||||
Util::randBool(($city['pop'] - 30000) / $sumLeadershipInCity * 100)
|
Util::randBool(($city['pop'] - 30000) / $sumLeadershipInCity * 100)
|
||||||
@@ -1723,7 +1723,7 @@ class GeneralAI{
|
|||||||
|
|
||||||
if(!$userChief){
|
if(!$userChief){
|
||||||
$candUserChief = $db->queryFirstField(
|
$candUserChief = $db->queryFirstField(
|
||||||
'SELECT no FROM general WHERE nation = %i AND level = 1 AND killturn > %i AND npc < 2 AND belong >= %i ORDER BY leader DESC LIMIT 1',
|
'SELECT no FROM general WHERE nation = %i AND level = 1 AND killturn > %i AND npc < 2 AND belong >= %i ORDER BY leadership DESC LIMIT 1',
|
||||||
$nationID,
|
$nationID,
|
||||||
$minKillturn,
|
$minKillturn,
|
||||||
$maxBelong
|
$maxBelong
|
||||||
@@ -1738,7 +1738,7 @@ class GeneralAI{
|
|||||||
|
|
||||||
if(!key_exists(11, $chiefCandidate)){
|
if(!key_exists(11, $chiefCandidate)){
|
||||||
$candChiefHead = $db->queryFirstField(
|
$candChiefHead = $db->queryFirstField(
|
||||||
'SELECT no FROM general WHERE nation = %i AND level = 1 AND npc >= 2 AND belong >= %i ORDER BY leader DESC LIMIT 1',
|
'SELECT no FROM general WHERE nation = %i AND level = 1 AND npc >= 2 AND belong >= %i ORDER BY leadership DESC LIMIT 1',
|
||||||
$nationID,
|
$nationID,
|
||||||
$maxBelong
|
$maxBelong
|
||||||
);
|
);
|
||||||
@@ -1750,8 +1750,8 @@ class GeneralAI{
|
|||||||
|
|
||||||
if($minChiefLevel < 11){
|
if($minChiefLevel < 11){
|
||||||
//무장 수뇌 후보
|
//무장 수뇌 후보
|
||||||
$candChiefPower = $db->queryFirstColumn(
|
$candChiefStrength = $db->queryFirstColumn(
|
||||||
'SELECT no FROM general WHERE nation = %i AND power >= %i AND level = 1 AND belong >= %i ORDER BY power DESC LIMIT %i',
|
'SELECT no FROM general WHERE nation = %i AND strength >= %i AND level = 1 AND belong >= %i ORDER BY strength DESC LIMIT %i',
|
||||||
$nationID,
|
$nationID,
|
||||||
GameConst::$chiefStatMin,
|
GameConst::$chiefStatMin,
|
||||||
$maxBelong, 12 - $minChiefLevel
|
$maxBelong, 12 - $minChiefLevel
|
||||||
@@ -1766,7 +1766,7 @@ class GeneralAI{
|
|||||||
);
|
);
|
||||||
//무력, 지력이 모두 높은 장수를 고려하여..
|
//무력, 지력이 모두 높은 장수를 고려하여..
|
||||||
|
|
||||||
$iterCandChiefPower = new \ArrayIterator($candChiefPower);
|
$iterCandChiefStrength = new \ArrayIterator($candChiefStrength);
|
||||||
$iterCandChiefIntel = new \ArrayIterator($candChiefIntel);
|
$iterCandChiefIntel = new \ArrayIterator($candChiefIntel);
|
||||||
|
|
||||||
foreach(range(10, $minChiefLevel, -1) as $cheifLevel){
|
foreach(range(10, $minChiefLevel, -1) as $cheifLevel){
|
||||||
@@ -1775,7 +1775,7 @@ class GeneralAI{
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @var \ArrayIterator $iterCurrentType */
|
/** @var \ArrayIterator $iterCurrentType */
|
||||||
$iterCurrentType = ($cheifLevel % 2 == 0)?$iterCandChiefPower:$iterCandChiefIntel;
|
$iterCurrentType = ($cheifLevel % 2 == 0)?$iterCandChiefStrength:$iterCandChiefIntel;
|
||||||
$candidate = $iterCurrentType->current();
|
$candidate = $iterCurrentType->current();
|
||||||
|
|
||||||
while(key_exists($candidate, $promoted)){
|
while(key_exists($candidate, $promoted)){
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ class Scenario{
|
|||||||
|
|
||||||
list(
|
list(
|
||||||
$affinity, $name, $picturePath, $nationName, $locatedCity,
|
$affinity, $name, $picturePath, $nationName, $locatedCity,
|
||||||
$leadership, $power, $intel, $level, $birth, $death, $ego,
|
$leadership, $strength, $intel, $level, $birth, $death, $ego,
|
||||||
$char, $text
|
$char, $text
|
||||||
) = $rawGeneral;
|
) = $rawGeneral;
|
||||||
|
|
||||||
@@ -99,7 +99,7 @@ class Scenario{
|
|||||||
$nationID,
|
$nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
$leadership,
|
$leadership,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
$level,
|
$level,
|
||||||
$birth,
|
$birth,
|
||||||
@@ -117,7 +117,7 @@ class Scenario{
|
|||||||
|
|
||||||
list(
|
list(
|
||||||
$affinity, $name, $picturePath, $nationName, $locatedCity,
|
$affinity, $name, $picturePath, $nationName, $locatedCity,
|
||||||
$leadership, $power, $intel, $level, $birth, $death, $ego,
|
$leadership, $strength, $intel, $level, $birth, $death, $ego,
|
||||||
$char, $text
|
$char, $text
|
||||||
) = $rawGeneral;
|
) = $rawGeneral;
|
||||||
|
|
||||||
@@ -140,7 +140,7 @@ class Scenario{
|
|||||||
$nationID,
|
$nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
$leadership,
|
$leadership,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
$level,
|
$level,
|
||||||
$birth,
|
$birth,
|
||||||
@@ -159,7 +159,7 @@ class Scenario{
|
|||||||
|
|
||||||
list(
|
list(
|
||||||
$affinity, $name, $picturePath, $nationName, $locatedCity,
|
$affinity, $name, $picturePath, $nationName, $locatedCity,
|
||||||
$leadership, $power, $intel, $level, $birth, $death, $ego,
|
$leadership, $strength, $intel, $level, $birth, $death, $ego,
|
||||||
$char, $text
|
$char, $text
|
||||||
) = $rawGeneral;
|
) = $rawGeneral;
|
||||||
|
|
||||||
@@ -182,7 +182,7 @@ class Scenario{
|
|||||||
$nationID,
|
$nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
$leadership,
|
$leadership,
|
||||||
$power,
|
$strength,
|
||||||
$intel,
|
$intel,
|
||||||
$level,
|
$level,
|
||||||
$birth,
|
$birth,
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class NPC{
|
|||||||
public $nationID;
|
public $nationID;
|
||||||
public $locatedCity;
|
public $locatedCity;
|
||||||
public $leadership;
|
public $leadership;
|
||||||
public $power;
|
public $strength;
|
||||||
public $intel;
|
public $intel;
|
||||||
public $level;
|
public $level;
|
||||||
public $birth;
|
public $birth;
|
||||||
@@ -63,7 +63,7 @@ class NPC{
|
|||||||
int $nationID,
|
int $nationID,
|
||||||
$locatedCity,
|
$locatedCity,
|
||||||
int $leadership,
|
int $leadership,
|
||||||
int $power,
|
int $strength,
|
||||||
int $intel,
|
int $intel,
|
||||||
int $level = 0,
|
int $level = 0,
|
||||||
int $birth = 160,
|
int $birth = 160,
|
||||||
@@ -78,7 +78,7 @@ class NPC{
|
|||||||
$this->nationID = $nationID;
|
$this->nationID = $nationID;
|
||||||
$this->locatedCity = $locatedCity;
|
$this->locatedCity = $locatedCity;
|
||||||
$this->leadership = $leadership;
|
$this->leadership = $leadership;
|
||||||
$this->power = $power;
|
$this->strength = $strength;
|
||||||
$this->intel = $intel;
|
$this->intel = $intel;
|
||||||
$this->level = $level;
|
$this->level = $level;
|
||||||
$this->birth = $birth;
|
$this->birth = $birth;
|
||||||
@@ -90,8 +90,8 @@ class NPC{
|
|||||||
$this->rice = GameConst::$defaultRice;
|
$this->rice = GameConst::$defaultRice;
|
||||||
|
|
||||||
$general = [
|
$general = [
|
||||||
'leader'=>$leadership,
|
'leadership'=>$leadership,
|
||||||
'power'=>$power,
|
'strength'=>$strength,
|
||||||
'intel'=>$intel
|
'intel'=>$intel
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -307,8 +307,8 @@ class NPC{
|
|||||||
'picture'=>$picturePath,
|
'picture'=>$picturePath,
|
||||||
'nation'=>$nationID,
|
'nation'=>$nationID,
|
||||||
'city'=>$city,
|
'city'=>$city,
|
||||||
'leader'=>$this->leadership,
|
'leadership'=>$this->leadership,
|
||||||
'power'=>$this->power,
|
'strength'=>$this->strength,
|
||||||
'intel'=>$this->intel,
|
'intel'=>$this->intel,
|
||||||
'experience'=>$experience,
|
'experience'=>$experience,
|
||||||
'dedication'=>$dedication,
|
'dedication'=>$dedication,
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ class Nation{
|
|||||||
//군주가 없는지 확인
|
//군주가 없는지 확인
|
||||||
$hasRuler = $db->queryFirstField('SELECT count(*) FROM general WHERE nation=%i AND level=12', $this->id);
|
$hasRuler = $db->queryFirstField('SELECT count(*) FROM general WHERE nation=%i AND level=12', $this->id);
|
||||||
if(!$hasRuler){
|
if(!$hasRuler){
|
||||||
$newRuler = $db->queryFirstField('SELECT `no` FROM general WHERE nation=%i ORDER BY leader+power+intel DESC LIMIT 1', $this->id);
|
$newRuler = $db->queryFirstField('SELECT `no` FROM general WHERE nation=%i ORDER BY leadership+strength+intel DESC LIMIT 1', $this->id);
|
||||||
$db->update('general',['level'=>12], 'no=%i', $newRuler);
|
$db->update('general',['level'=>12], 'no=%i', $newRuler);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ class SpecialityConst{
|
|||||||
const DISABLED = 0x1;
|
const DISABLED = 0x1;
|
||||||
|
|
||||||
const STAT_LEADERSHIP = 0x2;
|
const STAT_LEADERSHIP = 0x2;
|
||||||
const STAT_POWER = 0x4;
|
const STAT_STRENGTH = 0x4;
|
||||||
const STAT_INTEL = 0x8;
|
const STAT_INTEL = 0x8;
|
||||||
|
|
||||||
const ARMY_FOOTMAN = 0x100;
|
const ARMY_FOOTMAN = 0x100;
|
||||||
@@ -33,13 +33,13 @@ class SpecialityConst{
|
|||||||
'che_상재' => ['상재', 1, [self::STAT_INTEL]],
|
'che_상재' => ['상재', 1, [self::STAT_INTEL]],
|
||||||
'che_발명' => ['발명', 1, [self::STAT_INTEL]],
|
'che_발명' => ['발명', 1, [self::STAT_INTEL]],
|
||||||
|
|
||||||
'che_축성' => ['축성', 1, [self::STAT_POWER]],
|
'che_축성' => ['축성', 1, [self::STAT_STRENGTH]],
|
||||||
'che_수비' => ['수비', 1, [self::STAT_POWER]],
|
'che_수비' => ['수비', 1, [self::STAT_STRENGTH]],
|
||||||
'che_통찰' => ['통찰', 1, [self::STAT_POWER]],
|
'che_통찰' => ['통찰', 1, [self::STAT_STRENGTH]],
|
||||||
|
|
||||||
'che_인덕' => ['인덕', 1, [self::STAT_LEADERSHIP]],
|
'che_인덕' => ['인덕', 1, [self::STAT_LEADERSHIP]],
|
||||||
|
|
||||||
'che_귀모' => ['귀모', -2.5, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_귀모' => ['귀모', -2.5, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
];
|
];
|
||||||
|
|
||||||
const WAR = [
|
const WAR = [
|
||||||
@@ -53,33 +53,33 @@ class SpecialityConst{
|
|||||||
|
|
||||||
'che_보병' => ['보병', 1, [
|
'che_보병' => ['보병', 1, [
|
||||||
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_FOOTMAN,
|
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_FOOTMAN,
|
||||||
self::STAT_POWER | self::REQ_DEXTERITY | self::ARMY_FOOTMAN
|
self::STAT_STRENGTH | self::REQ_DEXTERITY | self::ARMY_FOOTMAN
|
||||||
]],
|
]],
|
||||||
'che_궁병' => ['궁병', 1, [
|
'che_궁병' => ['궁병', 1, [
|
||||||
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_ARCHER,
|
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_ARCHER,
|
||||||
self::STAT_POWER | self::REQ_DEXTERITY | self::ARMY_ARCHER
|
self::STAT_STRENGTH | self::REQ_DEXTERITY | self::ARMY_ARCHER
|
||||||
]],
|
]],
|
||||||
'che_기병' => ['기병', 1, [
|
'che_기병' => ['기병', 1, [
|
||||||
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_CAVALRY,
|
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_CAVALRY,
|
||||||
self::STAT_POWER | self::REQ_DEXTERITY | self::ARMY_CAVALRY
|
self::STAT_STRENGTH | self::REQ_DEXTERITY | self::ARMY_CAVALRY
|
||||||
]],
|
]],
|
||||||
'che_공성' => ['공성', 1, [
|
'che_공성' => ['공성', 1, [
|
||||||
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_SIEGE,
|
self::STAT_LEADERSHIP | self::REQ_DEXTERITY | self::ARMY_SIEGE,
|
||||||
self::STAT_POWER | self::REQ_DEXTERITY | self::ARMY_SIEGE,
|
self::STAT_STRENGTH | self::REQ_DEXTERITY | self::ARMY_SIEGE,
|
||||||
self::STAT_INTEL | self::REQ_DEXTERITY | self::ARMY_SIEGE
|
self::STAT_INTEL | self::REQ_DEXTERITY | self::ARMY_SIEGE
|
||||||
]],
|
]],
|
||||||
|
|
||||||
'che_돌격' => ['돌격', 1, [self::STAT_LEADERSHIP, self::STAT_POWER]],
|
'che_돌격' => ['돌격', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH]],
|
||||||
'che_무쌍' => ['무쌍', 1, [self::STAT_LEADERSHIP, self::STAT_POWER]],
|
'che_무쌍' => ['무쌍', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH]],
|
||||||
'che_견고' => ['견고', 1, [self::STAT_LEADERSHIP, self::STAT_POWER]],
|
'che_견고' => ['견고', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH]],
|
||||||
'che_위압' => ['위압', 1, [self::STAT_LEADERSHIP, self::STAT_POWER]],
|
'che_위압' => ['위압', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH]],
|
||||||
|
|
||||||
'che_저격' => ['저격', 1, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_저격' => ['저격', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
'che_필살' => ['필살', 1, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_필살' => ['필살', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
'che_징병' => ['징병', 1, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_징병' => ['징병', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
'che_의술' => ['의술', -2, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_의술' => ['의술', -2, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
'che_격노' => ['격노', 1, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_격노' => ['격노', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
'che_척사' => ['척사', 1, [self::STAT_LEADERSHIP, self::STAT_POWER, self::STAT_INTEL]],
|
'che_척사' => ['척사', 1, [self::STAT_LEADERSHIP, self::STAT_STRENGTH, self::STAT_INTEL]],
|
||||||
];
|
];
|
||||||
|
|
||||||
public static function getInvDomestic(string $name){
|
public static function getInvDomestic(string $name){
|
||||||
@@ -117,15 +117,15 @@ class SpecialityConst{
|
|||||||
private static function calcCondGeneric(array $general) : int {
|
private static function calcCondGeneric(array $general) : int {
|
||||||
$myCond = 0;
|
$myCond = 0;
|
||||||
|
|
||||||
$leader = $general['leader']??50;
|
$leadership = $general['leadership']??50;
|
||||||
$power = $general['power']??50;
|
$strength = $general['strength']??50;
|
||||||
$intel = $general['intel']??50;
|
$intel = $general['intel']??50;
|
||||||
|
|
||||||
if ($leader * 0.95 > $power && $leader * 0.95 > $intel) {
|
if ($leadership * 0.95 > $strength && $leadership * 0.95 > $intel) {
|
||||||
$myCond |= self::STAT_LEADERSHIP;
|
$myCond |= self::STAT_LEADERSHIP;
|
||||||
}
|
}
|
||||||
else if($power >= $intel){
|
else if($strength >= $intel){
|
||||||
$myCond |= self::STAT_POWER;
|
$myCond |= self::STAT_STRENGTH;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$myCond |= self::STAT_INTEL;
|
$myCond |= self::STAT_INTEL;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ class SightseeingMessage{
|
|||||||
const IncExp = 0x1;
|
const IncExp = 0x1;
|
||||||
const IncHeavyExp = 0x2;
|
const IncHeavyExp = 0x2;
|
||||||
const IncLeadership = 0x10;
|
const IncLeadership = 0x10;
|
||||||
const IncPower = 0x20;
|
const IncStrength = 0x20;
|
||||||
const IncIntel = 0x40;
|
const IncIntel = 0x40;
|
||||||
const IncGold = 0x100;
|
const IncGold = 0x100;
|
||||||
const IncRice = 0x200;
|
const IncRice = 0x200;
|
||||||
@@ -39,7 +39,7 @@ class SightseeingMessage{
|
|||||||
'백성들에게 현인의 가르침을 설파했습니다.',
|
'백성들에게 현인의 가르침을 설파했습니다.',
|
||||||
'어느 집의 도망친 가축을 되찾아 주었습니다.',
|
'어느 집의 도망친 가축을 되찾아 주었습니다.',
|
||||||
]], 2],
|
]], 2],
|
||||||
[[self::IncHeavyExp|self::IncPower,[
|
[[self::IncHeavyExp|self::IncStrength,[
|
||||||
'동네 장사와 힘겨루기를 하여 멋지게 이겼습니다.',
|
'동네 장사와 힘겨루기를 하여 멋지게 이겼습니다.',
|
||||||
'어느 집의 무너진 울타리를 고쳐주었습니다.',
|
'어느 집의 무너진 울타리를 고쳐주었습니다.',
|
||||||
]], 2],
|
]], 2],
|
||||||
@@ -74,10 +74,10 @@ class SightseeingMessage{
|
|||||||
[[self::IncHeavyExp|self::Wounded|self::HeavyWounded,[
|
[[self::IncHeavyExp|self::Wounded|self::HeavyWounded,[
|
||||||
'위기에 빠진 사람을 구하다가 죽을뻔 했습니다.',
|
'위기에 빠진 사람을 구하다가 죽을뻔 했습니다.',
|
||||||
]], 1],
|
]], 1],
|
||||||
[[self::IncHeavyExp|self::IncPower|self::IncGold,[
|
[[self::IncHeavyExp|self::IncStrength|self::IncGold,[
|
||||||
'산적과 싸워 금 <C>:goldAmount:</>을 빼앗았습니다.',
|
'산적과 싸워 금 <C>:goldAmount:</>을 빼앗았습니다.',
|
||||||
]], 1],
|
]], 1],
|
||||||
[[self::IncHeavyExp|self::IncPower|self::IncRice,[
|
[[self::IncHeavyExp|self::IncStrength|self::IncRice,[
|
||||||
'호랑이를 잡아 고기 <C>:riceAmount:</>을 얻었습니다.',
|
'호랑이를 잡아 고기 <C>:riceAmount:</>을 얻었습니다.',
|
||||||
'곰을 잡아 고기 <C>:riceAmount:</>을 얻었습니다.',
|
'곰을 잡아 고기 <C>:riceAmount:</>을 얻었습니다.',
|
||||||
]], 1],
|
]], 1],
|
||||||
|
|||||||
@@ -124,9 +124,9 @@ class WarUnitGeneral extends WarUnit{
|
|||||||
if($this->crewType->armType == GameUnitConst::T_WIZARD) { // 귀병
|
if($this->crewType->armType == GameUnitConst::T_WIZARD) { // 귀병
|
||||||
$general->increaseVar('intel2', $value);
|
$general->increaseVar('intel2', $value);
|
||||||
} elseif($this->crewType->armType == GameUnitConst::T_SIEGE) { // 차병
|
} elseif($this->crewType->armType == GameUnitConst::T_SIEGE) { // 차병
|
||||||
$general->increaseVar('leader2', $value);
|
$general->increaseVar('leadership2', $value);
|
||||||
} else {
|
} else {
|
||||||
$general->increaseVar('power2', $value);
|
$general->increaseVar('strength2', $value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+6
-6
@@ -28,8 +28,8 @@ $general_schema = "
|
|||||||
nations char(64) default ',0,',
|
nations char(64) default ',0,',
|
||||||
city int(6) default 0,
|
city int(6) default 0,
|
||||||
troop int(6) default 0,
|
troop int(6) default 0,
|
||||||
leader int(3) default 0, leader2 int(3) default 0,
|
leadership int(3) default 0, leadership2 int(3) default 0,
|
||||||
power int(3) default 0, power2 int(3) default 0,
|
power int(3) default 0, strength2 int(3) default 0,
|
||||||
intel int(3) default 0, intel2 int(3) default 0,
|
intel int(3) default 0, intel2 int(3) default 0,
|
||||||
injury int(2) default 0,
|
injury int(2) default 0,
|
||||||
experience int(6) default 0, dedication int(6) default 0,
|
experience int(6) default 0, dedication int(6) default 0,
|
||||||
@@ -307,7 +307,7 @@ $token_schema = "
|
|||||||
create table token (
|
create table token (
|
||||||
token int(6) not null auto_increment,
|
token int(6) not null auto_increment,
|
||||||
id char(16) not null,
|
id char(16) not null,
|
||||||
leader int(3) not null,
|
leadership int(3) not null,
|
||||||
power int(3) not null,
|
power int(3) not null,
|
||||||
intel int(3) not null,
|
intel int(3) not null,
|
||||||
|
|
||||||
@@ -528,9 +528,9 @@ $tournament_schema = "
|
|||||||
w int(2) default 0,
|
w int(2) default 0,
|
||||||
b int(2) default 0,
|
b int(2) default 0,
|
||||||
h int(2) default 0,
|
h int(2) default 0,
|
||||||
ldr int(3) default 0,
|
leadership int(3) default 0,
|
||||||
pwr int(3) default 0,
|
strength int(3) default 0,
|
||||||
itl int(3) default 0,
|
intel int(3) default 0,
|
||||||
lvl int(3) default 0,
|
lvl int(3) default 0,
|
||||||
grp int(2) default 0,
|
grp int(2) default 0,
|
||||||
grp_no int(2) default 0,
|
grp_no int(2) default 0,
|
||||||
|
|||||||
+12
-12
@@ -25,10 +25,10 @@ CREATE TABLE `general` (
|
|||||||
`nations` VARCHAR(64) NOT NULL DEFAULT '[0]',
|
`nations` VARCHAR(64) NOT NULL DEFAULT '[0]',
|
||||||
`city` INT(6) NOT NULL DEFAULT '3',
|
`city` INT(6) NOT NULL DEFAULT '3',
|
||||||
`troop` INT(6) NOT NULL DEFAULT '0',
|
`troop` INT(6) NOT NULL DEFAULT '0',
|
||||||
`leader` INT(3) NOT NULL DEFAULT '50',
|
`leadership` INT(3) NOT NULL DEFAULT '50',
|
||||||
`leader2` INT(3) NOT NULL DEFAULT '0',
|
`leadership2` INT(3) NOT NULL DEFAULT '0',
|
||||||
`power` INT(3) NOT NULL DEFAULT '50',
|
`strength` INT(3) NOT NULL DEFAULT '50',
|
||||||
`power2` INT(3) NOT NULL DEFAULT '0',
|
`strength2` INT(3) NOT NULL DEFAULT '0',
|
||||||
`intel` INT(3) NOT NULL DEFAULT '50',
|
`intel` INT(3) NOT NULL DEFAULT '50',
|
||||||
`intel2` INT(3) NOT NULL DEFAULT '0',
|
`intel2` INT(3) NOT NULL DEFAULT '0',
|
||||||
`injury` INT(2) NOT NULL DEFAULT '0',
|
`injury` INT(2) NOT NULL DEFAULT '0',
|
||||||
@@ -93,11 +93,11 @@ CREATE TABLE `general` (
|
|||||||
`tll` INT(4) NULL DEFAULT '0',
|
`tll` INT(4) NULL DEFAULT '0',
|
||||||
`tlg` INT(4) NULL DEFAULT '0',
|
`tlg` INT(4) NULL DEFAULT '0',
|
||||||
`tlp` INT(4) NULL DEFAULT '0',
|
`tlp` INT(4) NULL DEFAULT '0',
|
||||||
`tpw` INT(4) NULL DEFAULT '0',
|
`tsw` INT(4) NULL DEFAULT '0',
|
||||||
`tpd` INT(4) NULL DEFAULT '0',
|
`tsd` INT(4) NULL DEFAULT '0',
|
||||||
`tpl` INT(4) NULL DEFAULT '0',
|
`tsl` INT(4) NULL DEFAULT '0',
|
||||||
`tpg` INT(4) NULL DEFAULT '0',
|
`tsg` INT(4) NULL DEFAULT '0',
|
||||||
`tpp` INT(4) NULL DEFAULT '0',
|
`tsp` INT(4) NULL DEFAULT '0',
|
||||||
`tiw` INT(4) NULL DEFAULT '0',
|
`tiw` INT(4) NULL DEFAULT '0',
|
||||||
`tid` INT(4) NULL DEFAULT '0',
|
`tid` INT(4) NULL DEFAULT '0',
|
||||||
`til` INT(4) NULL DEFAULT '0',
|
`til` INT(4) NULL DEFAULT '0',
|
||||||
@@ -486,9 +486,9 @@ create table tournament (
|
|||||||
w varchar(20) default 'None',
|
w varchar(20) default 'None',
|
||||||
b varchar(20) default 'None',
|
b varchar(20) default 'None',
|
||||||
h varchar(20) default 'None',
|
h varchar(20) default 'None',
|
||||||
ldr int(3) default 0,
|
leadership int(3) default 0,
|
||||||
pwr int(3) default 0,
|
strength int(3) default 0,
|
||||||
itl int(3) default 0,
|
intel int(3) default 0,
|
||||||
lvl int(3) default 0,
|
lvl int(3) default 0,
|
||||||
grp int(2) default 0,
|
grp int(2) default 0,
|
||||||
grp_no int(2) default 0,
|
grp_no int(2) default 0,
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
data-general-wounded="<?=$wounded?>"
|
data-general-wounded="<?=$wounded?>"
|
||||||
data-general-name="<?=$this->e($name)?>"
|
data-general-name="<?=$this->e($name)?>"
|
||||||
data-general-leadership="<?=$leadership?>"
|
data-general-leadership="<?=$leadership?>"
|
||||||
data-general-power="<?=$power?>"
|
data-general-strength="<?=$strength?>"
|
||||||
data-general-intel="<?=$intel?>"
|
data-general-intel="<?=$intel?>"
|
||||||
data-general-level="<?=$level?>"
|
data-general-level="<?=$level?>"
|
||||||
data-general-leadership-bonus="<?=$leadershipBonus?>"
|
data-general-leadership-bonus="<?=$leadershipBonus?>"
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
<td height="64"><img class='generalIcon' width='64' height='64' src='<?=$iconPath?>'></td>
|
<td height="64"><img class='generalIcon' width='64' height='64' src='<?=$iconPath?>'></td>
|
||||||
<td><?=$nameText?></td>
|
<td><?=$nameText?></td>
|
||||||
<td><?=$leadershipText?><?=$leadershipBonusText?></td>
|
<td><?=$leadershipText?><?=$leadershipBonusText?></td>
|
||||||
<td><?=$powerText?></td>
|
<td><?=$strengthText?></td>
|
||||||
<td><?=$intelText?></td>
|
<td><?=$intelText?></td>
|
||||||
<td class="general_level"><?=$levelText?></td>
|
<td class="general_level"><?=$levelText?></td>
|
||||||
<?php if($ourGeneral): ?>
|
<?php if($ourGeneral): ?>
|
||||||
|
|||||||
@@ -24,8 +24,8 @@
|
|||||||
data-is-npc="<?=$general['npc']>=2?'true':'false'?>"
|
data-is-npc="<?=$general['npc']>=2?'true':'false'?>"
|
||||||
data-general-wounded="<?=$general['injury']?>"
|
data-general-wounded="<?=$general['injury']?>"
|
||||||
data-general-name="<?=$general['name']?>"
|
data-general-name="<?=$general['name']?>"
|
||||||
data-general-leadership="<?=$general['leader']?>"
|
data-general-leadership="<?=$general['leadership']?>"
|
||||||
data-general-power="<?=$general['power']?>"
|
data-general-strength="<?=$general['strength']?>"
|
||||||
data-general-intel="<?=$general['intel']?>"
|
data-general-intel="<?=$general['intel']?>"
|
||||||
data-general-level="<?=$general['expLevelText']?>"
|
data-general-level="<?=$general['expLevelText']?>"
|
||||||
data-general-leadership-bonus="<?=$general['lbonus']?>"
|
data-general-leadership-bonus="<?=$general['lbonus']?>"
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
>
|
>
|
||||||
<td class='i_name center'><span class='t_name'><?=$general['nameText']?></span><br
|
<td class='i_name center'><span class='t_name'><?=$general['nameText']?></span><br
|
||||||
>Lv <span class='t_explevel'><?=$general['expLevelText']?></span></td>
|
>Lv <span class='t_explevel'><?=$general['expLevelText']?></span></td>
|
||||||
<td class='i_stat center'><?=$general['leaderText']?>∥<?=$general['powerText']?>∥<?=$general['intelText']?></td>
|
<td class='i_stat center'><?=$general['leadershipText']?>∥<?=$general['strengthText']?>∥<?=$general['intelText']?></td>
|
||||||
<td class='i_troop center'><?=$general['troopText']?></td>
|
<td class='i_troop center'><?=$general['troopText']?></td>
|
||||||
<td class='i_gold center'><?=$general['gold']?></td>
|
<td class='i_gold center'><?=$general['gold']?></td>
|
||||||
<td class='i_rice center'><?=$general['rice']?></td>
|
<td class='i_rice center'><?=$general['rice']?></td>
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user