v0.10.1까지 merge

This commit is contained in:
2019-04-07 23:35:54 +09:00
46 changed files with 482 additions and 228 deletions
+25 -20
View File
@@ -1472,31 +1472,36 @@ function process_76(&$general) {
$avgGenNum = $db->queryFirstField('SELECT avg(gennum) FROM nation');
$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']}'";
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
$avgGen = MYDB_fetch_array($result);
$avgGen = $db->queryFirstRow('SELECT max(leader+power+intel) as lpi, avg(dedication) as ded,avg(experience) as exp, avg(dex0+dex10+dex20+dex30) / 4 as dex_t, avg(age) as age, avg(dex40) as dex40 from general where npc < 5 and nation = %i', $general['nation']);
//의병추가
$npc = 4;
$npcid = Util::randRangeInt(0, 9999999);
for($i=0; $i < $addGenCount; $i++) {
// 무장 40%, 지장 40%, 무지장 20%
$type = rand() % 10;
switch($type) {
case 0: case 1: case 2: case 3:
$leader = GameConst::$defaultStatMax - 10 + rand()%11;
$intel = GameConst::$defaultStatMin + rand()%6;
$power = GameConst::$defaultStatTotal - $leader - $intel;
//무장 50%, 지장 50%, 무지장 0%
$stat_tier1 = GameConst::$defaultStatMax - 10 + rand()%11;
$stat_tier3 = GameConst::$defaultStatMin + rand()%6;
$stat_tier2 = GameConst::$defaultStatTotal - $stat_tier1 - $stat_tier3;
$type = Util::choiceRandomUsingWeight([
'power'=>5,
'intel'=>5,
'neutral'=>0
]);
switch($type){
case 'power':
$leader = $stat_tier1;
$power = $stat_tier2;
$intel = $stat_tier3;
break;
case 4: case 5: case 6: case 7:
$leader = GameConst::$defaultStatMax - 10 + rand()%11;
$power = GameConst::$defaultStatMin + rand()%6;
$intel = GameConst::$defaultStatTotal - $leader - $power;
case 'intel':
$leader = $stat_tier1;
$power = $stat_tier3;
$intel = $stat_tier2;
break;
case 8: case 9:
$leader = GameConst::$defaultStatMin + rand()%6;
$power = GameConst::$defaultStatMax - 10 + rand()%11;
$intel = GameConst::$defaultStatTotal - $leader - $power;
case 'neutral':
$leader = $stat_tier3;
$power = $stat_tier1;
$intel = $stat_tier2;
break;
}
// 국내 최고능치 기준으로 랜덤성 스케일링
@@ -1530,7 +1535,7 @@ function process_76(&$general) {
$intel -= $over3;
}
// 낮은 능치쪽으로 합산
if($type == 0) {
if($type == 'power') {
$intel = $intel + $over1 + $over2 + $over3;
} else {
$power = $power + $over1 + $over2 + $over3;
@@ -1569,7 +1574,7 @@ function process_76(&$general) {
'1','100','100','0','".GameUnitConst::DEFAULT_CREWTYPE."','0','0','0',
'0','0','0','$turntime','$killturn','{$avgGen['age']}','1','$personal','0','0','0','0','',
'0','$bornyear','$deadyear',
'{$avgGen['dex0']}','{$avgGen['dex10']}','{$avgGen['dex20']}','{$avgGen['dex30']}','{$avgGen['dex40']}'
'{$avgGen['dex_t']}','{$avgGen['dex_t']}','{$avgGen['dex_t']}','{$avgGen['dex_t']}','{$avgGen['dex40']}'
)",
$connect
) or Error(__LINE__.MYDB_error($connect),"");